@camera.ui/server 2.2.7 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (958) hide show
  1. package/LICENSE.md +8 -1
  2. package/dist/interface/assets/404-C0X5UBF4.js +1 -0
  3. package/dist/interface/assets/About-Ctp_u5qK.js +1 -0
  4. package/dist/interface/assets/Assistant-Bj2bAUHD.css +1 -0
  5. package/dist/interface/assets/Assistant-CDrBV_mg.js +1 -0
  6. package/dist/interface/assets/Automation-Dp6V80Iz.js +3 -0
  7. package/dist/interface/assets/Automation-R5o9sXYY.css +1 -0
  8. package/dist/interface/assets/AutomationImport-DKgg7atE.js +2 -0
  9. package/dist/interface/assets/AutomationStore-CU-m5VC8.js +2 -0
  10. package/dist/interface/assets/AutomationStoreDetail-CiyIs8Iu.js +2 -0
  11. package/dist/interface/assets/Automations-Dljh-sWu.js +2 -0
  12. package/dist/interface/assets/Camera-0p0P_mbp.css +1 -0
  13. package/dist/interface/assets/Camera-Bvovab-8.js +2 -0
  14. package/dist/interface/assets/CameraConsole-D_Fv-MAi.js +7 -0
  15. package/dist/interface/assets/Cameras-Cq7Gw-fk.js +651 -0
  16. package/dist/interface/assets/Camview-Bs2VvmUS.css +1 -0
  17. package/dist/interface/assets/Camview-CP6PA20C.js +1 -0
  18. package/dist/interface/assets/CertificateUpload-DjzNMFc3.js +1 -0
  19. package/dist/interface/assets/Config-Dl2TlyFe.js +2 -0
  20. package/dist/interface/assets/ConfigActionAssistant-DCkJ_Iqq.js +1 -0
  21. package/dist/interface/assets/ConfigActionCameraControl-2pzl59gR.js +1 -0
  22. package/dist/interface/assets/ConfigActionDelay-BAp1dr0N.js +1 -0
  23. package/dist/interface/assets/ConfigActionHttp-_kqgEuun.js +1 -0
  24. package/dist/interface/assets/ConfigActionImageInput-BgtACnCm.js +1 -0
  25. package/dist/interface/assets/ConfigActionMqtt-z7UzccW5.js +1 -0
  26. package/dist/interface/assets/ConfigActionNotification-bhbb5AqU.js +1 -0
  27. package/dist/interface/assets/ConfigActionNotificationControl-BbvX8MFu.js +1 -0
  28. package/dist/interface/assets/ConfigActionOutput-DdgSg3FU.js +1 -0
  29. package/dist/interface/assets/ConfigActionPlugin-DGjZd1L0.js +1 -0
  30. package/dist/interface/assets/ConfigActionSensor-DmImWFAo.js +1 -0
  31. package/dist/interface/assets/ConfigActionSnapshot-hVHSfdtS.js +1 -0
  32. package/dist/interface/assets/ConfigActionVariable-BIpruwsx.js +1 -0
  33. package/dist/interface/assets/ConfigConditionIfElse-DRSpsoR4.js +1 -0
  34. package/dist/interface/assets/ConfigConditionSensorState-C2SNARH7.js +1 -0
  35. package/dist/interface/assets/ConfigConditionSwitch-4SbQcU7N.js +1 -0
  36. package/dist/interface/assets/ConfigConditionTime-ESX3shbg.js +1 -0
  37. package/dist/interface/assets/ConfigSensorValueInput-CTUdAA-R.js +1 -0
  38. package/dist/interface/assets/ConfigTriggerDetection-BRr6ixxQ.js +1 -0
  39. package/dist/interface/assets/ConfigTriggerGeofence-D-xRMGrT.js +1 -0
  40. package/dist/interface/assets/ConfigTriggerManual-aXD6k1qa.js +1 -0
  41. package/dist/interface/assets/ConfigTriggerMqtt-pjHW4yOL.js +1 -0
  42. package/dist/interface/assets/ConfigTriggerSchedule-CYOt57qg.js +1 -0
  43. package/dist/interface/assets/ConfigTriggerSensor-BwJ_cAqd.js +1 -0
  44. package/dist/interface/assets/ConfigTriggerSystem-DBXIrjzU.js +1 -0
  45. package/dist/interface/assets/ConfigTriggerWebhook-CccBmMCb.js +1 -0
  46. package/dist/interface/assets/Console-DWAaz1C6.js +1 -0
  47. package/dist/interface/assets/CuiAssistantConversation-B3xEiNNt.js +5 -0
  48. package/dist/interface/assets/CuiAssistantConversation-C5ca1lgX.css +1 -0
  49. package/dist/interface/assets/CuiAutomationRunsDialog-CfylVPLI.js +1 -0
  50. package/dist/interface/assets/CuiBottomSheet-ACN23VLS.js +1 -0
  51. package/dist/interface/assets/CuiBottomSheet-DEVNeDqa.js +1 -0
  52. package/dist/interface/assets/CuiCameraPipCard-TYTCfwXf.css +1 -0
  53. package/dist/interface/assets/CuiCameraPipCard-rR_FW9zq.js +1 -0
  54. package/dist/interface/assets/CuiCameraRecordings-CnorhPhf.js +1 -0
  55. package/dist/interface/assets/CuiCameraShares-BxUgedC_.js +1 -0
  56. package/dist/interface/assets/CuiCameraTable-C3GB4Q2y.js +2 -0
  57. package/dist/interface/assets/CuiCameraTable-MHfnZSyK.js +1 -0
  58. package/dist/interface/assets/CuiChartTable-TAzZgetO.js +1 -0
  59. package/dist/interface/assets/CuiConsole-Cf5lOCE1.js +5 -0
  60. package/dist/interface/assets/CuiDataTable-DfjXa0C1.js +1 -0
  61. package/dist/interface/assets/CuiLightControl-ChK-SvJp.js +1 -0
  62. package/dist/interface/assets/CuiList-C4fxd9lD.js +1 -0
  63. package/dist/interface/assets/CuiMarkdownContent-Do04YgHe.js +1 -0
  64. package/dist/interface/assets/CuiMarkdownContent-qOPm3VEi.js +1 -0
  65. package/dist/interface/assets/CuiPluginCard-DMpANIQj.js +2 -0
  66. package/dist/interface/assets/CuiPluginCategoryChip-BKxJMid7.js +1 -0
  67. package/dist/interface/assets/CuiPluginOAuthButton-DnQ838JJ.js +2 -0
  68. package/dist/interface/assets/CuiPluginTrustBadge-DyYDUWV6.js +1 -0
  69. package/dist/interface/assets/CuiQRCode-S9fPi0_l.js +1 -0
  70. package/dist/interface/assets/CuiSchema-DScmDQsh.js +1 -0
  71. package/dist/interface/assets/CuiTopNavbarItem-CT10aAlO.js +1 -0
  72. package/dist/interface/assets/Faces-Coy-tUVM.js +1 -0
  73. package/dist/interface/assets/FirstSteps-CrMJC049.js +1 -0
  74. package/dist/interface/assets/Floorplan-Bj_mVrxp.js +1 -0
  75. package/dist/interface/assets/Floorplan-CT5TrMSD.css +1 -0
  76. package/dist/interface/assets/Instances-B_mpKAng.js +1 -0
  77. package/dist/interface/assets/Logs-fY1dpQk4.js +6 -0
  78. package/dist/interface/assets/Menu-Bgi-NLdg.js +1 -0
  79. package/dist/interface/assets/Metrics-DnMeIrkf.css +1 -0
  80. package/dist/interface/assets/Metrics-k9KACiwh.js +12 -0
  81. package/dist/interface/assets/OAuthDeviceFlow-xTh83xmc.js +1 -0
  82. package/dist/interface/assets/Plugin-BB7x7UHw.css +1 -0
  83. package/dist/interface/assets/Plugin-VWq7sONB.js +1 -0
  84. package/dist/interface/assets/PluginConsole-LnnDOVBL.js +7 -0
  85. package/dist/interface/assets/PluginDetail-CKD9sbDx.js +2 -0
  86. package/dist/interface/assets/PluginSchema-BnB0_6Sk.js +1 -0
  87. package/dist/interface/assets/PluginSearch-BoBZLLbr.js +1 -0
  88. package/dist/interface/assets/PluginSearch-kGhweU1J.js +2 -0
  89. package/dist/interface/assets/PluginUpdateProgress-DMx0QlgE.js +1 -0
  90. package/dist/interface/assets/Plugins-Ekmr6aVa.js +1 -0
  91. package/dist/interface/assets/RecentEventsFilter-StLJNuks.js +1 -0
  92. package/dist/interface/assets/Recordings-8PqxJOI3.css +1 -0
  93. package/dist/interface/assets/Recordings-Bvkuk_TV.js +1 -0
  94. package/dist/interface/assets/SensorEdit-CAf9Nb01.js +1 -0
  95. package/dist/interface/assets/SensorHistory-il8bDErX.js +1 -0
  96. package/dist/interface/assets/Sensors-sxQ6HLKo.js +2 -0
  97. package/dist/interface/assets/Settings-Bu0G7Ebx.js +1 -0
  98. package/dist/interface/assets/Settings-DtCSaLPb.css +1 -0
  99. package/dist/interface/assets/SettingsAccount-8OZJLQi-.js +1 -0
  100. package/dist/interface/assets/SettingsAccount-bSfFi9YH.js +1 -0
  101. package/dist/interface/assets/SettingsAppearance-CnvN_Tzr.js +1 -0
  102. package/dist/interface/assets/SettingsAppearance-EvPWgF4c.js +1 -0
  103. package/dist/interface/assets/SettingsAssistant-B6s6pHCx.js +1 -0
  104. package/dist/interface/assets/SettingsBackup-Dd2FaUcN.js +1 -0
  105. package/dist/interface/assets/SettingsList-SvCO_gfG.js +1 -0
  106. package/dist/interface/assets/SettingsMqtt-BXBzHX84.js +1 -0
  107. package/dist/interface/assets/SettingsNotifications-CV-jJwFV.js +1 -0
  108. package/dist/interface/assets/SettingsPermissions-GchFaWjz.js +1 -0
  109. package/dist/interface/assets/SettingsRecordings-C4Ch_jmV.js +1 -0
  110. package/dist/interface/assets/SettingsRemote-CsIGx-LU.css +1 -0
  111. package/dist/interface/assets/SettingsRemote-OZHDJKSq.js +2 -0
  112. package/dist/interface/assets/SettingsSystem-BJlHXwVs.js +2 -0
  113. package/dist/interface/assets/SettingsUsers-RGOkOzx0.js +1 -0
  114. package/dist/interface/assets/Terminal-DX-ECC91.js +4 -0
  115. package/dist/interface/assets/Training-B8my7vka.js +1 -0
  116. package/dist/interface/assets/Training-D1DDjCCD.css +1 -0
  117. package/dist/interface/assets/Updates-DmavyhAn.js +2 -0
  118. package/dist/interface/assets/VariableInput-DQJle67Y.js +1 -0
  119. package/dist/interface/assets/VariableSuggestions-D8V739dF.js +1 -0
  120. package/dist/interface/assets/VersionsHandler-B41TJhgY.js +7 -0
  121. package/dist/interface/assets/VirtualSensorCreate-MfLh-LpH.js +1 -0
  122. package/dist/interface/assets/Workers-CafDeRhH.js +2 -0
  123. package/dist/interface/assets/Workers-Dey1snI4.css +1 -0
  124. package/dist/interface/assets/account-DjBQulDn.js +1 -0
  125. package/dist/interface/assets/ace-BPAekgyf.js +1 -0
  126. package/dist/interface/assets/ace.config-CvKE-yp1.js +1 -0
  127. package/dist/interface/assets/alert-circle-B-JCMbb9.js +1 -0
  128. package/dist/interface/assets/alert-outline-B4ZZowEj.js +1 -0
  129. package/dist/interface/assets/api-By0v6EeA.css +2 -0
  130. package/dist/interface/assets/api-D1iULsSy.js +4 -0
  131. package/dist/interface/assets/api-DbUdfXO_.js +1 -0
  132. package/dist/interface/assets/arrow-left-PeaVwpHd.js +1 -0
  133. package/dist/interface/assets/assistant-7hqP6OpA.js +1 -0
  134. package/dist/interface/assets/assistantModels-D3ncWWu0.js +1 -0
  135. package/dist/interface/assets/auth-CDxrn7fe.js +1 -0
  136. package/dist/interface/assets/automations-CTTQlGCW.js +1 -0
  137. package/dist/interface/assets/back-filled-CJoz7Gkl.js +1 -0
  138. package/dist/interface/assets/bell-ring-CBf0Yn3H.js +1 -0
  139. package/dist/interface/assets/brain-uZ03n3LW.js +1 -0
  140. package/dist/interface/assets/cameraSources-MOiE_1-W.js +1 -0
  141. package/dist/interface/assets/cctv-VgKQ-dBV.js +1 -0
  142. package/dist/interface/assets/check-circle-BU-KNgPB.js +1 -0
  143. package/dist/interface/assets/check-circle-outline-BsxzAMed.js +1 -0
  144. package/dist/interface/assets/chevron-down-CxK4Sfjs.js +1 -0
  145. package/dist/interface/assets/chevron-up-DWfNH8va.js +1 -0
  146. package/dist/interface/assets/clock-outline-BtWx4GaF.js +1 -0
  147. package/dist/interface/assets/close-Be7oB7d_.js +1 -0
  148. package/dist/interface/assets/close-circle-D7Jmhp_7.js +1 -0
  149. package/dist/interface/assets/cloud-check-zCGJxpWI.js +1 -0
  150. package/dist/interface/assets/cloudHandoff-CJzFH7CW.js +1 -0
  151. package/dist/interface/assets/config-6EiGxiYm.js +1 -0
  152. package/dist/interface/assets/content-copy-BcYlfuFc.js +1 -0
  153. package/dist/interface/assets/copy-DuY-M96E.js +1 -0
  154. package/dist/interface/assets/cube-scan-Cae03i_N.js +1 -0
  155. package/dist/interface/assets/database-refresh-outline-B3OEQFF7.js +1 -0
  156. package/dist/interface/assets/delete-BWgOAzKl.js +1 -0
  157. package/dist/interface/assets/dist-DmpuuM9s.js +1 -0
  158. package/dist/interface/assets/dots-vertical-Kby1GY8_.js +1 -0
  159. package/dist/interface/assets/download-C291Yq7I.js +1 -0
  160. package/dist/interface/assets/esm-B2TVBF3B.js +1 -0
  161. package/dist/interface/assets/esm-BEntuCG7.js +1 -0
  162. package/dist/interface/assets/esm-BRnyrFH8.js +1 -0
  163. package/dist/interface/assets/esm-CCwXzd_8.js +1 -0
  164. package/dist/interface/assets/esm-CEjwTsuD.js +1 -0
  165. package/dist/interface/assets/esm-CGGV9tC4.js +1 -0
  166. package/dist/interface/assets/esm-CI2tTOc5.js +1 -0
  167. package/dist/interface/assets/esm-CgxZmMYv.js +1 -0
  168. package/dist/interface/assets/esm-Csc6f5Fy.js +1 -0
  169. package/dist/interface/assets/esm-Qzx3d-Ie.js +1 -0
  170. package/dist/interface/assets/esm-a_w7mTdx.js +1 -0
  171. package/dist/interface/assets/esm-iKfsu7-H.js +1 -0
  172. package/dist/interface/assets/esm-ks5kvk_e.js +1 -0
  173. package/dist/interface/assets/esm-nJfTguKF.js +1 -0
  174. package/dist/interface/assets/eventLabels-idFWh3Y_.js +1 -0
  175. package/dist/interface/assets/eye-off-zGCIHKOK.js +1 -0
  176. package/dist/interface/assets/flowSchema-Dp_-p9WA.js +1 -0
  177. package/dist/interface/assets/help-circle-outline-DXFepDAG.js +1 -0
  178. package/dist/interface/assets/history-D-FlZdKD.js +1 -0
  179. package/dist/interface/assets/home-DPdzRxcM.js +1 -0
  180. package/dist/interface/assets/information-outline-ChOM9qgI.js +1 -0
  181. package/dist/interface/assets/intercomService-BQYzjnAi.js +1 -0
  182. package/dist/interface/assets/lan-DvYEO83l.js +1 -0
  183. package/dist/interface/assets/main-0oXl_8v7.js +3 -0
  184. package/dist/interface/assets/main-CdvAniEp.css +1 -0
  185. package/dist/interface/assets/microphone-D-T9xga4.js +1 -0
  186. package/dist/interface/assets/minus-4T4INuO4.js +1 -0
  187. package/dist/interface/assets/mqtt-ChvXxMhR.js +1 -0
  188. package/dist/interface/assets/native-CtfXrwj5.js +1 -0
  189. package/dist/interface/assets/native-JMtkOkIV.js +1 -0
  190. package/dist/interface/assets/nodeDefinitions-Dp8cnne1.js +1 -0
  191. package/dist/interface/assets/notifications-CbL-1oMs.js +1 -0
  192. package/dist/interface/assets/pause-DHqHYA3V.js +1 -0
  193. package/dist/interface/assets/pencil-outline-D-GmPf8M.js +1 -0
  194. package/dist/interface/assets/pencil-vACi-JzY.js +1 -0
  195. package/dist/interface/assets/plugin-Dt5Xetfz.js +1 -0
  196. package/dist/interface/assets/plugins-lsoAntRQ.js +1 -0
  197. package/dist/interface/assets/plus-BBUb8_uL.js +1 -0
  198. package/dist/interface/assets/plus-BJb7U4bN.js +1 -0
  199. package/dist/interface/assets/power-Dm_aNIz-.js +1 -0
  200. package/dist/interface/assets/radar-Dcvdz--e.js +1 -0
  201. package/dist/interface/assets/refresh-CO4F18Je.js +1 -0
  202. package/dist/interface/assets/restore-xRBt3Grb.js +1 -0
  203. package/dist/interface/assets/rooms-P8WrRIco.js +1 -0
  204. package/dist/interface/assets/round-alt-arrow-left-bold-CZHXzGS5.js +1 -0
  205. package/dist/interface/assets/search-D75YW08B.js +1 -0
  206. package/dist/interface/assets/sensorIcons-BRTtoaHX.js +1 -0
  207. package/dist/interface/assets/sensorSlots-BTj-IM7z.js +1 -0
  208. package/dist/interface/assets/sensors-Dxc7HgjZ.js +1 -0
  209. package/dist/interface/assets/server-DlK8gUoE.js +1 -0
  210. package/dist/interface/assets/settings-DDOgc5BX.js +1 -0
  211. package/dist/interface/assets/source-branch-DVHuYlkZ.js +1 -0
  212. package/dist/interface/assets/theme-BOppzzar.js +1 -0
  213. package/dist/interface/assets/trash-2-DDKPtl2x.js +1 -0
  214. package/dist/interface/assets/trash-can-outline-DVH3zgo0.js +1 -0
  215. package/dist/interface/assets/trash-fill-C_IJ4Vu2.js +1 -0
  216. package/dist/interface/assets/trash2-DY0XTaJD.js +1 -0
  217. package/dist/interface/assets/types-CeruGCb8.js +1 -0
  218. package/dist/interface/assets/types-J1Drrxo1.js +1 -0
  219. package/dist/interface/assets/types-U4AuTNLR.js +1 -0
  220. package/dist/interface/assets/undo-YRkBYCnf.js +1 -0
  221. package/dist/interface/assets/ungrouped-ING_JAuK.js +1 -0
  222. package/dist/interface/assets/updates-DtVp84Y0.js +1 -0
  223. package/dist/interface/assets/upload-2WcHRjTq.js +1 -0
  224. package/dist/interface/assets/upload-BiE7VzTj.js +1 -0
  225. package/dist/interface/assets/useAppVersion-BGgCk5GD.js +1 -0
  226. package/dist/interface/assets/useAssistantActions-C13O5EHU.js +1 -0
  227. package/dist/interface/assets/useBackupRestore-vrhmc9i-.js +1 -0
  228. package/dist/interface/assets/useCameraOptions-CI1baRmm.js +1 -0
  229. package/dist/interface/assets/useKeyboardInset-CvgJp091.js +1 -0
  230. package/dist/interface/assets/useLogsSocket-Bf0BI8ET.js +1 -0
  231. package/dist/interface/assets/useNavLayout-6zM1Y-7B.js +1 -0
  232. package/dist/interface/assets/usePermissions-DZitFsBQ.js +1 -0
  233. package/dist/interface/assets/usePluginUpdates-VZdpJ_Ax.js +1 -0
  234. package/dist/interface/assets/usePushRegistration-vcbMrTxZ.js +2 -0
  235. package/dist/interface/assets/useServerRestart-DrpuNbIu.js +1 -0
  236. package/dist/interface/assets/useStreamStatus-l3Pfk1H4.js +1 -0
  237. package/dist/interface/assets/useTabSwipe-BSpi25WV.js +1 -0
  238. package/dist/interface/assets/useUpdateChannel-kAl-5UNY.js +1 -0
  239. package/dist/interface/assets/useUpdatesSocket-CaFz_fEb.js +1 -0
  240. package/dist/interface/assets/useUserOptions-BKteXnmU.js +1 -0
  241. package/dist/interface/assets/variable-Cp8o-q8t.js +1 -0
  242. package/dist/interface/assets/vendor-Df81FCJz.js +29 -0
  243. package/dist/interface/assets/vendor-ace-QSsGUspX.js +1085 -0
  244. package/dist/interface/assets/vendor-cameraui-K1Nw4PvF.js +2326 -0
  245. package/dist/interface/assets/vendor-capacitor-t5EIN1GG.js +2 -0
  246. package/dist/interface/assets/vendor-chart-BiJYkx5_.js +3 -0
  247. package/dist/interface/assets/vendor-core-CJdfpB0I.js +1 -0
  248. package/dist/interface/assets/vendor-dnd-C1kMh9_t.js +2 -0
  249. package/dist/interface/assets/vendor-draggabilly-Cw1oJ6qc.js +1 -0
  250. package/dist/interface/assets/vendor-leaflet-OSZlONe5.js +1 -0
  251. package/dist/interface/assets/vendor-markdown-DTWiWKBj.js +14 -0
  252. package/dist/interface/assets/vendor-primevue-DoA2Rwcb.js +3942 -0
  253. package/dist/interface/assets/vendor-vueflow-DWU_IzGe.js +26 -0
  254. package/dist/interface/assets/walk-B8FNhXuj.js +1 -0
  255. package/dist/interface/assets/web-B98ahwoP.js +1 -0
  256. package/dist/interface/assets/web-BSsSrRZf.js +1 -0
  257. package/dist/interface/assets/web-BiNRDta4.js +1 -0
  258. package/dist/interface/assets/web-BjKL51lK-CZKmYhby.js +1 -0
  259. package/dist/interface/assets/web-BjtOcquy.js +1 -0
  260. package/dist/interface/assets/web-CkTE9nCG.js +1 -0
  261. package/dist/interface/assets/web-Cvogq5S5.js +1 -0
  262. package/dist/interface/assets/web-D-A4EBKj.js +1 -0
  263. package/dist/interface/assets/web-DVGMBduz.js +1 -0
  264. package/dist/interface/assets/web-SpWB7I6X.js +1 -0
  265. package/dist/interface/assets/web-k0ihT_qK.js +1 -0
  266. package/dist/interface/assets/web-ovBpm7Dl.js +1 -0
  267. package/dist/interface/assets/web-z5Xz9tOQ.js +1 -0
  268. package/dist/interface/assets/web-zfhkFevT.js +1 -0
  269. package/dist/interface/assets/webhook-DIjChTrs.js +1 -0
  270. package/dist/interface/assets/workbox-window.prod.es5-DRKojI0e.js +1 -0
  271. package/dist/interface/assets/zoom-in-rMB152Uz.js +1 -0
  272. package/dist/interface/ha/404-RtgPpD9N.js +60 -0
  273. package/dist/interface/ha/About-0PRv9bU0.js +55 -0
  274. package/dist/interface/ha/Assistant-DbwxVfpl.js +9853 -0
  275. package/dist/interface/ha/Automation-D3HomdH7.js +2029 -0
  276. package/dist/interface/ha/AutomationImport-nQUUvZcv.js +206 -0
  277. package/dist/interface/ha/AutomationStore-BXDD92wZ.js +336 -0
  278. package/dist/interface/ha/AutomationStoreDetail-BYeq7FID.js +122 -0
  279. package/dist/interface/ha/Automations-CJlGqmSP.js +424 -0
  280. package/dist/interface/ha/Camera-Ai4BxVh_.js +747 -0
  281. package/dist/interface/ha/CameraConsole-UMNOX3dE.js +52 -0
  282. package/dist/interface/ha/Cameras-BW-AEXYi.js +1971 -0
  283. package/dist/interface/ha/Camview-jikpVEE0.js +1336 -0
  284. package/dist/interface/ha/Config-BOxwBH2D.js +356 -0
  285. package/dist/interface/ha/ConfigActionAssistant--3iWk9sq.js +182 -0
  286. package/dist/interface/ha/ConfigActionCameraControl-DbVXWTeA.js +152 -0
  287. package/dist/interface/ha/ConfigActionHttp-Du3n2Yj0.js +134 -0
  288. package/dist/interface/ha/ConfigActionImageInput-BrJrTZTY.js +171 -0
  289. package/dist/interface/ha/ConfigActionMqtt-DZd1BNUt.js +81 -0
  290. package/dist/interface/ha/ConfigActionNotification-CJWW10gt.js +199 -0
  291. package/dist/interface/ha/ConfigActionNotificationControl-Bl41AVv1.js +111 -0
  292. package/dist/interface/ha/ConfigActionOutput-OTj7Lwgq.js +98 -0
  293. package/dist/interface/ha/ConfigActionPlugin-B790PEk0.js +172 -0
  294. package/dist/interface/ha/ConfigActionSensor-BG3jZxge.js +139 -0
  295. package/dist/interface/ha/ConfigActionSnapshot-fGmLl6jb.js +48 -0
  296. package/dist/interface/ha/ConfigActionVariable-CK3vYDsr.js +88 -0
  297. package/dist/interface/ha/ConfigConditionIfElse-DyFLGg3y.js +124 -0
  298. package/dist/interface/ha/ConfigConditionSensorState-BUTfeFO2.js +192 -0
  299. package/dist/interface/ha/ConfigConditionSwitch-iDG_ubif.js +128 -0
  300. package/dist/interface/ha/ConfigSensorValueInput-BmRIGUKB.js +170 -0
  301. package/dist/interface/ha/ConfigTriggerDetection-DyPQGt9M.js +241 -0
  302. package/dist/interface/ha/ConfigTriggerGeofence-CGE-bH_t.js +4888 -0
  303. package/dist/interface/ha/ConfigTriggerMqtt-CM3KZqBc.js +134 -0
  304. package/dist/interface/ha/ConfigTriggerSensor-DoHMcwP4.js +73 -0
  305. package/dist/interface/ha/ConfigTriggerSystem-BYKbW4Zr.js +192 -0
  306. package/dist/interface/ha/ConfigTriggerWebhook-5PBAadG8.js +94 -0
  307. package/dist/interface/ha/Console-BEXzl4p1.js +348 -0
  308. package/dist/interface/ha/CuiAutomationRunsDialog-DkK_ar5G.js +130 -0
  309. package/dist/interface/ha/CuiBottomSheet-CYNvQV4T.js +270 -0
  310. package/dist/interface/ha/CuiCameraRecordings-DYjecmE_.js +533 -0
  311. package/dist/interface/ha/CuiCameraShares-C0H60nZS.js +121 -0
  312. package/dist/interface/ha/CuiCameraTable-CQNMyBaq.js +169 -0
  313. package/dist/interface/ha/CuiChartTable-Bhv1p9zj.js +6801 -0
  314. package/dist/interface/ha/CuiConsole-DtXorGF5.js +244 -0
  315. package/dist/interface/ha/CuiDataTable-Cy8EjCk9.js +8732 -0
  316. package/dist/interface/ha/CuiList-DnW6Q5m2.js +57 -0
  317. package/dist/interface/ha/CuiPluginCard-B4SCUblV.js +769 -0
  318. package/dist/interface/ha/CuiPluginOAuthButton-BKg9SftQ.js +79 -0
  319. package/dist/interface/ha/CuiPluginTrustBadge-CEtUJhCJ.js +123 -0
  320. package/dist/interface/ha/CuiQRCode-gp-9hqyk.js +86 -0
  321. package/dist/interface/ha/CuiSchema-CYpr_dD7.js +963 -0
  322. package/dist/interface/ha/CuiTopNavbarItem-CM-1oPxf.js +140 -0
  323. package/dist/interface/ha/Faces-pa60ySng.js +1575 -0
  324. package/dist/interface/ha/FirstSteps-D42yZm7R.js +251 -0
  325. package/dist/interface/ha/Floorplan-BvE546pE.js +3657 -0
  326. package/dist/interface/ha/Instances-CAGCyfbB.js +680 -0
  327. package/dist/interface/ha/Logs-RB3Ba8WM.js +418 -0
  328. package/dist/interface/ha/Menu-hAnHu_jq.js +156 -0
  329. package/dist/interface/ha/Metrics-ChYTebkX.js +1448 -0
  330. package/dist/interface/ha/OAuthDeviceFlow-C05pH-9o.js +112 -0
  331. package/dist/interface/ha/Plugin-D7XwcXkW.js +1752 -0
  332. package/dist/interface/ha/PluginConsole-DphEIOlL.js +56 -0
  333. package/dist/interface/ha/PluginDetail-DfMl-yCl.js +805 -0
  334. package/dist/interface/ha/PluginSearch-BPN4Opg5.js +462 -0
  335. package/dist/interface/ha/PluginUpdateProgress-ByJ0R5sW.js +34 -0
  336. package/dist/interface/ha/Plugins-BhKmjjNn.js +692 -0
  337. package/dist/interface/ha/RecentEventsFilter-BkLMlGVJ.js +78 -0
  338. package/dist/interface/ha/Recordings-BaU7M1OW.js +1836 -0
  339. package/dist/interface/ha/SensorEdit-DWxcCJ0F.js +1462 -0
  340. package/dist/interface/ha/SensorHistory-DuA9E9wT.js +54 -0
  341. package/dist/interface/ha/Sensors-CVpIHcgG.js +1402 -0
  342. package/dist/interface/ha/Settings-BO2eBGEn.js +218 -0
  343. package/dist/interface/ha/SettingsAccount-BQZZfoSM.js +971 -0
  344. package/dist/interface/ha/SettingsAppearance-B_yGl89u.js +220 -0
  345. package/dist/interface/ha/SettingsAssistant-kMOixl9g.js +2025 -0
  346. package/dist/interface/ha/SettingsBackup-BpG-W4j-.js +556 -0
  347. package/dist/interface/ha/SettingsList-Btnkzu94.js +40 -0
  348. package/dist/interface/ha/SettingsMqtt-C4DX9cNC.js +526 -0
  349. package/dist/interface/ha/SettingsNotifications-DI6ImggH.js +529 -0
  350. package/dist/interface/ha/SettingsPermissions-BCDyCFcb.js +84 -0
  351. package/dist/interface/ha/SettingsRecordings-Bq5NkJhd.js +152 -0
  352. package/dist/interface/ha/SettingsRemote-CtncaPIA.js +1813 -0
  353. package/dist/interface/ha/SettingsSystem-BJXuA7xA.js +376 -0
  354. package/dist/interface/ha/SettingsUsers-BF0rDluv.js +379 -0
  355. package/dist/interface/ha/Terminal-kTCe2jP3.js +612 -0
  356. package/dist/interface/ha/Training-BM2Xb8Ef.js +1754 -0
  357. package/dist/interface/ha/Updates-Cv1EY_T0.js +343 -0
  358. package/dist/interface/ha/VariableInput-BO2zZu4N.js +52 -0
  359. package/dist/interface/ha/VersionsHandler-CRnT9-K7.js +216 -0
  360. package/dist/interface/ha/VirtualSensorCreate-6dVRxPjw.js +101 -0
  361. package/dist/interface/ha/Workers-MHia86lu.js +814 -0
  362. package/dist/interface/ha/ace-C9MtBQVV.js +13236 -0
  363. package/dist/interface/ha/ace.config-CSXnaIzV.js +1429 -0
  364. package/dist/interface/ha/api-CH_Y8Hee.js +65411 -0
  365. package/dist/interface/ha/api-DylRa66V.js +29 -0
  366. package/dist/interface/ha/assistant-smRQYA6p.js +349 -0
  367. package/dist/interface/ha/auth-BXj5Fm6s.js +271 -0
  368. package/dist/interface/ha/automationBlueprint-DGjftXFC.js +250 -0
  369. package/dist/interface/ha/cameraui-cards.js +1 -1
  370. package/dist/interface/ha/cards-E0zw1UVg.js +13477 -0
  371. package/dist/interface/ha/config-dG_DA6XL.js +116 -0
  372. package/dist/interface/ha/dist-BQf9ANPx.js +3257 -0
  373. package/dist/interface/ha/dist-euRmladF.js +287 -0
  374. package/dist/interface/ha/eventLabels-B5GrM5jO.js +734 -0
  375. package/dist/interface/ha/intercomService-BtJ_zUNd.js +1400 -0
  376. package/dist/interface/ha/mqtt-CP3vVkRJ.js +56 -0
  377. package/dist/interface/ha/notifications-CZNwSXTg.js +159 -0
  378. package/dist/interface/ha/pinia-CVnHHb-s.js +7696 -0
  379. package/dist/interface/ha/plugins--eatOIaI.js +592 -0
  380. package/dist/interface/ha/protocol-BB4jdtUC-BhEwymva.js +789 -0
  381. package/dist/interface/ha/rooms-D5E6K75d.js +45 -0
  382. package/dist/interface/ha/server-D1BqEY7i.js +239 -0
  383. package/dist/interface/ha/types-CWogEoya.js +1073 -0
  384. package/dist/interface/ha/ungrouped-Ch4UX4dy.js +58 -0
  385. package/dist/interface/ha/updates-B48Owi1w.js +341 -0
  386. package/dist/interface/ha/useAppVersion-D95sKTJR.js +22 -0
  387. package/dist/interface/ha/useAssistantActions-kDwiO-u5.js +29 -0
  388. package/dist/interface/ha/useKeyboardInset-C2R51vsC.js +27 -0
  389. package/dist/interface/ha/useLogsSocket-BzNWa2y2.js +59 -0
  390. package/dist/interface/ha/useNavLayout-228cwwqA.js +125 -0
  391. package/dist/interface/ha/usePermissions-CfA5x7Df.js +72 -0
  392. package/dist/interface/ha/useServerRestart-B0c40zs5.js +23 -0
  393. package/dist/interface/ha/useTabSwipe-CfZg5hWj.js +45 -0
  394. package/dist/interface/ha/useUpdateChannel-DQxI7FrD.js +22 -0
  395. package/dist/interface/ha/useUpdatesSocket-B8LqBBd3.js +34 -0
  396. package/dist/interface/ha/useUserOptions-dZf6ejlz.js +15 -0
  397. package/dist/interface/ha/walk-CsSXaeJw.js +33 -0
  398. package/dist/interface/index.html +71 -72
  399. package/dist/interface/sw.js +1 -1
  400. package/dist/interface/workbox-5f52ac45.js +1 -0
  401. package/dist/server/package.json +23 -23
  402. package/dist/server/requirements.txt +2 -2
  403. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +22 -0
  404. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +12 -0
  405. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/device.py +5 -1
  406. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/internal/camera_config_internal.py +5 -1
  407. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/manager/__init__.py +2 -1
  408. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/__init__.py +10 -0
  409. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/contract.py +6 -0
  410. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/interfaces.py +92 -4
  411. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/__init__.py +16 -0
  412. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/base.py +4 -0
  413. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/face_embedder.py +1 -1
  414. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/object.py +3 -3
  415. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/person_embedder.py +65 -0
  416. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/segmenter.py +81 -0
  417. package/dist/server/src/api/controllers/plugins.controller.js +1 -0
  418. package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
  419. package/dist/server/src/api/controllers/workers.controller.d.ts +2 -2
  420. package/dist/server/src/api/controllers/workers.controller.js +8 -2
  421. package/dist/server/src/api/controllers/workers.controller.js.map +1 -1
  422. package/dist/server/src/api/database/index.d.ts +2 -1
  423. package/dist/server/src/api/database/index.js +31 -7
  424. package/dist/server/src/api/database/index.js.map +1 -1
  425. package/dist/server/src/api/database/migrations/v2-2-9.d.ts +3 -0
  426. package/dist/server/src/api/database/migrations/v2-2-9.js +28 -0
  427. package/dist/server/src/api/database/migrations/v2-2-9.js.map +1 -0
  428. package/dist/server/src/api/database/record-schemas.d.ts +4 -1
  429. package/dist/server/src/api/database/record-schemas.js +1 -0
  430. package/dist/server/src/api/database/record-schemas.js.map +1 -1
  431. package/dist/server/src/api/database/types.d.ts +21 -1
  432. package/dist/server/src/api/routes/workers.routes.js +4 -4
  433. package/dist/server/src/api/routes/workers.routes.js.map +1 -1
  434. package/dist/server/src/api/schemas/assistant.schema.d.ts +1 -1
  435. package/dist/server/src/api/schemas/cameras.schema.d.ts +178 -76
  436. package/dist/server/src/api/schemas/cameras.schema.js +26 -2
  437. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  438. package/dist/server/src/api/schemas/training.schema.d.ts +15 -3
  439. package/dist/server/src/api/schemas/training.schema.js +4 -1
  440. package/dist/server/src/api/schemas/training.schema.js.map +1 -1
  441. package/dist/server/src/api/schemas/users.schema.d.ts +12 -0
  442. package/dist/server/src/api/schemas/users.schema.js +4 -0
  443. package/dist/server/src/api/schemas/users.schema.js.map +1 -1
  444. package/dist/server/src/api/schemas/workers.schema.d.ts +5 -4
  445. package/dist/server/src/api/schemas/workers.schema.js +6 -3
  446. package/dist/server/src/api/schemas/workers.schema.js.map +1 -1
  447. package/dist/server/src/api/services/cameras.service.d.ts +3 -0
  448. package/dist/server/src/api/services/cameras.service.js +47 -2
  449. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  450. package/dist/server/src/api/services/plugins.service.d.ts +1 -0
  451. package/dist/server/src/api/services/plugins.service.js +5 -1
  452. package/dist/server/src/api/services/plugins.service.js.map +1 -1
  453. package/dist/server/src/api/services/workers.service.d.ts +2 -0
  454. package/dist/server/src/api/services/workers.service.js +15 -0
  455. package/dist/server/src/api/services/workers.service.js.map +1 -1
  456. package/dist/server/src/api/types/index.d.ts +3 -2
  457. package/dist/server/src/api/websocket/nsp/worker-perf.js +2 -0
  458. package/dist/server/src/api/websocket/nsp/worker-perf.js.map +1 -1
  459. package/dist/server/src/api/websocket/types.d.ts +1 -0
  460. package/dist/server/src/assistant/pricing.js +39 -10
  461. package/dist/server/src/assistant/pricing.js.map +1 -1
  462. package/dist/server/src/assistant/providers.js +9 -1
  463. package/dist/server/src/assistant/providers.js.map +1 -1
  464. package/dist/server/src/assistant/search.d.ts +17 -0
  465. package/dist/server/src/assistant/search.js +10 -2
  466. package/dist/server/src/assistant/search.js.map +1 -1
  467. package/dist/server/src/assistant/tools/plugins.js +7 -3
  468. package/dist/server/src/assistant/tools/plugins.js.map +1 -1
  469. package/dist/server/src/assistant/types.d.ts +2 -0
  470. package/dist/server/src/automations/actions/plugin.js +5 -9
  471. package/dist/server/src/automations/actions/plugin.js.map +1 -1
  472. package/dist/server/src/automations/pluginMethodRegistry.d.ts +6 -0
  473. package/dist/server/src/automations/pluginMethodRegistry.js +39 -0
  474. package/dist/server/src/automations/pluginMethodRegistry.js.map +1 -1
  475. package/dist/server/src/automations/segment-picture.d.ts +16 -0
  476. package/dist/server/src/automations/segment-picture.js +152 -0
  477. package/dist/server/src/automations/segment-picture.js.map +1 -0
  478. package/dist/server/src/camera/decoder/detection-coordinator.d.ts +5 -2
  479. package/dist/server/src/camera/decoder/detection-coordinator.js +45 -22
  480. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  481. package/dist/server/src/camera/decoder/detection-pipeline.d.ts +30 -2
  482. package/dist/server/src/camera/decoder/detection-pipeline.js +81 -21
  483. package/dist/server/src/camera/decoder/detection-pipeline.js.map +1 -1
  484. package/dist/server/src/camera/decoder/event-manager.d.ts +13 -4
  485. package/dist/server/src/camera/decoder/event-manager.js +108 -128
  486. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  487. package/dist/server/src/camera/decoder/event-trace.d.ts +41 -1
  488. package/dist/server/src/camera/decoder/event-trace.js +63 -8
  489. package/dist/server/src/camera/decoder/event-trace.js.map +1 -1
  490. package/dist/server/src/camera/decoder/face-tracks.d.ts +26 -0
  491. package/dist/server/src/camera/decoder/face-tracks.js +199 -0
  492. package/dist/server/src/camera/decoder/face-tracks.js.map +1 -0
  493. package/dist/server/src/camera/decoder/frame-scaler.d.ts +3 -1
  494. package/dist/server/src/camera/decoder/frame-scaler.js +36 -8
  495. package/dist/server/src/camera/decoder/frame-scaler.js.map +1 -1
  496. package/dist/server/src/camera/decoder/nvr-sink.d.ts +6 -0
  497. package/dist/server/src/camera/decoder/nvr-sink.js +1 -1
  498. package/dist/server/src/camera/decoder/nvr-sink.js.map +1 -1
  499. package/dist/server/src/camera/decoder/perf-tracker.d.ts +2 -0
  500. package/dist/server/src/camera/decoder/perf-tracker.js +4 -0
  501. package/dist/server/src/camera/decoder/perf-tracker.js.map +1 -1
  502. package/dist/server/src/camera/decoder/ptz/autotracker.d.ts +6 -1
  503. package/dist/server/src/camera/decoder/ptz/autotracker.js +107 -25
  504. package/dist/server/src/camera/decoder/ptz/autotracker.js.map +1 -1
  505. package/dist/server/src/camera/decoder/secondary-stage.d.ts +10 -8
  506. package/dist/server/src/camera/decoder/secondary-stage.js +145 -125
  507. package/dist/server/src/camera/decoder/secondary-stage.js.map +1 -1
  508. package/dist/server/src/camera/decoder/training-sink.d.ts +5 -2
  509. package/dist/server/src/camera/decoder/training-sink.js +30 -6
  510. package/dist/server/src/camera/decoder/training-sink.js.map +1 -1
  511. package/dist/server/src/camera/decoder/types.d.ts +6 -2
  512. package/dist/server/src/camera/decoder/types.js +4 -2
  513. package/dist/server/src/camera/decoder/types.js.map +1 -1
  514. package/dist/server/src/manager/coreManager.d.ts +2 -1
  515. package/dist/server/src/manager/coreManager.js +9 -2
  516. package/dist/server/src/manager/coreManager.js.map +1 -1
  517. package/dist/server/src/manager/trainingCandidateManager.d.ts +2 -1
  518. package/dist/server/src/manager/trainingCandidateManager.js +25 -3
  519. package/dist/server/src/manager/trainingCandidateManager.js.map +1 -1
  520. package/dist/server/src/manager/trainingSubmission.d.ts +5 -0
  521. package/dist/server/src/manager/trainingSubmission.js +73 -0
  522. package/dist/server/src/manager/trainingSubmission.js.map +1 -0
  523. package/dist/server/src/manager/types.d.ts +8 -2
  524. package/dist/server/src/manager/types.js.map +1 -1
  525. package/dist/server/src/plugins/runtime/node/proxy/coreManager.js +1 -1
  526. package/dist/server/src/plugins/runtime/node/proxy/coreManager.js.map +1 -1
  527. package/dist/server/src/plugins/runtime/python/proxy/camera_device.py +3 -0
  528. package/dist/server/src/plugins/runtime/python/proxy/core_manager.py +1 -1
  529. package/dist/server/src/plugins/runtime/python/proxy/sensor.py +2 -0
  530. package/dist/server/src/plugins/runtime/python/rpc/typings.py +1 -1
  531. package/dist/server/src/remote/api/routes/train.d.ts +44 -3
  532. package/dist/server/src/remote/api/routes/train.js +2 -2
  533. package/dist/server/src/remote/api/routes/train.js.map +1 -1
  534. package/dist/server/src/rpc/interfaces/core.d.ts +7 -3
  535. package/dist/server/src/rpc/interfaces/detection.d.ts +20 -3
  536. package/dist/server/src/rpc/server.d.ts +2 -0
  537. package/dist/server/src/rpc/server.js +8 -5
  538. package/dist/server/src/rpc/server.js.map +1 -1
  539. package/dist/server/src/sensors/registry.d.ts +3 -0
  540. package/dist/server/src/sensors/registry.js +44 -11
  541. package/dist/server/src/sensors/registry.js.map +1 -1
  542. package/dist/server/src/sensors/types.d.ts +1 -0
  543. package/dist/server/src/sensors/types.js +3 -0
  544. package/dist/server/src/sensors/types.js.map +1 -1
  545. package/dist/server/src/services/config/index.d.ts +1 -0
  546. package/dist/server/src/services/config/index.js +2 -0
  547. package/dist/server/src/services/config/index.js.map +1 -1
  548. package/dist/server/src/utils/image.d.ts +6 -0
  549. package/dist/server/src/utils/image.js +58 -22
  550. package/dist/server/src/utils/image.js.map +1 -1
  551. package/dist/server/src/workers/agent.js +2 -0
  552. package/dist/server/src/workers/agent.js.map +1 -1
  553. package/dist/server/src/workers/manager.d.ts +1 -0
  554. package/dist/server/src/workers/manager.js +22 -0
  555. package/dist/server/src/workers/manager.js.map +1 -1
  556. package/dist/server/src/workers/types.d.ts +5 -0
  557. package/dist/server/src/workers/types.js.map +1 -1
  558. package/npm-shrinkwrap.json +212 -171
  559. package/package.json +23 -23
  560. package/dist/interface/assets/404-C8EoOtBl.js +0 -1
  561. package/dist/interface/assets/About-Q7ZmOGgl.js +0 -1
  562. package/dist/interface/assets/Assistant-BQ6Ld-bt.css +0 -1
  563. package/dist/interface/assets/Assistant-DFLgklVe.js +0 -1
  564. package/dist/interface/assets/Automation-BSicfOGF.css +0 -1
  565. package/dist/interface/assets/Automation-D__qvx8c.js +0 -3
  566. package/dist/interface/assets/AutomationImport-CLQSdqg9.js +0 -2
  567. package/dist/interface/assets/AutomationStore-Dt6yTQDb.js +0 -2
  568. package/dist/interface/assets/AutomationStoreDetail-DqBrBhUI.js +0 -2
  569. package/dist/interface/assets/Automations-BH_7lYR7.js +0 -2
  570. package/dist/interface/assets/Camera-BW9ikKqh.css +0 -1
  571. package/dist/interface/assets/Camera-aquPHFwb.js +0 -2
  572. package/dist/interface/assets/CameraConsole-rhle_cfW.js +0 -7
  573. package/dist/interface/assets/Cameras-Bzy3P0xN.js +0 -651
  574. package/dist/interface/assets/Camview-Bri_T7Tq.css +0 -1
  575. package/dist/interface/assets/Camview-CjcQbtTl.js +0 -1
  576. package/dist/interface/assets/CertificateUpload-CWVu_52v.js +0 -1
  577. package/dist/interface/assets/Config-Dc1zKIPq.js +0 -2
  578. package/dist/interface/assets/ConfigActionAssistant-AfQfSqHZ.js +0 -1
  579. package/dist/interface/assets/ConfigActionCameraControl-BKQdHxqe.js +0 -1
  580. package/dist/interface/assets/ConfigActionDelay-B52HeJGb.js +0 -1
  581. package/dist/interface/assets/ConfigActionHttp-BP5gvpQc.js +0 -1
  582. package/dist/interface/assets/ConfigActionImageInput-DE2mSost.js +0 -1
  583. package/dist/interface/assets/ConfigActionMqtt-CYgnZjAE.js +0 -1
  584. package/dist/interface/assets/ConfigActionNotification-C3q53I4n.js +0 -1
  585. package/dist/interface/assets/ConfigActionNotificationControl-eDJ8r5ao.js +0 -1
  586. package/dist/interface/assets/ConfigActionOutput-DgYSYvy-.js +0 -1
  587. package/dist/interface/assets/ConfigActionPlugin-utolgAXk.js +0 -1
  588. package/dist/interface/assets/ConfigActionSensor-CmEKQPqs.js +0 -1
  589. package/dist/interface/assets/ConfigActionSnapshot-D7XucxVV.js +0 -1
  590. package/dist/interface/assets/ConfigActionVariable-C-Mjm3gr.js +0 -1
  591. package/dist/interface/assets/ConfigConditionIfElse-B24Rqb8y.js +0 -1
  592. package/dist/interface/assets/ConfigConditionSensorState-42-yFDmK.js +0 -1
  593. package/dist/interface/assets/ConfigConditionSwitch-DezH_nwm.js +0 -1
  594. package/dist/interface/assets/ConfigConditionTime-Cg2Lwznd.js +0 -1
  595. package/dist/interface/assets/ConfigSensorValueInput-YHBDCTZm.js +0 -1
  596. package/dist/interface/assets/ConfigTriggerDetection-DxEpodjG.js +0 -1
  597. package/dist/interface/assets/ConfigTriggerGeofence-Bye8syxc.js +0 -1
  598. package/dist/interface/assets/ConfigTriggerManual-s_lEDTV9.js +0 -1
  599. package/dist/interface/assets/ConfigTriggerMqtt-DqdZj7TU.js +0 -1
  600. package/dist/interface/assets/ConfigTriggerSchedule-Q559hn6g.js +0 -1
  601. package/dist/interface/assets/ConfigTriggerSensor-DIKkdbTF.js +0 -1
  602. package/dist/interface/assets/ConfigTriggerSystem-CwNZ4xEg.js +0 -1
  603. package/dist/interface/assets/ConfigTriggerWebhook-9ZC6X4mK.js +0 -1
  604. package/dist/interface/assets/Console-BqIDZ5vq.js +0 -1
  605. package/dist/interface/assets/CuiAssistantConversation-BmBhwrNh.css +0 -1
  606. package/dist/interface/assets/CuiAssistantConversation-CM7KdaX2.js +0 -5
  607. package/dist/interface/assets/CuiAutomationRunsDialog-CVjCLiVW.js +0 -1
  608. package/dist/interface/assets/CuiBottomSheet-CFohFiO2.js +0 -1
  609. package/dist/interface/assets/CuiBottomSheet-D75L0Zny.js +0 -1
  610. package/dist/interface/assets/CuiCameraPipCard-BQKk4fxY.css +0 -1
  611. package/dist/interface/assets/CuiCameraPipCard-eiJjYZ5W.js +0 -1
  612. package/dist/interface/assets/CuiCameraRecordings-DdEWkJrO.js +0 -1
  613. package/dist/interface/assets/CuiCameraShares-8mtgFsQ_.js +0 -1
  614. package/dist/interface/assets/CuiCameraTable-CmCT-XQF.js +0 -2
  615. package/dist/interface/assets/CuiCameraTable-DHrKoD9s.js +0 -1
  616. package/dist/interface/assets/CuiChartTable-v8sGY6PD.js +0 -1
  617. package/dist/interface/assets/CuiConsole-DYV-FUE0.js +0 -5
  618. package/dist/interface/assets/CuiDataTable-C0gsYYpg.js +0 -1
  619. package/dist/interface/assets/CuiLightControl-CFIwBj3C.js +0 -1
  620. package/dist/interface/assets/CuiList-9TVV8SB6.js +0 -1
  621. package/dist/interface/assets/CuiMarkdownContent-BYBQX_aF.js +0 -1
  622. package/dist/interface/assets/CuiMarkdownContent-DTAm-EDR.js +0 -1
  623. package/dist/interface/assets/CuiPluginCard-DEfqwUhQ.js +0 -2
  624. package/dist/interface/assets/CuiPluginCategoryChip-DhnIBJHa.js +0 -1
  625. package/dist/interface/assets/CuiPluginOAuthButton-DAuzNRAA.js +0 -2
  626. package/dist/interface/assets/CuiPluginTrustBadge-Bz710WwC.js +0 -1
  627. package/dist/interface/assets/CuiQRCode-B8-4GHSY.js +0 -1
  628. package/dist/interface/assets/CuiSchema-C_CHuKuf.js +0 -1
  629. package/dist/interface/assets/CuiTopNavbarItem-CNEnOPSh.js +0 -1
  630. package/dist/interface/assets/Faces-DRHMrrxh.js +0 -1
  631. package/dist/interface/assets/FirstSteps-Ci2Iqbe2.js +0 -1
  632. package/dist/interface/assets/Floorplan-Ci63Zd8W.css +0 -1
  633. package/dist/interface/assets/Floorplan-CqWIbDbh.js +0 -1
  634. package/dist/interface/assets/Instances-gzKFKB1l.js +0 -1
  635. package/dist/interface/assets/Logs-DL1yw_Pe.js +0 -6
  636. package/dist/interface/assets/Menu-C0GQ63aj.js +0 -1
  637. package/dist/interface/assets/Metrics-BYnnb7M0.js +0 -12
  638. package/dist/interface/assets/Metrics-DsHBab6t.css +0 -1
  639. package/dist/interface/assets/OAuthDeviceFlow-Zd6r9IHU.js +0 -1
  640. package/dist/interface/assets/Plugin-DJIrYUnZ.js +0 -1
  641. package/dist/interface/assets/Plugin-Qr_Q_Qfi.css +0 -1
  642. package/dist/interface/assets/PluginConsole-ag0jPZQ_.js +0 -7
  643. package/dist/interface/assets/PluginDetail-DmElwUuV.js +0 -2
  644. package/dist/interface/assets/PluginSchema-CxUujnVs.js +0 -1
  645. package/dist/interface/assets/PluginSearch-B-2zH2Xy.js +0 -1
  646. package/dist/interface/assets/PluginSearch-BqzngVRL.js +0 -2
  647. package/dist/interface/assets/PluginUpdateProgress-CFut0RAe.js +0 -1
  648. package/dist/interface/assets/Plugins-ZFcB_j6v.js +0 -1
  649. package/dist/interface/assets/RecentEventsFilter-CqeHhECT.js +0 -1
  650. package/dist/interface/assets/Recordings-BEKAn6QK.css +0 -1
  651. package/dist/interface/assets/Recordings-BJrtW9eG.js +0 -1
  652. package/dist/interface/assets/SensorEdit-Bi0gg-CL.js +0 -1
  653. package/dist/interface/assets/SensorHistory-q0UR3qMG.js +0 -1
  654. package/dist/interface/assets/Sensors-C_InhcHA.js +0 -2
  655. package/dist/interface/assets/Settings-Cv38rGWn.js +0 -1
  656. package/dist/interface/assets/Settings-D7495zbV.css +0 -1
  657. package/dist/interface/assets/SettingsAccount-B05739dn.js +0 -1
  658. package/dist/interface/assets/SettingsAccount-gm28wtbl.js +0 -1
  659. package/dist/interface/assets/SettingsAppearance-DdyYUgmV.js +0 -1
  660. package/dist/interface/assets/SettingsAppearance-DwUknDPV.js +0 -1
  661. package/dist/interface/assets/SettingsAssistant-ChHfkUKk.js +0 -1
  662. package/dist/interface/assets/SettingsBackup-DKwlPQhD.js +0 -1
  663. package/dist/interface/assets/SettingsList-D6hqnvUo.js +0 -1
  664. package/dist/interface/assets/SettingsMqtt-C01fgLY0.js +0 -1
  665. package/dist/interface/assets/SettingsNotifications-D47cIquQ.js +0 -1
  666. package/dist/interface/assets/SettingsPermissions-BeTCTrAf.js +0 -1
  667. package/dist/interface/assets/SettingsRecordings-mwL6Dalr.js +0 -1
  668. package/dist/interface/assets/SettingsRemote-CtP6Gz9C.css +0 -1
  669. package/dist/interface/assets/SettingsRemote-MhaShPIf.js +0 -2
  670. package/dist/interface/assets/SettingsSystem-BXnzXgqm.js +0 -2
  671. package/dist/interface/assets/SettingsUsers-D2mVlJin.js +0 -1
  672. package/dist/interface/assets/Terminal-C1UoXDRK.js +0 -4
  673. package/dist/interface/assets/Training-A5ynOv_l.js +0 -1
  674. package/dist/interface/assets/Training-C-ToeAl4.css +0 -1
  675. package/dist/interface/assets/Updates-kS_Tm8HD.js +0 -2
  676. package/dist/interface/assets/VariableInput-D9PfI8Ut.js +0 -1
  677. package/dist/interface/assets/VariableSuggestions-DArWzQuE.js +0 -1
  678. package/dist/interface/assets/VersionsHandler-BZVMpB2v.js +0 -7
  679. package/dist/interface/assets/VirtualSensorCreate-Cz-QFo4R.js +0 -1
  680. package/dist/interface/assets/Workers-2sc4VMi9.js +0 -2
  681. package/dist/interface/assets/Workers-DH59zE1C.css +0 -1
  682. package/dist/interface/assets/account-DwW7pBOb.js +0 -1
  683. package/dist/interface/assets/ace-DzzM-RlW.js +0 -1
  684. package/dist/interface/assets/ace.config-CCyX_Ohk.js +0 -1
  685. package/dist/interface/assets/alert-circle-BdUVAt1B.js +0 -1
  686. package/dist/interface/assets/alert-outline-IRxYbw0j.js +0 -1
  687. package/dist/interface/assets/api-CGfJbsTz.css +0 -2
  688. package/dist/interface/assets/api-CzwdnGAH.js +0 -1
  689. package/dist/interface/assets/api-DOpXVpef.js +0 -4
  690. package/dist/interface/assets/arrow-left-Bk-ZrOVr.js +0 -1
  691. package/dist/interface/assets/assistant-hGCAgv-f.js +0 -1
  692. package/dist/interface/assets/assistantModels-BsSgRsws.js +0 -1
  693. package/dist/interface/assets/auth-By-S-WEr.js +0 -1
  694. package/dist/interface/assets/automations-vwIwb2PQ.js +0 -1
  695. package/dist/interface/assets/back-filled-D-X19YMO.js +0 -1
  696. package/dist/interface/assets/bell-ring-DreEHgoT.js +0 -1
  697. package/dist/interface/assets/brain-DuDAg544.js +0 -1
  698. package/dist/interface/assets/cameraSources-BMhXvtFt.js +0 -1
  699. package/dist/interface/assets/cctv-DM-C_8_6.js +0 -1
  700. package/dist/interface/assets/check-circle-Bevuw8-0.js +0 -1
  701. package/dist/interface/assets/check-circle-outline-aMxkvksr.js +0 -1
  702. package/dist/interface/assets/chevron-down-CCFn9Z56.js +0 -1
  703. package/dist/interface/assets/chevron-up-CSImUM3_.js +0 -1
  704. package/dist/interface/assets/clock-outline-DH3WIEJt.js +0 -1
  705. package/dist/interface/assets/close-CMxyM4v9.js +0 -1
  706. package/dist/interface/assets/close-circle-CfgJCZ9A.js +0 -1
  707. package/dist/interface/assets/cloud-check-CbdFLIdR.js +0 -1
  708. package/dist/interface/assets/cloudHandoff-BnzjCpJ2.js +0 -1
  709. package/dist/interface/assets/config-BQxEwrK6.js +0 -1
  710. package/dist/interface/assets/content-copy-Bz49QPOI.js +0 -1
  711. package/dist/interface/assets/copy-DA6QQHRt.js +0 -1
  712. package/dist/interface/assets/cube-scan-IiH8zwm2.js +0 -1
  713. package/dist/interface/assets/database-refresh-outline-CIUDpcuq.js +0 -1
  714. package/dist/interface/assets/delete-Btu-UVx9.js +0 -1
  715. package/dist/interface/assets/dist-D_qWDAKp.js +0 -1
  716. package/dist/interface/assets/dots-vertical-D496SIss.js +0 -1
  717. package/dist/interface/assets/download-BSC7lwq_.js +0 -1
  718. package/dist/interface/assets/esm-Bn9gXwX4.js +0 -1
  719. package/dist/interface/assets/esm-BzM6y2-F.js +0 -1
  720. package/dist/interface/assets/esm-CP3JWrtj.js +0 -1
  721. package/dist/interface/assets/esm-CjAXkqCf.js +0 -1
  722. package/dist/interface/assets/esm-Cqxk-j1S.js +0 -1
  723. package/dist/interface/assets/esm-DFHd3JNU.js +0 -1
  724. package/dist/interface/assets/esm-DfMLJtug.js +0 -1
  725. package/dist/interface/assets/esm-DhDrpq7a.js +0 -1
  726. package/dist/interface/assets/esm-DvhM-SOd.js +0 -1
  727. package/dist/interface/assets/esm-G63bqygQ.js +0 -1
  728. package/dist/interface/assets/esm-Gn-Y59hU.js +0 -1
  729. package/dist/interface/assets/esm-KJSOz2vj.js +0 -1
  730. package/dist/interface/assets/esm-Ryfc94Tm.js +0 -1
  731. package/dist/interface/assets/esm-rSfI5Poy.js +0 -1
  732. package/dist/interface/assets/eventIcons-UQutPG3p.js +0 -1
  733. package/dist/interface/assets/eventLabels-BsPoPWS9.js +0 -1
  734. package/dist/interface/assets/eye-off-CSU0U8g7.js +0 -1
  735. package/dist/interface/assets/eye-off-outline-DCxLRGo_.js +0 -1
  736. package/dist/interface/assets/flowSchema-BPq6iHks.js +0 -1
  737. package/dist/interface/assets/help-circle-outline-Cr_yNhPi.js +0 -1
  738. package/dist/interface/assets/history-anuCbp1T.js +0 -1
  739. package/dist/interface/assets/home-N3bDR1vX.js +0 -1
  740. package/dist/interface/assets/information-outline-CMWIvLNB.js +0 -1
  741. package/dist/interface/assets/intercomService-CXcjcPa9.js +0 -1
  742. package/dist/interface/assets/lan-CYXjdk7L.js +0 -1
  743. package/dist/interface/assets/main-By4L33Im.js +0 -3
  744. package/dist/interface/assets/main-DVa5U7UB.css +0 -1
  745. package/dist/interface/assets/microphone-BB2pATI_.js +0 -1
  746. package/dist/interface/assets/minus-BCp3ZNKO.js +0 -1
  747. package/dist/interface/assets/mqtt-DE1KQ8Td.js +0 -1
  748. package/dist/interface/assets/native-CZJE8bTs.js +0 -1
  749. package/dist/interface/assets/native-DKZwialB.js +0 -1
  750. package/dist/interface/assets/nodeDefinitions-ByrqsENY.js +0 -1
  751. package/dist/interface/assets/notifications-BCyiD-TP.js +0 -1
  752. package/dist/interface/assets/pause-BQlxwAW2.js +0 -1
  753. package/dist/interface/assets/pencil-CDsNnEXi.js +0 -1
  754. package/dist/interface/assets/pencil-outline-CIQL5Kui.js +0 -1
  755. package/dist/interface/assets/plugin-DSEMkqaK.js +0 -1
  756. package/dist/interface/assets/plugins-BJPCV1YL.js +0 -1
  757. package/dist/interface/assets/plus-Bp4q9G7S.js +0 -1
  758. package/dist/interface/assets/plus-CySoovdr.js +0 -1
  759. package/dist/interface/assets/power-WmBLDR0-.js +0 -1
  760. package/dist/interface/assets/radar-CyYAmume.js +0 -1
  761. package/dist/interface/assets/refresh-CHTA3jVN.js +0 -1
  762. package/dist/interface/assets/restore-C8RNM5yX.js +0 -1
  763. package/dist/interface/assets/rooms-Dr4yiakO.js +0 -1
  764. package/dist/interface/assets/round-alt-arrow-left-bold-Gh5mi_yR.js +0 -1
  765. package/dist/interface/assets/search-BajCVmOI.js +0 -1
  766. package/dist/interface/assets/sensorIcons-DofElQ3w.js +0 -1
  767. package/dist/interface/assets/sensorSlots-D2KJGvPw.js +0 -1
  768. package/dist/interface/assets/sensors-3llrL7s3.js +0 -1
  769. package/dist/interface/assets/server-Dw5DD473.js +0 -1
  770. package/dist/interface/assets/settings-DnksaK7m.js +0 -1
  771. package/dist/interface/assets/source-branch-CzqIPffP.js +0 -1
  772. package/dist/interface/assets/theme-C85LJhOY.js +0 -1
  773. package/dist/interface/assets/trash-2-DJeEhHf4.js +0 -1
  774. package/dist/interface/assets/trash-can-outline-DrT6iw7I.js +0 -1
  775. package/dist/interface/assets/trash-fill-Bb_-UicM.js +0 -1
  776. package/dist/interface/assets/trash2-Dsl8gfxq.js +0 -1
  777. package/dist/interface/assets/types-CPhy0Ovw.js +0 -1
  778. package/dist/interface/assets/types-DYKmSGl4.js +0 -1
  779. package/dist/interface/assets/types-i1kTodPP.js +0 -1
  780. package/dist/interface/assets/undo-DoqJW-k7.js +0 -1
  781. package/dist/interface/assets/ungrouped-BlheTJCh.css +0 -1
  782. package/dist/interface/assets/ungrouped-C2CWO39a.js +0 -1
  783. package/dist/interface/assets/updates-C2LhMkNR.js +0 -1
  784. package/dist/interface/assets/upload-C3w1XH-o.js +0 -1
  785. package/dist/interface/assets/upload-DtIcwiNC.js +0 -1
  786. package/dist/interface/assets/useAppVersion-DkazK9Vu.js +0 -1
  787. package/dist/interface/assets/useAssistantActions-BZP6NL18.js +0 -1
  788. package/dist/interface/assets/useBackupRestore-DMQW_CVC.js +0 -1
  789. package/dist/interface/assets/useCameraOptions-DnI0xLrX.js +0 -1
  790. package/dist/interface/assets/useKeyboardInset-Cr7SxKGN.js +0 -1
  791. package/dist/interface/assets/useLogsSocket-C3Y8S0Ar.js +0 -1
  792. package/dist/interface/assets/useNavLayout-C9pcDuVP.js +0 -1
  793. package/dist/interface/assets/usePermissions-CCTxwXF0.js +0 -1
  794. package/dist/interface/assets/usePluginUpdates-DBhLWAua.js +0 -1
  795. package/dist/interface/assets/usePushRegistration-CPRVdLAx.js +0 -2
  796. package/dist/interface/assets/useServerRestart-bScBLJ9r.js +0 -1
  797. package/dist/interface/assets/useStreamStatus-Bfh-WmLH.js +0 -1
  798. package/dist/interface/assets/useTabSwipe-C_QOrvSW.js +0 -1
  799. package/dist/interface/assets/useUpdateChannel-g0h_4c55.js +0 -1
  800. package/dist/interface/assets/useUpdatesSocket-CxrLRETs.js +0 -1
  801. package/dist/interface/assets/useUserOptions-DN0t3gBr.js +0 -1
  802. package/dist/interface/assets/variable-ywTlRfo5.js +0 -1
  803. package/dist/interface/assets/vendor-ace-CvEoip98.js +0 -1085
  804. package/dist/interface/assets/vendor-cameraui-B28aGJJD.js +0 -2326
  805. package/dist/interface/assets/vendor-capacitor-Bs_WzL0Q.js +0 -2
  806. package/dist/interface/assets/vendor-chart-DBK083Hu.js +0 -3
  807. package/dist/interface/assets/vendor-core-DIa0tPNH.js +0 -1
  808. package/dist/interface/assets/vendor-dnd-DGQLvX6Y.js +0 -2
  809. package/dist/interface/assets/vendor-draggabilly-D8CK6M-y.js +0 -1
  810. package/dist/interface/assets/vendor-gFkr2qsZ.js +0 -23
  811. package/dist/interface/assets/vendor-leaflet-DkAk6mAj.js +0 -1
  812. package/dist/interface/assets/vendor-markdown-qHIinIUE.js +0 -14
  813. package/dist/interface/assets/vendor-primevue-CZKUAkMA.js +0 -3942
  814. package/dist/interface/assets/vendor-vueflow-bSwRZ9X8.js +0 -26
  815. package/dist/interface/assets/web-BDNQnMmA.js +0 -1
  816. package/dist/interface/assets/web-B_9Qyt8E.js +0 -1
  817. package/dist/interface/assets/web-BhJykCtq.js +0 -1
  818. package/dist/interface/assets/web-BjKL51lK-wWFeZlLg.js +0 -1
  819. package/dist/interface/assets/web-C7nJwIOa.js +0 -1
  820. package/dist/interface/assets/web-CGJsJQDb.js +0 -1
  821. package/dist/interface/assets/web-CJwASxrl.js +0 -1
  822. package/dist/interface/assets/web-CLe0L31Y.js +0 -1
  823. package/dist/interface/assets/web-DEv1hAn1.js +0 -1
  824. package/dist/interface/assets/web-DaeQvsXT.js +0 -1
  825. package/dist/interface/assets/web-H3-wNunW.js +0 -1
  826. package/dist/interface/assets/web-LCdyqJq1.js +0 -1
  827. package/dist/interface/assets/web-XZWYTK65.js +0 -1
  828. package/dist/interface/assets/web-rU5hlxxW.js +0 -1
  829. package/dist/interface/assets/webhook-CWKf2Qxu.js +0 -1
  830. package/dist/interface/assets/workbox-window.prod.es5-BEYAF-e-.js +0 -1
  831. package/dist/interface/assets/zoom-in-CHkXAWHy.js +0 -1
  832. package/dist/interface/ha/404-tl2VQ3qy.js +0 -60
  833. package/dist/interface/ha/About-Cn7KOblU.js +0 -55
  834. package/dist/interface/ha/Assistant-DG2GGda0.js +0 -9361
  835. package/dist/interface/ha/Automation-D0_WpXx4.js +0 -2025
  836. package/dist/interface/ha/AutomationImport-DdC3dEaC.js +0 -206
  837. package/dist/interface/ha/AutomationStore-BrLn4oBx.js +0 -336
  838. package/dist/interface/ha/AutomationStoreDetail-DoppNsNc.js +0 -122
  839. package/dist/interface/ha/Automations-BaUJ9pVq.js +0 -424
  840. package/dist/interface/ha/Camera-Cj5ImvZG.js +0 -657
  841. package/dist/interface/ha/CameraConsole-7MhlS2VK.js +0 -52
  842. package/dist/interface/ha/Cameras-vHYz8uSO.js +0 -1969
  843. package/dist/interface/ha/Camview-BEglAx26.js +0 -1331
  844. package/dist/interface/ha/Config-CHiK--zP.js +0 -356
  845. package/dist/interface/ha/ConfigActionAssistant-DynduZYV.js +0 -182
  846. package/dist/interface/ha/ConfigActionCameraControl-BEYePssz.js +0 -152
  847. package/dist/interface/ha/ConfigActionHttp-h0vRWqZ5.js +0 -134
  848. package/dist/interface/ha/ConfigActionImageInput-B9GMZYAR.js +0 -171
  849. package/dist/interface/ha/ConfigActionMqtt-BEQpHBgf.js +0 -81
  850. package/dist/interface/ha/ConfigActionNotification-BYsz8_aS.js +0 -199
  851. package/dist/interface/ha/ConfigActionNotificationControl-BxmIWVE8.js +0 -111
  852. package/dist/interface/ha/ConfigActionOutput-DTOQSa1S.js +0 -98
  853. package/dist/interface/ha/ConfigActionPlugin-NOsUs3QI.js +0 -172
  854. package/dist/interface/ha/ConfigActionSensor-YWnsH_LV.js +0 -139
  855. package/dist/interface/ha/ConfigActionSnapshot-DHJnTvin.js +0 -48
  856. package/dist/interface/ha/ConfigActionVariable-C7UFnvW0.js +0 -88
  857. package/dist/interface/ha/ConfigConditionIfElse-CAHbuhH3.js +0 -124
  858. package/dist/interface/ha/ConfigConditionSensorState-CE6okUeb.js +0 -192
  859. package/dist/interface/ha/ConfigConditionSwitch-D5FULaTy.js +0 -128
  860. package/dist/interface/ha/ConfigSensorValueInput-mo6Gs_aZ.js +0 -170
  861. package/dist/interface/ha/ConfigTriggerDetection-Bt-OhHtM.js +0 -241
  862. package/dist/interface/ha/ConfigTriggerGeofence-Cw3jV5qD.js +0 -4888
  863. package/dist/interface/ha/ConfigTriggerMqtt-BXeV82UG.js +0 -134
  864. package/dist/interface/ha/ConfigTriggerSensor-Baqq--nJ.js +0 -73
  865. package/dist/interface/ha/ConfigTriggerSystem-braUVGzW.js +0 -192
  866. package/dist/interface/ha/ConfigTriggerWebhook-Dm45r-1C.js +0 -94
  867. package/dist/interface/ha/Console-q3TCsxYo.js +0 -348
  868. package/dist/interface/ha/CuiAutomationRunsDialog-DO6h5Tc4.js +0 -130
  869. package/dist/interface/ha/CuiBottomSheet-B7ldz0xi.js +0 -270
  870. package/dist/interface/ha/CuiCameraRecordings-Dq1Vh3qA.js +0 -551
  871. package/dist/interface/ha/CuiCameraShares-DBqcpevG.js +0 -121
  872. package/dist/interface/ha/CuiCameraTable-kL8rK-Uv.js +0 -169
  873. package/dist/interface/ha/CuiChartTable-BrFyiSt_.js +0 -6801
  874. package/dist/interface/ha/CuiConsole-DpeXZmJd.js +0 -244
  875. package/dist/interface/ha/CuiDataTable-BtqzIz0o.js +0 -8732
  876. package/dist/interface/ha/CuiList-CU2NJ1K6.js +0 -57
  877. package/dist/interface/ha/CuiPluginCard-lBLypaN4.js +0 -769
  878. package/dist/interface/ha/CuiPluginOAuthButton-CuGauZJA.js +0 -79
  879. package/dist/interface/ha/CuiPluginTrustBadge-BofBmRYc.js +0 -123
  880. package/dist/interface/ha/CuiQRCode-CdK9bwKb.js +0 -86
  881. package/dist/interface/ha/CuiSchema-DqkCLv9Y.js +0 -963
  882. package/dist/interface/ha/CuiTopNavbarItem-C2VZB7WV.js +0 -140
  883. package/dist/interface/ha/Faces-Crfi-75Z.js +0 -1441
  884. package/dist/interface/ha/FirstSteps-CKVG86pf.js +0 -251
  885. package/dist/interface/ha/Floorplan-CH9_-6hk.js +0 -3657
  886. package/dist/interface/ha/Instances-5gZdPPDA.js +0 -680
  887. package/dist/interface/ha/Logs-BkzEM70F.js +0 -418
  888. package/dist/interface/ha/Menu-BuT3_Ggx.js +0 -156
  889. package/dist/interface/ha/Metrics-BGrzu0bu.js +0 -1447
  890. package/dist/interface/ha/OAuthDeviceFlow-BEJtegqy.js +0 -112
  891. package/dist/interface/ha/Plugin-Bnp2jiC2.js +0 -1544
  892. package/dist/interface/ha/PluginConsole-CmsuPVMz.js +0 -56
  893. package/dist/interface/ha/PluginDetail-BCNx7vHr.js +0 -805
  894. package/dist/interface/ha/PluginSearch-DOdhuxgM.js +0 -462
  895. package/dist/interface/ha/PluginUpdateProgress-CwkKc8Tr.js +0 -34
  896. package/dist/interface/ha/Plugins-BrFowCdC.js +0 -692
  897. package/dist/interface/ha/RecentEventsFilter-9ZkDHD1g.js +0 -79
  898. package/dist/interface/ha/Recordings-BZhf39pJ.js +0 -1539
  899. package/dist/interface/ha/SensorEdit-Ds6WbN4A.js +0 -1462
  900. package/dist/interface/ha/SensorHistory-CoTIYTJx.js +0 -54
  901. package/dist/interface/ha/Sensors-DZ2MKdlh.js +0 -1400
  902. package/dist/interface/ha/Settings-D3JKr430.js +0 -218
  903. package/dist/interface/ha/SettingsAccount-cvtlSKZw.js +0 -971
  904. package/dist/interface/ha/SettingsAppearance-CaKuOHRu.js +0 -220
  905. package/dist/interface/ha/SettingsAssistant-vWVjAUqQ.js +0 -2025
  906. package/dist/interface/ha/SettingsBackup-CvzL_bVf.js +0 -556
  907. package/dist/interface/ha/SettingsList-C0Ec8x-H.js +0 -40
  908. package/dist/interface/ha/SettingsMqtt-COnq-QM5.js +0 -526
  909. package/dist/interface/ha/SettingsNotifications-BZ68bQzO.js +0 -529
  910. package/dist/interface/ha/SettingsPermissions-Jh0FuIF7.js +0 -84
  911. package/dist/interface/ha/SettingsRecordings-BPtNNpDa.js +0 -152
  912. package/dist/interface/ha/SettingsRemote-BXG8IYjf.js +0 -1810
  913. package/dist/interface/ha/SettingsSystem-_jHBUhws.js +0 -376
  914. package/dist/interface/ha/SettingsUsers-CzGj_RJN.js +0 -379
  915. package/dist/interface/ha/Terminal-BP3b8IBP.js +0 -612
  916. package/dist/interface/ha/Training-C2-6DgY0.js +0 -1699
  917. package/dist/interface/ha/Updates-BMZsEhmy.js +0 -343
  918. package/dist/interface/ha/VariableInput-DmI7skCD.js +0 -52
  919. package/dist/interface/ha/VersionsHandler-DJd4NqtD.js +0 -216
  920. package/dist/interface/ha/VirtualSensorCreate-DmtGYvAn.js +0 -101
  921. package/dist/interface/ha/Workers-2HTPHgKV.js +0 -765
  922. package/dist/interface/ha/ace-B3bPzJu9.js +0 -13236
  923. package/dist/interface/ha/ace.config-Dt55Nqby.js +0 -1429
  924. package/dist/interface/ha/api-BelbnLQO.js +0 -62346
  925. package/dist/interface/ha/api-sy4rqV2N.js +0 -29
  926. package/dist/interface/ha/assistant-C6KYXJfi.js +0 -349
  927. package/dist/interface/ha/auth-Da66mVEd.js +0 -271
  928. package/dist/interface/ha/automationBlueprint-hlqqM17r.js +0 -250
  929. package/dist/interface/ha/cards-BFRRfuM7.js +0 -13436
  930. package/dist/interface/ha/config-Cd7JNMpD.js +0 -116
  931. package/dist/interface/ha/dist-BIngHzHx.js +0 -287
  932. package/dist/interface/ha/dist-BybVYMVs.js +0 -3248
  933. package/dist/interface/ha/eventIcons-BFNUgeGr.js +0 -676
  934. package/dist/interface/ha/eventLabels-B4C1_4vT.js +0 -42
  935. package/dist/interface/ha/eye-off-outline-ACbzsGuK.js +0 -19
  936. package/dist/interface/ha/intercomService-B7HkLs6z.js +0 -1414
  937. package/dist/interface/ha/mqtt-UZfptWJl.js +0 -56
  938. package/dist/interface/ha/notifications-DTHM8fS-.js +0 -159
  939. package/dist/interface/ha/pinia-BokSpDzj.js +0 -7656
  940. package/dist/interface/ha/plugins-Bwp_GfaX.js +0 -592
  941. package/dist/interface/ha/protocol-BB4jdtUC-DW3jl2tV.js +0 -708
  942. package/dist/interface/ha/rooms-BvaD0r0q.js +0 -45
  943. package/dist/interface/ha/server-OWdtITVa.js +0 -239
  944. package/dist/interface/ha/types-BFJjyMZe.js +0 -1073
  945. package/dist/interface/ha/ungrouped-x00DHNHO.js +0 -1311
  946. package/dist/interface/ha/updates-C03Qf3Il.js +0 -341
  947. package/dist/interface/ha/useAppVersion-CrMd9CC9.js +0 -22
  948. package/dist/interface/ha/useAssistantActions-S1FrNe9b.js +0 -29
  949. package/dist/interface/ha/useKeyboardInset-DwUQCWHC.js +0 -27
  950. package/dist/interface/ha/useLogsSocket-C6k217mW.js +0 -59
  951. package/dist/interface/ha/useNavLayout-DhuQE024.js +0 -125
  952. package/dist/interface/ha/usePermissions-DaE_wFch.js +0 -72
  953. package/dist/interface/ha/useServerRestart-CYaen2r6.js +0 -23
  954. package/dist/interface/ha/useTabSwipe-DAmCFlgg.js +0 -45
  955. package/dist/interface/ha/useUpdateChannel-Dr1EoU2X.js +0 -22
  956. package/dist/interface/ha/useUpdatesSocket-C8Gmhemh.js +0 -34
  957. package/dist/interface/ha/useUserOptions-BB5wk3Bq.js +0 -15
  958. package/dist/interface/workbox-778a14ff.js +0 -1
@@ -1,1311 +0,0 @@
1
- import { Et as e, et as t, f as n, gt as r, i, m as a, rt as o } from "./ripple-ZDATPc2w.js";
2
- import { n as s } from "./virtualscroller-B-UQZDMJ.js";
3
- import { A as c, D as l, G as u, H as d, Jt as f, K as p, M as m, N as h, Wt as g, Y as _, _t as v, d as y, f as b, gt as x, kt as S, l as C, lt as w, ot as ee, p as T, q as E, r as D, rt as O, st as te, u as k, ut as ne, x as A, xt as j, y as M, z as re } from "./runtime-core.esm-bundler-_TfE0DWz.js";
4
- import { $ as ie, $n as ae, Dn as oe, Er as N, Fn as se, Hr as ce, On as le, Pn as P, Q as ue, Rn as de, Si as fe, Tr as pe, Un as me, Wn as he, Xn as ge, _r as _e, br as ve, ct as ye, er as be, et as xe, gr as Se, gt as Ce, it as we, lr as Te, lt as Ee, nt as De, o as Oe, rr as ke, rt as Ae, tt as je, ur as Me } from "./api-BelbnLQO.js";
5
- import { A as Ne, _ as Pe, o as Fe } from "./intercomService-B7HkLs6z.js";
6
- import { n as Ie } from "./vue-i18n-D5EAy78K.js";
7
- import { i as Le } from "./alert-outline-FcLLjoOK.js";
8
- import { t as Re } from "./eventIcons-BFNUgeGr.js";
9
- import { t as ze } from "./spinner-DIILjDT9.js";
10
- import { M as Be } from "./dist-BybVYMVs.js";
11
- import { t as F } from "./inputtext-C_ygnPrC.js";
12
- import { t as I } from "./select-DV7p2EDj.js";
13
- //#region ~icons/tabler/user-edit
14
- var L = {
15
- viewBox: "0 0 24 24",
16
- width: "1.2em",
17
- height: "1.2em"
18
- };
19
- function Ve(e, t) {
20
- return d(), T("svg", L, [...t[0] ||= [k("path", {
21
- fill: "none",
22
- stroke: "currentColor",
23
- "stroke-linecap": "round",
24
- "stroke-linejoin": "round",
25
- "stroke-width": "2",
26
- d: "M8 7a4 4 0 1 0 8 0a4 4 0 0 0-8 0M6 21v-2a4 4 0 0 1 4-4h3.5m4.92.61a2.1 2.1 0 0 1 2.97 2.97L18 22h-3v-3z"
27
- }, null, -1)]]);
28
- }
29
- var He = v({
30
- name: "tabler-user-edit",
31
- render: Ve
32
- }), R = { class: "flex flex-col gap-4 w-full" }, z = {
33
- key: 0,
34
- class: "flex justify-center"
35
- }, B = ["src", "alt"], V = { class: "flex flex-col gap-2 w-full" }, H = { class: "cui-label" }, U = { class: "flex flex-col gap-2 w-full" }, W = {
36
- for: "reassignTarget",
37
- class: "cui-label"
38
- }, Ue = /* @__PURE__ */ A({
39
- __name: "FaceReassign",
40
- props: {
41
- cropUrl: {},
42
- oldName: {}
43
- },
44
- setup(e, { expose: t }) {
45
- let n = e, { t: r } = Ie(), { plugin: i } = Be("@camera.ui/camera-ui-nvr"), a = j(null), o = j([]), s = j(!0), c = C(() => n.oldName === "unknown" ? r("views.recordings.reassign_unknown_person") : n.oldName), l = C(() => {
46
- let e = o.value.filter((e) => e !== n.oldName).map((e) => ({
47
- label: e,
48
- value: e
49
- }));
50
- return n.oldName !== "unknown" && e.push({
51
- label: r("views.recordings.reassign_unknown"),
52
- value: ""
53
- }), e;
54
- });
55
- return re(async () => {
56
- try {
57
- let e = await i.value?.listKnownFaces?.();
58
- o.value = (e ?? []).map((e) => e.name);
59
- } catch {} finally {
60
- s.value = !1;
61
- }
62
- }), t({ onConfirm: async () => a.value }), (e, t) => {
63
- let r = F, i = I;
64
- return d(), T("div", R, [
65
- n.cropUrl ? (d(), T("div", z, [k("img", {
66
- src: n.cropUrl,
67
- alt: S(c),
68
- class: "w-36 h-36 rounded-xl object-cover bg-neutral-900"
69
- }, null, 8, B)])) : b("", !0),
70
- k("div", V, [k("label", H, f(e.$t("views.recordings.reassign_current")), 1), M(r, {
71
- "model-value": S(c),
72
- class: "w-full",
73
- fluid: "",
74
- disabled: ""
75
- }, null, 8, ["model-value"])]),
76
- k("div", U, [k("label", W, f(e.$t("views.recordings.reassign_new")), 1), M(i, {
77
- id: "reassignTarget",
78
- modelValue: S(a),
79
- "onUpdate:modelValue": t[0] ||= (e) => x(a) ? a.value = e : null,
80
- options: S(l),
81
- "option-label": "label",
82
- "option-value": "value",
83
- class: "w-full",
84
- fluid: "",
85
- loading: S(s),
86
- disabled: S(s),
87
- placeholder: e.$t("views.faces.enter_or_pick_name")
88
- }, null, 8, [
89
- "modelValue",
90
- "options",
91
- "loading",
92
- "disabled",
93
- "placeholder"
94
- ])])
95
- ]);
96
- };
97
- }
98
- }), We = {
99
- key: 0,
100
- class: "card-skeleton absolute inset-0 rounded-xl"
101
- }, Ge = {
102
- key: 2,
103
- class: "w-full h-full flex items-center justify-center bg-neutral-800/80"
104
- }, Ke = { class: "absolute top-0 left-0 right-0 p-2 bg-gradient-to-b from-black/80 to-transparent z-[3]" }, qe = { class: "flex items-center gap-1.5" }, Je = { class: "text-xs font-semibold text-white truncate min-w-0 flex-1" }, Ye = {
105
- key: 0,
106
- class: "text-[10px] font-semibold text-white/80 bg-black/60 px-1.5 py-0.5 rounded-md shrink-0"
107
- }, Xe = ["title"], Ze = ["title", "disabled"], Qe = { class: "text-[10px] text-white/70" }, $e = ["aria-label"], et = ["aria-label"], tt = { class: "block text-[11px] text-white font-medium truncate bg-black/50 rounded-md px-2 py-0.5" }, nt = { class: "flex items-center gap-1 min-w-0" }, rt = ["title"], it = {
108
- key: 0,
109
- class: "flex items-center gap-0.5 shrink-0 opacity-85 group-hover:opacity-100 transition-opacity duration-200"
110
- }, at = ["onClick"], ot = ["src", "alt"], st = {
111
- key: 0,
112
- class: "text-[10px] text-white/60 font-medium"
113
- }, ct = {
114
- key: 6,
115
- class: "absolute inset-0 z-[4] flex items-center justify-center pointer-events-none"
116
- }, lt = {
117
- key: 7,
118
- class: "absolute bottom-10 left-1/2 -translate-x-1/2 z-[4] pointer-events-none"
119
- }, ut = {
120
- class: "text-[10px] font-semibold text-white bg-black/60 px-1.5 py-0.5 rounded-md whitespace-nowrap",
121
- style: { "font-variant-numeric": "tabular-nums" }
122
- }, dt = 24, ft = 30, pt = 22, mt = 28, ht = 8, gt = 8, G = /*#__PURE__*/ N(/* @__PURE__ */ A({
123
- __name: "RecordingCard",
124
- props: {
125
- event: {},
126
- cameraName: {},
127
- camera: {},
128
- loadThumbnails: { type: Function },
129
- semanticScore: {},
130
- segIndex: {},
131
- hideSegmentBadge: { type: Boolean },
132
- selectionMode: { type: Boolean },
133
- selected: { type: Boolean },
134
- siblingActive: { type: Boolean }
135
- },
136
- emits: [
137
- "scrollToEvent",
138
- "select",
139
- "openTrace"
140
- ],
141
- setup(e, { emit: t }) {
142
- let r = e, i = t, o = Fe(), s = fe(), { t: c } = Ie(), p = ce(), m = ge("@camera.ui/camera-ui-nvr"), { plugin: v } = Be("@camera.ui/camera-ui-nvr"), x = Ce(), { icons: w } = Re(), E = m.getCachedThumbnails(r.event.id), te = E ? P(E, r.event, "card", r.segIndex).url ? "loaded" : "empty" : "loading", A = l(he, void 0), N = O("rootRef"), Pe = O("previewCanvasRef"), ze = O("footerRef"), F = O("cardMenuRef"), I = j(!1), L = j(!1), Ve = De(N, () => Kt(), () => $()), R = j(!1), z = j(E ?? null), B = j(te), V = j(!1), H = j(0), U = j(null), W = j(!1), G = j(), _t = j(0), vt = C(() => Se(void 0, "admin")), yt = C(() => U.value ?? r.event.favorite ?? !1), bt = C(() => {
143
- if (r.semanticScore == null) return;
144
- let e = Math.max(0, Math.min(1, r.semanticScore));
145
- return {
146
- pct: e,
147
- label: `${(e * 100).toFixed(0)}%`,
148
- color: e >= .5 ? "bg-green-500/80" : e >= .25 ? "bg-yellow-500/80" : "bg-red-400/80"
149
- };
150
- }), K = C(() => z.value ? P(z.value, r.event, "card", r.segIndex) : null), q = C(() => {
151
- let e = r.segIndex ?? K.value?.segIndex;
152
- return e === void 0 ? void 0 : r.event.segments?.[e];
153
- }), xt = C(() => K.value?.url), St = C(() => K.value?.label), Ct = C(() => K.value?.type ?? r.event.types[0] ?? "motion"), J = C(() => {
154
- if (r.hideSegmentBadge) return;
155
- let e = r.event.segments?.length ?? 0;
156
- return r.segIndex !== void 0 && e > 1 ? `${r.segIndex + 1}/${e}` : void 0;
157
- }), Y = C(() => {
158
- let e = z.value, t = K.value?.url;
159
- if (!e || !t) return [];
160
- let n = [{
161
- url: t,
162
- label: K.value?.label,
163
- type: Ct.value,
164
- crop: !1
165
- }];
166
- for (let t of se(e, r.segIndex)) {
167
- if (n.some((e) => e.url === t.url)) continue;
168
- let e = t.key.split(":")[0];
169
- n.push({
170
- url: t.url,
171
- label: t.label,
172
- type: t.type,
173
- crop: !0,
174
- faceSeg: /^\d+$/.test(e) ? Number(e) : -1
175
- });
176
- }
177
- if (r.segIndex === void 0) for (let t of Object.keys(e.cards ?? e.strips ?? {}).sort((e, t) => Number(e) - Number(t))) {
178
- let i = me(e.cards?.[t] ?? e.strips?.[t]);
179
- if (!i || n.some((e) => e.url === i)) continue;
180
- let a = we(r.event, t);
181
- n.push({
182
- url: i,
183
- label: a,
184
- type: a,
185
- crop: !1
186
- });
187
- }
188
- return n.length > 1 ? n : [];
189
- }), wt = C(() => Y.value.length > 1), X = C(() => Y.value.length ? Math.min(H.value, Y.value.length - 1) : 0), Z = C(() => wt.value ? Y.value[X.value] : void 0), Tt = C(() => !!Z.value?.crop), Et = C(() => Z.value?.url ?? xt.value), Dt = C(() => Z.value?.label ?? St.value), Q = C(() => {
190
- let e = q.value;
191
- return (e ? ae(r.event, e) : [...new Set(r.event.types)]).filter((e) => e !== "motion" && e !== "audio");
192
- }), Ot = C(() => r.cameraName ?? r.event.cameraId), kt = C(() => Y.value.map((e) => ({
193
- url: e.url,
194
- type: e.type
195
- }))), At = C(() => Q.value.slice(0, jt.value.icons)), jt = C(() => {
196
- let e = _t.value;
197
- if (!e) return {
198
- icons: 2,
199
- tiles: 2
200
- };
201
- let t = e - ht;
202
- r.selectionMode && (t -= mt);
203
- let n = kt.value.length > 0 ? 52 : 0, i = Ht(Q.value.length, Math.max(0, t - n), dt), a = Q.value.length > 0 ? Math.max(1, i) : 0, o = a * dt + (a < Q.value.length ? pt : 0);
204
- return {
205
- icons: a,
206
- tiles: Ht(kt.value.length, Math.max(0, t - o), ft)
207
- };
208
- }), Mt = C(() => Q.value.slice(jt.value.icons)), Nt = C(() => kt.value.slice(0, jt.value.tiles)), Pt = C(() => kt.value.length - jt.value.tiles), Ft = C(() => {
209
- let e = new Date(q.value?.firstSeen ?? r.event.thumbnailAt ?? r.event.startTime), t = /* @__PURE__ */ new Date(), n = e.toDateString() === t.toDateString(), i = e.toLocaleTimeString([], {
210
- hour: "2-digit",
211
- minute: "2-digit"
212
- });
213
- return n ? i : `${e.toLocaleDateString([], {
214
- month: "short",
215
- day: "numeric"
216
- })} ${i}`;
217
- }), It = C(() => !!(v.value && r.event.endTime && r.event.hasRecording !== !1)), Lt = C(() => A ? L.value ? c("views.recordings.no_preview") : R.value ? A.status.value === "unavailable" ? c("views.recordings.no_preview") : A.status.value === "playing" && A.previewTimeMs.value ? Gt(A.previewTimeMs.value) : "" : "" : ""), Rt = C(() => {
218
- let e = Z.value;
219
- if (e?.crop) return e.type === "face" ? {
220
- seg: e.faceSeg ?? -1,
221
- label: e.label || "unknown"
222
- } : void 0;
223
- let t = r.segIndex ?? K.value?.segIndex;
224
- if (X.value > 0 || t === void 0) return;
225
- let n = q.value?.attributes.filter((e) => e.type === "face") ?? [];
226
- return n.length === 1 ? {
227
- seg: t,
228
- label: n[0].label || "unknown"
229
- } : void 0;
230
- }), zt = C(() => {
231
- let e = [];
232
- return vt.value && Rt.value && e.push({
233
- key: "reassign",
234
- label: c("views.recordings.reassign_face"),
235
- icon: He,
236
- loading: W.value,
237
- onClick: () => Qt()
238
- }), r.camera && e.push({
239
- key: "trace",
240
- label: c("views.recordings.open_trace"),
241
- icon: ye,
242
- onClick: () => i("openTrace", q.value?.firstSeen)
243
- }), e.push({
244
- key: "ask",
245
- label: c("views.recordings.ask_assistant"),
246
- icon: Le,
247
- onClick: () => Vt()
248
- }), It.value && e.push({
249
- key: "download",
250
- label: c("views.recordings.download"),
251
- icon: Ee,
252
- loading: V.value,
253
- onClick: () => tn()
254
- }), e;
255
- });
256
- function Bt() {
257
- le(F.value?.hide);
258
- }
259
- function Vt() {
260
- let e = c("views.recordings.ask_assistant_prompt", {
261
- camera: r.cameraName ?? r.camera?.name ?? r.event.cameraId,
262
- time: new Date(r.event.startTime).toLocaleString(),
263
- id: r.event.id
264
- });
265
- p.push({
266
- path: "/assistant",
267
- query: { prompt: e }
268
- });
269
- }
270
- function Ht(e, t, n) {
271
- return e === 0 || t < n ? 0 : e * n <= t ? e : Math.max(0, Math.floor((t - pt) / n));
272
- }
273
- function Ut(e) {
274
- let t = Y.value.length;
275
- t && ($(), G.value = void 0, H.value = (X.value + e + t) % t);
276
- }
277
- function Wt(e, t) {
278
- wt.value && (t.stopPropagation(), $(), G.value = void 0, H.value = e);
279
- }
280
- function $() {
281
- L.value = !1, A && R.value && (R.value = !1, A.onHoverEnd());
282
- }
283
- function Gt(e) {
284
- let t = new Date(e);
285
- return `${String(t.getHours()).padStart(2, "0")}:${String(t.getMinutes()).padStart(2, "0")}:${String(t.getSeconds()).padStart(2, "0")}`;
286
- }
287
- function Kt() {
288
- if (!A || X.value > 0) return;
289
- let e = Pe.value;
290
- if (!e) return;
291
- let t = de(r.event);
292
- if (r.event.hasRecording === !1 || !t) {
293
- L.value = !0;
294
- return;
295
- }
296
- R.value = !0, A.onHoverStart(e, r.event.cameraId, r.event.id, r.event.startTime, t, r.camera?.zones?.privacy, ke(r.event));
297
- }
298
- function qt() {
299
- Ve.blocksMouseEnter() || Kt();
300
- }
301
- function Jt() {
302
- L.value = !1, A && (R.value = !1, A.onHoverEnd());
303
- }
304
- async function Yt(e = 2) {
305
- let t = await r.loadThumbnails(r.event.id, r.event.startTime);
306
- if (t) {
307
- z.value = t;
308
- let e = P(t, r.event, "card");
309
- B.value = e.url ? "loaded" : "empty";
310
- } else if (e > 0) return await new Promise((e) => setTimeout(e, 500)), Yt(e - 1);
311
- else B.value = r.event.state === "active" ? "loading" : "empty";
312
- }
313
- function Xt() {
314
- if (!Ve.consumesClick()) {
315
- if (r.selectionMode) {
316
- i("select");
317
- return;
318
- }
319
- i("scrollToEvent", q.value?.firstSeen ?? Ae(r.event));
320
- }
321
- }
322
- async function Zt(e) {
323
- $(), I.value || (I.value = !0, await h()), F.value?.toggleMenu(e);
324
- }
325
- function Qt() {
326
- let e = Rt.value;
327
- if (!e) return;
328
- let t = !!Z.value?.crop;
329
- x.openComponentDialog(Ue, {
330
- data: {
331
- title: c("views.recordings.reassign_face"),
332
- confirmText: c("components.form.button.save"),
333
- contentProps: {
334
- cropUrl: Z.value?.url,
335
- oldName: e.label
336
- }
337
- },
338
- onConfirm: (n) => $t(e, n, t)
339
- });
340
- }
341
- async function $t(e, t, n) {
342
- if (W.value) return;
343
- let i = v.value;
344
- if (i?.reassignEventFace) {
345
- W.value = !0;
346
- try {
347
- await i.reassignEventFace(r.event.id, e.seg, e.label, t) > 0 && (n && (G.value = {
348
- seg: e.seg,
349
- label: t || "unknown"
350
- }), be(r.event.id)), s.add({
351
- severity: "success",
352
- detail: c("views.recordings.reassign_done"),
353
- life: 3e3
354
- });
355
- } catch (e) {
356
- s.add({
357
- severity: "error",
358
- detail: Oe(e),
359
- life: 5e3
360
- });
361
- } finally {
362
- W.value = !1;
363
- }
364
- }
365
- }
366
- async function en() {
367
- let e = !yt.value;
368
- U.value = e;
369
- try {
370
- await m.setEventFavorite(r.event.id, e);
371
- } catch (e) {
372
- U.value = null, s.add({
373
- severity: "error",
374
- detail: Oe(e),
375
- life: 5e3
376
- });
377
- }
378
- }
379
- async function tn() {
380
- if (V.value) return;
381
- let e = v.value;
382
- if (e?.nvrExport && r.event.endTime) {
383
- V.value = !0;
384
- try {
385
- let t = await e.nvrExport(r.event.cameraId, r.event.startTime * 1e3, r.event.endTime * 1e3);
386
- await ve({
387
- url: t.url,
388
- filename: t.filename
389
- });
390
- } catch (e) {
391
- o.error("Download failed:", e), s.add({
392
- severity: "error",
393
- summary: c("views.recordings.download_failed"),
394
- detail: Oe(e),
395
- life: 5e3
396
- });
397
- } finally {
398
- V.value = !1;
399
- }
400
- }
401
- }
402
- return ee(Y, (e) => {
403
- let t = G.value;
404
- if (!t) return;
405
- let n = e.findIndex((e) => e.crop && e.faceSeg === t.seg && e.label === t.label);
406
- n < 0 || (H.value = n, G.value = void 0);
407
- }), ee(() => m.storeVersion.value, () => {
408
- let e = m.getCachedThumbnails(r.event.id);
409
- if (!e) {
410
- z.value && Yt();
411
- return;
412
- }
413
- z.value = e, P(e, r.event, "card").url && (B.value = "loaded");
414
- }), Ne(ze, (e) => {
415
- let t = e[0]?.contentRect.width ?? 0, n = Math.round(t / gt) * gt;
416
- n !== _t.value && (_t.value = n);
417
- }), re(() => {
418
- te === "loading" && Yt();
419
- }), (t, r) => {
420
- let i = pe, o = ue, s = ie, c = xe, l = je, p = Te, m = Me, h = _e;
421
- return d(), T("div", {
422
- ref_key: "rootRef",
423
- ref: N,
424
- class: "recording-card relative group cursor-pointer",
425
- onClickCapture: Bt,
426
- onClick: Xt,
427
- onMouseenter: qt,
428
- onMouseleave: Jt
429
- }, [k("div", {
430
- class: g(["bg-neutral-900 w-full rounded-xl overflow-hidden relative transition-shadow duration-200", { "ring-2 ring-inset ring-primary/70": e.siblingActive }]),
431
- style: { "aspect-ratio": "1/1" }
432
- }, [
433
- S(B) === "loading" ? (d(), T("div", We)) : S(Et) ? (d(), y(i, {
434
- key: 1,
435
- src: S(Et),
436
- alt: S(Ot),
437
- class: "pointer-events-none w-full h-full transition-transform duration-300 group-hover:scale-105",
438
- "image-style": { objectFit: S(Tt) ? "contain" : "cover" },
439
- "image-container-class": "w-full h-full"
440
- }, null, 8, [
441
- "src",
442
- "alt",
443
- "image-style"
444
- ])) : (d(), T("div", Ge, [(d(), y(_(S(w)[S(Ct)] ?? S(w).motion), { class: "w-10 h-10 text-white/20" }))])),
445
- S(A) ? ne((d(), T("canvas", {
446
- key: 3,
447
- ref_key: "previewCanvasRef",
448
- ref: Pe,
449
- class: "absolute inset-0 w-full h-full object-cover pointer-events-none z-[1]"
450
- }, null, 512)), [[n, S(R)]]) : b("", !0),
451
- r[2] ||= k("div", { class: "absolute inset-0 bg-transparent group-hover:bg-black/30 pointer-events-none transition-colors duration-200 z-[2]" }, null, -1),
452
- k("div", Ke, [k("div", qe, [
453
- k("p", Je, f(S(Ot)), 1),
454
- S(J) ? (d(), T("span", Ye, f(S(J)), 1)) : b("", !0),
455
- S(bt) ? (d(), T("span", {
456
- key: 1,
457
- class: g(["text-[10px] font-bold text-white px-1.5 py-0.5 rounded-md shrink-0", S(bt).color])
458
- }, f(S(bt).label), 3)) : b("", !0),
459
- S(vt) && !e.selectionMode ? (d(), T("button", {
460
- key: 2,
461
- title: S(yt) ? t.$t("views.recordings.unfavorite") : t.$t("views.recordings.favorite"),
462
- type: "button",
463
- class: "card-icon-button w-5 h-5 shrink-0",
464
- onClick: a(en, ["stop"]),
465
- onMouseenter: $
466
- }, [S(yt) ? (d(), y(o, {
467
- key: 0,
468
- class: "w-3 h-3 text-yellow-400"
469
- })) : (d(), y(s, {
470
- key: 1,
471
- class: "w-3 h-3 text-white"
472
- }))], 40, Xe)) : b("", !0),
473
- S(zt).length > 0 && !e.selectionMode ? (d(), T("button", {
474
- key: 3,
475
- title: t.$t("views.recordings.more_actions"),
476
- type: "button",
477
- class: "card-icon-button w-5 h-5 shrink-0",
478
- disabled: S(V) || S(W),
479
- onClick: a(Zt, ["stop"]),
480
- onMouseenter: $
481
- }, [S(V) || S(W) ? (d(), y(c, {
482
- key: 0,
483
- class: "w-3 h-3 text-white"
484
- })) : (d(), y(l, {
485
- key: 1,
486
- class: "w-3 h-3 text-white"
487
- }))], 40, Ze)) : b("", !0)
488
- ]), k("p", Qe, f(S(Ft)), 1)]),
489
- S(Y).length > 1 ? (d(), T(D, { key: 4 }, [k("button", {
490
- type: "button",
491
- class: "card-icon-button carousel-nav absolute left-1 top-1/2 -translate-y-1/2 z-[3] w-7 h-7 transition-opacity duration-200",
492
- "aria-label": t.$t("views.recordings.prev_image"),
493
- onClick: r[0] ||= a((e) => Ut(-1), ["stop"]),
494
- onMouseenter: $
495
- }, [M(p, { class: "w-5 h-5 text-white" })], 40, $e), k("button", {
496
- type: "button",
497
- class: "card-icon-button carousel-nav absolute right-1 top-1/2 -translate-y-1/2 z-[3] w-7 h-7 transition-opacity duration-200",
498
- "aria-label": t.$t("views.recordings.next_image"),
499
- onClick: r[1] ||= a((e) => Ut(1), ["stop"]),
500
- onMouseenter: $
501
- }, [M(m, { class: "w-5 h-5 text-white" })], 40, et)], 64)) : b("", !0),
502
- S(Dt) ? (d(), T("div", {
503
- key: 5,
504
- class: g(["absolute left-1/2 -translate-x-1/2 z-[3] max-w-[85%] pointer-events-none transition-all duration-200", S(Lt) ? "bottom-16" : "bottom-10"])
505
- }, [k("span", tt, f(S(Dt)), 1)], 2)) : b("", !0),
506
- k("div", {
507
- ref_key: "footerRef",
508
- ref: ze,
509
- class: "absolute bottom-2 left-2 right-2 flex items-center justify-between gap-2 z-[3]"
510
- }, [k("div", nt, [
511
- e.selectionMode ? (d(), T("div", {
512
- key: 0,
513
- class: g(["w-6 h-6 rounded-full border-2 flex items-center justify-center transition-colors shrink-0", e.selected ? "bg-primary border-primary" : "bg-black/40 border-white/80"])
514
- }, [e.selected ? (d(), y(h, {
515
- key: 0,
516
- class: "w-4 h-4 text-white"
517
- })) : b("", !0)], 2)) : b("", !0),
518
- (d(!0), T(D, null, u(S(At), (e) => (d(), T("div", {
519
- key: e,
520
- class: "flex items-center justify-center w-5 h-5 rounded-md bg-black/60 shrink-0"
521
- }, [(d(), y(_(S(w)[e] ?? S(w).motion), { class: "w-3 h-3 text-white/80" }))]))), 128)),
522
- S(Mt).length > 0 ? (d(), T("span", {
523
- key: 1,
524
- title: S(Mt).join(", "),
525
- class: "text-[10px] text-white/60 font-medium shrink-0"
526
- }, " +" + f(S(Mt).length), 9, rt)) : b("", !0)
527
- ]), S(Nt).length > 0 || S(Pt) > 0 ? (d(), T("div", it, [(d(!0), T(D, null, u(S(Nt), (e, t) => (d(), T("div", {
528
- key: t,
529
- class: g(["w-7 h-7 rounded overflow-hidden border bg-neutral-800 cursor-pointer", t === S(X) ? "border-primary/80" : "border-white/20"]),
530
- onClick: (e) => Wt(t, e)
531
- }, [k("img", {
532
- src: e.url,
533
- alt: e.type,
534
- decoding: "async",
535
- loading: "lazy",
536
- class: "w-full h-full object-cover"
537
- }, null, 8, ot)], 10, at))), 128)), S(Pt) > 0 ? (d(), T("span", st, "+" + f(S(Pt)), 1)) : b("", !0)])) : b("", !0)], 512),
538
- S(A) && S(R) && S(A).isLoading.value ? (d(), T("div", ct, [M(c, { class: "w-7 h-7 text-white" })])) : b("", !0),
539
- S(Lt) ? (d(), T("div", lt, [k("span", ut, f(S(Lt)), 1)])) : b("", !0)
540
- ], 2), S(I) ? (d(), y(oe, {
541
- key: 0,
542
- ref_key: "cardMenuRef",
543
- ref: F,
544
- items: S(zt),
545
- popover: { pt: { content: { class: "p-0! rounded-xl! overflow-hidden!" } } }
546
- }, null, 8, ["items"])) : b("", !0)], 544);
547
- };
548
- }
549
- }), [["__scopeId", "data-v-9d797f4c"]]), _t = {
550
- name: "VirtualScroller",
551
- components: { SpinnerIcon: ze },
552
- extends: {
553
- name: "BaseVirtualScroller",
554
- extends: i,
555
- provide() {
556
- return {
557
- $pcVirtualScroller: this,
558
- $parentInstance: this
559
- };
560
- },
561
- props: {
562
- id: {
563
- type: String,
564
- default: null
565
- },
566
- style: null,
567
- class: null,
568
- items: {
569
- type: Array,
570
- default: null
571
- },
572
- itemSize: {
573
- type: [Number, Array],
574
- default: 0
575
- },
576
- scrollHeight: null,
577
- scrollWidth: null,
578
- orientation: {
579
- type: String,
580
- default: "vertical"
581
- },
582
- rtl: {
583
- type: Boolean,
584
- default: !1
585
- },
586
- numToleratedItems: {
587
- type: Number,
588
- default: null
589
- },
590
- delay: {
591
- type: Number,
592
- default: 0
593
- },
594
- resizeDelay: {
595
- type: Number,
596
- default: 10
597
- },
598
- lazy: {
599
- type: Boolean,
600
- default: !1
601
- },
602
- disabled: {
603
- type: Boolean,
604
- default: !1
605
- },
606
- loaderDisabled: {
607
- type: Boolean,
608
- default: !1
609
- },
610
- columns: {
611
- type: Array,
612
- default: null
613
- },
614
- loading: {
615
- type: Boolean,
616
- default: !1
617
- },
618
- showSpacer: {
619
- type: Boolean,
620
- default: !0
621
- },
622
- showLoader: {
623
- type: Boolean,
624
- default: !1
625
- },
626
- tabindex: {
627
- type: Number,
628
- default: 0
629
- },
630
- inline: {
631
- type: Boolean,
632
- default: !1
633
- },
634
- step: {
635
- type: Number,
636
- default: 0
637
- },
638
- appendOnly: {
639
- type: Boolean,
640
- default: !1
641
- },
642
- autoSize: {
643
- type: Boolean,
644
- default: !1
645
- },
646
- itemKey: {
647
- type: [String, Function],
648
- default: null
649
- }
650
- },
651
- style: s,
652
- beforeMount() {
653
- s.loadCSS({ nonce: this.$primevueConfig?.csp?.nonce });
654
- }
655
- },
656
- inheritAttrs: !1,
657
- emits: [
658
- "update:numToleratedItems",
659
- "scroll",
660
- "scroll-index-change",
661
- "lazy-load"
662
- ],
663
- data() {
664
- let e = this.isBoth();
665
- return {
666
- first: e ? {
667
- rows: 0,
668
- cols: 0
669
- } : 0,
670
- last: e ? {
671
- rows: 0,
672
- cols: 0
673
- } : 0,
674
- page: e ? {
675
- rows: 0,
676
- cols: 0
677
- } : 0,
678
- numItemsInViewport: e ? {
679
- rows: 0,
680
- cols: 0
681
- } : 0,
682
- lastScrollPos: e ? {
683
- top: 0,
684
- left: 0
685
- } : 0,
686
- d_numToleratedItems: this.numToleratedItems,
687
- d_loading: this.loading,
688
- loaderArr: [],
689
- spacerStyle: {},
690
- contentStyle: {},
691
- observedWidth: 0,
692
- observedHeight: 0
693
- };
694
- },
695
- element: null,
696
- content: null,
697
- lastScrollPos: null,
698
- scrollTimeout: null,
699
- resizeTimeout: null,
700
- defaultWidth: 0,
701
- defaultHeight: 0,
702
- defaultContentWidth: 0,
703
- defaultContentHeight: 0,
704
- isRangeChanged: !1,
705
- lazyLoadState: {},
706
- resizeListener: null,
707
- initialized: !1,
708
- computed: {
709
- containerClass() {
710
- return [
711
- "p-virtualscroller",
712
- this.class,
713
- {
714
- "p-virtualscroller-inline": this.inline,
715
- "p-virtualscroller-both p-both-scroll": this.isBoth(),
716
- "p-virtualscroller-horizontal p-horizontal-scroll": this.isHorizontal(),
717
- "p-virtualscroller-rtl": this.rtl && this.isHorizontal()
718
- }
719
- ];
720
- },
721
- contentClass() {
722
- return ["p-virtualscroller-content", { "p-virtualscroller-loading": this.d_loading }];
723
- },
724
- loaderClass() {
725
- return ["p-virtualscroller-loader", { "p-virtualscroller-loader-mask": !this.$slots.loader }];
726
- },
727
- loadedItems() {
728
- return this.items && !this.d_loading ? this.isBoth() ? this.items.slice(this.appendOnly ? 0 : this.first.rows, this.last.rows).map((e) => this.columns ? e : e.slice(this.appendOnly ? 0 : this.first.cols, this.last.cols)) : this.isHorizontal() && this.columns ? this.items : this.items.slice(this.appendOnly ? 0 : this.first, this.last) : [];
729
- },
730
- loadedRows() {
731
- return this.d_loading ? this.loaderDisabled ? this.loaderArr : [] : this.loadedItems;
732
- },
733
- loadedColumns() {
734
- if (this.columns) {
735
- let e = this.isBoth(), t = this.isHorizontal();
736
- if (e || t) return this.d_loading && this.loaderDisabled ? e ? this.loaderArr[0] : this.loaderArr : this.columns.slice(e ? this.first.cols : this.first, e ? this.last.cols : this.last);
737
- }
738
- return this.columns;
739
- }
740
- },
741
- watch: {
742
- numToleratedItems(e) {
743
- this.d_numToleratedItems = e;
744
- },
745
- loading(e, t) {
746
- this.lazy && e !== t && e !== this.d_loading && (this.d_loading = e);
747
- },
748
- items(e, t) {
749
- (!t || t.length !== (e || []).length) && this.scheduleInit();
750
- },
751
- itemSize() {
752
- this.scheduleInit();
753
- },
754
- orientation() {
755
- this.lastScrollPos = this.isBoth() ? {
756
- top: 0,
757
- left: 0
758
- } : 0;
759
- },
760
- scrollHeight() {
761
- this.scheduleInit();
762
- },
763
- scrollWidth() {
764
- this.scheduleInit();
765
- }
766
- },
767
- mounted() {
768
- this.viewInit(), this.lastScrollPos = this.isBoth() ? {
769
- top: 0,
770
- left: 0
771
- } : 0, this.lazyLoadState = this.lazyLoadState || {};
772
- },
773
- updated() {
774
- !this.initialized && this.viewInit();
775
- },
776
- unmounted() {
777
- this.unbindResizeListener(), this.unbindSizeObserver(), this.initialized = !1;
778
- },
779
- methods: {
780
- resolveItemKey(e, t) {
781
- let n = this.itemKey;
782
- return typeof n == "function" ? n(e, t) ?? t : typeof n == "string" && typeof e == "object" && e ? e[n] ?? t : t;
783
- },
784
- viewInit() {
785
- r(this.element) && (this.setContentEl(this.content), this.bindSizeObserver(), this.init(), this.calculateAutoSize(), this.bindResizeListener(), this.defaultWidth = t(this.element), this.defaultHeight = o(this.element), this.defaultContentWidth = t(this.content), this.defaultContentHeight = o(this.content), this.initialized = !0);
786
- },
787
- init() {
788
- this.disabled || (this.setSize(), this.calculateOptions(), this.setSpacerSize());
789
- },
790
- scheduleInit() {
791
- this._initScheduled || (this._initScheduled = !0, Promise.resolve().then(() => {
792
- this._initScheduled = !1, this.init(), this.calculateAutoSize();
793
- }));
794
- },
795
- isVertical() {
796
- return this.orientation === "vertical";
797
- },
798
- isHorizontal() {
799
- return this.orientation === "horizontal";
800
- },
801
- isBoth() {
802
- return this.orientation === "both";
803
- },
804
- scrollTo(e) {
805
- this.element && this.element.scrollTo(e);
806
- },
807
- scrollToIndex(e, t = "auto") {
808
- let n = this.isBoth(), r = this.isHorizontal(), i = this.rtl && r;
809
- if (n ? e.every((e) => e > -1) : e > -1) {
810
- let a = this.first, { scrollTop: o = 0, scrollLeft: s = 0 } = this.element, { numToleratedItems: c } = this.calculateNumItems(), l = this.getContentPosition(), u = this.itemSize, d = (e = 0, t) => e <= t ? 0 : e, f = (e, t, n) => e * t + n, p = (e = 0, n = 0) => {
811
- i && (e = this.element.scrollWidth - this.element.clientWidth - e), this.scrollTo({
812
- left: e,
813
- top: n,
814
- behavior: t
815
- });
816
- }, m = n ? {
817
- rows: 0,
818
- cols: 0
819
- } : 0, h = !1, g = !1;
820
- n ? (m = {
821
- rows: d(e[0], c[0]),
822
- cols: d(e[1], c[1])
823
- }, p(f(m.cols, u[1], l.left), f(m.rows, u[0], l.top)), g = this.lastScrollPos.top !== o || this.lastScrollPos.left !== s, h = m.rows !== a.rows || m.cols !== a.cols) : (m = d(e, c), r ? p(f(m, u, l.left), o) : p(s, f(m, u, l.top)), g = this.lastScrollPos !== (r ? s : o), h = m !== a), this.isRangeChanged = h, g && (this.first = m);
824
- }
825
- },
826
- scrollInView(e, t, n = "auto") {
827
- if (t) {
828
- let r = this.isBoth(), i = this.isHorizontal();
829
- if (r ? e.every((e) => e > -1) : e > -1) {
830
- let { first: a, viewport: o } = this.getRenderedRange(), s = (e = 0, t = 0) => this.scrollTo({
831
- left: e,
832
- top: t,
833
- behavior: n
834
- }), c = t === "to-start", l = t === "to-end";
835
- if (c) {
836
- if (r) o.first.rows - a.rows > e[0] ? s(o.first.cols * this.itemSize[1], (o.first.rows - 1) * this.itemSize[0]) : o.first.cols - a.cols > e[1] && s((o.first.cols - 1) * this.itemSize[1], o.first.rows * this.itemSize[0]);
837
- else if (o.first - a > e) {
838
- let e = (o.first - 1) * this.itemSize;
839
- i ? s(e, 0) : s(0, e);
840
- }
841
- } else if (l) {
842
- if (r) o.last.rows - a.rows <= e[0] + 1 ? s(o.first.cols * this.itemSize[1], (o.first.rows + 1) * this.itemSize[0]) : o.last.cols - a.cols <= e[1] + 1 && s((o.first.cols + 1) * this.itemSize[1], o.first.rows * this.itemSize[0]);
843
- else if (o.last - a <= e + 1) {
844
- let e = (o.first + 1) * this.itemSize;
845
- i ? s(e, 0) : s(0, e);
846
- }
847
- }
848
- }
849
- } else this.scrollToIndex(e, n);
850
- },
851
- getRenderedRange() {
852
- let e = (e, t) => Math.floor(e / (t || e)), t = this.first, n = 0;
853
- if (this.element) {
854
- let r = this.isBoth(), i = this.isHorizontal(), { scrollTop: a, scrollLeft: o } = this.element;
855
- r ? (t = {
856
- rows: e(a, this.itemSize[0]),
857
- cols: e(o, this.itemSize[1])
858
- }, n = {
859
- rows: t.rows + this.numItemsInViewport.rows,
860
- cols: t.cols + this.numItemsInViewport.cols
861
- }) : (t = e(i ? o : a, this.itemSize), n = t + this.numItemsInViewport);
862
- }
863
- return {
864
- first: this.first,
865
- last: this.last,
866
- viewport: {
867
- first: t,
868
- last: n
869
- }
870
- };
871
- },
872
- calculateNumItems() {
873
- let e = this.isBoth(), t = this.isHorizontal(), n = this.itemSize, r = this.getContentPosition(), i = this.observedWidth || (this.element ? this.element.offsetWidth : 0), a = this.observedHeight || (this.element ? this.element.offsetHeight : 0), o = i ? i - r.left : 0, s = a ? a - r.top : 0, c = (e, t) => Math.ceil(e / (t || e)), l = (e) => Math.ceil(e / 2), u = e ? {
874
- rows: c(s, n[0]),
875
- cols: c(o, n[1])
876
- } : c(t ? o : s, n);
877
- return {
878
- numItemsInViewport: u,
879
- numToleratedItems: this.d_numToleratedItems || (e ? [l(u.rows), l(u.cols)] : l(u))
880
- };
881
- },
882
- calculateOptions() {
883
- let e = this.isBoth(), t = this.first, { numItemsInViewport: n, numToleratedItems: r } = this.calculateNumItems(), i = (e, t, n, r = !1) => this.getLast(e + t + (e < n ? 2 : 3) * n, r), a = e ? {
884
- rows: i(t.rows, n.rows, r[0]),
885
- cols: i(t.cols, n.cols, r[1], !0)
886
- } : i(t, n, r);
887
- this.last = a, this.numItemsInViewport = n, this.d_numToleratedItems = r, this.$emit("update:numToleratedItems", this.d_numToleratedItems), this.showLoader && (this.loaderArr = e ? Array.from({ length: n.rows }).map(() => Array.from({ length: n.cols })) : Array.from({ length: n })), this.lazy && Promise.resolve().then(() => {
888
- this.lazyLoadState = {
889
- first: this.step ? e ? {
890
- rows: 0,
891
- cols: t.cols
892
- } : 0 : t,
893
- last: Math.min(this.step ? this.step : a, this.items?.length - 1 || 0)
894
- }, this.$emit("lazy-load", this.lazyLoadState);
895
- });
896
- },
897
- calculateAutoSize() {
898
- this.autoSize && !this.d_loading && Promise.resolve().then(() => {
899
- if (this.content) {
900
- let e = this.isBoth(), n = this.isHorizontal(), r = this.isVertical();
901
- this.content.style.minHeight = this.content.style.minWidth = "auto", this.content.style.position = "relative", this.element.style.contain = "none";
902
- let [i, a] = [t(this.element), o(this.element)];
903
- (e || n) && (this.element.style.width = i < this.defaultWidth ? i + "px" : this.scrollWidth || this.defaultWidth + "px"), (e || r) && (this.element.style.height = a < this.defaultHeight ? a + "px" : this.scrollHeight || this.defaultHeight + "px"), this.content.style.minHeight = this.content.style.minWidth = "", this.content.style.position = "", this.element.style.contain = "";
904
- }
905
- });
906
- },
907
- getLast(e = 0, t) {
908
- return this.items ? Math.min(t ? (this.columns || this.items[0])?.length || 0 : this.items?.length || 0, e) : 0;
909
- },
910
- getContentPosition() {
911
- if (this.content) {
912
- if (this.cachedContentPosition && this.cachedContentElement === this.content) return this.cachedContentPosition;
913
- let e = getComputedStyle(this.content), t = parseFloat(e.paddingLeft) + Math.max(parseFloat(e.left) || 0, 0), n = parseFloat(e.paddingRight) + Math.max(parseFloat(e.right) || 0, 0), r = parseFloat(e.paddingTop) + Math.max(parseFloat(e.top) || 0, 0), i = parseFloat(e.paddingBottom) + Math.max(parseFloat(e.bottom) || 0, 0);
914
- return this.cachedContentElement = this.content, this.cachedContentPosition = {
915
- left: t,
916
- right: n,
917
- top: r,
918
- bottom: i,
919
- x: t + n,
920
- y: r + i
921
- }, this.cachedContentPosition;
922
- }
923
- return {
924
- left: 0,
925
- right: 0,
926
- top: 0,
927
- bottom: 0,
928
- x: 0,
929
- y: 0
930
- };
931
- },
932
- setSize() {
933
- if (this.element) {
934
- let e = this.isBoth(), t = this.isHorizontal(), n = this.element.parentElement, r = this.scrollWidth || `${this.element.offsetWidth || n.offsetWidth}px`, i = this.scrollHeight || `${this.element.offsetHeight || n.offsetHeight}px`, a = (e, t) => this.element.style[e] = t;
935
- e || t ? (a("height", i), a("width", r)) : a("height", i);
936
- }
937
- },
938
- setSpacerSize() {
939
- let e = this.items;
940
- if (e) {
941
- let t = this.isBoth(), n = this.isHorizontal(), r = this.getContentPosition(), i = (e, t, n, r = 0) => this.spacerStyle = {
942
- ...this.spacerStyle,
943
- [`${e}`]: (t || []).length * n + r + "px"
944
- };
945
- t ? (i("height", e, this.itemSize[0], r.y), i("width", this.columns || e[1], this.itemSize[1], r.x)) : n ? i("width", this.columns || e, this.itemSize, r.x) : i("height", e, this.itemSize, r.y);
946
- }
947
- },
948
- setContentPosition(e) {
949
- if (this.content && !this.appendOnly) {
950
- let t = this.isBoth(), n = this.isHorizontal(), r = this.rtl && n, i = e ? e.first : this.first, a = (e, t) => e * t, o = (e = 0, t = 0) => {
951
- let n = r ? -e : e;
952
- this.contentStyle = {
953
- ...this.contentStyle,
954
- transform: `translate3d(${n}px, ${t}px, 0)`
955
- };
956
- };
957
- if (t) {
958
- let e = i.rows, t = i.cols, n = this.itemSize;
959
- o(a(t, n[1]), a(e, n[0]));
960
- } else {
961
- let e = i, t = this.itemSize, r = a(e, t);
962
- n ? o(r, 0) : o(0, r);
963
- }
964
- }
965
- },
966
- onScrollPositionChange(e) {
967
- let t = e.target, n = this.isBoth(), r = this.isHorizontal(), i = this.rtl && r, a = this.getContentPosition(), o = (e, t) => e ? e > t ? e - t : e : 0, s = (e, t) => Math.floor(e / (t || e)), c = o(t.scrollTop, a.top), l = o(t.scrollLeft, a.left);
968
- i && l < 0 && (l = Math.abs(l));
969
- let u = n ? {
970
- rows: 0,
971
- cols: 0
972
- } : 0, d = this.last, f = !1, p = this.lastScrollPos;
973
- if (n) {
974
- let e = this.lastScrollPos.top <= c, n = this.lastScrollPos.left <= l;
975
- if (!this.appendOnly || this.appendOnly && (e || n)) {
976
- let r = {
977
- rows: s(c, this.itemSize[0]),
978
- cols: s(l, this.itemSize[1])
979
- }, i = {
980
- rows: this.calculateTriggerIndex(r.rows, this.first.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0], e),
981
- cols: this.calculateTriggerIndex(r.cols, this.first.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], n)
982
- };
983
- u = {
984
- rows: this.calculateFirst(r.rows, i.rows, this.first.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0], e),
985
- cols: this.calculateFirst(r.cols, i.cols, this.first.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], n, !0)
986
- }, d = {
987
- rows: this.calculateLast(r.rows, u.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0]),
988
- cols: this.calculateLast(r.cols, u.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], !0)
989
- }, f = u.rows !== this.first.rows || d.rows !== this.last.rows || u.cols !== this.first.cols || d.cols !== this.last.cols || this.isRangeChanged, p = {
990
- top: c,
991
- left: t.scrollLeft
992
- };
993
- }
994
- } else {
995
- let e = r ? l : c, t = this.lastScrollPos <= e;
996
- if (!this.appendOnly || this.appendOnly && t) {
997
- let n = s(e, this.itemSize), r = this.calculateTriggerIndex(n, this.first, this.last, this.numItemsInViewport, this.d_numToleratedItems, t);
998
- u = this.calculateFirst(n, r, this.first, this.last, this.numItemsInViewport, this.d_numToleratedItems, t), d = this.calculateLast(n, u, this.last, this.numItemsInViewport, this.d_numToleratedItems), f = u !== this.first || d !== this.last || this.isRangeChanged, p = e;
999
- }
1000
- }
1001
- return {
1002
- first: u,
1003
- last: d,
1004
- isRangeChanged: f,
1005
- scrollPos: p
1006
- };
1007
- },
1008
- calculateTriggerIndex(e, t, n, r, i, a) {
1009
- return e <= i ? i : a ? n - r - i : t + i - 1;
1010
- },
1011
- calculateFirst(e, t, n, r, i, a, o, s = !1) {
1012
- if (e <= a) return 0;
1013
- let c = Math.max(0, o ? e < t ? n : e - a : e > t ? n : e - 2 * a), l = this.getLast(c, s);
1014
- return c > l ? l - i : c;
1015
- },
1016
- calculateLast(e, t, n, r, i, a = !1) {
1017
- let o = t + r + 2 * i;
1018
- return e >= i && (o += i + 1), this.getLast(o, a);
1019
- },
1020
- onScrollChange(e) {
1021
- let { first: t, last: n, isRangeChanged: r, scrollPos: i } = this.onScrollPositionChange(e);
1022
- if (r) {
1023
- let e = {
1024
- first: t,
1025
- last: n
1026
- };
1027
- if (this.setContentPosition(e), this.first = t, this.last = n, this.lastScrollPos = i, this.$emit("scroll-index-change", e), this.lazy && this.isPageChanged(t)) {
1028
- let e = {
1029
- first: this.step ? Math.min(this.getPageByFirst(t) * this.step, (this.items?.length || 0) - this.step) : t,
1030
- last: Math.min(this.step ? (this.getPageByFirst(t) + 1) * this.step : n, this.items?.length - 1 || 0)
1031
- };
1032
- (this.lazyLoadState.first !== e.first || this.lazyLoadState.last !== e.last) && this.$emit("lazy-load", e), this.lazyLoadState = e;
1033
- }
1034
- }
1035
- },
1036
- onScroll(e) {
1037
- if (this.$emit("scroll", e), this.delay) {
1038
- if (this.scrollTimeout && clearTimeout(this.scrollTimeout), this.isPageChanged()) {
1039
- if (!this.d_loading && this.showLoader) {
1040
- let { isRangeChanged: t } = this.onScrollPositionChange(e);
1041
- (t || this.step && this.isPageChanged()) && (this.d_loading = !0);
1042
- }
1043
- this.scrollTimeout = setTimeout(() => {
1044
- this.onScrollChange(e), this.d_loading && this.showLoader && (!this.lazy || this.loading === void 0) && (this.d_loading = !1, this.page = this.getPageByFirst());
1045
- }, this.delay);
1046
- }
1047
- } else this.onScrollChange(e);
1048
- },
1049
- onResize() {
1050
- this.resizeTimeout && clearTimeout(this.resizeTimeout), this.resizeTimeout = setTimeout(() => {
1051
- if (r(this.element)) {
1052
- let e = this.isBoth(), n = this.isVertical(), r = this.isHorizontal(), [i, a] = [t(this.element), o(this.element)], [s, c] = [i !== this.defaultWidth, a !== this.defaultHeight];
1053
- (e ? s || c : r ? s : n && c) && (this.d_numToleratedItems = this.numToleratedItems, this.defaultWidth = i, this.defaultHeight = a, this.defaultContentWidth = t(this.content), this.defaultContentHeight = o(this.content), this.init());
1054
- }
1055
- }, this.resizeDelay);
1056
- },
1057
- bindResizeListener() {
1058
- this.resizeListener || (this.resizeListener = this.onResize.bind(this), window.addEventListener("resize", this.resizeListener), window.addEventListener("orientationchange", this.resizeListener));
1059
- },
1060
- bindSizeObserver() {
1061
- this.sizeObserver || !this.element || typeof ResizeObserver > "u" || (this.sizeObserver = new ResizeObserver((e) => {
1062
- let t = e[0]?.borderBoxSize?.[0];
1063
- this.observedWidth = t ? t.inlineSize : e[0]?.contentRect.width ?? 0, this.observedHeight = t ? t.blockSize : e[0]?.contentRect.height ?? 0;
1064
- }), this.sizeObserver.observe(this.element));
1065
- },
1066
- unbindSizeObserver() {
1067
- this.sizeObserver &&= (this.sizeObserver.disconnect(), null);
1068
- },
1069
- unbindResizeListener() {
1070
- this.resizeListener &&= (window.removeEventListener("resize", this.resizeListener), window.removeEventListener("orientationchange", this.resizeListener), null);
1071
- },
1072
- getOptions(e) {
1073
- let t = (this.items || []).length, n = this.isBoth() ? this.first.rows + e : this.first + e;
1074
- return {
1075
- index: n,
1076
- count: t,
1077
- first: n === 0,
1078
- last: n === t - 1,
1079
- even: n % 2 == 0,
1080
- odd: n % 2 != 0
1081
- };
1082
- },
1083
- getLoaderOptions(e, t) {
1084
- let n = this.loaderArr.length;
1085
- return {
1086
- index: e,
1087
- count: n,
1088
- first: e === 0,
1089
- last: e === n - 1,
1090
- even: e % 2 == 0,
1091
- odd: e % 2 != 0,
1092
- ...t
1093
- };
1094
- },
1095
- getPageByFirst(e) {
1096
- return Math.floor(((e ?? this.first) + this.d_numToleratedItems * 4) / (this.step || 1));
1097
- },
1098
- isPageChanged(e) {
1099
- return this.step && !this.lazy ? this.page !== this.getPageByFirst(e ?? this.first) : !0;
1100
- },
1101
- setContentEl(t) {
1102
- this.content = t || this.content || e(this.element, "[data-pc-section=\"content\"]");
1103
- },
1104
- elementRef(e) {
1105
- this.element = e;
1106
- },
1107
- contentRef(e) {
1108
- this.content = e;
1109
- }
1110
- }
1111
- }, vt = ["tabindex"];
1112
- function yt(e, t, n, r, i, a) {
1113
- let o = E("SpinnerIcon");
1114
- return e.disabled ? (d(), T(D, { key: 1 }, [p(e.$slots, "default"), p(e.$slots, "content", {
1115
- items: e.items,
1116
- rows: e.items,
1117
- columns: a.loadedColumns
1118
- })], 64)) : (d(), T("div", m({
1119
- key: 0,
1120
- ref: a.elementRef,
1121
- class: a.containerClass,
1122
- tabindex: e.tabindex,
1123
- style: e.style
1124
- }, e.ptmi("root"), { onScroll: t[0] ||= (...e) => a.onScroll && a.onScroll(...e) }), [
1125
- p(e.$slots, "content", {
1126
- styleClass: a.contentClass,
1127
- items: a.loadedItems,
1128
- getItemOptions: a.getOptions,
1129
- loading: i.d_loading,
1130
- getLoaderOptions: a.getLoaderOptions,
1131
- itemSize: e.itemSize,
1132
- rows: a.loadedRows,
1133
- columns: a.loadedColumns,
1134
- contentRef: a.contentRef,
1135
- spacerStyle: i.spacerStyle,
1136
- contentStyle: i.contentStyle,
1137
- vertical: a.isVertical(),
1138
- horizontal: a.isHorizontal(),
1139
- both: a.isBoth()
1140
- }, () => [k("div", m({
1141
- ref: a.contentRef,
1142
- class: a.contentClass,
1143
- style: i.contentStyle
1144
- }, e.ptm("content")), [(d(!0), T(D, null, u(a.loadedItems, (t, n) => p(e.$slots, "item", {
1145
- item: t,
1146
- options: a.getOptions(n)
1147
- }, void 0, void 0, a.resolveItemKey(t, n))), 128))], 16)]),
1148
- e.showSpacer ? (d(), T("div", m({
1149
- key: 0,
1150
- class: "p-virtualscroller-spacer",
1151
- style: i.spacerStyle
1152
- }, e.ptm("spacer")), null, 16)) : b("", !0),
1153
- !e.loaderDisabled && e.showLoader && i.d_loading ? (d(), T("div", m({
1154
- key: 1,
1155
- class: a.loaderClass
1156
- }, e.ptm("loader")), [e.$slots && e.$slots.loader ? (d(!0), T(D, { key: 0 }, u(i.loaderArr, (t, n) => p(e.$slots, "loader", { options: a.getLoaderOptions(n, a.isBoth() && { numCols: e.d_numItemsInViewport.cols }) }, void 0, void 0, n)), 128)) : b("", !0), p(e.$slots, "loadingicon", {}, () => [M(o, m({
1157
- spin: "",
1158
- class: "p-virtualscroller-loading-icon"
1159
- }, e.ptm("loadingIcon")), null, 16)])], 16)) : b("", !0)
1160
- ], 16, vt));
1161
- }
1162
- var bt = /*#__PURE__*/ N(_t, [["render", yt]]), K = {
1163
- aspectRatio: 1,
1164
- gap: 8,
1165
- hasMore: !1,
1166
- loadMore: void 0,
1167
- itemKey: void 0
1168
- }, q = { class: "recordings-row" }, xt = {
1169
- key: 1,
1170
- class: "pointer-events-none absolute bottom-2 left-1/2 -translate-x-1/2 z-10 rounded-full bg-black/60 p-1.5"
1171
- }, St = /*#__PURE__*/ N(/* @__PURE__ */ A({
1172
- __name: "CuiRecordingsGrid",
1173
- props: /*@__PURE__*/ c({
1174
- items: {},
1175
- minItemWidth: {},
1176
- aspectRatio: {},
1177
- gap: {},
1178
- hasMore: { type: Boolean },
1179
- loadMore: { type: Function },
1180
- itemKey: { type: Function }
1181
- }, K),
1182
- setup(e, { expose: t }) {
1183
- let n = e, r = O("containerRef"), { width: i, height: a } = Pe(r), o = j(0), s = j(!1), c = null, l = !1, f = C(() => a.value > 0 ? `${a.value}px` : void 0), m = C(() => {
1184
- let e = i.value;
1185
- return e ? Math.max(1, Math.floor((e + n.gap) / (n.minItemWidth + n.gap))) : 0;
1186
- }), g = C(() => {
1187
- let e = i.value, t = m.value;
1188
- return !e || !t ? 0 : Math.floor((e - (t - 1) * n.gap) / t);
1189
- }), _ = C(() => g.value ? Math.floor(g.value / n.aspectRatio) : 0), v = C(() => _.value ? _.value + n.gap : 0), x = C(() => {
1190
- let e = m.value;
1191
- if (!e) return [];
1192
- let t = [];
1193
- for (let r = 0; r < n.items.length; r += e) t.push(n.items.slice(r, r + e));
1194
- return t;
1195
- });
1196
- function E(e) {
1197
- if (n.itemKey) return n.itemKey(e);
1198
- let t = e;
1199
- return t.id ?? t.key ?? JSON.stringify(e);
1200
- }
1201
- function ne(e) {
1202
- let t = e;
1203
- if (t && t.length !== 0) return E(t[0]);
1204
- }
1205
- async function A() {
1206
- if (s.value || !n.hasMore || !n.loadMore || c !== null && n.items.length === c) return;
1207
- s.value = !0;
1208
- let e = n.items.length;
1209
- try {
1210
- await Promise.resolve(n.loadMore());
1211
- } finally {
1212
- s.value = !1, c = n.items.length === e ? e : null;
1213
- }
1214
- }
1215
- function re(e) {
1216
- let t = e.target;
1217
- t && (o.value = t.scrollTop, t.scrollTop + t.clientHeight >= t.scrollHeight - v.value * 3 && A());
1218
- }
1219
- function ie() {
1220
- (r.value?.querySelector(".recordings-scroll"))?.scrollTo({
1221
- top: 0,
1222
- behavior: "smooth"
1223
- });
1224
- }
1225
- return te(() => {
1226
- let e = r.value;
1227
- e && g.value && (e.style.setProperty("--cell-w", `${g.value}px`), e.style.setProperty("--cell-h", `${_.value}px`), e.style.setProperty("--cell-gap", `${n.gap}px`));
1228
- }), ee([
1229
- () => n.items.length,
1230
- a,
1231
- v,
1232
- () => n.hasMore
1233
- ], () => {
1234
- l || (l = !0, h(() => {
1235
- l = !1, n.hasMore && v.value && a.value && x.value.length * v.value < a.value + v.value && A();
1236
- }));
1237
- }, { flush: "post" }), t({
1238
- scrollToTop: ie,
1239
- scrollY: o
1240
- }), (e, t) => {
1241
- let n = bt, i = xe;
1242
- return d(), T("div", {
1243
- ref_key: "containerRef",
1244
- ref: r,
1245
- class: "recordings-grid-root relative"
1246
- }, [S(x).length > 0 && S(g) > 0 ? (d(), y(n, {
1247
- key: 0,
1248
- items: S(x),
1249
- "item-size": S(v),
1250
- "scroll-height": S(f),
1251
- "num-tolerated-items": S(2),
1252
- "item-key": ne,
1253
- orientation: "vertical",
1254
- class: "recordings-scroll",
1255
- onScroll: re
1256
- }, {
1257
- item: w(({ item: t }) => [k("div", q, [(d(!0), T(D, null, u(t, (t) => (d(), T("div", {
1258
- key: E(t),
1259
- class: "recordings-cell"
1260
- }, [p(e.$slots, "item", { item: t }, void 0, !0)]))), 128))])]),
1261
- _: 3
1262
- }, 8, [
1263
- "items",
1264
- "item-size",
1265
- "scroll-height",
1266
- "num-tolerated-items"
1267
- ])) : b("", !0), S(s) ? (d(), T("div", xt, [M(i, {
1268
- width: "18px",
1269
- height: "18px",
1270
- class: "text-white"
1271
- })])) : b("", !0)], 512);
1272
- };
1273
- }
1274
- }), [["__scopeId", "data-v-a672f3ff"]]);
1275
- //#endregion
1276
- //#region src/components/CuiRecordings/ungrouped.ts
1277
- function Ct(e) {
1278
- if (e.episode) return e.episode.endTime;
1279
- if (e.segIndex !== void 0) {
1280
- let t = e.event.segments?.[e.segIndex];
1281
- if (t) return t.firstSeen;
1282
- }
1283
- return e.event.thumbnailAt ?? e.event.startTime;
1284
- }
1285
- function J(e, t) {
1286
- return Ct(t) - Ct(e);
1287
- }
1288
- function Y(e, t = !1) {
1289
- let n = [];
1290
- for (let t of e) {
1291
- let e = t.segments ?? [];
1292
- if (e.length <= 1) {
1293
- n.push({
1294
- event: t,
1295
- key: t.id
1296
- });
1297
- continue;
1298
- }
1299
- let r = [];
1300
- e.forEach((e, n) => {
1301
- e && r.push({
1302
- event: t,
1303
- key: `${t.id}:seg:${n}`,
1304
- segIndex: n
1305
- });
1306
- }), n.push(...r.sort(J));
1307
- }
1308
- return t ? n : n.sort(J);
1309
- }
1310
- //#endregion
1311
- export { G as i, J as n, St as r, Y as t };