@camera.ui/server 2.2.5 → 2.2.6

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 (379) hide show
  1. package/dist/interface/assets/{404-CiOxoqnT.js → 404-BLVuKvLk.js} +1 -1
  2. package/dist/interface/assets/{About-DWOlfWEm.js → About-C-AJ0jfI.js} +1 -1
  3. package/dist/interface/assets/Assistant-BJKGIvVo.js +1 -0
  4. package/dist/interface/assets/{Assistant-CXx7EY1W.css → Assistant-BQ6Ld-bt.css} +1 -1
  5. package/dist/interface/assets/{Automation-BJgwUkUB.js → Automation-C95DzuZb.js} +3 -3
  6. package/dist/interface/assets/{AutomationImport-9GRAndAt.js → AutomationImport-C8VYjDzf.js} +2 -2
  7. package/dist/interface/assets/{AutomationStore-D_HR2Xby.js → AutomationStore-CE4PKRGd.js} +2 -2
  8. package/dist/interface/assets/{AutomationStoreDetail-B9MxV2py.js → AutomationStoreDetail-DavWfjLv.js} +2 -2
  9. package/dist/interface/assets/Automations-BOP_17Ri.js +2 -0
  10. package/dist/interface/assets/Camera-BW9ikKqh.css +1 -0
  11. package/dist/interface/assets/Camera-C5S7eI9a.js +2 -0
  12. package/dist/interface/assets/{CameraConsole-BKPTLSTO.js → CameraConsole-C4AmtcrM.js} +1 -1
  13. package/dist/interface/assets/{Cameras-DcrVCgLy.js → Cameras-DR577Bno.js} +2 -2
  14. package/dist/interface/assets/{Camview-DasO326h.css → Camview-Bri_T7Tq.css} +1 -1
  15. package/dist/interface/assets/Camview-CHxKB41T.js +1 -0
  16. package/dist/interface/assets/{Config-BmEL5EaW.js → Config-BrDDGWpr.js} +1 -1
  17. package/dist/interface/assets/{ConfigActionAssistant-DM4tIhoa.js → ConfigActionAssistant-YtCVI8LZ.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionCameraControl-Deo0eDPS.js → ConfigActionCameraControl-Dg_1zOYt.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionHttp-BxJmoshF.js → ConfigActionHttp-BzwLv2tn.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionImageInput-KrzXFQDm.js → ConfigActionImageInput-CLdY2sV4.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionMqtt-BoYBomRC.js → ConfigActionMqtt-lGqYshl3.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionNotification-CSAOijDt.js → ConfigActionNotification-D5Dj3EoU.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionNotificationControl-BOdyKiOs.js → ConfigActionNotificationControl-Dy5fKamr.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionOutput-CwsPcnd_.js → ConfigActionOutput-DzsQ31L0.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionPlugin-D3wyULpp.js → ConfigActionPlugin-BFrBcXvL.js} +1 -1
  26. package/dist/interface/assets/{ConfigActionSensor-BmeaIxYY.js → ConfigActionSensor-CX8ePlan.js} +1 -1
  27. package/dist/interface/assets/{ConfigActionSnapshot-DbyFKcYr.js → ConfigActionSnapshot-BATLRmh6.js} +1 -1
  28. package/dist/interface/assets/{ConfigActionVariable-cThGJ1Pc.js → ConfigActionVariable-Dgn5jvaR.js} +1 -1
  29. package/dist/interface/assets/{ConfigConditionIfElse-BugkJeXR.js → ConfigConditionIfElse-D5IIBjyk.js} +1 -1
  30. package/dist/interface/assets/{ConfigConditionSensorState-Bf-mMf4E.js → ConfigConditionSensorState-C0JxBWdG.js} +1 -1
  31. package/dist/interface/assets/{ConfigConditionSwitch-DcpFoYET.js → ConfigConditionSwitch-Brlgd0XP.js} +1 -1
  32. package/dist/interface/assets/{ConfigSensorValueInput-CgAI34__.js → ConfigSensorValueInput-CtuH8dCa.js} +1 -1
  33. package/dist/interface/assets/{ConfigTriggerDetection-BWK6gfwM.js → ConfigTriggerDetection-DsL7lLQl.js} +1 -1
  34. package/dist/interface/assets/{ConfigTriggerGeofence-Cm3CU7Tl.js → ConfigTriggerGeofence-CAGIk1_W.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerMqtt-BMFjTAso.js → ConfigTriggerMqtt-B_iFalAQ.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerSensor-DOdJkZRo.js → ConfigTriggerSensor-hYNbLXUu.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerSystem-BFDIbZsE.js → ConfigTriggerSystem-DR1EFpE9.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerWebhook-DDoUEVHb.js → ConfigTriggerWebhook-C-B5GGFH.js} +1 -1
  39. package/dist/interface/assets/{Console-BIj7cIqO.js → Console-cIr6lYux.js} +1 -1
  40. package/dist/interface/assets/CuiAssistantConversation-Bigl43Ph.js +5 -0
  41. package/dist/interface/assets/CuiAssistantConversation-BmshW6Vc.css +1 -0
  42. package/dist/interface/assets/{CuiAutomationRunsDialog-DMUfNcsf.js → CuiAutomationRunsDialog-Ci7SWAml.js} +1 -1
  43. package/dist/interface/assets/{CuiBottomSheet-FwsPnJ3n.js → CuiBottomSheet-C2sM2E3M.js} +1 -1
  44. package/dist/interface/assets/CuiBottomSheet-ViBOgklN.js +1 -0
  45. package/dist/interface/assets/CuiCameraPipCard-wdK7xir-.js +1 -0
  46. package/dist/interface/assets/{CuiCameraRecordings-BeciatDY.js → CuiCameraRecordings-BB7bF67B.js} +1 -1
  47. package/dist/interface/assets/{CuiCameraShares-CSFwIYsg.js → CuiCameraShares-B6jdUBVm.js} +1 -1
  48. package/dist/interface/assets/CuiCameraTable-CHnQFkce.js +1 -0
  49. package/dist/interface/assets/{CuiCameraTable-DBRfGX3I.js → CuiCameraTable-CpBo25Qc.js} +1 -1
  50. package/dist/interface/assets/{CuiChartTable-CtasoxMM.js → CuiChartTable-dIcxGtfl.js} +1 -1
  51. package/dist/interface/assets/{CuiConsole-DQbAafiz.js → CuiConsole-BGptpT6r.js} +1 -1
  52. package/dist/interface/assets/{CuiDataTable-JlD7Agky.js → CuiDataTable-CQmp5mAy.js} +1 -1
  53. package/dist/interface/assets/CuiLightControl-wbZi3fA1.js +1 -0
  54. package/dist/interface/assets/CuiPluginCard-BjIc7It9.js +2 -0
  55. package/dist/interface/assets/{CuiPluginCategoryChip-B2bR5LQa.js → CuiPluginCategoryChip-BtJ_6_gN.js} +1 -1
  56. package/dist/interface/assets/{CuiPluginOAuthButton-DfEjfcY-.js → CuiPluginOAuthButton-Duf35I8K.js} +2 -2
  57. package/dist/interface/assets/{CuiPluginTrustBadge-C6CW6Soh.js → CuiPluginTrustBadge-jxXeRTH2.js} +1 -1
  58. package/dist/interface/assets/{CuiQRCode-DGKBhDib.js → CuiQRCode-BNchrpoB.js} +1 -1
  59. package/dist/interface/assets/{CuiSchema-pAAVh28m.js → CuiSchema-DGTMkVSe.js} +1 -1
  60. package/dist/interface/assets/{CuiTopNavbarItem-ve-3Dsc3.js → CuiTopNavbarItem-CHtLvn53.js} +1 -1
  61. package/dist/interface/assets/Faces-p18jNfXl.js +1 -0
  62. package/dist/interface/assets/FirstSteps-HzaBMDbH.js +1 -0
  63. package/dist/interface/assets/Floorplan-DYyEx7WO.js +1 -0
  64. package/dist/interface/assets/Instances-Dl-6rL5O.js +1 -0
  65. package/dist/interface/assets/{Logs-BhRactvQ.js → Logs-DsJkuQFq.js} +2 -2
  66. package/dist/interface/assets/{Menu-DMCmUVDs.js → Menu-D_woMkjL.js} +1 -1
  67. package/dist/interface/assets/Metrics-l3UwykCM.js +12 -0
  68. package/dist/interface/assets/{OAuthDeviceFlow-BMEwVkIa.js → OAuthDeviceFlow-CXfILAE1.js} +1 -1
  69. package/dist/interface/assets/Plugin-Ldj3HygQ.js +1 -0
  70. package/dist/interface/assets/{PluginConsole-C4Ba_U_1.js → PluginConsole-C96m5zKy.js} +1 -1
  71. package/dist/interface/assets/{PluginDetail-13OWIzdd.js → PluginDetail-CnfaI1vh.js} +2 -2
  72. package/dist/interface/assets/{PluginSchema-DN0cSU8s.js → PluginSchema-u1bqXU29.js} +1 -1
  73. package/dist/interface/assets/{PluginSearch-sPkO8aH3.js → PluginSearch-BiXG3Xk2.js} +2 -2
  74. package/dist/interface/assets/PluginSearch-BuE7we1T.js +1 -0
  75. package/dist/interface/assets/{PluginUpdateProgress-CeWuRp3Z.js → PluginUpdateProgress-BT4lN9HT.js} +1 -1
  76. package/dist/interface/assets/{Plugins-C8yjhxnQ.js → Plugins-Csx6AXaW.js} +1 -1
  77. package/dist/interface/assets/Recordings-BEKAn6QK.css +1 -0
  78. package/dist/interface/assets/Recordings-D0KTY5cI.js +1 -0
  79. package/dist/interface/assets/{SensorEdit-C-yJdJuP.js → SensorEdit-zs-f_o1N.js} +1 -1
  80. package/dist/interface/assets/{SensorHistory-ClAcOgHj.js → SensorHistory-Cet35_RO.js} +1 -1
  81. package/dist/interface/assets/Sensors-BLAoalEt.js +2 -0
  82. package/dist/interface/assets/Settings-C-LCDIbK.js +1 -0
  83. package/dist/interface/assets/SettingsAccount-BsN7jGmo.js +1 -0
  84. package/dist/interface/assets/SettingsAccount-DuVyCSE-.js +1 -0
  85. package/dist/interface/assets/{SettingsAppearance-CJt4xJEW.js → SettingsAppearance-BS4EQNjH.js} +1 -1
  86. package/dist/interface/assets/SettingsAppearance-DQcGbYbV.js +1 -0
  87. package/dist/interface/assets/SettingsAssistant-B0PF3Rdg.css +1 -0
  88. package/dist/interface/assets/SettingsAssistant-DViJklFd.js +1 -0
  89. package/dist/interface/assets/{SettingsBackup-DIJmci05.js → SettingsBackup-DBlV1gej.js} +1 -1
  90. package/dist/interface/assets/{SettingsList-Cb_dLy5T.js → SettingsList-D8eSwbBY.js} +1 -1
  91. package/dist/interface/assets/{SettingsMqtt-LIuCRPT5.js → SettingsMqtt-JoszJJgV.js} +1 -1
  92. package/dist/interface/assets/{SettingsNotifications-CZxqqH_8.js → SettingsNotifications-3veSrxa_.js} +1 -1
  93. package/dist/interface/assets/{SettingsRecordings-BEpwMh-y.js → SettingsRecordings-CLz9Zp47.js} +1 -1
  94. package/dist/interface/assets/{SettingsRemote-DRt-N_yA.js → SettingsRemote-DUyl8k7I.js} +2 -2
  95. package/dist/interface/assets/{SettingsSystem-Cncdpx8T.js → SettingsSystem-txTFGomQ.js} +2 -2
  96. package/dist/interface/assets/{SettingsUsers-DZkz8WlI.js → SettingsUsers-CUp6vQPc.js} +1 -1
  97. package/dist/interface/assets/{Terminal-U4yfJN3O.js → Terminal-hln2UuSR.js} +2 -2
  98. package/dist/interface/assets/Training-D6lhvUf-.js +1 -0
  99. package/dist/interface/assets/Updates-BwSWt9w7.js +2 -0
  100. package/dist/interface/assets/{VariableInput-PVsqGYW0.js → VariableInput-183LygmK.js} +1 -1
  101. package/dist/interface/assets/{VersionsHandler-Df7dhddp.js → VersionsHandler-DkbkcypK.js} +1 -1
  102. package/dist/interface/assets/{VirtualSensorCreate-FTKANjd-.js → VirtualSensorCreate-Bn4tgdxA.js} +1 -1
  103. package/dist/interface/assets/Workers-B6b15izn.js +2 -0
  104. package/dist/interface/assets/api-C9mnOxie.js +4 -0
  105. package/dist/interface/assets/api-Cj9a6qPu.css +2 -0
  106. package/dist/interface/assets/{api-DpqXhwcx.js → api-h4HRB3ef.js} +1 -1
  107. package/dist/interface/assets/{assistant-Lz3mFLDo.js → assistant-4hYyIu6D.js} +1 -1
  108. package/dist/interface/assets/{auth-L7_5vsJs.js → auth-DFesRtwI.js} +1 -1
  109. package/dist/interface/assets/{automations-D1XFFSrm.js → automations-D2bnX8uw.js} +1 -1
  110. package/dist/interface/assets/{cameraSources-DEGJDtmK.js → cameraSources-DmVZWs4-.js} +1 -1
  111. package/dist/interface/assets/cloudHandoff-Ba98bzeq.js +1 -0
  112. package/dist/interface/assets/{config-CVqy37fG.js → config-DDaCrMSU.js} +1 -1
  113. package/dist/interface/assets/esm-Bn9gXwX4.js +1 -0
  114. package/dist/interface/assets/esm-BzM6y2-F.js +1 -0
  115. package/dist/interface/assets/esm-CP3JWrtj.js +1 -0
  116. package/dist/interface/assets/esm-CjAXkqCf.js +1 -0
  117. package/dist/interface/assets/esm-Cqxk-j1S.js +1 -0
  118. package/dist/interface/assets/esm-DFHd3JNU.js +1 -0
  119. package/dist/interface/assets/esm-DfMLJtug.js +1 -0
  120. package/dist/interface/assets/esm-DhDrpq7a.js +1 -0
  121. package/dist/interface/assets/esm-DvhM-SOd.js +1 -0
  122. package/dist/interface/assets/esm-G63bqygQ.js +1 -0
  123. package/dist/interface/assets/esm-Gn-Y59hU.js +1 -0
  124. package/dist/interface/assets/esm-KJSOz2vj.js +1 -0
  125. package/dist/interface/assets/esm-Ryfc94Tm.js +1 -0
  126. package/dist/interface/assets/esm-rSfI5Poy.js +1 -0
  127. package/dist/interface/assets/{flowSchema-CppNBDy1.js → flowSchema-YJtAu9gB.js} +1 -1
  128. package/dist/interface/assets/main-C796FmqQ.js +3 -0
  129. package/dist/interface/assets/{main-Bo0Lb1y2.css → main-DVa5U7UB.css} +1 -1
  130. package/dist/interface/assets/{mqtt-BENV9Fx4.js → mqtt-DGBPptzB.js} +1 -1
  131. package/dist/interface/assets/native-CZJE8bTs.js +1 -0
  132. package/dist/interface/assets/native-DKZwialB.js +1 -0
  133. package/dist/interface/assets/{notifications-By40oPng.js → notifications-5yeK345h.js} +1 -1
  134. package/dist/interface/assets/plugin-DSEMkqaK.js +1 -0
  135. package/dist/interface/assets/{plugins-09rEDbMz.js → plugins-BTOdE_zv.js} +1 -1
  136. package/dist/interface/assets/{rooms-LBxn-Uuu.js → rooms-BCdm6IAx.js} +1 -1
  137. package/dist/interface/assets/{sensorIcons-Csu5s0uk.js → sensorIcons-5Ynqwo3e.js} +1 -1
  138. package/dist/interface/assets/{sensorSlots-CtbKmsGG.js → sensorSlots-BF70tpV7.js} +1 -1
  139. package/dist/interface/assets/{sensors-CbzNs18A.js → sensors-CeFEEz8r.js} +1 -1
  140. package/dist/interface/assets/{server-Btp5KILd.js → server-bhW2Mw4D.js} +1 -1
  141. package/dist/interface/assets/{theme-GhzGwpqd.js → theme-DF_XA58O.js} +1 -1
  142. package/dist/interface/assets/{types-D8QWPhe-.js → types-ArGM5-5O.js} +1 -1
  143. package/dist/interface/assets/{types-BAwhu9iv.js → types-BcAxmlqC.js} +1 -1
  144. package/dist/interface/assets/{ungrouped-BMk56E3L.js → ungrouped-CkIlDUwl.js} +1 -1
  145. package/dist/interface/assets/{updates-CGo0T4sn.js → updates-D3x_kPMM.js} +1 -1
  146. package/dist/interface/assets/{useAppVersion-CJlexqyz.js → useAppVersion-Dcvu95bZ.js} +1 -1
  147. package/dist/interface/assets/{useBackupRestore-_s8vS5WF.js → useBackupRestore-xp5KhKVn.js} +1 -1
  148. package/dist/interface/assets/{useCameraOptions-CFISVNgk.js → useCameraOptions-8I4MTDgj.js} +1 -1
  149. package/dist/interface/assets/useKeyboardInset-C0Lp0UcX.js +1 -0
  150. package/dist/interface/assets/{useLogsSocket-D-ndWAg0.js → useLogsSocket-bpOiLgWT.js} +1 -1
  151. package/dist/interface/assets/{useNavLayout-CG0X_3kt.js → useNavLayout-Cjf6Da2u.js} +1 -1
  152. package/dist/interface/assets/{usePluginUpdates-nW_dt66E.js → usePluginUpdates-bOMj-IvL.js} +1 -1
  153. package/dist/interface/assets/{usePushRegistration-DCqOAxR4.js → usePushRegistration-HOvLuUVP.js} +2 -2
  154. package/dist/interface/assets/{useServerRestart-CxJGxAcU.js → useServerRestart-CQN4cdHJ.js} +1 -1
  155. package/dist/interface/assets/{useStreamStatus-CXb1HbAq.js → useStreamStatus-Da7c2Wme.js} +1 -1
  156. package/dist/interface/assets/{useTabSwipe-DHb8__wU.js → useTabSwipe-fFuyJJBQ.js} +1 -1
  157. package/dist/interface/assets/{useUpdateChannel-BR4PMh1R.js → useUpdateChannel-Ca1RX32u.js} +1 -1
  158. package/dist/interface/assets/{useUpdatesSocket-DKDRZhvc.js → useUpdatesSocket-DHZNpLQX.js} +1 -1
  159. package/dist/interface/assets/{useUserOptions-lyc4WJ4L.js → useUserOptions-BQdOB-Dp.js} +1 -1
  160. package/dist/interface/assets/{vendor-capacitor-f9ShAzys.js → vendor-capacitor-Bs_WzL0Q.js} +2 -2
  161. package/dist/interface/assets/web-BDNQnMmA.js +1 -0
  162. package/dist/interface/assets/web-BhJykCtq.js +1 -0
  163. package/dist/interface/assets/web-BjKL51lK-wWFeZlLg.js +1 -0
  164. package/dist/interface/assets/web-C7nJwIOa.js +1 -0
  165. package/dist/interface/assets/web-CGJsJQDb.js +1 -0
  166. package/dist/interface/assets/web-CJwASxrl.js +1 -0
  167. package/dist/interface/assets/web-CLe0L31Y.js +1 -0
  168. package/dist/interface/assets/web-DEv1hAn1.js +1 -0
  169. package/dist/interface/assets/web-DaeQvsXT.js +1 -0
  170. package/dist/interface/assets/web-H3-wNunW.js +1 -0
  171. package/dist/interface/assets/web-LCdyqJq1.js +1 -0
  172. package/dist/interface/assets/web-XZWYTK65.js +1 -0
  173. package/dist/interface/assets/web-rU5hlxxW.js +1 -0
  174. package/dist/interface/ha/{404-B2T8Gktj.js → 404-C0mWQGWl.js} +1 -1
  175. package/dist/interface/ha/{About-CrTKzU9_.js → About-ByE7XErJ.js} +3 -3
  176. package/dist/interface/ha/{Assistant-BDHJmYx_.js → Assistant-Z3FTR868.js} +2264 -2133
  177. package/dist/interface/ha/{Automation-Czo5EsAg.js → Automation-COQqTFNw.js} +170 -170
  178. package/dist/interface/ha/{AutomationImport-CuFAQbiX.js → AutomationImport-ueWqMBX9.js} +6 -6
  179. package/dist/interface/ha/{AutomationStore-D-6x0JIt.js → AutomationStore-DBO4aZqy.js} +73 -73
  180. package/dist/interface/ha/{AutomationStoreDetail-Dad4q1MN.js → AutomationStoreDetail-DMnYu7hf.js} +6 -6
  181. package/dist/interface/ha/{Automations-C-oGM5SR.js → Automations-CMdbidc0.js} +70 -70
  182. package/dist/interface/ha/Camera-C28q_3pu.js +657 -0
  183. package/dist/interface/ha/{CameraConsole-hRGwbjsD.js → CameraConsole-oMNZfKE6.js} +3 -3
  184. package/dist/interface/ha/{Cameras-Bk5TFXA8.js → Cameras-CsqrLx97.js} +182 -182
  185. package/dist/interface/ha/{Camview-CsKKqxxY.js → Camview-Br0LUakz.js} +542 -542
  186. package/dist/interface/ha/{Config-Vl4-K3A_.js → Config-Y5eUNSW7.js} +110 -110
  187. package/dist/interface/ha/{ConfigActionAssistant-OWUX8glZ.js → ConfigActionAssistant-hl-6ZACj.js} +4 -4
  188. package/dist/interface/ha/{ConfigActionCameraControl-DEaOot8w.js → ConfigActionCameraControl-DnXlVFWD.js} +3 -3
  189. package/dist/interface/ha/{ConfigActionHttp-CSr2BpKL.js → ConfigActionHttp-BkpkMmRd.js} +2 -2
  190. package/dist/interface/ha/{ConfigActionImageInput--O8Tyca-.js → ConfigActionImageInput-Dp78_QS_.js} +1 -1
  191. package/dist/interface/ha/{ConfigActionMqtt-DQJ4-gs2.js → ConfigActionMqtt-DA_UWb5j.js} +4 -4
  192. package/dist/interface/ha/{ConfigActionNotification-wR8CCA_T.js → ConfigActionNotification-CQ4Ses3a.js} +3 -3
  193. package/dist/interface/ha/{ConfigActionNotificationControl-DNMrHwPz.js → ConfigActionNotificationControl-Cb5PNGz-.js} +2 -2
  194. package/dist/interface/ha/{ConfigActionOutput-C-LVFxFP.js → ConfigActionOutput-DLuNHwRb.js} +1 -1
  195. package/dist/interface/ha/{ConfigActionPlugin-BCREAkNo.js → ConfigActionPlugin-ChKFCNaj.js} +4 -4
  196. package/dist/interface/ha/{ConfigActionSensor-D48CQ6qR.js → ConfigActionSensor-DOutFalW.js} +5 -5
  197. package/dist/interface/ha/{ConfigActionSnapshot-DpDy88Mg.js → ConfigActionSnapshot-GWgY6YIN.js} +2 -2
  198. package/dist/interface/ha/{ConfigActionVariable-D9BxmwvB.js → ConfigActionVariable-bu-9VYTG.js} +1 -1
  199. package/dist/interface/ha/{ConfigConditionIfElse-CW42tQFY.js → ConfigConditionIfElse-iNp8tlZV.js} +3 -3
  200. package/dist/interface/ha/{ConfigConditionSensorState-BZpij7kB.js → ConfigConditionSensorState-Dn7kcHpJ.js} +4 -4
  201. package/dist/interface/ha/{ConfigConditionSwitch-DlTuJ9Sf.js → ConfigConditionSwitch-DaUlDgo0.js} +4 -4
  202. package/dist/interface/ha/{ConfigSensorValueInput-2QLHESlE.js → ConfigSensorValueInput-D6m6suqJ.js} +7 -7
  203. package/dist/interface/ha/{ConfigTriggerDetection-DPmUkmUJ.js → ConfigTriggerDetection-C5B_DC_L.js} +11 -11
  204. package/dist/interface/ha/{ConfigTriggerGeofence--T9OXhGl.js → ConfigTriggerGeofence-B4WVNcK5.js} +5 -5
  205. package/dist/interface/ha/{ConfigTriggerMqtt-fZn_X6yY.js → ConfigTriggerMqtt-wnMfk_Un.js} +1 -1
  206. package/dist/interface/ha/{ConfigTriggerSensor-_3O6iBFX.js → ConfigTriggerSensor-xFpI5KPu.js} +1 -1
  207. package/dist/interface/ha/{ConfigTriggerSystem-CC9lqi8Q.js → ConfigTriggerSystem-YI9WYYVM.js} +2 -2
  208. package/dist/interface/ha/{ConfigTriggerWebhook-BuBcgXqf.js → ConfigTriggerWebhook-58c2KgUe.js} +2 -2
  209. package/dist/interface/ha/{Console-DNc49UEt.js → Console-Coiqh32K.js} +4 -4
  210. package/dist/interface/ha/{CuiAutomationRunsDialog-Dj_iiZht.js → CuiAutomationRunsDialog-CJ2MGfEY.js} +2 -2
  211. package/dist/interface/ha/{CuiBottomSheet-DG7wOV7m.js → CuiBottomSheet-BlG9Pl9j.js} +1 -1
  212. package/dist/interface/ha/{CuiCameraRecordings-BlOZTfQ4.js → CuiCameraRecordings-DLXEB4Q7.js} +12 -12
  213. package/dist/interface/ha/{CuiCameraShares-BOn-mobi.js → CuiCameraShares-BCIeaM6u.js} +6 -6
  214. package/dist/interface/ha/{CuiCameraTable-D50FLiK8.js → CuiCameraTable-PYYC7sOu.js} +2 -2
  215. package/dist/interface/ha/{CuiChartTable-CfcVRvdZ.js → CuiChartTable-FQ2iR5Hd.js} +4 -4
  216. package/dist/interface/ha/{CuiConsole-UpN0Wihm.js → CuiConsole-C77k5q_-.js} +1 -1
  217. package/dist/interface/ha/{CuiDataTable-CpADXKNF.js → CuiDataTable-CIKQLseG.js} +2 -2
  218. package/dist/interface/ha/{CuiPluginCard-CT6ZfL9o.js → CuiPluginCard-DZNXKP_P.js} +42 -42
  219. package/dist/interface/ha/{CuiPluginOAuthButton-BJVKd6Ac.js → CuiPluginOAuthButton-DVf52_Zc.js} +2 -2
  220. package/dist/interface/ha/{CuiPluginTrustBadge-gb9GI24w.js → CuiPluginTrustBadge-CPljYiM8.js} +1 -1
  221. package/dist/interface/ha/{CuiQRCode-DqKDx9zR.js → CuiQRCode-oe8PLnLj.js} +2 -2
  222. package/dist/interface/ha/{CuiSchema-CHeJkx0k.js → CuiSchema-CQy94ZTs.js} +152 -152
  223. package/dist/interface/ha/{CuiTopNavbarItem-CFeI6ZYU.js → CuiTopNavbarItem-D6OHZLQY.js} +1 -1
  224. package/dist/interface/ha/{Faces-CTfvhhCj.js → Faces-DxAPvemO.js} +15 -15
  225. package/dist/interface/ha/{FirstSteps-C-WXJ8IL.js → FirstSteps-ZINTSaeL.js} +30 -30
  226. package/dist/interface/ha/{Floorplan-CDKTYN7B.js → Floorplan-DkbL8ppT.js} +155 -155
  227. package/dist/interface/ha/{Instances-n23yvN3L.js → Instances-totWtqd7.js} +13 -13
  228. package/dist/interface/ha/{Logs-Dfm0BWOQ.js → Logs-CzabIFja.js} +12 -12
  229. package/dist/interface/ha/{Menu-76kvdAEF.js → Menu-DcVBOQfw.js} +15 -15
  230. package/dist/interface/ha/{Metrics-lnivlTWm.js → Metrics-B_SN5hbp.js} +407 -407
  231. package/dist/interface/ha/{OAuthDeviceFlow-4ChaymHu.js → OAuthDeviceFlow-B28TPsTQ.js} +2 -2
  232. package/dist/interface/ha/{Plugin-BV8YA8aN.js → Plugin-B2PbbB8d.js} +208 -208
  233. package/dist/interface/ha/{PluginConsole-csf1Km7f.js → PluginConsole-_KeG4FvO.js} +4 -4
  234. package/dist/interface/ha/{PluginDetail-DTff6cbA.js → PluginDetail-GK_Fx14e.js} +7 -7
  235. package/dist/interface/ha/{PluginSearch-CdjxmFPN.js → PluginSearch-qSy4aqAW.js} +96 -96
  236. package/dist/interface/ha/{PluginUpdateProgress-ClyF4pbA.js → PluginUpdateProgress-C4Q2j6VO.js} +3 -3
  237. package/dist/interface/ha/{Plugins-_xOrqP36.js → Plugins-D0tvZHie.js} +54 -54
  238. package/dist/interface/ha/{Recordings-dTZv0pkp.js → Recordings-CpxJYaAa.js} +303 -307
  239. package/dist/interface/ha/{SensorEdit-DDRkZjmm.js → SensorEdit-8KtqLXEu.js} +377 -377
  240. package/dist/interface/ha/{SensorHistory-DSGlRITr.js → SensorHistory-CPTTsdjM.js} +2 -2
  241. package/dist/interface/ha/{Sensors-DjhGRUzM.js → Sensors-DJt_Hnn2.js} +102 -102
  242. package/dist/interface/ha/{Settings-DYuvz4de.js → Settings-B-OdG5pG.js} +10 -10
  243. package/dist/interface/ha/{SettingsAccount-DQAo8SnK.js → SettingsAccount-Ba2-2Lbi.js} +233 -233
  244. package/dist/interface/ha/{SettingsAppearance-_tbhpUA0.js → SettingsAppearance-D56HjSuQ.js} +7 -7
  245. package/dist/interface/ha/{SettingsAssistant-DSf-dYuD.js → SettingsAssistant-DglU0auc.js} +666 -621
  246. package/dist/interface/ha/{SettingsBackup-wLOa7xtw.js → SettingsBackup-DZx4McDz.js} +8 -8
  247. package/dist/interface/ha/{SettingsList-CYujivw5.js → SettingsList-D9nIGkbE.js} +4 -4
  248. package/dist/interface/ha/{SettingsMqtt-DbxJ-h3J.js → SettingsMqtt-BOszh--k.js} +180 -180
  249. package/dist/interface/ha/{SettingsNotifications-DO2-KJvq.js → SettingsNotifications-DBVpZfp0.js} +3 -3
  250. package/dist/interface/ha/{SettingsRecordings-C47i1UhI.js → SettingsRecordings-D3oJnizu.js} +3 -3
  251. package/dist/interface/ha/{SettingsRemote-BPvb-KLI.js → SettingsRemote-BOotvcOT.js} +54 -54
  252. package/dist/interface/ha/{SettingsSystem-BJPrv9JE.js → SettingsSystem-Bg11qoQX.js} +9 -9
  253. package/dist/interface/ha/{SettingsUsers-CcpCz6Y1.js → SettingsUsers-KpLs9Jnh.js} +25 -25
  254. package/dist/interface/ha/{Terminal-DT7-WNH1.js → Terminal-D6opTHYI.js} +168 -173
  255. package/dist/interface/ha/{Training-CqGBf8k1.js → Training-OB2KOQ7L.js} +537 -537
  256. package/dist/interface/ha/{Updates-CgdrqX6R.js → Updates-C_OvXJjd.js} +14 -14
  257. package/dist/interface/ha/{VariableInput-DOzSFgxT.js → VariableInput-CfaDp67S.js} +1 -1
  258. package/dist/interface/ha/{VersionsHandler-ItklhE2t.js → VersionsHandler-D1FVeYUZ.js} +10 -10
  259. package/dist/interface/ha/{VirtualSensorCreate-DbS3VqHC.js → VirtualSensorCreate-DJIgMVrt.js} +7 -7
  260. package/dist/interface/ha/{Workers-6PU7yUv1.js → Workers-cJMI4mYX.js} +26 -26
  261. package/dist/interface/ha/{api-anWolhVj.js → api-CDawdL4p.js} +1 -1
  262. package/dist/interface/ha/{api-Dv3Lk_g5.js → api-D2VzV4is.js} +9257 -9084
  263. package/dist/interface/ha/{assistant-B3m0Kgev.js → assistant-BmDAfChm.js} +1 -1
  264. package/dist/interface/ha/{auth-CAkpM_7A.js → auth-CvLz9C4w.js} +1 -1
  265. package/dist/interface/ha/{automationBlueprint-DwVvbKbw.js → automationBlueprint-BhNaeOZ1.js} +2 -2
  266. package/dist/interface/ha/{base-C-TYDHjS.js → base-XgWmQghV.js} +14 -3
  267. package/dist/interface/ha/cameraui-cards.js +1 -1
  268. package/dist/interface/ha/{cards-B0qagpBw.js → cards-MQrnU0T8.js} +1334 -1334
  269. package/dist/interface/ha/{config-C20itAPE.js → config-t_oAKFkJ.js} +1 -1
  270. package/dist/interface/ha/{esm-i8Tigknm.js → esm-C9XVFkXu.js} +4 -4
  271. package/dist/interface/ha/{mqtt-C6JvkA5E.js → mqtt-C20h1uze.js} +1 -1
  272. package/dist/interface/ha/{native-DBH9ocSq.js → native-BVUxNLM1.js} +4 -4
  273. package/dist/interface/ha/{notifications-gLmNZxwZ.js → notifications-Cy9DKiEn.js} +1 -1
  274. package/dist/interface/ha/{pinia-Du8AM917.js → pinia-BokSpDzj.js} +1 -0
  275. package/dist/interface/ha/{plugins-6x0kBuQb.js → plugins-jozYyBhV.js} +1 -1
  276. package/dist/interface/ha/{rooms-C-mLT6mX.js → rooms-DyfT3cXp.js} +1 -1
  277. package/dist/interface/ha/{server-DuikIt69.js → server-hCCjQjZE.js} +1 -1
  278. package/dist/interface/ha/{types-C0NcQ4Cz.js → types-RG0SckNR.js} +1 -1
  279. package/dist/interface/ha/{ungrouped-ooCH0Izh.js → ungrouped-BbyfoCQp.js} +19 -19
  280. package/dist/interface/ha/{updates-H8MlOQLC.js → updates-hUgVDgoD.js} +6 -6
  281. package/dist/interface/ha/{useAppVersion-DAUCV_cn.js → useAppVersion-wNhZDuvR.js} +1 -1
  282. package/dist/interface/ha/useKeyboardInset-Cmbvb_W3.js +27 -0
  283. package/dist/interface/ha/{useLogsSocket-BOLAXPuD.js → useLogsSocket-y9Aex3tJ.js} +1 -1
  284. package/dist/interface/ha/{useNavLayout-B7VoHzM1.js → useNavLayout-Ehb0t34k.js} +2 -2
  285. package/dist/interface/ha/{useServerRestart-qSH0bqwY.js → useServerRestart-CRSVcz3z.js} +1 -1
  286. package/dist/interface/ha/{useTabSwipe-DYzG_gVG.js → useTabSwipe-B_bseZkI.js} +1 -1
  287. package/dist/interface/ha/{useUpdateChannel-CK7JiWbG.js → useUpdateChannel-C_GU6lj6.js} +2 -2
  288. package/dist/interface/ha/{useUpdatesSocket-DrqkGMuR.js → useUpdatesSocket-CYgHb7UX.js} +1 -1
  289. package/dist/interface/ha/{useUserOptions-BteVUdaT.js → useUserOptions-pVYr-s3O.js} +1 -1
  290. package/dist/interface/ha/{web-D_q41D0i.js → web-CLbVbnCW.js} +5 -5
  291. package/dist/interface/index.html +28 -28
  292. package/dist/interface/sw.js +1 -1
  293. package/dist/server/package.json +3 -3
  294. package/dist/server/requirements.txt +1 -1
  295. package/dist/server/src/api/controllers/rooms.controller.js +3 -1
  296. package/dist/server/src/api/controllers/rooms.controller.js.map +1 -1
  297. package/dist/server/src/api/database/types.d.ts +1 -0
  298. package/dist/server/src/api/schemas/assistant.schema.d.ts +2 -0
  299. package/dist/server/src/api/schemas/assistant.schema.js +1 -0
  300. package/dist/server/src/api/schemas/assistant.schema.js.map +1 -1
  301. package/dist/server/src/api/services/cameras.service.d.ts +1 -0
  302. package/dist/server/src/api/services/cameras.service.js +8 -0
  303. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  304. package/dist/server/src/assistant/manager.d.ts +1 -0
  305. package/dist/server/src/assistant/manager.js +1 -1
  306. package/dist/server/src/assistant/manager.js.map +1 -1
  307. package/dist/server/src/assistant/scheduler.js +8 -1
  308. package/dist/server/src/assistant/scheduler.js.map +1 -1
  309. package/dist/server/src/plugins/index.js +5 -4
  310. package/dist/server/src/plugins/index.js.map +1 -1
  311. package/npm-shrinkwrap.json +6 -6
  312. package/package.json +3 -3
  313. package/dist/interface/assets/Assistant-B1xdMAkA.js +0 -1
  314. package/dist/interface/assets/Automations-Bpw8olkc.js +0 -2
  315. package/dist/interface/assets/Camera-B4ojNnKb.css +0 -1
  316. package/dist/interface/assets/Camera-BpFfZDaS.js +0 -2
  317. package/dist/interface/assets/Camview-C16pyCZk.js +0 -1
  318. package/dist/interface/assets/CuiAssistantConversation-CRNCKRHz.js +0 -5
  319. package/dist/interface/assets/CuiAssistantConversation-DQ0wOJvV.css +0 -1
  320. package/dist/interface/assets/CuiBottomSheet-CYi5c3fP.js +0 -1
  321. package/dist/interface/assets/CuiCameraPipCard-Cb_Qbly6.js +0 -1
  322. package/dist/interface/assets/CuiCameraTable-BgL5FZso.js +0 -1
  323. package/dist/interface/assets/CuiLightControl-CLYl5pfN.js +0 -1
  324. package/dist/interface/assets/CuiPluginCard-CC1oXY16.js +0 -2
  325. package/dist/interface/assets/Faces-1xd5yGuO.js +0 -1
  326. package/dist/interface/assets/FirstSteps-E9cMqa0a.js +0 -1
  327. package/dist/interface/assets/Floorplan-BovV_ATh.js +0 -1
  328. package/dist/interface/assets/Instances-BbxyB7vR.js +0 -1
  329. package/dist/interface/assets/Metrics-BgXrNl38.js +0 -12
  330. package/dist/interface/assets/Plugin-CDNywaVE.js +0 -1
  331. package/dist/interface/assets/PluginSearch-xNIlfXk4.js +0 -1
  332. package/dist/interface/assets/Recordings-BHT8Vvv_.js +0 -1
  333. package/dist/interface/assets/Recordings-DwuojaAw.css +0 -1
  334. package/dist/interface/assets/Sensors-Cza4Et2c.js +0 -2
  335. package/dist/interface/assets/Settings-Cj0leoGd.js +0 -1
  336. package/dist/interface/assets/SettingsAccount-COkcBBSz.js +0 -1
  337. package/dist/interface/assets/SettingsAccount-DjrJdssy.js +0 -1
  338. package/dist/interface/assets/SettingsAppearance-D20YW7Vq.js +0 -1
  339. package/dist/interface/assets/SettingsAssistant-CDdbbG-c.css +0 -1
  340. package/dist/interface/assets/SettingsAssistant-DKWDp1AI.js +0 -1
  341. package/dist/interface/assets/Training-DfgE_dA8.js +0 -1
  342. package/dist/interface/assets/Updates-cCvbFq3w.js +0 -2
  343. package/dist/interface/assets/Workers-Ba37_3cY.js +0 -2
  344. package/dist/interface/assets/api-C1mraOYr.js +0 -4
  345. package/dist/interface/assets/api-z8ZVnoOl.css +0 -2
  346. package/dist/interface/assets/cloudHandoff-DkUx4m3P.js +0 -1
  347. package/dist/interface/assets/esm-0kxqa_1s.js +0 -1
  348. package/dist/interface/assets/esm-4p_M5mFV.js +0 -1
  349. package/dist/interface/assets/esm-8G-vO1KQ.js +0 -1
  350. package/dist/interface/assets/esm-8cB56ICb.js +0 -1
  351. package/dist/interface/assets/esm-B92csSEb.js +0 -1
  352. package/dist/interface/assets/esm-BHiNTIiN.js +0 -1
  353. package/dist/interface/assets/esm-Bu9PMLmw.js +0 -1
  354. package/dist/interface/assets/esm-CS6Ra46d.js +0 -1
  355. package/dist/interface/assets/esm-CWvQWALL.js +0 -1
  356. package/dist/interface/assets/esm-D2UDrwmt.js +0 -1
  357. package/dist/interface/assets/esm-D8OHF2X1.js +0 -1
  358. package/dist/interface/assets/esm-DrXkS8eG.js +0 -1
  359. package/dist/interface/assets/esm-pfoHiO1a.js +0 -1
  360. package/dist/interface/assets/esm-tJSCF7Vh.js +0 -1
  361. package/dist/interface/assets/main-BK3kmiG2.js +0 -3
  362. package/dist/interface/assets/native-BEkWOGyD.js +0 -1
  363. package/dist/interface/assets/native-ugMg173F.js +0 -1
  364. package/dist/interface/assets/plugin-eafNQWg2.js +0 -1
  365. package/dist/interface/assets/useKeyboardInset-DkUn62i7.js +0 -1
  366. package/dist/interface/assets/web-3OOGlctS.js +0 -1
  367. package/dist/interface/assets/web-5NFVd9gs.js +0 -1
  368. package/dist/interface/assets/web-A4yovlXr.js +0 -1
  369. package/dist/interface/assets/web-BBC3YoWX.js +0 -1
  370. package/dist/interface/assets/web-BjKL51lK-DUIsII0n.js +0 -1
  371. package/dist/interface/assets/web-C2-YAfsx.js +0 -1
  372. package/dist/interface/assets/web-CUL_MhvM.js +0 -1
  373. package/dist/interface/assets/web-CZVCXYLV.js +0 -1
  374. package/dist/interface/assets/web-DJ-LUxlV.js +0 -1
  375. package/dist/interface/assets/web-DNsEGLGS.js +0 -1
  376. package/dist/interface/assets/web-DZsU0QT_.js +0 -1
  377. package/dist/interface/assets/web-MoyOTbiU.js +0 -1
  378. package/dist/interface/assets/web-avRH_3t7.js +0 -1
  379. package/dist/interface/ha/Camera-CerkQGbZ.js +0 -654
@@ -3,41 +3,41 @@ import { D as n, G as r, H as i, Jt as a, U as o, Wt as s, Y as c, _t as l, d as
3
3
  import { t as ee } from "./tooltip-BDrlgLof.js";
4
4
  import { t as M } from "./message-D6dIy_hz.js";
5
5
  import { t as N } from "./tag-mchuCAPR.js";
6
- import { Ar as P, B as F, Bn as I, Dr as L, Er as R, H as z, J as te, Kn as ne, Kr as B, Nn as V, On as re, Or as H, Pn as ie, Qn as ae, Si as U, U as oe, Un as W, V as se, W as ce, Y as G, Yn as le, Yt as ue, Z as de, _n as fe, _t as pe, ar as me, br as he, er as ge, g as _e, gi as ve, gr as ye, jr as be, kr as xe, or as Se, ot as Ce, st as we, tt as Te, ua as Ee, ut as De, wr as Oe, yi as ke, yr as Ae, z as je } from "./api-Dv3Lk_g5.js";
7
- import { F as Me, M as Ne, z as Pe } from "./protocol-BB4jdtUC-DW3jl2tV.js";
8
- import { h as Fe, u as Ie } from "./intercomService-B7HkLs6z.js";
9
- import { n as Le } from "./vue-i18n-D5EAy78K.js";
10
- import { C as Re, _ as ze, g as Be } from "./dist-BIngHzHx.js";
11
- import { i as Ve } from "./alert-outline-FcLLjoOK.js";
12
- import { t as He } from "./eventIcons-BFNUgeGr.js";
13
- import { t as Ue } from "./button-BouAFgf5.js";
14
- import { M as We } from "./dist-oFWkn6pD.js";
15
- import { t as Ge } from "./inputtext-C_ygnPrC.js";
16
- import { t as K } from "./checkbox-CAKzZcqk.js";
17
- import { t as Ke } from "./datepicker-DXk97lTw.js";
18
- import { t as qe } from "./close-CxFbonhd.js";
19
- import { t as q } from "./select-DV7p2EDj.js";
20
- import { t as Je } from "./progressbar-CaUaM8Bt.js";
21
- import { t as Ye } from "./multiselect-BOb4ScAZ.js";
22
- import { t as Xe } from "./textarea-ByXnzJzx.js";
23
- import { s as Ze, t as Qe } from "./assistant-B3m0Kgev.js";
24
- import { i as $e, n as J, t as Y } from "./eventLabels-B4C1_4vT.js";
25
- import { i as et, n as tt, r as nt, t as rt } from "./ungrouped-ooCH0Izh.js";
26
- import { t as it } from "./utils-DYtBrGDz.js";
27
- import { t as at } from "./settings-lWJfHaif.js";
28
- import { t as ot } from "./database-refresh-outline-PiqlCkA7.js";
29
- import { n as st, t as ct } from "./round-alt-arrow-left-bold-DDy2dLUM.js";
6
+ import { $n as P, Ar as F, B as I, Dn as L, Dr as R, Er as z, Gn as te, H as ne, Hn as B, J as V, Jn as re, Jt as ie, Kr as ae, Mn as oe, Nn as se, Or as ce, R as le, Si as ue, U as de, V as fe, X as H, Zn as pe, ar as U, at as me, br as W, et as he, g as ge, gi as _e, gn as ve, gr as ye, gt as be, ir as xe, jr as Se, kr as Ce, lt as we, ot as Te, q as Ee, ua as De, wr as Oe, yi as ke, yr as Ae, z as je, zn as Me } from "./api-D2VzV4is.js";
7
+ import { F as Ne, M as Pe, z as Fe } from "./protocol-BB4jdtUC-DW3jl2tV.js";
8
+ import { h as Ie, u as Le } from "./intercomService-B7HkLs6z.js";
9
+ import { n as Re } from "./vue-i18n-D5EAy78K.js";
10
+ import { C as ze, _ as Be, g as Ve } from "./dist-BIngHzHx.js";
11
+ import { i as He } from "./alert-outline-FcLLjoOK.js";
12
+ import { t as Ue } from "./eventIcons-BFNUgeGr.js";
13
+ import { t as We } from "./button-BouAFgf5.js";
14
+ import { M as Ge } from "./dist-oFWkn6pD.js";
15
+ import { t as Ke } from "./inputtext-C_ygnPrC.js";
16
+ import { t as G } from "./checkbox-CAKzZcqk.js";
17
+ import { t as qe } from "./datepicker-DXk97lTw.js";
18
+ import { t as Je } from "./close-CxFbonhd.js";
19
+ import { t as K } from "./select-DV7p2EDj.js";
20
+ import { t as Ye } from "./progressbar-CaUaM8Bt.js";
21
+ import { t as Xe } from "./multiselect-BOb4ScAZ.js";
22
+ import { t as Ze } from "./textarea-ByXnzJzx.js";
23
+ import { s as Qe, t as $e } from "./assistant-BmDAfChm.js";
24
+ import { i as et, n as q, t as J } from "./eventLabels-B4C1_4vT.js";
25
+ import { i as tt, n as nt, r as rt, t as it } from "./ungrouped-BbyfoCQp.js";
26
+ import { t as at } from "./utils-DYtBrGDz.js";
27
+ import { t as ot } from "./settings-lWJfHaif.js";
28
+ import { t as st } from "./database-refresh-outline-PiqlCkA7.js";
29
+ import { n as ct, t as lt } from "./round-alt-arrow-left-bold-DDy2dLUM.js";
30
30
  //#region src/components/CuiDialog/templates/ClipReindex/ClipReindex.vue?vue&type=script&setup=true&lang.ts
31
- var lt = { class: "flex flex-col gap-4" }, ut = { class: "text-sm text-pretty" }, dt = {
31
+ var ut = { class: "flex flex-col gap-4" }, dt = { class: "text-sm text-pretty" }, ft = {
32
32
  key: 0,
33
33
  class: "flex flex-col gap-2"
34
- }, ft = {
34
+ }, pt = {
35
35
  key: 0,
36
36
  class: "flex justify-between text-sm text-muted"
37
- }, pt = { key: 0 }, mt = /* @__PURE__ */ D({
37
+ }, mt = { key: 0 }, ht = /* @__PURE__ */ D({
38
38
  __name: "ClipReindex",
39
39
  setup(e, { expose: t }) {
40
- let r = n("dialogRefProps"), { t: o } = Le(), { status: s, isBusy: c, checking: l, refresh: u, start: f, cancel: h } = ne(), g = O(!1), y = O(!1), b = O(0), x = m(() => s.value?.running === !0), w = m(() => {
40
+ let r = n("dialogRefProps"), { t: o } = Re(), { status: s, isBusy: c, checking: l, refresh: u, start: f, cancel: h } = te(), g = O(!1), y = O(!1), b = O(0), x = m(() => s.value?.running === !0), w = m(() => {
41
41
  if (y.value) {
42
42
  if (!s.value?.total) return o("views.recordings.reindex.up_to_date");
43
43
  let { done: e, total: t, skipped: n } = s.value;
@@ -68,36 +68,36 @@ var lt = { class: "flex flex-col gap-4" }, ut = { class: "text-sm text-pretty" }
68
68
  s.value?.running && (g.value = !0);
69
69
  });
70
70
  }), t({ onConfirm: E }), (e, t) => {
71
- let n = Je;
72
- return i(), v("div", lt, [C("span", ut, a(p(w)), 1), p(g) || p(x) ? (i(), v("div", dt, [k(n, {
71
+ let n = Ye;
72
+ return i(), v("div", ut, [C("span", dt, a(p(w)), 1), p(g) || p(x) ? (i(), v("div", ft, [k(n, {
73
73
  mode: p(l) ? "indeterminate" : "determinate",
74
74
  value: p(T),
75
75
  "show-value": !1,
76
76
  class: "h-2"
77
- }, null, 8, ["mode", "value"]), p(x) && !p(l) ? (i(), v("div", ft, [C("span", null, a(e.$t("views.recordings.reindex.progress", {
77
+ }, null, 8, ["mode", "value"]), p(x) && !p(l) ? (i(), v("div", pt, [C("span", null, a(e.$t("views.recordings.reindex.progress", {
78
78
  done: p(s)?.done ?? 0,
79
79
  total: p(s)?.total ?? 0
80
- })), 1), p(s)?.skipped ? (i(), v("span", pt, a(e.$t("views.recordings.reindex.skipped", { count: p(s).skipped })), 1)) : d("", !0)])) : d("", !0)])) : d("", !0)]);
80
+ })), 1), p(s)?.skipped ? (i(), v("span", mt, a(e.$t("views.recordings.reindex.skipped", { count: p(s).skipped })), 1)) : d("", !0)])) : d("", !0)])) : d("", !0)]);
81
81
  };
82
82
  }
83
- }), X = {
83
+ }), Y = {
84
84
  viewBox: "0 0 24 24",
85
85
  width: "1.2em",
86
86
  height: "1.2em"
87
87
  };
88
- function ht(e, t) {
89
- return i(), v("svg", X, [...t[0] ||= [C("path", {
88
+ function gt(e, t) {
89
+ return i(), v("svg", Y, [...t[0] ||= [C("path", {
90
90
  fill: "currentColor",
91
91
  d: "m14 2l6 6v12a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2zm4 18V9h-5V4H6v16zm-2-2l-2.5-1.7V18H8v-5h5.5v1.7L16 13z"
92
92
  }, null, -1)]]);
93
93
  }
94
- var gt = l({
94
+ var _t = l({
95
95
  name: "mdi-file-video-outline",
96
- render: ht
97
- }), _t = { class: "flex flex-col gap-6" }, vt = { class: "flex flex-col field-gap" }, Z = { class: "cui-label" }, yt = { class: "flex flex-col field-gap" }, bt = { class: "cui-label" }, xt = { class: "grid grid-cols-1 xs:grid-cols-2 gap-3" }, St = { class: "flex flex-col gap-1" }, Ct = { class: "text-xs text-muted" }, wt = { class: "flex flex-col gap-1" }, Tt = { class: "text-xs text-muted" }, Et = { class: "grid grid-cols-1 xs:grid-cols-2 gap-x-6 gap-y-4" }, Dt = { class: "flex flex-col field-gap" }, Ot = { class: "cui-label" }, kt = { class: "flex flex-col field-gap" }, At = { class: "cui-label" }, jt = { class: "flex flex-col field-gap" }, Mt = { class: "flex items-center gap-3" }, Nt = { class: "cui-label !mb-0" }, Q = {
96
+ render: gt
97
+ }), vt = { class: "flex flex-col gap-6" }, yt = { class: "flex flex-col field-gap" }, X = { class: "cui-label" }, bt = { class: "flex flex-col field-gap" }, xt = { class: "cui-label" }, St = { class: "grid grid-cols-1 xs:grid-cols-2 gap-3" }, Ct = { class: "flex flex-col gap-1" }, wt = { class: "text-xs text-muted" }, Tt = { class: "flex flex-col gap-1" }, Et = { class: "text-xs text-muted" }, Dt = { class: "grid grid-cols-1 xs:grid-cols-2 gap-x-6 gap-y-4" }, Ot = { class: "flex flex-col field-gap" }, kt = { class: "cui-label" }, At = { class: "flex flex-col field-gap" }, jt = { class: "cui-label" }, Mt = { class: "flex flex-col field-gap" }, Nt = { class: "flex items-center gap-3" }, Pt = { class: "cui-label !mb-0" }, Z = {
98
98
  key: 0,
99
99
  class: "ml-auto flex items-center gap-2.5 text-sm tabular-nums"
100
- }, Pt = { class: "font-semibold" }, Ft = { class: "font-semibold" }, $ = { class: "border border-color rounded-xl card-background overflow-hidden" }, It = { class: "flex flex-col gap-3 max-h-[240px] overflow-y-auto p-2.5" }, Lt = {
100
+ }, Ft = { class: "font-semibold" }, It = { class: "font-semibold" }, Q = { class: "border border-color rounded-xl card-background overflow-hidden" }, $ = { class: "flex flex-col gap-3 max-h-[240px] overflow-y-auto p-2.5" }, Lt = {
101
101
  key: 0,
102
102
  class: "flex items-center justify-center gap-2 text-muted text-sm py-6"
103
103
  }, Rt = {
@@ -110,7 +110,7 @@ var gt = l({
110
110
  preselect: {}
111
111
  },
112
112
  setup(e, { expose: t }) {
113
- let o = e, { t: s } = Le(), c = U(), l = n("dialogRefProps"), { plugin: g } = We("@camera.ui/camera-ui-nvr"), _ = O([]), y = O(!1), x = O(o.preselect?.length ? [...o.preselect] : []), w = O("best"), E = O(0), D = O(new Date((/* @__PURE__ */ new Date()).setHours(0, 0, 0, 0))), A = O(/* @__PURE__ */ new Date()), j = m(() => [{
113
+ let o = e, { t: s } = Re(), c = ue(), l = n("dialogRefProps"), { plugin: g } = Ge("@camera.ui/camera-ui-nvr"), _ = O([]), y = O(!1), x = O(o.preselect?.length ? [...o.preselect] : []), w = O("best"), E = O(0), D = O(new Date((/* @__PURE__ */ new Date()).setHours(0, 0, 0, 0))), A = O(/* @__PURE__ */ new Date()), j = m(() => [{
114
114
  label: s("views.recordings.export.quality_best"),
115
115
  value: "best"
116
116
  }, {
@@ -148,12 +148,12 @@ var gt = l({
148
148
  }
149
149
  return e;
150
150
  }), z = m(() => _.value.map((e) => {
151
- let t = I.value.get(e.cameraId) ?? e.cameraId, n = /* @__PURE__ */ new Date(e.startUs / 1e3), r = /* @__PURE__ */ new Date(e.endUs / 1e3), i = n.getHours() === 0 && n.getMinutes() === 0 && e.endUs - e.startUs === 864e8, a = r.getHours() === 0 && r.getMinutes() === 0 ? "24:00" : H(r);
151
+ let t = I.value.get(e.cameraId) ?? e.cameraId, n = /* @__PURE__ */ new Date(e.startUs / 1e3), r = /* @__PURE__ */ new Date(e.endUs / 1e3), i = n.getHours() === 0 && n.getMinutes() === 0 && e.endUs - e.startUs === 864e8, a = r.getHours() === 0 && r.getMinutes() === 0 ? "24:00" : ie(r);
152
152
  return {
153
153
  cameraId: e.cameraId,
154
154
  cameraName: t,
155
- name: `${ie(t)}_${e.day}${P.value ? "_timelapse" : ""}.mp4`,
156
- span: i ? s("views.recordings.export.whole_day") : `${H(n)}–${a}`,
155
+ name: `${ae(t)}_${e.day}${P.value ? "_timelapse" : ""}.mp4`,
156
+ span: i ? s("views.recordings.export.whole_day") : `${ie(n)}–${a}`,
157
157
  bytes: P.value ? e.bytes / Ut : e.bytes
158
158
  };
159
159
  })), te = m(() => {
@@ -175,20 +175,20 @@ var gt = l({
175
175
  function re(e) {
176
176
  return `${e.getFullYear()}-${V(e.getMonth() + 1)}-${V(e.getDate())}`;
177
177
  }
178
- function H(e) {
178
+ function ie(e) {
179
179
  return `${V(e.getHours())}:${V(e.getMinutes())}`;
180
180
  }
181
- function ie(e) {
181
+ function ae(e) {
182
182
  return e.replace(/[^a-zA-Z0-9-_]/g, "_");
183
183
  }
184
- function ae(e) {
184
+ function oe(e) {
185
185
  if (e <= 0) return "0 MB";
186
186
  let t = e / 1e6;
187
187
  if (t < 1e3) return `${t < 10 ? t.toFixed(1) : Math.round(t)} MB`;
188
188
  let n = e / 1e9;
189
189
  return `${n.toFixed(+(n < 10))} GB`;
190
190
  }
191
- async function oe() {
191
+ async function se() {
192
192
  let e = g.value;
193
193
  if (!e?.nvrExportEstimate || x.value.length === 0 || R.value.length === 0) {
194
194
  _.value = [], y.value = !1;
@@ -208,7 +208,7 @@ var gt = l({
208
208
  y.value = !1;
209
209
  }
210
210
  }
211
- async function W() {
211
+ async function ce() {
212
212
  if (!L.value || x.value.length === 0 || R.value.length === 0) return null;
213
213
  let e = g.value;
214
214
  if (!e?.nvrExportBatch) return c.add({
@@ -222,25 +222,25 @@ var gt = l({
222
222
  quality: w.value,
223
223
  timelapseIntervalSec: P.value ? E.value : 0
224
224
  });
225
- await he({
225
+ await W({
226
226
  url: t.url,
227
227
  filename: t.filename
228
228
  });
229
229
  }
230
- return Pe([
230
+ return Fe([
231
231
  x,
232
232
  R,
233
233
  w
234
- ], oe, {
234
+ ], se, {
235
235
  debounce: 350,
236
236
  immediate: !0,
237
237
  deep: !0
238
238
  }), S(() => {
239
239
  l.disabled && (l.disabled.value = !L.value || x.value.length === 0 || !y.value && z.value.length === 0);
240
- }), t({ onConfirm: W }), (t, n) => {
241
- let o = Ye, s = Ke, c = M, l = Se, m = q, g = N, _ = Oe, S = gt;
242
- return i(), v("div", _t, [
243
- C("div", vt, [C("label", Z, a(t.$t("views.recordings.export.cameras")), 1), k(o, {
240
+ }), t({ onConfirm: ce }), (t, n) => {
241
+ let o = Xe, s = qe, c = M, l = U, m = K, g = N, _ = Oe, S = _t;
242
+ return i(), v("div", vt, [
243
+ C("div", yt, [C("label", X, a(t.$t("views.recordings.export.cameras")), 1), k(o, {
244
244
  modelValue: p(x),
245
245
  "onUpdate:modelValue": n[0] ||= (e) => f(x) ? x.value = e : null,
246
246
  options: e.cameras,
@@ -255,16 +255,16 @@ var gt = l({
255
255
  "options",
256
256
  "placeholder"
257
257
  ])]),
258
- C("div", yt, [
259
- C("label", bt, a(t.$t("views.recordings.export.range")), 1),
260
- C("div", xt, [C("div", St, [C("span", Ct, a(t.$t("views.recordings.export.from")), 1), k(s, {
258
+ C("div", bt, [
259
+ C("label", xt, a(t.$t("views.recordings.export.range")), 1),
260
+ C("div", St, [C("div", Ct, [C("span", wt, a(t.$t("views.recordings.export.from")), 1), k(s, {
261
261
  modelValue: p(D),
262
262
  "onUpdate:modelValue": n[1] ||= (e) => f(D) ? D.value = e : null,
263
263
  "show-time": "",
264
264
  "hour-format": "24",
265
265
  fluid: "",
266
266
  "max-date": p(A)
267
- }, null, 8, ["modelValue", "max-date"])]), C("div", wt, [C("span", Tt, a(t.$t("views.recordings.export.to")), 1), k(s, {
267
+ }, null, 8, ["modelValue", "max-date"])]), C("div", Tt, [C("span", Et, a(t.$t("views.recordings.export.to")), 1), k(s, {
268
268
  modelValue: p(A),
269
269
  "onUpdate:modelValue": n[2] ||= (e) => f(A) ? A.value = e : null,
270
270
  "show-time": "",
@@ -292,7 +292,7 @@ var gt = l({
292
292
  _: 1
293
293
  }))
294
294
  ]),
295
- C("div", Et, [C("div", Dt, [C("label", Ot, a(t.$t("views.recordings.export.quality")), 1), k(l, {
295
+ C("div", Dt, [C("div", Ot, [C("label", kt, a(t.$t("views.recordings.export.quality")), 1), k(l, {
296
296
  modelValue: p(w),
297
297
  "onUpdate:modelValue": n[3] ||= (e) => f(w) ? w.value = e : null,
298
298
  options: p(j),
@@ -303,7 +303,7 @@ var gt = l({
303
303
  root: { class: "flex w-full" },
304
304
  pcToggleButton: { root: { class: "flex-1" } }
305
305
  }
306
- }, null, 8, ["modelValue", "options"])]), C("div", kt, [C("label", At, a(t.$t("views.recordings.export.timelapse")), 1), k(m, {
306
+ }, null, 8, ["modelValue", "options"])]), C("div", At, [C("label", jt, a(t.$t("views.recordings.export.timelapse")), 1), k(m, {
307
307
  modelValue: p(E),
308
308
  "onUpdate:modelValue": n[4] ||= (e) => f(E) ? E.value = e : null,
309
309
  options: p(ee),
@@ -311,15 +311,15 @@ var gt = l({
311
311
  "option-value": "value",
312
312
  class: "w-full"
313
313
  }, null, 8, ["modelValue", "options"])])]),
314
- C("div", jt, [C("div", Mt, [C("label", Nt, a(t.$t("views.recordings.export.result")), 1), p(z).length ? (i(), v("div", Q, [
315
- C("span", Pt, a(p(z).length) + " " + a(p(z).length === 1 ? t.$t("views.recordings.export.file") : t.$t("views.recordings.export.files")), 1),
314
+ C("div", Mt, [C("div", Nt, [C("label", Pt, a(t.$t("views.recordings.export.result")), 1), p(z).length ? (i(), v("div", Z, [
315
+ C("span", Ft, a(p(z).length) + " " + a(p(z).length === 1 ? t.$t("views.recordings.export.file") : t.$t("views.recordings.export.files")), 1),
316
316
  n[5] ||= C("span", { class: "text-muted" }, "·", -1),
317
- C("span", Ft, a(p(F)) + a(ae(p(ne))), 1),
317
+ C("span", It, a(p(F)) + a(oe(p(ne))), 1),
318
318
  k(g, {
319
319
  value: p(z).length === 1 ? "MP4" : "ZIP",
320
320
  severity: "info"
321
321
  }, null, 8, ["value"])
322
- ])) : d("", !0)]), C("div", $, [C("div", It, [p(y) && !p(z).length ? (i(), v("div", Lt, [k(_, {
322
+ ])) : d("", !0)]), C("div", Q, [C("div", $, [p(y) && !p(z).length ? (i(), v("div", Lt, [k(_, {
323
323
  style: {
324
324
  width: "1rem",
325
325
  height: "1rem"
@@ -329,14 +329,14 @@ var gt = l({
329
329
  }), C("span", null, a(t.$t("views.recordings.export.estimating")), 1)])) : p(z).length ? (i(!0), v(b, { key: 2 }, r(p(te), (e) => (i(), v("div", {
330
330
  key: e.cameraId,
331
331
  class: "flex flex-col gap-1"
332
- }, [C("span", zt, a(e.cameraName) + " · " + a(e.files.length) + " · " + a(p(F)) + a(ae(e.bytes)), 1), (i(!0), v(b, null, r(e.files, (e) => (i(), v("div", {
332
+ }, [C("span", zt, a(e.cameraName) + " · " + a(e.files.length) + " · " + a(p(F)) + a(oe(e.bytes)), 1), (i(!0), v(b, null, r(e.files, (e) => (i(), v("div", {
333
333
  key: e.name,
334
334
  class: "flex items-center gap-3 card-inner-background border border-color rounded-lg px-3 py-2"
335
335
  }, [
336
336
  k(S, { class: "w-4 h-4 text-muted shrink-0" }),
337
337
  C("span", Bt, a(e.name), 1),
338
338
  C("span", Vt, a(e.span), 1),
339
- C("span", Ht, a(p(F)) + a(ae(e.bytes)), 1)
339
+ C("span", Ht, a(p(F)) + a(oe(e.bytes)), 1)
340
340
  ]))), 128))]))), 128)) : (i(), v("div", Rt, a(p(B)), 1))])])])
341
341
  ]);
342
342
  };
@@ -377,16 +377,7 @@ function Yt(e, t) {
377
377
  var Xt = l({
378
378
  name: "tabler-chevron-up",
379
379
  render: Yt
380
- }), Zt = { class: "flex flex-col gap-2" }, Qt = { class: "sidebar-section-title" }, $t = {
381
- key: 0,
382
- class: "text-xs text-muted"
383
- }, en = { class: "flex flex-col gap-2" }, tn = { class: "sidebar-section-title" }, nn = { class: "p-input-icon-left w-full" }, rn = {
384
- key: 0,
385
- class: "text-xs text-muted"
386
- }, an = {
387
- key: 1,
388
- class: "text-xs text-muted"
389
- }, on = { class: "flex flex-col gap-2" }, sn = { class: "sidebar-section-title flex items-center gap-1.5" }, cn = {
380
+ }), Zt = { class: "flex flex-col gap-2" }, Qt = { class: "sidebar-section-title" }, $t = { class: "text-xs text-muted" }, en = { class: "text-xs text-muted" }, tn = { class: "flex flex-col gap-2" }, nn = { class: "sidebar-section-title" }, rn = { class: "p-input-icon-left w-full" }, an = { class: "text-xs text-muted" }, on = { class: "flex flex-col gap-2" }, sn = { class: "sidebar-section-title flex items-center gap-1.5" }, cn = {
390
381
  key: 0,
391
382
  class: "inline-flex items-center gap-1 text-xs text-muted"
392
383
  }, ln = {
@@ -416,7 +407,7 @@ var Xt = l({
416
407
  }, Rn = { class: "filter-logic-divider" }, zn = { class: "flex flex-col gap-2" }, Bn = {
417
408
  key: 0,
418
409
  class: "flex flex-col gap-2"
419
- }, Vn = { class: "flex items-center gap-2 cursor-pointer text-sm" }, Hn = 288, Un = /*#__PURE__*/ R(/* @__PURE__ */ D({
410
+ }, Vn = { class: "flex items-center gap-2 cursor-pointer text-sm" }, Hn = 288, Un = /*#__PURE__*/ z(/* @__PURE__ */ D({
420
411
  __name: "RecordingsFilterSidebar",
421
412
  props: {
422
413
  filters: {},
@@ -440,7 +431,7 @@ var Xt = l({
440
431
  "close"
441
432
  ],
442
433
  setup(n, { expose: o, emit: s }) {
443
- let l = /* @__PURE__ */ new Set(["motion", "audio"]), h = n, g = s, { t: S } = Le(), { topbarOffset: w, bottombarHeight: E } = be(), { icons: D, generic: j } = He(), ee = D, M = Xt, N = qt, P = x("sidebarRef"), F = O(h.filters.semanticQuery ?? ""), I = O(""), L = A({
434
+ let l = /* @__PURE__ */ new Set(["motion", "audio"]), h = n, g = s, { t: S } = Re(), { topbarOffset: w, bottombarHeight: E } = Se(), { icons: D, generic: j } = Ue(), ee = D, M = Xt, N = qt, P = x("sidebarRef"), F = O(h.filters.semanticQuery ?? ""), I = O(""), L = A({
444
435
  eventTypes: !0,
445
436
  attributes: !0,
446
437
  sensorEvents: !0
@@ -458,7 +449,15 @@ var Xt = l({
458
449
  }));
459
450
  }), ne = m(() => {
460
451
  if (h.filters.cameraIds.length === 1) return h.cameras.find((e) => e.id === h.filters.cameraIds[0])?.name;
461
- }), B = m(() => h.filters.contentKind === "episodes"), re = m(() => [
452
+ }), V = m(() => h.filters.contentKind === "episodes"), re = m(() => {
453
+ let e = V.value ? "episodes" : "recordings";
454
+ if (h.resultTotal === void 0) return S(`views.recordings.result_count_${e}`, { count: h.resultCount });
455
+ let t = h.resultCapped ? `${h.resultTotal}+` : h.resultTotal;
456
+ return S(`views.recordings.result_count_${e}_of`, {
457
+ count: h.resultCount,
458
+ total: t
459
+ });
460
+ }), ie = m(() => [
462
461
  {
463
462
  label: S("views.recordings.content_kind_all"),
464
463
  value: "all"
@@ -471,13 +470,13 @@ var Xt = l({
471
470
  label: S("views.recordings.content_kind_episodes"),
472
471
  value: "episodes"
473
472
  }
474
- ]), H = m(() => [{
473
+ ]), ae = m(() => [{
475
474
  label: S("views.recordings.filter_and"),
476
475
  value: "and"
477
476
  }, {
478
477
  label: S("views.recordings.filter_or"),
479
478
  value: "or"
480
- }]), ie = m(() => [
479
+ }]), se = m(() => [
481
480
  {
482
481
  label: S("views.recordings.time_1h"),
483
482
  value: "1h"
@@ -494,37 +493,37 @@ var Xt = l({
494
493
  label: S("views.recordings.time_1m"),
495
494
  value: "1m"
496
495
  }
497
- ]), ae = m(() => ze.filter((e) => !l.has(e)).map((e) => ({
496
+ ]), ce = m(() => Be.filter((e) => !l.has(e)).map((e) => ({
498
497
  label: S(`views.recordings.type_${e}`),
499
498
  value: e,
500
499
  icon: D[e] ?? j
501
- }))), U = m(() => ({
500
+ }))), le = m(() => ({
502
501
  label: S("views.recordings.type_other"),
503
- value: W,
502
+ value: B,
504
503
  icon: D.other ?? j
505
- })), oe = m(() => ve.map((e) => ({
506
- label: S($e(e)),
504
+ })), ue = m(() => _e.map((e) => ({
505
+ label: S(et(e)),
507
506
  value: e,
508
507
  icon: ee[e] ?? j
509
- }))), se = m(() => Re.map((e) => ({
510
- label: S(J(e)),
508
+ }))), de = m(() => ze.map((e) => ({
509
+ label: S(q(e)),
511
510
  value: e,
512
511
  icon: D[e] ?? j
513
- }))), ce = m(() => Be.map((e) => ({
514
- label: S(Y(e)),
512
+ }))), fe = m(() => Ve.map((e) => ({
513
+ label: S(J(e)),
515
514
  value: e,
516
515
  icon: D[e] ?? j
517
516
  })));
518
- function G(e, t) {
517
+ function H(e, t) {
519
518
  g("update:filters", {
520
519
  ...h.filters,
521
520
  [e]: t
522
521
  });
523
522
  }
524
- let le = Me((e) => {
525
- G("search", e);
523
+ let pe = Ne((e) => {
524
+ H("search", e);
526
525
  }, 300);
527
- function ue(e) {
526
+ function me(e) {
528
527
  let t = new Set(h.cameras.filter((t) => e.length === 0 || e.includes(t.room ?? "")).map((e) => e.id));
529
528
  g("update:filters", {
530
529
  ...h.filters,
@@ -532,40 +531,40 @@ var Xt = l({
532
531
  cameraIds: h.filters.cameraIds.filter((e) => t.has(e))
533
532
  });
534
533
  }
535
- function de() {
534
+ function W() {
536
535
  let e = I.value.trim();
537
536
  e && !h.assistantSearchLoading && g("assistant-search", e);
538
537
  }
539
- function pe() {
538
+ function he() {
540
539
  let e = F.value.trim();
541
- G("semanticQuery", e), g("semantic-search", e);
540
+ H("semanticQuery", e), g("semantic-search", e);
542
541
  }
543
- function he(e) {
542
+ function ge(e) {
544
543
  let t = [...h.filters.eventTypes], n = t.indexOf(e);
545
- n >= 0 ? t.splice(n, 1) : t.push(e), G("eventTypes", t);
544
+ n >= 0 ? t.splice(n, 1) : t.push(e), H("eventTypes", t);
546
545
  }
547
- function ge(e) {
546
+ function ye(e) {
548
547
  let t = [...h.filters.audioLabels], n = t.indexOf(e);
549
- n >= 0 ? t.splice(n, 1) : t.push(e), G("audioLabels", t);
548
+ n >= 0 ? t.splice(n, 1) : t.push(e), H("audioLabels", t);
550
549
  }
551
- function _e(e) {
550
+ function be(e) {
552
551
  let t = [...h.filters.sensorEvents], n = t.indexOf(e);
553
- n >= 0 ? t.splice(n, 1) : t.push(e), G("sensorEvents", t);
552
+ n >= 0 ? t.splice(n, 1) : t.push(e), H("sensorEvents", t);
554
553
  }
555
- function ye(e) {
554
+ function Ce(e) {
556
555
  let t = [...h.filters.hasAttributes], n = t.indexOf(e);
557
- n >= 0 ? t.splice(n, 1) : t.push(e), G("hasAttributes", t);
556
+ n >= 0 ? t.splice(n, 1) : t.push(e), H("hasAttributes", t);
558
557
  }
559
- function xe(e) {
558
+ function we(e) {
560
559
  L[e] = !L[e];
561
560
  }
562
561
  return _(F, (e) => {
563
- !e?.trim() && h.filters.semanticQuery && G("semanticQuery", "");
564
- }), Ie(P, (e) => {
562
+ !e?.trim() && h.filters.semanticQuery && H("semanticQuery", "");
563
+ }), Le(P, (e) => {
565
564
  let t = e.target;
566
565
  t.closest("#recordings-sidebar-toggle") || t.closest("[data-pc-section=\"overlay\"], [data-pc-section=\"panel\"], .p-connected-overlay") || h.isOpen && h.isOverlay && g("close");
567
566
  }), o({ sidebarWidth: R }), (o, s) => {
568
- let l = Se, m = Ge, h = V, g = Xe, _ = Ue, x = me, S = Ve, D = Ye, O = Ae, A = fe, j = K;
567
+ let l = U, m = Ke, h = oe, g = Ze, _ = We, x = xe, S = He, D = Xe, O = Ae, A = ve, j = G;
569
568
  return i(), v("nav", {
570
569
  ref_key: "sidebarRef",
571
570
  ref: P,
@@ -583,29 +582,26 @@ var Xt = l({
583
582
  C("label", Qt, a(o.$t("views.recordings.content_kind")), 1),
584
583
  k(l, {
585
584
  "model-value": n.filters.contentKind,
586
- options: p(re),
585
+ options: p(ie),
587
586
  "option-label": "label",
588
587
  "option-value": "value",
589
588
  "allow-empty": !1,
590
589
  class: "content-kind-toggle",
591
- "onUpdate:modelValue": s[0] ||= (e) => G("contentKind", e)
590
+ "onUpdate:modelValue": s[0] ||= (e) => H("contentKind", e)
592
591
  }, null, 8, ["model-value", "options"]),
593
- p(B) ? (i(), v("span", $t, a(o.$t("views.recordings.content_kind_episodes_hint")), 1)) : d("", !0)
592
+ p(V) ? (i(), v(b, { key: 0 }, [C("span", $t, a(p(re)), 1), C("span", en, a(o.$t("views.recordings.content_kind_episodes_hint")), 1)], 64)) : d("", !0)
594
593
  ]),
595
594
  s[25] ||= C("div", { class: "sidebar-divider" }, null, -1),
596
- p(B) ? d("", !0) : (i(), v(b, { key: 0 }, [
597
- C("div", en, [
598
- C("label", tn, a(o.$t("views.recordings.search")), 1),
599
- C("span", nn, [k(m, {
595
+ p(V) ? d("", !0) : (i(), v(b, { key: 0 }, [
596
+ C("div", tn, [
597
+ C("label", nn, a(o.$t("views.recordings.search")), 1),
598
+ C("span", rn, [k(m, {
600
599
  "model-value": n.filters.search,
601
600
  placeholder: o.$t("views.recordings.search_placeholder"),
602
601
  class: "w-full text-sm",
603
- "onUpdate:modelValue": s[1] ||= (e) => p(le)(e)
602
+ "onUpdate:modelValue": s[1] ||= (e) => p(pe)(e)
604
603
  }, null, 8, ["model-value", "placeholder"])]),
605
- n.resultTotal === void 0 ? (i(), v("span", an, a(o.$t("views.recordings.result_count", { count: n.resultCount })), 1)) : (i(), v("span", rn, a(o.$t("views.recordings.result_count_of", {
606
- count: n.resultCount,
607
- total: n.resultCapped ? `${n.resultTotal}+` : n.resultTotal
608
- })), 1))
604
+ C("span", an, a(p(re)), 1)
609
605
  ]),
610
606
  s[16] ||= C("div", { class: "sidebar-divider" }, null, -1),
611
607
  C("div", on, [
@@ -630,7 +626,7 @@ var Xt = l({
630
626
  class: "w-full text-xs",
631
627
  loading: n.semanticSearchLoading,
632
628
  disabled: !n.semanticSearchAvailable || !p(F)?.trim(),
633
- onClick: pe
629
+ onClick: he
634
630
  }, null, 8, [
635
631
  "label",
636
632
  "loading",
@@ -643,7 +639,7 @@ var Xt = l({
643
639
  max: 1,
644
640
  step: .05,
645
641
  class: "flex-1",
646
- "onUpdate:modelValue": s[3] ||= (e) => G("minSemanticScore", e)
642
+ "onUpdate:modelValue": s[3] ||= (e) => H("minSemanticScore", e)
647
643
  }, null, 8, ["model-value"]), C("span", fn, a(Math.round(n.filters.minSemanticScore * 100)) + "%", 1)])])) : d("", !0)
648
644
  ]),
649
645
  s[17] ||= C("div", { class: "sidebar-divider" }, null, -1)
@@ -656,7 +652,7 @@ var Xt = l({
656
652
  placeholder: o.$t("views.recordings.assistant_search_placeholder"),
657
653
  class: "w-full text-sm",
658
654
  disabled: n.assistantSearchLoading,
659
- onKeydown: t(e(de, ["prevent"]), ["enter"])
655
+ onKeydown: t(e(W, ["prevent"]), ["enter"])
660
656
  }, null, 8, [
661
657
  "modelValue",
662
658
  "placeholder",
@@ -671,7 +667,7 @@ var Xt = l({
671
667
  class: "w-full text-xs",
672
668
  loading: n.assistantSearchLoading,
673
669
  disabled: !p(I).trim(),
674
- onClick: de
670
+ onClick: W
675
671
  }, null, 8, [
676
672
  "label",
677
673
  "loading",
@@ -689,7 +685,7 @@ var Xt = l({
689
685
  "max-selected-labels": 2,
690
686
  "show-toggle-all": !1,
691
687
  pt: { overlay: { style: "position: fixed" } },
692
- "onUpdate:modelValue": s[5] ||= (e) => ue(e)
688
+ "onUpdate:modelValue": s[5] ||= (e) => me(e)
693
689
  }, null, 8, [
694
690
  "model-value",
695
691
  "options",
@@ -705,20 +701,20 @@ var Xt = l({
705
701
  "max-selected-labels": 2,
706
702
  "show-toggle-all": !1,
707
703
  pt: { overlay: { style: "position: fixed" } },
708
- "onUpdate:modelValue": s[6] ||= (e) => G("cameraIds", e)
704
+ "onUpdate:modelValue": s[6] ||= (e) => H("cameraIds", e)
709
705
  }, null, 8, [
710
706
  "model-value",
711
707
  "options",
712
708
  "placeholder"
713
709
  ])]),
714
- p(ne) && !p(B) ? (i(), v(b, { key: 3 }, [s[19] ||= C("div", { class: "sidebar-divider" }, null, -1), C("div", bn, [
710
+ p(ne) && !p(V) ? (i(), v(b, { key: 3 }, [s[19] ||= C("div", { class: "sidebar-divider" }, null, -1), C("div", bn, [
715
711
  C("label", xn, a(o.$t("views.recordings.grid_search")), 1),
716
712
  C("div", Sn, [k(O, {
717
713
  camera: p(ne),
718
714
  "object-fit": "cover"
719
715
  }, null, 8, ["camera"]), k(A, {
720
716
  "model-value": n.filters.gridRegions,
721
- "onUpdate:modelValue": s[7] ||= (e) => G("gridRegions", e)
717
+ "onUpdate:modelValue": s[7] ||= (e) => H("gridRegions", e)
722
718
  }, null, 8, ["model-value"])]),
723
719
  k(_, {
724
720
  label: o.$t("views.recordings.grid_clear"),
@@ -727,54 +723,54 @@ var Xt = l({
727
723
  size: "small",
728
724
  class: "w-full text-xs",
729
725
  disabled: n.filters.gridRegions.length === 0,
730
- onClick: s[8] ||= (e) => G("gridRegions", [])
726
+ onClick: s[8] ||= (e) => H("gridRegions", [])
731
727
  }, null, 8, ["label", "disabled"])
732
728
  ])], 64)) : d("", !0),
733
- p(B) ? d("", !0) : (i(), v("div", Cn)),
734
- p(B) ? d("", !0) : (i(), v("div", wn, [C("label", Tn, a(o.$t("views.recordings.confidence")), 1), C("div", En, [k(x, {
729
+ p(V) ? d("", !0) : (i(), v("div", Cn)),
730
+ p(V) ? d("", !0) : (i(), v("div", wn, [C("label", Tn, a(o.$t("views.recordings.confidence")), 1), C("div", En, [k(x, {
735
731
  "model-value": n.filters.minConfidence,
736
732
  min: 0,
737
733
  max: 1,
738
734
  step: .05,
739
735
  class: "flex-1",
740
- "onUpdate:modelValue": s[9] ||= (e) => G("minConfidence", e)
736
+ "onUpdate:modelValue": s[9] ||= (e) => H("minConfidence", e)
741
737
  }, null, 8, ["model-value"]), C("span", Dn, a(Math.round(n.filters.minConfidence * 100)) + "%", 1)])])),
742
738
  s[26] ||= C("div", { class: "sidebar-divider" }, null, -1),
743
- C("div", On, [C("label", kn, a(o.$t("views.recordings.time_range")), 1), C("div", An, [(i(!0), v(b, null, r(p(ie), (e) => (i(), u(_, {
739
+ C("div", On, [C("label", kn, a(o.$t("views.recordings.time_range")), 1), C("div", An, [(i(!0), v(b, null, r(p(se), (e) => (i(), u(_, {
744
740
  key: e.value,
745
741
  label: e.label,
746
742
  severity: n.filters.timeRange === e.value ? void 0 : "secondary",
747
743
  outlined: n.filters.timeRange !== e.value,
748
744
  size: "small",
749
745
  class: "text-xs flex-1 min-w-0",
750
- onClick: (t) => G("timeRange", n.filters.timeRange === e.value ? null : e.value)
746
+ onClick: (t) => H("timeRange", n.filters.timeRange === e.value ? null : e.value)
751
747
  }, null, 8, [
752
748
  "label",
753
749
  "severity",
754
750
  "outlined",
755
751
  "onClick"
756
752
  ]))), 128))])]),
757
- p(B) ? d("", !0) : (i(), v(b, { key: 6 }, [
753
+ p(V) ? d("", !0) : (i(), v(b, { key: 6 }, [
758
754
  s[24] ||= C("div", { class: "sidebar-divider" }, null, -1),
759
755
  C("div", jn, [C("button", {
760
756
  class: "sidebar-section-title flex items-center justify-between w-full cursor-pointer",
761
- onClick: s[10] ||= (e) => xe("sensorEvents")
762
- }, [C("span", null, a(o.$t("views.recordings.sensor_events")), 1), (i(), u(c(p(L).sensorEvents ? p(M) : p(N)), { class: "w-4 h-4 text-muted" }))]), p(L).sensorEvents ? (i(), v("div", Mn, [(i(!0), v(b, null, r(p(oe), (e) => (i(), v(b, { key: e.value }, [C("label", Nn, [
757
+ onClick: s[10] ||= (e) => we("sensorEvents")
758
+ }, [C("span", null, a(o.$t("views.recordings.sensor_events")), 1), (i(), u(c(p(L).sensorEvents ? p(M) : p(N)), { class: "w-4 h-4 text-muted" }))]), p(L).sensorEvents ? (i(), v("div", Mn, [(i(!0), v(b, null, r(p(ue), (e) => (i(), v(b, { key: e.value }, [C("label", Nn, [
763
759
  k(j, {
764
760
  "model-value": n.filters.sensorEvents.includes(e.value),
765
761
  binary: !0,
766
- "onUpdate:modelValue": (t) => _e(e.value)
762
+ "onUpdate:modelValue": (t) => be(e.value)
767
763
  }, null, 8, ["model-value", "onUpdate:modelValue"]),
768
764
  (i(), u(c(e.icon), { class: "w-4 h-4 text-muted" })),
769
765
  C("span", null, a(e.label), 1)
770
- ]), e.value === "audio" && n.filters.sensorEvents.includes("audio") ? (i(), v("div", Pn, [(i(!0), v(b, null, r(p(se), (e) => (i(), v("label", {
766
+ ]), e.value === "audio" && n.filters.sensorEvents.includes("audio") ? (i(), v("div", Pn, [(i(!0), v(b, null, r(p(de), (e) => (i(), v("label", {
771
767
  key: e.value,
772
768
  class: "flex items-center gap-2 cursor-pointer text-sm"
773
769
  }, [
774
770
  k(j, {
775
771
  "model-value": n.filters.audioLabels.includes(e.value),
776
772
  binary: !0,
777
- "onUpdate:modelValue": (t) => ge(e.value)
773
+ "onUpdate:modelValue": (t) => ye(e.value)
778
774
  }, null, 8, ["model-value", "onUpdate:modelValue"]),
779
775
  (i(), u(c(e.icon), { class: "w-4 h-4 text-muted" })),
780
776
  C("span", null, a(e.label), 1)
@@ -783,26 +779,26 @@ var Xt = l({
783
779
  s[20] ||= C("div", { class: "filter-logic-line" }, null, -1),
784
780
  k(l, {
785
781
  "model-value": n.filters.filterLogicTriggers,
786
- options: p(H),
782
+ options: p(ae),
787
783
  "option-label": "label",
788
784
  "option-value": "value",
789
785
  "allow-empty": !1,
790
786
  class: "filter-logic-toggle",
791
- "onUpdate:modelValue": s[11] ||= (e) => G("filterLogicTriggers", e)
787
+ "onUpdate:modelValue": s[11] ||= (e) => H("filterLogicTriggers", e)
792
788
  }, null, 8, ["model-value", "options"]),
793
789
  s[21] ||= C("div", { class: "filter-logic-line" }, null, -1)
794
790
  ]),
795
791
  C("div", In, [C("button", {
796
792
  class: "sidebar-section-title flex items-center justify-between w-full cursor-pointer",
797
- onClick: s[12] ||= (e) => xe("eventTypes")
798
- }, [C("span", null, a(o.$t("views.recordings.event_type")), 1), (i(), u(c(p(L).eventTypes ? p(M) : p(N)), { class: "w-4 h-4 text-muted" }))]), p(L).eventTypes ? (i(), v("div", Ln, [(i(!0), v(b, null, r(p(ae), (e) => (i(), v("label", {
793
+ onClick: s[12] ||= (e) => we("eventTypes")
794
+ }, [C("span", null, a(o.$t("views.recordings.event_type")), 1), (i(), u(c(p(L).eventTypes ? p(M) : p(N)), { class: "w-4 h-4 text-muted" }))]), p(L).eventTypes ? (i(), v("div", Ln, [(i(!0), v(b, null, r(p(ce), (e) => (i(), v("label", {
799
795
  key: e.value,
800
796
  class: "flex items-center gap-2 cursor-pointer text-sm"
801
797
  }, [
802
798
  k(j, {
803
799
  "model-value": n.filters.eventTypes.includes(e.value),
804
800
  binary: !0,
805
- "onUpdate:modelValue": (t) => he(e.value)
801
+ "onUpdate:modelValue": (t) => ge(e.value)
806
802
  }, null, 8, ["model-value", "onUpdate:modelValue"]),
807
803
  (i(), u(c(e.icon), { class: "w-4 h-4 text-muted" })),
808
804
  C("span", null, a(e.label), 1)
@@ -811,43 +807,43 @@ var Xt = l({
811
807
  s[22] ||= C("div", { class: "filter-logic-line" }, null, -1),
812
808
  k(l, {
813
809
  "model-value": n.filters.filterLogicAttributes,
814
- options: p(H),
810
+ options: p(ae),
815
811
  "option-label": "label",
816
812
  "option-value": "value",
817
813
  "allow-empty": !1,
818
814
  class: "filter-logic-toggle",
819
- "onUpdate:modelValue": s[13] ||= (e) => G("filterLogicAttributes", e)
815
+ "onUpdate:modelValue": s[13] ||= (e) => H("filterLogicAttributes", e)
820
816
  }, null, 8, ["model-value", "options"]),
821
817
  s[23] ||= C("div", { class: "filter-logic-line" }, null, -1)
822
818
  ]),
823
819
  C("div", zn, [C("button", {
824
820
  class: "sidebar-section-title flex items-center justify-between w-full cursor-pointer",
825
- onClick: s[14] ||= (e) => xe("attributes")
826
- }, [C("span", null, a(o.$t("views.recordings.attributes")), 1), (i(), u(c(p(L).attributes ? p(M) : p(N)), { class: "w-4 h-4 text-muted" }))]), p(L).attributes ? (i(), v("div", Bn, [(i(!0), v(b, null, r(p(ce), (e) => (i(), v("label", {
821
+ onClick: s[14] ||= (e) => we("attributes")
822
+ }, [C("span", null, a(o.$t("views.recordings.attributes")), 1), (i(), u(c(p(L).attributes ? p(M) : p(N)), { class: "w-4 h-4 text-muted" }))]), p(L).attributes ? (i(), v("div", Bn, [(i(!0), v(b, null, r(p(fe), (e) => (i(), v("label", {
827
823
  key: e.value,
828
824
  class: "flex items-center gap-2 cursor-pointer text-sm"
829
825
  }, [
830
826
  k(j, {
831
827
  "model-value": n.filters.hasAttributes.includes(e.value),
832
828
  binary: !0,
833
- "onUpdate:modelValue": (t) => ye(e.value)
829
+ "onUpdate:modelValue": (t) => Ce(e.value)
834
830
  }, null, 8, ["model-value", "onUpdate:modelValue"]),
835
831
  (i(), u(c(e.icon), { class: "w-4 h-4 text-muted" })),
836
832
  C("span", null, a(e.label), 1)
837
833
  ]))), 128)), C("label", Vn, [
838
834
  k(j, {
839
- "model-value": n.filters.eventTypes.includes(p(U).value),
835
+ "model-value": n.filters.eventTypes.includes(p(le).value),
840
836
  binary: !0,
841
- "onUpdate:modelValue": s[15] ||= (e) => he(p(U).value)
837
+ "onUpdate:modelValue": s[15] ||= (e) => ge(p(le).value)
842
838
  }, null, 8, ["model-value"]),
843
- (i(), u(c(p(U).icon), { class: "w-4 h-4 text-muted" })),
844
- C("span", null, a(p(U).label), 1)
839
+ (i(), u(c(p(le).icon), { class: "w-4 h-4 text-muted" })),
840
+ C("span", null, a(p(le).label), 1)
845
841
  ])])) : d("", !0)])
846
842
  ], 64))
847
843
  ], 4)], 4);
848
844
  };
849
845
  }
850
- }), [["__scopeId", "data-v-859e8134"]]), Wn = { class: "font-semibold text-xl truncate" }, Gn = { class: "w-full h-full relative" }, Kn = {
846
+ }), [["__scopeId", "data-v-f2bbf9b7"]]), Wn = { class: "font-semibold text-xl truncate" }, Gn = { class: "w-full h-full relative" }, Kn = {
851
847
  key: 0,
852
848
  class: "w-full flex flex-row h-[calc(40px+1rem)] py-2 items-center fixed z-10"
853
849
  }, qn = { class: "relative z-2 page-title !m-0" }, Jn = {
@@ -862,15 +858,15 @@ var Xt = l({
862
858
  }, Zn = { class: "text-muted text-sm" }, Qn = 288, $n = /* @__PURE__ */ D({
863
859
  __name: "Recordings",
864
860
  setup(e) {
865
- let t = new Qe(), n = new ue(), r = new ke(), c = pe(), l = _e(), { bottombarHeight: f } = be(), { status: S, checking: T } = ne(), { openEventTrace: D } = we(), A = le("@camera.ui/camera-ui-nvr"), M = U(), { t: N, locale: R } = Le(), { smBreakpoint: W, xlBreakpoint: fe, mdBreakpoint: me } = P(), { registerScrollToTop: he } = G();
861
+ let t = new $e(), n = new ie(), r = new ke(), c = be(), l = ge(), { bottombarHeight: f } = Se(), { status: S, checking: T } = te(), { openEventTrace: D } = Te(), A = re("@camera.ui/camera-ui-nvr"), M = ue(), { t: N, locale: z } = Re(), { smBreakpoint: B, xlBreakpoint: U, mdBreakpoint: W } = F(), { registerScrollToTop: _e } = V();
866
862
  if (typeof VideoDecoder < "u") {
867
- let e = ge({ cacheSize: 20 });
868
- o(I, e), Ne(() => e.dispose());
863
+ let e = P({ cacheSize: 20 });
864
+ o(Me, e), Pe(() => e.dispose());
869
865
  }
870
- let { results: ve, isSearching: Se, isAvailable: Oe, hasSearched: Ae, search: Me, clear: Pe } = ae(), { data: Ie } = t.getAssistantStatusQuery(), { data: Re } = n.getCamerasQuery({
866
+ let { results: ve, isSearching: xe, isAvailable: Oe, hasSearched: Ae, search: Ne, clear: Fe } = pe(), { data: Le } = t.getAssistantStatusQuery(), { data: ze } = n.getCamerasQuery({
871
867
  page: 1,
872
868
  pageSize: -1
873
- }), { data: ze } = r.getUserQuery(m(() => l.user?.username ?? "")), Be = Array.from({ length: 24 }, (e, t) => t), Ve = {
869
+ }), { data: Be } = r.getUserQuery(m(() => l.user?.username ?? "")), Ve = Array.from({ length: 24 }, (e, t) => t), He = {
874
870
  contentKind: "all",
875
871
  favoritesOnly: !1,
876
872
  search: "",
@@ -889,69 +885,69 @@ var Xt = l({
889
885
  minConfidence: .5,
890
886
  minSemanticScore: .5,
891
887
  onlyWithRecordings: !0
892
- }, He = {
888
+ }, Ue = {
893
889
  "1h": 36e5,
894
890
  "1d": 864e5,
895
891
  "1w": 6048e5,
896
892
  "1m": 2592e6
897
- }, We = x("gridRef"), Ge = x("viewMenuRef"), K = O("closed"), Ke = O(!1), q = O({ ...Ve }), Je = O(!1), Ye = O(""), Xe = E({
893
+ }, Ge = x("gridRef"), Ke = x("viewMenuRef"), G = O("closed"), qe = O(!1), K = O({ ...He }), Ye = O(!1), Xe = O(""), Ze = E({
898
894
  hasDetections: !0,
899
895
  withRecordingInfo: !0,
900
896
  hasRecording: !0
901
- }), $e = JSON.stringify(Xe.value), J = O(), Y = O(!1), lt = E([]), ut = O(null), dt = x("reindexAnchorRef"), { left: ft } = Fe(dt), pt = !1, X = m(() => fe.value ? !0 : K.value === "opened"), ht = m(() => me.value), gt = xe(() => We.value?.scrollY ?? 0), _t = m(() => X.value && ht.value ? !0 : gt.value && !S.value?.running), vt = m(() => me.value ? "0px" : X.value ? `${Qn}px` : "0px"), Z = m(() => (Re.value?.result ?? []).map((e) => ({
897
+ }), et = JSON.stringify(Ze.value), q = O(), J = O(!1), ut = E([]), dt = O(null), ft = x("reindexAnchorRef"), { left: pt } = Ie(ft), mt = !1, Y = m(() => U.value ? !0 : G.value === "opened"), gt = m(() => W.value), _t = Ce(() => Ge.value?.scrollY ?? 0), vt = m(() => Y.value && gt.value ? !0 : _t.value && !S.value?.running), yt = m(() => W.value ? "0px" : Y.value ? `${Qn}px` : "0px"), X = m(() => (ze.value?.result ?? []).map((e) => ({
902
898
  id: e._id,
903
899
  name: e.name,
904
900
  room: e.room
905
- }))), yt = m(() => {
901
+ }))), bt = m(() => {
906
902
  let e = /* @__PURE__ */ new Map();
907
- for (let t of Z.value) e.set(t.id, t.name);
903
+ for (let t of X.value) e.set(t.id, t.name);
908
904
  return e;
909
- }), bt = m(() => {
905
+ }), xt = m(() => {
910
906
  let e = /* @__PURE__ */ new Map();
911
- for (let t of Re.value?.result ?? []) e.set(t._id, t);
907
+ for (let t of ze.value?.result ?? []) e.set(t._id, t);
912
908
  return e;
913
- }), xt = m(() => {
914
- let e = q.value.rooms;
915
- return (e.length > 0 ? Z.value.filter((t) => e.includes(t.room ?? "")) : Z.value).map((e) => e.id);
916
- }), St = m(() => q.value.cameraIds.filter((e) => xt.value.includes(e))), Ct = m(() => xt.value);
917
- he(() => We.value?.scrollToTop());
918
- let { events: wt, isLoading: Tt, hasMore: Et, stats: Dt, loadMore: Ot, loadThumbnails: kt, deleteEvents: At, reset: jt, loadFailed: Mt, pluginUnavailable: Nt } = ie({
919
- availableCameraIds: Ct,
920
- cameraIds: St,
909
+ }), St = m(() => {
910
+ let e = K.value.rooms;
911
+ return (e.length > 0 ? X.value.filter((t) => e.includes(t.room ?? "")) : X.value).map((e) => e.id);
912
+ }), Ct = m(() => K.value.cameraIds.filter((e) => St.value.includes(e))), wt = m(() => St.value);
913
+ _e(() => Ge.value?.scrollToTop());
914
+ let { events: Tt, isLoading: Et, hasMore: Dt, stats: Ot, loadMore: kt, loadThumbnails: At, deleteEvents: jt, reset: Mt, loadFailed: Nt, pluginUnavailable: Pt } = se({
915
+ availableCameraIds: wt,
916
+ cameraIds: Ct,
921
917
  realtime: !0,
922
918
  pageSize: 40,
923
- filter: Xe,
919
+ filter: Ze,
924
920
  withEpisodes: !0,
925
921
  withStats: !0
926
- }), Q = m(() => {
922
+ }), Z = m(() => {
927
923
  let e = /* @__PURE__ */ new Map();
928
924
  for (let t of ve.value ?? []) {
929
925
  let n = e.get(t.eventId);
930
926
  (!n || t.score > n) && e.set(t.eventId, t.score);
931
927
  }
932
928
  return e;
933
- }), Pt = m(() => Ae.value), Ft = m(() => Nt.value ? N("views.recordings.recordings_unavailable") : Mt.value ? N("views.recordings.load_failed") : N("views.recordings.no_recordings")), $ = m(() => {
934
- let e = wt.value.filter((e) => e.state === "ended" || (e.segments?.length ?? 0) > 0), t = q.value;
935
- if (J.value !== void 0) {
936
- let t = J.value;
929
+ }), Ft = m(() => Ae.value), It = m(() => Pt.value ? N("views.recordings.recordings_unavailable") : Nt.value ? N("views.recordings.load_failed") : N("views.recordings.no_recordings")), Q = m(() => {
930
+ let e = Tt.value.filter((e) => e.state === "ended" || (e.segments?.length ?? 0) > 0), t = K.value;
931
+ if (q.value !== void 0) {
932
+ let t = q.value;
937
933
  e = e.filter((e) => e.startTime >= t);
938
934
  }
939
- return t.gridRegions.length > 0 && (e = e.filter((e) => e.segments.some((e) => e.detections.some((e) => e.box && it(e.box, t.gridRegions))))), t.favoritesOnly && (e = e.filter((e) => e.favorite)), Pt.value && (e = e.filter((e) => {
940
- let n = Q.value.get(e.id);
935
+ return t.gridRegions.length > 0 && (e = e.filter((e) => e.segments.some((e) => e.detections.some((e) => e.box && at(e.box, t.gridRegions))))), t.favoritesOnly && (e = e.filter((e) => e.favorite)), Ft.value && (e = e.filter((e) => {
936
+ let n = Z.value.get(e.id);
941
937
  return n != null && n >= t.minSemanticScore;
942
- }), e.sort((e, t) => (Q.value.get(t.id) ?? 0) - (Q.value.get(e.id) ?? 0))), e;
943
- }), It = m(() => q.value.contentKind === "episodes"), Lt = m(() => {
944
- let e = q.value;
938
+ }), e.sort((e, t) => (Z.value.get(t.id) ?? 0) - (Z.value.get(e.id) ?? 0))), e;
939
+ }), $ = m(() => K.value.contentKind === "episodes"), Lt = m(() => {
940
+ let e = K.value;
945
941
  return e.search.trim() !== "" || e.eventTypes.length > 0 || e.audioLabels.length > 0 || e.hasAttributes.length > 0 || e.sensorEvents.length > 0 || e.minConfidence !== .5;
946
- }), Rt = m(() => Ie.value?.state === "ready"), zt = m(() => {
947
- if (q.value.contentKind === "events") return [];
942
+ }), Rt = m(() => Le.value?.state === "ready"), zt = m(() => {
943
+ if (K.value.contentKind === "events") return [];
948
944
  A.storeVersion.value;
949
- let e = q.value;
950
- if (!It.value && (Y.value || Pt.value || e.gridRegions.length > 0 || Lt.value)) return [];
951
- let t = St.value.length > 0 ? St.value : Ct.value, n = J.value ?? 0, r = Infinity;
952
- if (e.timeRange === "custom" && e.customDateRange && (n = Math.max(n, e.customDateRange[0].getTime()), r = e.customDateRange[1].getTime()), Et.value && !It.value) {
945
+ let e = K.value;
946
+ if (!$.value && (J.value || Ft.value || e.gridRegions.length > 0 || Lt.value)) return [];
947
+ let t = Ct.value.length > 0 ? Ct.value : wt.value, n = q.value ?? 0, r = Infinity;
948
+ if (e.timeRange === "custom" && e.customDateRange && (n = Math.max(n, e.customDateRange[0].getTime()), r = e.customDateRange[1].getTime()), Dt.value && !$.value) {
953
949
  let e = Infinity;
954
- for (let t of wt.value) e = Math.min(e, t.thumbnailAt ?? t.startTime);
950
+ for (let t of Tt.value) e = Math.min(e, t.thumbnailAt ?? t.startTime);
955
951
  n = Math.max(n, e);
956
952
  }
957
953
  let i = [];
@@ -962,21 +958,21 @@ var Xt = l({
962
958
  }));
963
959
  return i;
964
960
  }), Bt = m(() => {
965
- if (It.value) return [...zt.value].sort((e, t) => tt(t) - tt(e));
966
- if (Y.value && lt.value.length) return lt.value;
967
- let e = $.value.map((e) => ({
961
+ if ($.value) return [...zt.value].sort((e, t) => nt(t) - nt(e));
962
+ if (J.value && ut.value.length) return ut.value;
963
+ let e = Q.value.map((e) => ({
968
964
  event: e,
969
965
  key: e.id
970
966
  }));
971
- return zt.value.length && (e.push(...zt.value), e.sort((e, t) => tt(t) - tt(e))), e;
967
+ return zt.value.length && (e.push(...zt.value), e.sort((e, t) => nt(t) - nt(e))), e;
972
968
  }), Vt = m(() => {
973
- let e = Dt.value, t = q.value;
974
- if (!e || !Et.value || Pt.value || t.gridRegions.length > 0 || t.timeRange && J.value === void 0) return;
975
- if (It.value) return e.episodes;
976
- if (Y.value) return e.segments;
969
+ let e = Ot.value, t = K.value;
970
+ if (!e || !Dt.value || Ft.value || t.gridRegions.length > 0 || t.timeRange && q.value === void 0) return;
971
+ if ($.value) return e.episodes;
972
+ if (J.value) return e.segments;
977
973
  let n = t.contentKind !== "events" && !Lt.value;
978
974
  return e.total + (n ? e.episodes : 0);
979
- }), Ht = m(() => ye(void 0, "admin")), Ut = m(() => $.value.filter((e) => e.state === "ended")), { selectionMode: Gt, selectedIds: Kt, allSelected: qt, bulkBusy: Jt, enterSelectionMode: Yt, exitSelectionMode: Xt, toggleSelectAll: Zt, toggleSelection: Qt } = je(Ut, (e) => e.id);
975
+ }), Ht = m(() => ye(void 0, "admin")), Ut = m(() => Q.value.filter((e) => e.state === "ended")), { selectionMode: Gt, selectedIds: Kt, allSelected: qt, bulkBusy: Jt, enterSelectionMode: Yt, exitSelectionMode: Xt, toggleSelectAll: Zt, toggleSelection: Qt } = le(Ut, (e) => e.id);
980
976
  function $t() {
981
977
  let e = [...Kt.value];
982
978
  e.length && !Jt.value && c.openTextDialog({
@@ -989,7 +985,7 @@ var Xt = l({
989
985
  onConfirm: async () => {
990
986
  Jt.value = !0;
991
987
  try {
992
- await At(e), Xt(), M.add({
988
+ await jt(e), Xt(), M.add({
993
989
  severity: "success",
994
990
  detail: N("views.recordings.delete_selected_done", { count: e.length }),
995
991
  life: 5e3
@@ -1012,9 +1008,9 @@ var Xt = l({
1012
1008
  label: N("views.recordings.ungroup"),
1013
1009
  description: N("views.recordings.ungroup_hint"),
1014
1010
  toggle: !0,
1015
- toggleState: Y.value,
1011
+ toggleState: J.value,
1016
1012
  onClick: () => {
1017
- pt = !0, Y.value = !Y.value, l.updateUser({ preferences: { recordings: { ungrouped: Y.value } } });
1013
+ mt = !0, J.value = !J.value, l.updateUser({ preferences: { recordings: { ungrouped: J.value } } });
1018
1014
  }
1019
1015
  },
1020
1016
  {
@@ -1022,11 +1018,11 @@ var Xt = l({
1022
1018
  label: N("views.recordings.only_with_recordings"),
1023
1019
  description: N("views.recordings.only_with_recordings_hint"),
1024
1020
  toggle: !0,
1025
- toggleState: q.value.onlyWithRecordings,
1021
+ toggleState: K.value.onlyWithRecordings,
1026
1022
  onClick: () => {
1027
- q.value = {
1028
- ...q.value,
1029
- onlyWithRecordings: !q.value.onlyWithRecordings
1023
+ K.value = {
1024
+ ...K.value,
1025
+ onlyWithRecordings: !K.value.onlyWithRecordings
1030
1026
  };
1031
1027
  }
1032
1028
  },
@@ -1035,17 +1031,17 @@ var Xt = l({
1035
1031
  label: N("views.recordings.favorites_only"),
1036
1032
  description: N("views.recordings.favorites_hint"),
1037
1033
  toggle: !0,
1038
- toggleState: q.value.favoritesOnly,
1034
+ toggleState: K.value.favoritesOnly,
1039
1035
  onClick: () => {
1040
- q.value = {
1041
- ...q.value,
1042
- favoritesOnly: !q.value.favoritesOnly
1036
+ K.value = {
1037
+ ...K.value,
1038
+ favoritesOnly: !K.value.favoritesOnly
1043
1039
  };
1044
1040
  }
1045
1041
  }] : []
1046
1042
  ]);
1047
1043
  function tn() {
1048
- c.openComponentDialog(mt, { data: {
1044
+ c.openComponentDialog(ht, { data: {
1049
1045
  title: N("views.recordings.reindex.title"),
1050
1046
  contentProps: {},
1051
1047
  confirmText: N("views.recordings.reindex.start")
@@ -1055,31 +1051,31 @@ var Xt = l({
1055
1051
  c.openComponentDialog(Wt, { data: {
1056
1052
  title: N("views.recordings.export.title"),
1057
1053
  contentProps: {
1058
- cameras: Z.value,
1059
- preselect: q.value.cameraIds?.length ? q.value.cameraIds : []
1054
+ cameras: X.value,
1055
+ preselect: K.value.cameraIds?.length ? K.value.cameraIds : []
1060
1056
  },
1061
1057
  confirmText: N("views.recordings.export.confirm")
1062
1058
  } });
1063
1059
  }
1064
1060
  function rn() {
1065
- let e = K.value;
1066
- K.value = e === "opened" ? "closed" : "opened";
1061
+ let e = G.value;
1062
+ G.value = e === "opened" ? "closed" : "opened";
1067
1063
  }
1068
1064
  function an() {
1069
- K.value = "closed";
1065
+ G.value = "closed";
1070
1066
  }
1071
1067
  function on(e) {
1072
- !e.semanticQuery?.trim() && q.value.semanticQuery?.trim() && Pe(), q.value = e;
1068
+ !e.semanticQuery?.trim() && K.value.semanticQuery?.trim() && Fe(), K.value = e;
1073
1069
  }
1074
1070
  async function sn(e) {
1075
- Je.value = !0, Ye.value = "";
1071
+ Ye.value = !0, Xe.value = "";
1076
1072
  try {
1077
- let t = await Ze(e, R.value, Intl.DateTimeFormat().resolvedOptions().timeZone);
1073
+ let t = await Qe(e, z.value, Intl.DateTimeFormat().resolvedOptions().timeZone);
1078
1074
  on({
1079
- ...Ve,
1075
+ ...He,
1080
1076
  ...t.filters,
1081
1077
  favoritesOnly: Ht.value && t.filters.favoritesOnly
1082
- }), cn(t.filters.semanticQuery), Ye.value = t.note;
1078
+ }), cn(t.filters.semanticQuery), Xe.value = t.note;
1083
1079
  } catch (e) {
1084
1080
  M.add({
1085
1081
  severity: "error",
@@ -1087,23 +1083,23 @@ var Xt = l({
1087
1083
  life: 5e3
1088
1084
  });
1089
1085
  } finally {
1090
- Je.value = !1;
1086
+ Ye.value = !1;
1091
1087
  }
1092
1088
  }
1093
1089
  function cn(e) {
1094
1090
  if (!e.trim()) {
1095
- Pe();
1091
+ Fe();
1096
1092
  return;
1097
1093
  }
1098
- Me(e);
1094
+ Ne(e);
1099
1095
  }
1100
1096
  function ln(e, t) {
1101
- let n = bt.value.get(e.cameraId);
1097
+ let n = xt.value.get(e.cameraId);
1102
1098
  n && D(e, n, t);
1103
1099
  }
1104
1100
  function un(e, t) {
1105
- let n = bt.value.get(e.cameraId);
1106
- n && c.openComponentDialog(Ce, {
1101
+ let n = xt.value.get(e.cameraId);
1102
+ n && c.openComponentDialog(me, {
1107
1103
  data: {
1108
1104
  title: n.name,
1109
1105
  dedupeKey: `camera-event:${n._id}:${t}`,
@@ -1115,7 +1111,7 @@ var Xt = l({
1115
1111
  eventTimestamp: t
1116
1112
  },
1117
1113
  headerActions: e.segments?.some((e) => e?.description) ? [{
1118
- icon: V,
1114
+ icon: oe,
1119
1115
  toggle: !0,
1120
1116
  onClick: () => {}
1121
1117
  }] : void 0,
@@ -1133,11 +1129,11 @@ var Xt = l({
1133
1129
  } }
1134
1130
  });
1135
1131
  }
1136
- return _(fe, (e) => {
1137
- e && (K.value = "closed");
1138
- }), _(() => q.value.timeRange, (e) => {
1139
- J.value = e && He[e] ? Date.now() - He[e] : void 0;
1140
- }, { immediate: !0 }), _(q, (e) => {
1132
+ return _(U, (e) => {
1133
+ e && (G.value = "closed");
1134
+ }), _(() => K.value.timeRange, (e) => {
1135
+ q.value = e && Ue[e] ? Date.now() - Ue[e] : void 0;
1136
+ }, { immediate: !0 }), _(K, (e) => {
1141
1137
  let t = e.eventTypes.length > 0 || e.sensorEvents.length > 0 || e.audioLabels.length > 0 || e.hasAttributes.length > 0, n = {
1142
1138
  types: e.eventTypes.length > 0 ? e.eventTypes : void 0,
1143
1139
  triggers: e.sensorEvents.length > 0 ? e.sensorEvents : void 0,
@@ -1151,29 +1147,29 @@ var Xt = l({
1151
1147
  withRecordingInfo: !0,
1152
1148
  hasRecording: e.onlyWithRecordings || void 0,
1153
1149
  favoritesOnly: e.favoritesOnly || void 0,
1154
- startedSinceMs: J.value
1150
+ startedSinceMs: q.value
1155
1151
  }, r = JSON.stringify(n);
1156
- r !== $e && ($e = r, Xe.value = n);
1152
+ r !== et && (et = r, Ze.value = n);
1157
1153
  }, {
1158
1154
  deep: !0,
1159
1155
  immediate: !0
1160
- }), _(ze, (e) => {
1161
- if (!e || pt) return;
1156
+ }), _(Be, (e) => {
1157
+ if (!e || mt) return;
1162
1158
  let t = e.preferences?.recordings?.ungrouped;
1163
- t !== void 0 && (Y.value = t);
1164
- }, { immediate: !0 }), _([Y, $], ([e, t]) => {
1165
- lt.value = e ? rt(t) : [];
1166
- }), _(() => q.value.cameraIds, (e) => {
1167
- e.length !== 1 && q.value.gridRegions.length > 0 && (q.value = {
1168
- ...q.value,
1159
+ t !== void 0 && (J.value = t);
1160
+ }, { immediate: !0 }), _([J, Q], ([e, t]) => {
1161
+ ut.value = e ? it(t) : [];
1162
+ }), _(() => K.value.cameraIds, (e) => {
1163
+ e.length !== 1 && K.value.gridRegions.length > 0 && (K.value = {
1164
+ ...K.value,
1169
1165
  gridRegions: []
1170
1166
  });
1171
1167
  }), j(() => {
1172
1168
  requestAnimationFrame(() => {
1173
- Ke.value = !0;
1169
+ qe.value = !0;
1174
1170
  });
1175
1171
  }), (e, t) => {
1176
- let n = te, r = oe, o = z, c = Ue, l = at, m = ct, _ = st, x = de, E = et, D = nt, O = Ee, A = Te, j = B, M = L, N = H, P = ee;
1172
+ let n = Ee, r = ne, o = fe, c = We, l = ot, m = lt, _ = ct, x = H, E = tt, D = rt, O = De, A = he, j = ae, M = R, N = ce, P = ee;
1177
1173
  return i(), v("div", null, [
1178
1174
  k(n, { position: "center" }, {
1179
1175
  default: h(() => [C("span", Wn, a(e.$t("views.recordings.title")), 1)]),
@@ -1188,7 +1184,7 @@ var Xt = l({
1188
1184
  rounded: "",
1189
1185
  onClick: rn
1190
1186
  }, {
1191
- icon: h(() => [p(K) === "closed" ? (i(), u(r, {
1187
+ icon: h(() => [p(G) === "closed" ? (i(), u(r, {
1192
1188
  key: 0,
1193
1189
  width: "100%",
1194
1190
  height: "100%"
@@ -1207,7 +1203,7 @@ var Xt = l({
1207
1203
  class: "cui-button p-2 text-color",
1208
1204
  text: "",
1209
1205
  rounded: "",
1210
- onClick: t[0] ||= (e) => p(Ge)?.toggleMenu(e)
1206
+ onClick: t[0] ||= (e) => p(Ke)?.toggleMenu(e)
1211
1207
  }, {
1212
1208
  icon: h(() => [k(l, {
1213
1209
  width: "100%",
@@ -1218,19 +1214,19 @@ var Xt = l({
1218
1214
  _: 1
1219
1215
  }),
1220
1216
  k(Un, {
1221
- filters: p(q),
1222
- cameras: p(Z),
1223
- "is-open": p(X),
1224
- "is-overlay": p(ht),
1217
+ filters: p(K),
1218
+ cameras: p(X),
1219
+ "is-open": p(Y),
1220
+ "is-overlay": p(gt),
1225
1221
  "result-count": p(Bt).length,
1226
1222
  "result-total": p(Vt),
1227
- "result-capped": p(Dt)?.capped,
1228
- "semantic-count": p(Pt) ? p(Q).size : void 0,
1223
+ "result-capped": p(Ot)?.capped,
1224
+ "semantic-count": p(Ft) ? p(Z).size : void 0,
1229
1225
  "semantic-search-available": p(Oe),
1230
- "semantic-search-loading": p(Se),
1226
+ "semantic-search-loading": p(xe),
1231
1227
  "assistant-search-available": p(Rt),
1232
- "assistant-search-loading": p(Je),
1233
- "assistant-search-note": p(Ye),
1228
+ "assistant-search-loading": p(Ye),
1229
+ "assistant-search-note": p(Xe),
1234
1230
  "onUpdate:filters": on,
1235
1231
  onSemanticSearch: cn,
1236
1232
  onAssistantSearch: sn,
@@ -1253,23 +1249,23 @@ var Xt = l({
1253
1249
  (i(), u(g, {
1254
1250
  to: "#container",
1255
1251
  defer: ""
1256
- }, [p(X) && p(ht) ? (i(), v("div", {
1252
+ }, [p(Y) && p(gt) ? (i(), v("div", {
1257
1253
  key: 0,
1258
1254
  class: "fixed top-0 left-0 right-0 bottom-0 w-full h-full bg-black/50 z-1",
1259
1255
  onClick: an
1260
1256
  })) : d("", !0)])),
1261
1257
  C("main", {
1262
1258
  ref_key: "reindexAnchorRef",
1263
- ref: dt,
1259
+ ref: ft,
1264
1260
  class: "relative w-full h-full",
1265
1261
  style: y({
1266
- paddingLeft: p(vt),
1267
- transition: p(Ke) ? "padding-left 200ms" : void 0
1262
+ paddingLeft: p(yt),
1263
+ transition: p(qe) ? "padding-left 200ms" : void 0
1268
1264
  })
1269
1265
  }, [C("div", Gn, [
1270
- p(W) ? d("", !0) : (i(), v("div", Kn, [
1266
+ p(B) ? d("", !0) : (i(), v("div", Kn, [
1271
1267
  t[3] ||= C("div", { class: "ml-2" }, null, -1),
1272
- p(fe) ? d("", !0) : (i(), u(c, {
1268
+ p(U) ? d("", !0) : (i(), u(c, {
1273
1269
  key: 0,
1274
1270
  id: "recordings-sidebar-toggle",
1275
1271
  severity: "secondary",
@@ -1278,7 +1274,7 @@ var Xt = l({
1278
1274
  rounded: "",
1279
1275
  onClick: rn
1280
1276
  }, {
1281
- icon: h(() => [p(X) ? (i(), u(m, {
1277
+ icon: h(() => [p(Y) ? (i(), u(m, {
1282
1278
  key: 0,
1283
1279
  width: "100%",
1284
1280
  height: "100%"
@@ -1299,12 +1295,12 @@ var Xt = l({
1299
1295
  C("div")
1300
1296
  ], -1)
1301
1297
  ])),
1302
- p(W) ? d("", !0) : (i(), v("div", Jn, [w((i(), u(c, {
1298
+ p(B) ? d("", !0) : (i(), v("div", Jn, [w((i(), u(c, {
1303
1299
  severity: "secondary",
1304
1300
  text: "",
1305
1301
  rounded: "",
1306
1302
  class: "cui-icon-lg relative z-2",
1307
- onClick: t[1] ||= (e) => p(Ge)?.toggleMenu(e)
1303
+ onClick: t[1] ||= (e) => p(Ke)?.toggleMenu(e)
1308
1304
  }, {
1309
1305
  icon: h(() => [k(l, {
1310
1306
  width: "100%",
@@ -1318,25 +1314,25 @@ var Xt = l({
1318
1314
  { bottom: !0 }
1319
1315
  ]])])),
1320
1316
  C("div", { class: s(["px-2 h-full w-full flex flex-col", {
1321
- "pt-4": p(W),
1322
- "pt-[calc(40px+2rem)]": !p(W)
1317
+ "pt-4": p(B),
1318
+ "pt-[calc(40px+2rem)]": !p(B)
1323
1319
  }]) }, [
1324
1320
  p(Bt).length ? (i(), u(D, {
1325
1321
  key: 0,
1326
1322
  ref_key: "gridRef",
1327
- ref: We,
1323
+ ref: Ge,
1328
1324
  items: p(Bt),
1329
- "min-item-width": p(W) ? 160 : 180,
1325
+ "min-item-width": p(B) ? 160 : 180,
1330
1326
  gap: 8,
1331
- "has-more": p(Et),
1332
- "load-more": p(Ot),
1327
+ "has-more": p(Dt),
1328
+ "load-more": p(kt),
1333
1329
  "item-key": (e) => e.key,
1334
1330
  class: "flex-1 min-h-0"
1335
1331
  }, {
1336
1332
  item: h(({ item: e }) => [e.episode ? (i(), u(x, {
1337
1333
  key: 0,
1338
1334
  episode: e.episode,
1339
- "camera-by-id": p(bt),
1335
+ "camera-by-id": p(xt),
1340
1336
  fluid: "",
1341
1337
  "click-disabled": p(Gt)
1342
1338
  }, null, 8, [
@@ -1346,19 +1342,19 @@ var Xt = l({
1346
1342
  ])) : (i(), u(E, {
1347
1343
  key: 1,
1348
1344
  event: e.event,
1349
- "camera-name": p(yt).get(e.event.cameraId),
1350
- camera: p(bt).get(e.event.cameraId),
1351
- "load-thumbnails": p(kt),
1352
- "semantic-score": p(Q).get(e.event.id),
1345
+ "camera-name": p(bt).get(e.event.cameraId),
1346
+ camera: p(xt).get(e.event.cameraId),
1347
+ "load-thumbnails": p(At),
1348
+ "semantic-score": p(Z).get(e.event.id),
1353
1349
  "seg-index": e.segIndex,
1354
1350
  "selection-mode": p(Gt) && e.event.state === "ended",
1355
1351
  selected: p(Kt).has(e.event.id),
1356
- "sibling-active": e.segIndex !== void 0 && p(ut) === e.event.id,
1352
+ "sibling-active": e.segIndex !== void 0 && p(dt) === e.event.id,
1357
1353
  onSelect: (t) => p(Qt)(e.event.id),
1358
1354
  onScrollToEvent: (t) => un(e.event, t),
1359
1355
  onOpenTrace: (t) => ln(e.event, t),
1360
- onMouseenter: (t) => ut.value = e.segIndex === void 0 ? null : e.event.id,
1361
- onMouseleave: t[2] ||= (e) => ut.value = null
1356
+ onMouseenter: (t) => dt.value = e.segIndex === void 0 ? null : e.event.id,
1357
+ onMouseleave: t[2] ||= (e) => dt.value = null
1362
1358
  }, null, 8, [
1363
1359
  "event",
1364
1360
  "camera-name",
@@ -1381,10 +1377,10 @@ var Xt = l({
1381
1377
  "has-more",
1382
1378
  "load-more",
1383
1379
  "item-key"
1384
- ])) : p(Tt) ? (i(), u(D, {
1380
+ ])) : p(Et) ? (i(), u(D, {
1385
1381
  key: 1,
1386
- items: p(Be),
1387
- "min-item-width": p(W) ? 160 : 180,
1382
+ items: p(Ve),
1383
+ "min-item-width": p(B) ? 160 : 180,
1388
1384
  gap: 8,
1389
1385
  "item-key": (e) => e,
1390
1386
  class: "flex-1 min-h-0 pointer-events-none"
@@ -1400,31 +1396,31 @@ var Xt = l({
1400
1396
  "min-item-width",
1401
1397
  "item-key"
1402
1398
  ])) : d("", !0),
1403
- p(Tt) && p(Bt).length || p(Se) ? (i(), v("div", Yn, [k(A, {
1399
+ p(Et) && p(Bt).length || p(xe) ? (i(), v("div", Yn, [k(A, {
1404
1400
  width: "24px",
1405
1401
  height: "24px",
1406
1402
  class: "text-muted"
1407
1403
  })])) : d("", !0),
1408
- !p($).length && !p(Tt) && !p(Se) ? (i(), v("div", Xn, [
1404
+ !p(Q).length && !p(Et) && !p(xe) ? (i(), v("div", Xn, [
1409
1405
  k(j, { class: "w-12 h-12 text-muted" }),
1410
- C("span", Zn, a(p(Ft)), 1),
1411
- p(Mt) && !p(Nt) ? (i(), u(c, {
1406
+ C("span", Zn, a(p(It)), 1),
1407
+ p(Nt) && !p(Pt) ? (i(), u(c, {
1412
1408
  key: 0,
1413
1409
  severity: "secondary",
1414
1410
  class: "cui-button-small",
1415
1411
  label: e.$t("views.recordings.load_failed_retry"),
1416
- onClick: p(jt)
1412
+ onClick: p(Mt)
1417
1413
  }, null, 8, ["label", "onClick"])) : d("", !0)
1418
1414
  ])) : d("", !0)
1419
1415
  ], 2)
1420
1416
  ])], 4),
1421
- p(Ht) && p(Z).length ? (i(), v("div", {
1417
+ p(Ht) && p(X).length ? (i(), v("div", {
1422
1418
  key: 0,
1423
- class: s(["fixed z-10", p(_t) ? "scale-0 opacity-0" : "scale-100 opacity-100"]),
1419
+ class: s(["fixed z-10", p(vt) ? "scale-0 opacity-0" : "scale-100 opacity-100"]),
1424
1420
  style: y({
1425
- left: `calc(${p(ft)}px + ${p(vt)} + 0.75rem + var(--safe-area-inset-left))`,
1421
+ left: `calc(${p(pt)}px + ${p(yt)} + 0.75rem + var(--safe-area-inset-left))`,
1426
1422
  bottom: `calc(${p(f)}px + 1.25rem + var(--safe-area-inset-bottom))`,
1427
- transition: p(Ke) ? "left 200ms, transform 200ms ease-in-out, opacity 200ms ease-in-out" : void 0
1423
+ transition: p(qe) ? "left 200ms, transform 200ms ease-in-out, opacity 200ms ease-in-out" : void 0
1428
1424
  })
1429
1425
  }, [k(c, {
1430
1426
  severity: "secondary",
@@ -1437,20 +1433,20 @@ var Xt = l({
1437
1433
  }) : e.$t("views.recordings.reindex.button"),
1438
1434
  onClick: tn
1439
1435
  }, {
1440
- icon: h(() => [p(S)?.running ? (i(), u(p(Te), { key: 0 })) : (i(), u(p(ot), { key: 1 }))]),
1436
+ icon: h(() => [p(S)?.running ? (i(), u(p(he), { key: 0 })) : (i(), u(p(st), { key: 1 }))]),
1441
1437
  _: 1
1442
1438
  }, 8, ["disabled", "label"])], 6)) : d("", !0),
1443
- p(Z).length ? (i(), u(N, {
1439
+ p(X).length ? (i(), u(N, {
1444
1440
  key: 1,
1445
1441
  "force-visible": p(Gt),
1446
- "scroll-y": p(We)?.scrollY ?? 0
1442
+ "scroll-y": p(Ge)?.scrollY ?? 0
1447
1443
  }, {
1448
1444
  default: h(() => [p(Gt) ? (i(), v(b, { key: 1 }, [
1449
1445
  k(M, {
1450
1446
  grouped: "",
1451
1447
  "tooltip-props": { value: e.$t("components.form.tooltip.cancel_selection") },
1452
1448
  "button-props": { severity: "secondary" },
1453
- icon: p(qe),
1449
+ icon: p(Je),
1454
1450
  "icon-props": {
1455
1451
  width: "100%",
1456
1452
  height: "100%"
@@ -1465,7 +1461,7 @@ var Xt = l({
1465
1461
  grouped: "",
1466
1462
  "tooltip-props": { value: p(qt) ? e.$t("components.form.tooltip.deselect_all") : e.$t("components.form.tooltip.select_all") },
1467
1463
  "button-props": { severity: p(qt) ? "primary" : "secondary" },
1468
- icon: p(ce),
1464
+ icon: p(de),
1469
1465
  "icon-props": {
1470
1466
  width: "100%",
1471
1467
  height: "100%"
@@ -1484,7 +1480,7 @@ var Xt = l({
1484
1480
  severity: "danger",
1485
1481
  disabled: !p(Kt).size || p(Jt)
1486
1482
  },
1487
- icon: p(se),
1483
+ icon: p(I),
1488
1484
  "icon-props": {
1489
1485
  width: "100%",
1490
1486
  height: "100%"
@@ -1495,12 +1491,12 @@ var Xt = l({
1495
1491
  "button-props",
1496
1492
  "icon"
1497
1493
  ])
1498
- ], 64)) : (i(), v(b, { key: 0 }, [p(Ht) && p($).length ? (i(), u(M, {
1494
+ ], 64)) : (i(), v(b, { key: 0 }, [p(Ht) && p(Q).length ? (i(), u(M, {
1499
1495
  key: 0,
1500
1496
  grouped: "",
1501
1497
  "tooltip-props": { value: e.$t("views.recordings.select") },
1502
1498
  "button-props": { severity: "secondary" },
1503
- icon: p(F),
1499
+ icon: p(je),
1504
1500
  "icon-props": {
1505
1501
  width: "100%",
1506
1502
  height: "100%"
@@ -1514,7 +1510,7 @@ var Xt = l({
1514
1510
  grouped: "",
1515
1511
  "tooltip-props": { value: e.$t("views.recordings.export.title") },
1516
1512
  "button-props": { class: "text-white" },
1517
- icon: p(De),
1513
+ icon: p(we),
1518
1514
  "icon-props": {
1519
1515
  width: "26px",
1520
1516
  height: "26px"
@@ -1523,9 +1519,9 @@ var Xt = l({
1523
1519
  }, null, 8, ["tooltip-props", "icon"])], 64))]),
1524
1520
  _: 1
1525
1521
  }, 8, ["force-visible", "scroll-y"])) : d("", !0),
1526
- k(re, {
1522
+ k(L, {
1527
1523
  ref_key: "viewMenuRef",
1528
- ref: Ge,
1524
+ ref: Ke,
1529
1525
  items: p(en),
1530
1526
  "auto-hide": !1,
1531
1527
  popover: { pt: {