@camera.ui/server 2.2.5-beta.1 → 2.2.5-beta.2

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.
Files changed (953) hide show
  1. package/dist/interface/assets/404-BDvtK1qR.js +1 -0
  2. package/dist/interface/assets/About-B4A35rRx.js +1 -0
  3. package/dist/interface/assets/Assistant-BKxssfw-.js +1 -0
  4. package/dist/interface/assets/Automation-CP59cgP7.js +3 -0
  5. package/dist/interface/assets/AutomationImport-CEJdhE_d.js +2 -0
  6. package/dist/interface/assets/AutomationStore-BZGR_5Xl.js +2 -0
  7. package/dist/interface/assets/AutomationStoreDetail-BenRMMtV.js +2 -0
  8. package/dist/interface/assets/Automations-BpXorYAS.js +2 -0
  9. package/dist/interface/assets/Camera-UBUfaR5a.js +2 -0
  10. package/dist/interface/assets/CameraConsole-D24yXOQn.js +7 -0
  11. package/dist/interface/assets/Cameras-B21Y8MdQ.js +651 -0
  12. package/dist/interface/assets/Camview-BySyPtU5.js +1 -0
  13. package/dist/interface/assets/CertificateUpload-26LAL4MY.js +1 -0
  14. package/dist/interface/assets/Config-BGyGmukb.js +2 -0
  15. package/dist/interface/assets/ConfigActionAssistant-Cl_kr3hp.js +1 -0
  16. package/dist/interface/assets/ConfigActionCameraControl-CL4vXcNe.js +1 -0
  17. package/dist/interface/assets/ConfigActionDelay-DtPgmqWh.js +1 -0
  18. package/dist/interface/assets/ConfigActionHttp-DnkZTP5l.js +1 -0
  19. package/dist/interface/assets/ConfigActionImageInput-3svn6YP9.js +1 -0
  20. package/dist/interface/assets/ConfigActionMqtt-BTsFTLgm.js +1 -0
  21. package/dist/interface/assets/ConfigActionNotification-Cr4xJrZp.js +1 -0
  22. package/dist/interface/assets/ConfigActionNotificationControl-Cxkb_g8p.js +1 -0
  23. package/dist/interface/assets/ConfigActionOutput-WTr7FGf_.js +1 -0
  24. package/dist/interface/assets/ConfigActionPlugin-BpcJepbD.js +1 -0
  25. package/dist/interface/assets/ConfigActionSensor-BgD_F-hD.js +1 -0
  26. package/dist/interface/assets/ConfigActionSnapshot-DjR-Z08N.js +1 -0
  27. package/dist/interface/assets/ConfigActionVariable-gPuPbjpm.js +1 -0
  28. package/dist/interface/assets/ConfigConditionIfElse-CUHKJmPx.js +1 -0
  29. package/dist/interface/assets/ConfigConditionSensorState-D-gPRqMu.js +1 -0
  30. package/dist/interface/assets/ConfigConditionSwitch-BRf1T5tJ.js +1 -0
  31. package/dist/interface/assets/ConfigConditionTime-BC0n6sWO.js +1 -0
  32. package/dist/interface/assets/ConfigSensorValueInput-BUHapx4M.js +1 -0
  33. package/dist/interface/assets/ConfigTriggerDetection-Byd6SLGg.js +1 -0
  34. package/dist/interface/assets/ConfigTriggerGeofence-CkzTFEZn.js +1 -0
  35. package/dist/interface/assets/ConfigTriggerManual-B2dWcFrl.js +1 -0
  36. package/dist/interface/assets/ConfigTriggerMqtt-B_aUDBu4.js +1 -0
  37. package/dist/interface/assets/ConfigTriggerSchedule-DAZo1PLj.js +1 -0
  38. package/dist/interface/assets/ConfigTriggerSensor-BCqAiPu4.js +1 -0
  39. package/dist/interface/assets/ConfigTriggerSystem-DuBydCiq.js +1 -0
  40. package/dist/interface/assets/ConfigTriggerWebhook-DDsnpwJr.js +1 -0
  41. package/dist/interface/assets/Console-HXmKYaK_.js +1 -0
  42. package/dist/interface/assets/CuiAssistantConversation-2qrRCsgw.js +5 -0
  43. package/dist/interface/assets/CuiAutomationRunsDialog-C_sMg7E1.js +1 -0
  44. package/dist/interface/assets/CuiBottomSheet-CTr-KHC8.js +1 -0
  45. package/dist/interface/assets/CuiBottomSheet-D_0LrjA_.js +1 -0
  46. package/dist/interface/assets/CuiCameraPipCard-BZCayhy_.js +1 -0
  47. package/dist/interface/assets/CuiCameraRecordings-BbaEL2ST.js +1 -0
  48. package/dist/interface/assets/CuiCameraShares-BIUB1xMa.js +1 -0
  49. package/dist/interface/assets/CuiCameraTable-C5tQHs63.js +1 -0
  50. package/dist/interface/assets/CuiCameraTable-D-UhqHk4.js +2 -0
  51. package/dist/interface/assets/CuiChartTable-CSK4Mzn3.js +1 -0
  52. package/dist/interface/assets/CuiConsole-DAbJXJBq.js +5 -0
  53. package/dist/interface/assets/CuiDataTable-DgcJsG-K.js +1 -0
  54. package/dist/interface/assets/CuiLightControl-v6k9hVGl.js +1 -0
  55. package/dist/interface/assets/CuiList-HdsA9vV1.js +1 -0
  56. package/dist/interface/assets/CuiMarkdownContent-BUYtK_wD.js +1 -0
  57. package/dist/interface/assets/CuiMarkdownContent-DSArmS0V.js +1 -0
  58. package/dist/interface/assets/CuiPluginCard-5MRYJcF2.js +2 -0
  59. package/dist/interface/assets/CuiPluginCategoryChip-C7R1jP7r.js +1 -0
  60. package/dist/interface/assets/CuiPluginOAuthButton-BJJw0IaC.js +2 -0
  61. package/dist/interface/assets/CuiPluginTrustBadge-Bmm1qYdC.js +1 -0
  62. package/dist/interface/assets/CuiQRCode-DTSEFMBt.js +1 -0
  63. package/dist/interface/assets/CuiSchema-BDXeXora.js +1 -0
  64. package/dist/interface/assets/CuiTopNavbarItem-BVknLbRO.js +1 -0
  65. package/dist/interface/assets/Faces-BEpYvbB0.js +1 -0
  66. package/dist/interface/assets/FirstSteps-U93RDOcP.js +1 -0
  67. package/dist/interface/assets/Floorplan-D8XoCNOB.js +1 -0
  68. package/dist/interface/assets/Instances-CFwZotvU.js +1 -0
  69. package/dist/interface/assets/Logs-BjcfuMQV.js +6 -0
  70. package/dist/interface/assets/Menu-BjjnSgdP.js +1 -0
  71. package/dist/interface/assets/Metrics-BUP_-7o7.css +1 -0
  72. package/dist/interface/assets/Metrics-Ca_d5CbP.js +12 -0
  73. package/dist/interface/assets/OAuthDeviceFlow-9v-Czy_u.js +1 -0
  74. package/dist/interface/assets/Plugin-BjLw46Sw.js +1 -0
  75. package/dist/interface/assets/PluginConsole-C7sO42RG.js +7 -0
  76. package/dist/interface/assets/PluginDetail-BuLW4lkN.js +2 -0
  77. package/dist/interface/assets/PluginSchema-D0eL9H-b.js +1 -0
  78. package/dist/interface/assets/PluginSearch--LLMEeyx.js +2 -0
  79. package/dist/interface/assets/PluginSearch-0akjE0ef.js +1 -0
  80. package/dist/interface/assets/PluginUpdateProgress--MM9D8hs.js +1 -0
  81. package/dist/interface/assets/Plugins-26O511gf.js +1 -0
  82. package/dist/interface/assets/RecentEventsFilter-CvIJS8Se.js +1 -0
  83. package/dist/interface/assets/Recordings-DQOGeSFm.js +1 -0
  84. package/dist/interface/assets/SensorEdit-DEW5D80x.js +1 -0
  85. package/dist/interface/assets/SensorHistory-Efw0bZ-X.js +1 -0
  86. package/dist/interface/assets/Sensors-C8yOyAwo.js +2 -0
  87. package/dist/interface/assets/Settings-B-RgMeVm.js +1 -0
  88. package/dist/interface/assets/SettingsAccount-B6aXFx3F.js +1 -0
  89. package/dist/interface/assets/SettingsAccount-_0ccrXYU.js +1 -0
  90. package/dist/interface/assets/SettingsAppearance-CkDwzx6f.js +1 -0
  91. package/dist/interface/assets/SettingsAppearance-DBFE3uVH.js +1 -0
  92. package/dist/interface/assets/SettingsAssistant-DN5OUJqt.js +1 -0
  93. package/dist/interface/assets/SettingsBackup-BqKBKis5.js +1 -0
  94. package/dist/interface/assets/SettingsList-BU191rmt.js +1 -0
  95. package/dist/interface/assets/SettingsMqtt-hsKZkU-o.js +1 -0
  96. package/dist/interface/assets/SettingsNotifications-DIeiUEAk.js +1 -0
  97. package/dist/interface/assets/SettingsPermissions-sI64FPZG.js +1 -0
  98. package/dist/interface/assets/SettingsRecordings-CghrKErw.js +1 -0
  99. package/dist/interface/assets/SettingsRemote-Doa0aBMC.js +2 -0
  100. package/dist/interface/assets/SettingsSystem-DP1p1Xns.js +2 -0
  101. package/dist/interface/assets/SettingsUsers-Dpej-he1.js +1 -0
  102. package/dist/interface/assets/Terminal-DPRPXCSt.js +4 -0
  103. package/dist/interface/assets/Training-DYlefOX1.js +1 -0
  104. package/dist/interface/assets/Updates-QTvCp1aS.js +2 -0
  105. package/dist/interface/assets/VariableInput-DhusSZPw.js +1 -0
  106. package/dist/interface/assets/VariableSuggestions-Bkzz4Mv3.js +1 -0
  107. package/dist/interface/assets/VersionsHandler-DjNSpSYy.js +7 -0
  108. package/dist/interface/assets/VirtualSensorCreate-soGT6h2c.js +1 -0
  109. package/dist/interface/assets/Workers-CUVvTuts.js +2 -0
  110. package/dist/interface/assets/account-Bu30He0P.js +1 -0
  111. package/dist/interface/assets/alert-circle-D2fAQwTX.js +1 -0
  112. package/dist/interface/assets/alert-outline-D7zaSJH_.js +1 -0
  113. package/dist/interface/assets/api-B0wYDGQj.css +2 -0
  114. package/dist/interface/assets/api-BNrZVfeD.js +4 -0
  115. package/dist/interface/assets/api-CK2tonlH.js +1 -0
  116. package/dist/interface/assets/arrow-left-BGLyEqqa.js +1 -0
  117. package/dist/interface/assets/assistant-BEe1ExZL.js +1 -0
  118. package/dist/interface/assets/assistantModels-D0soYqq7.js +1 -0
  119. package/dist/interface/assets/auth-QEpUGkWd.js +1 -0
  120. package/dist/interface/assets/automations-BBIBV4Uu.js +1 -0
  121. package/dist/interface/assets/back-filled-BPBVnQjx.js +1 -0
  122. package/dist/interface/assets/bell-ring-CyCFPUL_.js +1 -0
  123. package/dist/interface/assets/brain-CIJB1ree.js +1 -0
  124. package/dist/interface/assets/cameraSources-Cm18cW9L.js +1 -0
  125. package/dist/interface/assets/cctv-D6kxZ-lp.js +1 -0
  126. package/dist/interface/assets/check-circle-DHAAn6A6.js +1 -0
  127. package/dist/interface/assets/check-circle-outline-BbqeKfIK.js +1 -0
  128. package/dist/interface/assets/chevron-down-ZYTrU871.js +1 -0
  129. package/dist/interface/assets/chevron-up-LQXNz9CE.js +1 -0
  130. package/dist/interface/assets/clock-outline-CKTiLKoR.js +1 -0
  131. package/dist/interface/assets/close-BbEPZQqa.js +1 -0
  132. package/dist/interface/assets/close-circle-BSUSUs4K.js +1 -0
  133. package/dist/interface/assets/cloud-check-BTGbrAQ_.js +1 -0
  134. package/dist/interface/assets/cloudHandoff-Dnndt2el.js +1 -0
  135. package/dist/interface/assets/config-vwkU8aqP.js +1 -0
  136. package/dist/interface/assets/content-copy-V0DW9ZbH.js +1 -0
  137. package/dist/interface/assets/copy-DsmMEtSH.js +1 -0
  138. package/dist/interface/assets/cube-scan-DGhUFV1x.js +1 -0
  139. package/dist/interface/assets/delete-CY8fsIW6.js +1 -0
  140. package/dist/interface/assets/dist-DNyx_J8o.js +1 -0
  141. package/dist/interface/assets/dots-vertical-pP1vP0Qa.js +1 -0
  142. package/dist/interface/assets/download-CyjJ7yJW.js +1 -0
  143. package/dist/interface/assets/esm-4Hzzm93H.js +1 -0
  144. package/dist/interface/assets/esm-BrFPi5_4.js +1 -0
  145. package/dist/interface/assets/esm-C7pcdfXf.js +1 -0
  146. package/dist/interface/assets/esm-C8bsO829.js +1 -0
  147. package/dist/interface/assets/esm-CXzdnAMk.js +1 -0
  148. package/dist/interface/assets/esm-CZNGZkPu.js +1 -0
  149. package/dist/interface/assets/esm-D0iI7OVb.js +1 -0
  150. package/dist/interface/assets/esm-DKolm6KU.js +1 -0
  151. package/dist/interface/assets/esm-DTywI9gs.js +1 -0
  152. package/dist/interface/assets/esm-DifXcK9i.js +1 -0
  153. package/dist/interface/assets/esm-Dq5o-Xb4.js +1 -0
  154. package/dist/interface/assets/esm-IbQuUZ5l.js +1 -0
  155. package/dist/interface/assets/esm-Xre_AP5i.js +1 -0
  156. package/dist/interface/assets/esm-zYnXHhpH.js +1 -0
  157. package/dist/interface/assets/eventIcons-cdzqQc0W.js +1 -0
  158. package/dist/interface/assets/eye-off-JCu1iUer.js +1 -0
  159. package/dist/interface/assets/eye-off-outline-GErp76H2.js +1 -0
  160. package/dist/interface/assets/flowSchema-rzBroL0H.js +1 -0
  161. package/dist/interface/assets/help-circle-outline-G43EJuch.js +1 -0
  162. package/dist/interface/assets/history-CNJREqJG.js +1 -0
  163. package/dist/interface/assets/home-B-_OQpZ6.js +1 -0
  164. package/dist/interface/assets/information-outline-Blt4EtWJ.js +1 -0
  165. package/dist/interface/assets/intercomService-Du8V_HxF.js +1 -0
  166. package/dist/interface/assets/lan-C3jliANx.js +1 -0
  167. package/dist/interface/assets/main-CRlC4FBY.js +3 -0
  168. package/dist/interface/assets/microphone-B6xc9JQ2.js +1 -0
  169. package/dist/interface/assets/minus-BI5qXFwJ.js +1 -0
  170. package/dist/interface/assets/mqtt-BY6-Hrbv.js +1 -0
  171. package/dist/interface/assets/native-CAujTO6L.js +1 -0
  172. package/dist/interface/assets/native-sQ88qazf.js +1 -0
  173. package/dist/interface/assets/nodeDefinitions-Dop49tx8.js +1 -0
  174. package/dist/interface/assets/notifications-CN6eTJb_.js +1 -0
  175. package/dist/interface/assets/pause-DKzvPG2b.js +1 -0
  176. package/dist/interface/assets/pencil-DKbi9SsG.js +1 -0
  177. package/dist/interface/assets/pencil-outline-CD3Xv98d.js +1 -0
  178. package/dist/interface/assets/plugin-D7K50k_y.js +1 -0
  179. package/dist/interface/assets/plugins-DKtX7zQp.js +1 -0
  180. package/dist/interface/assets/plus--kDl8ben.js +1 -0
  181. package/dist/interface/assets/plus-CHPYoMO_.js +1 -0
  182. package/dist/interface/assets/power-C9wmNlFS.js +1 -0
  183. package/dist/interface/assets/radar-B3ra28GD.js +1 -0
  184. package/dist/interface/assets/refresh-DfqyhMOh.js +1 -0
  185. package/dist/interface/assets/restore-FMacmqd_.js +1 -0
  186. package/dist/interface/assets/ring-resize-DyqCo2UN.js +1 -0
  187. package/dist/interface/assets/rooms-BHP4q6yf.js +1 -0
  188. package/dist/interface/assets/round-alt-arrow-left-bold-56eF9Bol.js +1 -0
  189. package/dist/interface/assets/search-BXbDWhLk.js +1 -0
  190. package/dist/interface/assets/sensorIcons-ztqlMLDc.js +1 -0
  191. package/dist/interface/assets/sensorSlots-D-uxjuv3.js +1 -0
  192. package/dist/interface/assets/sensors-DV2Z0IJt.js +1 -0
  193. package/dist/interface/assets/server-CfZnIVzn.js +1 -0
  194. package/dist/interface/assets/settings-Cw63SIJl.js +1 -0
  195. package/dist/interface/assets/source-branch-oyzrlfCD.js +1 -0
  196. package/dist/interface/assets/theme-Bi7qdjBK.js +1 -0
  197. package/dist/interface/assets/trash-2-BQc04l9M.js +1 -0
  198. package/dist/interface/assets/trash-can-outline-Bk5eENNM.js +1 -0
  199. package/dist/interface/assets/trash-fill-CXk8BmtF.js +1 -0
  200. package/dist/interface/assets/trash2-2rUvghml.js +1 -0
  201. package/dist/interface/assets/types-CNLAvgyw.js +1 -0
  202. package/dist/interface/assets/types-DuwD8xp5.js +1 -0
  203. package/dist/interface/assets/types-DwbeYXvn.js +1 -0
  204. package/dist/interface/assets/undo-Dcf7vcsv.js +1 -0
  205. package/dist/interface/assets/ungrouped-DHLAmt__.js +1 -0
  206. package/dist/interface/assets/updates-BqCH6Vr8.js +1 -0
  207. package/dist/interface/assets/upload-B-ZYPekV.js +1 -0
  208. package/dist/interface/assets/upload-nnbfDypK.js +1 -0
  209. package/dist/interface/assets/useAppVersion-B-rmq3Bb.js +1 -0
  210. package/dist/interface/assets/useAssistantActions-Kf-5ijVf.js +1 -0
  211. package/dist/interface/assets/useBackupRestore-Dj-ZXODq.js +1 -0
  212. package/dist/interface/assets/useCameraOptions-Dt2J8sP_.js +1 -0
  213. package/dist/interface/assets/useKeyboardInset-DtD3I2WC.js +1 -0
  214. package/dist/interface/assets/useLogsSocket-CEhUQdiY.js +1 -0
  215. package/dist/interface/assets/useNavLayout-CtpYjS5W.js +1 -0
  216. package/dist/interface/assets/usePermissions-CJzuagwD.js +1 -0
  217. package/dist/interface/assets/usePluginUpdates-BwoWN5yb.js +1 -0
  218. package/dist/interface/assets/usePushRegistration-ANx4BS6_.js +2 -0
  219. package/dist/interface/assets/useServerRestart-7edyD8M0.js +1 -0
  220. package/dist/interface/assets/useStreamStatus-DCSWHdbW.js +1 -0
  221. package/dist/interface/assets/useTabSwipe-DfS3R3uP.js +1 -0
  222. package/dist/interface/assets/useUpdateChannel-Cr9mSIRC.js +1 -0
  223. package/dist/interface/assets/useUpdatesSocket-B5Rm9syb.js +1 -0
  224. package/dist/interface/assets/useUserOptions-CJjImz8V.js +1 -0
  225. package/dist/interface/assets/variable-CcE0ZwTr.js +1 -0
  226. package/dist/interface/assets/vendor-DGke_6M4.js +23 -0
  227. package/dist/interface/assets/vendor-cameraui-BbGOMenD.js +2326 -0
  228. package/dist/interface/assets/vendor-capacitor-COL6Kz75.js +2 -0
  229. package/dist/interface/assets/vendor-chart-80wrH3md.js +3 -0
  230. package/dist/interface/assets/vendor-core-tgH2YubJ.js +1 -0
  231. package/dist/interface/assets/vendor-dnd-CEJS9JKU.js +2 -0
  232. package/dist/interface/assets/vendor-draggabilly-BY7O1F_Z.js +1 -0
  233. package/dist/interface/assets/vendor-markdown-DD4teg2u.js +14 -0
  234. package/dist/interface/assets/vendor-primevue-DNJJiEZl.js +3942 -0
  235. package/dist/interface/assets/vendor-vueflow-Bmwd2les.js +26 -0
  236. package/dist/interface/assets/web-3M-ddn4G.js +1 -0
  237. package/dist/interface/assets/web-BY80VGyU.js +1 -0
  238. package/dist/interface/assets/web-B_tUYyM0.js +1 -0
  239. package/dist/interface/assets/web-BjKL51lK-Bb5NYhpJ.js +1 -0
  240. package/dist/interface/assets/web-Bv-4PJGI.js +1 -0
  241. package/dist/interface/assets/web-C3Pk8qeB.js +1 -0
  242. package/dist/interface/assets/web-CLcvGPH6.js +1 -0
  243. package/dist/interface/assets/web-DO8gTOVJ.js +1 -0
  244. package/dist/interface/assets/web-DR5q_DmI.js +1 -0
  245. package/dist/interface/assets/web-DRHbG4Te.js +1 -0
  246. package/dist/interface/assets/web-DaQ8d8yk.js +1 -0
  247. package/dist/interface/assets/web-EVRW5whF.js +1 -0
  248. package/dist/interface/assets/web-S6Dk3UWN.js +1 -0
  249. package/dist/interface/assets/web-pWIp0wf0.js +1 -0
  250. package/dist/interface/assets/webhook-oVbP79Yk.js +1 -0
  251. package/dist/interface/assets/workbox-window.prod.es5-Dz5rcO1z.js +1 -0
  252. package/dist/interface/assets/zoom-in-GKNy8xA7.js +1 -0
  253. package/dist/interface/ha/404-Dl6JtQWv.js +60 -0
  254. package/dist/interface/ha/About-wjv4kCO3.js +55 -0
  255. package/dist/interface/ha/Assistant-Dpb4IsDC.js +9209 -0
  256. package/dist/interface/ha/Automation-CqTPjCUh.js +2025 -0
  257. package/dist/interface/ha/AutomationImport-CvdeneoU.js +206 -0
  258. package/dist/interface/ha/AutomationStore-bVPE68io.js +336 -0
  259. package/dist/interface/ha/AutomationStoreDetail-BYaNUjoH.js +122 -0
  260. package/dist/interface/ha/Automations-BfsYh2A_.js +424 -0
  261. package/dist/interface/ha/Camera-C70onr_O.js +654 -0
  262. package/dist/interface/ha/CameraConsole-Dg3lV-wq.js +52 -0
  263. package/dist/interface/ha/Cameras-DpM6gt3G.js +1970 -0
  264. package/dist/interface/ha/Camview-CO_bHntH.js +1331 -0
  265. package/dist/interface/ha/CertificateUpload-PS47Kgbg.js +117 -0
  266. package/dist/interface/ha/Config-D-cpocuH.js +356 -0
  267. package/dist/interface/ha/ConfigActionAssistant-DVVVfVvT.js +182 -0
  268. package/dist/interface/ha/ConfigActionCameraControl-BPpzE9-F.js +152 -0
  269. package/dist/interface/ha/ConfigActionDelay-zU6H75hY.js +61 -0
  270. package/dist/interface/ha/ConfigActionHttp-BsNy03j4.js +134 -0
  271. package/dist/interface/ha/ConfigActionImageInput-JUvNYn0w.js +171 -0
  272. package/dist/interface/ha/ConfigActionMqtt-PZqAKfTo.js +81 -0
  273. package/dist/interface/ha/ConfigActionNotification-DIL7abEm.js +199 -0
  274. package/dist/interface/ha/ConfigActionNotificationControl-BQ2w5yeg.js +111 -0
  275. package/dist/interface/ha/ConfigActionOutput-DVilKhPV.js +98 -0
  276. package/dist/interface/ha/ConfigActionPlugin-BUfTEJQ_.js +172 -0
  277. package/dist/interface/ha/ConfigActionSensor-Dzp16VyX.js +139 -0
  278. package/dist/interface/ha/ConfigActionSnapshot-CRjD5AMC.js +48 -0
  279. package/dist/interface/ha/ConfigActionVariable-CR8g7gEh.js +88 -0
  280. package/dist/interface/ha/ConfigConditionIfElse-CHoSgzXF.js +124 -0
  281. package/dist/interface/ha/ConfigConditionSensorState-Dn8_OhQe.js +192 -0
  282. package/dist/interface/ha/ConfigConditionSwitch-Ds-nqWeU.js +128 -0
  283. package/dist/interface/ha/ConfigConditionTime-DWNfEluj.js +95 -0
  284. package/dist/interface/ha/ConfigSensorValueInput-DwXM9wP1.js +170 -0
  285. package/dist/interface/ha/ConfigTriggerDetection-D37OkR_u.js +241 -0
  286. package/dist/interface/ha/ConfigTriggerGeofence-EbXy_y3Q.js +4888 -0
  287. package/dist/interface/ha/ConfigTriggerManual-B0DDQtoz.js +14 -0
  288. package/dist/interface/ha/ConfigTriggerMqtt-BX6uNEZy.js +134 -0
  289. package/dist/interface/ha/ConfigTriggerSchedule-_ThdB8Bb.js +72 -0
  290. package/dist/interface/ha/ConfigTriggerSensor-BFGEtBVF.js +73 -0
  291. package/dist/interface/ha/ConfigTriggerSystem-fRnAgUGR.js +192 -0
  292. package/dist/interface/ha/ConfigTriggerWebhook-DegifRdj.js +94 -0
  293. package/dist/interface/ha/Console-Bo6S5psN.js +348 -0
  294. package/dist/interface/ha/CuiAutomationRunsDialog-DXpNJqDE.js +130 -0
  295. package/dist/interface/ha/CuiBottomSheet-DLkC2OmT.js +270 -0
  296. package/dist/interface/ha/CuiCameraRecordings-9tdkxXiT.js +552 -0
  297. package/dist/interface/ha/CuiCameraShares-BbqY_2b7.js +121 -0
  298. package/dist/interface/ha/CuiCameraTable-BmH1yAgl.js +169 -0
  299. package/dist/interface/ha/CuiChartTable-BjBBI7Fo.js +6786 -0
  300. package/dist/interface/ha/CuiConsole-By3m4UbE.js +244 -0
  301. package/dist/interface/ha/CuiDataTable-C_ndu5My.js +8732 -0
  302. package/dist/interface/ha/CuiList-CU2NJ1K6.js +57 -0
  303. package/dist/interface/ha/CuiMarkdownContent-CrkZwv5j.js +4724 -0
  304. package/dist/interface/ha/CuiPluginCard-BLQ1galy.js +769 -0
  305. package/dist/interface/ha/CuiPluginOAuthButton-BDghklSy.js +79 -0
  306. package/dist/interface/ha/CuiPluginTrustBadge-DolANNao.js +123 -0
  307. package/dist/interface/ha/CuiQRCode-CcjPngXI.js +86 -0
  308. package/dist/interface/ha/CuiSchema-D9JFf0dp.js +963 -0
  309. package/dist/interface/ha/CuiTopNavbarItem-DcUEq-4e.js +141 -0
  310. package/dist/interface/ha/Faces-DjXHzr77.js +1282 -0
  311. package/dist/interface/ha/FirstSteps-CQAP9Siw.js +251 -0
  312. package/dist/interface/ha/Floorplan-DyaPzlQO.js +3657 -0
  313. package/dist/interface/ha/Instances-DWjaU5gj.js +680 -0
  314. package/dist/interface/ha/Logs-Dlx-X1NS.js +418 -0
  315. package/dist/interface/ha/Menu-iqEe01qO.js +156 -0
  316. package/dist/interface/ha/Metrics-Br2Dyvzh.js +1444 -0
  317. package/dist/interface/ha/OAuthDeviceFlow-CIGk92FD.js +112 -0
  318. package/dist/interface/ha/Plugin-DklIr7j2.js +1405 -0
  319. package/dist/interface/ha/PluginConsole-DCfxPtGU.js +56 -0
  320. package/dist/interface/ha/PluginDetail-BFfRnkdG.js +230 -0
  321. package/dist/interface/ha/PluginSearch-BTKBnjxb.js +462 -0
  322. package/dist/interface/ha/PluginUpdateProgress-Dej5AcCt.js +34 -0
  323. package/dist/interface/ha/Plugins-C2fONspm.js +692 -0
  324. package/dist/interface/ha/RecentEventsFilter-ylgjiDo8.js +79 -0
  325. package/dist/interface/ha/Recordings-w39I43cc.js +1498 -0
  326. package/dist/interface/ha/SensorEdit-BkKi1l-A.js +1462 -0
  327. package/dist/interface/ha/SensorHistory-BGJjMlc3.js +54 -0
  328. package/dist/interface/ha/Sensors-D_Wi9XPa.js +1386 -0
  329. package/dist/interface/ha/Settings-Bn7WLWf0.js +218 -0
  330. package/dist/interface/ha/SettingsAccount-CRTex-1j.js +971 -0
  331. package/dist/interface/ha/SettingsAppearance-B1qmJnYk.js +220 -0
  332. package/dist/interface/ha/SettingsAssistant-DDd1X0BC.js +1857 -0
  333. package/dist/interface/ha/SettingsBackup-DZbhSB13.js +556 -0
  334. package/dist/interface/ha/SettingsList-BQdyPe0H.js +40 -0
  335. package/dist/interface/ha/SettingsMqtt-CSZcY6ht.js +526 -0
  336. package/dist/interface/ha/SettingsNotifications-CfEhl0-y.js +529 -0
  337. package/dist/interface/ha/SettingsPermissions-Jh0FuIF7.js +84 -0
  338. package/dist/interface/ha/SettingsRecordings-BnAGDvcH.js +152 -0
  339. package/dist/interface/ha/SettingsRemote-w86TQVUA.js +1810 -0
  340. package/dist/interface/ha/SettingsSystem-CENjHL3k.js +376 -0
  341. package/dist/interface/ha/SettingsUsers-CqSHRklV.js +379 -0
  342. package/dist/interface/ha/Terminal-WsuxG3k-.js +617 -0
  343. package/dist/interface/ha/Training-hu_XOYBk.js +1505 -0
  344. package/dist/interface/ha/Updates-Dl_lLLR2.js +343 -0
  345. package/dist/interface/ha/VariableInput-C8Q81GUt.js +52 -0
  346. package/dist/interface/ha/VariableSuggestions-DXV2b7S4.js +201 -0
  347. package/dist/interface/ha/VersionsHandler-BOvjesvp.js +216 -0
  348. package/dist/interface/ha/VirtualSensorCreate-sgwATaky.js +101 -0
  349. package/dist/interface/ha/Workers-CkDuQ9NG.js +765 -0
  350. package/dist/interface/ha/accordion-Xem2SzgR.js +577 -0
  351. package/dist/interface/ha/account-DJh6O-cw.js +19 -0
  352. package/dist/interface/ha/alert-circle-C7oDe-WY.js +19 -0
  353. package/dist/interface/ha/alert-outline-FcLLjoOK.js +89 -0
  354. package/dist/interface/ha/api-BmYisoxj.js +62452 -0
  355. package/dist/interface/ha/api-oqpIZTkx.js +29 -0
  356. package/dist/interface/ha/arrow-left-OsxzW9Af.js +19 -0
  357. package/dist/interface/ha/assistant-0jE4C19U.js +345 -0
  358. package/dist/interface/ha/auth-B4Msg7R-.js +271 -0
  359. package/dist/interface/ha/autocomplete-B94Amei3.js +1373 -0
  360. package/dist/interface/ha/automationBlueprint-C-12Yjl7.js +250 -0
  361. package/dist/interface/ha/back-filled-CaxrZv0Q.js +20 -0
  362. package/dist/interface/ha/bell-ring-CBt11ejv.js +19 -0
  363. package/dist/interface/ha/brain-BiKXGva0.js +19 -0
  364. package/dist/interface/ha/button-BouAFgf5.js +406 -0
  365. package/dist/interface/ha/cameraui-cards.js +1 -1
  366. package/dist/interface/ha/cards-BrOcoiQJ.js +13352 -0
  367. package/dist/interface/ha/cctv-BD2g3nbO.js +19 -0
  368. package/dist/interface/ha/check-circle-B5OGJJIu.js +19 -0
  369. package/dist/interface/ha/check-circle-outline-DS7eEinv.js +19 -0
  370. package/dist/interface/ha/checkbox-CAKzZcqk.js +279 -0
  371. package/dist/interface/ha/chevron-down-BNj8w2js.js +19 -0
  372. package/dist/interface/ha/chevron-up-DDKj43BW.js +19 -0
  373. package/dist/interface/ha/chip-BTHURsTF.js +149 -0
  374. package/dist/interface/ha/clock-outline-DNStdM39.js +19 -0
  375. package/dist/interface/ha/close-CxFbonhd.js +19 -0
  376. package/dist/interface/ha/close-circle-DfYSNAKm.js +19 -0
  377. package/dist/interface/ha/cloud-check-aaxn1VZr.js +33 -0
  378. package/dist/interface/ha/config-IG56wp6m.js +116 -0
  379. package/dist/interface/ha/content-copy-CHPYjxRC.js +19 -0
  380. package/dist/interface/ha/copy-ApwNNqcL.js +22 -0
  381. package/dist/interface/ha/datepicker-B4Azs5zr.js +2961 -0
  382. package/dist/interface/ha/delete-DWdURc9X.js +19 -0
  383. package/dist/interface/ha/dist-C6MBHJhs.js +3251 -0
  384. package/dist/interface/ha/divider-DeFEXTGs.js +110 -0
  385. package/dist/interface/ha/dots-vertical-B0dv1-jL.js +19 -0
  386. package/dist/interface/ha/download-B64w9GvF.js +19 -0
  387. package/dist/interface/ha/eventIcons-BFNUgeGr.js +676 -0
  388. package/dist/interface/ha/eye-off-UG_p9nl8.js +33 -0
  389. package/dist/interface/ha/eye-off-outline-ACbzsGuK.js +19 -0
  390. package/dist/interface/ha/help-circle-outline-BniRuJRv.js +19 -0
  391. package/dist/interface/ha/history-XMyO_cLc.js +19 -0
  392. package/dist/interface/ha/home-36M6iydk.js +19 -0
  393. package/dist/interface/ha/information-outline-DSSRyysT.js +19 -0
  394. package/dist/interface/ha/inputicon-1w06U-Jl.js +324 -0
  395. package/dist/interface/ha/inputnumber-DZRwKgXr.js +1033 -0
  396. package/dist/interface/ha/inputtext-C_ygnPrC.js +257 -0
  397. package/dist/interface/ha/intercomService-B7HkLs6z.js +1414 -0
  398. package/dist/interface/ha/message-D6dIy_hz.js +244 -0
  399. package/dist/interface/ha/microphone-C4oQPpzp.js +19 -0
  400. package/dist/interface/ha/minus-Bp1AYyQv.js +46 -0
  401. package/dist/interface/ha/minus-D3V6azhV.js +19 -0
  402. package/dist/interface/ha/mqtt-pl13wSmG.js +56 -0
  403. package/dist/interface/ha/multiselect-Dp4XDBRR.js +1492 -0
  404. package/dist/interface/ha/notifications-B6wxSmou.js +159 -0
  405. package/dist/interface/ha/pause-BbFQ0FqK.js +19 -0
  406. package/dist/interface/ha/pencil-outline-SN9ingm5.js +19 -0
  407. package/dist/interface/ha/pinia-C6gt7A_Q.js +7641 -0
  408. package/dist/interface/ha/plugins-BwwaWxye.js +592 -0
  409. package/dist/interface/ha/plus-CgxY7W0L.js +19 -0
  410. package/dist/interface/ha/plus-brDoEzN2.js +46 -0
  411. package/dist/interface/ha/progressbar-CaUaM8Bt.js +95 -0
  412. package/dist/interface/ha/protocol-BB4jdtUC-DW3jl2tV.js +708 -0
  413. package/dist/interface/ha/radar-BG-Tcwg_.js +19 -0
  414. package/dist/interface/ha/refresh-CpjKkasY.js +19 -0
  415. package/dist/interface/ha/restore-BxzmXRET.js +19 -0
  416. package/dist/interface/ha/ring-resize-Dr2PxWIg.js +16 -0
  417. package/dist/interface/ha/ripple-ZDATPc2w.js +2928 -0
  418. package/dist/interface/ha/rooms-NIzjFYAd.js +45 -0
  419. package/dist/interface/ha/round-alt-arrow-left-bold-DDy2dLUM.js +37 -0
  420. package/dist/interface/ha/runtime-core.esm-bundler-_TfE0DWz.js +3306 -0
  421. package/dist/interface/ha/search-BViwEHdF.js +19 -0
  422. package/dist/interface/ha/select-UR3ZRDew.js +1382 -0
  423. package/dist/interface/ha/server-YOLwDVAW.js +239 -0
  424. package/dist/interface/ha/settings-lWJfHaif.js +22 -0
  425. package/dist/interface/ha/source-branch-C2kcmBcO.js +19 -0
  426. package/dist/interface/ha/speeddial-LCbl5g8p.js +682 -0
  427. package/dist/interface/ha/spinner-DIILjDT9.js +46 -0
  428. package/dist/interface/ha/tag-mchuCAPR.js +95 -0
  429. package/dist/interface/ha/textarea-ByXnzJzx.js +130 -0
  430. package/dist/interface/ha/tooltip-Z7VN-E1u.js +277 -0
  431. package/dist/interface/ha/trash-2-pgydLlch.js +23 -0
  432. package/dist/interface/ha/trash-can-outline-CBwv40Ck.js +19 -0
  433. package/dist/interface/ha/trash-fill-TFkvFuRj.js +21 -0
  434. package/dist/interface/ha/types-B8B9MqK0.js +1062 -0
  435. package/dist/interface/ha/types-XqA3YJPD.js +123 -0
  436. package/dist/interface/ha/ungrouped-DttNEB62.js +1320 -0
  437. package/dist/interface/ha/updates-DVhiQhMM.js +341 -0
  438. package/dist/interface/ha/upload-B-9Mumdm.js +19 -0
  439. package/dist/interface/ha/upload-BF0iIQFa.js +23 -0
  440. package/dist/interface/ha/useAppVersion-CG4D44Aa.js +22 -0
  441. package/dist/interface/ha/useAssistantActions-S1FrNe9b.js +29 -0
  442. package/dist/interface/ha/useLogsSocket-PKsRDttg.js +59 -0
  443. package/dist/interface/ha/useNavLayout-DoEcPx9Z.js +125 -0
  444. package/dist/interface/ha/usePermissions-DaE_wFch.js +72 -0
  445. package/dist/interface/ha/useServerRestart-CMl589qX.js +23 -0
  446. package/dist/interface/ha/useTabSwipe-Cmqdn0J5.js +45 -0
  447. package/dist/interface/ha/useUpdateChannel-BBW2EX7N.js +22 -0
  448. package/dist/interface/ha/useUpdatesSocket-B6ICpKKC.js +34 -0
  449. package/dist/interface/ha/useUserOptions-CzclRfar.js +15 -0
  450. package/dist/interface/ha/virtualscroller-C5j7FXj4.js +996 -0
  451. package/dist/interface/ha/vue-flow-background-8ZUqhPBF.js +6835 -0
  452. package/dist/interface/ha/vue-i18n-D5EAy78K.js +2422 -0
  453. package/dist/interface/ha/zoom-in-BCxZo2jC.js +41 -0
  454. package/dist/interface/index.html +68 -68
  455. package/dist/interface/sw.js +1 -1
  456. package/dist/server/package.json +16 -16
  457. package/dist/server/requirements.txt +2 -2
  458. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/streaming.py +4 -0
  459. package/dist/server/src/api/controllers/cameras.controller.d.ts +1 -1
  460. package/dist/server/src/api/controllers/cameras.controller.js +5 -1
  461. package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
  462. package/dist/server/src/api/controllers/shares.controller.js +2 -2
  463. package/dist/server/src/api/controllers/shares.controller.js.map +1 -1
  464. package/dist/server/src/api/services/cameras.service.d.ts +1 -0
  465. package/dist/server/src/api/services/cameras.service.js +21 -20
  466. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  467. package/dist/server/src/api/services/shares.service.d.ts +4 -2
  468. package/dist/server/src/api/services/shares.service.js +9 -11
  469. package/dist/server/src/api/services/shares.service.js.map +1 -1
  470. package/dist/server/src/api/websocket/nsp/main.d.ts +7 -2
  471. package/dist/server/src/api/websocket/nsp/main.js +38 -18
  472. package/dist/server/src/api/websocket/nsp/main.js.map +1 -1
  473. package/dist/server/src/api/websocket/nsp/metrics.d.ts +4 -0
  474. package/dist/server/src/api/websocket/nsp/metrics.js +33 -0
  475. package/dist/server/src/api/websocket/nsp/metrics.js.map +1 -1
  476. package/dist/server/src/api/websocket/types.d.ts +9 -0
  477. package/dist/server/src/assistant/tools/system.js +6 -9
  478. package/dist/server/src/assistant/tools/system.js.map +1 -1
  479. package/dist/server/src/camera/controller.d.ts +7 -3
  480. package/dist/server/src/camera/controller.js +88 -68
  481. package/dist/server/src/camera/controller.js.map +1 -1
  482. package/dist/server/src/camera/utils.d.ts +5 -4
  483. package/dist/server/src/camera/utils.js +69 -307
  484. package/dist/server/src/camera/utils.js.map +1 -1
  485. package/dist/server/src/go2rtc/api/routes/streams.d.ts +1 -2
  486. package/dist/server/src/go2rtc/api/routes/streams.js +0 -7
  487. package/dist/server/src/go2rtc/api/routes/streams.js.map +1 -1
  488. package/dist/server/src/go2rtc/index.js +2 -0
  489. package/dist/server/src/go2rtc/index.js.map +1 -1
  490. package/dist/server/src/go2rtc/state.d.ts +66 -0
  491. package/dist/server/src/go2rtc/state.js +194 -0
  492. package/dist/server/src/go2rtc/state.js.map +1 -0
  493. package/dist/server/src/go2rtc/stream-rates.d.ts +12 -0
  494. package/dist/server/src/go2rtc/stream-rates.js +44 -0
  495. package/dist/server/src/go2rtc/stream-rates.js.map +1 -0
  496. package/dist/server/src/go2rtc/types.d.ts +23 -0
  497. package/dist/server/src/go2rtc/types.js.map +1 -1
  498. package/dist/server/src/main.d.ts +1 -0
  499. package/dist/server/src/main.js +3 -0
  500. package/dist/server/src/main.js.map +1 -1
  501. package/package.json +16 -16
  502. package/dist/interface/assets/404-6ZpTZ3KD.js +0 -1
  503. package/dist/interface/assets/About-DNvcZ3EY.js +0 -1
  504. package/dist/interface/assets/Assistant-kFFjOesz.js +0 -1
  505. package/dist/interface/assets/Automation-DPH-VMGf.js +0 -3
  506. package/dist/interface/assets/AutomationImport-Db74ZBgg.js +0 -2
  507. package/dist/interface/assets/AutomationStore-CFnapdvO.js +0 -2
  508. package/dist/interface/assets/AutomationStoreDetail-BCmfVMtC.js +0 -2
  509. package/dist/interface/assets/Automations-D41at64b.js +0 -2
  510. package/dist/interface/assets/Camera-BhFx-a1S.js +0 -2
  511. package/dist/interface/assets/CameraConsole-C89mOigo.js +0 -7
  512. package/dist/interface/assets/Cameras-TiX75P_R.js +0 -651
  513. package/dist/interface/assets/Camview-Bs3Ze0VB.js +0 -1
  514. package/dist/interface/assets/CertificateUpload-DBfJBo-w.js +0 -1
  515. package/dist/interface/assets/Config-CiCqmjhC.js +0 -2
  516. package/dist/interface/assets/ConfigActionAssistant-DCW9F-o_.js +0 -1
  517. package/dist/interface/assets/ConfigActionCameraControl-V170tTXG.js +0 -1
  518. package/dist/interface/assets/ConfigActionDelay-D1CZOls9.js +0 -1
  519. package/dist/interface/assets/ConfigActionHttp-ZOsjh7jZ.js +0 -1
  520. package/dist/interface/assets/ConfigActionImageInput-Dq5NtDno.js +0 -1
  521. package/dist/interface/assets/ConfigActionMqtt-Cyk0f9mh.js +0 -1
  522. package/dist/interface/assets/ConfigActionNotification-Ca6IygV-.js +0 -1
  523. package/dist/interface/assets/ConfigActionNotificationControl-CCiWBmJq.js +0 -1
  524. package/dist/interface/assets/ConfigActionOutput-B4zPAsNS.js +0 -1
  525. package/dist/interface/assets/ConfigActionPlugin-C25suoOA.js +0 -1
  526. package/dist/interface/assets/ConfigActionSensor-CgIBk5qS.js +0 -1
  527. package/dist/interface/assets/ConfigActionSnapshot-Dj4_bcR-.js +0 -1
  528. package/dist/interface/assets/ConfigActionVariable-CDlIj4Ji.js +0 -1
  529. package/dist/interface/assets/ConfigConditionIfElse-B9Q2pZxM.js +0 -1
  530. package/dist/interface/assets/ConfigConditionSensorState-DrOBPrDB.js +0 -1
  531. package/dist/interface/assets/ConfigConditionSwitch-BdfA75Z4.js +0 -1
  532. package/dist/interface/assets/ConfigConditionTime-CCpFkanY.js +0 -1
  533. package/dist/interface/assets/ConfigSensorValueInput-B7Qc06SA.js +0 -1
  534. package/dist/interface/assets/ConfigTriggerDetection-QOLhT23F.js +0 -1
  535. package/dist/interface/assets/ConfigTriggerGeofence-HUhmtzd_.js +0 -1
  536. package/dist/interface/assets/ConfigTriggerManual-Bpyy9Jzz.js +0 -1
  537. package/dist/interface/assets/ConfigTriggerMqtt-wxB4LtkP.js +0 -1
  538. package/dist/interface/assets/ConfigTriggerSchedule-D7X5Oa5t.js +0 -1
  539. package/dist/interface/assets/ConfigTriggerSensor-DM7qewdx.js +0 -1
  540. package/dist/interface/assets/ConfigTriggerSystem-CK573JKn.js +0 -1
  541. package/dist/interface/assets/ConfigTriggerWebhook-yoouSRHG.js +0 -1
  542. package/dist/interface/assets/Console-BCL2lVJv.js +0 -1
  543. package/dist/interface/assets/CuiAssistantConversation-BmjsGo2l.js +0 -5
  544. package/dist/interface/assets/CuiAutomationRunsDialog-BFZjtF9o.js +0 -1
  545. package/dist/interface/assets/CuiBottomSheet-CVHz2Vrq.js +0 -1
  546. package/dist/interface/assets/CuiBottomSheet-DLtu4FrC.js +0 -1
  547. package/dist/interface/assets/CuiCameraPipCard-BGZQsVHc.js +0 -1
  548. package/dist/interface/assets/CuiCameraRecordings-5pcLjdf8.js +0 -1
  549. package/dist/interface/assets/CuiCameraShares-CNNvqXns.js +0 -1
  550. package/dist/interface/assets/CuiCameraTable-BDN5NGr2.js +0 -1
  551. package/dist/interface/assets/CuiCameraTable-DF_IOFyD.js +0 -2
  552. package/dist/interface/assets/CuiChartTable-rOLdUaOa.js +0 -1
  553. package/dist/interface/assets/CuiConsole-B75tQO-y.js +0 -5
  554. package/dist/interface/assets/CuiDataTable-C8ZywwaZ.js +0 -1
  555. package/dist/interface/assets/CuiLightControl-D6PaG8aL.js +0 -1
  556. package/dist/interface/assets/CuiList-B8wJe291.js +0 -1
  557. package/dist/interface/assets/CuiMarkdownContent-D-S1LZy3.js +0 -1
  558. package/dist/interface/assets/CuiMarkdownContent-yHrnDzQd.js +0 -1
  559. package/dist/interface/assets/CuiPluginCard-aGMkvpeM.js +0 -2
  560. package/dist/interface/assets/CuiPluginCategoryChip-BCgADU71.js +0 -1
  561. package/dist/interface/assets/CuiPluginOAuthButton-mrm1vDAP.js +0 -2
  562. package/dist/interface/assets/CuiPluginTrustBadge-J3818in1.js +0 -1
  563. package/dist/interface/assets/CuiQRCode-Dv4w0udN.js +0 -1
  564. package/dist/interface/assets/CuiSchema-Cn5geGt7.js +0 -1
  565. package/dist/interface/assets/CuiTopNavbarItem-cP_SiDnw.js +0 -1
  566. package/dist/interface/assets/Faces-b611-5Ep.js +0 -1
  567. package/dist/interface/assets/FirstSteps-DcVdjoXr.js +0 -1
  568. package/dist/interface/assets/Floorplan-CZu7D3L2.js +0 -1
  569. package/dist/interface/assets/Instances-BGM2M_vr.js +0 -1
  570. package/dist/interface/assets/Logs-BXDALPw6.js +0 -6
  571. package/dist/interface/assets/Menu-DV63hDK5.js +0 -1
  572. package/dist/interface/assets/Metrics-CrojTUIw.js +0 -9
  573. package/dist/interface/assets/Metrics-Ebv4qK2a.css +0 -1
  574. package/dist/interface/assets/OAuthDeviceFlow-E2q5BNUN.js +0 -1
  575. package/dist/interface/assets/Plugin-BFovKMPD.js +0 -1
  576. package/dist/interface/assets/PluginConsole-BLG5Srww.js +0 -7
  577. package/dist/interface/assets/PluginDetail-Dghf_z9y.js +0 -2
  578. package/dist/interface/assets/PluginSchema-C3u0PCYu.js +0 -1
  579. package/dist/interface/assets/PluginSearch-DQb6r45_.js +0 -1
  580. package/dist/interface/assets/PluginSearch-XaJOsyFA.js +0 -2
  581. package/dist/interface/assets/PluginUpdateProgress-tMIWjHFs.js +0 -1
  582. package/dist/interface/assets/Plugins-DgKXf65s.js +0 -1
  583. package/dist/interface/assets/RecentEventsFilter-DlzWA8QR.js +0 -1
  584. package/dist/interface/assets/Recordings-DC47F4WC.js +0 -1
  585. package/dist/interface/assets/SensorEdit-BDeJ0tjj.js +0 -1
  586. package/dist/interface/assets/SensorHistory-C8oPVJEX.js +0 -1
  587. package/dist/interface/assets/Sensors-C29BBaNa.js +0 -2
  588. package/dist/interface/assets/Settings-bn3Pokuq.js +0 -1
  589. package/dist/interface/assets/SettingsAccount-B-SSNfmo.js +0 -1
  590. package/dist/interface/assets/SettingsAccount-BXClgcHw.js +0 -1
  591. package/dist/interface/assets/SettingsAppearance-1KCm8sJO.js +0 -1
  592. package/dist/interface/assets/SettingsAppearance-C5rHbPxY.js +0 -1
  593. package/dist/interface/assets/SettingsAssistant-ndgpk0jF.js +0 -1
  594. package/dist/interface/assets/SettingsBackup-Cw0OoGGY.js +0 -1
  595. package/dist/interface/assets/SettingsList--FB27rY6.js +0 -1
  596. package/dist/interface/assets/SettingsMqtt-DrHwxyfj.js +0 -1
  597. package/dist/interface/assets/SettingsNotifications-CHFxYyBM.js +0 -1
  598. package/dist/interface/assets/SettingsPermissions-CtR3k4N9.js +0 -1
  599. package/dist/interface/assets/SettingsRecordings-YTMBWiO2.js +0 -1
  600. package/dist/interface/assets/SettingsRemote-DTZo7Tnk.js +0 -2
  601. package/dist/interface/assets/SettingsSystem-C9L3_BPg.js +0 -2
  602. package/dist/interface/assets/SettingsUsers-BK6d7cMj.js +0 -1
  603. package/dist/interface/assets/Terminal-DWa4f8GL.js +0 -4
  604. package/dist/interface/assets/Training-BsgWYOlp.js +0 -1
  605. package/dist/interface/assets/Updates-CSvohiVI.js +0 -2
  606. package/dist/interface/assets/VariableInput-CiWT5dul.js +0 -1
  607. package/dist/interface/assets/VariableSuggestions-pbXYBWuw.js +0 -1
  608. package/dist/interface/assets/VersionsHandler-BE-YNUTe.js +0 -7
  609. package/dist/interface/assets/VirtualSensorCreate-Ba4XwvcD.js +0 -1
  610. package/dist/interface/assets/Workers-BtHqRqzx.js +0 -2
  611. package/dist/interface/assets/account-BxoX10XU.js +0 -1
  612. package/dist/interface/assets/alert-circle-pr3uC6jZ.js +0 -1
  613. package/dist/interface/assets/alert-outline-DHaYL1DY.js +0 -1
  614. package/dist/interface/assets/api--1J-SAjn.js +0 -1
  615. package/dist/interface/assets/api-C7-TgfI0.js +0 -4
  616. package/dist/interface/assets/api-DcaDMCnj.css +0 -2
  617. package/dist/interface/assets/arrow-left-5ht64ZGB.js +0 -1
  618. package/dist/interface/assets/assistant-Cl_fhAuJ.js +0 -1
  619. package/dist/interface/assets/assistantModels-DPcZCyld.js +0 -1
  620. package/dist/interface/assets/auth-CbzQl7TC.js +0 -1
  621. package/dist/interface/assets/automations-tJ_M8mwQ.js +0 -1
  622. package/dist/interface/assets/back-filled-BncmhmK7.js +0 -1
  623. package/dist/interface/assets/bell-ring-BrHmFuCb.js +0 -1
  624. package/dist/interface/assets/brain-DbFpT7Cq.js +0 -1
  625. package/dist/interface/assets/cameraSources-BoPq2cHU.js +0 -1
  626. package/dist/interface/assets/cctv-DO-BmfXS.js +0 -1
  627. package/dist/interface/assets/check-circle-DefdZO6b.js +0 -1
  628. package/dist/interface/assets/check-circle-outline-DLeND8yu.js +0 -1
  629. package/dist/interface/assets/chevron-down-COQqnpYB.js +0 -1
  630. package/dist/interface/assets/chevron-up-D1Xd7VoH.js +0 -1
  631. package/dist/interface/assets/clock-outline-DLIhBBQh.js +0 -1
  632. package/dist/interface/assets/close-C_pY8d5W.js +0 -1
  633. package/dist/interface/assets/close-circle-CUM5zI7N.js +0 -1
  634. package/dist/interface/assets/cloud-check-CqURJGod.js +0 -1
  635. package/dist/interface/assets/cloudHandoff-U-ME7kxo.js +0 -1
  636. package/dist/interface/assets/config-ConCokYZ.js +0 -1
  637. package/dist/interface/assets/content-copy-M0zk9eVL.js +0 -1
  638. package/dist/interface/assets/copy-DbP_BYcc.js +0 -1
  639. package/dist/interface/assets/cube-scan-DUOB_hmY.js +0 -1
  640. package/dist/interface/assets/delete-rtnOkwr8.js +0 -1
  641. package/dist/interface/assets/dist-Ce8wBKXN.js +0 -1
  642. package/dist/interface/assets/dots-vertical-BBZiQrJI.js +0 -1
  643. package/dist/interface/assets/download-CV7ETeuV.js +0 -1
  644. package/dist/interface/assets/esm-B0uV7sCS.js +0 -1
  645. package/dist/interface/assets/esm-B2yI2eHV.js +0 -1
  646. package/dist/interface/assets/esm-BGznyI26.js +0 -1
  647. package/dist/interface/assets/esm-BU06bvS2.js +0 -1
  648. package/dist/interface/assets/esm-CDZvvPo-.js +0 -1
  649. package/dist/interface/assets/esm-CQhKa6pe.js +0 -1
  650. package/dist/interface/assets/esm-C_cunepi.js +0 -1
  651. package/dist/interface/assets/esm-D7Wl3e71.js +0 -1
  652. package/dist/interface/assets/esm-DF51BosK.js +0 -1
  653. package/dist/interface/assets/esm-DGnwYAQM.js +0 -1
  654. package/dist/interface/assets/esm-DOPi7vcu.js +0 -1
  655. package/dist/interface/assets/esm-DhUjXDgk.js +0 -1
  656. package/dist/interface/assets/esm-Dy2zOjxI.js +0 -1
  657. package/dist/interface/assets/esm-kUcKqIWx.js +0 -1
  658. package/dist/interface/assets/eventIcons-CCFi3Fbj.js +0 -1
  659. package/dist/interface/assets/eye-off-CvhN3zxZ.js +0 -1
  660. package/dist/interface/assets/eye-off-outline-CCqCZfJ6.js +0 -1
  661. package/dist/interface/assets/flowSchema-CmXSZKQe.js +0 -1
  662. package/dist/interface/assets/help-circle-outline-CQl2D4oN.js +0 -1
  663. package/dist/interface/assets/history-BXFIMe6V.js +0 -1
  664. package/dist/interface/assets/home-D7fG7atW.js +0 -1
  665. package/dist/interface/assets/information-outline-1WzSLz5m.js +0 -1
  666. package/dist/interface/assets/intercomService-DyUZK0Im.js +0 -1
  667. package/dist/interface/assets/lan-CbNzy3jQ.js +0 -1
  668. package/dist/interface/assets/main-D4ZrTpOr.js +0 -3
  669. package/dist/interface/assets/microphone-CRLenDoX.js +0 -1
  670. package/dist/interface/assets/minus-COYpQ3vD.js +0 -1
  671. package/dist/interface/assets/mqtt-C_RLsZgN.js +0 -1
  672. package/dist/interface/assets/native-Chu05rXa.js +0 -1
  673. package/dist/interface/assets/native-DtAgV_35.js +0 -1
  674. package/dist/interface/assets/nodeDefinitions-DgM5EMJ0.js +0 -1
  675. package/dist/interface/assets/notifications-B8VdKX2U.js +0 -1
  676. package/dist/interface/assets/pause-DvYzloru.js +0 -1
  677. package/dist/interface/assets/pencil-Cd5KnMGq.js +0 -1
  678. package/dist/interface/assets/pencil-outline-BiVfpCP6.js +0 -1
  679. package/dist/interface/assets/plugin-CWPz0s-n.js +0 -1
  680. package/dist/interface/assets/plugins-CqWe1lUn.js +0 -1
  681. package/dist/interface/assets/plus-CjwCt143.js +0 -1
  682. package/dist/interface/assets/plus-IEiNd6x0.js +0 -1
  683. package/dist/interface/assets/power-C4NWLKUx.js +0 -1
  684. package/dist/interface/assets/radar-DBqhxkLO.js +0 -1
  685. package/dist/interface/assets/refresh-DBLQ62l4.js +0 -1
  686. package/dist/interface/assets/restore-mXNfiEUq.js +0 -1
  687. package/dist/interface/assets/ring-resize-DrTdJJZT.js +0 -1
  688. package/dist/interface/assets/rooms-CIxV7WRD.js +0 -1
  689. package/dist/interface/assets/round-alt-arrow-left-bold-BlJgH1Gs.js +0 -1
  690. package/dist/interface/assets/search-CGxnUtuo.js +0 -1
  691. package/dist/interface/assets/sensorIcons-CtsJEtFd.js +0 -1
  692. package/dist/interface/assets/sensorSlots-B0rJeEuw.js +0 -1
  693. package/dist/interface/assets/sensors-CyseZmxe.js +0 -1
  694. package/dist/interface/assets/server-BvOtzDbz.js +0 -1
  695. package/dist/interface/assets/settings-wlG-pPuL.js +0 -1
  696. package/dist/interface/assets/source-branch-AyOkkO8S.js +0 -1
  697. package/dist/interface/assets/theme-CqKA1ClW.js +0 -1
  698. package/dist/interface/assets/trash-2-BKLI42HM.js +0 -1
  699. package/dist/interface/assets/trash-can-outline-BFiV5RfR.js +0 -1
  700. package/dist/interface/assets/trash-fill-hfLSPgsP.js +0 -1
  701. package/dist/interface/assets/trash2-lr9UJJWi.js +0 -1
  702. package/dist/interface/assets/types-48CQutaE.js +0 -1
  703. package/dist/interface/assets/types-BRmIeoRR.js +0 -1
  704. package/dist/interface/assets/types-BlFbLEIJ.js +0 -1
  705. package/dist/interface/assets/undo-nleJllpv.js +0 -1
  706. package/dist/interface/assets/ungrouped-D4Eyspkn.js +0 -1
  707. package/dist/interface/assets/updates-iwZh9X-d.js +0 -1
  708. package/dist/interface/assets/upload-1FIs_qFI.js +0 -1
  709. package/dist/interface/assets/upload-BOBHxpZk.js +0 -1
  710. package/dist/interface/assets/useAppVersion-m7hrV2QZ.js +0 -1
  711. package/dist/interface/assets/useAssistantActions-BY-FVxFl.js +0 -1
  712. package/dist/interface/assets/useBackupRestore-BJSrIE1j.js +0 -1
  713. package/dist/interface/assets/useCameraOptions-U3cPq_8f.js +0 -1
  714. package/dist/interface/assets/useKeyboardInset-Ce6esuI4.js +0 -1
  715. package/dist/interface/assets/useLogsSocket-BprgpXs0.js +0 -1
  716. package/dist/interface/assets/useNavLayout-DKsBYcN-.js +0 -1
  717. package/dist/interface/assets/usePermissions-MJCC2mYf.js +0 -1
  718. package/dist/interface/assets/usePluginUpdates-DaoikUxc.js +0 -1
  719. package/dist/interface/assets/usePushRegistration-MBn4GqtF.js +0 -2
  720. package/dist/interface/assets/useServerRestart-_gMUanhL.js +0 -1
  721. package/dist/interface/assets/useStreamStatus-C1aDump3.js +0 -1
  722. package/dist/interface/assets/useTabSwipe-SnHqt6pf.js +0 -1
  723. package/dist/interface/assets/useUpdateChannel-BpYMuseR.js +0 -1
  724. package/dist/interface/assets/useUpdatesSocket-8rAwSOk0.js +0 -1
  725. package/dist/interface/assets/useUserOptions-BWz8j6Bt.js +0 -1
  726. package/dist/interface/assets/variable-BH_88zve.js +0 -1
  727. package/dist/interface/assets/vendor-CFZm55ei.js +0 -23
  728. package/dist/interface/assets/vendor-cameraui-DTALowLr.js +0 -2326
  729. package/dist/interface/assets/vendor-capacitor-NUBkdqQG.js +0 -2
  730. package/dist/interface/assets/vendor-chart-BQ9z8Beo.js +0 -3
  731. package/dist/interface/assets/vendor-core-DF66V0xE.js +0 -1
  732. package/dist/interface/assets/vendor-dnd-55LKiquc.js +0 -2
  733. package/dist/interface/assets/vendor-draggabilly-C2H7F3yh.js +0 -1
  734. package/dist/interface/assets/vendor-markdown-CvrBrdq-.js +0 -14
  735. package/dist/interface/assets/vendor-primevue-CpTHHdUJ.js +0 -3942
  736. package/dist/interface/assets/vendor-vueflow-DGnDS4SG.js +0 -26
  737. package/dist/interface/assets/web-1T-T_0WZ.js +0 -1
  738. package/dist/interface/assets/web-62WbTjlc.js +0 -1
  739. package/dist/interface/assets/web-BjKL51lK-6pj2Scsz.js +0 -1
  740. package/dist/interface/assets/web-BtY56waW.js +0 -1
  741. package/dist/interface/assets/web-Bv7Xkik0.js +0 -1
  742. package/dist/interface/assets/web-BvBEXTJW.js +0 -1
  743. package/dist/interface/assets/web-CFeS7fH5.js +0 -1
  744. package/dist/interface/assets/web-CUtMdd2B.js +0 -1
  745. package/dist/interface/assets/web-D6yoMUkZ.js +0 -1
  746. package/dist/interface/assets/web-DIOYyMNl.js +0 -1
  747. package/dist/interface/assets/web-D_hRP2qx.js +0 -1
  748. package/dist/interface/assets/web-DsY8tWI-.js +0 -1
  749. package/dist/interface/assets/web-DvetlpoV.js +0 -1
  750. package/dist/interface/assets/web-kt-Rh6Kp.js +0 -1
  751. package/dist/interface/assets/webhook-JRvzS9ld.js +0 -1
  752. package/dist/interface/assets/workbox-window.prod.es5-Bd3XD_Q4.js +0 -1
  753. package/dist/interface/assets/zoom-in-CWYu7bwA.js +0 -1
  754. package/dist/interface/ha/404-m6-uXJZq.js +0 -60
  755. package/dist/interface/ha/About-CNVuMwKe.js +0 -55
  756. package/dist/interface/ha/Assistant-C8ffhO3m.js +0 -9107
  757. package/dist/interface/ha/Automation-C6tJrgcC.js +0 -2025
  758. package/dist/interface/ha/AutomationImport-DH1bdVRV.js +0 -206
  759. package/dist/interface/ha/AutomationStore-Ckn6ExG6.js +0 -336
  760. package/dist/interface/ha/AutomationStoreDetail-BDXaoPzo.js +0 -122
  761. package/dist/interface/ha/Automations-B5uu-r94.js +0 -424
  762. package/dist/interface/ha/Camera-B4CwxT3A.js +0 -654
  763. package/dist/interface/ha/CameraConsole-BzaY7lMs.js +0 -52
  764. package/dist/interface/ha/Cameras-B1vU95xU.js +0 -1970
  765. package/dist/interface/ha/Camview-BcgBR-RV.js +0 -1331
  766. package/dist/interface/ha/CertificateUpload-BqyveJeF.js +0 -117
  767. package/dist/interface/ha/Config-C81MLCdk.js +0 -356
  768. package/dist/interface/ha/ConfigActionAssistant-DQfehzH6.js +0 -182
  769. package/dist/interface/ha/ConfigActionCameraControl-C3MnsSHv.js +0 -152
  770. package/dist/interface/ha/ConfigActionDelay-CQDVG521.js +0 -61
  771. package/dist/interface/ha/ConfigActionHttp-VqM0i3cV.js +0 -134
  772. package/dist/interface/ha/ConfigActionImageInput-D7Maj3R-.js +0 -171
  773. package/dist/interface/ha/ConfigActionMqtt-Cm51kwWp.js +0 -81
  774. package/dist/interface/ha/ConfigActionNotification-L5oaXgIQ.js +0 -199
  775. package/dist/interface/ha/ConfigActionNotificationControl-DUa2iWvF.js +0 -111
  776. package/dist/interface/ha/ConfigActionOutput-6e9FLeyi.js +0 -98
  777. package/dist/interface/ha/ConfigActionPlugin-DfWMHSOu.js +0 -172
  778. package/dist/interface/ha/ConfigActionSensor-KMyKW8a4.js +0 -139
  779. package/dist/interface/ha/ConfigActionSnapshot-BXUyBDrZ.js +0 -48
  780. package/dist/interface/ha/ConfigActionVariable-5gjlEinD.js +0 -88
  781. package/dist/interface/ha/ConfigConditionIfElse-KVINr4wM.js +0 -124
  782. package/dist/interface/ha/ConfigConditionSensorState-DfA7Z-rZ.js +0 -192
  783. package/dist/interface/ha/ConfigConditionSwitch-MMBCtsCG.js +0 -128
  784. package/dist/interface/ha/ConfigConditionTime-BFHFgE8n.js +0 -95
  785. package/dist/interface/ha/ConfigSensorValueInput-BGPONs-v.js +0 -170
  786. package/dist/interface/ha/ConfigTriggerDetection-Bl5RLc9-.js +0 -241
  787. package/dist/interface/ha/ConfigTriggerGeofence-C2P-lZvJ.js +0 -4888
  788. package/dist/interface/ha/ConfigTriggerManual-BHrZRxUA.js +0 -14
  789. package/dist/interface/ha/ConfigTriggerMqtt-DxE9E_We.js +0 -134
  790. package/dist/interface/ha/ConfigTriggerSchedule-DBaslXZn.js +0 -72
  791. package/dist/interface/ha/ConfigTriggerSensor-BW6R5G1E.js +0 -73
  792. package/dist/interface/ha/ConfigTriggerSystem-WTcomTVB.js +0 -192
  793. package/dist/interface/ha/ConfigTriggerWebhook-BuweCREC.js +0 -94
  794. package/dist/interface/ha/Console--3yf5q4a.js +0 -348
  795. package/dist/interface/ha/CuiAutomationRunsDialog-Bjx5DXXc.js +0 -130
  796. package/dist/interface/ha/CuiBottomSheet-CUWIERuK.js +0 -270
  797. package/dist/interface/ha/CuiCameraRecordings-DDBEVW_L.js +0 -552
  798. package/dist/interface/ha/CuiCameraShares-BaPKNvSs.js +0 -121
  799. package/dist/interface/ha/CuiCameraTable-CA7TQUBj.js +0 -153
  800. package/dist/interface/ha/CuiChartTable-Cjck-ymw.js +0 -6786
  801. package/dist/interface/ha/CuiConsole-4y2SrBqu.js +0 -244
  802. package/dist/interface/ha/CuiDataTable-3tEK7pxb.js +0 -8732
  803. package/dist/interface/ha/CuiList-1RbiYIWw.js +0 -57
  804. package/dist/interface/ha/CuiMarkdownContent-CU4eGw6l.js +0 -4724
  805. package/dist/interface/ha/CuiPluginCard-BfRbo1oT.js +0 -769
  806. package/dist/interface/ha/CuiPluginOAuthButton-DcZ5KJTX.js +0 -79
  807. package/dist/interface/ha/CuiPluginTrustBadge-DG9TJtBN.js +0 -123
  808. package/dist/interface/ha/CuiQRCode-D_pWqA6W.js +0 -86
  809. package/dist/interface/ha/CuiSchema-BYnQRNtd.js +0 -963
  810. package/dist/interface/ha/CuiTopNavbarItem-BLPX9F5P.js +0 -141
  811. package/dist/interface/ha/Faces-Do8dklvm.js +0 -1282
  812. package/dist/interface/ha/FirstSteps-1jyVgIMo.js +0 -251
  813. package/dist/interface/ha/Floorplan-DqpGLQc-.js +0 -3657
  814. package/dist/interface/ha/Instances-ChgYCEv4.js +0 -680
  815. package/dist/interface/ha/Logs-Dhi1-h8b.js +0 -418
  816. package/dist/interface/ha/Menu-C6ZrgRfI.js +0 -156
  817. package/dist/interface/ha/Metrics-BNTz7Ktd.js +0 -1335
  818. package/dist/interface/ha/OAuthDeviceFlow-DjWARnbi.js +0 -112
  819. package/dist/interface/ha/Plugin-juDjFBUz.js +0 -1405
  820. package/dist/interface/ha/PluginConsole-DqwmWMS6.js +0 -56
  821. package/dist/interface/ha/PluginDetail-Dg0s42Rn.js +0 -230
  822. package/dist/interface/ha/PluginSearch-CER_e1EL.js +0 -462
  823. package/dist/interface/ha/PluginUpdateProgress-D3viAJ-T.js +0 -34
  824. package/dist/interface/ha/Plugins-D6Q_xWx9.js +0 -692
  825. package/dist/interface/ha/RecentEventsFilter-DXlTE7iI.js +0 -79
  826. package/dist/interface/ha/Recordings-BEb8EGDn.js +0 -1498
  827. package/dist/interface/ha/SensorEdit-BjGyc2MJ.js +0 -1462
  828. package/dist/interface/ha/SensorHistory-Dm4WiNdC.js +0 -54
  829. package/dist/interface/ha/Sensors-5vAka-K6.js +0 -1386
  830. package/dist/interface/ha/Settings-Cb4v7LRJ.js +0 -218
  831. package/dist/interface/ha/SettingsAccount-DeZOlBDQ.js +0 -971
  832. package/dist/interface/ha/SettingsAppearance-CDyMzncv.js +0 -220
  833. package/dist/interface/ha/SettingsAssistant-DqGnG1RI.js +0 -1857
  834. package/dist/interface/ha/SettingsBackup-BnqZ-qlE.js +0 -556
  835. package/dist/interface/ha/SettingsList-CAIX3jD9.js +0 -40
  836. package/dist/interface/ha/SettingsMqtt-Dxqjg4OT.js +0 -526
  837. package/dist/interface/ha/SettingsNotifications-PAst5uDP.js +0 -529
  838. package/dist/interface/ha/SettingsPermissions-DFbjoUf-.js +0 -84
  839. package/dist/interface/ha/SettingsRecordings-GwPkWVQl.js +0 -152
  840. package/dist/interface/ha/SettingsRemote-CzYyIfWg.js +0 -1810
  841. package/dist/interface/ha/SettingsSystem-BC8IIFe2.js +0 -376
  842. package/dist/interface/ha/SettingsUsers-DS6HTws4.js +0 -379
  843. package/dist/interface/ha/Terminal-DHXMgeMz.js +0 -617
  844. package/dist/interface/ha/Training-CBSlZKBT.js +0 -1505
  845. package/dist/interface/ha/Updates-DTod9Jwm.js +0 -343
  846. package/dist/interface/ha/VariableInput-CuhqW4K7.js +0 -52
  847. package/dist/interface/ha/VariableSuggestions-D15u2aH6.js +0 -201
  848. package/dist/interface/ha/VersionsHandler-Bafq9Ej7.js +0 -216
  849. package/dist/interface/ha/VirtualSensorCreate-DCc5pfdG.js +0 -101
  850. package/dist/interface/ha/Workers-BFJWJvkK.js +0 -765
  851. package/dist/interface/ha/accordion-X9Wa7KVq.js +0 -577
  852. package/dist/interface/ha/account-DLg459mU.js +0 -19
  853. package/dist/interface/ha/alert-circle-CSp7J0pZ.js +0 -19
  854. package/dist/interface/ha/alert-outline-BssBb-kV.js +0 -89
  855. package/dist/interface/ha/api-CMboY32E.js +0 -62432
  856. package/dist/interface/ha/api-CibPJ53n.js +0 -29
  857. package/dist/interface/ha/arrow-left-B4_-vTM1.js +0 -19
  858. package/dist/interface/ha/assistant-B5j5Rwlf.js +0 -345
  859. package/dist/interface/ha/auth-C9gqBg0w.js +0 -271
  860. package/dist/interface/ha/autocomplete-gFZBpGxE.js +0 -1373
  861. package/dist/interface/ha/automationBlueprint-DS2u4IQM.js +0 -250
  862. package/dist/interface/ha/back-filled-B-jI6Dqb.js +0 -20
  863. package/dist/interface/ha/bell-ring-CjnpDomC.js +0 -19
  864. package/dist/interface/ha/brain-DBagansp.js +0 -19
  865. package/dist/interface/ha/button-DJDZxmKj.js +0 -406
  866. package/dist/interface/ha/cards-PAF_pPbZ.js +0 -13352
  867. package/dist/interface/ha/cctv-DBlnZEJ3.js +0 -19
  868. package/dist/interface/ha/check-circle-outline-DHmzynUf.js +0 -19
  869. package/dist/interface/ha/check-circle-w7z_NLrm.js +0 -19
  870. package/dist/interface/ha/checkbox-D012nd17.js +0 -279
  871. package/dist/interface/ha/chevron-down-CN3LNAsG.js +0 -19
  872. package/dist/interface/ha/chevron-up-D5-4qnos.js +0 -19
  873. package/dist/interface/ha/chip-BIYZHiP1.js +0 -149
  874. package/dist/interface/ha/clock-outline-CLOrwuhP.js +0 -19
  875. package/dist/interface/ha/close-C_ajB9j7.js +0 -19
  876. package/dist/interface/ha/close-circle-Qqtz5NiQ.js +0 -19
  877. package/dist/interface/ha/cloud-check-gKe6M70h.js +0 -33
  878. package/dist/interface/ha/config-DoZvm13z.js +0 -116
  879. package/dist/interface/ha/content-copy-ChfuNPUb.js +0 -19
  880. package/dist/interface/ha/copy-DfdE7y98.js +0 -22
  881. package/dist/interface/ha/datepicker-44Ub2Hx0.js +0 -2961
  882. package/dist/interface/ha/delete-LxFfoBRM.js +0 -19
  883. package/dist/interface/ha/dist-DLZYY_4u.js +0 -3251
  884. package/dist/interface/ha/divider-Cf59Ua0f.js +0 -110
  885. package/dist/interface/ha/dots-vertical-BEPlUtxU.js +0 -19
  886. package/dist/interface/ha/download-BnXoyA8p.js +0 -19
  887. package/dist/interface/ha/eventIcons-DrjNuTS2.js +0 -676
  888. package/dist/interface/ha/eye-off-BIuZGpjA.js +0 -33
  889. package/dist/interface/ha/eye-off-outline-cbzzWTdq.js +0 -19
  890. package/dist/interface/ha/help-circle-outline-Du1jH6xY.js +0 -19
  891. package/dist/interface/ha/history-Bm6QaZ6b.js +0 -19
  892. package/dist/interface/ha/home-CUD0JuUy.js +0 -19
  893. package/dist/interface/ha/information-outline-B1TiBdcz.js +0 -19
  894. package/dist/interface/ha/inputicon-BPVltPdr.js +0 -324
  895. package/dist/interface/ha/inputnumber-MSv4Pb-P.js +0 -1033
  896. package/dist/interface/ha/inputtext-vdcrNX6K.js +0 -257
  897. package/dist/interface/ha/intercomService-WdbgAuZn.js +0 -1414
  898. package/dist/interface/ha/message-BExXUXHN.js +0 -244
  899. package/dist/interface/ha/microphone-TB58caA2.js +0 -19
  900. package/dist/interface/ha/minus-BsY_Bojv.js +0 -46
  901. package/dist/interface/ha/minus-C6Qh7zWS.js +0 -19
  902. package/dist/interface/ha/mqtt-Bq2AL0mf.js +0 -56
  903. package/dist/interface/ha/multiselect-B0fAnW75.js +0 -1492
  904. package/dist/interface/ha/notifications-Cb1PNQoG.js +0 -159
  905. package/dist/interface/ha/pause-Ch6v65wA.js +0 -19
  906. package/dist/interface/ha/pencil-outline-3AYc7WXi.js +0 -19
  907. package/dist/interface/ha/pinia-D2fpp6nV.js +0 -7641
  908. package/dist/interface/ha/plugins-BAng0szW.js +0 -592
  909. package/dist/interface/ha/plus-CEoLXIS3.js +0 -46
  910. package/dist/interface/ha/plus-QEeSdL0x.js +0 -19
  911. package/dist/interface/ha/progressbar-C2663Zd7.js +0 -95
  912. package/dist/interface/ha/protocol-BB4jdtUC-CbXTLEB7.js +0 -708
  913. package/dist/interface/ha/radar-BCSebLvk.js +0 -19
  914. package/dist/interface/ha/refresh-Cf7GQyew.js +0 -19
  915. package/dist/interface/ha/restore-DMczh46P.js +0 -19
  916. package/dist/interface/ha/ring-resize-11TaovpK.js +0 -16
  917. package/dist/interface/ha/ripple-B_itunQV.js +0 -2928
  918. package/dist/interface/ha/rooms-BulA3xbr.js +0 -45
  919. package/dist/interface/ha/round-alt-arrow-left-bold-z7BNLjup.js +0 -37
  920. package/dist/interface/ha/runtime-core.esm-bundler-DCktklpY.js +0 -3295
  921. package/dist/interface/ha/search-DMJuYUDF.js +0 -19
  922. package/dist/interface/ha/select-CaVzuLaS.js +0 -1382
  923. package/dist/interface/ha/server-Ndqx0RmV.js +0 -239
  924. package/dist/interface/ha/settings-DkoB1zyf.js +0 -22
  925. package/dist/interface/ha/source-branch-CimaS9J1.js +0 -19
  926. package/dist/interface/ha/speeddial-CpW9sIFY.js +0 -682
  927. package/dist/interface/ha/spinner-BSEdDTno.js +0 -46
  928. package/dist/interface/ha/tag-Bko2QYOK.js +0 -95
  929. package/dist/interface/ha/textarea-DrKQ6YMZ.js +0 -130
  930. package/dist/interface/ha/tooltip-X5MY9FoG.js +0 -277
  931. package/dist/interface/ha/trash-2-Droax8m8.js +0 -23
  932. package/dist/interface/ha/trash-can-outline-XdMf3dMc.js +0 -19
  933. package/dist/interface/ha/trash-fill-B__41VdN.js +0 -21
  934. package/dist/interface/ha/types-B9Rna2FN.js +0 -123
  935. package/dist/interface/ha/types-CSqHjs73.js +0 -1062
  936. package/dist/interface/ha/ungrouped-CEyEfdNm.js +0 -1320
  937. package/dist/interface/ha/updates-BK41HPRa.js +0 -341
  938. package/dist/interface/ha/upload-CDAlIs3e.js +0 -23
  939. package/dist/interface/ha/upload-DMKlzavA.js +0 -19
  940. package/dist/interface/ha/useAppVersion-PLf1za07.js +0 -22
  941. package/dist/interface/ha/useAssistantActions-Uf0kmQ_Z.js +0 -29
  942. package/dist/interface/ha/useLogsSocket-CRUB4tiT.js +0 -59
  943. package/dist/interface/ha/useNavLayout-hpvRlYIg.js +0 -125
  944. package/dist/interface/ha/usePermissions-CEX3lAii.js +0 -72
  945. package/dist/interface/ha/useServerRestart-BN_2Gvwy.js +0 -23
  946. package/dist/interface/ha/useTabSwipe-BhBi1bXW.js +0 -45
  947. package/dist/interface/ha/useUpdateChannel-DoPFCimM.js +0 -22
  948. package/dist/interface/ha/useUpdatesSocket-CQ2qyv6W.js +0 -34
  949. package/dist/interface/ha/useUserOptions-Ck6NrMAe.js +0 -15
  950. package/dist/interface/ha/virtualscroller-DuRtMnNf.js +0 -996
  951. package/dist/interface/ha/vue-flow-background-ETLnaEUH.js +0 -6835
  952. package/dist/interface/ha/vue-i18n-CxWAK5Gn.js +0 -2422
  953. package/dist/interface/ha/zoom-in-ZVdIPder.js +0 -41
@@ -1,2025 +0,0 @@
1
- import { r as e } from "./rolldown-runtime-CEFd7nDs.js";
2
- import { m as t } from "./ripple-B_itunQV.js";
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-DCktklpY.js";
4
- import { t as N } from "./tooltip-X5MY9FoG.js";
5
- import { t as te } from "./message-BExXUXHN.js";
6
- import { t as ne } from "./history-Bm6QaZ6b.js";
7
- import { Br as re, En as ie, J as ae, Lr as oe, On as se, Or as ce, bi as le, br as ue, gn as de, gt as P, ht as fe, kr as pe, m as me, mr as he, pi as ge, ur as _e, yr as ve, zr as ye } from "./api-CMboY32E.js";
8
- import { i as F } from "./intercomService-WdbgAuZn.js";
9
- import { A as I, j as L, n as be, r as xe } from "./pinia-D2fpp6nV.js";
10
- import { n as R } from "./vue-i18n-CxWAK5Gn.js";
11
- import { t as Se } from "./button-DJDZxmKj.js";
12
- import { v as z } from "./dist-DLZYY_4u.js";
13
- import { t as B } from "./inputtext-vdcrNX6K.js";
14
- import { t as V } from "./close-C_ajB9j7.js";
15
- import { i as H, n as Ce, r as we, t as Te } from "./accordion-X9Wa7KVq.js";
16
- import { t as Ee } from "./inputnumber-MSv4Pb-P.js";
17
- import { t as De } from "./speeddial-CpW9sIFY.js";
18
- import { a as U, i as W, l as Oe, r as G } from "./types-CSqHjs73.js";
19
- import { a as K, i as ke } from "./automationBlueprint-DS2u4IQM.js";
20
- import { t as Ae } from "./CuiBottomSheet-CUWIERuK.js";
21
- import { t as je } from "./back-filled-B-jI6Dqb.js";
22
- import { a as Me, c as Ne, d as Pe, f as Fe, i as Ie, l as q, n as Le, o as J, p as Re, r as Y, s as X, t as ze, u as Be } from "./vue-flow-background-ETLnaEUH.js";
23
- import { t as Ve } from "./plus-QEeSdL0x.js";
24
- import { t as He } from "./settings-DkoB1zyf.js";
25
- //#region src/stores/automations.ts
26
- var Z = be("automations", () => {
27
- let e = j(null), t = j(null), n = j(null), r = j(!1), i = j(null), a = j([]);
28
- function o(e) {
29
- if (!n.value) return;
30
- let t = n.value.edges, r = n.value.nodes, i = t.filter((t) => t.target === e).map((e) => e.source);
31
- return r.find((e) => i.includes(e.id));
32
- }
33
- return {
34
- activeFlowId: e,
35
- selectedNodeId: t,
36
- draft: n,
37
- draftDirty: r,
38
- lastOutput: i,
39
- validationIssues: a,
40
- getDraftSourceNode: o
41
- };
42
- });
43
- //#endregion
44
- //#region src/components/CuiAutomation/config/flowSchema.ts
45
- function Ue(e, t) {
46
- if (!e) return [];
47
- let n = [];
48
- return qe(e, t, n, /* @__PURE__ */ new Set(), /* @__PURE__ */ new Set()), n;
49
- }
50
- function We(e, t, n) {
51
- let r = (n ?? "").trim();
52
- if (r) return Ue(e, t).find((e) => e.template === r);
53
- }
54
- function Ge(e) {
55
- let t = Z(), { t: n } = R(), r = y(() => Ue(t.draft, u(e)));
56
- return {
57
- variables: r,
58
- options: y(() => r.value.map((e) => ({
59
- label: e.labelKey ? n(`components.automation_nodes.${e.labelKey}`) : e.label ?? e.template,
60
- value: e.template
61
- })))
62
- };
63
- }
64
- function Ke(e, t) {
65
- return e?.values ? e.values.map((e) => ({
66
- label: e.labelKey ? `${t(`components.automation_nodes.${e.labelKey}`)} (${e.value})` : e.value,
67
- value: e.value
68
- })) : [];
69
- }
70
- function qe(e, t, n, r, i) {
71
- if (i.has(t)) return;
72
- i.add(t);
73
- let a = e.edges, o = e.nodes;
74
- for (let s of a) {
75
- if (s.target !== t) continue;
76
- let a = o.find((e) => e.id === s.source);
77
- if (!a?.type) continue;
78
- let c = Je(a), l = typeof a.data?.alias == "string" ? a.data.alias : void 0;
79
- for (let e of c) {
80
- if (l) {
81
- let t = {
82
- ...e,
83
- template: e.template.replace("{{", `{{${l}.`),
84
- label: `${l}: ${e.label ?? ""}`.trim()
85
- };
86
- r.has(t.template) || (r.add(t.template), n.push(t));
87
- }
88
- r.has(e.template) || (r.add(e.template), n.push(e));
89
- }
90
- qe(e, s.source, n, r, i);
91
- }
92
- }
93
- function Je(e) {
94
- let t = e.data ?? {}, n = [], r = (t, r, i, a, o) => {
95
- n.push({
96
- template: t,
97
- valueType: r,
98
- labelKey: i,
99
- sourceNodeId: e.id,
100
- sourceType: e.type ?? "",
101
- ...a && a.length > 0 ? { values: a } : {},
102
- ...o ? { label: o } : {}
103
- });
104
- };
105
- switch (e.type) {
106
- case "trigger-detection": {
107
- let e = (t.detectionLabels ?? []).map((e) => ({ value: e }));
108
- r("{{event.type}}", "enum", "variable_event_type", e), r("{{event.types}}", "string", "variable_event_types"), r("{{event.label}}", "string", "variable_event_label", e), r("{{event.confidence}}", "number", "variable_event_confidence"), r("{{event.state}}", "enum", "variable_event_state", [{
109
- value: "active",
110
- labelKey: "variable_value_active"
111
- }, {
112
- value: "ended",
113
- labelKey: "variable_value_ended"
114
- }]), r("{{event.cameraId}}", "string", "variable_event_camera"), r("{{event.faces}}", "string", "variable_event_faces", (t.faceFilter ?? []).map((e) => ({ value: e }))), r("{{event.plates}}", "string", "variable_event_plates", (t.licensePlateFilter ?? []).map((e) => ({ value: e }))), r("{{event.id}}", "string", "variable_event_id");
115
- break;
116
- }
117
- case "trigger-sensor": {
118
- let i = String(t.sensorType ?? ""), a = (t.properties ?? []).length > 0 ? t.properties : I(i), o = a.map((e) => L(i, e)).filter((e) => !!e);
119
- r("{{sensor.value}}", Ye(o), "variable_sensor_value", Xe(i, o)), r("{{sensor.previousValue}}", Ye(o), "variable_sensor_previous_value");
120
- for (let t of a) {
121
- let r = L(i, t);
122
- for (let i of r?.keys ?? []) n.push({
123
- template: `{{sensor.value.${i}}}`,
124
- valueType: "number",
125
- label: `${t}.${i}`,
126
- sourceNodeId: e.id,
127
- sourceType: e.type
128
- });
129
- }
130
- r("{{sensor.property}}", "enum", "variable_sensor_property", a.map((e) => ({
131
- value: e,
132
- labelKey: `sensor_property_${e}`
133
- }))), r("{{sensor.sensorType}}", "string", "variable_sensor_type"), r("{{sensor.sensorId}}", "string", "variable_sensor_id"), r("{{sensor.assignedCameraIds}}", "string", "variable_sensor_cameras");
134
- break;
135
- }
136
- case "trigger-webhook":
137
- r("{{webhook.body}}", "string", "variable_webhook_body"), r("{{webhook.data}}", "string", "variable_webhook_data"), r("{{webhook.method}}", "enum", "variable_webhook_method", [
138
- "GET",
139
- "POST",
140
- "PUT",
141
- "PATCH",
142
- "DELETE"
143
- ].map((e) => ({ value: e }))), r("{{webhook.headers}}", "object", "variable_webhook_headers");
144
- break;
145
- case "trigger-mqtt":
146
- r("{{mqtt.topic}}", "string", "variable_mqtt_topic", typeof t.topic == "string" && t.topic ? [{ value: t.topic }] : void 0), r("{{mqtt.payload}}", "string", "variable_mqtt_payload");
147
- break;
148
- case "trigger-geofence": {
149
- let e = t.event ?? "both";
150
- r("{{geo.event}}", "enum", "variable_geo_event", (e === "both" ? ["enter", "leave"] : [e]).map((e) => ({
151
- value: e,
152
- labelKey: `variable_value_${e}`
153
- }))), r("{{geo.user}}", "enum", "variable_geo_user", (t.users ?? []).map((e) => ({ value: e }))), r("{{geo.zone}}", "string", "variable_geo_zone", typeof t.zoneName == "string" && t.zoneName ? [{ value: t.zoneName }] : void 0), r("{{geo.lat}}", "number", "variable_geo_lat"), r("{{geo.lon}}", "number", "variable_geo_lon"), r("{{geo.distance}}", "number", "variable_geo_distance");
154
- break;
155
- }
156
- case "trigger-system":
157
- r("{{system.eventType}}", "enum", "variable_system_event_type", typeof t.eventType == "string" && t.eventType ? [{ value: t.eventType }] : void 0), r("{{system.cameraId}}", "string", "variable_system_camera_id"), r("{{system.cameraName}}", "string", "variable_system_camera_name"), r("{{system.pluginName}}", "string", "variable_system_plugin_name"), r("{{system.pluginId}}", "string", "variable_system_plugin_id"), r("{{system.status}}", "string", "variable_system_status"), r("{{system.property}}", "string", "variable_system_property"), r("{{system.sensorId}}", "string", "variable_system_sensor_id"), r("{{system.sensorType}}", "string", "variable_system_sensor_type"), r("{{system.sensorName}}", "string", "variable_system_sensor_name");
158
- break;
159
- case "action-snapshot":
160
- r("{{snapshot}}", "string", "variable_snapshot"), r("{{snapshot.base64}}", "string", "variable_snapshot_data_uri");
161
- break;
162
- case "action-assistant":
163
- r("{{assistant.answer}}", "string", "variable_assistant_answer"), r("{{assistant.replied}}", "boolean", "variable_assistant_replied");
164
- break;
165
- case "action-http":
166
- r("{{http.status}}", "number", "variable_http_status"), r("{{http.body}}", "string", "variable_http_body"), r("{{http.base64}}", "string", "variable_http_base64"), r("{{http.json}}", "object", "variable_http_json");
167
- break;
168
- case "action-plugin":
169
- r("{{plugin.detected}}", "boolean", "variable_plugin_detected", [{ value: "true" }, { value: "false" }]), r("{{plugin.labels}}", "string", "variable_plugin_labels"), r("{{plugin.detections}}", "object", "variable_plugin_detections"), r("{{plugin.result}}", "object", "variable_plugin_result"), r("{{plugin.durationMs}}", "number", "variable_plugin_duration");
170
- break;
171
- case "action-camera-control":
172
- r("{{camera.id}}", "string", "variable_camera_id"), r("{{camera.name}}", "string", "variable_camera_name");
173
- break;
174
- case "action-image-input": {
175
- let r = typeof t.variableName == "string" && t.variableName ? t.variableName : "image";
176
- n.push({
177
- template: `{{${r}}}`,
178
- valueType: "string",
179
- label: r,
180
- sourceNodeId: e.id,
181
- sourceType: e.type
182
- }), n.push({
183
- template: `{{${r}.width}}`,
184
- valueType: "number",
185
- label: `${r}.width`,
186
- sourceNodeId: e.id,
187
- sourceType: e.type
188
- }), n.push({
189
- template: `{{${r}.height}}`,
190
- valueType: "number",
191
- label: `${r}.height`,
192
- sourceNodeId: e.id,
193
- sourceType: e.type
194
- });
195
- break;
196
- }
197
- case "action-variable": typeof t.variableName == "string" && t.variableName && n.push({
198
- template: `{{${t.variableName}}}`,
199
- valueType: "string",
200
- label: t.variableName,
201
- sourceNodeId: e.id,
202
- sourceType: e.type
203
- });
204
- }
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
- }
207
- function Ye(e) {
208
- let t = new Set(e.map((e) => e.type));
209
- return t.size === 1 ? [...t][0] : "string";
210
- }
211
- function Xe(e, t) {
212
- let n = [], r = /* @__PURE__ */ new Set(), i = (e, t) => {
213
- r.has(e) || (r.add(e), n.push({
214
- value: e,
215
- ...t ? { labelKey: t } : {}
216
- }));
217
- };
218
- for (let n of t) if (n.type === "boolean") i("true"), i("false");
219
- else if (n.type === "enum" && n.values) for (let [t, r] of Object.entries(n.values)) i(String(r), `${e}_state_${t}`);
220
- return n;
221
- }
222
- //#endregion
223
- //#region ~icons/carbon/share
224
- var Ze = {
225
- viewBox: "0 0 32 32",
226
- width: "1.2em",
227
- height: "1.2em"
228
- };
229
- function Qe(e, t) {
230
- return o(), S("svg", Ze, [...t[0] ||= [E("path", {
231
- fill: "currentColor",
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
- }, null, -1)]]);
234
- }
235
- var $e = p({
236
- name: "carbon-share",
237
- render: Qe
238
- }), et = {
239
- viewBox: "0 0 32 32",
240
- width: "1.2em",
241
- height: "1.2em"
242
- };
243
- function tt(e, t) {
244
- return o(), S("svg", et, [...t[0] ||= [E("path", {
245
- fill: "currentColor",
246
- d: "M12 12h2v12h-2zm6 0h2v12h-2z"
247
- }, null, -1), E("path", {
248
- fill: "currentColor",
249
- d: "M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6Zm4 22V8h16v20Zm4-26h8v2h-8z"
250
- }, null, -1)]]);
251
- }
252
- var nt = p({
253
- name: "carbon-trash-can",
254
- render: tt
255
- }), rt = {
256
- name: "ControlButton",
257
- compatConfig: { MODE: 3 }
258
- }, it = (e, t) => {
259
- let n = e.__vccOpts || e;
260
- for (let [e, r] of t) n[e] = r;
261
- return n;
262
- }, at = {
263
- type: "button",
264
- class: "vue-flow__controls-button"
265
- };
266
- function ot(e, t, n, r, i, a) {
267
- return o(), S("button", at, [c(e.$slots, "default")]);
268
- }
269
- var st = /* @__PURE__ */ it(rt, [["render", ot]]), ct = {
270
- xmlns: "http://www.w3.org/2000/svg",
271
- viewBox: "0 0 32 32"
272
- }, lt = [/* @__PURE__ */ E("path", { d: "M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z" }, null, -1)];
273
- function ut(e, t) {
274
- return o(), S("svg", ct, lt);
275
- }
276
- var dt = { render: ut }, ft = {
277
- xmlns: "http://www.w3.org/2000/svg",
278
- viewBox: "0 0 32 5"
279
- }, pt = [/* @__PURE__ */ E("path", { d: "M0 0h32v4.2H0z" }, null, -1)];
280
- function mt(e, t) {
281
- return o(), S("svg", ft, pt);
282
- }
283
- var ht = { render: mt }, gt = {
284
- xmlns: "http://www.w3.org/2000/svg",
285
- viewBox: "0 0 32 30"
286
- }, _t = [/* @__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 vt(e, t) {
288
- return o(), S("svg", gt, _t);
289
- }
290
- var yt = { render: vt }, bt = {
291
- xmlns: "http://www.w3.org/2000/svg",
292
- viewBox: "0 0 25 32"
293
- }, xt = [/* @__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 St(e, t) {
295
- return o(), S("svg", bt, xt);
296
- }
297
- var Ct = { render: St }, wt = {
298
- xmlns: "http://www.w3.org/2000/svg",
299
- viewBox: "0 0 25 32"
300
- }, Tt = [/* @__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 Et(e, t) {
302
- return o(), S("svg", wt, Tt);
303
- }
304
- var Dt = { render: Et }, Ot = /* @__PURE__ */ A({
305
- name: "Controls",
306
- compatConfig: { MODE: 3 },
307
- props: {
308
- showZoom: {
309
- type: Boolean,
310
- default: !0
311
- },
312
- showFitView: {
313
- type: Boolean,
314
- default: !0
315
- },
316
- showInteractive: {
317
- type: Boolean,
318
- default: !0
319
- },
320
- fitViewParams: {},
321
- position: { default: () => Le.BottomLeft }
322
- },
323
- emits: [
324
- "zoomIn",
325
- "zoomOut",
326
- "fitView",
327
- "interactionChange"
328
- ],
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: _ } = q(), y = i(() => n.value || r.value || a.value), x = i(() => p.value.zoom <= g.value), C = i(() => p.value.zoom >= _.value);
331
- function T() {
332
- l(), t("zoomIn");
333
- }
334
- function E() {
335
- u(), t("zoomOut");
336
- }
337
- function D() {
338
- d(e.fitViewParams), t("fitView");
339
- }
340
- function O() {
341
- s(!y.value), t("interactionChange", !y.value);
342
- }
343
- return (e, t) => (o(), m(v(Ie), {
344
- class: "vue-flow__controls",
345
- position: e.position
346
- }, {
347
- default: b(() => [
348
- c(e.$slots, "top"),
349
- e.showZoom ? (o(), S(w, { key: 0 }, [c(e.$slots, "control-zoom-in", {}, () => [M(st, {
350
- class: "vue-flow__controls-zoomin",
351
- disabled: C.value,
352
- onClick: T
353
- }, {
354
- default: b(() => [c(e.$slots, "icon-zoom-in", {}, () => [(o(), m(f(v(dt))))])]),
355
- _: 3
356
- }, 8, ["disabled"])]), c(e.$slots, "control-zoom-out", {}, () => [M(st, {
357
- class: "vue-flow__controls-zoomout",
358
- disabled: x.value,
359
- onClick: E
360
- }, {
361
- default: b(() => [c(e.$slots, "icon-zoom-out", {}, () => [(o(), m(f(v(ht))))])]),
362
- _: 3
363
- }, 8, ["disabled"])])], 64)) : h("", !0),
364
- e.showFitView ? c(e.$slots, "control-fit-view", { key: 1 }, () => [M(st, {
365
- class: "vue-flow__controls-fitview",
366
- onClick: D
367
- }, {
368
- default: b(() => [c(e.$slots, "icon-fit-view", {}, () => [(o(), m(f(v(yt))))])]),
369
- _: 3
370
- })]) : h("", !0),
371
- e.showInteractive ? c(e.$slots, "control-interactive", { key: 2 }, () => [e.showInteractive ? (o(), m(st, {
372
- key: 0,
373
- class: "vue-flow__controls-interactive",
374
- onClick: O
375
- }, {
376
- default: b(() => [y.value ? c(e.$slots, "icon-unlock", { key: 0 }, () => [(o(), m(f(v(Dt))))]) : h("", !0), y.value ? h("", !0) : c(e.$slots, "icon-lock", { key: 1 }, () => [(o(), m(f(v(Ct))))])]),
377
- _: 3
378
- })) : h("", !0)]) : h("", !0),
379
- c(e.$slots, "default")
380
- ]),
381
- _: 3
382
- }, 8, ["position"]));
383
- }
384
- });
385
- //#endregion
386
- //#region src/components/CuiAutomation/caseHandle.ts
387
- function kt(e) {
388
- return `case-${encodeURIComponent(e)}`;
389
- }
390
- //#endregion
391
- //#region src/components/CuiAutomation/edges/DeletableEdge.vue?vue&type=script&setup=true&lang.ts
392
- var At = ["id", "d"], jt = 24, Mt = /* @__PURE__ */ A({
393
- __name: "DeletableEdge",
394
- props: {
395
- id: {},
396
- sourceNode: {},
397
- targetNode: {},
398
- source: {},
399
- target: {},
400
- type: {},
401
- label: { type: [
402
- String,
403
- Object,
404
- Function
405
- ] },
406
- style: {},
407
- selected: { type: Boolean },
408
- sourcePosition: {},
409
- targetPosition: {},
410
- sourceHandleId: {},
411
- targetHandleId: {},
412
- animated: { type: Boolean },
413
- updatable: { type: Boolean },
414
- markerStart: {},
415
- markerEnd: {},
416
- curvature: {},
417
- interactionWidth: {},
418
- data: {},
419
- events: {},
420
- labelStyle: {},
421
- labelShowBg: { type: Boolean },
422
- labelBgStyle: {},
423
- labelBgPadding: {},
424
- labelBgBorderRadius: {},
425
- sourceX: {},
426
- sourceY: {},
427
- targetX: {},
428
- targetY: {}
429
- },
430
- setup(e) {
431
- let n = e, { removeEdges: r } = q(), i = y(() => Ne({
432
- sourceX: n.sourceX,
433
- sourceY: n.sourceY,
434
- sourcePosition: n.sourcePosition,
435
- targetX: n.targetX,
436
- targetY: n.targetY,
437
- targetPosition: n.targetPosition
438
- })), a = y(() => i.value[0]), s = y(() => i.value[1]), c = y(() => i.value[2]), l = y(() => {
439
- let e = document.createElementNS("http://www.w3.org/2000/svg", "path");
440
- return e.setAttribute("d", a.value), e.getTotalLength();
441
- }), u = y(() => {
442
- let e = l.value;
443
- if (e <= 0) return {
444
- stroke: "var(--text-muted-color)",
445
- strokeWidth: 2,
446
- fill: "none"
447
- };
448
- let t = e / 2, n = jt / 2;
449
- return {
450
- stroke: "var(--text-muted-color)",
451
- strokeWidth: 2,
452
- fill: "none",
453
- strokeDasharray: `${Math.max(0, t - n)} ${jt} ${Math.max(0, e - t - n)}`
454
- };
455
- });
456
- function d() {
457
- r([n.id]);
458
- }
459
- return (n, r) => {
460
- let i = V;
461
- return o(), S(w, null, [E("path", {
462
- id: e.id,
463
- d: v(a),
464
- style: C(v(u)),
465
- class: "vue-flow__edge-path"
466
- }, null, 12, At), M(v(J), null, {
467
- default: b(() => [E("div", {
468
- class: "automation-edge-button nodrag nopan",
469
- style: C({
470
- pointerEvents: "all",
471
- position: "absolute",
472
- transform: `translate(-50%, -50%) translate(${v(s)}px, ${v(c)}px)`
473
- })
474
- }, [E("button", {
475
- class: "automation-edge-delete",
476
- onClick: t(d, ["stop"])
477
- }, [M(i, { class: "w-3 h-3" })])], 4)]),
478
- _: 1
479
- })], 64);
480
- };
481
- }
482
- }), Nt = {
483
- "trigger-detection": ["cameraId"],
484
- "trigger-sensor": ["sensorId"],
485
- "trigger-schedule": ["cron"],
486
- "trigger-mqtt": ["topic"],
487
- "trigger-system": ["eventType"],
488
- "condition-switch": ["variable"],
489
- "condition-ifelse": ["leftOperand", "operator"],
490
- "condition-sensorstate": ["sensorId"],
491
- "condition-time": ["startTime", "endTime"],
492
- "action-snapshot": ["cameraId"],
493
- "action-sensor": ["sensorId"],
494
- "action-notification": ["title"],
495
- "action-assistant": ["user", "prompt"],
496
- "action-http": ["url"],
497
- "action-mqtt": ["topic"],
498
- "action-variable": ["variableName"],
499
- "action-plugin": ["pluginName", "method"],
500
- "action-camera-control": ["cameraId"],
501
- "action-image-input": ["source"]
502
- }, Pt = /* @__PURE__ */ new Set([
503
- "http",
504
- "mqtt",
505
- "webhook",
506
- "sensor",
507
- "system",
508
- "repeat",
509
- "previous",
510
- "plugin",
511
- "camera",
512
- "geo",
513
- "event"
514
- ]), Ft = /* @__PURE__ */ new Set([
515
- "time.now",
516
- "flow.startMs",
517
- "snapshot",
518
- "snapshot.base64",
519
- "output"
520
- ]);
521
- function It(e) {
522
- if (!e) return [];
523
- let t = [], n = e.nodes, r = e.edges, i = n.filter((e) => e.type?.startsWith("trigger-"));
524
- i.length === 0 && t.push({ messageKey: "validation_no_trigger" });
525
- let a = new Set(i.map((e) => e.id)), o = !0;
526
- for (; o;) {
527
- o = !1;
528
- for (let e of r) a.has(e.source) && !a.has(e.target) && (a.add(e.target), o = !0);
529
- }
530
- for (let r of n) {
531
- if (!r.type) continue;
532
- let n = r.data ?? {};
533
- !r.type.startsWith("trigger-") && !a.has(r.id) && t.push({
534
- nodeId: r.id,
535
- messageKey: "validation_unreachable"
536
- });
537
- for (let e of Nt[r.type] ?? []) {
538
- let i = n[e];
539
- if (i == null || i === "") {
540
- t.push({
541
- nodeId: r.id,
542
- messageKey: "validation_missing_fields"
543
- });
544
- break;
545
- }
546
- }
547
- r.type === "condition-switch" && (!Array.isArray(n.cases) || n.cases.length === 0) && t.push({
548
- nodeId: r.id,
549
- messageKey: "validation_no_cases"
550
- }), r.type === "trigger-schedule" && typeof n.cron == "string" && n.cron && n.cron.trim().split(/\s+/).length !== 5 && t.push({
551
- nodeId: r.id,
552
- messageKey: "validation_invalid_cron"
553
- }), r.type === "action-variable" && typeof n.variableName == "string" && n.variableName && !/^\w+(?:\.\w+)*$/.test(n.variableName) && t.push({
554
- nodeId: r.id,
555
- messageKey: "validation_invalid_variable_name"
556
- }), t.push(...Lt(e, r));
557
- }
558
- return t;
559
- }
560
- function Lt(e, t) {
561
- let n = [], r = new Set(Ue(e, t.id).map((e) => e.template.slice(2, -2))), i = new Set([...r].map((e) => e.split(".")[0])), a = Rt(e), o = [];
562
- zt(t.data ?? {}, o);
563
- let s = /* @__PURE__ */ new Set();
564
- for (let e of o) for (let o of e.matchAll(/\{\{(\w+(?:\.\w+)*)\}\}/g)) {
565
- let e = o[1];
566
- if (r.has(e) || Ft.has(e) || a.has(e) || s.has(e)) continue;
567
- let c = e.split(".")[0];
568
- Pt.has(c) && i.has(c) || a.has(c) || (s.add(e), n.push({
569
- nodeId: t.id,
570
- messageKey: "validation_unknown_variable",
571
- params: { name: e }
572
- }));
573
- }
574
- return n;
575
- }
576
- function Rt(e) {
577
- let t = /* @__PURE__ */ new Set();
578
- for (let n of e.nodes) {
579
- let e = n.data ?? {};
580
- n.type === "action-variable" && typeof e.variableName == "string" && e.variableName && t.add(e.variableName), n.type === "action-image-input" && t.add(typeof e.variableName == "string" && e.variableName ? e.variableName : "image"), typeof e.alias == "string" && e.alias && t.add(e.alias);
581
- }
582
- return t;
583
- }
584
- function zt(e, t) {
585
- if (typeof e == "string") {
586
- e.includes("{{") && t.push(e);
587
- return;
588
- }
589
- if (Array.isArray(e)) {
590
- for (let n of e) zt(n, t);
591
- return;
592
- }
593
- if (e && typeof e == "object") for (let n of Object.values(e)) zt(n, t);
594
- }
595
- function Bt(e) {
596
- let t = Z(), { t: n } = R();
597
- return y(() => {
598
- let r = t.validationIssues.filter((t) => t.nodeId === u(e));
599
- if (r.length !== 0) return r.map((e) => n(`components.automation_nodes.${e.messageKey}`, e.params ?? {})).join("\n");
600
- });
601
- }
602
- //#endregion
603
- //#region src/components/CuiAutomation/utils.ts
604
- var Vt = [
605
- "cameraId",
606
- "sensorId",
607
- "sensorType"
608
- ];
609
- function Ht(e, t) {
610
- if (!e || !t) return null;
611
- let n = {}, r = e, i = t;
612
- for (let e of Vt) r[e] && e in i && !i[e] && (n[e] = r[e]);
613
- return Object.keys(n).length > 0 ? n : null;
614
- }
615
- function Ut(e) {
616
- return e.type === "trigger-webhook" && !e.webhookId ? {
617
- ...e,
618
- webhookId: ge()
619
- } : e.type === "trigger-geofence" && !e.geofenceId ? {
620
- ...e,
621
- geofenceId: ge()
622
- } : e;
623
- }
624
- function Wt(e, t, n) {
625
- if (!e) return;
626
- let r = (e) => e ? t?.(e) ?? e : void 0, i = (e, t) => e ? n?.(e) ?? t ?? e : void 0;
627
- switch (e.type) {
628
- case "trigger-detection": return r(e.cameraId);
629
- case "trigger-sensor": return i(e.sensorId, e.sensorType);
630
- case "trigger-schedule": return e.cron || void 0;
631
- case "trigger-webhook": return e.webhookId ? `...${e.webhookId.slice(-8)}` : void 0;
632
- case "trigger-system": return e.eventType ? `${e.category}: ${e.eventType.split(":").pop()}` : void 0;
633
- case "trigger-manual": return;
634
- case "trigger-geofence": return e.zoneName || void 0;
635
- case "trigger-mqtt": return e.topic || void 0;
636
- case "condition-ifelse": return e.leftOperand && e.operator ? `${e.leftOperand} ${e.operator} ${e.rightOperand}` : void 0;
637
- case "condition-switch": return e.variable || void 0;
638
- case "condition-sensorstate": return i(e.sensorId, e.sensorType);
639
- case "condition-time": return e.startTime && e.endTime ? `${e.startTime} - ${e.endTime}` : void 0;
640
- case "action-snapshot": return r(e.cameraId);
641
- case "action-camera-control": return r(e.cameraId);
642
- case "action-sensor": return i(e.sensorId, e.sensorType);
643
- case "action-notification": return e.title || void 0;
644
- case "action-notification-control": return `${e.mode} · ${e.scope}`;
645
- case "action-assistant": return e.prompt ? e.prompt.slice(0, 40) : void 0;
646
- case "action-http": return e.url ? `${e.method} ${e.url}` : void 0;
647
- case "action-mqtt": return e.topic || void 0;
648
- case "action-delay": return `${e.duration} ${e.unit}`;
649
- case "action-variable": return e.variableName || void 0;
650
- case "action-plugin": return [e.pluginName, e.method].filter(Boolean).join(": ") || void 0;
651
- default: return;
652
- }
653
- }
654
- //#endregion
655
- //#region ~icons/mdi/exclamation-thick
656
- var Gt = {
657
- viewBox: "0 0 24 24",
658
- width: "1.2em",
659
- height: "1.2em"
660
- };
661
- function Kt(e, t) {
662
- return o(), S("svg", Gt, [...t[0] ||= [E("path", {
663
- fill: "currentColor",
664
- d: "M10 3h4v11h-4zm0 18v-4h4v4z"
665
- }, null, -1)]]);
666
- }
667
- var qt = p({
668
- name: "mdi-exclamation-thick",
669
- render: Kt
670
- }), Jt = { maxInputs: Infinity }, Yt = {
671
- key: 0,
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
- }, Xt = { class: "flex items-center gap-2 px-3 py-2.5" }, Zt = { class: "flex-1 min-w-0" }, Qt = { class: "text-xs font-semibold truncate text-color" }, $t = {
674
- key: 0,
675
- class: "text-[10px] text-muted truncate mt-0.5"
676
- }, en = /*#__PURE__*/ ve(/* @__PURE__ */ A({
677
- __name: "BaseNode",
678
- props: /*@__PURE__*/ n({
679
- icon: {},
680
- label: {},
681
- subtitle: {},
682
- color: {},
683
- selected: { type: Boolean },
684
- showInput: { type: Boolean },
685
- showOutput: { type: Boolean },
686
- maxInputs: {},
687
- warning: {}
688
- }, Jt),
689
- setup(e) {
690
- let t = {
691
- backgroundColor: "var(--text-muted-color)",
692
- borderColor: "var(--card-background)"
693
- };
694
- return (n, r) => {
695
- let i = qt, a = N;
696
- return o(), S("div", {
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
- style: C({ borderColor: e.color })
699
- }, [
700
- e.warning ? D((o(), S("div", Yt, [M(i, { class: "w-3.5 h-3.5" })])), [[
701
- a,
702
- e.warning,
703
- void 0,
704
- { top: !0 }
705
- ]]) : h("", !0),
706
- E("div", Xt, [E("div", {
707
- class: "flex items-center justify-center w-8 h-8 rounded-md shrink-0",
708
- style: C({
709
- backgroundColor: `${e.color}20`,
710
- color: e.color
711
- })
712
- }, [(o(), m(f(e.icon), { class: "w-4.5 h-4.5" }))], 4), E("div", Zt, [E("div", Qt, s(e.label), 1), e.subtitle ? (o(), S("div", $t, s(e.subtitle), 1)) : h("", !0)])]),
713
- e.showInput ? (o(), m(v(X), {
714
- key: 1,
715
- type: "target",
716
- position: v(Y).Top,
717
- connectable: e.maxInputs,
718
- class: "!w-5 !h-5 !border-2",
719
- style: t
720
- }, null, 8, ["position", "connectable"])) : h("", !0),
721
- c(n.$slots, "handles", {}, () => [e.showOutput ? (o(), m(v(X), {
722
- key: 0,
723
- type: "source",
724
- position: v(Y).Bottom,
725
- class: "!w-5 !h-5 !border-2",
726
- style: t
727
- }, null, 8, ["position"])) : h("", !0)], !0)
728
- ], 6);
729
- };
730
- }
731
- }), [["__scopeId", "data-v-13cfb248"]]), tn = { class: "text-muted font-medium truncate" }, nn = { class: "text-color font-semibold text-right" }, Q = /* @__PURE__ */ A({
732
- __name: "ActionNode",
733
- props: {
734
- id: {},
735
- type: {},
736
- selected: { type: Boolean },
737
- connectable: { type: [
738
- Boolean,
739
- Number,
740
- String,
741
- Function
742
- ] },
743
- position: {},
744
- dimensions: {},
745
- label: {},
746
- isValidTargetPos: { type: Function },
747
- isValidSourcePos: { type: Function },
748
- parent: {},
749
- parentNodeId: {},
750
- dragging: { type: Boolean },
751
- resizing: { type: Boolean },
752
- zIndex: {},
753
- targetPosition: {},
754
- sourcePosition: {},
755
- dragHandle: {},
756
- data: {},
757
- events: {}
758
- },
759
- setup(e) {
760
- let t = e, { t: n } = R(), r = Z(), { lastOutput: i } = xe(r), c = Bt(() => t.id), l = y(() => W(t.type)), u = y(() => l.value ? n(l.value.labelKey) : t.type), { cameraName: f } = K(), { sensors: p } = z(), g = y(() => {
761
- let e = t.data, n = e.alias, r = Wt(t.data, f, x);
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
- }), _ = y(() => t.type !== "action-output" || !i.value ? [] : Object.entries(i.value));
764
- function x(e) {
765
- let t = p.value.find((t) => t.id === e);
766
- return t ? t.displayName.value || t.name : void 0;
767
- }
768
- return (t, n) => {
769
- let r = F;
770
- return o(), S("div", null, [M(en, {
771
- icon: v(l).icon,
772
- label: v(u),
773
- subtitle: v(g),
774
- color: v(l)?.color ?? "#3b82f6",
775
- selected: e.selected,
776
- warning: v(c),
777
- "show-input": !0,
778
- "show-output": !0
779
- }, null, 8, [
780
- "icon",
781
- "label",
782
- "subtitle",
783
- "color",
784
- "selected",
785
- "warning"
786
- ]), e.type === "action-output" && v(_).length ? (o(), m(r, {
787
- key: 0,
788
- class: "cui-card mt-1",
789
- pt: { body: { class: "p-0" } },
790
- style: { "min-width": "180px" }
791
- }, {
792
- content: b(() => [(o(!0), S(w, null, a(v(_), (e, t) => (o(), S("div", {
793
- key: t,
794
- class: d(["flex justify-between gap-3 px-3 py-1.5 text-[11px]", { "border-t border-surface-100 dark:border-surface-800": t > 0 }])
795
- }, [E("span", tn, s(e[0]), 1), E("span", nn, s(e[1]), 1)], 2))), 128))]),
796
- _: 1
797
- })) : h("", !0)]);
798
- };
799
- }
800
- }), rn = /* @__PURE__ */ A({
801
- __name: "ConditionNode",
802
- props: {
803
- id: {},
804
- type: {},
805
- selected: { type: Boolean },
806
- connectable: { type: [
807
- Boolean,
808
- Number,
809
- String,
810
- Function
811
- ] },
812
- position: {},
813
- dimensions: {},
814
- label: {},
815
- isValidTargetPos: { type: Function },
816
- isValidSourcePos: { type: Function },
817
- parent: {},
818
- parentNodeId: {},
819
- dragging: { type: Boolean },
820
- resizing: { type: Boolean },
821
- zIndex: {},
822
- targetPosition: {},
823
- sourcePosition: {},
824
- dragHandle: {},
825
- data: {},
826
- events: {}
827
- },
828
- setup(e) {
829
- let t = e, { t: n } = R(), r = { borderColor: "var(--card-background)" }, i = Bt(() => t.id), a = y(() => W(t.type)), s = y(() => a.value ? n(a.value.labelKey) : t.type), { cameraName: c } = K(), { sensors: l } = z(), u = y(() => Wt(t.data, c, d));
830
- function d(e) {
831
- let t = l.value.find((t) => t.id === e);
832
- return t ? t.displayName.value || t.name : void 0;
833
- }
834
- return (t, n) => (o(), m(en, {
835
- icon: v(a).icon,
836
- label: v(s),
837
- subtitle: v(u),
838
- color: v(a)?.color ?? "#f59e0b",
839
- selected: e.selected,
840
- warning: v(i),
841
- "show-input": !0,
842
- "show-output": !1,
843
- "max-inputs": 1
844
- }, {
845
- handles: b(() => [M(v(X), {
846
- type: "source",
847
- position: v(Y).Bottom,
848
- id: "true",
849
- class: "!w-5 !h-5 !border-2",
850
- style: C({
851
- ...r,
852
- backgroundColor: "var(--text-success-color)",
853
- left: "30%"
854
- })
855
- }, null, 8, ["position", "style"]), M(v(X), {
856
- type: "source",
857
- position: v(Y).Bottom,
858
- id: "false",
859
- class: "!w-5 !h-5 !border-2",
860
- style: C({
861
- ...r,
862
- backgroundColor: "var(--text-danger-color)",
863
- left: "70%"
864
- })
865
- }, null, 8, ["position", "style"])]),
866
- _: 1
867
- }, 8, [
868
- "icon",
869
- "label",
870
- "subtitle",
871
- "color",
872
- "selected",
873
- "warning"
874
- ]));
875
- }
876
- }), an = { class: "absolute top-5 left-1/2 -translate-x-1/2 text-[10px] text-muted whitespace-nowrap pointer-events-none" }, on = /* @__PURE__ */ A({
877
- __name: "SwitchNode",
878
- props: {
879
- id: {},
880
- type: {},
881
- selected: { type: Boolean },
882
- connectable: { type: [
883
- Boolean,
884
- Number,
885
- String,
886
- Function
887
- ] },
888
- position: {},
889
- dimensions: {},
890
- label: {},
891
- isValidTargetPos: { type: Function },
892
- isValidSourcePos: { type: Function },
893
- parent: {},
894
- parentNodeId: {},
895
- dragging: { type: Boolean },
896
- resizing: { type: Boolean },
897
- zIndex: {},
898
- targetPosition: {},
899
- sourcePosition: {},
900
- dragHandle: {},
901
- data: {},
902
- events: {}
903
- },
904
- setup(e) {
905
- let t = e, { t: n } = R(), r = {
906
- backgroundColor: "#f59e0b",
907
- borderColor: "var(--card-background)"
908
- }, i = Bt(() => t.id), c = y(() => W(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(en, {
910
- icon: v(c).icon,
911
- label: v(l),
912
- subtitle: v(d),
913
- color: v(c)?.color ?? "#f59e0b",
914
- selected: e.selected,
915
- warning: v(i),
916
- "show-input": !0,
917
- "show-output": !1,
918
- "max-inputs": 1
919
- }, {
920
- handles: b(() => [(o(!0), S(w, null, a(v(u), (e, t) => (o(), m(v(X), {
921
- id: v(kt)(e),
922
- key: v(kt)(e),
923
- type: "source",
924
- position: v(Y).Bottom,
925
- class: "!w-5 !h-5 !border-2",
926
- style: C({
927
- ...r,
928
- left: `${(t + 1) / (v(u).length + 1) * 100}%`
929
- })
930
- }, {
931
- default: b(() => [E("div", an, s(e), 1)]),
932
- _: 2
933
- }, 1032, [
934
- "id",
935
- "position",
936
- "style"
937
- ]))), 128))]),
938
- _: 1
939
- }, 8, [
940
- "icon",
941
- "label",
942
- "subtitle",
943
- "color",
944
- "selected",
945
- "warning"
946
- ]));
947
- }
948
- }), $ = /* @__PURE__ */ A({
949
- __name: "TriggerNode",
950
- props: {
951
- id: {},
952
- type: {},
953
- selected: { type: Boolean },
954
- connectable: { type: [
955
- Boolean,
956
- Number,
957
- String,
958
- Function
959
- ] },
960
- position: {},
961
- dimensions: {},
962
- label: {},
963
- isValidTargetPos: { type: Function },
964
- isValidSourcePos: { type: Function },
965
- parent: {},
966
- parentNodeId: {},
967
- dragging: { type: Boolean },
968
- resizing: { type: Boolean },
969
- zIndex: {},
970
- targetPosition: {},
971
- sourcePosition: {},
972
- dragHandle: {},
973
- data: {},
974
- events: {}
975
- },
976
- setup(e) {
977
- let t = e, { t: n } = R(), { cameraName: r } = K(), { sensors: i } = z(), a = Bt(() => t.id), s = y(() => W(t.type)), c = y(() => s.value ? n(s.value.labelKey) : t.type), l = y(() => Wt(t.data, r, u));
978
- function u(e) {
979
- let t = i.value.find((t) => t.id === e);
980
- return t ? t.displayName.value || t.name : void 0;
981
- }
982
- return (t, n) => (o(), m(en, {
983
- icon: v(s).icon,
984
- label: v(c),
985
- subtitle: v(l),
986
- color: v(s)?.color ?? "#22c55e",
987
- selected: e.selected,
988
- warning: v(a),
989
- "show-input": !1,
990
- "show-output": !0
991
- }, null, 8, [
992
- "icon",
993
- "label",
994
- "subtitle",
995
- "color",
996
- "selected",
997
- "warning"
998
- ]));
999
- }
1000
- }), sn = 50;
1001
- function cn() {
1002
- let e = k([]), t = k([]);
1003
- function n(e, t) {
1004
- return JSON.stringify({
1005
- nodes: e,
1006
- edges: t
1007
- });
1008
- }
1009
- function r(e) {
1010
- return JSON.parse(e);
1011
- }
1012
- function i(r, i) {
1013
- let a = [...e.value, n(r, i)];
1014
- a.length > sn && a.shift(), e.value = a, t.value = [];
1015
- }
1016
- function a(i, a) {
1017
- let o = [...e.value], s = o.pop();
1018
- if (s) return e.value = o, t.value = [...t.value, n(i, a)], r(s);
1019
- }
1020
- function o(i, a) {
1021
- let o = [...t.value], s = o.pop();
1022
- if (s) return t.value = o, e.value = [...e.value, n(i, a)], r(s);
1023
- }
1024
- function s() {
1025
- e.value = [], t.value = [];
1026
- }
1027
- return {
1028
- push: i,
1029
- undo: a,
1030
- redo: o,
1031
- clear: s,
1032
- canUndo: y(() => e.value.length > 0),
1033
- canRedo: y(() => t.value.length > 0)
1034
- };
1035
- }
1036
- //#endregion
1037
- //#region src/components/CuiAutomation/CuiAutomationCanvas.vue?vue&type=script&setup=true&lang.ts
1038
- var ln = { class: "absolute inset-0 flex items-center justify-center pointer-events-none" }, un = { class: "text-muted text-sm" }, dn = /* @__PURE__ */ A({
1039
- __name: "CuiAutomationCanvas",
1040
- props: {
1041
- flow: {},
1042
- mobile: { type: Boolean }
1043
- },
1044
- emits: ["node-select", "change"],
1045
- setup(e, { expose: n, emit: i }) {
1046
- let a = e, c = i, { t: l } = R(), { smBreakpoint: u } = ce(), { screenToFlowCoordinate: f, getViewport: m, dimensions: h } = q(), y = cn(), C = {
1047
- "trigger-detection": p($),
1048
- "trigger-sensor": p($),
1049
- "trigger-schedule": p($),
1050
- "trigger-webhook": p($),
1051
- "trigger-system": p($),
1052
- "trigger-manual": p($),
1053
- "trigger-geofence": p($),
1054
- "trigger-mqtt": p($),
1055
- "condition-ifelse": p(rn),
1056
- "condition-switch": p(on),
1057
- "condition-sensorstate": p(rn),
1058
- "condition-time": p(rn),
1059
- "action-snapshot": p(Q),
1060
- "action-sensor": p(Q),
1061
- "action-notification": p(Q),
1062
- "action-notification-control": p(Q),
1063
- "action-assistant": p(Q),
1064
- "action-http": p(Q),
1065
- "action-mqtt": p(Q),
1066
- "action-delay": p(Q),
1067
- "action-variable": p(Q),
1068
- "action-plugin": p(Q),
1069
- "action-camera-control": p(Q),
1070
- "action-image-input": p(Q),
1071
- "action-output": p(Q)
1072
- }, w = { default: p(Mt) }, T = j([...a.flow.nodes]), D = j([...a.flow.edges]);
1073
- function O() {
1074
- y.push(T.value, D.value);
1075
- }
1076
- function k() {
1077
- let e = y.undo(T.value, D.value);
1078
- e && (T.value = e.nodes, D.value = e.edges, c("node-select", null), c("change"));
1079
- }
1080
- function A() {
1081
- let e = y.redo(T.value, D.value);
1082
- e && (T.value = e.nodes, D.value = e.edges, c("node-select", null), c("change"));
1083
- }
1084
- function N(e) {
1085
- c("node-select", e.node.id);
1086
- }
1087
- function te() {
1088
- c("node-select", null);
1089
- }
1090
- function ne(e) {
1091
- let t = T.value.find((t) => t.id === e.source), n = T.value.find((t) => t.id === e.target);
1092
- return !(!t || !n || e.source === e.target || n.type?.startsWith("trigger-"));
1093
- }
1094
- function re(e) {
1095
- if (!ne(e)) return;
1096
- O();
1097
- let t = e.targetHandle ?? void 0, n = T.value.find((t) => t.id === e.target);
1098
- if (n?.type?.startsWith("condition-")) {
1099
- let n = D.value.find((n) => n.target === e.target && (n.targetHandle ?? void 0) === t);
1100
- n && (D.value = D.value.filter((e) => e.id !== n.id));
1101
- }
1102
- let r = {
1103
- id: `e-${e.source}-${e.sourceHandle ?? "out"}-${e.target}`,
1104
- source: e.source,
1105
- target: e.target,
1106
- sourceHandle: e.sourceHandle ?? void 0,
1107
- targetHandle: t
1108
- };
1109
- D.value.push(r);
1110
- let i = Ht(T.value.find((t) => t.id === e.source)?.data, n?.data);
1111
- i && n?.data && Object.assign(n.data, i), c("change");
1112
- }
1113
- function ie(e) {
1114
- e.some((e) => e.type === "remove") && (O(), c("node-select", null), c("change"));
1115
- }
1116
- function ae(e) {
1117
- let t = e.dataTransfer?.getData("application/automationnode");
1118
- if (!t) return;
1119
- let n = W(t);
1120
- if (!n) return;
1121
- O();
1122
- let r = f({
1123
- x: e.clientX,
1124
- y: e.clientY
1125
- }), i = {
1126
- id: me(12),
1127
- type: t,
1128
- position: r,
1129
- data: Ut({ ...n.defaults })
1130
- };
1131
- T.value = [...T.value, i], c("change");
1132
- }
1133
- function oe(e) {
1134
- let t = W(e);
1135
- if (!t) return;
1136
- O();
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: me(12),
1139
- type: e,
1140
- position: {
1141
- x: s + u(),
1142
- y: l + u()
1143
- },
1144
- data: Ut({ ...t.defaults })
1145
- };
1146
- return T.value = [...T.value, d], c("change"), d;
1147
- }
1148
- function se(e) {
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
- }
1151
- function le() {
1152
- O(), T.value = [], D.value = [], c("change");
1153
- }
1154
- function ue() {
1155
- return [...T.value];
1156
- }
1157
- function de() {
1158
- return [...D.value];
1159
- }
1160
- function P(e, t) {
1161
- let n = T.value.find((t) => t.id === e);
1162
- if (n && (n.data = t, n.type === "condition-switch" && Array.isArray(t.cases))) {
1163
- let n = new Set(t.cases.map(kt));
1164
- D.value = D.value.filter((t) => t.source !== e || !t.sourceHandle?.startsWith("case-") || n.has(t.sourceHandle));
1165
- }
1166
- }
1167
- function fe(e) {
1168
- let t = e.metaKey || e.ctrlKey;
1169
- t && e.key === "z" && !e.shiftKey ? (e.preventDefault(), k()) : (t && e.key === "z" && e.shiftKey || t && e.key === "y") && (e.preventDefault(), A());
1170
- }
1171
- return x(() => a.flow._id, () => {
1172
- T.value = [...a.flow.nodes], D.value = [...a.flow.edges], y.clear();
1173
- }), ee(() => window.addEventListener("keydown", fe)), r(() => window.removeEventListener("keydown", fe)), n({
1174
- removeNode: se,
1175
- addNodeAtCenter: oe,
1176
- clearAll: le,
1177
- getNodes: ue,
1178
- getEdges: de,
1179
- updateNodeData: P,
1180
- undo: k,
1181
- redo: A,
1182
- canUndo: y.canUndo,
1183
- canRedo: y.canRedo
1184
- }), (n, r) => (o(), S("div", {
1185
- ref: "canvasRef",
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: ae,
1188
- onDragover: r[2] ||= t(() => {}, ["prevent"]),
1189
- onDragenter: r[3] ||= t(() => {}, ["prevent"])
1190
- }, [M(v(Me), {
1191
- nodes: v(T),
1192
- "onUpdate:nodes": r[0] ||= (e) => _(T) ? T.value = e : null,
1193
- edges: v(D),
1194
- "onUpdate:edges": r[1] ||= (e) => _(D) ? D.value = e : null,
1195
- "node-types": C,
1196
- "edge-types": w,
1197
- "default-viewport": {
1198
- zoom: e.mobile ? .7 : .9,
1199
- x: 0,
1200
- y: 0
1201
- },
1202
- "snap-to-grid": !0,
1203
- "snap-grid": [16, 16],
1204
- "is-valid-connection": ne,
1205
- class: "automation-canvas",
1206
- onNodeClick: N,
1207
- onPaneClick: te,
1208
- onConnect: re,
1209
- onNodesChange: ie
1210
- }, g({
1211
- default: b(() => [M(v(ze), { gap: 16 }), M(v(Ot))]),
1212
- _: 2
1213
- }, [v(T).length ? void 0 : {
1214
- name: "default",
1215
- fn: b(() => [E("div", ln, [E("span", un, s(e.mobile ? v(l)("views.automation.no_nodes_mobile") : v(l)("views.automation.no_nodes")), 1)])]),
1216
- key: "0"
1217
- }]), 1032, [
1218
- "nodes",
1219
- "edges",
1220
- "default-viewport"
1221
- ])], 34));
1222
- }
1223
- }), fn = {
1224
- "trigger-detection": P(() => import("./ConfigTriggerDetection-Bl5RLc9-.js")),
1225
- "trigger-sensor": P(() => import("./ConfigTriggerSensor-BW6R5G1E.js")),
1226
- "trigger-schedule": P(() => import("./ConfigTriggerSchedule-DBaslXZn.js")),
1227
- "trigger-webhook": P(() => import("./ConfigTriggerWebhook-BuweCREC.js")),
1228
- "trigger-mqtt": P(() => import("./ConfigTriggerMqtt-DxE9E_We.js")),
1229
- "trigger-system": P(() => import("./ConfigTriggerSystem-WTcomTVB.js")),
1230
- "trigger-manual": P(() => import("./ConfigTriggerManual-BHrZRxUA.js")),
1231
- "trigger-geofence": P(() => import("./ConfigTriggerGeofence-C2P-lZvJ.js")),
1232
- "action-snapshot": P(() => import("./ConfigActionSnapshot-BXUyBDrZ.js")),
1233
- "action-sensor": P(() => import("./ConfigActionSensor-KMyKW8a4.js")),
1234
- "action-notification": P(() => import("./ConfigActionNotification-L5oaXgIQ.js")),
1235
- "action-notification-control": P(() => import("./ConfigActionNotificationControl-DUa2iWvF.js")),
1236
- "action-assistant": P(() => import("./ConfigActionAssistant-DQfehzH6.js")),
1237
- "action-http": P(() => import("./ConfigActionHttp-VqM0i3cV.js")),
1238
- "action-mqtt": P(() => import("./ConfigActionMqtt-Cm51kwWp.js")),
1239
- "action-delay": P(() => import("./ConfigActionDelay-CQDVG521.js")),
1240
- "action-variable": P(() => import("./ConfigActionVariable-5gjlEinD.js")),
1241
- "action-plugin": P(() => import("./ConfigActionPlugin-DfWMHSOu.js")),
1242
- "action-image-input": P(() => import("./ConfigActionImageInput-D7Maj3R-.js")),
1243
- "action-output": P(() => import("./ConfigActionOutput-6e9FLeyi.js")),
1244
- "action-camera-control": P(() => import("./ConfigActionCameraControl-C3MnsSHv.js")),
1245
- "condition-ifelse": P(() => import("./ConfigConditionIfElse-KVINr4wM.js")),
1246
- "condition-switch": P(() => import("./ConfigConditionSwitch-MMBCtsCG.js")),
1247
- "condition-sensorstate": P(() => import("./ConfigConditionSensorState-DfA7Z-rZ.js")),
1248
- "condition-time": P(() => import("./ConfigConditionTime-BFHFgE8n.js"))
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
- key: 0,
1251
- class: "flex flex-col field-gap"
1252
- }, Dn = { class: "cui-label" }, On = {
1253
- key: 1,
1254
- class: "flex flex-col field-gap"
1255
- }, kn = { class: "cui-label" }, An = { class: "p-4 border-top-color" }, jn = /* @__PURE__ */ A({
1256
- __name: "CuiAutomationNodeConfig",
1257
- props: { node: {} },
1258
- emits: [
1259
- "close",
1260
- "update:data",
1261
- "delete"
1262
- ],
1263
- setup(e, { emit: t }) {
1264
- let n = e, r = t, { t: i } = R(), a = y(() => n.node.type ? W(n.node.type) : void 0), c = y(() => n.node.type?.startsWith("action-")), l = y(() => {
1265
- if (n.node.type) return fn[n.node.type];
1266
- }), u = y(() => {
1267
- let e = ["config"];
1268
- return c.value && n.node.data.alias && e.push("alias"), a.value?.supportsRepeat && n.node.data.repeat > 1 && e.push("repeat"), e;
1269
- });
1270
- function d(e) {
1271
- r("update:data", e);
1272
- }
1273
- return (t, n) => {
1274
- let r = V, p = Se, g = we, _ = B, y = te, x = H, w = Ce, T = Ee, D = Te;
1275
- return o(), S("div", pn, [
1276
- E("div", mn, [
1277
- E("div", {
1278
- class: "flex items-center justify-center w-8 h-8 rounded-md shrink-0",
1279
- style: C({
1280
- backgroundColor: `${v(a)?.color}20`,
1281
- color: v(a)?.color
1282
- })
1283
- }, [(o(), m(f(v(a)?.icon), { class: "w-4 h-4" }))], 4),
1284
- E("div", hn, [E("div", gn, s(v(a) ? v(i)(v(a).labelKey) : e.node.type), 1), E("div", _n, s(v(i)("views.automation.node_config")), 1)]),
1285
- M(p, {
1286
- severity: "secondary",
1287
- text: "",
1288
- rounded: "",
1289
- class: "shrink-0 cui-icon-sm",
1290
- onClick: n[0] ||= (e) => t.$emit("close")
1291
- }, {
1292
- icon: b(() => [M(r, {
1293
- width: "100%",
1294
- height: "100%"
1295
- })]),
1296
- _: 1
1297
- })
1298
- ]),
1299
- E("div", vn, [M(D, {
1300
- multiple: "",
1301
- value: v(u),
1302
- class: "w-[300px]"
1303
- }, {
1304
- default: b(() => [
1305
- v(c) ? (o(), m(w, {
1306
- key: 0,
1307
- value: "alias"
1308
- }, {
1309
- default: b(() => [M(g, { class: "px-4 rounded-none!" }, {
1310
- default: b(() => [E("span", yn, s(v(i)("components.automation_nodes.alias")), 1)]),
1311
- _: 1
1312
- }), M(x, { pt: { content: { class: "px-4 w-[300px]" } } }, {
1313
- default: b(() => [E("div", bn, [M(_, {
1314
- "model-value": e.node.data.alias ?? "",
1315
- placeholder: v(i)("components.automation_nodes.alias_placeholder"),
1316
- "onUpdate:modelValue": n[1] ||= (e) => d({ alias: e || void 0 })
1317
- }, null, 8, ["model-value", "placeholder"]), M(y, {
1318
- severity: "secondary",
1319
- variant: "simple",
1320
- size: "small",
1321
- class: "cui-input-hint"
1322
- }, {
1323
- default: b(() => [O(s(v(i)("components.automation_nodes.alias_hint")), 1)]),
1324
- _: 1
1325
- })])]),
1326
- _: 1
1327
- })]),
1328
- _: 1
1329
- })) : h("", !0),
1330
- v(l) ? (o(), m(w, {
1331
- key: 1,
1332
- value: "config"
1333
- }, {
1334
- default: b(() => [M(g, { class: "px-4 rounded-none!" }, {
1335
- default: b(() => [E("span", xn, s(v(i)("views.automation.node_config")), 1)]),
1336
- _: 1
1337
- }), M(x, { pt: { content: { class: "px-4 w-[300px]" } } }, {
1338
- default: b(() => [E("div", null, [(o(), m(f(v(l)), {
1339
- data: e.node.data,
1340
- "node-id": e.node.id,
1341
- "onUpdate:data": d
1342
- }, null, 40, ["data", "node-id"]))])]),
1343
- _: 1
1344
- })]),
1345
- _: 1
1346
- })) : h("", !0),
1347
- v(a)?.supportsRepeat ? (o(), m(w, {
1348
- key: 2,
1349
- value: "repeat"
1350
- }, {
1351
- default: b(() => [M(g, { class: "px-4 rounded-none!" }, {
1352
- default: b(() => [E("span", Sn, s(v(i)("components.automation_nodes.repeat")), 1)]),
1353
- _: 1
1354
- }), M(x, { pt: { content: { class: "px-4 w-[300px]" } } }, {
1355
- default: b(() => [E("div", Cn, [
1356
- E("div", wn, [E("label", Tn, s(v(i)("components.automation_nodes.repeat_count")), 1), M(T, {
1357
- "model-value": e.node.data.repeat ?? 1,
1358
- min: 1,
1359
- max: 1e5,
1360
- class: "w-full",
1361
- "onUpdate:modelValue": n[2] ||= (e) => d({ repeat: e })
1362
- }, null, 8, ["model-value"])]),
1363
- e.node.data.repeat > 1 ? (o(), S("div", En, [
1364
- E("label", Dn, s(v(i)("components.automation_nodes.repeat_concurrency")), 1),
1365
- M(T, {
1366
- "model-value": e.node.data.repeatConcurrency ?? 1,
1367
- min: 1,
1368
- max: 64,
1369
- class: "w-full",
1370
- "onUpdate:modelValue": n[3] ||= (e) => d({ repeatConcurrency: e })
1371
- }, null, 8, ["model-value"]),
1372
- M(y, {
1373
- severity: "secondary",
1374
- variant: "simple",
1375
- size: "small",
1376
- class: "cui-input-hint"
1377
- }, {
1378
- default: b(() => [O(s(v(i)("components.automation_nodes.repeat_concurrency_hint")), 1)]),
1379
- _: 1
1380
- })
1381
- ])) : h("", !0),
1382
- e.node.data.repeat > 1 ? (o(), S("div", On, [E("label", kn, s(v(i)("components.automation_nodes.repeat_delay")), 1), M(T, {
1383
- "model-value": e.node.data.repeatDelayMs ?? 0,
1384
- min: 0,
1385
- max: 6e4,
1386
- suffix: " ms",
1387
- class: "w-full",
1388
- "onUpdate:modelValue": n[4] ||= (e) => d({ repeatDelayMs: e })
1389
- }, null, 8, ["model-value"])])) : h("", !0)
1390
- ])]),
1391
- _: 1
1392
- })]),
1393
- _: 1
1394
- })) : h("", !0)
1395
- ]),
1396
- _: 1
1397
- }, 8, ["value"])]),
1398
- E("div", An, [M(p, {
1399
- severity: "danger",
1400
- fluid: "",
1401
- class: "w-full cui-button-medium",
1402
- label: v(i)("views.automation.delete_node"),
1403
- onClick: n[5] ||= (e) => t.$emit("delete")
1404
- }, null, 8, ["label"])])
1405
- ]);
1406
- };
1407
- }
1408
- }), Mn = {
1409
- key: 0,
1410
- class: "text-xs font-semibold text-muted uppercase tracking-wider mb-3"
1411
- }, Nn = { class: "text-xs font-medium text-muted mb-2" }, Pn = { class: "flex flex-col gap-1.5" }, Fn = [
1412
- "draggable",
1413
- "onDragstart",
1414
- "onClick"
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
- key: 0,
1417
- class: "text-[11px] text-muted block truncate mt-0.5 leading-tight"
1418
- }, Bn = /*#__PURE__*/ ve(/* @__PURE__ */ A({
1419
- __name: "CuiAutomationNodePalette",
1420
- props: /*@__PURE__*/ n({ mode: {} }, G),
1421
- emits: ["node-click"],
1422
- setup(e) {
1423
- let { t } = R(), n = [
1424
- {
1425
- key: "trigger",
1426
- labelKey: "components.automation_nodes.category_triggers",
1427
- nodes: U("trigger")
1428
- },
1429
- {
1430
- key: "condition",
1431
- labelKey: "components.automation_nodes.category_conditions",
1432
- nodes: U("condition")
1433
- },
1434
- {
1435
- key: "utility",
1436
- labelKey: "components.automation_nodes.category_utilities",
1437
- nodes: U("utility")
1438
- },
1439
- {
1440
- key: "action",
1441
- labelKey: "components.automation_nodes.category_actions",
1442
- nodes: U("action")
1443
- }
1444
- ];
1445
- function r(e, t) {
1446
- e.dataTransfer && (e.dataTransfer.setData("application/automationnode", t), e.dataTransfer.effectAllowed = "move");
1447
- }
1448
- return (i, c) => (o(), S("div", { class: d(["overflow-y-auto p-3", e.mode === "drag" ? "h-full" : ""]) }, [e.mode === "drag" ? (o(), S("div", Mn, s(v(t)("views.automation.node_palette")), 1)) : h("", !0), (o(), S(w, null, a(n, (n) => E("div", {
1449
- key: n.key,
1450
- class: "mb-4"
1451
- }, [E("div", Nn, s(v(t)(n.labelKey)), 1), E("div", Pn, [(o(!0), S(w, null, a(n.nodes, (n) => (o(), S("div", {
1452
- key: n.type,
1453
- class: d(["automation-palette-node", e.mode === "drag" ? "cursor-grab active:cursor-grabbing" : "cursor-pointer"]),
1454
- draggable: e.mode === "drag",
1455
- onDragstart: (t) => e.mode === "drag" ? r(t, n.type) : void 0,
1456
- onClick: (t) => e.mode === "click" ? i.$emit("node-click", n.type) : void 0
1457
- }, [E("div", {
1458
- class: "automation-palette-node__accent",
1459
- style: C({ backgroundColor: n.color })
1460
- }, null, 4), E("div", In, [E("div", {
1461
- class: "flex items-center justify-center w-8 h-8 rounded-lg shrink-0",
1462
- style: C({
1463
- backgroundColor: `${n.color}15`,
1464
- color: n.color
1465
- })
1466
- }, [(o(), m(f(n.icon), { class: "w-4.5 h-4.5" }))], 4), E("div", Ln, [E("span", Rn, s(v(t)(n.labelKey)), 1), e.mode === "click" ? (o(), S("span", zn, s(v(t)(n.descriptionKey)), 1)) : h("", !0)])])], 42, Fn))), 128))])])), 64))], 2));
1467
- }
1468
- }), [["__scopeId", "data-v-08caad7f"]]), Vn = { class: "flex items-center gap-2 px-3 py-2 border-bottom-color card-background min-h-[48px]" }, Hn = /* @__PURE__ */ A({
1469
- __name: "CuiAutomationToolbar",
1470
- props: {
1471
- flow: {},
1472
- showHistory: { type: Boolean }
1473
- },
1474
- emits: [
1475
- "update:name",
1476
- "toggle-enabled",
1477
- "toggle-suppress-duplicates",
1478
- "toggle-single-execution",
1479
- "show-history"
1480
- ],
1481
- setup(e, { emit: t }) {
1482
- let n = e, r = t, { t: i } = R(), { smBreakpoint: a } = ce(), s = T("menuRef"), c = y(() => [{
1483
- key: "suppressDuplicates",
1484
- label: i("views.automation.suppress_duplicates"),
1485
- description: i("views.automation.suppress_duplicates_hint"),
1486
- toggle: !0,
1487
- toggleState: n.flow.suppressDuplicates,
1488
- onClick: () => r("toggle-suppress-duplicates")
1489
- }, {
1490
- key: "singleExecution",
1491
- label: i("views.automation.single_execution"),
1492
- description: i("views.automation.single_execution_hint"),
1493
- toggle: !0,
1494
- toggleState: n.flow.singleExecution,
1495
- onClick: () => r("toggle-single-execution")
1496
- }]);
1497
- return (t, n) => {
1498
- let r = je, l = Se, u = B, f = se, p = ne, g = He, _ = ie, y = N;
1499
- return o(), S("div", Vn, [
1500
- v(a) ? h("", !0) : (o(), m(l, {
1501
- key: 0,
1502
- severity: "secondary",
1503
- text: "",
1504
- rounded: "",
1505
- class: "cui-icon-md shrink-0",
1506
- onClick: n[0] ||= (e) => t.$router.push("/automations")
1507
- }, {
1508
- icon: b(() => [M(r, {
1509
- width: "100%",
1510
- height: "100%"
1511
- })]),
1512
- _: 1
1513
- })),
1514
- M(u, {
1515
- "model-value": e.flow.name,
1516
- class: d(["font-medium text-sm min-w-0 flex-1", { "max-w-[300px]": !v(a) }]),
1517
- placeholder: v(i)("views.automations.flow_name_placeholder"),
1518
- "onUpdate:modelValue": n[1] ||= (e) => t.$emit("update:name", String(e ?? ""))
1519
- }, null, 8, [
1520
- "model-value",
1521
- "class",
1522
- "placeholder"
1523
- ]),
1524
- n[5] ||= E("div", { class: "flex-1" }, null, -1),
1525
- M(f, {
1526
- "model-value": e.flow.enabled,
1527
- class: "shrink-0",
1528
- "onUpdate:modelValue": n[2] ||= (e) => t.$emit("toggle-enabled")
1529
- }, null, 8, ["model-value"]),
1530
- e.showHistory ? D((o(), m(l, {
1531
- key: 1,
1532
- severity: "secondary",
1533
- text: "",
1534
- rounded: "",
1535
- class: "cui-icon-md shrink-0",
1536
- onClick: n[3] ||= (e) => t.$emit("show-history")
1537
- }, {
1538
- icon: b(() => [M(p, {
1539
- width: "100%",
1540
- height: "100%"
1541
- })]),
1542
- _: 1
1543
- })), [[
1544
- y,
1545
- { value: v(i)("views.automations.run_history") },
1546
- void 0,
1547
- { bottom: !0 }
1548
- ]]) : h("", !0),
1549
- M(l, {
1550
- severity: "secondary",
1551
- text: "",
1552
- rounded: "",
1553
- class: "cui-icon-md shrink-0",
1554
- onClick: n[4] ||= (e) => v(s)?.toggleMenu(e)
1555
- }, {
1556
- icon: b(() => [M(g, {
1557
- width: "100%",
1558
- height: "100%"
1559
- })]),
1560
- _: 1
1561
- }),
1562
- M(_, {
1563
- ref_key: "menuRef",
1564
- ref: s,
1565
- items: v(c),
1566
- "auto-hide": !1,
1567
- popover: { pt: {
1568
- root: { class: "w-[18rem]" },
1569
- content: { class: "p-0! rounded-xl! overflow-hidden!" }
1570
- } }
1571
- }, null, 8, ["items"])
1572
- ]);
1573
- };
1574
- }
1575
- }), Un = { class: "flex flex-col gap-4 w-full" }, Wn = {
1576
- key: 1,
1577
- class: "text-sm text-muted"
1578
- }, Gn = /* @__PURE__ */ A({
1579
- __name: "CuiAutomationMobileNodeConfig",
1580
- props: { node: {} },
1581
- setup(e, { expose: t }) {
1582
- let n = e, { t: r } = R(), i = Z(), a = y(() => {
1583
- if (n.node.type) return fn[n.node.type];
1584
- });
1585
- function c(e) {
1586
- if (!i.draft) return;
1587
- let t = i.draft.nodes.find((e) => e.id === n.node.id);
1588
- t?.data && (Object.assign(t.data, e), i.draftDirty = !0);
1589
- }
1590
- return t({ onConfirm: async () => {
1591
- if (i.draft) {
1592
- let e = n.node.id;
1593
- i.draft.nodes = i.draft.nodes.filter((t) => t.id !== e), i.draft.edges = i.draft.edges.filter((t) => t.source !== e && t.target !== e);
1594
- }
1595
- } }), (t, n) => (o(), S("div", Un, [v(a) ? (o(), m(f(v(a)), {
1596
- key: 0,
1597
- data: e.node.data,
1598
- "node-id": e.node.id,
1599
- "onUpdate:data": c
1600
- }, null, 40, ["data", "node-id"])) : (o(), S("div", Wn, s(v(r)("views.automation.no_node_selected")), 1))]));
1601
- }
1602
- }), Kn = { class: "h-full w-full relative overflow-hidden flex flex-col" }, qn = { class: "flex flex-1 min-h-0" }, Jn = { class: "relative w-6 h-6" }, Yn = {
1603
- key: 1,
1604
- class: "flex flex-1 items-center justify-center"
1605
- }, Xn = {
1606
- key: 2,
1607
- class: "flex flex-1 items-center justify-center"
1608
- }, Zn = { class: "text-muted" }, Qn = /*@__PURE__*/ A({
1609
- __name: "Automation",
1610
- setup(e) {
1611
- let t = P(() => import("./CuiAutomationRunsDialog-Bjx5DXXc.js")), n = new Oe(), r = ye(), i = re(), { t: a } = R(), { smBreakpoint: c } = ce(), { bottombarHeight: u } = pe(), p = fe(), g = le(), O = Z(), k = y(() => r.params.id), A = y(() => k.value === "new"), ee = y(() => _e(void 0, "admin")), { data: te, isBusy: ne } = n.getAutomationQuery(k), { mutateAsync: ie } = n.createAutomationQuery(), { mutateAsync: se } = n.patchAutomationQuery(), { mutateAsync: ge } = n.deleteAutomationQuery(), { mutateAsync: ve } = n.triggerAutomationQuery(), F = T("canvasRef"), I = j(!1), L = j(!1), be = j(!1), xe = j(!1), z = !1, B, V = y({
1612
- get: () => O.draft,
1613
- set: (e) => {
1614
- O.draft = e;
1615
- }
1616
- }), H = y(() => {
1617
- if (V.value && O.selectedNodeId) return V.value.nodes.find((e) => e.id === O.selectedNodeId);
1618
- }), Ce = y(() => {
1619
- if (!c.value && H.value) return "calc(300px + 1.25rem + var(--safe-area-inset-right))";
1620
- }), we = y(() => [
1621
- ...V.value?.nodes.some((e) => e.type === "trigger-manual") ?? !1 ? [{
1622
- label: a("views.automation.run"),
1623
- icon: de,
1624
- buttonProps: { disabled: A.value || L.value },
1625
- command: () => He()
1626
- }] : [],
1627
- {
1628
- label: a("views.automation.undo"),
1629
- icon: Be,
1630
- buttonProps: { disabled: !be.value },
1631
- command: () => {
1632
- F.value?.undo(), G();
1633
- }
1634
- },
1635
- {
1636
- label: a("views.automation.redo"),
1637
- icon: Fe,
1638
- buttonProps: { disabled: !xe.value },
1639
- command: () => {
1640
- F.value?.redo(), G();
1641
- }
1642
- },
1643
- {
1644
- label: a("views.automation.export_blueprint"),
1645
- icon: $e,
1646
- command: () => Ue()
1647
- },
1648
- {
1649
- label: a("views.automation.clear"),
1650
- icon: Re,
1651
- command: () => We()
1652
- },
1653
- {
1654
- label: a("views.automations.delete"),
1655
- icon: nt,
1656
- buttonProps: { severity: "danger" },
1657
- command: () => Ge()
1658
- }
1659
- ]);
1660
- function Te() {
1661
- be.value = F.value?.canUndo ?? !1, xe.value = F.value?.canRedo ?? !1;
1662
- }
1663
- function Ee() {
1664
- V.value = {
1665
- _id: me(12),
1666
- name: a("views.automation.untitled"),
1667
- enabled: !1,
1668
- nodes: [],
1669
- edges: [],
1670
- suppressDuplicates: !1,
1671
- singleExecution: !1,
1672
- createdAt: Date.now(),
1673
- updatedAt: Date.now()
1674
- }, O.selectedNodeId = null;
1675
- }
1676
- function U() {
1677
- clearTimeout(B), B = setTimeout(() => {
1678
- J(), O.validationIssues = It(V.value);
1679
- }, 300);
1680
- }
1681
- function G() {
1682
- L.value = !0, Te(), U();
1683
- }
1684
- function K() {
1685
- p.openComponentDialog(t, { data: {
1686
- title: a("views.automations.run_history"),
1687
- contentProps: { flowId: k.value },
1688
- hideConfirmButton: !0
1689
- } });
1690
- }
1691
- function Me() {
1692
- J(), G();
1693
- }
1694
- function Ne(e) {
1695
- V.value && (V.value.name = e, G());
1696
- }
1697
- function Ie(e, t) {
1698
- if (!V.value) return;
1699
- let n = V.value.nodes.find((t) => t.id === e);
1700
- if (n?.data) {
1701
- if (!Object.entries(t).some(([e, t]) => n.data[e] !== t)) return;
1702
- Object.assign(n.data, t), F.value?.updateNodeData(e, { ...n.data }), G();
1703
- }
1704
- }
1705
- function q() {
1706
- if (!V.value) return {};
1707
- let e = F.value?.getNodes?.() ?? V.value.nodes, t = F.value?.getEdges?.() ?? V.value.edges;
1708
- return {
1709
- name: V.value.name,
1710
- enabled: V.value.enabled,
1711
- suppressDuplicates: V.value.suppressDuplicates,
1712
- singleExecution: V.value.singleExecution,
1713
- nodes: e.map((e) => ({
1714
- id: e.id,
1715
- type: e.type ?? "",
1716
- position: e.position,
1717
- data: e.data ?? {}
1718
- })),
1719
- edges: t.map((e) => ({
1720
- id: e.id,
1721
- source: e.source,
1722
- target: e.target,
1723
- sourceHandle: e.sourceHandle ?? void 0,
1724
- targetHandle: e.targetHandle ?? void 0
1725
- }))
1726
- };
1727
- }
1728
- async function Le() {
1729
- if (!V.value) return;
1730
- J();
1731
- let e = q();
1732
- try {
1733
- if (A.value) {
1734
- let t = await ie({ data: e });
1735
- L.value = !1, i.replace(`/automations/${t._id}`);
1736
- } else {
1737
- let t = await se({
1738
- id: V.value._id,
1739
- data: e
1740
- });
1741
- if (L.value = !1, t?.nodes && V.value) for (let e of t.nodes) {
1742
- let t = V.value.nodes.find((t) => t.id === e.id);
1743
- t?.data && e.data && Object.assign(t.data, e.data);
1744
- }
1745
- g.add({
1746
- severity: "success",
1747
- detail: a("views.automation.saved"),
1748
- life: 3e3
1749
- });
1750
- }
1751
- } catch {
1752
- g.add({
1753
- severity: "error",
1754
- detail: a("views.automation.save_failed"),
1755
- life: 3e3
1756
- });
1757
- }
1758
- }
1759
- function J() {
1760
- if (!V.value) return;
1761
- let e = F.value?.getNodes(), t = F.value?.getEdges();
1762
- e && (V.value.nodes = e), t && (V.value.edges = t);
1763
- }
1764
- function Y(e) {
1765
- if (O.selectedNodeId = e, c.value && e) {
1766
- J();
1767
- let t = V.value?.nodes.find((t) => t.id === e);
1768
- if (!t) return;
1769
- let n = t.type ? W(t.type) : void 0, r = n ? a(n.labelKey) : "Node", i = t.id;
1770
- p.openComponentDialog(Gn, {
1771
- data: {
1772
- title: r,
1773
- confirmText: a("views.automation.delete_node"),
1774
- confirmButtonProps: { severity: "danger" },
1775
- contentProps: { node: {
1776
- id: t.id,
1777
- type: t.type,
1778
- data: t.data
1779
- } }
1780
- },
1781
- onSettled: () => {
1782
- V.value?.nodes.some((e) => e.id === i) || (F.value?.removeNode(i), G());
1783
- }
1784
- });
1785
- }
1786
- }
1787
- function X(e) {
1788
- I.value = !1, F.value?.addNodeAtCenter(e), G();
1789
- }
1790
- function ze() {
1791
- O.selectedNodeId && (F.value?.removeNode(O.selectedNodeId), V.value && (V.value.nodes = V.value.nodes.filter((e) => e.id !== O.selectedNodeId), V.value.edges = V.value.edges.filter((e) => e.source !== O.selectedNodeId && e.target !== O.selectedNodeId)), O.selectedNodeId = null, O.lastOutput = null, G());
1792
- }
1793
- async function He() {
1794
- if (V.value && !A.value) try {
1795
- O.lastOutput = null;
1796
- let e = await ve({ id: V.value._id });
1797
- e?.output && Object.keys(e.output).length > 0 && (O.lastOutput = e.output), g.add({
1798
- severity: "success",
1799
- detail: a("views.automation.triggered"),
1800
- life: 3e3
1801
- });
1802
- } catch {
1803
- g.add({
1804
- severity: "error",
1805
- detail: a("views.automation.trigger_failed"),
1806
- life: 3e3
1807
- });
1808
- }
1809
- }
1810
- function Ue() {
1811
- if (!V.value) return;
1812
- Le();
1813
- let e = {
1814
- version: 1,
1815
- name: V.value.name,
1816
- nodes: ke(V.value.nodes),
1817
- edges: V.value.edges
1818
- }, t = JSON.stringify(e, null, 2), n = new Blob([t], { type: "application/json" });
1819
- he({
1820
- blob: n,
1821
- filename: `${V.value.name.replace(/\s+/g, "_").toLowerCase()}.blueprint.json`
1822
- });
1823
- }
1824
- function We() {
1825
- p.openTextDialog({
1826
- data: {
1827
- title: a("views.automation.clear"),
1828
- contentText: a("views.automation.clear_confirm"),
1829
- confirmText: a("views.automation.clear")
1830
- },
1831
- onConfirm: async () => {
1832
- F.value?.clearAll(), V.value && (V.value.nodes = [], V.value.edges = []), O.selectedNodeId = null, G();
1833
- }
1834
- });
1835
- }
1836
- function Ge() {
1837
- if (!V.value) return;
1838
- let e = V.value._id;
1839
- p.openTextDialog({
1840
- data: {
1841
- title: a("views.automations.delete"),
1842
- contentText: a("views.automations.delete_confirm"),
1843
- confirmText: a("views.automations.delete")
1844
- },
1845
- onConfirm: async () => {
1846
- await ge({ id: e }), i.push("/automations");
1847
- }
1848
- });
1849
- }
1850
- function Ke() {
1851
- i.push("/automations");
1852
- }
1853
- return x(k, (e) => {
1854
- O.activeFlowId = e === "new" ? null : e ?? null, O.selectedNodeId = null, O.lastOutput = null, L.value = !1, e === "new" ? Ee() : V.value = null;
1855
- }, { immediate: !0 }), x(te, (e) => {
1856
- e && !L.value && (V.value = JSON.parse(JSON.stringify(e)), O.validationIssues = It(V.value));
1857
- }, { immediate: !0 }), x(() => O.draftDirty, (e) => {
1858
- e && (O.draftDirty = !1, G());
1859
- }), oe((e) => !L.value || z ? !0 : (p.openTextDialog({
1860
- data: {
1861
- title: a("views.automation.unsaved_title"),
1862
- contentText: a("views.automation.unsaved_message"),
1863
- confirmText: a("views.automation.discard")
1864
- },
1865
- onConfirm: async () => {
1866
- z = !0, i.push(e.fullPath);
1867
- }
1868
- }), !1)), (e, t) => {
1869
- let n = je, r = Se, i = ae, p = De, g = Ae, y = ue, x = N;
1870
- return o(), S("div", Kn, [M(i, { position: "left" }, {
1871
- default: b(() => [M(r, {
1872
- severity: "secondary",
1873
- text: "",
1874
- class: "cui-button p-2 text-color non-draggable-region",
1875
- onClick: Ke
1876
- }, {
1877
- icon: b(() => [M(n, { class: "w-6 h-6" })]),
1878
- _: 1
1879
- })]),
1880
- _: 1
1881
- }), v(V) ? (o(), S(w, { key: 0 }, [
1882
- M(Hn, {
1883
- flow: v(V),
1884
- "show-history": !v(A) && v(ee),
1885
- onShowHistory: K,
1886
- "onUpdate:name": Ne,
1887
- onToggleEnabled: t[0] ||= (e) => {
1888
- v(V).enabled = !v(V).enabled, G();
1889
- },
1890
- onToggleSuppressDuplicates: t[1] ||= (e) => {
1891
- v(V).suppressDuplicates = !v(V).suppressDuplicates, G();
1892
- },
1893
- onToggleSingleExecution: t[2] ||= (e) => {
1894
- v(V).singleExecution = !v(V).singleExecution, G();
1895
- }
1896
- }, null, 8, ["flow", "show-history"]),
1897
- E("div", qn, [
1898
- v(c) ? h("", !0) : (o(), m(Bn, {
1899
- key: 0,
1900
- class: "w-[240px] shrink-0"
1901
- })),
1902
- M(dn, {
1903
- ref_key: "canvasRef",
1904
- ref: F,
1905
- flow: v(V),
1906
- mobile: v(c),
1907
- class: "flex-1 min-w-0",
1908
- onNodeSelect: Y,
1909
- onChange: Me
1910
- }, null, 8, ["flow", "mobile"]),
1911
- v(c) ? h("", !0) : (o(), S("div", {
1912
- key: 1,
1913
- class: "shrink-0 overflow-hidden transition-[width] duration-200 ease-in-out",
1914
- style: C({ width: v(H) ? "300px" : "0px" })
1915
- }, [v(H) ? (o(), m(jn, {
1916
- key: 0,
1917
- node: v(H),
1918
- class: "w-[300px]",
1919
- onClose: t[3] ||= (e) => v(O).selectedNodeId = null,
1920
- "onUpdate:data": t[4] ||= (e) => Ie(v(O).selectedNodeId, e),
1921
- onDelete: ze
1922
- }, null, 8, ["node"])) : h("", !0)], 4))
1923
- ]),
1924
- M(p, {
1925
- model: v(we),
1926
- direction: "up",
1927
- "transition-delay": 80,
1928
- "tooltip-options": {
1929
- position: "left",
1930
- event: void 0
1931
- },
1932
- style: C({
1933
- position: "fixed",
1934
- zIndex: 15,
1935
- bottom: `calc(${v(u)}px + ${v(L) ? "4.25rem" : "1.25rem"} + var(--safe-area-inset-bottom))`,
1936
- right: v(Ce) || "calc(1.25rem + var(--safe-area-inset-right))",
1937
- transition: "right 0.2s ease-in-out, bottom 0.2s ease-in-out"
1938
- }),
1939
- pt: { root: { style: "pointer-events: none" } }
1940
- }, {
1941
- button: b(({ visible: e, toggleCallback: t }) => [M(r, {
1942
- rounded: "",
1943
- severity: "secondary",
1944
- class: "pointer-events-auto",
1945
- onClick: t
1946
- }, {
1947
- icon: b(() => [E("div", Jn, [
1948
- E("div", {
1949
- class: d(["absolute top-0.5 left-1/2 -translate-x-1/2 w-1.5 h-1.5 rounded-full transform transition-all duration-100 origin-center", { "w-4 h-[2px] rotate-45 top-1/2 -translate-y-1/2 rounded-none": e }]),
1950
- style: { backgroundColor: "var(--text-color)" }
1951
- }, null, 2),
1952
- E("div", {
1953
- class: d(["absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-1.5 h-1.5 rounded-full transition-all duration-100", { "opacity-0 scale-0": e }]),
1954
- style: { backgroundColor: "var(--text-color)" }
1955
- }, null, 2),
1956
- E("div", {
1957
- class: d(["absolute bottom-0.5 left-1/2 -translate-x-1/2 w-1.5 h-1.5 rounded-full transform transition-all duration-100 origin-center", { "w-4 h-[2px] -rotate-45 bottom-1/2 translate-y-1/2 rounded-none": e }]),
1958
- style: { backgroundColor: "var(--text-color)" }
1959
- }, null, 2)
1960
- ])]),
1961
- _: 2
1962
- }, 1032, ["onClick"])]),
1963
- item: b(({ item: e, toggleCallback: t }) => [D((o(), m(r, l({ severity: "secondary" }, e.buttonProps, {
1964
- rounded: "",
1965
- class: "pointer-events-auto",
1966
- onClick: t
1967
- }), {
1968
- icon: b(() => [(o(), m(f(e.icon)))]),
1969
- _: 2
1970
- }, 1040, ["onClick"])), [[x, { value: e.label }]])]),
1971
- _: 1
1972
- }, 8, ["model", "style"]),
1973
- v(c) ? D((o(), m(r, {
1974
- key: 0,
1975
- rounded: "",
1976
- class: "pointer-events-auto text-white",
1977
- style: C({
1978
- position: "fixed",
1979
- zIndex: 15,
1980
- bottom: `calc(${v(u)}px + 1.25rem + var(--safe-area-inset-bottom))`,
1981
- right: "calc(4.75rem + var(--safe-area-inset-right))"
1982
- }),
1983
- onClick: t[5] ||= (e) => I.value = !0
1984
- }, {
1985
- icon: b(() => [M(v(Ve), { class: "w-5 h-5" })]),
1986
- _: 1
1987
- }, 8, ["style"])), [[x, { value: v(a)("views.automation.add_step") }]]) : h("", !0),
1988
- v(L) ? D((o(), m(r, {
1989
- key: 1,
1990
- rounded: "",
1991
- severity: "success",
1992
- class: "pointer-events-auto text-white",
1993
- style: C({
1994
- position: "fixed",
1995
- zIndex: 15,
1996
- bottom: `calc(${v(u)}px + 1.25rem + var(--safe-area-inset-bottom))`,
1997
- right: v(Ce) || "calc(1.25rem + var(--safe-area-inset-right))",
1998
- transition: "right 0.2s ease-in-out"
1999
- }),
2000
- onClick: Le
2001
- }, {
2002
- icon: b(() => [M(v(Pe), { class: "w-5 h-5" })]),
2003
- _: 1
2004
- }, 8, ["style"])), [[x, { value: v(a)("views.automation.save") }]]) : h("", !0),
2005
- M(g, {
2006
- modelValue: v(I),
2007
- "onUpdate:modelValue": t[6] ||= (e) => _(I) ? I.value = e : null,
2008
- title: v(a)("views.automation.add_step"),
2009
- "max-height": "70vh"
2010
- }, {
2011
- default: b(() => [M(Bn, {
2012
- mode: "click",
2013
- onNodeClick: X
2014
- })]),
2015
- _: 1
2016
- }, 8, ["modelValue", "title"])
2017
- ], 64)) : v(ne) ? (o(), S("div", Yn, [M(y, {
2018
- class: "!w-8 !h-8",
2019
- "stroke-width": "5"
2020
- })])) : (o(), S("div", Xn, [E("span", Zn, s(v(a)("views.automations.no_automations")), 1)]))]);
2021
- };
2022
- }
2023
- }), $n = /* @__PURE__ */ e({ default: () => er }), er = Qn;
2024
- //#endregion
2025
- export { Z as a, er as default, Ge as i, We as n, Ke as r, $n as t };