@camera.ui/server 2.2.5-beta.2 → 2.2.5-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/interface/assets/{404-BDvtK1qR.js → 404-YZOLos9r.js} +1 -1
- package/dist/interface/assets/{About-B4A35rRx.js → About-HtxMc8JZ.js} +1 -1
- package/dist/interface/assets/Assistant-bB8RBo-m.js +1 -0
- package/dist/interface/assets/Automation-D3DcUyui.js +3 -0
- package/dist/interface/assets/{AutomationImport-CEJdhE_d.js → AutomationImport-Dp_hT6hQ.js} +2 -2
- package/dist/interface/assets/AutomationStore-BKR7GXMk.js +2 -0
- package/dist/interface/assets/{AutomationStoreDetail-BenRMMtV.js → AutomationStoreDetail-B9yh51WQ.js} +2 -2
- package/dist/interface/assets/Automations-BdZZW2eN.js +2 -0
- package/dist/interface/assets/Camera-Ct7ndOxr.js +2 -0
- package/dist/interface/assets/{CameraConsole-D24yXOQn.js → CameraConsole-BI93OaRt.js} +2 -2
- package/dist/interface/assets/Cameras-Ctub8sVt.js +651 -0
- package/dist/interface/assets/Camview-BjQdTHNh.js +1 -0
- package/dist/interface/assets/{CertificateUpload-26LAL4MY.js → CertificateUpload-xW55NA1Q.js} +1 -1
- package/dist/interface/assets/Config-CBTbYd5v.js +2 -0
- package/dist/interface/assets/{ConfigActionAssistant-Cl_kr3hp.js → ConfigActionAssistant-B488rOp5.js} +1 -1
- package/dist/interface/assets/{ConfigActionCameraControl-CL4vXcNe.js → ConfigActionCameraControl-ZMUuBxOs.js} +1 -1
- package/dist/interface/assets/{ConfigActionDelay-DtPgmqWh.js → ConfigActionDelay-BJ11xvOW.js} +1 -1
- package/dist/interface/assets/{ConfigActionHttp-DnkZTP5l.js → ConfigActionHttp-DOUo69OR.js} +1 -1
- package/dist/interface/assets/{ConfigActionImageInput-3svn6YP9.js → ConfigActionImageInput-BMzuVZW9.js} +1 -1
- package/dist/interface/assets/{ConfigActionMqtt-BTsFTLgm.js → ConfigActionMqtt-Co_uksca.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotification-Cr4xJrZp.js → ConfigActionNotification-CcZkstYx.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotificationControl-Cxkb_g8p.js → ConfigActionNotificationControl--VeucoTw.js} +1 -1
- package/dist/interface/assets/{ConfigActionOutput-WTr7FGf_.js → ConfigActionOutput-CyDa1LGA.js} +1 -1
- package/dist/interface/assets/{ConfigActionPlugin-BpcJepbD.js → ConfigActionPlugin-Kfg3ZEQF.js} +1 -1
- package/dist/interface/assets/{ConfigActionSensor-BgD_F-hD.js → ConfigActionSensor-DhAF0HPw.js} +1 -1
- package/dist/interface/assets/{ConfigActionSnapshot-DjR-Z08N.js → ConfigActionSnapshot-zMe3SPvW.js} +1 -1
- package/dist/interface/assets/{ConfigActionVariable-gPuPbjpm.js → ConfigActionVariable-BE5q3NwY.js} +1 -1
- package/dist/interface/assets/{ConfigConditionIfElse-CUHKJmPx.js → ConfigConditionIfElse-BNIRtSVD.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSensorState-D-gPRqMu.js → ConfigConditionSensorState-DTNd-SzI.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSwitch-BRf1T5tJ.js → ConfigConditionSwitch-BU5wWMU1.js} +1 -1
- package/dist/interface/assets/{ConfigConditionTime-BC0n6sWO.js → ConfigConditionTime-KXTCIVIV.js} +1 -1
- package/dist/interface/assets/{ConfigSensorValueInput-BUHapx4M.js → ConfigSensorValueInput-BC1FpMm-.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerDetection-Byd6SLGg.js → ConfigTriggerDetection-hIN1hi53.js} +1 -1
- package/dist/interface/assets/ConfigTriggerGeofence-Bl2ZacbY.js +1 -0
- package/dist/interface/assets/{ConfigTriggerManual-B2dWcFrl.js → ConfigTriggerManual-C5vwxS-e.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerMqtt-B_aUDBu4.js → ConfigTriggerMqtt-B4PtWC3E.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSchedule-DAZo1PLj.js → ConfigTriggerSchedule-BZzUdGBa.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSensor-BCqAiPu4.js → ConfigTriggerSensor-D18nwMsj.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSystem-DuBydCiq.js → ConfigTriggerSystem-BhygWLB4.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerWebhook-DDsnpwJr.js → ConfigTriggerWebhook-yyuBuhLD.js} +1 -1
- package/dist/interface/assets/Console-Cfk9MA9m.js +1 -0
- package/dist/interface/assets/CuiAssistantConversation-BHK_i56I.js +5 -0
- package/dist/interface/assets/CuiAssistantConversation-lkpZg3ML.css +1 -0
- package/dist/interface/assets/{CuiAutomationRunsDialog-C_sMg7E1.js → CuiAutomationRunsDialog-B0ohEHw0.js} +1 -1
- package/dist/interface/assets/{CuiBottomSheet-D_0LrjA_.js → CuiBottomSheet-DWefGWK2.js} +1 -1
- package/dist/interface/assets/CuiBottomSheet-NgX7VFao.js +1 -0
- package/dist/interface/assets/CuiCameraPipCard-C2qaGJlH.js +1 -0
- package/dist/interface/assets/CuiCameraRecordings-BTD-CQAg.js +1 -0
- package/dist/interface/assets/{CuiCameraShares-BIUB1xMa.js → CuiCameraShares-DcqOcePX.js} +1 -1
- package/dist/interface/assets/{CuiCameraTable-D-UhqHk4.js → CuiCameraTable-BOkfp_5M.js} +2 -2
- package/dist/interface/assets/CuiCameraTable-KPk46Xcl.js +1 -0
- package/dist/interface/assets/{CuiChartTable-CSK4Mzn3.js → CuiChartTable-DP38uBwK.js} +1 -1
- package/dist/interface/assets/{CuiConsole-DAbJXJBq.js → CuiConsole-C7xE_nQg.js} +2 -2
- package/dist/interface/assets/{CuiDataTable-DgcJsG-K.js → CuiDataTable-CsqH-RB1.js} +1 -1
- package/dist/interface/assets/CuiLightControl-ChGYpQAK.js +1 -0
- package/dist/interface/assets/{CuiLightControl-DFrZm_sv.css → CuiLightControl-D9sm8NZb.css} +1 -1
- package/dist/interface/assets/{CuiList-HdsA9vV1.js → CuiList-DJp0__mV.js} +1 -1
- package/dist/interface/assets/CuiPluginCard-CWImTZ6l.js +2 -0
- package/dist/interface/assets/{CuiPluginCategoryChip-C7R1jP7r.js → CuiPluginCategoryChip-Ch_upS6Y.js} +1 -1
- package/dist/interface/assets/{CuiPluginOAuthButton-BJJw0IaC.js → CuiPluginOAuthButton-DEQ9xILN.js} +2 -2
- package/dist/interface/assets/{CuiPluginTrustBadge-Bmm1qYdC.js → CuiPluginTrustBadge-sVWdvHcM.js} +1 -1
- package/dist/interface/assets/{CuiQRCode-DTSEFMBt.js → CuiQRCode-DqSF4SkD.js} +1 -1
- package/dist/interface/assets/CuiSchema-ytExUVhI.js +1 -0
- package/dist/interface/assets/CuiTopNavbarItem-B_KWykgq.js +1 -0
- package/dist/interface/assets/Faces-Cb6XMxDC.js +1 -0
- package/dist/interface/assets/FirstSteps-QNYTkEJo.js +1 -0
- package/dist/interface/assets/Floorplan-DbqADtN1.js +1 -0
- package/dist/interface/assets/Instances-DrMzPD65.js +1 -0
- package/dist/interface/assets/{Logs-BjcfuMQV.js → Logs-BSPT80vP.js} +2 -2
- package/dist/interface/assets/{Menu-BjjnSgdP.js → Menu-HHtuhIS2.js} +1 -1
- package/dist/interface/assets/Metrics-CqhUnVRA.js +12 -0
- package/dist/interface/assets/{OAuthDeviceFlow-9v-Czy_u.js → OAuthDeviceFlow-Bn1nlWNa.js} +1 -1
- package/dist/interface/assets/Plugin-DyOg_fbg.js +1 -0
- package/dist/interface/assets/{PluginConsole-C7sO42RG.js → PluginConsole-Cv-uhnPY.js} +2 -2
- package/dist/interface/assets/PluginDetail-cpOz7FkA.js +2 -0
- package/dist/interface/assets/{PluginSchema-D0eL9H-b.js → PluginSchema-DW3TGeTM.js} +1 -1
- package/dist/interface/assets/PluginSearch-BgecD9Ob.js +2 -0
- package/dist/interface/assets/PluginSearch-C8xHKikH.js +1 -0
- package/dist/interface/assets/{PluginUpdateProgress--MM9D8hs.js → PluginUpdateProgress-n6q6vzyd.js} +1 -1
- package/dist/interface/assets/Plugins-CuujWEtM.js +1 -0
- package/dist/interface/assets/{RecentEventsFilter-CvIJS8Se.js → RecentEventsFilter-CTR5JK_P.js} +1 -1
- package/dist/interface/assets/Recordings-ths9khZr.js +1 -0
- package/dist/interface/assets/SensorEdit-BzoIH7QC.js +1 -0
- package/dist/interface/assets/{SensorHistory-Efw0bZ-X.js → SensorHistory-9CdOpCPs.js} +1 -1
- package/dist/interface/assets/Sensors-CK5uExfU.js +2 -0
- package/dist/interface/assets/Settings-DN5hFtw_.js +1 -0
- package/dist/interface/assets/SettingsAccount-BCrmon5O.js +1 -0
- package/dist/interface/assets/SettingsAccount-CSy1BAIH.js +1 -0
- package/dist/interface/assets/{SettingsAccount-si-6gWl5.css → SettingsAccount-CY8YE_cy.css} +1 -1
- package/dist/interface/assets/SettingsAppearance-BY1xQMx4.js +1 -0
- package/dist/interface/assets/SettingsAppearance-h_XPZfQl.js +1 -0
- package/dist/interface/assets/SettingsAssistant-D8FmVbUL.js +1 -0
- package/dist/interface/assets/{SettingsBackup-BqKBKis5.js → SettingsBackup-D_weokqu.js} +1 -1
- package/dist/interface/assets/{SettingsList-BU191rmt.js → SettingsList-Bq24WTDU.js} +1 -1
- package/dist/interface/assets/SettingsMqtt-DCkLIYpF.js +1 -0
- package/dist/interface/assets/SettingsNotifications-8TZOUxg2.js +1 -0
- package/dist/interface/assets/{SettingsPermissions-sI64FPZG.js → SettingsPermissions-M8u_jrN0.js} +1 -1
- package/dist/interface/assets/{SettingsRecordings-CghrKErw.js → SettingsRecordings-C1Kp5xW_.js} +1 -1
- package/dist/interface/assets/SettingsRemote-DXlQKwlT.js +2 -0
- package/dist/interface/assets/{SettingsSystem-DP1p1Xns.js → SettingsSystem-Cetu2faJ.js} +2 -2
- package/dist/interface/assets/{SettingsUsers-Dpej-he1.js → SettingsUsers-CDwtQLdV.js} +1 -1
- package/dist/interface/assets/{Terminal-DPRPXCSt.js → Terminal-Dl-aAZME.js} +2 -2
- package/dist/interface/assets/{Training-Dwf5rXyC.css → Training-B1oQjAr8.css} +1 -1
- package/dist/interface/assets/Training-DdZjXgt1.js +1 -0
- package/dist/interface/assets/{Updates-QTvCp1aS.js → Updates-CkB1lXuo.js} +1 -1
- package/dist/interface/assets/{VariableInput-DhusSZPw.js → VariableInput-BxPj5wo6.js} +1 -1
- package/dist/interface/assets/{VariableSuggestions-Bkzz4Mv3.js → VariableSuggestions-CbizvAkz.js} +1 -1
- package/dist/interface/assets/{VersionsHandler-DjNSpSYy.js → VersionsHandler-CePyEUVO.js} +2 -2
- package/dist/interface/assets/{VirtualSensorCreate-soGT6h2c.js → VirtualSensorCreate-D_GVoeL7.js} +1 -1
- package/dist/interface/assets/Workers-7yiebNkl.js +2 -0
- package/dist/interface/assets/api-DK2Bav9D.js +4 -0
- package/dist/interface/assets/api-DTCqDA-h.css +2 -0
- package/dist/interface/assets/{api-CK2tonlH.js → api-DW2niHRN.js} +1 -1
- package/dist/interface/assets/{assistant-BEe1ExZL.js → assistant-BJ6xKcw_.js} +1 -1
- package/dist/interface/assets/{auth-QEpUGkWd.js → auth-Dc8bUpc-.js} +1 -1
- package/dist/interface/assets/{automations-BBIBV4Uu.js → automations-DXrjbArj.js} +1 -1
- package/dist/interface/assets/{cameraSources-Cm18cW9L.js → cameraSources-QJfUDOQJ.js} +1 -1
- package/dist/interface/assets/cloudHandoff-DtlquYGZ.js +1 -0
- package/dist/interface/assets/{config-vwkU8aqP.js → config-CiQDwB4t.js} +1 -1
- package/dist/interface/assets/{flowSchema-rzBroL0H.js → flowSchema-BRTZHQ1w.js} +1 -1
- package/dist/interface/assets/{intercomService-Du8V_HxF.js → intercomService-BnA-FQ0Q.js} +1 -1
- package/dist/interface/assets/{main-XHFrBKKz.css → main-BoGhBedC.css} +1 -1
- package/dist/interface/assets/main-D74mRIxc.js +3 -0
- package/dist/interface/assets/mqtt-iD9XHYO_.js +1 -0
- package/dist/interface/assets/{notifications-CN6eTJb_.js → notifications-CbAJX7RF.js} +1 -1
- package/dist/interface/assets/{plugins-DKtX7zQp.js → plugins-eIUrXNeM.js} +1 -1
- package/dist/interface/assets/rooms-BqPyo8jc.js +1 -0
- package/dist/interface/assets/{sensorIcons-ztqlMLDc.js → sensorIcons-DQVgryYP.js} +1 -1
- package/dist/interface/assets/{sensorSlots-D-uxjuv3.js → sensorSlots-BZCXtnb6.js} +1 -1
- package/dist/interface/assets/{sensors-DV2Z0IJt.js → sensors-DttBNEEt.js} +1 -1
- package/dist/interface/assets/{server-CfZnIVzn.js → server-DUFhf2c_.js} +1 -1
- package/dist/interface/assets/{theme-Bi7qdjBK.js → theme-BMmjtQ4w.js} +1 -1
- package/dist/interface/assets/{types-CNLAvgyw.js → types-5rE8Tz0_.js} +1 -1
- package/dist/interface/assets/{types-DwbeYXvn.js → types-CXw7CEzu.js} +1 -1
- package/dist/interface/assets/{types-DuwD8xp5.js → types-DWTSNJ79.js} +1 -1
- package/dist/interface/assets/ungrouped-D56FGIrg.js +1 -0
- package/dist/interface/assets/ungrouped-DHMJ9Rg1.css +1 -0
- package/dist/interface/assets/{updates-BqCH6Vr8.js → updates-TIPWXKzL.js} +1 -1
- package/dist/interface/assets/{useAppVersion-B-rmq3Bb.js → useAppVersion-BIz44Bg4.js} +1 -1
- package/dist/interface/assets/{useAssistantActions-Kf-5ijVf.js → useAssistantActions-CLkkw9kB.js} +1 -1
- package/dist/interface/assets/useBackupRestore-Crfd592q.js +1 -0
- package/dist/interface/assets/{useCameraOptions-Dt2J8sP_.js → useCameraOptions-A97teAIr.js} +1 -1
- package/dist/interface/assets/{useKeyboardInset-DtD3I2WC.js → useKeyboardInset-DXVi1dLG.js} +1 -1
- package/dist/interface/assets/{useLogsSocket-CEhUQdiY.js → useLogsSocket-BlFxVXjF.js} +1 -1
- package/dist/interface/assets/{useNavLayout-CtpYjS5W.js → useNavLayout-C5obaCNv.js} +1 -1
- package/dist/interface/assets/{usePermissions-CJzuagwD.js → usePermissions-C8hB_pG1.js} +1 -1
- package/dist/interface/assets/{usePluginUpdates-BwoWN5yb.js → usePluginUpdates-DO0-Gk4Q.js} +1 -1
- package/dist/interface/assets/{usePushRegistration-ANx4BS6_.js → usePushRegistration-BUttCraQ.js} +1 -1
- package/dist/interface/assets/{useServerRestart-7edyD8M0.js → useServerRestart-Cz9eVHUE.js} +1 -1
- package/dist/interface/assets/{useStreamStatus-DCSWHdbW.js → useStreamStatus-BhS_MCCB.js} +1 -1
- package/dist/interface/assets/{useTabSwipe-DfS3R3uP.js → useTabSwipe-D4k8lm1M.js} +1 -1
- package/dist/interface/assets/{useUpdateChannel-Cr9mSIRC.js → useUpdateChannel-D9lhfW0y.js} +1 -1
- package/dist/interface/assets/{useUpdatesSocket-B5Rm9syb.js → useUpdatesSocket-DnH9sON5.js} +1 -1
- package/dist/interface/assets/{useUserOptions-CJjImz8V.js → useUserOptions-BTRBUuE2.js} +1 -1
- package/dist/interface/assets/{vendor-cameraui-BbGOMenD.js → vendor-cameraui-QXD8jkcj.js} +26 -26
- package/dist/interface/assets/{vendor-core-tgH2YubJ.js → vendor-core-CnhnyKDl.js} +1 -1
- package/dist/interface/assets/{vendor-primevue-DNJJiEZl.js → vendor-primevue-CCUqY55W.js} +207 -207
- package/dist/interface/ha/{404-Dl6JtQWv.js → 404-DLhJqxRl.js} +1 -1
- package/dist/interface/ha/{About-wjv4kCO3.js → About-DC0i1iE4.js} +3 -3
- package/dist/interface/ha/{Assistant-Dpb4IsDC.js → Assistant-BmazMPIg.js} +821 -825
- package/dist/interface/ha/{Automation-CqTPjCUh.js → Automation-gabF9YzQ.js} +336 -336
- package/dist/interface/ha/{AutomationImport-CvdeneoU.js → AutomationImport-DaqZNs9s.js} +8 -8
- package/dist/interface/ha/{AutomationStore-bVPE68io.js → AutomationStore-DzM4huo5.js} +54 -54
- package/dist/interface/ha/{AutomationStoreDetail-BYaNUjoH.js → AutomationStoreDetail-CpzQMt_D.js} +7 -7
- package/dist/interface/ha/{Automations-BfsYh2A_.js → Automations-Dcm4Us50.js} +81 -81
- package/dist/interface/ha/{Camera-C70onr_O.js → Camera-CNK3QR7l.js} +198 -198
- package/dist/interface/ha/{CameraConsole-Dg3lV-wq.js → CameraConsole-CpcF0411.js} +5 -5
- package/dist/interface/ha/{Cameras-DpM6gt3G.js → Cameras-Cf9rwRyf.js} +293 -294
- package/dist/interface/ha/{Camview-CO_bHntH.js → Camview-BFKR2t6C.js} +87 -87
- package/dist/interface/ha/{Config-D-cpocuH.js → Config-1XH3zfr2.js} +11 -11
- package/dist/interface/ha/{ConfigActionAssistant-DVVVfVvT.js → ConfigActionAssistant-C0-NFoTB.js} +5 -5
- package/dist/interface/ha/{ConfigActionCameraControl-BPpzE9-F.js → ConfigActionCameraControl-DNSKZPSZ.js} +5 -5
- package/dist/interface/ha/{ConfigActionDelay-zU6H75hY.js → ConfigActionDelay-iZ3lPGzw.js} +1 -1
- package/dist/interface/ha/{ConfigActionHttp-BsNy03j4.js → ConfigActionHttp-DVJAcGkl.js} +3 -3
- package/dist/interface/ha/{ConfigActionImageInput-JUvNYn0w.js → ConfigActionImageInput-VVbHHHZs.js} +3 -3
- package/dist/interface/ha/{ConfigActionMqtt-PZqAKfTo.js → ConfigActionMqtt-N5OUJDzM.js} +4 -4
- package/dist/interface/ha/{ConfigActionNotification-DIL7abEm.js → ConfigActionNotification-s142tQoU.js} +6 -6
- package/dist/interface/ha/{ConfigActionNotificationControl-BQ2w5yeg.js → ConfigActionNotificationControl-Dh7kaKVP.js} +3 -3
- package/dist/interface/ha/{ConfigActionOutput-DVilKhPV.js → ConfigActionOutput-B4HHTg5C.js} +1 -1
- package/dist/interface/ha/{ConfigActionPlugin-BUfTEJQ_.js → ConfigActionPlugin-D20G2Dqf.js} +5 -5
- package/dist/interface/ha/{ConfigActionSensor-Dzp16VyX.js → ConfigActionSensor-BS3jrFaG.js} +6 -6
- package/dist/interface/ha/{ConfigActionSnapshot-CRjD5AMC.js → ConfigActionSnapshot-CInLAcwK.js} +3 -3
- package/dist/interface/ha/{ConfigActionVariable-CR8g7gEh.js → ConfigActionVariable-C5vADGNF.js} +2 -2
- package/dist/interface/ha/{ConfigConditionIfElse-CHoSgzXF.js → ConfigConditionIfElse-CPeWDD31.js} +4 -4
- package/dist/interface/ha/{ConfigConditionSensorState-Dn8_OhQe.js → ConfigConditionSensorState-BM5GmpN6.js} +6 -6
- package/dist/interface/ha/{ConfigConditionSwitch-Ds-nqWeU.js → ConfigConditionSwitch-Dmz9FduJ.js} +4 -4
- package/dist/interface/ha/{ConfigConditionTime-DWNfEluj.js → ConfigConditionTime-DF6llIJq.js} +2 -2
- package/dist/interface/ha/{ConfigSensorValueInput-DwXM9wP1.js → ConfigSensorValueInput-Ch5njvtv.js} +7 -7
- package/dist/interface/ha/{ConfigTriggerDetection-D37OkR_u.js → ConfigTriggerDetection-BR2QWNyO.js} +5 -5
- package/dist/interface/ha/{ConfigTriggerGeofence-EbXy_y3Q.js → ConfigTriggerGeofence-CaImOjyW.js} +9 -9
- package/dist/interface/ha/{ConfigTriggerMqtt-BX6uNEZy.js → ConfigTriggerMqtt-DWz1XwZQ.js} +2 -2
- package/dist/interface/ha/{ConfigTriggerSensor-BFGEtBVF.js → ConfigTriggerSensor-lfnhz0im.js} +3 -3
- package/dist/interface/ha/{ConfigTriggerSystem-fRnAgUGR.js → ConfigTriggerSystem-CwUhyFAj.js} +3 -3
- package/dist/interface/ha/{ConfigTriggerWebhook-DegifRdj.js → ConfigTriggerWebhook-J6Xts7GQ.js} +2 -2
- package/dist/interface/ha/{Console-Bo6S5psN.js → Console-BSdKFm6Y.js} +8 -8
- package/dist/interface/ha/{CuiAutomationRunsDialog-DXpNJqDE.js → CuiAutomationRunsDialog-BU8sympp.js} +3 -3
- package/dist/interface/ha/{CuiBottomSheet-DLkC2OmT.js → CuiBottomSheet-Bnp7ta7V.js} +1 -1
- package/dist/interface/ha/{CuiCameraRecordings-9tdkxXiT.js → CuiCameraRecordings-E-mMqKSs.js} +18 -19
- package/dist/interface/ha/{CuiCameraShares-BbqY_2b7.js → CuiCameraShares-DcNwd2OC.js} +8 -8
- package/dist/interface/ha/{CuiCameraTable-BmH1yAgl.js → CuiCameraTable-DNW9Vm_A.js} +6 -6
- package/dist/interface/ha/{CuiChartTable-BjBBI7Fo.js → CuiChartTable-muC7jL2H.js} +6 -6
- package/dist/interface/ha/{CuiConsole-By3m4UbE.js → CuiConsole-ND8bcuTg.js} +2 -2
- package/dist/interface/ha/{CuiDataTable-C_ndu5My.js → CuiDataTable-CN4T8DgP.js} +13 -13
- package/dist/interface/ha/{CuiPluginCard-BLQ1galy.js → CuiPluginCard-nIQiyQvH.js} +31 -31
- package/dist/interface/ha/{CuiPluginOAuthButton-BDghklSy.js → CuiPluginOAuthButton-FJ49NfUh.js} +3 -3
- package/dist/interface/ha/{CuiPluginTrustBadge-DolANNao.js → CuiPluginTrustBadge-D6eanMyI.js} +2 -2
- package/dist/interface/ha/{CuiQRCode-CcjPngXI.js → CuiQRCode-BdJzeeoE.js} +2 -2
- package/dist/interface/ha/{CuiSchema-D9JFf0dp.js → CuiSchema-DY0V-8xP.js} +67 -67
- package/dist/interface/ha/{CuiTopNavbarItem-DcUEq-4e.js → CuiTopNavbarItem-DT5pAKHp.js} +7 -8
- package/dist/interface/ha/{Faces-DjXHzr77.js → Faces-C_svyTrr.js} +92 -92
- package/dist/interface/ha/{FirstSteps-CQAP9Siw.js → FirstSteps-yS2M2cor.js} +9 -9
- package/dist/interface/ha/{Floorplan-DyaPzlQO.js → Floorplan-DSOeScjI.js} +194 -194
- package/dist/interface/ha/{Instances-DWjaU5gj.js → Instances-B4h5EKpF.js} +20 -20
- package/dist/interface/ha/{Logs-Dlx-X1NS.js → Logs-BH0Lxvs6.js} +12 -12
- package/dist/interface/ha/{Menu-iqEe01qO.js → Menu-COH7QXuE.js} +13 -13
- package/dist/interface/ha/{Metrics-Br2Dyvzh.js → Metrics-BtnRqL_I.js} +136 -136
- package/dist/interface/ha/{OAuthDeviceFlow-CIGk92FD.js → OAuthDeviceFlow-D2QJ9MnP.js} +8 -8
- package/dist/interface/ha/{Plugin-DklIr7j2.js → Plugin-EfUSqwyh.js} +85 -85
- package/dist/interface/ha/{PluginConsole-DCfxPtGU.js → PluginConsole-hh_o15f7.js} +4 -4
- package/dist/interface/ha/PluginDetail-DFiXGkrY.js +805 -0
- package/dist/interface/ha/{PluginSearch-BTKBnjxb.js → PluginSearch-Cdrfubrj.js} +54 -54
- package/dist/interface/ha/{PluginUpdateProgress-Dej5AcCt.js → PluginUpdateProgress-BD2g2kVj.js} +3 -3
- package/dist/interface/ha/{Plugins-C2fONspm.js → Plugins-qFiHW-Nk.js} +45 -45
- package/dist/interface/ha/{RecentEventsFilter-ylgjiDo8.js → RecentEventsFilter-UWrXnvfq.js} +1 -1
- package/dist/interface/ha/{Recordings-w39I43cc.js → Recordings-BzeC6tOz.js} +437 -419
- package/dist/interface/ha/{SensorEdit-BkKi1l-A.js → SensorEdit-BSgy7lkZ.js} +360 -360
- package/dist/interface/ha/{SensorHistory-BGJjMlc3.js → SensorHistory-IDvP8LKH.js} +2 -2
- package/dist/interface/ha/{Sensors-D_Wi9XPa.js → Sensors-Diqp4oZ0.js} +96 -97
- package/dist/interface/ha/{Settings-Bn7WLWf0.js → Settings-BgDsxAlx.js} +11 -11
- package/dist/interface/ha/{SettingsAccount-CRTex-1j.js → SettingsAccount-DBXMQPYk.js} +159 -159
- package/dist/interface/ha/{SettingsAppearance-B1qmJnYk.js → SettingsAppearance-VmbjnT3o.js} +6 -6
- package/dist/interface/ha/{SettingsAssistant-DDd1X0BC.js → SettingsAssistant-C2R4ZetE.js} +133 -133
- package/dist/interface/ha/{SettingsBackup-DZbhSB13.js → SettingsBackup-BqY9TwYn.js} +20 -20
- package/dist/interface/ha/{SettingsList-BQdyPe0H.js → SettingsList-CzHcfo2N.js} +4 -4
- package/dist/interface/ha/{SettingsMqtt-CSZcY6ht.js → SettingsMqtt-DqV3h3Ow.js} +149 -149
- package/dist/interface/ha/{SettingsNotifications-CfEhl0-y.js → SettingsNotifications-yn5fIR_7.js} +6 -6
- package/dist/interface/ha/{SettingsRecordings-BnAGDvcH.js → SettingsRecordings-DDs1lyfY.js} +8 -8
- package/dist/interface/ha/{SettingsRemote-w86TQVUA.js → SettingsRemote-jBw3l5E0.js} +172 -172
- package/dist/interface/ha/{SettingsSystem-CENjHL3k.js → SettingsSystem-BOv9hNlk.js} +9 -9
- package/dist/interface/ha/{SettingsUsers-CqSHRklV.js → SettingsUsers-Biv-2F4C.js} +90 -90
- package/dist/interface/ha/{Terminal-WsuxG3k-.js → Terminal-CmcrGEV0.js} +4 -4
- package/dist/interface/ha/Training-BEzPiXZg.js +1512 -0
- package/dist/interface/ha/{Updates-Dl_lLLR2.js → Updates-DJAcmDQJ.js} +12 -12
- package/dist/interface/ha/{VariableInput-C8Q81GUt.js → VariableInput-DlYg7t0m.js} +2 -2
- package/dist/interface/ha/{VersionsHandler-BOvjesvp.js → VersionsHandler-UnrAWn-b.js} +11 -11
- package/dist/interface/ha/{VirtualSensorCreate-sgwATaky.js → VirtualSensorCreate-CssxeaCC.js} +2 -2
- package/dist/interface/ha/{Workers-CkDuQ9NG.js → Workers-CLpqLugC.js} +14 -14
- package/dist/interface/ha/{accordion-Xem2SzgR.js → accordion-BylV-jUK.js} +2 -2
- package/dist/interface/ha/{api-BmYisoxj.js → api-BP7mlzjP.js} +11181 -11736
- package/dist/interface/ha/{api-oqpIZTkx.js → api-B_tDa73J.js} +1 -1
- package/dist/interface/ha/{assistant-0jE4C19U.js → assistant-Cb6ACguQ.js} +1 -1
- package/dist/interface/ha/{auth-B4Msg7R-.js → auth-DOYDRgFm.js} +1 -1
- package/dist/interface/ha/{autocomplete-B94Amei3.js → autocomplete-Cp3u2Ywa.js} +4 -4
- package/dist/interface/ha/{automationBlueprint-C-12Yjl7.js → automationBlueprint-CbbG_ku4.js} +1 -1
- package/dist/interface/ha/cameraui-cards.js +1 -1
- package/dist/interface/ha/{cards-BrOcoiQJ.js → cards-BpBP1zVW.js} +1206 -1198
- package/dist/interface/ha/{config-IG56wp6m.js → config-DroY1HBs.js} +1 -1
- package/dist/interface/ha/{datepicker-B4Azs5zr.js → datepicker-DXk97lTw.js} +4 -4
- package/dist/interface/ha/{mqtt-pl13wSmG.js → mqtt-NJTVdd53.js} +1 -1
- package/dist/interface/ha/{multiselect-Dp4XDBRR.js → multiselect-BOb4ScAZ.js} +4 -4
- package/dist/interface/ha/{notifications-B6wxSmou.js → notifications-BPTvvgvv.js} +1 -1
- package/dist/interface/ha/{plugins-BwwaWxye.js → plugins-B29K3nQP.js} +1 -1
- package/dist/interface/ha/{rooms-NIzjFYAd.js → rooms-DLw0WUy_.js} +1 -1
- package/dist/interface/ha/{select-UR3ZRDew.js → select-DV7p2EDj.js} +4 -4
- package/dist/interface/ha/{server-YOLwDVAW.js → server-B4b5_Ecu.js} +1 -1
- package/dist/interface/ha/{speeddial-LCbl5g8p.js → speeddial-B5p0fuqL.js} +1 -1
- package/dist/interface/ha/{tooltip-Z7VN-E1u.js → tooltip-BDrlgLof.js} +1 -1
- package/dist/interface/ha/{types-B8B9MqK0.js → types-DJHHL7nn.js} +1 -1
- package/dist/interface/ha/{ungrouped-DttNEB62.js → ungrouped-xyK1QrsM.js} +344 -376
- package/dist/interface/ha/{updates-DVhiQhMM.js → updates-XFSu9Tfm.js} +5 -5
- package/dist/interface/ha/{useAppVersion-CG4D44Aa.js → useAppVersion-BH3rU1zz.js} +1 -1
- package/dist/interface/ha/{useLogsSocket-PKsRDttg.js → useLogsSocket-CaTRzvgU.js} +1 -1
- package/dist/interface/ha/{useNavLayout-DoEcPx9Z.js → useNavLayout-DV0_OQx0.js} +1 -1
- package/dist/interface/ha/{useServerRestart-CMl589qX.js → useServerRestart-C8tynLUf.js} +1 -1
- package/dist/interface/ha/{useTabSwipe-Cmqdn0J5.js → useTabSwipe-CFoLDp3j.js} +1 -1
- package/dist/interface/ha/{useUpdateChannel-BBW2EX7N.js → useUpdateChannel-DSG2RTPe.js} +2 -2
- package/dist/interface/ha/{useUpdatesSocket-B6ICpKKC.js → useUpdatesSocket-CSQ0g7-6.js} +1 -1
- package/dist/interface/ha/{useUserOptions-CzclRfar.js → useUserOptions-CFaCy6L1.js} +1 -1
- package/dist/interface/ha/{virtualscroller-C5j7FXj4.js → virtualscroller-B-UQZDMJ.js} +88 -88
- package/dist/interface/index.html +34 -34
- package/dist/interface/sw.js +1 -1
- package/dist/server/package.json +22 -20
- package/dist/server/requirements.txt +1 -1
- package/dist/server/src/api/controllers/auth.controller.js +5 -6
- package/dist/server/src/api/controllers/auth.controller.js.map +1 -1
- package/dist/server/src/api/controllers/plugins.controller.js +5 -5
- package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
- package/dist/server/src/api/database/checks.js +20 -8
- package/dist/server/src/api/database/checks.js.map +1 -1
- package/dist/server/src/api/database/selfcheck.js +2 -2
- package/dist/server/src/api/database/selfcheck.js.map +1 -1
- package/dist/server/src/api/index.js +8 -6
- package/dist/server/src/api/index.js.map +1 -1
- package/dist/server/src/api/plugins/logger.plugin.js +11 -11
- package/dist/server/src/api/plugins/logger.plugin.js.map +1 -1
- package/dist/server/src/api/services/twoFactor.service.d.ts +4 -5
- package/dist/server/src/api/services/twoFactor.service.js +16 -17
- package/dist/server/src/api/services/twoFactor.service.js.map +1 -1
- package/dist/server/src/api/types/index.d.ts +0 -1
- package/dist/server/src/api/utils/cert.js +128 -135
- package/dist/server/src/api/utils/cert.js.map +1 -1
- package/dist/server/src/api/utils/form-body.d.ts +2 -0
- package/dist/server/src/api/utils/form-body.js +22 -0
- package/dist/server/src/api/utils/form-body.js.map +1 -0
- package/dist/server/src/api/utils/install-logger.js +12 -12
- package/dist/server/src/api/utils/install-logger.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/logs.d.ts +7 -3
- package/dist/server/src/api/websocket/nsp/logs.js +79 -65
- package/dist/server/src/api/websocket/nsp/logs.js.map +1 -1
- package/dist/server/src/assistant/history.d.ts +2 -0
- package/dist/server/src/assistant/history.js +46 -0
- package/dist/server/src/assistant/history.js.map +1 -0
- package/dist/server/src/assistant/manager.js +2 -1
- package/dist/server/src/assistant/manager.js.map +1 -1
- package/dist/server/src/camera/controller.d.ts +1 -0
- package/dist/server/src/camera/controller.js +23 -18
- package/dist/server/src/camera/controller.js.map +1 -1
- package/dist/server/src/camera/decoder/worker.d.ts +3 -0
- package/dist/server/src/camera/decoder/worker.js +42 -5
- package/dist/server/src/camera/decoder/worker.js.map +1 -1
- package/dist/server/src/go2rtc/index.js +2 -2
- package/dist/server/src/go2rtc/index.js.map +1 -1
- package/dist/server/src/main.js +5 -5
- package/dist/server/src/main.js.map +1 -1
- package/dist/server/src/manager/discoveryManager.js +2 -2
- package/dist/server/src/manager/discoveryManager.js.map +1 -1
- package/dist/server/src/remote/services/cloudflare-managed.js +6 -3
- package/dist/server/src/remote/services/cloudflare-managed.js.map +1 -1
- package/dist/server/src/remote/services/cloudflare.d.ts +0 -1
- package/dist/server/src/remote/services/cloudflare.js +9 -20
- package/dist/server/src/remote/services/cloudflare.js.map +1 -1
- package/dist/server/src/remote/services/cloudflaredBinary.d.ts +3 -2
- package/dist/server/src/remote/services/cloudflaredBinary.js +9 -16
- package/dist/server/src/remote/services/cloudflaredBinary.js.map +1 -1
- package/dist/server/src/rpc/server.js +2 -2
- package/dist/server/src/rpc/server.js.map +1 -1
- package/dist/server/src/utils/automation-registry/index.js +3 -3
- package/dist/server/src/utils/automation-registry/index.js.map +1 -1
- package/dist/server/src/utils/colors.d.ts +2 -0
- package/dist/server/src/utils/colors.js +8 -0
- package/dist/server/src/utils/colors.js.map +1 -0
- package/dist/server/src/utils/npm/auth.d.ts +3 -2
- package/dist/server/src/utils/npm/auth.js +1 -1
- package/dist/server/src/utils/npm/auth.js.map +1 -1
- package/dist/server/src/utils/npm/index.d.ts +3 -15
- package/dist/server/src/utils/npm/index.js +26 -17
- package/dist/server/src/utils/npm/index.js.map +1 -1
- package/dist/server/src/utils/npm/registry.d.ts +69 -0
- package/dist/server/src/utils/npm/registry.js +240 -0
- package/dist/server/src/utils/npm/registry.js.map +1 -0
- package/dist/server/src/utils/plugin-registry/index.js +3 -3
- package/dist/server/src/utils/plugin-registry/index.js.map +1 -1
- package/dist/server/src/utils/process.d.ts +10 -0
- package/dist/server/src/utils/process.js +112 -0
- package/dist/server/src/utils/process.js.map +1 -0
- package/dist/server/src/utils/totp.d.ts +12 -0
- package/dist/server/src/utils/totp.js +71 -0
- package/dist/server/src/utils/totp.js.map +1 -0
- package/dist/server/src/utils/ttl-cache.d.ts +20 -0
- package/dist/server/src/utils/ttl-cache.js +63 -0
- package/dist/server/src/utils/ttl-cache.js.map +1 -0
- package/npm-shrinkwrap.json +6427 -0
- package/package.json +22 -20
- package/dist/interface/assets/Assistant-BKxssfw-.js +0 -1
- package/dist/interface/assets/Automation-CP59cgP7.js +0 -3
- package/dist/interface/assets/AutomationStore-BZGR_5Xl.js +0 -2
- package/dist/interface/assets/Automations-BpXorYAS.js +0 -2
- package/dist/interface/assets/Camera-UBUfaR5a.js +0 -2
- package/dist/interface/assets/Cameras-B21Y8MdQ.js +0 -651
- package/dist/interface/assets/Camview-BySyPtU5.js +0 -1
- package/dist/interface/assets/Config-BGyGmukb.js +0 -2
- package/dist/interface/assets/ConfigTriggerGeofence-CkzTFEZn.js +0 -1
- package/dist/interface/assets/Console-HXmKYaK_.js +0 -1
- package/dist/interface/assets/CuiAssistantConversation-2qrRCsgw.js +0 -5
- package/dist/interface/assets/CuiAssistantConversation-DmSdiv1b.css +0 -1
- package/dist/interface/assets/CuiBottomSheet-CTr-KHC8.js +0 -1
- package/dist/interface/assets/CuiCameraPipCard-BZCayhy_.js +0 -1
- package/dist/interface/assets/CuiCameraRecordings-BbaEL2ST.js +0 -1
- package/dist/interface/assets/CuiCameraTable-C5tQHs63.js +0 -1
- package/dist/interface/assets/CuiLightControl-v6k9hVGl.js +0 -1
- package/dist/interface/assets/CuiPluginCard-5MRYJcF2.js +0 -2
- package/dist/interface/assets/CuiSchema-BDXeXora.js +0 -1
- package/dist/interface/assets/CuiTopNavbarItem-BVknLbRO.js +0 -1
- package/dist/interface/assets/Faces-BEpYvbB0.js +0 -1
- package/dist/interface/assets/FirstSteps-U93RDOcP.js +0 -1
- package/dist/interface/assets/Floorplan-D8XoCNOB.js +0 -1
- package/dist/interface/assets/Instances-CFwZotvU.js +0 -1
- package/dist/interface/assets/Metrics-Ca_d5CbP.js +0 -12
- package/dist/interface/assets/Plugin-BjLw46Sw.js +0 -1
- package/dist/interface/assets/PluginDetail-BuLW4lkN.js +0 -2
- package/dist/interface/assets/PluginSearch--LLMEeyx.js +0 -2
- package/dist/interface/assets/PluginSearch-0akjE0ef.js +0 -1
- package/dist/interface/assets/Plugins-26O511gf.js +0 -1
- package/dist/interface/assets/Recordings-DQOGeSFm.js +0 -1
- package/dist/interface/assets/SensorEdit-DEW5D80x.js +0 -1
- package/dist/interface/assets/Sensors-C8yOyAwo.js +0 -2
- package/dist/interface/assets/Settings-B-RgMeVm.js +0 -1
- package/dist/interface/assets/SettingsAccount-B6aXFx3F.js +0 -1
- package/dist/interface/assets/SettingsAccount-_0ccrXYU.js +0 -1
- package/dist/interface/assets/SettingsAppearance-CkDwzx6f.js +0 -1
- package/dist/interface/assets/SettingsAppearance-DBFE3uVH.js +0 -1
- package/dist/interface/assets/SettingsAssistant-DN5OUJqt.js +0 -1
- package/dist/interface/assets/SettingsMqtt-hsKZkU-o.js +0 -1
- package/dist/interface/assets/SettingsNotifications-DIeiUEAk.js +0 -1
- package/dist/interface/assets/SettingsRemote-Doa0aBMC.js +0 -2
- package/dist/interface/assets/Training-DYlefOX1.js +0 -1
- package/dist/interface/assets/Workers-CUVvTuts.js +0 -2
- package/dist/interface/assets/api-B0wYDGQj.css +0 -2
- package/dist/interface/assets/api-BNrZVfeD.js +0 -4
- package/dist/interface/assets/cloudHandoff-Dnndt2el.js +0 -1
- package/dist/interface/assets/main-CRlC4FBY.js +0 -3
- package/dist/interface/assets/mqtt-BY6-Hrbv.js +0 -1
- package/dist/interface/assets/ring-resize-DyqCo2UN.js +0 -1
- package/dist/interface/assets/rooms-BHP4q6yf.js +0 -1
- package/dist/interface/assets/ungrouped-DBRZ-Ori.css +0 -1
- package/dist/interface/assets/ungrouped-DHLAmt__.js +0 -1
- package/dist/interface/assets/useBackupRestore-Dj-ZXODq.js +0 -1
- package/dist/interface/ha/PluginDetail-BFfRnkdG.js +0 -230
- package/dist/interface/ha/Training-hu_XOYBk.js +0 -1505
- package/dist/interface/ha/ring-resize-Dr2PxWIg.js +0 -16
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
import { r as e } from "./rolldown-runtime-CEFd7nDs.js";
|
|
2
2
|
import { m as t } from "./ripple-ZDATPc2w.js";
|
|
3
3
|
import { A as n, B as r, Et as i, G as a, H as o, Jt as s, K as c, M as l, Ot as u, Wt as d, Y as f, _t as p, d as m, f as h, g, gt as _, kt as v, l as y, lt as b, ot as x, p as S, qt as C, r as w, rt as T, u as E, ut as D, v as O, wt as k, x as A, xt as j, y as M, z as ee } from "./runtime-core.esm-bundler-_TfE0DWz.js";
|
|
4
|
-
import { t as N } from "./tooltip-
|
|
4
|
+
import { t as N } from "./tooltip-BDrlgLof.js";
|
|
5
5
|
import { t as te } from "./message-D6dIy_hz.js";
|
|
6
|
-
import { t as
|
|
7
|
-
import { Br as re,
|
|
8
|
-
import { i as
|
|
9
|
-
import { A as
|
|
10
|
-
import { n as
|
|
11
|
-
import { t as
|
|
12
|
-
import { v as
|
|
13
|
-
import { t as
|
|
14
|
-
import { t as
|
|
15
|
-
import { i as
|
|
16
|
-
import { t as
|
|
17
|
-
import { t as
|
|
18
|
-
import { a as
|
|
19
|
-
import { a as
|
|
20
|
-
import { t as Ae } from "./CuiBottomSheet-
|
|
6
|
+
import { t as P } from "./history-XMyO_cLc.js";
|
|
7
|
+
import { Br as ne, J as re, Lr as ie, On as ae, Or as oe, Sr as se, _t as ce, bi as le, jn as ue, kr as de, m as fe, mr as pe, pi as me, vn as he, vr as ge, vt as F, wr as _e, zr as ve } from "./api-BP7mlzjP.js";
|
|
8
|
+
import { i as I } from "./intercomService-B7HkLs6z.js";
|
|
9
|
+
import { A as L, j as R, n as ye, r as be } from "./pinia-C6gt7A_Q.js";
|
|
10
|
+
import { n as z } from "./vue-i18n-D5EAy78K.js";
|
|
11
|
+
import { t as xe } from "./button-BouAFgf5.js";
|
|
12
|
+
import { v as B } from "./dist-C6MBHJhs.js";
|
|
13
|
+
import { t as V } from "./inputtext-C_ygnPrC.js";
|
|
14
|
+
import { t as H } from "./close-CxFbonhd.js";
|
|
15
|
+
import { i as U, n as Se, r as Ce, t as we } from "./accordion-BylV-jUK.js";
|
|
16
|
+
import { t as Te } from "./inputnumber-DZRwKgXr.js";
|
|
17
|
+
import { t as Ee } from "./speeddial-B5p0fuqL.js";
|
|
18
|
+
import { a as W, i as G, l as De, r as K } from "./types-DJHHL7nn.js";
|
|
19
|
+
import { a as Oe, i as ke } from "./automationBlueprint-CbbG_ku4.js";
|
|
20
|
+
import { t as Ae } from "./CuiBottomSheet-Bnp7ta7V.js";
|
|
21
21
|
import { t as je } from "./back-filled-CaxrZv0Q.js";
|
|
22
|
-
import { a as Me, c as Ne, d as Pe, f as Fe, i as Ie, l as
|
|
23
|
-
import { t as
|
|
24
|
-
import { t as
|
|
22
|
+
import { a as Me, c as Ne, d as Pe, f as Fe, i as Ie, l as Le, n as Re, o as q, p as ze, r as J, s as Y, t as Be, u as Ve } from "./vue-flow-background-8ZUqhPBF.js";
|
|
23
|
+
import { t as He } from "./plus-CgxY7W0L.js";
|
|
24
|
+
import { t as Ue } from "./settings-lWJfHaif.js";
|
|
25
25
|
//#region src/stores/automations.ts
|
|
26
|
-
var
|
|
26
|
+
var X = ye("automations", () => {
|
|
27
27
|
let e = j(null), t = j(null), n = j(null), r = j(!1), i = j(null), a = j([]);
|
|
28
28
|
function o(e) {
|
|
29
29
|
if (!n.value) return;
|
|
@@ -42,17 +42,17 @@ var Z = be("automations", () => {
|
|
|
42
42
|
});
|
|
43
43
|
//#endregion
|
|
44
44
|
//#region src/components/CuiAutomation/config/flowSchema.ts
|
|
45
|
-
function
|
|
45
|
+
function We(e, t) {
|
|
46
46
|
if (!e) return [];
|
|
47
47
|
let n = [];
|
|
48
|
-
return
|
|
48
|
+
return Je(e, t, n, /* @__PURE__ */ new Set(), /* @__PURE__ */ new Set()), n;
|
|
49
49
|
}
|
|
50
|
-
function
|
|
50
|
+
function Ge(e, t, n) {
|
|
51
51
|
let r = (n ?? "").trim();
|
|
52
|
-
if (r) return
|
|
52
|
+
if (r) return We(e, t).find((e) => e.template === r);
|
|
53
53
|
}
|
|
54
|
-
function
|
|
55
|
-
let t =
|
|
54
|
+
function Ke(e) {
|
|
55
|
+
let t = X(), { t: n } = z(), r = y(() => We(t.draft, u(e)));
|
|
56
56
|
return {
|
|
57
57
|
variables: r,
|
|
58
58
|
options: y(() => r.value.map((e) => ({
|
|
@@ -61,13 +61,13 @@ function Ge(e) {
|
|
|
61
61
|
})))
|
|
62
62
|
};
|
|
63
63
|
}
|
|
64
|
-
function
|
|
64
|
+
function qe(e, t) {
|
|
65
65
|
return e?.values ? e.values.map((e) => ({
|
|
66
66
|
label: e.labelKey ? `${t(`components.automation_nodes.${e.labelKey}`)} (${e.value})` : e.value,
|
|
67
67
|
value: e.value
|
|
68
68
|
})) : [];
|
|
69
69
|
}
|
|
70
|
-
function
|
|
70
|
+
function Je(e, t, n, r, i) {
|
|
71
71
|
if (i.has(t)) return;
|
|
72
72
|
i.add(t);
|
|
73
73
|
let a = e.edges, o = e.nodes;
|
|
@@ -75,7 +75,7 @@ function qe(e, t, n, r, i) {
|
|
|
75
75
|
if (s.target !== t) continue;
|
|
76
76
|
let a = o.find((e) => e.id === s.source);
|
|
77
77
|
if (!a?.type) continue;
|
|
78
|
-
let c =
|
|
78
|
+
let c = Ye(a), l = typeof a.data?.alias == "string" ? a.data.alias : void 0;
|
|
79
79
|
for (let e of c) {
|
|
80
80
|
if (l) {
|
|
81
81
|
let t = {
|
|
@@ -87,10 +87,10 @@ function qe(e, t, n, r, i) {
|
|
|
87
87
|
}
|
|
88
88
|
r.has(e.template) || (r.add(e.template), n.push(e));
|
|
89
89
|
}
|
|
90
|
-
|
|
90
|
+
Je(e, s.source, n, r, i);
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
|
-
function
|
|
93
|
+
function Ye(e) {
|
|
94
94
|
let t = e.data ?? {}, n = [], r = (t, r, i, a, o) => {
|
|
95
95
|
n.push({
|
|
96
96
|
template: t,
|
|
@@ -115,10 +115,10 @@ function Je(e) {
|
|
|
115
115
|
break;
|
|
116
116
|
}
|
|
117
117
|
case "trigger-sensor": {
|
|
118
|
-
let i = String(t.sensorType ?? ""), a = (t.properties ?? []).length > 0 ? t.properties :
|
|
119
|
-
r("{{sensor.value}}",
|
|
118
|
+
let i = String(t.sensorType ?? ""), a = (t.properties ?? []).length > 0 ? t.properties : L(i), o = a.map((e) => R(i, e)).filter((e) => !!e);
|
|
119
|
+
r("{{sensor.value}}", Xe(o), "variable_sensor_value", Ze(i, o)), r("{{sensor.previousValue}}", Xe(o), "variable_sensor_previous_value");
|
|
120
120
|
for (let t of a) {
|
|
121
|
-
let r =
|
|
121
|
+
let r = R(i, t);
|
|
122
122
|
for (let i of r?.keys ?? []) n.push({
|
|
123
123
|
template: `{{sensor.value.${i}}}`,
|
|
124
124
|
valueType: "number",
|
|
@@ -204,11 +204,11 @@ function Je(e) {
|
|
|
204
204
|
}
|
|
205
205
|
return typeof t.repeat == "number" && t.repeat > 1 && (typeof t.repeatConcurrency == "number" && t.repeatConcurrency > 1 || (r("{{repeat.index}}", "number", "variable_repeat_index"), r("{{repeat.iteration}}", "number", "variable_repeat_iteration")), r("{{repeat.total}}", "number", "variable_repeat_total"), r("{{repeat.totalCalls}}", "number", "variable_repeat_total_calls"), r("{{repeat.elapsedMs}}", "number", "variable_repeat_elapsed_ms"), r("{{repeat.elapsedSec}}", "number", "variable_repeat_elapsed_sec")), (e.type ?? "").startsWith("action-") && (r("{{previous.success}}", "boolean", "variable_previous_success", [{ value: "true" }, { value: "false" }]), r("{{previous.result}}", "string", "variable_previous_result")), n;
|
|
206
206
|
}
|
|
207
|
-
function
|
|
207
|
+
function Xe(e) {
|
|
208
208
|
let t = new Set(e.map((e) => e.type));
|
|
209
209
|
return t.size === 1 ? [...t][0] : "string";
|
|
210
210
|
}
|
|
211
|
-
function
|
|
211
|
+
function Ze(e, t) {
|
|
212
212
|
let n = [], r = /* @__PURE__ */ new Set(), i = (e, t) => {
|
|
213
213
|
r.has(e) || (r.add(e), n.push({
|
|
214
214
|
value: e,
|
|
@@ -221,27 +221,27 @@ function Xe(e, t) {
|
|
|
221
221
|
}
|
|
222
222
|
//#endregion
|
|
223
223
|
//#region ~icons/carbon/share
|
|
224
|
-
var
|
|
224
|
+
var Qe = {
|
|
225
225
|
viewBox: "0 0 32 32",
|
|
226
226
|
width: "1.2em",
|
|
227
227
|
height: "1.2em"
|
|
228
228
|
};
|
|
229
|
-
function
|
|
230
|
-
return o(), S("svg",
|
|
229
|
+
function $e(e, t) {
|
|
230
|
+
return o(), S("svg", Qe, [...t[0] ||= [E("path", {
|
|
231
231
|
fill: "currentColor",
|
|
232
232
|
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"
|
|
233
233
|
}, null, -1)]]);
|
|
234
234
|
}
|
|
235
|
-
var
|
|
235
|
+
var et = p({
|
|
236
236
|
name: "carbon-share",
|
|
237
|
-
render:
|
|
238
|
-
}),
|
|
237
|
+
render: $e
|
|
238
|
+
}), tt = {
|
|
239
239
|
viewBox: "0 0 32 32",
|
|
240
240
|
width: "1.2em",
|
|
241
241
|
height: "1.2em"
|
|
242
242
|
};
|
|
243
|
-
function
|
|
244
|
-
return o(), S("svg",
|
|
243
|
+
function nt(e, t) {
|
|
244
|
+
return o(), S("svg", tt, [...t[0] ||= [E("path", {
|
|
245
245
|
fill: "currentColor",
|
|
246
246
|
d: "M12 12h2v12h-2zm6 0h2v12h-2z"
|
|
247
247
|
}, null, -1), E("path", {
|
|
@@ -249,59 +249,59 @@ function tt(e, t) {
|
|
|
249
249
|
d: "M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6Zm4 22V8h16v20Zm4-26h8v2h-8z"
|
|
250
250
|
}, null, -1)]]);
|
|
251
251
|
}
|
|
252
|
-
var
|
|
252
|
+
var rt = p({
|
|
253
253
|
name: "carbon-trash-can",
|
|
254
|
-
render:
|
|
255
|
-
}),
|
|
254
|
+
render: nt
|
|
255
|
+
}), it = {
|
|
256
256
|
name: "ControlButton",
|
|
257
257
|
compatConfig: { MODE: 3 }
|
|
258
|
-
},
|
|
258
|
+
}, at = (e, t) => {
|
|
259
259
|
let n = e.__vccOpts || e;
|
|
260
260
|
for (let [e, r] of t) n[e] = r;
|
|
261
261
|
return n;
|
|
262
|
-
},
|
|
262
|
+
}, ot = {
|
|
263
263
|
type: "button",
|
|
264
264
|
class: "vue-flow__controls-button"
|
|
265
265
|
};
|
|
266
|
-
function
|
|
267
|
-
return o(), S("button",
|
|
266
|
+
function st(e, t, n, r, i, a) {
|
|
267
|
+
return o(), S("button", ot, [c(e.$slots, "default")]);
|
|
268
268
|
}
|
|
269
|
-
var
|
|
269
|
+
var ct = /* @__PURE__ */ at(it, [["render", st]]), lt = {
|
|
270
270
|
xmlns: "http://www.w3.org/2000/svg",
|
|
271
271
|
viewBox: "0 0 32 32"
|
|
272
|
-
},
|
|
273
|
-
function
|
|
274
|
-
return o(), S("svg",
|
|
272
|
+
}, ut = [/* @__PURE__ */ E("path", { d: "M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z" }, null, -1)];
|
|
273
|
+
function dt(e, t) {
|
|
274
|
+
return o(), S("svg", lt, ut);
|
|
275
275
|
}
|
|
276
|
-
var
|
|
276
|
+
var ft = { render: dt }, pt = {
|
|
277
277
|
xmlns: "http://www.w3.org/2000/svg",
|
|
278
278
|
viewBox: "0 0 32 5"
|
|
279
|
-
},
|
|
280
|
-
function
|
|
281
|
-
return o(), S("svg",
|
|
279
|
+
}, mt = [/* @__PURE__ */ E("path", { d: "M0 0h32v4.2H0z" }, null, -1)];
|
|
280
|
+
function ht(e, t) {
|
|
281
|
+
return o(), S("svg", pt, mt);
|
|
282
282
|
}
|
|
283
|
-
var
|
|
283
|
+
var gt = { render: ht }, _t = {
|
|
284
284
|
xmlns: "http://www.w3.org/2000/svg",
|
|
285
285
|
viewBox: "0 0 32 30"
|
|
286
|
-
},
|
|
287
|
-
function
|
|
288
|
-
return o(), S("svg",
|
|
286
|
+
}, vt = [/* @__PURE__ */ E("path", { d: "M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0 0 27.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94a.919.919 0 0 1-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z" }, null, -1)];
|
|
287
|
+
function yt(e, t) {
|
|
288
|
+
return o(), S("svg", _t, vt);
|
|
289
289
|
}
|
|
290
|
-
var
|
|
290
|
+
var bt = { render: yt }, xt = {
|
|
291
291
|
xmlns: "http://www.w3.org/2000/svg",
|
|
292
292
|
viewBox: "0 0 25 32"
|
|
293
|
-
},
|
|
294
|
-
function
|
|
295
|
-
return o(), S("svg",
|
|
293
|
+
}, St = [/* @__PURE__ */ E("path", { d: "M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z" }, null, -1)];
|
|
294
|
+
function Ct(e, t) {
|
|
295
|
+
return o(), S("svg", xt, St);
|
|
296
296
|
}
|
|
297
|
-
var
|
|
297
|
+
var wt = { render: Ct }, Tt = {
|
|
298
298
|
xmlns: "http://www.w3.org/2000/svg",
|
|
299
299
|
viewBox: "0 0 25 32"
|
|
300
|
-
},
|
|
301
|
-
function
|
|
302
|
-
return o(), S("svg",
|
|
300
|
+
}, Et = [/* @__PURE__ */ E("path", { d: "M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047z" }, null, -1)];
|
|
301
|
+
function Dt(e, t) {
|
|
302
|
+
return o(), S("svg", Tt, Et);
|
|
303
303
|
}
|
|
304
|
-
var
|
|
304
|
+
var Ot = { render: Dt }, kt = /* @__PURE__ */ A({
|
|
305
305
|
name: "Controls",
|
|
306
306
|
compatConfig: { MODE: 3 },
|
|
307
307
|
props: {
|
|
@@ -318,7 +318,7 @@ var Dt = { render: Et }, Ot = /* @__PURE__ */ A({
|
|
|
318
318
|
default: !0
|
|
319
319
|
},
|
|
320
320
|
fitViewParams: {},
|
|
321
|
-
position: { default: () =>
|
|
321
|
+
position: { default: () => Re.BottomLeft }
|
|
322
322
|
},
|
|
323
323
|
emits: [
|
|
324
324
|
"zoomIn",
|
|
@@ -327,7 +327,7 @@ var Dt = { render: Et }, Ot = /* @__PURE__ */ A({
|
|
|
327
327
|
"interactionChange"
|
|
328
328
|
],
|
|
329
329
|
setup(e, { emit: t }) {
|
|
330
|
-
let { nodesDraggable: n, nodesConnectable: r, elementsSelectable: a, setInteractive: s, zoomIn: l, zoomOut: u, fitView: d, viewport: p, minZoom: g, maxZoom: _ } =
|
|
330
|
+
let { nodesDraggable: n, nodesConnectable: r, elementsSelectable: a, setInteractive: s, zoomIn: l, zoomOut: u, fitView: d, viewport: p, minZoom: g, maxZoom: _ } = Le(), y = i(() => n.value || r.value || a.value), x = i(() => p.value.zoom <= g.value), C = i(() => p.value.zoom >= _.value);
|
|
331
331
|
function T() {
|
|
332
332
|
l(), t("zoomIn");
|
|
333
333
|
}
|
|
@@ -346,34 +346,34 @@ var Dt = { render: Et }, Ot = /* @__PURE__ */ A({
|
|
|
346
346
|
}, {
|
|
347
347
|
default: b(() => [
|
|
348
348
|
c(e.$slots, "top"),
|
|
349
|
-
e.showZoom ? (o(), S(w, { key: 0 }, [c(e.$slots, "control-zoom-in", {}, () => [M(
|
|
349
|
+
e.showZoom ? (o(), S(w, { key: 0 }, [c(e.$slots, "control-zoom-in", {}, () => [M(ct, {
|
|
350
350
|
class: "vue-flow__controls-zoomin",
|
|
351
351
|
disabled: C.value,
|
|
352
352
|
onClick: T
|
|
353
353
|
}, {
|
|
354
|
-
default: b(() => [c(e.$slots, "icon-zoom-in", {}, () => [(o(), m(f(v(
|
|
354
|
+
default: b(() => [c(e.$slots, "icon-zoom-in", {}, () => [(o(), m(f(v(ft))))])]),
|
|
355
355
|
_: 3
|
|
356
|
-
}, 8, ["disabled"])]), c(e.$slots, "control-zoom-out", {}, () => [M(
|
|
356
|
+
}, 8, ["disabled"])]), c(e.$slots, "control-zoom-out", {}, () => [M(ct, {
|
|
357
357
|
class: "vue-flow__controls-zoomout",
|
|
358
358
|
disabled: x.value,
|
|
359
359
|
onClick: E
|
|
360
360
|
}, {
|
|
361
|
-
default: b(() => [c(e.$slots, "icon-zoom-out", {}, () => [(o(), m(f(v(
|
|
361
|
+
default: b(() => [c(e.$slots, "icon-zoom-out", {}, () => [(o(), m(f(v(gt))))])]),
|
|
362
362
|
_: 3
|
|
363
363
|
}, 8, ["disabled"])])], 64)) : h("", !0),
|
|
364
|
-
e.showFitView ? c(e.$slots, "control-fit-view", { key: 1 }, () => [M(
|
|
364
|
+
e.showFitView ? c(e.$slots, "control-fit-view", { key: 1 }, () => [M(ct, {
|
|
365
365
|
class: "vue-flow__controls-fitview",
|
|
366
366
|
onClick: D
|
|
367
367
|
}, {
|
|
368
|
-
default: b(() => [c(e.$slots, "icon-fit-view", {}, () => [(o(), m(f(v(
|
|
368
|
+
default: b(() => [c(e.$slots, "icon-fit-view", {}, () => [(o(), m(f(v(bt))))])]),
|
|
369
369
|
_: 3
|
|
370
370
|
})]) : h("", !0),
|
|
371
|
-
e.showInteractive ? c(e.$slots, "control-interactive", { key: 2 }, () => [e.showInteractive ? (o(), m(
|
|
371
|
+
e.showInteractive ? c(e.$slots, "control-interactive", { key: 2 }, () => [e.showInteractive ? (o(), m(ct, {
|
|
372
372
|
key: 0,
|
|
373
373
|
class: "vue-flow__controls-interactive",
|
|
374
374
|
onClick: O
|
|
375
375
|
}, {
|
|
376
|
-
default: b(() => [y.value ? c(e.$slots, "icon-unlock", { key: 0 }, () => [(o(), m(f(v(
|
|
376
|
+
default: b(() => [y.value ? c(e.$slots, "icon-unlock", { key: 0 }, () => [(o(), m(f(v(Ot))))]) : h("", !0), y.value ? h("", !0) : c(e.$slots, "icon-lock", { key: 1 }, () => [(o(), m(f(v(wt))))])]),
|
|
377
377
|
_: 3
|
|
378
378
|
})) : h("", !0)]) : h("", !0),
|
|
379
379
|
c(e.$slots, "default")
|
|
@@ -384,12 +384,12 @@ var Dt = { render: Et }, Ot = /* @__PURE__ */ A({
|
|
|
384
384
|
});
|
|
385
385
|
//#endregion
|
|
386
386
|
//#region src/components/CuiAutomation/caseHandle.ts
|
|
387
|
-
function
|
|
387
|
+
function At(e) {
|
|
388
388
|
return `case-${encodeURIComponent(e)}`;
|
|
389
389
|
}
|
|
390
390
|
//#endregion
|
|
391
391
|
//#region src/components/CuiAutomation/edges/DeletableEdge.vue?vue&type=script&setup=true&lang.ts
|
|
392
|
-
var
|
|
392
|
+
var jt = ["id", "d"], Mt = 24, Nt = /* @__PURE__ */ A({
|
|
393
393
|
__name: "DeletableEdge",
|
|
394
394
|
props: {
|
|
395
395
|
id: {},
|
|
@@ -428,7 +428,7 @@ var At = ["id", "d"], jt = 24, Mt = /* @__PURE__ */ A({
|
|
|
428
428
|
targetY: {}
|
|
429
429
|
},
|
|
430
430
|
setup(e) {
|
|
431
|
-
let n = e, { removeEdges: r } =
|
|
431
|
+
let n = e, { removeEdges: r } = Le(), i = y(() => Ne({
|
|
432
432
|
sourceX: n.sourceX,
|
|
433
433
|
sourceY: n.sourceY,
|
|
434
434
|
sourcePosition: n.sourcePosition,
|
|
@@ -445,25 +445,25 @@ var At = ["id", "d"], jt = 24, Mt = /* @__PURE__ */ A({
|
|
|
445
445
|
strokeWidth: 2,
|
|
446
446
|
fill: "none"
|
|
447
447
|
};
|
|
448
|
-
let t = e / 2, n =
|
|
448
|
+
let t = e / 2, n = Mt / 2;
|
|
449
449
|
return {
|
|
450
450
|
stroke: "var(--text-muted-color)",
|
|
451
451
|
strokeWidth: 2,
|
|
452
452
|
fill: "none",
|
|
453
|
-
strokeDasharray: `${Math.max(0, t - n)} ${
|
|
453
|
+
strokeDasharray: `${Math.max(0, t - n)} ${Mt} ${Math.max(0, e - t - n)}`
|
|
454
454
|
};
|
|
455
455
|
});
|
|
456
456
|
function d() {
|
|
457
457
|
r([n.id]);
|
|
458
458
|
}
|
|
459
459
|
return (n, r) => {
|
|
460
|
-
let i =
|
|
460
|
+
let i = H;
|
|
461
461
|
return o(), S(w, null, [E("path", {
|
|
462
462
|
id: e.id,
|
|
463
463
|
d: v(a),
|
|
464
464
|
style: C(v(u)),
|
|
465
465
|
class: "vue-flow__edge-path"
|
|
466
|
-
}, null, 12,
|
|
466
|
+
}, null, 12, jt), M(v(q), null, {
|
|
467
467
|
default: b(() => [E("div", {
|
|
468
468
|
class: "automation-edge-button nodrag nopan",
|
|
469
469
|
style: C({
|
|
@@ -479,7 +479,7 @@ var At = ["id", "d"], jt = 24, Mt = /* @__PURE__ */ A({
|
|
|
479
479
|
})], 64);
|
|
480
480
|
};
|
|
481
481
|
}
|
|
482
|
-
}),
|
|
482
|
+
}), Pt = {
|
|
483
483
|
"trigger-detection": ["cameraId"],
|
|
484
484
|
"trigger-sensor": ["sensorId"],
|
|
485
485
|
"trigger-schedule": ["cron"],
|
|
@@ -499,7 +499,7 @@ var At = ["id", "d"], jt = 24, Mt = /* @__PURE__ */ A({
|
|
|
499
499
|
"action-plugin": ["pluginName", "method"],
|
|
500
500
|
"action-camera-control": ["cameraId"],
|
|
501
501
|
"action-image-input": ["source"]
|
|
502
|
-
},
|
|
502
|
+
}, Ft = /* @__PURE__ */ new Set([
|
|
503
503
|
"http",
|
|
504
504
|
"mqtt",
|
|
505
505
|
"webhook",
|
|
@@ -511,14 +511,14 @@ var At = ["id", "d"], jt = 24, Mt = /* @__PURE__ */ A({
|
|
|
511
511
|
"camera",
|
|
512
512
|
"geo",
|
|
513
513
|
"event"
|
|
514
|
-
]),
|
|
514
|
+
]), It = /* @__PURE__ */ new Set([
|
|
515
515
|
"time.now",
|
|
516
516
|
"flow.startMs",
|
|
517
517
|
"snapshot",
|
|
518
518
|
"snapshot.base64",
|
|
519
519
|
"output"
|
|
520
520
|
]);
|
|
521
|
-
function
|
|
521
|
+
function Lt(e) {
|
|
522
522
|
if (!e) return [];
|
|
523
523
|
let t = [], n = e.nodes, r = e.edges, i = n.filter((e) => e.type?.startsWith("trigger-"));
|
|
524
524
|
i.length === 0 && t.push({ messageKey: "validation_no_trigger" });
|
|
@@ -534,7 +534,7 @@ function It(e) {
|
|
|
534
534
|
nodeId: r.id,
|
|
535
535
|
messageKey: "validation_unreachable"
|
|
536
536
|
});
|
|
537
|
-
for (let e of
|
|
537
|
+
for (let e of Pt[r.type] ?? []) {
|
|
538
538
|
let i = n[e];
|
|
539
539
|
if (i == null || i === "") {
|
|
540
540
|
t.push({
|
|
@@ -553,19 +553,19 @@ function It(e) {
|
|
|
553
553
|
}), r.type === "action-variable" && typeof n.variableName == "string" && n.variableName && !/^\w+(?:\.\w+)*$/.test(n.variableName) && t.push({
|
|
554
554
|
nodeId: r.id,
|
|
555
555
|
messageKey: "validation_invalid_variable_name"
|
|
556
|
-
}), t.push(...
|
|
556
|
+
}), t.push(...Rt(e, r));
|
|
557
557
|
}
|
|
558
558
|
return t;
|
|
559
559
|
}
|
|
560
|
-
function
|
|
561
|
-
let n = [], r = new Set(
|
|
562
|
-
|
|
560
|
+
function Rt(e, t) {
|
|
561
|
+
let n = [], r = new Set(We(e, t.id).map((e) => e.template.slice(2, -2))), i = new Set([...r].map((e) => e.split(".")[0])), a = zt(e), o = [];
|
|
562
|
+
Bt(t.data ?? {}, o);
|
|
563
563
|
let s = /* @__PURE__ */ new Set();
|
|
564
564
|
for (let e of o) for (let o of e.matchAll(/\{\{(\w+(?:\.\w+)*)\}\}/g)) {
|
|
565
565
|
let e = o[1];
|
|
566
|
-
if (r.has(e) ||
|
|
566
|
+
if (r.has(e) || It.has(e) || a.has(e) || s.has(e)) continue;
|
|
567
567
|
let c = e.split(".")[0];
|
|
568
|
-
|
|
568
|
+
Ft.has(c) && i.has(c) || a.has(c) || (s.add(e), n.push({
|
|
569
569
|
nodeId: t.id,
|
|
570
570
|
messageKey: "validation_unknown_variable",
|
|
571
571
|
params: { name: e }
|
|
@@ -573,7 +573,7 @@ function Lt(e, t) {
|
|
|
573
573
|
}
|
|
574
574
|
return n;
|
|
575
575
|
}
|
|
576
|
-
function
|
|
576
|
+
function zt(e) {
|
|
577
577
|
let t = /* @__PURE__ */ new Set();
|
|
578
578
|
for (let n of e.nodes) {
|
|
579
579
|
let e = n.data ?? {};
|
|
@@ -581,19 +581,19 @@ function Rt(e) {
|
|
|
581
581
|
}
|
|
582
582
|
return t;
|
|
583
583
|
}
|
|
584
|
-
function
|
|
584
|
+
function Bt(e, t) {
|
|
585
585
|
if (typeof e == "string") {
|
|
586
586
|
e.includes("{{") && t.push(e);
|
|
587
587
|
return;
|
|
588
588
|
}
|
|
589
589
|
if (Array.isArray(e)) {
|
|
590
|
-
for (let n of e)
|
|
590
|
+
for (let n of e) Bt(n, t);
|
|
591
591
|
return;
|
|
592
592
|
}
|
|
593
|
-
if (e && typeof e == "object") for (let n of Object.values(e))
|
|
593
|
+
if (e && typeof e == "object") for (let n of Object.values(e)) Bt(n, t);
|
|
594
594
|
}
|
|
595
|
-
function
|
|
596
|
-
let t =
|
|
595
|
+
function Vt(e) {
|
|
596
|
+
let t = X(), { t: n } = z();
|
|
597
597
|
return y(() => {
|
|
598
598
|
let r = t.validationIssues.filter((t) => t.nodeId === u(e));
|
|
599
599
|
if (r.length !== 0) return r.map((e) => n(`components.automation_nodes.${e.messageKey}`, e.params ?? {})).join("\n");
|
|
@@ -601,27 +601,27 @@ function Bt(e) {
|
|
|
601
601
|
}
|
|
602
602
|
//#endregion
|
|
603
603
|
//#region src/components/CuiAutomation/utils.ts
|
|
604
|
-
var
|
|
604
|
+
var Ht = [
|
|
605
605
|
"cameraId",
|
|
606
606
|
"sensorId",
|
|
607
607
|
"sensorType"
|
|
608
608
|
];
|
|
609
|
-
function
|
|
609
|
+
function Ut(e, t) {
|
|
610
610
|
if (!e || !t) return null;
|
|
611
611
|
let n = {}, r = e, i = t;
|
|
612
|
-
for (let e of
|
|
612
|
+
for (let e of Ht) r[e] && e in i && !i[e] && (n[e] = r[e]);
|
|
613
613
|
return Object.keys(n).length > 0 ? n : null;
|
|
614
614
|
}
|
|
615
|
-
function
|
|
615
|
+
function Wt(e) {
|
|
616
616
|
return e.type === "trigger-webhook" && !e.webhookId ? {
|
|
617
617
|
...e,
|
|
618
|
-
webhookId:
|
|
618
|
+
webhookId: me()
|
|
619
619
|
} : e.type === "trigger-geofence" && !e.geofenceId ? {
|
|
620
620
|
...e,
|
|
621
|
-
geofenceId:
|
|
621
|
+
geofenceId: me()
|
|
622
622
|
} : e;
|
|
623
623
|
}
|
|
624
|
-
function
|
|
624
|
+
function Gt(e, t, n) {
|
|
625
625
|
if (!e) return;
|
|
626
626
|
let r = (e) => e ? t?.(e) ?? e : void 0, i = (e, t) => e ? n?.(e) ?? t ?? e : void 0;
|
|
627
627
|
switch (e.type) {
|
|
@@ -653,27 +653,27 @@ function Wt(e, t, n) {
|
|
|
653
653
|
}
|
|
654
654
|
//#endregion
|
|
655
655
|
//#region ~icons/mdi/exclamation-thick
|
|
656
|
-
var
|
|
656
|
+
var Kt = {
|
|
657
657
|
viewBox: "0 0 24 24",
|
|
658
658
|
width: "1.2em",
|
|
659
659
|
height: "1.2em"
|
|
660
660
|
};
|
|
661
|
-
function
|
|
662
|
-
return o(), S("svg",
|
|
661
|
+
function qt(e, t) {
|
|
662
|
+
return o(), S("svg", Kt, [...t[0] ||= [E("path", {
|
|
663
663
|
fill: "currentColor",
|
|
664
664
|
d: "M10 3h4v11h-4zm0 18v-4h4v4z"
|
|
665
665
|
}, null, -1)]]);
|
|
666
666
|
}
|
|
667
|
-
var
|
|
667
|
+
var Jt = p({
|
|
668
668
|
name: "mdi-exclamation-thick",
|
|
669
|
-
render:
|
|
670
|
-
}),
|
|
669
|
+
render: qt
|
|
670
|
+
}), Yt = { maxInputs: Infinity }, Xt = {
|
|
671
671
|
key: 0,
|
|
672
672
|
class: "absolute -top-2 -right-2 z-10 flex items-center justify-center w-5 h-5 rounded-full bg-amber-500 text-white"
|
|
673
|
-
},
|
|
673
|
+
}, Zt = { class: "flex items-center gap-2 px-3 py-2.5" }, Qt = { class: "flex-1 min-w-0" }, $t = { class: "text-xs font-semibold truncate text-color" }, en = {
|
|
674
674
|
key: 0,
|
|
675
675
|
class: "text-[10px] text-muted truncate mt-0.5"
|
|
676
|
-
},
|
|
676
|
+
}, Z = /*#__PURE__*/ _e(/* @__PURE__ */ A({
|
|
677
677
|
__name: "BaseNode",
|
|
678
678
|
props: /*@__PURE__*/ n({
|
|
679
679
|
icon: {},
|
|
@@ -685,43 +685,43 @@ var qt = p({
|
|
|
685
685
|
showOutput: { type: Boolean },
|
|
686
686
|
maxInputs: {},
|
|
687
687
|
warning: {}
|
|
688
|
-
},
|
|
688
|
+
}, Yt),
|
|
689
689
|
setup(e) {
|
|
690
690
|
let t = {
|
|
691
691
|
backgroundColor: "var(--text-muted-color)",
|
|
692
692
|
borderColor: "var(--card-background)"
|
|
693
693
|
};
|
|
694
694
|
return (n, r) => {
|
|
695
|
-
let i =
|
|
695
|
+
let i = Jt, a = N;
|
|
696
696
|
return o(), S("div", {
|
|
697
697
|
class: d(["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 }]),
|
|
698
698
|
style: C({ borderColor: e.color })
|
|
699
699
|
}, [
|
|
700
|
-
e.warning ? D((o(), S("div",
|
|
700
|
+
e.warning ? D((o(), S("div", Xt, [M(i, { class: "w-3.5 h-3.5" })])), [[
|
|
701
701
|
a,
|
|
702
702
|
e.warning,
|
|
703
703
|
void 0,
|
|
704
704
|
{ top: !0 }
|
|
705
705
|
]]) : h("", !0),
|
|
706
|
-
E("div",
|
|
706
|
+
E("div", Zt, [E("div", {
|
|
707
707
|
class: "flex items-center justify-center w-8 h-8 rounded-md shrink-0",
|
|
708
708
|
style: C({
|
|
709
709
|
backgroundColor: `${e.color}20`,
|
|
710
710
|
color: e.color
|
|
711
711
|
})
|
|
712
|
-
}, [(o(), m(f(e.icon), { class: "w-4.5 h-4.5" }))], 4), E("div",
|
|
713
|
-
e.showInput ? (o(), m(v(
|
|
712
|
+
}, [(o(), m(f(e.icon), { class: "w-4.5 h-4.5" }))], 4), E("div", Qt, [E("div", $t, s(e.label), 1), e.subtitle ? (o(), S("div", en, s(e.subtitle), 1)) : h("", !0)])]),
|
|
713
|
+
e.showInput ? (o(), m(v(Y), {
|
|
714
714
|
key: 1,
|
|
715
715
|
type: "target",
|
|
716
|
-
position: v(
|
|
716
|
+
position: v(J).Top,
|
|
717
717
|
connectable: e.maxInputs,
|
|
718
718
|
class: "!w-5 !h-5 !border-2",
|
|
719
719
|
style: t
|
|
720
720
|
}, null, 8, ["position", "connectable"])) : h("", !0),
|
|
721
|
-
c(n.$slots, "handles", {}, () => [e.showOutput ? (o(), m(v(
|
|
721
|
+
c(n.$slots, "handles", {}, () => [e.showOutput ? (o(), m(v(Y), {
|
|
722
722
|
key: 0,
|
|
723
723
|
type: "source",
|
|
724
|
-
position: v(
|
|
724
|
+
position: v(J).Bottom,
|
|
725
725
|
class: "!w-5 !h-5 !border-2",
|
|
726
726
|
style: t
|
|
727
727
|
}, null, 8, ["position"])) : h("", !0)], !0)
|
|
@@ -757,8 +757,8 @@ var qt = p({
|
|
|
757
757
|
events: {}
|
|
758
758
|
},
|
|
759
759
|
setup(e) {
|
|
760
|
-
let t = e, { t: n } =
|
|
761
|
-
let e = t.data, n = e.alias, r =
|
|
760
|
+
let t = e, { t: n } = z(), r = X(), { lastOutput: i } = be(r), c = Vt(() => t.id), l = y(() => G(t.type)), u = y(() => l.value ? n(l.value.labelKey) : t.type), { cameraName: f } = Oe(), { sensors: p } = B(), g = y(() => {
|
|
761
|
+
let e = t.data, n = e.alias, r = Gt(t.data, f, x);
|
|
762
762
|
return e.type === "action-plugin" && e.repeat && e.repeat > 1 && (r = r ? `${r} (${e.repeat}x)` : `${e.repeat}x`), n && r ? `[${n}] ${r}` : n ? `[${n}]` : r;
|
|
763
763
|
}), _ = y(() => t.type !== "action-output" || !i.value ? [] : Object.entries(i.value));
|
|
764
764
|
function x(e) {
|
|
@@ -766,8 +766,8 @@ var qt = p({
|
|
|
766
766
|
return t ? t.displayName.value || t.name : void 0;
|
|
767
767
|
}
|
|
768
768
|
return (t, n) => {
|
|
769
|
-
let r =
|
|
770
|
-
return o(), S("div", null, [M(
|
|
769
|
+
let r = I;
|
|
770
|
+
return o(), S("div", null, [M(Z, {
|
|
771
771
|
icon: v(l).icon,
|
|
772
772
|
label: v(u),
|
|
773
773
|
subtitle: v(g),
|
|
@@ -826,12 +826,12 @@ var qt = p({
|
|
|
826
826
|
events: {}
|
|
827
827
|
},
|
|
828
828
|
setup(e) {
|
|
829
|
-
let t = e, { t: n } =
|
|
829
|
+
let t = e, { t: n } = z(), r = { borderColor: "var(--card-background)" }, i = Vt(() => t.id), a = y(() => G(t.type)), s = y(() => a.value ? n(a.value.labelKey) : t.type), { cameraName: c } = Oe(), { sensors: l } = B(), u = y(() => Gt(t.data, c, d));
|
|
830
830
|
function d(e) {
|
|
831
831
|
let t = l.value.find((t) => t.id === e);
|
|
832
832
|
return t ? t.displayName.value || t.name : void 0;
|
|
833
833
|
}
|
|
834
|
-
return (t, n) => (o(), m(
|
|
834
|
+
return (t, n) => (o(), m(Z, {
|
|
835
835
|
icon: v(a).icon,
|
|
836
836
|
label: v(s),
|
|
837
837
|
subtitle: v(u),
|
|
@@ -842,9 +842,9 @@ var qt = p({
|
|
|
842
842
|
"show-output": !1,
|
|
843
843
|
"max-inputs": 1
|
|
844
844
|
}, {
|
|
845
|
-
handles: b(() => [M(v(
|
|
845
|
+
handles: b(() => [M(v(Y), {
|
|
846
846
|
type: "source",
|
|
847
|
-
position: v(
|
|
847
|
+
position: v(J).Bottom,
|
|
848
848
|
id: "true",
|
|
849
849
|
class: "!w-5 !h-5 !border-2",
|
|
850
850
|
style: C({
|
|
@@ -852,9 +852,9 @@ var qt = p({
|
|
|
852
852
|
backgroundColor: "var(--text-success-color)",
|
|
853
853
|
left: "30%"
|
|
854
854
|
})
|
|
855
|
-
}, null, 8, ["position", "style"]), M(v(
|
|
855
|
+
}, null, 8, ["position", "style"]), M(v(Y), {
|
|
856
856
|
type: "source",
|
|
857
|
-
position: v(
|
|
857
|
+
position: v(J).Bottom,
|
|
858
858
|
id: "false",
|
|
859
859
|
class: "!w-5 !h-5 !border-2",
|
|
860
860
|
style: C({
|
|
@@ -902,11 +902,11 @@ var qt = p({
|
|
|
902
902
|
events: {}
|
|
903
903
|
},
|
|
904
904
|
setup(e) {
|
|
905
|
-
let t = e, { t: n } =
|
|
905
|
+
let t = e, { t: n } = z(), r = {
|
|
906
906
|
backgroundColor: "#f59e0b",
|
|
907
907
|
borderColor: "var(--card-background)"
|
|
908
|
-
}, i =
|
|
909
|
-
return (t, n) => (o(), m(
|
|
908
|
+
}, i = Vt(() => t.id), c = y(() => G(t.type)), l = y(() => c.value ? n(c.value.labelKey) : t.type), u = y(() => t.data.type === "condition-switch" && Array.isArray(t.data.cases) ? t.data.cases : []), d = y(() => t.data.type === "condition-switch" && t.data.variable ? t.data.variable : void 0);
|
|
909
|
+
return (t, n) => (o(), m(Z, {
|
|
910
910
|
icon: v(c).icon,
|
|
911
911
|
label: v(l),
|
|
912
912
|
subtitle: v(d),
|
|
@@ -917,11 +917,11 @@ var qt = p({
|
|
|
917
917
|
"show-output": !1,
|
|
918
918
|
"max-inputs": 1
|
|
919
919
|
}, {
|
|
920
|
-
handles: b(() => [(o(!0), S(w, null, a(v(u), (e, t) => (o(), m(v(
|
|
921
|
-
id: v(
|
|
922
|
-
key: v(
|
|
920
|
+
handles: b(() => [(o(!0), S(w, null, a(v(u), (e, t) => (o(), m(v(Y), {
|
|
921
|
+
id: v(At)(e),
|
|
922
|
+
key: v(At)(e),
|
|
923
923
|
type: "source",
|
|
924
|
-
position: v(
|
|
924
|
+
position: v(J).Bottom,
|
|
925
925
|
class: "!w-5 !h-5 !border-2",
|
|
926
926
|
style: C({
|
|
927
927
|
...r,
|
|
@@ -974,12 +974,12 @@ var qt = p({
|
|
|
974
974
|
events: {}
|
|
975
975
|
},
|
|
976
976
|
setup(e) {
|
|
977
|
-
let t = e, { t: n } =
|
|
977
|
+
let t = e, { t: n } = z(), { cameraName: r } = Oe(), { sensors: i } = B(), a = Vt(() => t.id), s = y(() => G(t.type)), c = y(() => s.value ? n(s.value.labelKey) : t.type), l = y(() => Gt(t.data, r, u));
|
|
978
978
|
function u(e) {
|
|
979
979
|
let t = i.value.find((t) => t.id === e);
|
|
980
980
|
return t ? t.displayName.value || t.name : void 0;
|
|
981
981
|
}
|
|
982
|
-
return (t, n) => (o(), m(
|
|
982
|
+
return (t, n) => (o(), m(Z, {
|
|
983
983
|
icon: v(s).icon,
|
|
984
984
|
label: v(c),
|
|
985
985
|
subtitle: v(l),
|
|
@@ -1043,7 +1043,7 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1043
1043
|
},
|
|
1044
1044
|
emits: ["node-select", "change"],
|
|
1045
1045
|
setup(e, { expose: n, emit: i }) {
|
|
1046
|
-
let a = e, c = i, { t: l } =
|
|
1046
|
+
let a = e, c = i, { t: l } = z(), { smBreakpoint: u } = oe(), { screenToFlowCoordinate: f, getViewport: m, dimensions: h } = Le(), y = cn(), C = {
|
|
1047
1047
|
"trigger-detection": p($),
|
|
1048
1048
|
"trigger-sensor": p($),
|
|
1049
1049
|
"trigger-schedule": p($),
|
|
@@ -1069,7 +1069,7 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1069
1069
|
"action-camera-control": p(Q),
|
|
1070
1070
|
"action-image-input": p(Q),
|
|
1071
1071
|
"action-output": p(Q)
|
|
1072
|
-
}, w = { default: p(
|
|
1072
|
+
}, w = { default: p(Nt) }, T = j([...a.flow.nodes]), D = j([...a.flow.edges]);
|
|
1073
1073
|
function O() {
|
|
1074
1074
|
y.push(T.value, D.value);
|
|
1075
1075
|
}
|
|
@@ -1087,12 +1087,12 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1087
1087
|
function te() {
|
|
1088
1088
|
c("node-select", null);
|
|
1089
1089
|
}
|
|
1090
|
-
function
|
|
1090
|
+
function P(e) {
|
|
1091
1091
|
let t = T.value.find((t) => t.id === e.source), n = T.value.find((t) => t.id === e.target);
|
|
1092
1092
|
return !(!t || !n || e.source === e.target || n.type?.startsWith("trigger-"));
|
|
1093
1093
|
}
|
|
1094
|
-
function
|
|
1095
|
-
if (!
|
|
1094
|
+
function ne(e) {
|
|
1095
|
+
if (!P(e)) return;
|
|
1096
1096
|
O();
|
|
1097
1097
|
let t = e.targetHandle ?? void 0, n = T.value.find((t) => t.id === e.target);
|
|
1098
1098
|
if (n?.type?.startsWith("condition-")) {
|
|
@@ -1107,76 +1107,76 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1107
1107
|
targetHandle: t
|
|
1108
1108
|
};
|
|
1109
1109
|
D.value.push(r);
|
|
1110
|
-
let i =
|
|
1110
|
+
let i = Ut(T.value.find((t) => t.id === e.source)?.data, n?.data);
|
|
1111
1111
|
i && n?.data && Object.assign(n.data, i), c("change");
|
|
1112
1112
|
}
|
|
1113
|
-
function
|
|
1113
|
+
function re(e) {
|
|
1114
1114
|
e.some((e) => e.type === "remove") && (O(), c("node-select", null), c("change"));
|
|
1115
1115
|
}
|
|
1116
|
-
function
|
|
1116
|
+
function ie(e) {
|
|
1117
1117
|
let t = e.dataTransfer?.getData("application/automationnode");
|
|
1118
1118
|
if (!t) return;
|
|
1119
|
-
let n =
|
|
1119
|
+
let n = G(t);
|
|
1120
1120
|
if (!n) return;
|
|
1121
1121
|
O();
|
|
1122
1122
|
let r = f({
|
|
1123
1123
|
x: e.clientX,
|
|
1124
1124
|
y: e.clientY
|
|
1125
1125
|
}), i = {
|
|
1126
|
-
id:
|
|
1126
|
+
id: fe(12),
|
|
1127
1127
|
type: t,
|
|
1128
1128
|
position: r,
|
|
1129
|
-
data:
|
|
1129
|
+
data: Wt({ ...n.defaults })
|
|
1130
1130
|
};
|
|
1131
1131
|
T.value = [...T.value, i], c("change");
|
|
1132
1132
|
}
|
|
1133
|
-
function
|
|
1134
|
-
let t =
|
|
1133
|
+
function ae(e) {
|
|
1134
|
+
let t = G(e);
|
|
1135
1135
|
if (!t) return;
|
|
1136
1136
|
O();
|
|
1137
1137
|
let { x: n, y: r, zoom: i } = m(), { width: a, height: o } = h.value, s = (-n + a / 2) / i, l = (-r + o / 2) / i, u = () => (Math.random() - .5) * 80, d = {
|
|
1138
|
-
id:
|
|
1138
|
+
id: fe(12),
|
|
1139
1139
|
type: e,
|
|
1140
1140
|
position: {
|
|
1141
1141
|
x: s + u(),
|
|
1142
1142
|
y: l + u()
|
|
1143
1143
|
},
|
|
1144
|
-
data:
|
|
1144
|
+
data: Wt({ ...t.defaults })
|
|
1145
1145
|
};
|
|
1146
1146
|
return T.value = [...T.value, d], c("change"), d;
|
|
1147
1147
|
}
|
|
1148
1148
|
function se(e) {
|
|
1149
1149
|
O(), T.value = T.value.filter((t) => t.id !== e), D.value = D.value.filter((t) => t.source !== e && t.target !== e), c("change");
|
|
1150
1150
|
}
|
|
1151
|
-
function
|
|
1151
|
+
function ce() {
|
|
1152
1152
|
O(), T.value = [], D.value = [], c("change");
|
|
1153
1153
|
}
|
|
1154
|
-
function
|
|
1154
|
+
function le() {
|
|
1155
1155
|
return [...T.value];
|
|
1156
1156
|
}
|
|
1157
|
-
function
|
|
1157
|
+
function ue() {
|
|
1158
1158
|
return [...D.value];
|
|
1159
1159
|
}
|
|
1160
|
-
function
|
|
1160
|
+
function de(e, t) {
|
|
1161
1161
|
let n = T.value.find((t) => t.id === e);
|
|
1162
1162
|
if (n && (n.data = t, n.type === "condition-switch" && Array.isArray(t.cases))) {
|
|
1163
|
-
let n = new Set(t.cases.map(
|
|
1163
|
+
let n = new Set(t.cases.map(At));
|
|
1164
1164
|
D.value = D.value.filter((t) => t.source !== e || !t.sourceHandle?.startsWith("case-") || n.has(t.sourceHandle));
|
|
1165
1165
|
}
|
|
1166
1166
|
}
|
|
1167
|
-
function
|
|
1167
|
+
function pe(e) {
|
|
1168
1168
|
let t = e.metaKey || e.ctrlKey;
|
|
1169
1169
|
t && e.key === "z" && !e.shiftKey ? (e.preventDefault(), k()) : (t && e.key === "z" && e.shiftKey || t && e.key === "y") && (e.preventDefault(), A());
|
|
1170
1170
|
}
|
|
1171
1171
|
return x(() => a.flow._id, () => {
|
|
1172
1172
|
T.value = [...a.flow.nodes], D.value = [...a.flow.edges], y.clear();
|
|
1173
|
-
}), ee(() => window.addEventListener("keydown",
|
|
1173
|
+
}), ee(() => window.addEventListener("keydown", pe)), r(() => window.removeEventListener("keydown", pe)), n({
|
|
1174
1174
|
removeNode: se,
|
|
1175
|
-
addNodeAtCenter:
|
|
1176
|
-
clearAll:
|
|
1177
|
-
getNodes:
|
|
1178
|
-
getEdges:
|
|
1179
|
-
updateNodeData:
|
|
1175
|
+
addNodeAtCenter: ae,
|
|
1176
|
+
clearAll: ce,
|
|
1177
|
+
getNodes: le,
|
|
1178
|
+
getEdges: ue,
|
|
1179
|
+
updateNodeData: de,
|
|
1180
1180
|
undo: k,
|
|
1181
1181
|
redo: A,
|
|
1182
1182
|
canUndo: y.canUndo,
|
|
@@ -1184,7 +1184,7 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1184
1184
|
}), (n, r) => (o(), S("div", {
|
|
1185
1185
|
ref: "canvasRef",
|
|
1186
1186
|
class: d(["h-full w-full border-left-color border-bottom-color border-right-color rounded-b-xl overflow-hidden", { "rounded-none! border-0!": v(u) }]),
|
|
1187
|
-
onDrop:
|
|
1187
|
+
onDrop: ie,
|
|
1188
1188
|
onDragover: r[2] ||= t(() => {}, ["prevent"]),
|
|
1189
1189
|
onDragenter: r[3] ||= t(() => {}, ["prevent"])
|
|
1190
1190
|
}, [M(v(Me), {
|
|
@@ -1201,14 +1201,14 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1201
1201
|
},
|
|
1202
1202
|
"snap-to-grid": !0,
|
|
1203
1203
|
"snap-grid": [16, 16],
|
|
1204
|
-
"is-valid-connection":
|
|
1204
|
+
"is-valid-connection": P,
|
|
1205
1205
|
class: "automation-canvas",
|
|
1206
1206
|
onNodeClick: N,
|
|
1207
1207
|
onPaneClick: te,
|
|
1208
|
-
onConnect:
|
|
1209
|
-
onNodesChange:
|
|
1208
|
+
onConnect: ne,
|
|
1209
|
+
onNodesChange: re
|
|
1210
1210
|
}, g({
|
|
1211
|
-
default: b(() => [M(v(
|
|
1211
|
+
default: b(() => [M(v(Be), { gap: 16 }), M(v(kt))]),
|
|
1212
1212
|
_: 2
|
|
1213
1213
|
}, [v(T).length ? void 0 : {
|
|
1214
1214
|
name: "default",
|
|
@@ -1221,31 +1221,31 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1221
1221
|
])], 34));
|
|
1222
1222
|
}
|
|
1223
1223
|
}), fn = {
|
|
1224
|
-
"trigger-detection":
|
|
1225
|
-
"trigger-sensor":
|
|
1226
|
-
"trigger-schedule":
|
|
1227
|
-
"trigger-webhook":
|
|
1228
|
-
"trigger-mqtt":
|
|
1229
|
-
"trigger-system":
|
|
1230
|
-
"trigger-manual":
|
|
1231
|
-
"trigger-geofence":
|
|
1232
|
-
"action-snapshot":
|
|
1233
|
-
"action-sensor":
|
|
1234
|
-
"action-notification":
|
|
1235
|
-
"action-notification-control":
|
|
1236
|
-
"action-assistant":
|
|
1237
|
-
"action-http":
|
|
1238
|
-
"action-mqtt":
|
|
1239
|
-
"action-delay":
|
|
1240
|
-
"action-variable":
|
|
1241
|
-
"action-plugin":
|
|
1242
|
-
"action-image-input":
|
|
1243
|
-
"action-output":
|
|
1244
|
-
"action-camera-control":
|
|
1245
|
-
"condition-ifelse":
|
|
1246
|
-
"condition-switch":
|
|
1247
|
-
"condition-sensorstate":
|
|
1248
|
-
"condition-time":
|
|
1224
|
+
"trigger-detection": F(() => import("./ConfigTriggerDetection-BR2QWNyO.js")),
|
|
1225
|
+
"trigger-sensor": F(() => import("./ConfigTriggerSensor-lfnhz0im.js")),
|
|
1226
|
+
"trigger-schedule": F(() => import("./ConfigTriggerSchedule-_ThdB8Bb.js")),
|
|
1227
|
+
"trigger-webhook": F(() => import("./ConfigTriggerWebhook-J6Xts7GQ.js")),
|
|
1228
|
+
"trigger-mqtt": F(() => import("./ConfigTriggerMqtt-DWz1XwZQ.js")),
|
|
1229
|
+
"trigger-system": F(() => import("./ConfigTriggerSystem-CwUhyFAj.js")),
|
|
1230
|
+
"trigger-manual": F(() => import("./ConfigTriggerManual-B0DDQtoz.js")),
|
|
1231
|
+
"trigger-geofence": F(() => import("./ConfigTriggerGeofence-CaImOjyW.js")),
|
|
1232
|
+
"action-snapshot": F(() => import("./ConfigActionSnapshot-CInLAcwK.js")),
|
|
1233
|
+
"action-sensor": F(() => import("./ConfigActionSensor-BS3jrFaG.js")),
|
|
1234
|
+
"action-notification": F(() => import("./ConfigActionNotification-s142tQoU.js")),
|
|
1235
|
+
"action-notification-control": F(() => import("./ConfigActionNotificationControl-Dh7kaKVP.js")),
|
|
1236
|
+
"action-assistant": F(() => import("./ConfigActionAssistant-C0-NFoTB.js")),
|
|
1237
|
+
"action-http": F(() => import("./ConfigActionHttp-DVJAcGkl.js")),
|
|
1238
|
+
"action-mqtt": F(() => import("./ConfigActionMqtt-N5OUJDzM.js")),
|
|
1239
|
+
"action-delay": F(() => import("./ConfigActionDelay-iZ3lPGzw.js")),
|
|
1240
|
+
"action-variable": F(() => import("./ConfigActionVariable-C5vADGNF.js")),
|
|
1241
|
+
"action-plugin": F(() => import("./ConfigActionPlugin-D20G2Dqf.js")),
|
|
1242
|
+
"action-image-input": F(() => import("./ConfigActionImageInput-VVbHHHZs.js")),
|
|
1243
|
+
"action-output": F(() => import("./ConfigActionOutput-B4HHTg5C.js")),
|
|
1244
|
+
"action-camera-control": F(() => import("./ConfigActionCameraControl-DNSKZPSZ.js")),
|
|
1245
|
+
"condition-ifelse": F(() => import("./ConfigConditionIfElse-CPeWDD31.js")),
|
|
1246
|
+
"condition-switch": F(() => import("./ConfigConditionSwitch-Dmz9FduJ.js")),
|
|
1247
|
+
"condition-sensorstate": F(() => import("./ConfigConditionSensorState-BM5GmpN6.js")),
|
|
1248
|
+
"condition-time": F(() => import("./ConfigConditionTime-DF6llIJq.js"))
|
|
1249
1249
|
}, pn = { class: "h-full overflow-y-auto flex flex-col" }, mn = { class: "flex items-center gap-2 px-4 py-3 border-bottom-color" }, hn = { class: "flex-1 min-w-0" }, gn = { class: "text-sm font-semibold truncate text-color" }, _n = { class: "text-xs text-muted" }, vn = { class: "flex-1 overflow-y-auto" }, yn = { class: "text-color font-normal text-sm" }, bn = { class: "flex flex-col field-gap" }, xn = { class: "text-color font-normal text-sm" }, Sn = { class: "text-color font-normal text-sm" }, Cn = { class: "flex flex-col gap-3" }, wn = { class: "flex flex-col field-gap" }, Tn = { class: "cui-label" }, En = {
|
|
1250
1250
|
key: 0,
|
|
1251
1251
|
class: "flex flex-col field-gap"
|
|
@@ -1261,7 +1261,7 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1261
1261
|
"delete"
|
|
1262
1262
|
],
|
|
1263
1263
|
setup(e, { emit: t }) {
|
|
1264
|
-
let n = e, r = t, { t: i } =
|
|
1264
|
+
let n = e, r = t, { t: i } = z(), a = y(() => n.node.type ? G(n.node.type) : void 0), c = y(() => n.node.type?.startsWith("action-")), l = y(() => {
|
|
1265
1265
|
if (n.node.type) return fn[n.node.type];
|
|
1266
1266
|
}), u = y(() => {
|
|
1267
1267
|
let e = ["config"];
|
|
@@ -1271,7 +1271,7 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1271
1271
|
r("update:data", e);
|
|
1272
1272
|
}
|
|
1273
1273
|
return (t, n) => {
|
|
1274
|
-
let r =
|
|
1274
|
+
let r = H, p = xe, g = Ce, _ = V, y = te, x = U, w = Se, T = Te, D = we;
|
|
1275
1275
|
return o(), S("div", pn, [
|
|
1276
1276
|
E("div", mn, [
|
|
1277
1277
|
E("div", {
|
|
@@ -1415,31 +1415,31 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1415
1415
|
], In = { class: "flex items-center gap-2.5 flex-1 min-w-0 px-3 py-2.5" }, Ln = { class: "flex-1 min-w-0" }, Rn = { class: "text-[13px] font-medium truncate text-color block leading-tight" }, zn = {
|
|
1416
1416
|
key: 0,
|
|
1417
1417
|
class: "text-[11px] text-muted block truncate mt-0.5 leading-tight"
|
|
1418
|
-
}, Bn = /*#__PURE__*/
|
|
1418
|
+
}, Bn = /*#__PURE__*/ _e(/* @__PURE__ */ A({
|
|
1419
1419
|
__name: "CuiAutomationNodePalette",
|
|
1420
|
-
props: /*@__PURE__*/ n({ mode: {} },
|
|
1420
|
+
props: /*@__PURE__*/ n({ mode: {} }, K),
|
|
1421
1421
|
emits: ["node-click"],
|
|
1422
1422
|
setup(e) {
|
|
1423
|
-
let { t } =
|
|
1423
|
+
let { t } = z(), n = [
|
|
1424
1424
|
{
|
|
1425
1425
|
key: "trigger",
|
|
1426
1426
|
labelKey: "components.automation_nodes.category_triggers",
|
|
1427
|
-
nodes:
|
|
1427
|
+
nodes: W("trigger")
|
|
1428
1428
|
},
|
|
1429
1429
|
{
|
|
1430
1430
|
key: "condition",
|
|
1431
1431
|
labelKey: "components.automation_nodes.category_conditions",
|
|
1432
|
-
nodes:
|
|
1432
|
+
nodes: W("condition")
|
|
1433
1433
|
},
|
|
1434
1434
|
{
|
|
1435
1435
|
key: "utility",
|
|
1436
1436
|
labelKey: "components.automation_nodes.category_utilities",
|
|
1437
|
-
nodes:
|
|
1437
|
+
nodes: W("utility")
|
|
1438
1438
|
},
|
|
1439
1439
|
{
|
|
1440
1440
|
key: "action",
|
|
1441
1441
|
labelKey: "components.automation_nodes.category_actions",
|
|
1442
|
-
nodes:
|
|
1442
|
+
nodes: W("action")
|
|
1443
1443
|
}
|
|
1444
1444
|
];
|
|
1445
1445
|
function r(e, t) {
|
|
@@ -1479,7 +1479,7 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1479
1479
|
"show-history"
|
|
1480
1480
|
],
|
|
1481
1481
|
setup(e, { emit: t }) {
|
|
1482
|
-
let n = e, r = t, { t: i } =
|
|
1482
|
+
let n = e, r = t, { t: i } = z(), { smBreakpoint: a } = oe(), s = T("menuRef"), c = y(() => [{
|
|
1483
1483
|
key: "suppressDuplicates",
|
|
1484
1484
|
label: i("views.automation.suppress_duplicates"),
|
|
1485
1485
|
description: i("views.automation.suppress_duplicates_hint"),
|
|
@@ -1495,7 +1495,7 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1495
1495
|
onClick: () => r("toggle-single-execution")
|
|
1496
1496
|
}]);
|
|
1497
1497
|
return (t, n) => {
|
|
1498
|
-
let r = je, l =
|
|
1498
|
+
let r = je, l = xe, u = V, f = ue, p = P, g = Ue, _ = ae, y = N;
|
|
1499
1499
|
return o(), S("div", Vn, [
|
|
1500
1500
|
v(a) ? h("", !0) : (o(), m(l, {
|
|
1501
1501
|
key: 0,
|
|
@@ -1579,7 +1579,7 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1579
1579
|
__name: "CuiAutomationMobileNodeConfig",
|
|
1580
1580
|
props: { node: {} },
|
|
1581
1581
|
setup(e, { expose: t }) {
|
|
1582
|
-
let n = e, { t: r } =
|
|
1582
|
+
let n = e, { t: r } = z(), i = X(), a = y(() => {
|
|
1583
1583
|
if (n.node.type) return fn[n.node.type];
|
|
1584
1584
|
});
|
|
1585
1585
|
function c(e) {
|
|
@@ -1608,61 +1608,61 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1608
1608
|
}, Zn = { class: "text-muted" }, Qn = /*@__PURE__*/ A({
|
|
1609
1609
|
__name: "Automation",
|
|
1610
1610
|
setup(e) {
|
|
1611
|
-
let t =
|
|
1611
|
+
let t = F(() => import("./CuiAutomationRunsDialog-BU8sympp.js")), n = new De(), r = ve(), i = ne(), { t: a } = z(), { smBreakpoint: c } = oe(), { bottombarHeight: u } = de(), p = ce(), g = le(), O = X(), k = y(() => r.params.id), A = y(() => k.value === "new"), ee = y(() => pe(void 0, "admin")), { data: te, isBusy: P } = n.getAutomationQuery(k), { mutateAsync: ae } = n.createAutomationQuery(), { mutateAsync: ue } = n.patchAutomationQuery(), { mutateAsync: me } = n.deleteAutomationQuery(), { mutateAsync: _e } = n.triggerAutomationQuery(), I = T("canvasRef"), L = j(!1), R = j(!1), ye = j(!1), be = j(!1), B = !1, V, H = y({
|
|
1612
1612
|
get: () => O.draft,
|
|
1613
1613
|
set: (e) => {
|
|
1614
1614
|
O.draft = e;
|
|
1615
1615
|
}
|
|
1616
|
-
}),
|
|
1617
|
-
if (
|
|
1618
|
-
}),
|
|
1619
|
-
if (!c.value &&
|
|
1620
|
-
}),
|
|
1621
|
-
...
|
|
1616
|
+
}), U = y(() => {
|
|
1617
|
+
if (H.value && O.selectedNodeId) return H.value.nodes.find((e) => e.id === O.selectedNodeId);
|
|
1618
|
+
}), Se = y(() => {
|
|
1619
|
+
if (!c.value && U.value) return "calc(300px + 1.25rem + var(--safe-area-inset-right))";
|
|
1620
|
+
}), Ce = y(() => [
|
|
1621
|
+
...H.value?.nodes.some((e) => e.type === "trigger-manual") ?? !1 ? [{
|
|
1622
1622
|
label: a("views.automation.run"),
|
|
1623
|
-
icon:
|
|
1624
|
-
buttonProps: { disabled: A.value ||
|
|
1625
|
-
command: () =>
|
|
1623
|
+
icon: he,
|
|
1624
|
+
buttonProps: { disabled: A.value || R.value },
|
|
1625
|
+
command: () => Ue()
|
|
1626
1626
|
}] : [],
|
|
1627
1627
|
{
|
|
1628
1628
|
label: a("views.automation.undo"),
|
|
1629
|
-
icon:
|
|
1630
|
-
buttonProps: { disabled: !
|
|
1629
|
+
icon: Ve,
|
|
1630
|
+
buttonProps: { disabled: !ye.value },
|
|
1631
1631
|
command: () => {
|
|
1632
|
-
|
|
1632
|
+
I.value?.undo(), K();
|
|
1633
1633
|
}
|
|
1634
1634
|
},
|
|
1635
1635
|
{
|
|
1636
1636
|
label: a("views.automation.redo"),
|
|
1637
1637
|
icon: Fe,
|
|
1638
|
-
buttonProps: { disabled: !
|
|
1638
|
+
buttonProps: { disabled: !be.value },
|
|
1639
1639
|
command: () => {
|
|
1640
|
-
|
|
1640
|
+
I.value?.redo(), K();
|
|
1641
1641
|
}
|
|
1642
1642
|
},
|
|
1643
1643
|
{
|
|
1644
1644
|
label: a("views.automation.export_blueprint"),
|
|
1645
|
-
icon:
|
|
1646
|
-
command: () =>
|
|
1645
|
+
icon: et,
|
|
1646
|
+
command: () => We()
|
|
1647
1647
|
},
|
|
1648
1648
|
{
|
|
1649
1649
|
label: a("views.automation.clear"),
|
|
1650
|
-
icon:
|
|
1651
|
-
command: () =>
|
|
1650
|
+
icon: ze,
|
|
1651
|
+
command: () => Ge()
|
|
1652
1652
|
},
|
|
1653
1653
|
{
|
|
1654
1654
|
label: a("views.automations.delete"),
|
|
1655
|
-
icon:
|
|
1655
|
+
icon: rt,
|
|
1656
1656
|
buttonProps: { severity: "danger" },
|
|
1657
|
-
command: () =>
|
|
1657
|
+
command: () => Ke()
|
|
1658
1658
|
}
|
|
1659
1659
|
]);
|
|
1660
|
-
function
|
|
1661
|
-
|
|
1660
|
+
function we() {
|
|
1661
|
+
ye.value = I.value?.canUndo ?? !1, be.value = I.value?.canRedo ?? !1;
|
|
1662
1662
|
}
|
|
1663
|
-
function
|
|
1664
|
-
|
|
1665
|
-
_id:
|
|
1663
|
+
function Te() {
|
|
1664
|
+
H.value = {
|
|
1665
|
+
_id: fe(12),
|
|
1666
1666
|
name: a("views.automation.untitled"),
|
|
1667
1667
|
enabled: !1,
|
|
1668
1668
|
nodes: [],
|
|
@@ -1673,15 +1673,15 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1673
1673
|
updatedAt: Date.now()
|
|
1674
1674
|
}, O.selectedNodeId = null;
|
|
1675
1675
|
}
|
|
1676
|
-
function
|
|
1677
|
-
clearTimeout(
|
|
1678
|
-
|
|
1676
|
+
function W() {
|
|
1677
|
+
clearTimeout(V), V = setTimeout(() => {
|
|
1678
|
+
q(), O.validationIssues = Lt(H.value);
|
|
1679
1679
|
}, 300);
|
|
1680
1680
|
}
|
|
1681
|
-
function G() {
|
|
1682
|
-
L.value = !0, Te(), U();
|
|
1683
|
-
}
|
|
1684
1681
|
function K() {
|
|
1682
|
+
R.value = !0, we(), W();
|
|
1683
|
+
}
|
|
1684
|
+
function Oe() {
|
|
1685
1685
|
p.openComponentDialog(t, { data: {
|
|
1686
1686
|
title: a("views.automations.run_history"),
|
|
1687
1687
|
contentProps: { flowId: k.value },
|
|
@@ -1689,27 +1689,27 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1689
1689
|
} });
|
|
1690
1690
|
}
|
|
1691
1691
|
function Me() {
|
|
1692
|
-
|
|
1692
|
+
q(), K();
|
|
1693
1693
|
}
|
|
1694
1694
|
function Ne(e) {
|
|
1695
|
-
|
|
1695
|
+
H.value && (H.value.name = e, K());
|
|
1696
1696
|
}
|
|
1697
1697
|
function Ie(e, t) {
|
|
1698
|
-
if (!
|
|
1699
|
-
let n =
|
|
1698
|
+
if (!H.value) return;
|
|
1699
|
+
let n = H.value.nodes.find((t) => t.id === e);
|
|
1700
1700
|
if (n?.data) {
|
|
1701
1701
|
if (!Object.entries(t).some(([e, t]) => n.data[e] !== t)) return;
|
|
1702
|
-
Object.assign(n.data, t),
|
|
1702
|
+
Object.assign(n.data, t), I.value?.updateNodeData(e, { ...n.data }), K();
|
|
1703
1703
|
}
|
|
1704
1704
|
}
|
|
1705
|
-
function
|
|
1706
|
-
if (!
|
|
1707
|
-
let e =
|
|
1705
|
+
function Le() {
|
|
1706
|
+
if (!H.value) return {};
|
|
1707
|
+
let e = I.value?.getNodes?.() ?? H.value.nodes, t = I.value?.getEdges?.() ?? H.value.edges;
|
|
1708
1708
|
return {
|
|
1709
|
-
name:
|
|
1710
|
-
enabled:
|
|
1711
|
-
suppressDuplicates:
|
|
1712
|
-
singleExecution:
|
|
1709
|
+
name: H.value.name,
|
|
1710
|
+
enabled: H.value.enabled,
|
|
1711
|
+
suppressDuplicates: H.value.suppressDuplicates,
|
|
1712
|
+
singleExecution: H.value.singleExecution,
|
|
1713
1713
|
nodes: e.map((e) => ({
|
|
1714
1714
|
id: e.id,
|
|
1715
1715
|
type: e.type ?? "",
|
|
@@ -1725,21 +1725,21 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1725
1725
|
}))
|
|
1726
1726
|
};
|
|
1727
1727
|
}
|
|
1728
|
-
async function
|
|
1729
|
-
if (!
|
|
1730
|
-
|
|
1731
|
-
let e =
|
|
1728
|
+
async function Re() {
|
|
1729
|
+
if (!H.value) return;
|
|
1730
|
+
q();
|
|
1731
|
+
let e = Le();
|
|
1732
1732
|
try {
|
|
1733
1733
|
if (A.value) {
|
|
1734
|
-
let t = await
|
|
1735
|
-
|
|
1734
|
+
let t = await ae({ data: e });
|
|
1735
|
+
R.value = !1, i.replace(`/automations/${t._id}`);
|
|
1736
1736
|
} else {
|
|
1737
|
-
let t = await
|
|
1738
|
-
id:
|
|
1737
|
+
let t = await ue({
|
|
1738
|
+
id: H.value._id,
|
|
1739
1739
|
data: e
|
|
1740
1740
|
});
|
|
1741
|
-
if (
|
|
1742
|
-
let t =
|
|
1741
|
+
if (R.value = !1, t?.nodes && H.value) for (let e of t.nodes) {
|
|
1742
|
+
let t = H.value.nodes.find((t) => t.id === e.id);
|
|
1743
1743
|
t?.data && e.data && Object.assign(t.data, e.data);
|
|
1744
1744
|
}
|
|
1745
1745
|
g.add({
|
|
@@ -1756,17 +1756,17 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1756
1756
|
});
|
|
1757
1757
|
}
|
|
1758
1758
|
}
|
|
1759
|
-
function
|
|
1760
|
-
if (!
|
|
1761
|
-
let e =
|
|
1762
|
-
e && (
|
|
1759
|
+
function q() {
|
|
1760
|
+
if (!H.value) return;
|
|
1761
|
+
let e = I.value?.getNodes(), t = I.value?.getEdges();
|
|
1762
|
+
e && (H.value.nodes = e), t && (H.value.edges = t);
|
|
1763
1763
|
}
|
|
1764
|
-
function
|
|
1764
|
+
function J(e) {
|
|
1765
1765
|
if (O.selectedNodeId = e, c.value && e) {
|
|
1766
|
-
|
|
1767
|
-
let t =
|
|
1766
|
+
q();
|
|
1767
|
+
let t = H.value?.nodes.find((t) => t.id === e);
|
|
1768
1768
|
if (!t) return;
|
|
1769
|
-
let n = t.type ?
|
|
1769
|
+
let n = t.type ? G(t.type) : void 0, r = n ? a(n.labelKey) : "Node", i = t.id;
|
|
1770
1770
|
p.openComponentDialog(Gn, {
|
|
1771
1771
|
data: {
|
|
1772
1772
|
title: r,
|
|
@@ -1779,21 +1779,21 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1779
1779
|
} }
|
|
1780
1780
|
},
|
|
1781
1781
|
onSettled: () => {
|
|
1782
|
-
|
|
1782
|
+
H.value?.nodes.some((e) => e.id === i) || (I.value?.removeNode(i), K());
|
|
1783
1783
|
}
|
|
1784
1784
|
});
|
|
1785
1785
|
}
|
|
1786
1786
|
}
|
|
1787
|
-
function
|
|
1788
|
-
|
|
1787
|
+
function Y(e) {
|
|
1788
|
+
L.value = !1, I.value?.addNodeAtCenter(e), K();
|
|
1789
1789
|
}
|
|
1790
|
-
function
|
|
1791
|
-
O.selectedNodeId && (
|
|
1790
|
+
function Be() {
|
|
1791
|
+
O.selectedNodeId && (I.value?.removeNode(O.selectedNodeId), H.value && (H.value.nodes = H.value.nodes.filter((e) => e.id !== O.selectedNodeId), H.value.edges = H.value.edges.filter((e) => e.source !== O.selectedNodeId && e.target !== O.selectedNodeId)), O.selectedNodeId = null, O.lastOutput = null, K());
|
|
1792
1792
|
}
|
|
1793
|
-
async function
|
|
1794
|
-
if (
|
|
1793
|
+
async function Ue() {
|
|
1794
|
+
if (H.value && !A.value) try {
|
|
1795
1795
|
O.lastOutput = null;
|
|
1796
|
-
let e = await
|
|
1796
|
+
let e = await _e({ id: H.value._id });
|
|
1797
1797
|
e?.output && Object.keys(e.output).length > 0 && (O.lastOutput = e.output), g.add({
|
|
1798
1798
|
severity: "success",
|
|
1799
1799
|
detail: a("views.automation.triggered"),
|
|
@@ -1807,21 +1807,21 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1807
1807
|
});
|
|
1808
1808
|
}
|
|
1809
1809
|
}
|
|
1810
|
-
function
|
|
1811
|
-
if (!
|
|
1812
|
-
|
|
1810
|
+
function We() {
|
|
1811
|
+
if (!H.value) return;
|
|
1812
|
+
Re();
|
|
1813
1813
|
let e = {
|
|
1814
1814
|
version: 1,
|
|
1815
|
-
name:
|
|
1816
|
-
nodes: ke(
|
|
1817
|
-
edges:
|
|
1815
|
+
name: H.value.name,
|
|
1816
|
+
nodes: ke(H.value.nodes),
|
|
1817
|
+
edges: H.value.edges
|
|
1818
1818
|
}, t = JSON.stringify(e, null, 2), n = new Blob([t], { type: "application/json" });
|
|
1819
|
-
|
|
1819
|
+
ge({
|
|
1820
1820
|
blob: n,
|
|
1821
|
-
filename: `${
|
|
1821
|
+
filename: `${H.value.name.replace(/\s+/g, "_").toLowerCase()}.blueprint.json`
|
|
1822
1822
|
});
|
|
1823
1823
|
}
|
|
1824
|
-
function
|
|
1824
|
+
function Ge() {
|
|
1825
1825
|
p.openTextDialog({
|
|
1826
1826
|
data: {
|
|
1827
1827
|
title: a("views.automation.clear"),
|
|
@@ -1829,13 +1829,13 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1829
1829
|
confirmText: a("views.automation.clear")
|
|
1830
1830
|
},
|
|
1831
1831
|
onConfirm: async () => {
|
|
1832
|
-
|
|
1832
|
+
I.value?.clearAll(), H.value && (H.value.nodes = [], H.value.edges = []), O.selectedNodeId = null, K();
|
|
1833
1833
|
}
|
|
1834
1834
|
});
|
|
1835
1835
|
}
|
|
1836
|
-
function
|
|
1837
|
-
if (!
|
|
1838
|
-
let e =
|
|
1836
|
+
function Ke() {
|
|
1837
|
+
if (!H.value) return;
|
|
1838
|
+
let e = H.value._id;
|
|
1839
1839
|
p.openTextDialog({
|
|
1840
1840
|
data: {
|
|
1841
1841
|
title: a("views.automations.delete"),
|
|
@@ -1843,55 +1843,55 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1843
1843
|
confirmText: a("views.automations.delete")
|
|
1844
1844
|
},
|
|
1845
1845
|
onConfirm: async () => {
|
|
1846
|
-
await
|
|
1846
|
+
await me({ id: e }), i.push("/automations");
|
|
1847
1847
|
}
|
|
1848
1848
|
});
|
|
1849
1849
|
}
|
|
1850
|
-
function
|
|
1850
|
+
function qe() {
|
|
1851
1851
|
i.push("/automations");
|
|
1852
1852
|
}
|
|
1853
1853
|
return x(k, (e) => {
|
|
1854
|
-
O.activeFlowId = e === "new" ? null : e ?? null, O.selectedNodeId = null, O.lastOutput = null,
|
|
1854
|
+
O.activeFlowId = e === "new" ? null : e ?? null, O.selectedNodeId = null, O.lastOutput = null, R.value = !1, e === "new" ? Te() : H.value = null;
|
|
1855
1855
|
}, { immediate: !0 }), x(te, (e) => {
|
|
1856
|
-
e && !
|
|
1856
|
+
e && !R.value && (H.value = JSON.parse(JSON.stringify(e)), O.validationIssues = Lt(H.value));
|
|
1857
1857
|
}, { immediate: !0 }), x(() => O.draftDirty, (e) => {
|
|
1858
|
-
e && (O.draftDirty = !1,
|
|
1859
|
-
}),
|
|
1858
|
+
e && (O.draftDirty = !1, K());
|
|
1859
|
+
}), ie((e) => !R.value || B ? !0 : (p.openTextDialog({
|
|
1860
1860
|
data: {
|
|
1861
1861
|
title: a("views.automation.unsaved_title"),
|
|
1862
1862
|
contentText: a("views.automation.unsaved_message"),
|
|
1863
1863
|
confirmText: a("views.automation.discard")
|
|
1864
1864
|
},
|
|
1865
1865
|
onConfirm: async () => {
|
|
1866
|
-
|
|
1866
|
+
B = !0, i.push(e.fullPath);
|
|
1867
1867
|
}
|
|
1868
1868
|
}), !1)), (e, t) => {
|
|
1869
|
-
let n = je, r =
|
|
1869
|
+
let n = je, r = xe, i = re, p = Ee, g = Ae, y = se, x = N;
|
|
1870
1870
|
return o(), S("div", Kn, [M(i, { position: "left" }, {
|
|
1871
1871
|
default: b(() => [M(r, {
|
|
1872
1872
|
severity: "secondary",
|
|
1873
1873
|
text: "",
|
|
1874
1874
|
class: "cui-button p-2 text-color non-draggable-region",
|
|
1875
|
-
onClick:
|
|
1875
|
+
onClick: qe
|
|
1876
1876
|
}, {
|
|
1877
1877
|
icon: b(() => [M(n, { class: "w-6 h-6" })]),
|
|
1878
1878
|
_: 1
|
|
1879
1879
|
})]),
|
|
1880
1880
|
_: 1
|
|
1881
|
-
}), v(
|
|
1881
|
+
}), v(H) ? (o(), S(w, { key: 0 }, [
|
|
1882
1882
|
M(Hn, {
|
|
1883
|
-
flow: v(
|
|
1883
|
+
flow: v(H),
|
|
1884
1884
|
"show-history": !v(A) && v(ee),
|
|
1885
|
-
onShowHistory:
|
|
1885
|
+
onShowHistory: Oe,
|
|
1886
1886
|
"onUpdate:name": Ne,
|
|
1887
1887
|
onToggleEnabled: t[0] ||= (e) => {
|
|
1888
|
-
v(
|
|
1888
|
+
v(H).enabled = !v(H).enabled, K();
|
|
1889
1889
|
},
|
|
1890
1890
|
onToggleSuppressDuplicates: t[1] ||= (e) => {
|
|
1891
|
-
v(
|
|
1891
|
+
v(H).suppressDuplicates = !v(H).suppressDuplicates, K();
|
|
1892
1892
|
},
|
|
1893
1893
|
onToggleSingleExecution: t[2] ||= (e) => {
|
|
1894
|
-
v(
|
|
1894
|
+
v(H).singleExecution = !v(H).singleExecution, K();
|
|
1895
1895
|
}
|
|
1896
1896
|
}, null, 8, ["flow", "show-history"]),
|
|
1897
1897
|
E("div", qn, [
|
|
@@ -1901,28 +1901,28 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1901
1901
|
})),
|
|
1902
1902
|
M(dn, {
|
|
1903
1903
|
ref_key: "canvasRef",
|
|
1904
|
-
ref:
|
|
1905
|
-
flow: v(
|
|
1904
|
+
ref: I,
|
|
1905
|
+
flow: v(H),
|
|
1906
1906
|
mobile: v(c),
|
|
1907
1907
|
class: "flex-1 min-w-0",
|
|
1908
|
-
onNodeSelect:
|
|
1908
|
+
onNodeSelect: J,
|
|
1909
1909
|
onChange: Me
|
|
1910
1910
|
}, null, 8, ["flow", "mobile"]),
|
|
1911
1911
|
v(c) ? h("", !0) : (o(), S("div", {
|
|
1912
1912
|
key: 1,
|
|
1913
1913
|
class: "shrink-0 overflow-hidden transition-[width] duration-200 ease-in-out",
|
|
1914
|
-
style: C({ width: v(
|
|
1915
|
-
}, [v(
|
|
1914
|
+
style: C({ width: v(U) ? "300px" : "0px" })
|
|
1915
|
+
}, [v(U) ? (o(), m(jn, {
|
|
1916
1916
|
key: 0,
|
|
1917
|
-
node: v(
|
|
1917
|
+
node: v(U),
|
|
1918
1918
|
class: "w-[300px]",
|
|
1919
1919
|
onClose: t[3] ||= (e) => v(O).selectedNodeId = null,
|
|
1920
1920
|
"onUpdate:data": t[4] ||= (e) => Ie(v(O).selectedNodeId, e),
|
|
1921
|
-
onDelete:
|
|
1921
|
+
onDelete: Be
|
|
1922
1922
|
}, null, 8, ["node"])) : h("", !0)], 4))
|
|
1923
1923
|
]),
|
|
1924
1924
|
M(p, {
|
|
1925
|
-
model: v(
|
|
1925
|
+
model: v(Ce),
|
|
1926
1926
|
direction: "up",
|
|
1927
1927
|
"transition-delay": 80,
|
|
1928
1928
|
"tooltip-options": {
|
|
@@ -1932,8 +1932,8 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1932
1932
|
style: C({
|
|
1933
1933
|
position: "fixed",
|
|
1934
1934
|
zIndex: 15,
|
|
1935
|
-
bottom: `calc(${v(u)}px + ${v(
|
|
1936
|
-
right: v(
|
|
1935
|
+
bottom: `calc(${v(u)}px + ${v(R) ? "4.25rem" : "1.25rem"} + var(--safe-area-inset-bottom))`,
|
|
1936
|
+
right: v(Se) || "calc(1.25rem + var(--safe-area-inset-right))",
|
|
1937
1937
|
transition: "right 0.2s ease-in-out, bottom 0.2s ease-in-out"
|
|
1938
1938
|
}),
|
|
1939
1939
|
pt: { root: { style: "pointer-events: none" } }
|
|
@@ -1980,12 +1980,12 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1980
1980
|
bottom: `calc(${v(u)}px + 1.25rem + var(--safe-area-inset-bottom))`,
|
|
1981
1981
|
right: "calc(4.75rem + var(--safe-area-inset-right))"
|
|
1982
1982
|
}),
|
|
1983
|
-
onClick: t[5] ||= (e) =>
|
|
1983
|
+
onClick: t[5] ||= (e) => L.value = !0
|
|
1984
1984
|
}, {
|
|
1985
|
-
icon: b(() => [M(v(
|
|
1985
|
+
icon: b(() => [M(v(He), { class: "w-5 h-5" })]),
|
|
1986
1986
|
_: 1
|
|
1987
1987
|
}, 8, ["style"])), [[x, { value: v(a)("views.automation.add_step") }]]) : h("", !0),
|
|
1988
|
-
v(
|
|
1988
|
+
v(R) ? D((o(), m(r, {
|
|
1989
1989
|
key: 1,
|
|
1990
1990
|
rounded: "",
|
|
1991
1991
|
severity: "success",
|
|
@@ -1994,27 +1994,27 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
1994
1994
|
position: "fixed",
|
|
1995
1995
|
zIndex: 15,
|
|
1996
1996
|
bottom: `calc(${v(u)}px + 1.25rem + var(--safe-area-inset-bottom))`,
|
|
1997
|
-
right: v(
|
|
1997
|
+
right: v(Se) || "calc(1.25rem + var(--safe-area-inset-right))",
|
|
1998
1998
|
transition: "right 0.2s ease-in-out"
|
|
1999
1999
|
}),
|
|
2000
|
-
onClick:
|
|
2000
|
+
onClick: Re
|
|
2001
2001
|
}, {
|
|
2002
2002
|
icon: b(() => [M(v(Pe), { class: "w-5 h-5" })]),
|
|
2003
2003
|
_: 1
|
|
2004
2004
|
}, 8, ["style"])), [[x, { value: v(a)("views.automation.save") }]]) : h("", !0),
|
|
2005
2005
|
M(g, {
|
|
2006
|
-
modelValue: v(
|
|
2007
|
-
"onUpdate:modelValue": t[6] ||= (e) => _(
|
|
2006
|
+
modelValue: v(L),
|
|
2007
|
+
"onUpdate:modelValue": t[6] ||= (e) => _(L) ? L.value = e : null,
|
|
2008
2008
|
title: v(a)("views.automation.add_step"),
|
|
2009
2009
|
"max-height": "70vh"
|
|
2010
2010
|
}, {
|
|
2011
2011
|
default: b(() => [M(Bn, {
|
|
2012
2012
|
mode: "click",
|
|
2013
|
-
onNodeClick:
|
|
2013
|
+
onNodeClick: Y
|
|
2014
2014
|
})]),
|
|
2015
2015
|
_: 1
|
|
2016
2016
|
}, 8, ["modelValue", "title"])
|
|
2017
|
-
], 64)) : v(
|
|
2017
|
+
], 64)) : v(P) ? (o(), S("div", Yn, [M(y, {
|
|
2018
2018
|
class: "!w-8 !h-8",
|
|
2019
2019
|
"stroke-width": "5"
|
|
2020
2020
|
})])) : (o(), S("div", Xn, [E("span", Zn, s(v(a)("views.automations.no_automations")), 1)]))]);
|
|
@@ -2022,4 +2022,4 @@ var ln = { class: "absolute inset-0 flex items-center justify-center pointer-eve
|
|
|
2022
2022
|
}
|
|
2023
2023
|
}), $n = /* @__PURE__ */ e({ default: () => er }), er = Qn;
|
|
2024
2024
|
//#endregion
|
|
2025
|
-
export {
|
|
2025
|
+
export { X as a, er as default, Ke as i, Ge as n, qe as r, $n as t };
|