@camera.ui/server 2.1.14 → 2.1.16

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 (407) hide show
  1. package/dist/interface/assets/{404-DRo8zW0F.js → 404-CqZDSHs_.js} +1 -1
  2. package/dist/interface/assets/{About-DMjE0Qte.js → About-Dk4SUTxo.js} +1 -1
  3. package/dist/interface/assets/Automation-CDvt2MXN.js +3 -0
  4. package/dist/interface/assets/AutomationImport-DDywNuRK.js +2 -0
  5. package/dist/interface/assets/AutomationStore-o0JYwGRr.js +2 -0
  6. package/dist/interface/assets/AutomationStoreDetail-DeAGahaF.js +2 -0
  7. package/dist/interface/assets/Automations-2K-7hZfK.js +2 -0
  8. package/dist/interface/assets/Camera-B72IU-UF.js +2 -0
  9. package/dist/interface/assets/Camera-Cm9I0H6c.css +1 -0
  10. package/dist/interface/assets/{CameraConsole-CP_kwVq7.js → CameraConsole-32WtMX1a.js} +1 -1
  11. package/dist/interface/assets/{Cameras-Bp6P5eQC.js → Cameras-zffI0fD9.js} +2 -2
  12. package/dist/interface/assets/Camview-CZct5cnP.css +1 -0
  13. package/dist/interface/assets/Camview-KzzN0Q1w.js +1 -0
  14. package/dist/interface/assets/{CertificateUpload-CA2PrWb3.js → CertificateUpload-Dg0V9Hei.js} +1 -1
  15. package/dist/interface/assets/Config-CKrqFe-g.js +2 -0
  16. package/dist/interface/assets/{ConfigActionCameraControl-BODp6yd4.js → ConfigActionCameraControl-sbvBJQr3.js} +1 -1
  17. package/dist/interface/assets/{ConfigActionDelay-ChQOPeXL.js → ConfigActionDelay-CiPxydTn.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionHttp-BVeQKfLN.js → ConfigActionHttp-UqiZm0kq.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionImageInput-B99__kdP.js → ConfigActionImageInput-DkGVZ-ti.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionMqtt-D595Lo5y.js → ConfigActionMqtt-DQu5H4bY.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionNotification-DxzLPmUf.js → ConfigActionNotification-C2uXIMpm.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionNotificationControl-Bp4yWebz.js → ConfigActionNotificationControl-B_EpM5m9.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionOutput-Di3KaQ_P.js → ConfigActionOutput-DeOsk0T1.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionPlugin-B7vbDV9n.js → ConfigActionPlugin-CSZHcNQ6.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionSensor-Qj0c8MZq.js → ConfigActionSensor-Dx7DcDVr.js} +1 -1
  26. package/dist/interface/assets/{ConfigActionSnapshot-159QrEMJ.js → ConfigActionSnapshot-Baj-r4Cd.js} +1 -1
  27. package/dist/interface/assets/{ConfigActionVariable-Bodvejrx.js → ConfigActionVariable-Ccu___aS.js} +1 -1
  28. package/dist/interface/assets/{ConfigConditionIfElse-BMI_mgi3.js → ConfigConditionIfElse-0hU7UW8q.js} +1 -1
  29. package/dist/interface/assets/{ConfigConditionSensorState-DkwjHr31.js → ConfigConditionSensorState-BX19KYLJ.js} +1 -1
  30. package/dist/interface/assets/{ConfigConditionSwitch-ZlqOfRQE.js → ConfigConditionSwitch-D-XUhwcE.js} +1 -1
  31. package/dist/interface/assets/{ConfigConditionTime-B2igg9Tb.js → ConfigConditionTime-B6OO8cmh.js} +1 -1
  32. package/dist/interface/assets/{ConfigSensorValueInput-DMnkNDC_.js → ConfigSensorValueInput-DZHYQez8.js} +1 -1
  33. package/dist/interface/assets/{ConfigTriggerDetection-C_ujxraC.js → ConfigTriggerDetection-BNyR5aOG.js} +1 -1
  34. package/dist/interface/assets/ConfigTriggerGeofence-Cuq1SnOZ.js +1 -0
  35. package/dist/interface/assets/{ConfigTriggerManual-BVIiZfOj.js → ConfigTriggerManual-DFSTAuUt.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerMqtt-B7Tf1jOh.js → ConfigTriggerMqtt-D_O8RyrQ.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerSchedule-CcvA02N3.js → ConfigTriggerSchedule-BFZnBfCM.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerSensor-CHCDeFmR.js → ConfigTriggerSensor-D1Tst2wQ.js} +1 -1
  39. package/dist/interface/assets/{ConfigTriggerSystem-0SeQnHSX.js → ConfigTriggerSystem-BNfatCp8.js} +1 -1
  40. package/dist/interface/assets/{ConfigTriggerWebhook-t0tFjZ7V.js → ConfigTriggerWebhook--nEO_Odl.js} +1 -1
  41. package/dist/interface/assets/{Console-B3xhLOhl.js → Console-DkylrXI4.js} +1 -1
  42. package/dist/interface/assets/{CuiAutomationRunsDialog-hZJsv95Y.js → CuiAutomationRunsDialog-CkMRT1C8.js} +1 -1
  43. package/dist/interface/assets/CuiBottomSheet-DILQuWKb.js +1 -0
  44. package/dist/interface/assets/CuiBottomSheet-_KXSb13N.css +1 -0
  45. package/dist/interface/assets/CuiBottomSheet-mKu68LHd.js +1 -0
  46. package/dist/interface/assets/CuiCameraPipCard-Djp8qBvZ.js +1 -0
  47. package/dist/interface/assets/CuiCameraRecordings-Bi0I7jeO.js +1 -0
  48. package/dist/interface/assets/CuiCameraShares-B73pWIFh.js +1 -0
  49. package/dist/interface/assets/CuiCameraTable-CUdAnRJP.js +1 -0
  50. package/dist/interface/assets/{CuiCameraTable-CkAeMqcZ.js → CuiCameraTable-DripFD6D.js} +1 -1
  51. package/dist/interface/assets/{CuiChartTable-CZXvn_Iy.js → CuiChartTable-DyyQV7mt.js} +1 -1
  52. package/dist/interface/assets/{CuiConsole-CW8Q43cq.js → CuiConsole-UxJwQqNG.js} +2 -2
  53. package/dist/interface/assets/{CuiDataTable-cN03N7lr.js → CuiDataTable-DZm0I8k7.js} +1 -1
  54. package/dist/interface/assets/CuiLightControl-CB3l0ZLj.js +1 -0
  55. package/dist/interface/assets/{CuiList-BI488Ne9.js → CuiList-DMQgYqaU.js} +1 -1
  56. package/dist/interface/assets/CuiPluginCard-HpQMNND1.js +2 -0
  57. package/dist/interface/assets/{CuiPluginCategoryChip-5YBKOVmo.js → CuiPluginCategoryChip-C6aEP-ug.js} +1 -1
  58. package/dist/interface/assets/CuiPluginOAuthButton-DpGacvsa.js +2 -0
  59. package/dist/interface/assets/{CuiPluginTrustBadge-BFpziu4f.js → CuiPluginTrustBadge-Dl1PEsm6.js} +1 -1
  60. package/dist/interface/assets/CuiQRCode-D04Onyhk.js +1 -0
  61. package/dist/interface/assets/CuiRecordingsGrid-BhATIjIf.css +1 -0
  62. package/dist/interface/assets/CuiRecordingsGrid-BzyJWpFt.js +1 -0
  63. package/dist/interface/assets/CuiSchema-thjfmEWw.js +1 -0
  64. package/dist/interface/assets/{CuiTopNavbarItem-CJqOqVMt.css → CuiTopNavbarItem-7673AFGS.css} +1 -1
  65. package/dist/interface/assets/CuiTopNavbarItem-qPj6XwXr.js +1 -0
  66. package/dist/interface/assets/Faces-DRWIPDfH.js +1 -0
  67. package/dist/interface/assets/FirstSteps-C6GVpZVr.js +1 -0
  68. package/dist/interface/assets/{Floorplan-Bxhdg4C2.css → Floorplan-B1lItPnM.css} +1 -1
  69. package/dist/interface/assets/Floorplan-Q-UYDnrE.js +1 -0
  70. package/dist/interface/assets/Instances-VC4-anOF.js +1 -0
  71. package/dist/interface/assets/{Logs-Bjyi3BKP.js → Logs-DROgZxLH.js} +2 -2
  72. package/dist/interface/assets/{Menu-BQDo_rxR.js → Menu-CmTk2or7.js} +1 -1
  73. package/dist/interface/assets/Metrics-CYZF-em9.js +9 -0
  74. package/dist/interface/assets/{OAuthDeviceFlow-C-a76FaQ.js → OAuthDeviceFlow-BrdiDoCh.js} +1 -1
  75. package/dist/interface/assets/Plugin-DuPHiiYJ.js +1 -0
  76. package/dist/interface/assets/{PluginConsole-B5A04A2x.js → PluginConsole-CxiW1w6K.js} +1 -1
  77. package/dist/interface/assets/PluginDetail-DWP7_hNa.js +2 -0
  78. package/dist/interface/assets/{PluginSchema-BJEOq6im.js → PluginSchema-BgVZ_4if.js} +1 -1
  79. package/dist/interface/assets/PluginSearch-1djFQUjL.js +1 -0
  80. package/dist/interface/assets/PluginSearch-Ba-hQHxm.js +2 -0
  81. package/dist/interface/assets/{PluginUpdateProgress-BZ-OtZet.js → PluginUpdateProgress-DEcle8-x.js} +1 -1
  82. package/dist/interface/assets/Plugins-BZ3U4pcG.js +1 -0
  83. package/dist/interface/assets/Recordings-CI5MIFR-.js +1 -0
  84. package/dist/interface/assets/Recordings-CfSTX_Mw.css +1 -0
  85. package/dist/interface/assets/{SensorEdit-CQagiAww.js → SensorEdit-B6s-VZ3F.js} +1 -1
  86. package/dist/interface/assets/{SensorHistory-DIMTRYRa.js → SensorHistory-H03yZia0.js} +1 -1
  87. package/dist/interface/assets/Sensors-DDPUwbb-.js +2 -0
  88. package/dist/interface/assets/{Sensors-CaKl4PQY.css → Sensors-DzGV2Ngo.css} +1 -1
  89. package/dist/interface/assets/Settings-9nC18KH8.js +1 -0
  90. package/dist/interface/assets/{Settings-jQIhZFRY.css → Settings-D7495zbV.css} +1 -1
  91. package/dist/interface/assets/SettingsAccount-BTYvhCJP.js +1 -0
  92. package/dist/interface/assets/SettingsAccount-CKi0z3Bm.js +1 -0
  93. package/dist/interface/assets/SettingsAppearance-CDbQnSvl.js +1 -0
  94. package/dist/interface/assets/{SettingsAppearance-NpsVIJUO.js → SettingsAppearance-D9Y28zzz.js} +1 -1
  95. package/dist/interface/assets/SettingsBackup-Bu48xw4v.js +1 -0
  96. package/dist/interface/assets/{SettingsList-BKyyC2_M.js → SettingsList-74c5OMQf.js} +1 -1
  97. package/dist/interface/assets/SettingsMqtt-81rJ4zV6.js +1 -0
  98. package/dist/interface/assets/{SettingsNotifications-kKPcCTLM.js → SettingsNotifications-xHV5KiZg.js} +1 -1
  99. package/dist/interface/assets/{SettingsPermissions-r6wxjmHg.js → SettingsPermissions-DqyVtVKE.js} +1 -1
  100. package/dist/interface/assets/{SettingsRecordings-GPy1AdjG.js → SettingsRecordings-Bxn28Frz.js} +1 -1
  101. package/dist/interface/assets/SettingsRemote-7h2dKJlF.js +2 -0
  102. package/dist/interface/assets/SettingsSystem-D-MLhCdN.js +2 -0
  103. package/dist/interface/assets/SettingsUsers-DUOJN7uO.js +1 -0
  104. package/dist/interface/assets/{Terminal-DtvlszuP.js → Terminal-45QW5yPE.js} +2 -2
  105. package/dist/interface/assets/Training-B5SzDUAC.css +1 -0
  106. package/dist/interface/assets/Training-DWrQVSS0.js +1 -0
  107. package/dist/interface/assets/Updates-B32Pra5E.js +2 -0
  108. package/dist/interface/assets/{VariableInput-C-f6bNmi.js → VariableInput-CyTGQFtz.js} +1 -1
  109. package/dist/interface/assets/{VariableSuggestions-B4LYkbu5.js → VariableSuggestions-BLlD4F87.js} +1 -1
  110. package/dist/interface/assets/{VersionsHandler-Cxxcwt9W.js → VersionsHandler-CIq6v6lE.js} +1 -1
  111. package/dist/interface/assets/{VirtualSensorCreate-CrGmWsI7.js → VirtualSensorCreate-Di2IyYAg.js} +1 -1
  112. package/dist/interface/assets/Workers-tb039NGc.js +2 -0
  113. package/dist/interface/assets/{api-CD4zuPhg.js → api-4JRK8ya0.js} +1 -1
  114. package/dist/interface/assets/api-CFf063x3.js +4 -0
  115. package/dist/interface/assets/api-eoOLTOnS.css +2 -0
  116. package/dist/interface/assets/{auth-W2HVbsrF.js → auth-ISkWvJbZ.js} +1 -1
  117. package/dist/interface/assets/{automations-CY5xtQCF.js → automations-CeH81DN-.js} +1 -1
  118. package/dist/interface/assets/{cameraSources-BSFgVwUz.js → cameraSources-CgAEmb37.js} +1 -1
  119. package/dist/interface/assets/cloudHandoff-B_kCnm4R.js +1 -0
  120. package/dist/interface/assets/{config-DOFSd8-0.js → config-DthCyQJv.js} +1 -1
  121. package/dist/interface/assets/{flowSchema-Bq6CskDh.js → flowSchema-DZ2bDhJt.js} +1 -1
  122. package/dist/interface/assets/{intercomService-CT_KVjly.js → intercomService-Bd71KwsB.js} +1 -1
  123. package/dist/interface/assets/main--lW4P3A4.js +3 -0
  124. package/dist/interface/assets/main-ExPfCNlz.css +1 -0
  125. package/dist/interface/assets/mqtt-oPORDio9.js +1 -0
  126. package/dist/interface/assets/{notifications-B_hY7DqC.js → notifications-BirFkpbF.js} +1 -1
  127. package/dist/interface/assets/{plugins-V5-6e5L7.js → plugins-vyA7MMhx.js} +1 -1
  128. package/dist/interface/assets/rooms-MfPQPywT.js +1 -0
  129. package/dist/interface/assets/{sensorIcons-DQIyC9JL.js → sensorIcons-B4H11BbT.js} +1 -1
  130. package/dist/interface/assets/{sensors-7R3hMa_s.js → sensors-xryx8Wvn.js} +1 -1
  131. package/dist/interface/assets/{server-CyCTaiWl.js → server-BK9gwxH8.js} +1 -1
  132. package/dist/interface/assets/{theme-Cc5MIK4j.js → theme-DQeAzJ1v.js} +1 -1
  133. package/dist/interface/assets/{types-D9iX7VVJ.js → types-Bcj_K26s.js} +1 -1
  134. package/dist/interface/assets/types-D626ASim.js +1 -0
  135. package/dist/interface/assets/{types-CDVUPFqE.js → types-kN1Tn2Og.js} +1 -1
  136. package/dist/interface/assets/ungrouped-C6pQb0X4.css +1 -0
  137. package/dist/interface/assets/ungrouped-C_gJm6d7.js +1 -0
  138. package/dist/interface/assets/{updates-H8lZYYSt.js → updates-Dzqxen12.js} +1 -1
  139. package/dist/interface/assets/{useAppVersion-DuXhWeJY.js → useAppVersion-JY7cdzlr.js} +1 -1
  140. package/dist/interface/assets/useBackupRestore-CeShFVWy.js +1 -0
  141. package/dist/interface/assets/{useCameraOptions-CZvujVuW.js → useCameraOptions-BeUNT5Rz.js} +1 -1
  142. package/dist/interface/assets/{useLogsSocket-DW5Ll9qN.js → useLogsSocket-DDSuX00j.js} +1 -1
  143. package/dist/interface/assets/{useNavLayout-Ay4GP0IF.js → useNavLayout-DgAgRNq2.js} +1 -1
  144. package/dist/interface/assets/{usePermissions-tvEa1N9y.js → usePermissions-DFzwIs8L.js} +1 -1
  145. package/dist/interface/assets/{usePluginUpdates-C6c7mdBo.js → usePluginUpdates-Bb-LOOyL.js} +1 -1
  146. package/dist/interface/assets/{usePushRegistration-Cp-oFaYU.js → usePushRegistration-iverdyzz.js} +1 -1
  147. package/dist/interface/assets/{useServerRestart-F0do0_a5.js → useServerRestart-BchofDLe.js} +1 -1
  148. package/dist/interface/assets/{useStreamStatus-Cof0SieK.js → useStreamStatus-BOJt1v1c.js} +1 -1
  149. package/dist/interface/assets/{useTabSwipe-CH2JsEKl.js → useTabSwipe-v0Yet-YZ.js} +1 -1
  150. package/dist/interface/assets/{useUpdateChannel--yUW8uvn.js → useUpdateChannel-K9ADk5yx.js} +1 -1
  151. package/dist/interface/assets/{useUpdatesSocket-DOHvs02g.js → useUpdatesSocket-sj1-DmFM.js} +1 -1
  152. package/dist/interface/assets/{useUserOptions-CO_I7IAm.js → useUserOptions-BnF_qBdZ.js} +1 -1
  153. package/dist/interface/assets/{vendor-cameraui-B96_CDGO.js → vendor-cameraui-BPX4wReW.js} +2 -2
  154. package/dist/interface/assets/{vendor-core-DFWGbWRD.js → vendor-core-D0ANiY7g.js} +1 -1
  155. package/dist/interface/assets/{vendor-primevue-uo78flP9.js → vendor-primevue-iEFYdXsu.js} +1 -1
  156. package/dist/interface/ha/{404-CvCsIvOn.js → 404-DlQnv9jN.js} +1 -1
  157. package/dist/interface/ha/{About-Bqb-qrXr.js → About-BLQJmllv.js} +6 -6
  158. package/dist/interface/ha/{Automation-AiOadcvh.js → Automation-DLMPArOd.js} +184 -184
  159. package/dist/interface/ha/{AutomationImport-CHs99b96.js → AutomationImport-Qzz3Ta4D.js} +6 -6
  160. package/dist/interface/ha/{AutomationStore-yTxgRNos.js → AutomationStore-DNXC9s6h.js} +51 -51
  161. package/dist/interface/ha/{AutomationStoreDetail-CWB-S_Dq.js → AutomationStoreDetail-CTqydRKj.js} +24 -24
  162. package/dist/interface/ha/{Automations-ymrcS6zL.js → Automations-DRxe1fli.js} +102 -102
  163. package/dist/interface/ha/{Camera-gfUjA1cF.js → Camera-OrI4Wf4F.js} +180 -180
  164. package/dist/interface/ha/{CameraConsole-DBM_9sZD.js → CameraConsole-6yGhoHmu.js} +4 -4
  165. package/dist/interface/ha/{Cameras-BDYtuflZ.js → Cameras-DpEaKKDG.js} +253 -253
  166. package/dist/interface/ha/{Camview-CyZW6Ccj.js → Camview-CnPz4cGs.js} +128 -128
  167. package/dist/interface/ha/{Config-Dw11VG_z.js → Config-Bb2ERyAA.js} +11 -11
  168. package/dist/interface/ha/{ConfigActionCameraControl-SpfqepU9.js → ConfigActionCameraControl-CC2tWFz2.js} +3 -3
  169. package/dist/interface/ha/{ConfigActionHttp-DRNiEJwf.js → ConfigActionHttp-DBsEL44i.js} +2 -2
  170. package/dist/interface/ha/{ConfigActionImageInput-BKIS7_Az.js → ConfigActionImageInput-Rt3AOJ3I.js} +1 -1
  171. package/dist/interface/ha/{ConfigActionMqtt-vcKjYONr.js → ConfigActionMqtt-BYSSc954.js} +4 -4
  172. package/dist/interface/ha/{ConfigActionNotification-C8RqA0hp.js → ConfigActionNotification-DKlIsZJd.js} +3 -3
  173. package/dist/interface/ha/{ConfigActionNotificationControl-DxDU-1LD.js → ConfigActionNotificationControl-D5AVW2tR.js} +2 -2
  174. package/dist/interface/ha/{ConfigActionOutput-Dd9tqEbp.js → ConfigActionOutput-DIlu8Ujc.js} +1 -1
  175. package/dist/interface/ha/{ConfigActionPlugin-hZohlF2U.js → ConfigActionPlugin-o1YNBh-g.js} +4 -4
  176. package/dist/interface/ha/{ConfigActionSensor-CsTZdgpn.js → ConfigActionSensor-BEvwg0tf.js} +5 -5
  177. package/dist/interface/ha/{ConfigActionSnapshot-CVuRrZog.js → ConfigActionSnapshot-Bnw0JNNj.js} +2 -2
  178. package/dist/interface/ha/{ConfigActionVariable-BW0Mfwzv.js → ConfigActionVariable-oGPagsvF.js} +1 -1
  179. package/dist/interface/ha/{ConfigConditionIfElse-B8giXSLg.js → ConfigConditionIfElse-7LCDNDvS.js} +3 -3
  180. package/dist/interface/ha/{ConfigConditionSensorState-SOYmnv38.js → ConfigConditionSensorState-nO-s7wi6.js} +4 -4
  181. package/dist/interface/ha/{ConfigConditionSwitch-DPYRsgIP.js → ConfigConditionSwitch-GrIKkY-P.js} +4 -4
  182. package/dist/interface/ha/{ConfigSensorValueInput-C8uDea7H.js → ConfigSensorValueInput-Cthp3KXt.js} +7 -7
  183. package/dist/interface/ha/{ConfigTriggerDetection-DKrNlf4n.js → ConfigTriggerDetection-CJE9QFaK.js} +11 -11
  184. package/dist/interface/ha/{ConfigTriggerGeofence-BoKYjfEF.js → ConfigTriggerGeofence-Cyeu7Cit.js} +5 -5
  185. package/dist/interface/ha/{ConfigTriggerMqtt-A0druw9s.js → ConfigTriggerMqtt-D5EoOztE.js} +1 -1
  186. package/dist/interface/ha/{ConfigTriggerSensor-DnqfzsxM.js → ConfigTriggerSensor-DYg_HRjO.js} +1 -1
  187. package/dist/interface/ha/{ConfigTriggerSystem-B8JHImoF.js → ConfigTriggerSystem-DzpajiyS.js} +2 -2
  188. package/dist/interface/ha/{ConfigTriggerWebhook-B34dHYln.js → ConfigTriggerWebhook-IE4PVb4O.js} +2 -2
  189. package/dist/interface/ha/{Console-vTZkA5_c.js → Console-BYgny5Dy.js} +100 -100
  190. package/dist/interface/ha/{CuiAutomationRunsDialog-D1j6QT1J.js → CuiAutomationRunsDialog-CoYgpbW0.js} +2 -2
  191. package/dist/interface/ha/{CuiBottomSheet-tJqB2HMb.js → CuiBottomSheet-C4cK3fYK.js} +3 -3
  192. package/dist/interface/ha/{CuiCameraRecordings-CbXShYur.js → CuiCameraRecordings-BAxchc71.js} +16 -15
  193. package/dist/interface/ha/{CuiCameraShares-fsCg_eYs.js → CuiCameraShares-CfQr1iyX.js} +7 -7
  194. package/dist/interface/ha/{CuiCameraTable-cCH34Rqx.js → CuiCameraTable-B60mcEl_.js} +9 -9
  195. package/dist/interface/ha/{CuiChartTable-CMkcRmDL.js → CuiChartTable-CbUVz-Cj.js} +42 -42
  196. package/dist/interface/ha/{CuiConsole-wuBto4Ht.js → CuiConsole-DEjAQFwC.js} +19 -19
  197. package/dist/interface/ha/{CuiDataTable-yviddz9T.js → CuiDataTable-005ptLsa.js} +7 -7
  198. package/dist/interface/ha/{CuiPluginCard-Dr4cFcve.js → CuiPluginCard-BWwPLJ6m.js} +33 -33
  199. package/dist/interface/ha/CuiPluginOAuthButton-CgmDgRY9.js +79 -0
  200. package/dist/interface/ha/{CuiPluginTrustBadge-CVwRbaTh.js → CuiPluginTrustBadge-BWnP1whX.js} +3 -3
  201. package/dist/interface/ha/{CuiQRCode-CTr0g0fy.js → CuiQRCode-ONkk6Wqy.js} +6 -6
  202. package/dist/interface/ha/{ungrouped-CpcBXTDQ.js → CuiRecordingsGrid-D6HHyF1D.js} +81 -462
  203. package/dist/interface/ha/{CuiSchema-DtfAoLxQ.js → CuiSchema-C3uI1GwG.js} +138 -138
  204. package/dist/interface/ha/{CuiTopNavbarItem-4H6Gg0Pe.js → CuiTopNavbarItem-Bhws0XkE.js} +3 -3
  205. package/dist/interface/ha/{Faces-DSjPW-A-.js → Faces-DuxYlZGd.js} +79 -79
  206. package/dist/interface/ha/{FirstSteps-BK_EXlZU.js → FirstSteps-BAlqShSK.js} +64 -64
  207. package/dist/interface/ha/{Floorplan-BWRteZjr.js → Floorplan-BVwSNFd6.js} +332 -332
  208. package/dist/interface/ha/{Instances-Dln03_o7.js → Instances-BM9sRNSP.js} +73 -73
  209. package/dist/interface/ha/{Logs-xwh0fkZV.js → Logs-KISz4BU-.js} +11 -11
  210. package/dist/interface/ha/{Menu-BwzIh1vF.js → Menu-DYI6PeIn.js} +19 -19
  211. package/dist/interface/ha/{Metrics-CiMXu6rz.js → Metrics-BjpKFunA.js} +101 -101
  212. package/dist/interface/ha/{OAuthDeviceFlow-D4IUrYub.js → OAuthDeviceFlow-DG-KUGZj.js} +4 -4
  213. package/dist/interface/ha/{Plugin-CM5b1Jz4.js → Plugin-BjWyUUhe.js} +103 -103
  214. package/dist/interface/ha/{PluginConsole-BJNblZb5.js → PluginConsole-BK3cotea.js} +6 -6
  215. package/dist/interface/ha/{PluginDetail--RFw88FL.js → PluginDetail-BDzDeShX.js} +13 -13
  216. package/dist/interface/ha/{PluginSearch-yzBxy3Zj.js → PluginSearch-DsFUuPC-.js} +54 -54
  217. package/dist/interface/ha/{PluginUpdateProgress-BaYmaaE7.js → PluginUpdateProgress-BMrdkjRq.js} +3 -3
  218. package/dist/interface/ha/{Plugins-C-sU0dsj.js → Plugins-3WPnsHXw.js} +27 -27
  219. package/dist/interface/ha/{Recordings-CXnTN85c.js → Recordings-0wDF4ArK.js} +153 -134
  220. package/dist/interface/ha/{SensorEdit-ByAfduAA.js → SensorEdit-B0L2zIha.js} +359 -359
  221. package/dist/interface/ha/{SensorHistory-Cv1YF7qX.js → SensorHistory-CQJEY1sW.js} +2 -2
  222. package/dist/interface/ha/{Sensors-DyxXLT1C.js → Sensors-BYdBTCLo.js} +251 -251
  223. package/dist/interface/ha/{Settings-DMBgMUpe.js → Settings-BaqGiBCa.js} +24 -24
  224. package/dist/interface/ha/SettingsAccount-B0Sth0EF.js +970 -0
  225. package/dist/interface/ha/{SettingsAppearance-BfXcGIwE.js → SettingsAppearance-B_oylmTa.js} +14 -14
  226. package/dist/interface/ha/{SettingsBackup-vsITZfgV.js → SettingsBackup-BLmoV5AW.js} +8 -8
  227. package/dist/interface/ha/{SettingsList-BTxhjM8J.js → SettingsList-CMX7wMye.js} +5 -5
  228. package/dist/interface/ha/{SettingsMqtt-JHf9BXbp.js → SettingsMqtt-C-sGwxOZ.js} +148 -148
  229. package/dist/interface/ha/SettingsNotifications-tc9FCCUF.js +529 -0
  230. package/dist/interface/ha/{SettingsRecordings-BAUAhyEd.js → SettingsRecordings-DDs16z2A.js} +6 -6
  231. package/dist/interface/ha/{SettingsRemote-DAI3p-gY.js → SettingsRemote-0c0umjFJ.js} +355 -355
  232. package/dist/interface/ha/{SettingsSystem-D-UQqZyn.js → SettingsSystem-DfXxWXQk.js} +10 -10
  233. package/dist/interface/ha/{SettingsUsers-D-_uCeBe.js → SettingsUsers-CmjC0zsF.js} +42 -42
  234. package/dist/interface/ha/{Terminal-BBBP74zZ.js → Terminal-nbUX6PPZ.js} +76 -76
  235. package/dist/interface/ha/Training-GMcD4Qg9.js +1440 -0
  236. package/dist/interface/ha/{Updates-DDEAqmrt.js → Updates-UaxBGn6D.js} +14 -14
  237. package/dist/interface/ha/{VariableInput-5aDKaHK6.js → VariableInput-0bF2H1Bm.js} +1 -1
  238. package/dist/interface/ha/{VersionsHandler-Z5aUBicW.js → VersionsHandler-CnXVnfBl.js} +10 -10
  239. package/dist/interface/ha/{VirtualSensorCreate-DOjwBgbP.js → VirtualSensorCreate-BE60rAkJ.js} +7 -7
  240. package/dist/interface/ha/{Workers-lI-ulBfQ.js → Workers-CaX3Z3w-.js} +104 -104
  241. package/dist/interface/ha/{api-BU1ot-rQ.js → api-CmcbBFTx.js} +9831 -9471
  242. package/dist/interface/ha/{api-B-1nJvx1.js → api-S-NnjUWl.js} +4 -4
  243. package/dist/interface/ha/{auth-Wr26Jrhr.js → auth-CqYE7s1-.js} +24 -24
  244. package/dist/interface/ha/{automationBlueprint-CjXCYTHX.js → automationBlueprint-Dmp54JD1.js} +2 -2
  245. package/dist/interface/ha/cameraui-cards.js +1 -1
  246. package/dist/interface/ha/{cards-DJ8I0DpS.js → cards-MnCBmBIR.js} +121 -121
  247. package/dist/interface/ha/cloud-check-BFJzoUtz.js +33 -0
  248. package/dist/interface/ha/{config--3c2hYeI.js → config-C94KN4WM.js} +15 -15
  249. package/dist/interface/ha/{mqtt-CSWN3zrE.js → mqtt-HDLqlOJt.js} +15 -15
  250. package/dist/interface/ha/{notifications-B4jziVIo.js → notifications-C2_2_NRh.js} +22 -22
  251. package/dist/interface/ha/{pinia-3D39Do4a.js → pinia-DLNUke3Q.js} +172 -149
  252. package/dist/interface/ha/{plugins-BTBXmJqQ.js → plugins-l2i4DgqO.js} +68 -68
  253. package/dist/interface/ha/{rooms-BxY9U6db.js → rooms-Bp1ZVAzT.js} +11 -11
  254. package/dist/interface/ha/{server-BxPWpMFK.js → server-BsduJDAB.js} +32 -32
  255. package/dist/interface/ha/{types-D_Y5r1Yz.js → types-iZUCCt1P.js} +30 -30
  256. package/dist/interface/ha/ungrouped-wz-KNJpA.js +426 -0
  257. package/dist/interface/ha/{updates-Hyzkue_s.js → updates-CDsPvhpo.js} +36 -36
  258. package/dist/interface/ha/{useAppVersion-BME7p9Tn.js → useAppVersion-BJtSGn4X.js} +1 -1
  259. package/dist/interface/ha/{useLogsSocket-9HYA1tN7.js → useLogsSocket-Ck-ZQpQD.js} +1 -1
  260. package/dist/interface/ha/{useNavLayout-BP3bvHDX.js → useNavLayout-Bn6HYs-i.js} +19 -19
  261. package/dist/interface/ha/{useServerRestart-L0gugeHY.js → useServerRestart-fff_KK9Y.js} +1 -1
  262. package/dist/interface/ha/{useTabSwipe-DKFPKAuu.js → useTabSwipe-B1CQZuyT.js} +1 -1
  263. package/dist/interface/ha/{useUpdateChannel-DgPBMvzK.js → useUpdateChannel-DUBmGEDe.js} +2 -2
  264. package/dist/interface/ha/{useUpdatesSocket-j4Sl2_YJ.js → useUpdatesSocket-DoLb2kcJ.js} +1 -1
  265. package/dist/interface/ha/{useUserOptions-BIVNeXD9.js → useUserOptions-D0kNSHFH.js} +1 -1
  266. package/dist/interface/index.html +27 -27
  267. package/dist/interface/sw.js +1 -1
  268. package/dist/server/package.json +8 -8
  269. package/dist/server/src/api/controllers/training.controller.d.ts +38 -0
  270. package/dist/server/src/api/controllers/training.controller.js +97 -0
  271. package/dist/server/src/api/controllers/training.controller.js.map +1 -0
  272. package/dist/server/src/api/database/constants.d.ts +1 -0
  273. package/dist/server/src/api/database/constants.js +1 -0
  274. package/dist/server/src/api/database/constants.js.map +1 -1
  275. package/dist/server/src/api/database/index.d.ts +3 -2
  276. package/dist/server/src/api/database/index.js +4 -2
  277. package/dist/server/src/api/database/index.js.map +1 -1
  278. package/dist/server/src/api/database/migrations/v2-1-19.d.ts +3 -0
  279. package/dist/server/src/api/database/migrations/v2-1-19.js +24 -0
  280. package/dist/server/src/api/database/migrations/v2-1-19.js.map +1 -0
  281. package/dist/server/src/api/database/record-schemas.d.ts +6 -1
  282. package/dist/server/src/api/database/record-schemas.js +7 -0
  283. package/dist/server/src/api/database/record-schemas.js.map +1 -1
  284. package/dist/server/src/api/database/types.d.ts +27 -0
  285. package/dist/server/src/api/index.js +1 -1
  286. package/dist/server/src/api/index.js.map +1 -1
  287. package/dist/server/src/api/render-index.js +1 -1
  288. package/dist/server/src/api/render-index.js.map +1 -1
  289. package/dist/server/src/api/routes/index.js +2 -0
  290. package/dist/server/src/api/routes/index.js.map +1 -1
  291. package/dist/server/src/api/routes/training.routes.d.ts +2 -0
  292. package/dist/server/src/api/routes/training.routes.js +106 -0
  293. package/dist/server/src/api/routes/training.routes.js.map +1 -0
  294. package/dist/server/src/api/schemas/cameras.schema.d.ts +76 -76
  295. package/dist/server/src/api/schemas/remote.schema.d.ts +1 -1
  296. package/dist/server/src/api/schemas/training.schema.d.ts +42 -0
  297. package/dist/server/src/api/schemas/training.schema.js +42 -0
  298. package/dist/server/src/api/schemas/training.schema.js.map +1 -0
  299. package/dist/server/src/api/services/cameras.service.js +7 -2
  300. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  301. package/dist/server/src/api/websocket/index.js +3 -1
  302. package/dist/server/src/api/websocket/index.js.map +1 -1
  303. package/dist/server/src/api/websocket/nsp/training.d.ts +11 -0
  304. package/dist/server/src/api/websocket/nsp/training.js +29 -0
  305. package/dist/server/src/api/websocket/nsp/training.js.map +1 -0
  306. package/dist/server/src/api/websocket/types.d.ts +1 -1
  307. package/dist/server/src/camera/decoder/detection-coordinator.d.ts +1 -0
  308. package/dist/server/src/camera/decoder/detection-coordinator.js +31 -1
  309. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  310. package/dist/server/src/camera/decoder/event-manager.d.ts +6 -0
  311. package/dist/server/src/camera/decoder/event-manager.js +43 -1
  312. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  313. package/dist/server/src/camera/decoder/training-sink.d.ts +26 -0
  314. package/dist/server/src/camera/decoder/training-sink.js +131 -0
  315. package/dist/server/src/camera/decoder/training-sink.js.map +1 -0
  316. package/dist/server/src/camera/decoder/types.d.ts +4 -0
  317. package/dist/server/src/camera/decoder/types.js +12 -0
  318. package/dist/server/src/camera/decoder/types.js.map +1 -1
  319. package/dist/server/src/manager/coreManager.d.ts +3 -1
  320. package/dist/server/src/manager/coreManager.js +18 -0
  321. package/dist/server/src/manager/coreManager.js.map +1 -1
  322. package/dist/server/src/manager/trainingCandidateManager.d.ts +42 -0
  323. package/dist/server/src/manager/trainingCandidateManager.js +250 -0
  324. package/dist/server/src/manager/trainingCandidateManager.js.map +1 -0
  325. package/dist/server/src/manager/types.d.ts +19 -0
  326. package/dist/server/src/manager/types.js +2 -0
  327. package/dist/server/src/manager/types.js.map +1 -1
  328. package/dist/server/src/remote/api/credentialStore.d.ts +1 -0
  329. package/dist/server/src/remote/api/credentialStore.js +24 -0
  330. package/dist/server/src/remote/api/credentialStore.js.map +1 -1
  331. package/dist/server/src/remote/api/index.d.ts +2 -0
  332. package/dist/server/src/remote/api/index.js +3 -0
  333. package/dist/server/src/remote/api/index.js.map +1 -1
  334. package/dist/server/src/remote/api/routes/oauth.js +1 -1
  335. package/dist/server/src/remote/api/routes/oauth.js.map +1 -1
  336. package/dist/server/src/remote/api/routes/train.d.ts +19 -0
  337. package/dist/server/src/remote/api/routes/train.js +47 -0
  338. package/dist/server/src/remote/api/routes/train.js.map +1 -0
  339. package/dist/server/src/rpc/index.d.ts +2 -0
  340. package/dist/server/src/rpc/index.js +5 -0
  341. package/dist/server/src/rpc/index.js.map +1 -1
  342. package/dist/server/src/rpc/interfaces/core.d.ts +21 -0
  343. package/dist/server/src/rpc/server.js +2 -0
  344. package/dist/server/src/rpc/server.js.map +1 -1
  345. package/package.json +8 -8
  346. package/dist/interface/assets/Automation-BLolxsX8.js +0 -3
  347. package/dist/interface/assets/AutomationImport-C_rR9kDq.js +0 -2
  348. package/dist/interface/assets/AutomationStore-whk_TeCG.js +0 -2
  349. package/dist/interface/assets/AutomationStoreDetail-BDDgg3zY.js +0 -2
  350. package/dist/interface/assets/Automations-sEIWIfdE.js +0 -2
  351. package/dist/interface/assets/Camera-BWdUUW_H.css +0 -1
  352. package/dist/interface/assets/Camera-l1DApD8b.js +0 -2
  353. package/dist/interface/assets/Camview-BZS4_jv1.css +0 -1
  354. package/dist/interface/assets/Camview-CWS3VJ1A.js +0 -1
  355. package/dist/interface/assets/Config-C02ndytC.js +0 -2
  356. package/dist/interface/assets/ConfigTriggerGeofence-DnYSaLPb.js +0 -1
  357. package/dist/interface/assets/CuiBottomSheet-Cv_fwvYu.js +0 -1
  358. package/dist/interface/assets/CuiBottomSheet-DsjZEdig.css +0 -1
  359. package/dist/interface/assets/CuiBottomSheet-epGdNqA8.js +0 -1
  360. package/dist/interface/assets/CuiCameraPipCard-Bm6wjm6h.js +0 -1
  361. package/dist/interface/assets/CuiCameraRecordings-4LLV-U85.js +0 -1
  362. package/dist/interface/assets/CuiCameraShares-DqmX3koT.js +0 -1
  363. package/dist/interface/assets/CuiCameraTable-CfyXLqkh.js +0 -1
  364. package/dist/interface/assets/CuiLightControl-CA8MAVex.js +0 -1
  365. package/dist/interface/assets/CuiPluginCard-Bj6cUIJ0.js +0 -2
  366. package/dist/interface/assets/CuiPluginOAuthButton-BmdfXNce.js +0 -2
  367. package/dist/interface/assets/CuiQRCode-CiWTLo9T.js +0 -1
  368. package/dist/interface/assets/CuiSchema-DntSkCO2.js +0 -1
  369. package/dist/interface/assets/CuiTopNavbarItem-DuzCbIZ8.js +0 -1
  370. package/dist/interface/assets/Faces-Bea5pIop.js +0 -1
  371. package/dist/interface/assets/FirstSteps-BNbQsYHq.js +0 -1
  372. package/dist/interface/assets/Floorplan-D9zKFQ2q.js +0 -1
  373. package/dist/interface/assets/Instances-DBphCwLn.js +0 -1
  374. package/dist/interface/assets/Metrics-Dvnil66d.js +0 -9
  375. package/dist/interface/assets/Plugin-1ZS-dcRt.js +0 -1
  376. package/dist/interface/assets/PluginDetail-SCj7WYL6.js +0 -2
  377. package/dist/interface/assets/PluginSearch-CHeix3n8.js +0 -2
  378. package/dist/interface/assets/PluginSearch-CcjGzS5R.js +0 -1
  379. package/dist/interface/assets/Plugins-DS-NZusx.js +0 -1
  380. package/dist/interface/assets/Recordings-Bqb2uV7R.js +0 -1
  381. package/dist/interface/assets/Recordings-D4NzYCO9.css +0 -1
  382. package/dist/interface/assets/Sensors-DU0MBnV1.js +0 -2
  383. package/dist/interface/assets/Settings-Dn-TJCtd.js +0 -1
  384. package/dist/interface/assets/SettingsAccount-CLclTO2m.js +0 -1
  385. package/dist/interface/assets/SettingsAccount-Q2sigi3a.js +0 -1
  386. package/dist/interface/assets/SettingsAppearance-Bo61ZncS.js +0 -1
  387. package/dist/interface/assets/SettingsBackup-D1NER4RI.js +0 -1
  388. package/dist/interface/assets/SettingsMqtt-14d54svj.js +0 -1
  389. package/dist/interface/assets/SettingsRemote-Da_6mcHl.js +0 -2
  390. package/dist/interface/assets/SettingsSystem-BpPrajwG.js +0 -2
  391. package/dist/interface/assets/SettingsUsers-CBItOJic.js +0 -1
  392. package/dist/interface/assets/Updates-CV5MWBHg.js +0 -2
  393. package/dist/interface/assets/Workers-DaHj_0te.js +0 -2
  394. package/dist/interface/assets/api-BTWXbCPQ.css +0 -2
  395. package/dist/interface/assets/api-CdT8ZD-n.js +0 -4
  396. package/dist/interface/assets/cloudHandoff-RfAVMcZZ.js +0 -1
  397. package/dist/interface/assets/main-Qqk3RyYP.css +0 -1
  398. package/dist/interface/assets/main-VmsUT9aF.js +0 -3
  399. package/dist/interface/assets/mqtt-x7JvjSZ0.js +0 -1
  400. package/dist/interface/assets/rooms-iq9Ync9a.js +0 -1
  401. package/dist/interface/assets/types-Br6AbfXl.js +0 -1
  402. package/dist/interface/assets/ungrouped-B-_P9Nxn.js +0 -1
  403. package/dist/interface/assets/ungrouped-DTYy_Pud.css +0 -1
  404. package/dist/interface/assets/useBackupRestore-C9JlDbTt.js +0 -1
  405. package/dist/interface/ha/CuiPluginOAuthButton-D4M7piUp.js +0 -105
  406. package/dist/interface/ha/SettingsAccount-CiyVRy4Y.js +0 -970
  407. package/dist/interface/ha/SettingsNotifications-Bvay7Ob7.js +0 -529
@@ -1,5 +1,5 @@
1
- import { H as e, _t as t, kt as n, p as r, u as i, xt as a } from "./runtime-core.esm-bundler-D8slQ3BU.js";
2
- import { Pi as ee, _i as o, gi as te, mi as s, qi as c, ra as ne } from "./api-BU1ot-rQ.js";
1
+ import { H as e, _t as t, kt as n, p as r, u as i, xt as ee } from "./runtime-core.esm-bundler-D8slQ3BU.js";
2
+ import { $i as a, Bi as o, Ci as s, Si as te, bi as c, la as ne } from "./api-CmcbBFTx.js";
3
3
  import { rt as l } from "./dist-BQFunPaA.js";
4
4
  import { a as re, i as ie, n as ae, r as u } from "./alert-outline-CGTMAqXf.js";
5
5
  import { t as d } from "./clock-outline-JxApewmA.js";
@@ -7,56 +7,56 @@ import { t as f } from "./source-branch-CZwSOrQA.js";
7
7
  import { r as p } from "./eventLabels-B4C1_4vT.js";
8
8
  //#region src/api/routes/automations.ts
9
9
  async function m({ signal: e }) {
10
- return (await c.get("/automations", { signal: e })).data;
10
+ return (await a.get("/automations", { signal: e })).data;
11
11
  }
12
12
  async function h({ id: e, signal: t }) {
13
- return (await c.get(`/automations/${e}`, { signal: t })).data;
13
+ return (await a.get(`/automations/${e}`, { signal: t })).data;
14
14
  }
15
15
  async function g({ id: e, signal: t }) {
16
- return (await c.get(`/automations/${e}/runs`, { signal: t })).data;
16
+ return (await a.get(`/automations/${e}/runs`, { signal: t })).data;
17
17
  }
18
18
  async function _({ data: e }) {
19
- return (await c.post("/automations", e)).data;
19
+ return (await a.post("/automations", e)).data;
20
20
  }
21
21
  async function v({ id: e, data: t }) {
22
- return (await c.patch(`/automations/${e}`, t)).data;
22
+ return (await a.patch(`/automations/${e}`, t)).data;
23
23
  }
24
24
  async function y({ id: e }) {
25
- await c.delete(`/automations/${e}`);
25
+ await a.delete(`/automations/${e}`);
26
26
  }
27
27
  async function b({ ids: e, data: t }) {
28
- return (await c.patch("/automations", {
28
+ return (await a.patch("/automations", {
29
29
  ids: e,
30
30
  data: t
31
31
  })).data;
32
32
  }
33
33
  async function x({ ids: e }) {
34
- return (await c.delete("/automations", { data: { ids: e } })).data;
34
+ return (await a.delete("/automations", { data: { ids: e } })).data;
35
35
  }
36
36
  async function S({ id: e }) {
37
- let { data: t } = await c.post(`/automations/${e}/trigger`);
37
+ let { data: t } = await a.post(`/automations/${e}/trigger`);
38
38
  return t;
39
39
  }
40
40
  async function C({ blueprint: e }) {
41
- return (await c.post("/automations/import", e)).data;
41
+ return (await a.post("/automations/import", e)).data;
42
42
  }
43
43
  async function w({ signal: e }) {
44
- return (await c.get("/automations/plugin-methods", { signal: e })).data;
44
+ return (await a.get("/automations/plugin-methods", { signal: e })).data;
45
45
  }
46
46
  async function T({ refresh: e, signal: t }) {
47
- return (await c.get("/automations/store", {
47
+ return (await a.get("/automations/store", {
48
48
  params: e ? { refresh: !0 } : {},
49
49
  signal: t
50
50
  })).data;
51
51
  }
52
52
  async function E({ id: e, signal: t }) {
53
- return (await c.get(`/automations/store/${e}`, { signal: t })).data;
53
+ return (await a.get(`/automations/store/${e}`, { signal: t })).data;
54
54
  }
55
55
  var D = class {
56
- _queryClient = ee();
56
+ _queryClient = o();
57
57
  t = ne.global.t;
58
58
  toast = te();
59
- queryActivator = a([{
59
+ queryActivator = ee([{
60
60
  name: "getAutomationsQuery",
61
61
  enabled: !0
62
62
  }, {
@@ -64,7 +64,7 @@ var D = class {
64
64
  enabled: !0
65
65
  }]);
66
66
  getAutomationsQuery() {
67
- return s({
67
+ return c({
68
68
  queryKey: ["automationsList"],
69
69
  queryFn: ({ signal: e }) => m({ signal: e }),
70
70
  placeholderData: (e) => e,
@@ -72,7 +72,7 @@ var D = class {
72
72
  });
73
73
  }
74
74
  getAutomationQuery(e) {
75
- return s({
75
+ return c({
76
76
  queryKey: ["automation", e],
77
77
  queryFn: ({ signal: t }) => h({
78
78
  id: n(e),
@@ -82,7 +82,7 @@ var D = class {
82
82
  });
83
83
  }
84
84
  getAutomationRunsQuery(e) {
85
- return s({
85
+ return c({
86
86
  queryKey: ["automationRuns", e],
87
87
  queryFn: ({ signal: t }) => g({
88
88
  id: n(e),
@@ -92,7 +92,7 @@ var D = class {
92
92
  });
93
93
  }
94
94
  createAutomationQuery() {
95
- return o({
95
+ return s({
96
96
  mutationFn: _,
97
97
  onSuccess: async () => {
98
98
  await this._queryClient.refetchQueries({ queryKey: ["automationsList"] }), this.toast.add({
@@ -104,7 +104,7 @@ var D = class {
104
104
  });
105
105
  }
106
106
  patchAutomationQuery() {
107
- return o({
107
+ return s({
108
108
  mutationFn: v,
109
109
  onSuccess: async (e, t) => {
110
110
  await this._queryClient.refetchQueries({ queryKey: ["automationsList"] }), await this._queryClient.refetchQueries({ queryKey: ["automation", t.id] });
@@ -112,7 +112,7 @@ var D = class {
112
112
  });
113
113
  }
114
114
  deleteAutomationQuery() {
115
- return o({
115
+ return s({
116
116
  mutationFn: y,
117
117
  onSuccess: async () => {
118
118
  await this._queryClient.refetchQueries({ queryKey: ["automationsList"] });
@@ -120,7 +120,7 @@ var D = class {
120
120
  });
121
121
  }
122
122
  bulkPatchAutomationsQuery() {
123
- return o({
123
+ return s({
124
124
  mutationFn: b,
125
125
  onSuccess: async () => {
126
126
  await this._queryClient.refetchQueries({ queryKey: ["automationsList"] });
@@ -128,7 +128,7 @@ var D = class {
128
128
  });
129
129
  }
130
130
  bulkDeleteAutomationsQuery() {
131
- return o({
131
+ return s({
132
132
  mutationFn: x,
133
133
  onSuccess: async () => {
134
134
  await this._queryClient.refetchQueries({ queryKey: ["automationsList"] });
@@ -136,7 +136,7 @@ var D = class {
136
136
  });
137
137
  }
138
138
  triggerAutomationQuery() {
139
- return o({
139
+ return s({
140
140
  mutationFn: S,
141
141
  onSuccess: async (e, t) => {
142
142
  await this._queryClient.refetchQueries({ queryKey: ["automationsList"] }), await this._queryClient.refetchQueries({ queryKey: ["automation", t.id] });
@@ -144,13 +144,13 @@ var D = class {
144
144
  });
145
145
  }
146
146
  getPluginMethodsQuery() {
147
- return s({
147
+ return c({
148
148
  queryKey: ["automationPluginMethods"],
149
149
  queryFn: ({ signal: e }) => w({ signal: e })
150
150
  });
151
151
  }
152
152
  getAutomationStoreQuery(e) {
153
- return s({
153
+ return c({
154
154
  queryKey: ["automationStore"],
155
155
  queryFn: ({ signal: t }) => T({
156
156
  refresh: n(e),
@@ -160,7 +160,7 @@ var D = class {
160
160
  });
161
161
  }
162
162
  getAutomationStoreItemQuery(e) {
163
- return s({
163
+ return c({
164
164
  queryKey: ["automationStoreItem", e],
165
165
  queryFn: ({ signal: t }) => E({
166
166
  id: n(e),
@@ -170,7 +170,7 @@ var D = class {
170
170
  });
171
171
  }
172
172
  importBlueprintQuery() {
173
- return o({
173
+ return s({
174
174
  mutationFn: C,
175
175
  onSuccess: async () => {
176
176
  await this._queryClient.refetchQueries({ queryKey: ["automationsList"] }), this.toast.add({
@@ -0,0 +1,426 @@
1
+ import { f as e, m as t } from "./ripple-BilzxWfY.js";
2
+ import { D as n, G as r, H as i, Jt as a, Wt as o, Y as ee, d as s, f as c, kt as l, l as u, lt as d, ot as te, p as f, r as p, rt as m, u as h, ut as g, x as _, xt as v, y, z as ne } from "./runtime-core.esm-bundler-D8slQ3BU.js";
3
+ import { t as re } from "./tooltip-BIrD_hC8.js";
4
+ import { $ as ie, Bn as b, Cr as x, Gn as ae, Hn as oe, In as S, Q as C, Si as se, Sr as ce, Vn as w, X as le, Y as ue, Z as de, _r as fe, _t as pe, br as me, dr as he, fr as ge, it as _e, lr as ve, o as T, qn as ye, rr as be, rt as xe, ua as Se, wr as Ce, zn as we } from "./api-CmcbBFTx.js";
5
+ import { _ as Te, o as Ee } from "./intercomService-jB2mTgsn.js";
6
+ import { n as De } from "./vue-i18n-Dcb07o5U.js";
7
+ import { M as Oe } from "./dist-BQFunPaA.js";
8
+ import { t as ke } from "./button-BlYuI0Q7.js";
9
+ //#region src/components/CuiRecordings/RecordingCard.vue?vue&type=script&setup=true&lang.ts
10
+ var Ae = ["src"], je = {
11
+ key: 2,
12
+ class: "w-full h-full flex items-center justify-center bg-neutral-800/80"
13
+ }, Me = { class: "absolute top-0 left-0 right-0 p-2 bg-gradient-to-b from-black/80 to-transparent z-[3]" }, Ne = { class: "flex items-center gap-1.5" }, Pe = { class: "text-xs font-semibold text-white truncate min-w-0 flex-1" }, Fe = {
14
+ key: 1,
15
+ class: "text-[10px] font-semibold text-white/80 bg-black/60 px-1.5 py-0.5 rounded-md shrink-0"
16
+ }, Ie = { class: "text-[10px] text-white/70" }, Le = { class: "block text-[11px] text-white font-medium truncate bg-black/50 rounded-md px-2 py-0.5" }, Re = { class: "flex items-center gap-1 min-w-0" }, ze = ["title"], Be = {
17
+ key: 0,
18
+ class: "flex items-center gap-0.5 shrink-0 opacity-85 group-hover:opacity-100 transition-opacity duration-200"
19
+ }, Ve = ["onClick"], He = ["src", "alt"], Ue = {
20
+ key: 0,
21
+ class: "text-[10px] text-white/60 font-medium"
22
+ }, We = {
23
+ key: 6,
24
+ class: "absolute inset-0 z-[4] flex items-center justify-center pointer-events-none"
25
+ }, Ge = {
26
+ key: 7,
27
+ class: "absolute bottom-10 left-1/2 -translate-x-1/2 z-[4] pointer-events-none"
28
+ }, Ke = {
29
+ class: "text-[10px] font-semibold text-white bg-black/60 px-1.5 py-0.5 rounded-md whitespace-nowrap",
30
+ style: { "font-variant-numeric": "tabular-nums" }
31
+ }, qe = 24, Je = 30, Ye = 22, Xe = 28, Ze = 8, E = /*#__PURE__*/ x(/* @__PURE__ */ _({
32
+ __name: "RecordingCard",
33
+ props: {
34
+ event: {},
35
+ cameraName: {},
36
+ camera: {},
37
+ loadThumbnails: { type: Function },
38
+ semanticScore: {},
39
+ segIndex: {},
40
+ hideSegmentBadge: { type: Boolean },
41
+ selectionMode: { type: Boolean },
42
+ selected: { type: Boolean },
43
+ siblingActive: { type: Boolean }
44
+ },
45
+ emits: [
46
+ "scrollToEvent",
47
+ "select",
48
+ "openTrace"
49
+ ],
50
+ setup(_, { emit: x }) {
51
+ let E = _, D = x, Qe = Ee(), $e = se(), { t: O } = De(), k = be("@camera.ui/camera-ui-nvr"), { plugin: et } = Oe("@camera.ui/camera-ui-nvr"), { icons: A } = pe(), j = k.getCachedThumbnails(E.event.id), tt = j ? S(j, E.event, "card", E.segIndex).url ? "loaded" : "empty" : "loading", M = n(we, void 0), nt = m("rootRef"), rt = m("previewCanvasRef"), it = m("footerRef"), N = v(!1), at = de(nt, () => Tt(), () => $()), P = v(!1), F = v(j ?? null), I = v(tt), L = v(!1), R = v(0), z = v(null), { width: ot } = Te(it), B = u(() => z.value ?? E.event.favorite ?? !1), st = u(() => (k.storeVersion.value, E.event.segments?.find((e) => e?.description)?.description?.title)), V = u(() => {
52
+ if (E.semanticScore == null) return;
53
+ let e = Math.max(0, Math.min(1, E.semanticScore));
54
+ return {
55
+ pct: e,
56
+ label: `${(e * 100).toFixed(0)}%`,
57
+ color: e >= .5 ? "bg-green-500/80" : e >= .25 ? "bg-yellow-500/80" : "bg-red-400/80"
58
+ };
59
+ }), H = u(() => F.value ? S(F.value, E.event, "card", E.segIndex) : null), ct = u(() => {
60
+ let e = E.segIndex ?? H.value?.segIndex;
61
+ return e === void 0 ? void 0 : E.event.segments?.[e];
62
+ }), lt = u(() => H.value?.url), ut = u(() => H.value?.label), dt = u(() => H.value?.type ?? E.event.types[0] ?? "motion"), ft = u(() => {
63
+ if (E.hideSegmentBadge) return;
64
+ let e = E.event.segments?.length ?? 0;
65
+ return E.segIndex !== void 0 && e > 1 ? `${E.segIndex + 1}/${e}` : void 0;
66
+ }), U = u(() => {
67
+ let e = F.value, t = H.value?.url;
68
+ if (!e || !t) return [];
69
+ let n = [{
70
+ url: t,
71
+ label: H.value?.label,
72
+ type: dt.value,
73
+ crop: !1
74
+ }];
75
+ for (let t of ye(e, E.segIndex)) n.some((e) => e.url === t.url) || n.push({
76
+ url: t.url,
77
+ label: t.label,
78
+ type: t.type,
79
+ crop: !0
80
+ });
81
+ if (E.segIndex === void 0) for (let t of Object.keys(e.cards ?? e.strips ?? {}).sort((e, t) => Number(e) - Number(t))) {
82
+ let r = ae(e.cards?.[t] ?? e.strips?.[t]);
83
+ if (!r || n.some((e) => e.url === r)) continue;
84
+ let i = ie(E.event, t);
85
+ n.push({
86
+ url: r,
87
+ label: i,
88
+ type: i,
89
+ crop: !1
90
+ });
91
+ }
92
+ return n.length > 1 ? n : [];
93
+ }), pt = u(() => U.value.length > 1), W = u(() => U.value.length ? Math.min(R.value, U.value.length - 1) : 0), G = u(() => pt.value ? U.value[W.value] : void 0), mt = u(() => !!G.value?.crop), K = u(() => G.value?.url ?? lt.value), ht = u(() => G.value?.label ?? ut.value), q = u(() => {
94
+ let e = ct.value;
95
+ return (e ? w(E.event, e) : [...new Set(E.event.types)]).filter((e) => e !== "motion" && e !== "audio");
96
+ }), gt = u(() => E.cameraName ?? E.event.cameraId), J = u(() => U.value.map((e) => ({
97
+ url: e.url,
98
+ type: e.type
99
+ }))), _t = u(() => q.value.slice(0, Y.value.icons)), Y = u(() => {
100
+ let e = ot.value;
101
+ if (!e) return {
102
+ icons: 2,
103
+ tiles: 2
104
+ };
105
+ let t = e - Ze;
106
+ E.selectionMode && (t -= Xe);
107
+ let n = J.value.length > 0 ? 52 : 0, r = xt(q.value.length, Math.max(0, t - n), qe), i = q.value.length > 0 ? Math.max(1, r) : 0, a = i * qe + (i < q.value.length ? Ye : 0);
108
+ return {
109
+ icons: i,
110
+ tiles: xt(J.value.length, Math.max(0, t - a), Je)
111
+ };
112
+ }), X = u(() => q.value.slice(Y.value.icons)), vt = u(() => J.value.slice(0, Y.value.tiles)), Z = u(() => J.value.length - Y.value.tiles), yt = u(() => {
113
+ let e = E.segIndex === void 0 ? void 0 : E.event.segments?.[E.segIndex]?.firstSeen, t = new Date(e ?? E.event.thumbnailAt ?? E.event.startTime), n = /* @__PURE__ */ new Date(), r = t.toDateString() === n.toDateString(), i = t.toLocaleTimeString([], {
114
+ hour: "2-digit",
115
+ minute: "2-digit"
116
+ });
117
+ return r ? i : `${t.toLocaleDateString([], {
118
+ month: "short",
119
+ day: "numeric"
120
+ })} ${i}`;
121
+ }), bt = u(() => !!(et.value && E.event.endTime && E.event.hasRecording !== !1)), Q = u(() => M ? N.value ? O("views.recordings.no_preview") : P.value ? M.status.value === "unavailable" ? O("views.recordings.no_preview") : M.status.value === "playing" && M.previewTimeMs.value ? wt(M.previewTimeMs.value) : "" : "" : "");
122
+ function xt(e, t, n) {
123
+ return e === 0 || t < n ? 0 : e * n <= t ? e : Math.max(0, Math.floor((t - Ye) / n));
124
+ }
125
+ function St(e) {
126
+ let t = U.value.length;
127
+ t && ($(), R.value = (W.value + e + t) % t);
128
+ }
129
+ function Ct(e, t) {
130
+ pt.value && (t.stopPropagation(), $(), R.value = e);
131
+ }
132
+ function $() {
133
+ N.value = !1, !(!M || !P.value) && (P.value = !1, M.onHoverEnd());
134
+ }
135
+ function wt(e) {
136
+ let t = new Date(e);
137
+ return `${String(t.getHours()).padStart(2, "0")}:${String(t.getMinutes()).padStart(2, "0")}:${String(t.getSeconds()).padStart(2, "0")}`;
138
+ }
139
+ function Tt() {
140
+ if (!M || W.value > 0) return;
141
+ let e = rt.value;
142
+ if (!e) return;
143
+ let t = b(E.event);
144
+ if (E.event.hasRecording === !1 || !t) {
145
+ N.value = !0;
146
+ return;
147
+ }
148
+ P.value = !0, M.onHoverStart(e, E.event.cameraId, E.event.id, E.event.startTime, t, E.camera?.zones?.privacy, oe(E.event));
149
+ }
150
+ function Et() {
151
+ at.blocksMouseEnter() || Tt();
152
+ }
153
+ function Dt() {
154
+ N.value = !1, M && (P.value = !1, M.onHoverEnd());
155
+ }
156
+ async function Ot(e = 2) {
157
+ let t = await E.loadThumbnails(E.event.id, E.event.startTime);
158
+ if (t) {
159
+ F.value = t;
160
+ let e = S(t, E.event, "card");
161
+ I.value = e.url ? "loaded" : "empty";
162
+ } else if (e > 0) return await new Promise((e) => setTimeout(e, 500)), Ot(e - 1);
163
+ else I.value = E.event.state === "active" ? "loading" : "empty";
164
+ }
165
+ function kt() {
166
+ if (!at.consumesClick()) {
167
+ if (E.selectionMode) {
168
+ D("select");
169
+ return;
170
+ }
171
+ D("scrollToEvent", ct.value?.firstSeen ?? C(E.event));
172
+ }
173
+ }
174
+ async function At() {
175
+ let e = !B.value;
176
+ z.value = e;
177
+ try {
178
+ await k.setEventFavorite(E.event.id, e);
179
+ } catch (e) {
180
+ z.value = null, $e.add({
181
+ severity: "error",
182
+ detail: T(e),
183
+ life: 5e3
184
+ });
185
+ }
186
+ }
187
+ async function jt() {
188
+ if (L.value) return;
189
+ let e = et.value;
190
+ if (!(!e?.nvrExport || !E.event.endTime)) {
191
+ L.value = !0;
192
+ try {
193
+ let t = await e.nvrExport(E.event.cameraId, E.event.startTime * 1e3, E.event.endTime * 1e3);
194
+ await me({
195
+ url: t.url,
196
+ filename: t.filename
197
+ });
198
+ } catch (e) {
199
+ Qe.error("Download failed:", e), $e.add({
200
+ severity: "error",
201
+ summary: O("views.recordings.download_failed"),
202
+ detail: T(e),
203
+ life: 5e3
204
+ });
205
+ } finally {
206
+ L.value = !1;
207
+ }
208
+ }
209
+ }
210
+ return te(() => k.storeVersion.value, () => {
211
+ let e = k.getCachedThumbnails(E.event.id);
212
+ e && (F.value = e, S(e, E.event, "card").url && (I.value = "loaded"));
213
+ }), ne(() => {
214
+ tt === "loading" && Ot();
215
+ }), (n, u) => {
216
+ let te = Se, m = ce, v = ve, ne = ue, ie = le, b = ke, x = xe, ae = _e, oe = he, S = ge, C = fe, se = Ce, w = re;
217
+ return i(), f("div", {
218
+ ref_key: "rootRef",
219
+ ref: nt,
220
+ class: "recording-card relative group cursor-pointer",
221
+ onClick: kt,
222
+ onMouseenter: Et,
223
+ onMouseleave: Dt
224
+ }, [h("div", {
225
+ class: o(["bg-neutral-900 w-full rounded-xl overflow-hidden relative transition-shadow duration-200", { "ring-2 ring-inset ring-primary/70": _.siblingActive }]),
226
+ style: { "aspect-ratio": "1/1" }
227
+ }, [
228
+ l(I) === "loading" ? (i(), s(te, {
229
+ key: 0,
230
+ width: "100%",
231
+ height: "100%",
232
+ class: "rounded-xl"
233
+ })) : l(K) ? (i(), f(p, { key: 1 }, [l(mt) ? (i(), f("img", {
234
+ key: 0,
235
+ src: l(K),
236
+ "aria-hidden": "true",
237
+ class: "absolute inset-0 w-full h-full object-cover blur-xl scale-110 opacity-50 pointer-events-none"
238
+ }, null, 8, Ae)) : c("", !0), y(m, {
239
+ src: l(K),
240
+ alt: l(gt),
241
+ class: "pointer-events-none w-full h-full transition-transform duration-300 group-hover:scale-105",
242
+ "image-style": { objectFit: l(mt) ? "contain" : "cover" },
243
+ "image-container-class": "w-full h-full"
244
+ }, null, 8, [
245
+ "src",
246
+ "alt",
247
+ "image-style"
248
+ ])], 64)) : (i(), f("div", je, [(i(), s(ee(l(A)[l(dt)] ?? l(A).motion), { class: "w-10 h-10 text-white/20" }))])),
249
+ l(M) ? g((i(), f("canvas", {
250
+ key: 3,
251
+ ref_key: "previewCanvasRef",
252
+ ref: rt,
253
+ class: "absolute inset-0 w-full h-full object-cover pointer-events-none z-[1]"
254
+ }, null, 512)), [[e, l(P)]]) : c("", !0),
255
+ u[3] ||= h("div", { class: "absolute inset-0 bg-transparent group-hover:bg-black/30 pointer-events-none transition-colors duration-200 z-[2]" }, null, -1),
256
+ h("div", Me, [h("div", Ne, [
257
+ l(st) ? (i(), s(v, {
258
+ key: 0,
259
+ position: "inline"
260
+ })) : c("", !0),
261
+ h("p", Pe, a(l(gt)), 1),
262
+ l(ft) ? (i(), f("span", Fe, a(l(ft)), 1)) : c("", !0),
263
+ l(V) ? (i(), f("span", {
264
+ key: 2,
265
+ class: o(["text-[10px] font-bold text-white px-1.5 py-0.5 rounded-md shrink-0", l(V).color])
266
+ }, a(l(V).label), 3)) : c("", !0),
267
+ _.selectionMode ? c("", !0) : g((i(), s(b, {
268
+ key: 3,
269
+ rounded: "",
270
+ text: "",
271
+ severity: "secondary",
272
+ class: "!w-5 !h-5 !p-0 shrink-0 bg-black/60 hover:!bg-black/80",
273
+ onClick: t(At, ["stop"]),
274
+ onMouseenter: $
275
+ }, {
276
+ icon: d(() => [l(B) ? (i(), s(ne, {
277
+ key: 0,
278
+ class: "w-3 h-3 text-yellow-400"
279
+ })) : (i(), s(ie, {
280
+ key: 1,
281
+ class: "w-3 h-3 text-white"
282
+ }))]),
283
+ _: 1
284
+ })), [[
285
+ w,
286
+ { value: l(B) ? n.$t("views.recordings.unfavorite") : n.$t("views.recordings.favorite") },
287
+ void 0,
288
+ { left: !0 }
289
+ ]]),
290
+ _.camera && !_.selectionMode ? g((i(), s(b, {
291
+ key: 4,
292
+ rounded: "",
293
+ text: "",
294
+ severity: "secondary",
295
+ class: "!w-5 !h-5 !p-0 shrink-0 bg-black/60 hover:!bg-black/80",
296
+ onClick: u[0] ||= t((e) => D("openTrace"), ["stop"]),
297
+ onMouseenter: $
298
+ }, {
299
+ icon: d(() => [y(x, { class: "w-3 h-3 text-white" })]),
300
+ _: 1
301
+ })), [[
302
+ w,
303
+ { value: n.$t("views.recordings.open_trace") },
304
+ void 0,
305
+ { left: !0 }
306
+ ]]) : c("", !0),
307
+ l(bt) && !_.selectionMode ? g((i(), s(b, {
308
+ key: 5,
309
+ rounded: "",
310
+ text: "",
311
+ severity: "secondary",
312
+ loading: l(L),
313
+ class: "!w-5 !h-5 !p-0 shrink-0 bg-black/60 hover:!bg-black/80",
314
+ onClick: t(jt, ["stop"]),
315
+ onMouseenter: $
316
+ }, {
317
+ icon: d(() => [y(ae, { class: "w-3 h-3 text-white" })]),
318
+ _: 1
319
+ }, 8, ["loading"])), [[
320
+ w,
321
+ { value: n.$t("views.recordings.download") },
322
+ void 0,
323
+ { left: !0 }
324
+ ]]) : c("", !0)
325
+ ]), h("p", Ie, a(l(yt)), 1)]),
326
+ l(U).length > 1 ? (i(), f(p, { key: 4 }, [y(b, {
327
+ rounded: "",
328
+ text: "",
329
+ severity: "secondary",
330
+ class: "carousel-nav !absolute left-1 top-1/2 -translate-y-1/2 z-[3] !w-7 !h-7 !p-0 bg-black/40 hover:!bg-black/60 transition-opacity duration-200",
331
+ "aria-label": n.$t("views.recordings.prev_image"),
332
+ onClick: u[1] ||= t((e) => St(-1), ["stop"]),
333
+ onMouseenter: $
334
+ }, {
335
+ icon: d(() => [y(oe, { class: "w-5 h-5 text-white" })]),
336
+ _: 1
337
+ }, 8, ["aria-label"]), y(b, {
338
+ rounded: "",
339
+ text: "",
340
+ severity: "secondary",
341
+ class: "carousel-nav !absolute right-1 top-1/2 -translate-y-1/2 z-[3] !w-7 !h-7 !p-0 bg-black/40 hover:!bg-black/60 transition-opacity duration-200",
342
+ "aria-label": n.$t("views.recordings.next_image"),
343
+ onClick: u[2] ||= t((e) => St(1), ["stop"]),
344
+ onMouseenter: $
345
+ }, {
346
+ icon: d(() => [y(S, { class: "w-5 h-5 text-white" })]),
347
+ _: 1
348
+ }, 8, ["aria-label"])], 64)) : c("", !0),
349
+ l(ht) ? (i(), f("div", {
350
+ key: 5,
351
+ class: o(["absolute left-1/2 -translate-x-1/2 z-[3] max-w-[85%] pointer-events-none transition-all duration-200", l(Q) ? "bottom-16" : "bottom-10"])
352
+ }, [h("span", Le, a(l(ht)), 1)], 2)) : c("", !0),
353
+ h("div", {
354
+ ref_key: "footerRef",
355
+ ref: it,
356
+ class: "absolute bottom-2 left-2 right-2 flex items-center justify-between gap-2 z-[3]"
357
+ }, [h("div", Re, [
358
+ _.selectionMode ? (i(), f("div", {
359
+ key: 0,
360
+ class: o(["w-6 h-6 rounded-full border-2 flex items-center justify-center transition-colors shrink-0", _.selected ? "bg-primary border-primary" : "bg-black/40 border-white/80"])
361
+ }, [_.selected ? (i(), s(C, {
362
+ key: 0,
363
+ class: "w-4 h-4 text-white"
364
+ })) : c("", !0)], 2)) : c("", !0),
365
+ (i(!0), f(p, null, r(l(_t), (e) => (i(), f("div", {
366
+ key: e,
367
+ class: "flex items-center justify-center w-5 h-5 rounded-md bg-black/60 shrink-0"
368
+ }, [(i(), s(ee(l(A)[e] ?? l(A).motion), { class: "w-3 h-3 text-white/80" }))]))), 128)),
369
+ l(X).length > 0 ? (i(), f("span", {
370
+ key: 1,
371
+ title: l(X).join(", "),
372
+ class: "text-[10px] text-white/60 font-medium shrink-0"
373
+ }, " +" + a(l(X).length), 9, ze)) : c("", !0)
374
+ ]), l(vt).length > 0 || l(Z) > 0 ? (i(), f("div", Be, [(i(!0), f(p, null, r(l(vt), (e, t) => (i(), f("div", {
375
+ key: t,
376
+ class: o(["w-7 h-7 rounded overflow-hidden border bg-neutral-800 cursor-pointer", t === l(W) ? "border-primary/80" : "border-white/20"]),
377
+ onClick: (e) => Ct(t, e)
378
+ }, [h("img", {
379
+ src: e.url,
380
+ alt: e.type,
381
+ decoding: "async",
382
+ loading: "lazy",
383
+ class: "w-full h-full object-cover"
384
+ }, null, 8, He)], 10, Ve))), 128)), l(Z) > 0 ? (i(), f("span", Ue, "+" + a(l(Z)), 1)) : c("", !0)])) : c("", !0)], 512),
385
+ l(M) && l(P) && l(M).isLoading.value ? (i(), f("div", We, [y(se, {
386
+ class: "w-[28px] h-[28px] m-0",
387
+ "stroke-width": "6"
388
+ })])) : c("", !0),
389
+ l(Q) ? (i(), f("div", Ge, [h("span", Ke, a(l(Q)), 1)])) : c("", !0)
390
+ ], 2)], 544);
391
+ };
392
+ }
393
+ }), [["__scopeId", "data-v-137049b6"]]);
394
+ //#endregion
395
+ //#region src/components/CuiRecordings/ungrouped.ts
396
+ function D(e) {
397
+ if (e.episode) return e.episode.endTime;
398
+ if (e.segIndex !== void 0) {
399
+ let t = e.event.segments?.[e.segIndex];
400
+ if (t) return t.firstSeen;
401
+ }
402
+ return e.event.thumbnailAt ?? e.event.startTime;
403
+ }
404
+ function Qe(e) {
405
+ let t = [];
406
+ for (let n of e) {
407
+ let e = n.segments ?? [];
408
+ if (e.length <= 1) {
409
+ t.push({
410
+ event: n,
411
+ key: n.id
412
+ });
413
+ continue;
414
+ }
415
+ e.forEach((e, r) => {
416
+ e && t.push({
417
+ event: n,
418
+ key: `${n.id}:seg:${r}`,
419
+ segIndex: r
420
+ });
421
+ });
422
+ }
423
+ return t.sort((e, t) => D(t) - D(e)), t;
424
+ }
425
+ //#endregion
426
+ export { D as n, E as r, Qe as t };