@camera.ui/server 2.2.2 → 2.2.3

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 (398) hide show
  1. package/dist/interface/assets/{404-bSMSPWcp.js → 404-D0S6IGok.js} +1 -1
  2. package/dist/interface/assets/{About-DqMxC4AO.js → About-DAw9u8ZY.js} +1 -1
  3. package/dist/interface/assets/{Assistant-CIHF-bHs.js → Assistant-Gi6_YkEY.js} +1 -1
  4. package/dist/interface/assets/{Automation-CUDypjZw.js → Automation-6eFKPJPu.js} +3 -3
  5. package/dist/interface/assets/{AutomationImport-Cr14tF-Q.js → AutomationImport-95PfbPvG.js} +2 -2
  6. package/dist/interface/assets/{AutomationStore-BnZgfI9i.js → AutomationStore-BHxzzx7a.js} +2 -2
  7. package/dist/interface/assets/AutomationStoreDetail-DEVlRllt.js +2 -0
  8. package/dist/interface/assets/Automations-DEivoiS1.js +2 -0
  9. package/dist/interface/assets/Camera-B5l_gv7t.js +2 -0
  10. package/dist/interface/assets/{CameraConsole-BK8TqHgA.js → CameraConsole-B8bBYQzk.js} +1 -1
  11. package/dist/interface/assets/Cameras-HblWPGCv.js +651 -0
  12. package/dist/interface/assets/Camview-DEKrbg5R.js +1 -0
  13. package/dist/interface/assets/{CertificateUpload-PfgVZa4M.js → CertificateUpload-CC6YtX7h.js} +1 -1
  14. package/dist/interface/assets/{Config-DapgreIX.js → Config-DQEaOnaN.js} +1 -1
  15. package/dist/interface/assets/{ConfigActionAssistant-v0w4E-mE.js → ConfigActionAssistant-C_XRnBzo.js} +1 -1
  16. package/dist/interface/assets/{ConfigActionCameraControl-fdrsnRyE.js → ConfigActionCameraControl-oRzM9rjX.js} +1 -1
  17. package/dist/interface/assets/{ConfigActionDelay-C_dq3ozL.js → ConfigActionDelay-Dc-NZS5L.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionHttp-1hDI-38w.js → ConfigActionHttp-Nw0wt-JZ.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionImageInput-DCF8qeg9.js → ConfigActionImageInput-Do60Upqm.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionMqtt-XpVD7lFg.js → ConfigActionMqtt-BeQVgaGX.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionNotification-CB1ymMRz.js → ConfigActionNotification-BA0FjOWs.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionNotificationControl-BfDtLS5h.js → ConfigActionNotificationControl-Ce3Kd_Xv.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionOutput-CMfXI1b3.js → ConfigActionOutput-ChiOMWDy.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionPlugin-CZo6SudQ.js → ConfigActionPlugin-Cn3r0glk.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionSensor-CetFuASa.js → ConfigActionSensor-DkdBCu-6.js} +1 -1
  26. package/dist/interface/assets/{ConfigActionSnapshot-BpPhHpIk.js → ConfigActionSnapshot-CLlaDFUV.js} +1 -1
  27. package/dist/interface/assets/{ConfigActionVariable-SJomTISn.js → ConfigActionVariable-D4x3Luxl.js} +1 -1
  28. package/dist/interface/assets/{ConfigConditionIfElse-ClTxvZJz.js → ConfigConditionIfElse-BpL8KZ5X.js} +1 -1
  29. package/dist/interface/assets/{ConfigConditionSensorState-FbLmmHyP.js → ConfigConditionSensorState-CSQexUF_.js} +1 -1
  30. package/dist/interface/assets/{ConfigConditionSwitch--qAHkOdE.js → ConfigConditionSwitch-CB2J_5kr.js} +1 -1
  31. package/dist/interface/assets/{ConfigConditionTime-BqjDUPVR.js → ConfigConditionTime-X9fsNsYu.js} +1 -1
  32. package/dist/interface/assets/{ConfigSensorValueInput-B1dLcmSO.js → ConfigSensorValueInput-VPhPxrQl.js} +1 -1
  33. package/dist/interface/assets/{ConfigTriggerDetection-CMZyEWui.js → ConfigTriggerDetection-Dhzng4X5.js} +1 -1
  34. package/dist/interface/assets/{ConfigTriggerGeofence-B9JPVvhP.js → ConfigTriggerGeofence-Cm0CLNf5.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerManual-CSdF69jM.js → ConfigTriggerManual-CRi3rsgG.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerMqtt-BzN7_xVm.js → ConfigTriggerMqtt-Ck__CWck.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerSchedule-BK_Ogvxn.js → ConfigTriggerSchedule-C1PZrHEu.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerSensor-BaQklhHP.js → ConfigTriggerSensor-9xVgCtkn.js} +1 -1
  39. package/dist/interface/assets/{ConfigTriggerSystem-DIX95l0X.js → ConfigTriggerSystem-Denf1gkO.js} +1 -1
  40. package/dist/interface/assets/{ConfigTriggerWebhook-_EOJAgNk.js → ConfigTriggerWebhook-im24LkCn.js} +1 -1
  41. package/dist/interface/assets/Console-Q1HpmyO_.js +1 -0
  42. package/dist/interface/assets/CuiAssistantConversation-BxJf9sdu.js +5 -0
  43. package/dist/interface/assets/{CuiAssistantConversation-CWCLLi3b.css → CuiAssistantConversation-DmSdiv1b.css} +1 -1
  44. package/dist/interface/assets/{CuiAutomationRunsDialog-DpskKeEe.js → CuiAutomationRunsDialog-B3tJ-Cma.js} +1 -1
  45. package/dist/interface/assets/CuiBottomSheet-C37blNu-.js +1 -0
  46. package/dist/interface/assets/{CuiBottomSheet-Bg_AIuGY.js → CuiBottomSheet-kvvLw1MQ.js} +1 -1
  47. package/dist/interface/assets/CuiCameraPipCard-TVAf5ZYQ.js +1 -0
  48. package/dist/interface/assets/CuiCameraRecordings-C26rX8dh.css +1 -0
  49. package/dist/interface/assets/CuiCameraRecordings-IHg1dNf4.js +1 -0
  50. package/dist/interface/assets/CuiCameraShares-B5ghuJS-.js +1 -0
  51. package/dist/interface/assets/{CuiCameraTable-CyAYYPvd.js → CuiCameraTable-Y5XUkU7w.js} +2 -2
  52. package/dist/interface/assets/CuiCameraTable-xDZz7Wpe.js +1 -0
  53. package/dist/interface/assets/{CuiChartTable-BklHSjRr.js → CuiChartTable-CXdupaj5.js} +1 -1
  54. package/dist/interface/assets/CuiChartTable-DXY7rY3O.css +1 -0
  55. package/dist/interface/assets/{CuiConsole-4rDfDj0a.js → CuiConsole-5KgXSOS5.js} +2 -2
  56. package/dist/interface/assets/CuiDataTable-DPIbKnvU.css +1 -0
  57. package/dist/interface/assets/CuiDataTable-hArZWV9B.js +1 -0
  58. package/dist/interface/assets/CuiLightControl-MRpR0XIZ.js +1 -0
  59. package/dist/interface/assets/{CuiList-BafzuN0H.js → CuiList-D-l4HrBP.js} +1 -1
  60. package/dist/interface/assets/CuiPluginCard-whoQ5YHn.js +2 -0
  61. package/dist/interface/assets/{CuiPluginCategoryChip-B4w2DH_j.js → CuiPluginCategoryChip-CH53zk2o.js} +1 -1
  62. package/dist/interface/assets/{CuiPluginOAuthButton-C_jxPrPQ.js → CuiPluginOAuthButton-BBA0AzVO.js} +2 -2
  63. package/dist/interface/assets/{CuiPluginTrustBadge-pLnF2Ggn.js → CuiPluginTrustBadge-C0EX5aCI.js} +1 -1
  64. package/dist/interface/assets/{CuiQRCode-8Q6cFdfs.js → CuiQRCode-BRT0NO5c.js} +1 -1
  65. package/dist/interface/assets/CuiSchema-DBY1x1BT.js +1 -0
  66. package/dist/interface/assets/{CuiTopNavbarItem-BZXzuV42.js → CuiTopNavbarItem-CpMT8_0r.js} +1 -1
  67. package/dist/interface/assets/Faces-Dqi30qs9.js +1 -0
  68. package/dist/interface/assets/{FirstSteps-BNcAFp2c.js → FirstSteps-B8n4fGK3.js} +1 -1
  69. package/dist/interface/assets/Floorplan-ZHXNaZA8.js +1 -0
  70. package/dist/interface/assets/{Instances-DUWWy-El.js → Instances-DEj3gs6H.js} +1 -1
  71. package/dist/interface/assets/{Logs-7CxXc2Re.js → Logs-CwHvSKd6.js} +2 -2
  72. package/dist/interface/assets/Menu-C4BxUV0P.js +1 -0
  73. package/dist/interface/assets/Metrics-BCOE-rcw.js +9 -0
  74. package/dist/interface/assets/OAuthDeviceFlow-D6bjZOYS.js +1 -0
  75. package/dist/interface/assets/Plugin-ppCvxkl4.js +1 -0
  76. package/dist/interface/assets/{PluginConsole-BOaU7Ey0.js → PluginConsole-BP42Qpee.js} +1 -1
  77. package/dist/interface/assets/PluginDetail-BnX5lZGz.js +2 -0
  78. package/dist/interface/assets/{PluginSchema-BWlRMPo6.js → PluginSchema-uVKXzfo6.js} +1 -1
  79. package/dist/interface/assets/PluginSearch-C4MvWyLb.js +1 -0
  80. package/dist/interface/assets/PluginSearch-no79fTuf.js +2 -0
  81. package/dist/interface/assets/{PluginUpdateProgress-DFg14vV8.js → PluginUpdateProgress-73jprYHA.js} +1 -1
  82. package/dist/interface/assets/Plugins-DtEqS6_j.js +1 -0
  83. package/dist/interface/assets/{RecentEventsFilter-B6Ph-pxb.js → RecentEventsFilter-CtyCbt6Z.js} +1 -1
  84. package/dist/interface/assets/Recordings-DrcOsRLn.js +1 -0
  85. package/dist/interface/assets/{SensorEdit-DEenjJ8S.js → SensorEdit-D4-mMg8S.js} +1 -1
  86. package/dist/interface/assets/{SensorHistory-CU1Uwf5f.js → SensorHistory-C-X7VI-f.js} +1 -1
  87. package/dist/interface/assets/{Sensors-LnVLPDWf.js → Sensors-BJh8BkCR.js} +2 -2
  88. package/dist/interface/assets/{Settings-uk3RVXCS.js → Settings-B9CZvA-d.js} +1 -1
  89. package/dist/interface/assets/SettingsAccount-CkvScQmF.js +1 -0
  90. package/dist/interface/assets/SettingsAccount-D3zF2kLc.js +1 -0
  91. package/dist/interface/assets/{SettingsAppearance-CRYcal9v.js → SettingsAppearance-CbG8M38w.js} +1 -1
  92. package/dist/interface/assets/SettingsAppearance-ZHqNXXIL.js +1 -0
  93. package/dist/interface/assets/SettingsAssistant-BESab92C.css +1 -0
  94. package/dist/interface/assets/SettingsAssistant-DxYPnbms.js +1 -0
  95. package/dist/interface/assets/{SettingsBackup-CSvGqsru.js → SettingsBackup-DZBzUyQm.js} +1 -1
  96. package/dist/interface/assets/{SettingsList-BQR6jnP-.js → SettingsList-DFg8g7IM.js} +1 -1
  97. package/dist/interface/assets/SettingsMqtt-BeujOZkh.js +1 -0
  98. package/dist/interface/assets/{SettingsNotifications-8sSoP-8S.js → SettingsNotifications-DtSTE76r.js} +1 -1
  99. package/dist/interface/assets/{SettingsPermissions-D7kYdjfw.js → SettingsPermissions-CPOAefv0.js} +1 -1
  100. package/dist/interface/assets/{SettingsRecordings-DjLYqbKo.js → SettingsRecordings-ClAtT4Bh.js} +1 -1
  101. package/dist/interface/assets/SettingsRemote-58S4Thfp.js +2 -0
  102. package/dist/interface/assets/{SettingsSystem-BxQNJc8n.js → SettingsSystem-tTGpuiRW.js} +2 -2
  103. package/dist/interface/assets/SettingsUsers-D8b7I5c2.js +1 -0
  104. package/dist/interface/assets/{Terminal-Bsnvs8gs.js → Terminal-1_Fi0VW-.js} +2 -2
  105. package/dist/interface/assets/Training-CQHfQjUP.css +1 -0
  106. package/dist/interface/assets/Training-DfOqDTHJ.js +1 -0
  107. package/dist/interface/assets/{Updates-Dsn_fJ-N.js → Updates-BW0p7Wc5.js} +1 -1
  108. package/dist/interface/assets/{VariableInput-DCWiIgaZ.js → VariableInput-sqnLuk6S.js} +1 -1
  109. package/dist/interface/assets/{VariableSuggestions-BhIlXJ6r.js → VariableSuggestions-3pbnxhyT.js} +1 -1
  110. package/dist/interface/assets/{VersionsHandler-DM_Jf4EA.js → VersionsHandler-CWmjDygB.js} +1 -1
  111. package/dist/interface/assets/{VirtualSensorCreate-Q4kd0dfE.js → VirtualSensorCreate-BzmFlvYD.js} +1 -1
  112. package/dist/interface/assets/Workers-Dm9o2wMo.js +2 -0
  113. package/dist/interface/assets/{api-BKiE8A_V.css → api-B6TtU9Ew.css} +1 -1
  114. package/dist/interface/assets/{api-LjAY3aa3.js → api-CQ-3I3-i.js} +1 -1
  115. package/dist/interface/assets/api-DPgKdIQZ.js +4 -0
  116. package/dist/interface/assets/{assistant-BFc44oq-.js → assistant-0UymvpMy.js} +1 -1
  117. package/dist/interface/assets/{auth-CUPvHARA.js → auth-C0jhqNaz.js} +1 -1
  118. package/dist/interface/assets/{automations-Dw4L5sT0.js → automations-Bj30nb8s.js} +1 -1
  119. package/dist/interface/assets/{cameraSources-CzENFiZx.js → cameraSources-CiMjIjsh.js} +1 -1
  120. package/dist/interface/assets/cloudHandoff-Cxljjl7N.js +1 -0
  121. package/dist/interface/assets/{config-EBcNBZkb.js → config-D-uVfwYp.js} +1 -1
  122. package/dist/interface/assets/{flowSchema-CdzBw69a.js → flowSchema-D3nNJVLL.js} +1 -1
  123. package/dist/interface/assets/{intercomService-DIfdcsXc.js → intercomService-BeoNs-09.js} +1 -1
  124. package/dist/interface/assets/main-BrNGfemk.js +3 -0
  125. package/dist/interface/assets/{mqtt-D_wH18eJ.js → mqtt-D7jRwifB.js} +1 -1
  126. package/dist/interface/assets/{notifications-wLsrlI9N.js → notifications-BpRVoerg.js} +1 -1
  127. package/dist/interface/assets/pause-B7ud2O8d.js +1 -0
  128. package/dist/interface/assets/{plugins-DwmkpOPJ.js → plugins-wZ4RDxCb.js} +1 -1
  129. package/dist/interface/assets/rooms-CFcu2dU1.js +1 -0
  130. package/dist/interface/assets/{sensorIcons-BY853M0u.js → sensorIcons-B117n8l2.js} +1 -1
  131. package/dist/interface/assets/{sensorSlots-DnRJdaTG.js → sensorSlots-CAr3prFc.js} +1 -1
  132. package/dist/interface/assets/{sensors-B9etOqBI.js → sensors-oriEG3KR.js} +1 -1
  133. package/dist/interface/assets/{server-BTKgKMye.js → server-Ce6ou2NV.js} +1 -1
  134. package/dist/interface/assets/{theme-CbtGvohq.js → theme-CBTC6-Lp.js} +1 -1
  135. package/dist/interface/assets/{types-CEhVWRYD.js → types-C-amdBz6.js} +1 -1
  136. package/dist/interface/assets/{types-COlvVtDn.js → types-CjU6-JvD.js} +1 -1
  137. package/dist/interface/assets/types-CzjppLwt.js +1 -0
  138. package/dist/interface/assets/{ungrouped-Dbr16vFt.css → ungrouped-AYNBKz52.css} +1 -1
  139. package/dist/interface/assets/ungrouped-BQzKp2PT.js +1 -0
  140. package/dist/interface/assets/{updates-BQ6Ugcup.js → updates-Cohtc6vb.js} +1 -1
  141. package/dist/interface/assets/{useAppVersion-BO-3jbup.js → useAppVersion-xxi6fR7J.js} +1 -1
  142. package/dist/interface/assets/{useAssistantActions-CRVHZw4o.js → useAssistantActions-BkRK1FBg.js} +1 -1
  143. package/dist/interface/assets/useBackupRestore-BGvhSqJB.js +1 -0
  144. package/dist/interface/assets/{useCameraOptions-C7tgceJ1.js → useCameraOptions-ophs2V4p.js} +1 -1
  145. package/dist/interface/assets/{useKeyboardInset-yu3BVnj7.js → useKeyboardInset-Cpz6Hs5c.js} +1 -1
  146. package/dist/interface/assets/{useLogsSocket-B4wTnSno.js → useLogsSocket-CB07yhv4.js} +1 -1
  147. package/dist/interface/assets/{useNavLayout-Z61-OsIG.js → useNavLayout-BYEejBpb.js} +1 -1
  148. package/dist/interface/assets/{usePermissions-Bjx4t0x3.js → usePermissions-yWhjYMcr.js} +1 -1
  149. package/dist/interface/assets/{usePluginUpdates-Dv3_XJTK.js → usePluginUpdates-9rvsWfdJ.js} +1 -1
  150. package/dist/interface/assets/{usePushRegistration-CHNMZ94f.js → usePushRegistration-b5owOzjH.js} +1 -1
  151. package/dist/interface/assets/{useServerRestart-C-AsOdJP.js → useServerRestart-yRXDWnH_.js} +1 -1
  152. package/dist/interface/assets/{useStreamStatus-BJoJF68x.js → useStreamStatus-BHyWrAHu.js} +1 -1
  153. package/dist/interface/assets/{useTabSwipe-b_K3BIkW.js → useTabSwipe-Dr9HYP1J.js} +1 -1
  154. package/dist/interface/assets/{useUpdateChannel-Cc4IrrDy.js → useUpdateChannel-IVj0XKlN.js} +1 -1
  155. package/dist/interface/assets/{useUpdatesSocket-Cz9lN4Bc.js → useUpdatesSocket-CuPHbSF7.js} +1 -1
  156. package/dist/interface/assets/{useUserOptions-DrNB17kY.js → useUserOptions-zIfrMDiG.js} +1 -1
  157. package/dist/interface/assets/{vendor-cameraui-CqKq4Yeo.js → vendor-cameraui-Dhg7MEnt.js} +2 -2
  158. package/dist/interface/assets/{vendor-core-BTkC8NzR.js → vendor-core-CQ2HVu0L.js} +1 -1
  159. package/dist/interface/assets/{vendor-primevue-DQz5Qnqu.js → vendor-primevue-CeWNZxSE.js} +1 -1
  160. package/dist/interface/assets/{vendor-zod-BigRv4ty.js → vendor-zod-CBbC1rE7.js} +2 -2
  161. package/dist/interface/ha/{404-Bg2Vlt5S.js → 404-B70KNhsW.js} +1 -1
  162. package/dist/interface/ha/{About-C6u2wgUi.js → About-DLNqqctZ.js} +6 -6
  163. package/dist/interface/ha/{Assistant-BCyiVnwD.js → Assistant-Duvvoz2B.js} +334 -319
  164. package/dist/interface/ha/{Automation-DU_qv5xD.js → Automation-DZ8zvsvo.js} +189 -189
  165. package/dist/interface/ha/{AutomationImport-BpDyhabF.js → AutomationImport-DOCdim5O.js} +6 -6
  166. package/dist/interface/ha/{AutomationStore-DPQsunpH.js → AutomationStore-Bjoubp-m.js} +7 -7
  167. package/dist/interface/ha/{AutomationStoreDetail-CASMQ-mD.js → AutomationStoreDetail-H-RWNpwm.js} +13 -13
  168. package/dist/interface/ha/{Automations-DSHVzwX4.js → Automations-GyofQfo7.js} +99 -112
  169. package/dist/interface/ha/{Camera-ESmteicm.js → Camera-Bo5nMQaU.js} +27 -27
  170. package/dist/interface/ha/{CameraConsole-BE_jl4Co.js → CameraConsole-BmDQ3rcS.js} +5 -5
  171. package/dist/interface/ha/{Cameras-otaj2xZO.js → Cameras-BfHoFjpC.js} +242 -242
  172. package/dist/interface/ha/{Camview-BU1027if.js → Camview-DVoIdM3o.js} +520 -520
  173. package/dist/interface/ha/{Config-BlEvHYVP.js → Config-CC8tQiOy.js} +110 -110
  174. package/dist/interface/ha/{ConfigActionAssistant-uDf5fgoJ.js → ConfigActionAssistant-hfsz38an.js} +4 -4
  175. package/dist/interface/ha/{ConfigActionCameraControl-BAQsXVLz.js → ConfigActionCameraControl-C0-wxlAS.js} +3 -3
  176. package/dist/interface/ha/{ConfigActionHttp-Dy2MZHSm.js → ConfigActionHttp-CM_3bIUq.js} +2 -2
  177. package/dist/interface/ha/{ConfigActionImageInput-B5kyV3Un.js → ConfigActionImageInput-B5306Z_7.js} +1 -1
  178. package/dist/interface/ha/{ConfigActionMqtt-DHCgh1xx.js → ConfigActionMqtt-DLiM83Kz.js} +4 -4
  179. package/dist/interface/ha/{ConfigActionNotification-mbA5PfcJ.js → ConfigActionNotification-36VBlfim.js} +3 -3
  180. package/dist/interface/ha/{ConfigActionNotificationControl-TLaL7tYm.js → ConfigActionNotificationControl-DRjDvA1H.js} +2 -2
  181. package/dist/interface/ha/{ConfigActionOutput-CJ40Fniw.js → ConfigActionOutput-BkGHERoJ.js} +1 -1
  182. package/dist/interface/ha/{ConfigActionPlugin-BwTd-mdQ.js → ConfigActionPlugin-Ds1_Pow7.js} +5 -5
  183. package/dist/interface/ha/{ConfigActionSensor-BI438ihg.js → ConfigActionSensor-22uKE0d0.js} +5 -5
  184. package/dist/interface/ha/{ConfigActionSnapshot-DJ4zI2a0.js → ConfigActionSnapshot-uTTsTfo2.js} +2 -2
  185. package/dist/interface/ha/{ConfigActionVariable-Bhy5jf_w.js → ConfigActionVariable-DNMJBiQV.js} +1 -1
  186. package/dist/interface/ha/{ConfigConditionIfElse-I7Qq8nfN.js → ConfigConditionIfElse-BVzmIDKK.js} +3 -3
  187. package/dist/interface/ha/{ConfigConditionSensorState-CTLP3ppx.js → ConfigConditionSensorState-Di7Ic1xI.js} +4 -4
  188. package/dist/interface/ha/{ConfigConditionSwitch-UUupXf1b.js → ConfigConditionSwitch-D8CcTHJ1.js} +5 -5
  189. package/dist/interface/ha/{ConfigSensorValueInput-CoHheDT0.js → ConfigSensorValueInput-DthsOthT.js} +4 -4
  190. package/dist/interface/ha/{ConfigTriggerDetection-Cg_jKNed.js → ConfigTriggerDetection-BDYanDEV.js} +2 -2
  191. package/dist/interface/ha/{ConfigTriggerGeofence-WlJbu3sC.js → ConfigTriggerGeofence-Binp0lYx.js} +5 -5
  192. package/dist/interface/ha/{ConfigTriggerMqtt-BeRJoceK.js → ConfigTriggerMqtt-BaPzSHbK.js} +1 -1
  193. package/dist/interface/ha/{ConfigTriggerSensor-k58gVKdG.js → ConfigTriggerSensor-DiTaTZXm.js} +1 -1
  194. package/dist/interface/ha/{ConfigTriggerSystem-Ckm5yoUm.js → ConfigTriggerSystem-CsdWiz-S.js} +2 -2
  195. package/dist/interface/ha/{ConfigTriggerWebhook-D425z-p1.js → ConfigTriggerWebhook-Ca0PsUmU.js} +6 -6
  196. package/dist/interface/ha/{Console-C1Ub4Rji.js → Console-0amlIoZR.js} +10 -10
  197. package/dist/interface/ha/{CuiAutomationRunsDialog-opy5qXwE.js → CuiAutomationRunsDialog-DNBuwkgL.js} +2 -2
  198. package/dist/interface/ha/{CuiBottomSheet-DbCwVXl1.js → CuiBottomSheet-CdXBYz4P.js} +1 -1
  199. package/dist/interface/ha/{CuiCameraRecordings-CifJLj7G.js → CuiCameraRecordings-D4ZB56nd.js} +14 -15
  200. package/dist/interface/ha/{CuiCameraShares-Xty8LRcn.js → CuiCameraShares-YmzZusZR.js} +7 -7
  201. package/dist/interface/ha/{CuiCameraTable-CqfxX0Yn.js → CuiCameraTable-DFzhCO3J.js} +9 -9
  202. package/dist/interface/ha/{CuiChartTable-ABHnLdR0.js → CuiChartTable-BvfJbFNS.js} +46 -44
  203. package/dist/interface/ha/{CuiConsole-3JwbeUYD.js → CuiConsole-DtxyD6Sd.js} +1 -1
  204. package/dist/interface/ha/{CuiDataTable-BwE7D2h5.js → CuiDataTable-CHvx6ALQ.js} +16 -10
  205. package/dist/interface/ha/{CuiPluginCard-bzxiy1yb.js → CuiPluginCard-B3vU57eD.js} +77 -77
  206. package/dist/interface/ha/{CuiPluginOAuthButton-DSxrzDmg.js → CuiPluginOAuthButton-DgOFfP5e.js} +6 -6
  207. package/dist/interface/ha/{CuiPluginTrustBadge-g0XkvDt8.js → CuiPluginTrustBadge-udmtgGHt.js} +1 -1
  208. package/dist/interface/ha/{CuiQRCode-uyRFbzd6.js → CuiQRCode-8yDZMC3o.js} +6 -6
  209. package/dist/interface/ha/{CuiSchema-DZIrlY8R.js → CuiSchema-0Hikg2mm.js} +138 -138
  210. package/dist/interface/ha/{CuiTopNavbarItem-C3a5NA7u.js → CuiTopNavbarItem-B139fVxP.js} +1 -1
  211. package/dist/interface/ha/{Faces-D2eca8MN.js → Faces-YdAf9USr.js} +107 -107
  212. package/dist/interface/ha/{FirstSteps-CdTE1cvw.js → FirstSteps-Dts6TJ6O.js} +7 -7
  213. package/dist/interface/ha/{Floorplan-BrEC2Au5.js → Floorplan-D6XXe8ni.js} +193 -193
  214. package/dist/interface/ha/{Instances-ClOsPOi8.js → Instances-DsIsonqp.js} +68 -68
  215. package/dist/interface/ha/{Logs-DnY1gTnb.js → Logs-Cyo3LC94.js} +11 -11
  216. package/dist/interface/ha/{Menu-cLDE76XZ.js → Menu-yh_sI9d9.js} +15 -20
  217. package/dist/interface/ha/{Metrics-pMQX_0m1.js → Metrics-VehQmsmN.js} +64 -64
  218. package/dist/interface/ha/{OAuthDeviceFlow-D1PGQ8r9.js → OAuthDeviceFlow-CXp9NvbY.js} +9 -9
  219. package/dist/interface/ha/{Plugin-DiC23P97.js → Plugin-BqvlXx43.js} +97 -97
  220. package/dist/interface/ha/{PluginConsole-B-lX5KJu.js → PluginConsole-Dx84BNoO.js} +4 -4
  221. package/dist/interface/ha/{PluginDetail-B_tVJf6y.js → PluginDetail-DUpDS2nD.js} +6 -6
  222. package/dist/interface/ha/{PluginSearch-n8nfjx9q.js → PluginSearch-Cvh0P9VB.js} +124 -124
  223. package/dist/interface/ha/{PluginUpdateProgress-BjsYyrRk.js → PluginUpdateProgress-CfyI2Qdp.js} +3 -3
  224. package/dist/interface/ha/{Plugins-CFhOUaqq.js → Plugins-DXreIUwr.js} +173 -173
  225. package/dist/interface/ha/{Recordings-B07eUJwH.js → Recordings-Cb8ifRcB.js} +225 -227
  226. package/dist/interface/ha/{SensorEdit-DFPiBXQD.js → SensorEdit-CsNXxcdj.js} +58 -58
  227. package/dist/interface/ha/{SensorHistory-B2FOK4Qa.js → SensorHistory-DToDalOm.js} +2 -2
  228. package/dist/interface/ha/{Sensors-DtzmTc-L.js → Sensors-B6giaowJ.js} +434 -434
  229. package/dist/interface/ha/{Settings-ClqSoFjT.js → Settings-CVed7MM_.js} +22 -22
  230. package/dist/interface/ha/{SettingsAccount-Bh8FfH7J.js → SettingsAccount-CvvsLPoT.js} +31 -31
  231. package/dist/interface/ha/{SettingsAppearance--FJgY8cj.js → SettingsAppearance-BDJeNGTd.js} +6 -6
  232. package/dist/interface/ha/{SettingsAssistant-ClDfxd_d.js → SettingsAssistant-B168p5HB.js} +615 -508
  233. package/dist/interface/ha/{SettingsBackup-BYM55pQ7.js → SettingsBackup-Bz_9xJ61.js} +14 -14
  234. package/dist/interface/ha/{SettingsList-CMSEKVCD.js → SettingsList-B42rajJc.js} +1 -1
  235. package/dist/interface/ha/{SettingsMqtt-CFpgJ-E5.js → SettingsMqtt-B5Qy6bxD.js} +148 -148
  236. package/dist/interface/ha/SettingsNotifications-C59UxYic.js +529 -0
  237. package/dist/interface/ha/{SettingsRecordings-Bz686yU7.js → SettingsRecordings-CkJGOiyQ.js} +7 -7
  238. package/dist/interface/ha/{SettingsRemote-DT4ZMjJO.js → SettingsRemote-Cc-qt3si.js} +231 -231
  239. package/dist/interface/ha/{SettingsSystem-CHctt06D.js → SettingsSystem-Cco2XXsS.js} +9 -9
  240. package/dist/interface/ha/{SettingsUsers-C_hvntON.js → SettingsUsers-BDh-3saR.js} +33 -33
  241. package/dist/interface/ha/{Terminal-B5FXq4-Z.js → Terminal-D2U-kFPW.js} +8 -8
  242. package/dist/interface/ha/Training-DWcaCI-3.js +1499 -0
  243. package/dist/interface/ha/{Updates-D0osNjqS.js → Updates-DGHNcvO9.js} +13 -13
  244. package/dist/interface/ha/{VariableInput-BK0qqMc7.js → VariableInput-Bujz1T1I.js} +1 -1
  245. package/dist/interface/ha/{VersionsHandler-B-vpKHJN.js → VersionsHandler-CXvbeKbl.js} +10 -10
  246. package/dist/interface/ha/{VirtualSensorCreate-Bp2201iM.js → VirtualSensorCreate-DOYONbgu.js} +2 -2
  247. package/dist/interface/ha/{Workers-BQ_luGWk.js → Workers-tQbC3WS6.js} +90 -90
  248. package/dist/interface/ha/{api-JPS8NpNG.js → api-BI6_Fcag.js} +8979 -8895
  249. package/dist/interface/ha/{api-BufZW7-A.js → api-DfJZj7ht.js} +1 -1
  250. package/dist/interface/ha/{assistant-BXVGCw2q.js → assistant-BqSg4N8v.js} +25 -25
  251. package/dist/interface/ha/{auth-CJC9G9BA.js → auth-BFoSqfzS.js} +34 -34
  252. package/dist/interface/ha/{automationBlueprint-DWuBiu_Q.js → automationBlueprint-Q0yt2MdH.js} +3 -3
  253. package/dist/interface/ha/cameraui-cards.js +1 -1
  254. package/dist/interface/ha/{cards-CGP6dWjy.js → cards-BW9I5B5Z.js} +114 -114
  255. package/dist/interface/ha/{config-BVURO_DZ.js → config-CeNHEP9A.js} +9 -9
  256. package/dist/interface/ha/{dist-Ca4K4HIm.js → dist-BV3OfApt.js} +1 -1
  257. package/dist/interface/ha/{mqtt-DY6EvMC9.js → mqtt-BkYa2CXH.js} +7 -7
  258. package/dist/interface/ha/{notifications-BdIqgnrC.js → notifications-E3WSCGpc.js} +12 -12
  259. package/dist/interface/ha/pause-Ch6v65wA.js +19 -0
  260. package/dist/interface/ha/{pinia-CqffEnzx.js → pinia-DoDLbPZ3.js} +11 -7
  261. package/dist/interface/ha/{plugins-Bnq2Iw00.js → plugins-2jjU7TfW.js} +30 -30
  262. package/dist/interface/ha/{rooms-AiJ5Tfir.js → rooms-BkEw1ev-.js} +1 -1
  263. package/dist/interface/ha/{server-BHhFn2RZ.js → server-CuK4o2fS.js} +15 -15
  264. package/dist/interface/ha/{types-7oMK8VO-.js → types-BRHWeX0a.js} +36 -22
  265. package/dist/interface/ha/{ungrouped-hib17Nvu.js → ungrouped-BDwep3kg.js} +195 -213
  266. package/dist/interface/ha/{updates-DvnEEUsx.js → updates-R4xTxour.js} +24 -24
  267. package/dist/interface/ha/{useAppVersion-BmWXr96y.js → useAppVersion-uaFjqUpx.js} +1 -1
  268. package/dist/interface/ha/{useLogsSocket-BKlJKGCB.js → useLogsSocket-BZq9GXfy.js} +1 -1
  269. package/dist/interface/ha/{useNavLayout-Dt0NH-G5.js → useNavLayout-BJdDE__R.js} +2 -2
  270. package/dist/interface/ha/{useServerRestart-DWs2dqQc.js → useServerRestart-DDCKnE6c.js} +1 -1
  271. package/dist/interface/ha/{useTabSwipe-vX79p6V_.js → useTabSwipe-CEH6ltIZ.js} +1 -1
  272. package/dist/interface/ha/{useUpdateChannel-CHlRp8uj.js → useUpdateChannel-CHt1il2V.js} +2 -2
  273. package/dist/interface/ha/{useUpdatesSocket-B40Cx-2L.js → useUpdatesSocket-BnVaNioY.js} +1 -1
  274. package/dist/interface/ha/{useUserOptions-hXz79rIV.js → useUserOptions-C7cQ1P3Q.js} +1 -1
  275. package/dist/interface/index.html +34 -34
  276. package/dist/interface/sw.js +1 -1
  277. package/dist/server/package.json +6 -7
  278. package/dist/server/requirements.txt +1 -1
  279. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +2 -0
  280. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/__init__.py +2 -0
  281. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/frames.py +9 -5
  282. package/dist/server/src/api/controllers/assistant.controller.js +2 -1
  283. package/dist/server/src/api/controllers/assistant.controller.js.map +1 -1
  284. package/dist/server/src/api/controllers/plugins.controller.js +3 -3
  285. package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
  286. package/dist/server/src/api/database/index.d.ts +1 -1
  287. package/dist/server/src/api/database/index.js +1 -1
  288. package/dist/server/src/api/database/index.js.map +1 -1
  289. package/dist/server/src/api/database/migrations/v2-2-3.d.ts +3 -0
  290. package/dist/server/src/api/database/migrations/v2-2-3.js +22 -0
  291. package/dist/server/src/api/database/migrations/v2-2-3.js.map +1 -0
  292. package/dist/server/src/api/schemas/cameras.schema.d.ts +32 -16
  293. package/dist/server/src/api/schemas/cameras.schema.js +5 -5
  294. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  295. package/dist/server/src/api/websocket/nsp/logs.d.ts +5 -2
  296. package/dist/server/src/api/websocket/nsp/logs.js +20 -5
  297. package/dist/server/src/api/websocket/nsp/logs.js.map +1 -1
  298. package/dist/server/src/api/websocket/nsp/training.d.ts +1 -1
  299. package/dist/server/src/api/websocket/nsp/training.js +3 -2
  300. package/dist/server/src/api/websocket/nsp/training.js.map +1 -1
  301. package/dist/server/src/assistant/manager.d.ts +1 -0
  302. package/dist/server/src/assistant/manager.js +24 -2
  303. package/dist/server/src/assistant/manager.js.map +1 -1
  304. package/dist/server/src/assistant/reasoning.d.ts +1 -1
  305. package/dist/server/src/assistant/reasoning.js +6 -3
  306. package/dist/server/src/assistant/reasoning.js.map +1 -1
  307. package/dist/server/src/assistant/retry.d.ts +4 -0
  308. package/dist/server/src/assistant/retry.js +3 -0
  309. package/dist/server/src/assistant/retry.js.map +1 -1
  310. package/dist/server/src/assistant/tool-names.d.ts +2 -0
  311. package/dist/server/src/assistant/tool-names.js +23 -0
  312. package/dist/server/src/assistant/tool-names.js.map +1 -0
  313. package/dist/server/src/assistant/tools/api.js +2 -0
  314. package/dist/server/src/assistant/tools/api.js.map +1 -1
  315. package/dist/server/src/assistant/tools/docs.js +1 -0
  316. package/dist/server/src/assistant/tools/docs.js.map +1 -1
  317. package/dist/server/src/assistant/tools/memory.js +1 -0
  318. package/dist/server/src/assistant/tools/memory.js.map +1 -1
  319. package/dist/server/src/assistant/tools/settings.js +1 -0
  320. package/dist/server/src/assistant/tools/settings.js.map +1 -1
  321. package/dist/server/src/automations/utilities/imageInput.js +4 -2
  322. package/dist/server/src/automations/utilities/imageInput.js.map +1 -1
  323. package/dist/server/src/camera/controller.d.ts +3 -0
  324. package/dist/server/src/camera/controller.js +41 -28
  325. package/dist/server/src/camera/controller.js.map +1 -1
  326. package/dist/server/src/camera/index.d.ts +1 -7
  327. package/dist/server/src/camera/index.js +0 -13
  328. package/dist/server/src/camera/index.js.map +1 -1
  329. package/dist/server/src/camera/privacy/snapshot.js +4 -2
  330. package/dist/server/src/camera/privacy/snapshot.js.map +1 -1
  331. package/dist/server/src/camera/snapshot-store.d.ts +22 -0
  332. package/dist/server/src/camera/snapshot-store.js +78 -0
  333. package/dist/server/src/camera/snapshot-store.js.map +1 -0
  334. package/dist/server/src/camera/streaming/fmp4-session.d.ts +2 -1
  335. package/dist/server/src/camera/streaming/fmp4-session.js +4 -0
  336. package/dist/server/src/camera/streaming/fmp4-session.js.map +1 -1
  337. package/dist/server/src/camera/streaming/rtp-session.js +1 -0
  338. package/dist/server/src/camera/streaming/rtp-session.js.map +1 -1
  339. package/dist/server/src/manager/trainingCandidateManager.js +17 -13
  340. package/dist/server/src/manager/trainingCandidateManager.js.map +1 -1
  341. package/dist/server/src/manager/types.d.ts +4 -0
  342. package/dist/server/src/rpc/interfaces/device.d.ts +1 -0
  343. package/dist/server/src/sensors/registry.js +2 -2
  344. package/dist/server/src/sensors/registry.js.map +1 -1
  345. package/dist/server/src/utils/image.d.ts +1 -0
  346. package/dist/server/src/utils/image.js +95 -0
  347. package/dist/server/src/utils/image.js.map +1 -0
  348. package/package.json +6 -7
  349. package/dist/interface/assets/AutomationStoreDetail-btcIglkw.js +0 -2
  350. package/dist/interface/assets/Automations-CKpwXTyc.js +0 -2
  351. package/dist/interface/assets/Camera-BEP_HAQm.js +0 -2
  352. package/dist/interface/assets/Cameras-DJreIgtW.js +0 -651
  353. package/dist/interface/assets/Camview-D4VNMv_l.js +0 -1
  354. package/dist/interface/assets/Console-Y1IutnkC.js +0 -1
  355. package/dist/interface/assets/CuiAssistantConversation-C4RYcMAM.js +0 -5
  356. package/dist/interface/assets/CuiBottomSheet-S8bM23jj.js +0 -1
  357. package/dist/interface/assets/CuiCameraPipCard-HTjvF3yG.js +0 -1
  358. package/dist/interface/assets/CuiCameraRecordings-B7BhgPpP.css +0 -1
  359. package/dist/interface/assets/CuiCameraRecordings-Cx6FYz3Y.js +0 -1
  360. package/dist/interface/assets/CuiCameraShares-J728G9wF.js +0 -1
  361. package/dist/interface/assets/CuiCameraTable-CKur0qLE.js +0 -1
  362. package/dist/interface/assets/CuiChartTable-DCGY-zVy.css +0 -1
  363. package/dist/interface/assets/CuiDataTable-BLyeEEAp.js +0 -1
  364. package/dist/interface/assets/CuiDataTable-DbkFXZeg.css +0 -1
  365. package/dist/interface/assets/CuiLightControl-C1YSJSWd.js +0 -1
  366. package/dist/interface/assets/CuiPluginCard-enc00hbc.js +0 -2
  367. package/dist/interface/assets/CuiSchema-CRHUMY0B.js +0 -1
  368. package/dist/interface/assets/Faces-fMMd6-PY.js +0 -1
  369. package/dist/interface/assets/Floorplan-BQbOWCCf.js +0 -1
  370. package/dist/interface/assets/Menu-B3VA0LMx.js +0 -1
  371. package/dist/interface/assets/Metrics-C0q2BdKH.js +0 -9
  372. package/dist/interface/assets/OAuthDeviceFlow-ZiCl4400.js +0 -1
  373. package/dist/interface/assets/Plugin-C0CPlt4f.js +0 -1
  374. package/dist/interface/assets/PluginDetail-DDh6PfMd.js +0 -2
  375. package/dist/interface/assets/PluginSearch-BR_ei8Pa.js +0 -1
  376. package/dist/interface/assets/PluginSearch-C2AXz2KG.js +0 -2
  377. package/dist/interface/assets/Plugins-CN1YIfNk.js +0 -1
  378. package/dist/interface/assets/Recordings-jhxwdrQY.js +0 -1
  379. package/dist/interface/assets/SettingsAccount-CJ_fPrT-.js +0 -1
  380. package/dist/interface/assets/SettingsAccount-CYn81m0Z.js +0 -1
  381. package/dist/interface/assets/SettingsAppearance-DFe8JsT5.js +0 -1
  382. package/dist/interface/assets/SettingsAssistant-CDyI6fee.css +0 -1
  383. package/dist/interface/assets/SettingsAssistant-Dm4oINqB.js +0 -1
  384. package/dist/interface/assets/SettingsMqtt-ByQYIRkm.js +0 -1
  385. package/dist/interface/assets/SettingsRemote-7iDccnV9.js +0 -2
  386. package/dist/interface/assets/SettingsUsers-yYobKcPv.js +0 -1
  387. package/dist/interface/assets/Training-BUhrkDzA.css +0 -1
  388. package/dist/interface/assets/Training-SOWa6Ay1.js +0 -1
  389. package/dist/interface/assets/Workers-D7mXpfvC.js +0 -2
  390. package/dist/interface/assets/api-Cl7JjXOQ.js +0 -4
  391. package/dist/interface/assets/cloudHandoff-CGMLCwMb.js +0 -1
  392. package/dist/interface/assets/main-W8WcKa2g.js +0 -3
  393. package/dist/interface/assets/rooms-D_7As09p.js +0 -1
  394. package/dist/interface/assets/types-BEy4uGJ0.js +0 -1
  395. package/dist/interface/assets/ungrouped-BJyBDv5e.js +0 -1
  396. package/dist/interface/assets/useBackupRestore-D305pYHT.js +0 -1
  397. package/dist/interface/ha/SettingsNotifications-CzgsBNtW.js +0 -529
  398. package/dist/interface/ha/Training-BgvpsKPM.js +0 -1469
@@ -1,44 +1,26 @@
1
1
  import { Et as e, et as t, f as n, gt as r, i, m as a, rt as o } from "./ripple-B_itunQV.js";
2
2
  import { n as s } from "./virtualscroller-DuRtMnNf.js";
3
- import { D as c, G as l, H as u, Jt as d, K as f, M as p, N as m, Wt as h, Y as g, _t as _, d as v, f as y, gt as b, kt as x, l as S, lt as C, ot as w, p as T, q as E, qt as D, r as O, rt as k, u as A, ut as j, x as M, xt as N, y as P, z as ee } from "./runtime-core.esm-bundler-DCktklpY.js";
4
- import { t as te } from "./tooltip-X5MY9FoG.js";
5
- import { $ as F, $n as I, An as ne, Bn as re, Fn as ie, In as ae, Jn as oe, Ln as se, Mn as ce, Pn as le, Tn as ue, _r as de, ar as fe, ct as pe, et as me, ir as he, lr as ge, mt as _e, nt as ve, o as ye, oa as be, pr as xe, rt as Se, st as Ce, tt as we, ur as Te, vi as Ee, vr as L, yr as De, zr as Oe } from "./api-JPS8NpNG.js";
6
- import { _ as ke, o as Ae } from "./intercomService-Dwd0bhSN.js";
7
- import { n as je } from "./vue-i18n-BBObX4QY.js";
8
- import { i as Me } from "./alert-outline-BssBb-kV.js";
9
- import { t as Ne } from "./eventIcons-DrjNuTS2.js";
10
- import { t as Pe } from "./spinner-BSEdDTno.js";
11
- import { t as Fe } from "./button-DJDZxmKj.js";
12
- import { M as Ie } from "./dist-Ca4K4HIm.js";
13
- import { t as Le } from "./inputtext-vdcrNX6K.js";
14
- import { t as Re } from "./select-CaVzuLaS.js";
15
- import { t as ze } from "./ring-resize-11TaovpK.js";
16
- //#region ~icons/tabler/dots-vertical
17
- var R = {
3
+ import { D as c, G as l, H as u, Jt as d, K as f, M as p, N as m, Wt as h, Y as g, _t as _, d as v, f as y, gt as b, kt as x, l as S, lt as C, ot as ee, p as w, q as T, qt as E, r as D, rt as O, u as k, ut as A, x as j, xt as M, y as N, z as te } from "./runtime-core.esm-bundler-DCktklpY.js";
4
+ import { t as ne } from "./tooltip-X5MY9FoG.js";
5
+ import { $ as P, Bn as re, Br as ie, En as ae, Fn as oe, Mn as se, Nn as ce, Rn as F, Vn as le, ar as ue, br as de, ct as fe, dr as pe, er as me, et as he, ht as ge, it as _e, jn as ve, lt as ye, mr as be, nt as xe, o as Se, or as Ce, rt as we, sa as Te, tt as Ee, ur as De, vr as Oe, yi as ke, yr as I, zn as Ae } from "./api-BI6_Fcag.js";
6
+ import { _ as je, o as Me } from "./intercomService-Dwd0bhSN.js";
7
+ import { n as Ne } from "./vue-i18n-BBObX4QY.js";
8
+ import { i as Pe } from "./alert-outline-BssBb-kV.js";
9
+ import { t as Fe } from "./eventIcons-DrjNuTS2.js";
10
+ import { t as Ie } from "./spinner-BSEdDTno.js";
11
+ import { t as Le } from "./button-DJDZxmKj.js";
12
+ import { M as Re } from "./dist-BV3OfApt.js";
13
+ import { t as ze } from "./inputtext-vdcrNX6K.js";
14
+ import { t as Be } from "./select-CaVzuLaS.js";
15
+ import { t as Ve } from "./ring-resize-11TaovpK.js";
16
+ //#region ~icons/tabler/user-edit
17
+ var L = {
18
18
  viewBox: "0 0 24 24",
19
19
  width: "1.2em",
20
20
  height: "1.2em"
21
21
  };
22
- function Be(e, t) {
23
- return u(), T("svg", R, [...t[0] ||= [A("path", {
24
- fill: "none",
25
- stroke: "currentColor",
26
- "stroke-linecap": "round",
27
- "stroke-linejoin": "round",
28
- "stroke-width": "2",
29
- d: "M11 12a1 1 0 1 0 2 0a1 1 0 1 0-2 0m0 7a1 1 0 1 0 2 0a1 1 0 1 0-2 0m0-14a1 1 0 1 0 2 0a1 1 0 1 0-2 0"
30
- }, null, -1)]]);
31
- }
32
- var Ve = _({
33
- name: "tabler-dots-vertical",
34
- render: Be
35
- }), z = {
36
- viewBox: "0 0 24 24",
37
- width: "1.2em",
38
- height: "1.2em"
39
- };
40
- function B(e, t) {
41
- return u(), T("svg", z, [...t[0] ||= [A("path", {
22
+ function He(e, t) {
23
+ return u(), w("svg", L, [...t[0] ||= [k("path", {
42
24
  fill: "none",
43
25
  stroke: "currentColor",
44
26
  "stroke-linecap": "round",
@@ -47,23 +29,23 @@ function B(e, t) {
47
29
  d: "M8 7a4 4 0 1 0 8 0a4 4 0 0 0-8 0M6 21v-2a4 4 0 0 1 4-4h3.5m4.92.61a2.1 2.1 0 0 1 2.97 2.97L18 22h-3v-3z"
48
30
  }, null, -1)]]);
49
31
  }
50
- var He = _({
32
+ var Ue = _({
51
33
  name: "tabler-user-edit",
52
- render: B
53
- }), V = { class: "flex flex-col gap-4 w-full" }, H = {
34
+ render: He
35
+ }), R = { class: "flex flex-col gap-4 w-full" }, z = {
54
36
  key: 0,
55
37
  class: "flex justify-center"
56
- }, U = ["src", "alt"], W = { class: "flex flex-col gap-2 w-full" }, G = { class: "cui-label" }, Ue = { class: "flex flex-col gap-2 w-full" }, We = {
38
+ }, B = ["src", "alt"], V = { class: "flex flex-col gap-2 w-full" }, H = { class: "cui-label" }, U = { class: "flex flex-col gap-2 w-full" }, W = {
57
39
  for: "reassignTarget",
58
40
  class: "cui-label"
59
- }, Ge = /* @__PURE__ */ M({
41
+ }, We = /* @__PURE__ */ j({
60
42
  __name: "FaceReassign",
61
43
  props: {
62
44
  cropUrl: {},
63
45
  oldName: {}
64
46
  },
65
47
  setup(e, { expose: t }) {
66
- let n = e, { t: r } = je(), { plugin: i } = Ie("@camera.ui/camera-ui-nvr"), a = N(null), o = N([]), s = N(!0), c = S(() => n.oldName === "unknown" ? r("views.recordings.reassign_unknown_person") : n.oldName), l = S(() => {
48
+ let n = e, { t: r } = Ne(), { plugin: i } = Re("@camera.ui/camera-ui-nvr"), a = M(null), o = M([]), s = M(!0), c = S(() => n.oldName === "unknown" ? r("views.recordings.reassign_unknown_person") : n.oldName), l = S(() => {
67
49
  let e = o.value.filter((e) => e !== n.oldName).map((e) => ({
68
50
  label: e,
69
51
  value: e
@@ -73,7 +55,7 @@ var He = _({
73
55
  value: ""
74
56
  }), e;
75
57
  });
76
- return ee(async () => {
58
+ return te(async () => {
77
59
  try {
78
60
  let e = await i.value?.listKnownFaces?.();
79
61
  o.value = (e ?? []).map((e) => e.name);
@@ -81,20 +63,20 @@ var He = _({
81
63
  s.value = !1;
82
64
  }
83
65
  }), t({ onConfirm: async () => a.value }), (e, t) => {
84
- let r = Le, i = Re;
85
- return u(), T("div", V, [
86
- n.cropUrl ? (u(), T("div", H, [A("img", {
66
+ let r = ze, i = Be;
67
+ return u(), w("div", R, [
68
+ n.cropUrl ? (u(), w("div", z, [k("img", {
87
69
  src: n.cropUrl,
88
70
  alt: x(c),
89
71
  class: "w-36 h-36 rounded-xl object-cover bg-neutral-900"
90
- }, null, 8, U)])) : y("", !0),
91
- A("div", W, [A("label", G, d(e.$t("views.recordings.reassign_current")), 1), P(r, {
72
+ }, null, 8, B)])) : y("", !0),
73
+ k("div", V, [k("label", H, d(e.$t("views.recordings.reassign_current")), 1), N(r, {
92
74
  "model-value": x(c),
93
75
  class: "w-full",
94
76
  fluid: "",
95
77
  disabled: ""
96
78
  }, null, 8, ["model-value"])]),
97
- A("div", Ue, [A("label", We, d(e.$t("views.recordings.reassign_new")), 1), P(i, {
79
+ k("div", U, [k("label", W, d(e.$t("views.recordings.reassign_new")), 1), N(i, {
98
80
  id: "reassignTarget",
99
81
  modelValue: x(a),
100
82
  "onUpdate:modelValue": t[0] ||= (e) => b(a) ? a.value = e : null,
@@ -116,28 +98,28 @@ var He = _({
116
98
  ]);
117
99
  };
118
100
  }
119
- }), Ke = ["src"], qe = {
101
+ }), Ge = ["src"], Ke = {
120
102
  key: 2,
121
103
  class: "w-full h-full flex items-center justify-center bg-neutral-800/80"
122
- }, Je = { class: "absolute top-0 left-0 right-0 p-2 bg-gradient-to-b from-black/80 to-transparent z-[3]" }, Ye = { class: "flex items-center gap-1.5" }, Xe = { class: "text-xs font-semibold text-white truncate min-w-0 flex-1" }, Ze = {
104
+ }, qe = { class: "absolute top-0 left-0 right-0 p-2 bg-gradient-to-b from-black/80 to-transparent z-[3]" }, Je = { class: "flex items-center gap-1.5" }, Ye = { class: "text-xs font-semibold text-white truncate min-w-0 flex-1" }, Xe = {
123
105
  key: 0,
124
106
  class: "text-[10px] font-semibold text-white/80 bg-black/60 px-1.5 py-0.5 rounded-md shrink-0"
125
- }, Qe = { class: "text-[10px] text-white/70" }, $e = { class: "block text-[11px] text-white font-medium truncate bg-black/50 rounded-md px-2 py-0.5" }, et = { class: "flex items-center gap-1 min-w-0" }, tt = ["title"], nt = {
107
+ }, Ze = { class: "text-[10px] text-white/70" }, Qe = { class: "block text-[11px] text-white font-medium truncate bg-black/50 rounded-md px-2 py-0.5" }, $e = { class: "flex items-center gap-1 min-w-0" }, et = ["title"], tt = {
126
108
  key: 0,
127
109
  class: "flex items-center gap-0.5 shrink-0 opacity-85 group-hover:opacity-100 transition-opacity duration-200"
128
- }, rt = ["onClick"], it = ["src", "alt"], at = {
110
+ }, nt = ["onClick"], rt = ["src", "alt"], it = {
129
111
  key: 0,
130
112
  class: "text-[10px] text-white/60 font-medium"
131
- }, ot = {
113
+ }, at = {
132
114
  key: 6,
133
115
  class: "absolute inset-0 z-[4] flex items-center justify-center pointer-events-none"
134
- }, st = {
116
+ }, ot = {
135
117
  key: 7,
136
118
  class: "absolute bottom-10 left-1/2 -translate-x-1/2 z-[4] pointer-events-none"
137
- }, ct = {
119
+ }, st = {
138
120
  class: "text-[10px] font-semibold text-white bg-black/60 px-1.5 py-0.5 rounded-md whitespace-nowrap",
139
121
  style: { "font-variant-numeric": "tabular-nums" }
140
- }, lt = 24, ut = 30, dt = 22, ft = 28, pt = 8, K = /*#__PURE__*/ L(/* @__PURE__ */ M({
122
+ }, ct = 24, lt = 30, ut = 22, dt = 28, ft = 8, pt = /*#__PURE__*/ I(/* @__PURE__ */ j({
141
123
  __name: "RecordingCard",
142
124
  props: {
143
125
  event: {},
@@ -157,7 +139,7 @@ var He = _({
157
139
  "openTrace"
158
140
  ],
159
141
  setup(e, { emit: t }) {
160
- let r = e, i = t, o = Ae(), s = Ee(), { t: f } = je(), p = Oe(), m = oe("@camera.ui/camera-ui-nvr"), { plugin: _ } = Ie("@camera.ui/camera-ui-nvr"), b = _e(), { icons: E } = Ne(), D = m.getCachedThumbnails(r.event.id), M = D ? I(D, r.event, "card", r.segIndex).url ? "loaded" : "empty" : "loading", L = c(ie, void 0), Pe = k("rootRef"), Le = k("previewCanvasRef"), Re = k("footerRef"), ze = k("cardMenuRef"), R = N(!1), Be = we(Pe, () => Bt(), () => $()), z = N(!1), B = N(D ?? null), V = N(M), H = N(!1), U = N(0), W = N(null), G = N(!1), { width: Ue } = ke(Re), We = S(() => ge(void 0, "admin")), K = S(() => W.value ?? r.event.favorite ?? !1), q = S(() => {
142
+ let r = e, i = t, o = Me(), s = ke(), { t: f } = Ne(), p = ie(), m = le("@camera.ui/camera-ui-nvr"), { plugin: _ } = Re("@camera.ui/camera-ui-nvr"), b = ge(), { icons: T } = Fe(), E = m.getCachedThumbnails(r.event.id), j = E ? F(E, r.event, "card", r.segIndex).url ? "loaded" : "empty" : "loading", I = c(ve, void 0), Ie = O("rootRef"), ze = O("previewCanvasRef"), Be = O("footerRef"), Ve = O("cardMenuRef"), L = M(!1), He = xe(Ie, () => Bt(), () => $()), R = M(!1), z = M(E ?? null), B = M(j), V = M(!1), H = M(0), U = M(null), W = M(!1), { width: pt } = je(Be), mt = S(() => De(void 0, "admin")), G = S(() => U.value ?? r.event.favorite ?? !1), K = S(() => {
161
143
  if (r.semanticScore == null) return;
162
144
  let e = Math.max(0, Math.min(1, r.semanticScore));
163
145
  return {
@@ -165,23 +147,23 @@ var He = _({
165
147
  label: `${(e * 100).toFixed(0)}%`,
166
148
  color: e >= .5 ? "bg-green-500/80" : e >= .25 ? "bg-yellow-500/80" : "bg-red-400/80"
167
149
  };
168
- }), J = S(() => B.value ? I(B.value, r.event, "card", r.segIndex) : null), mt = S(() => {
169
- let e = r.segIndex ?? J.value?.segIndex;
150
+ }), q = S(() => z.value ? F(z.value, r.event, "card", r.segIndex) : null), J = S(() => {
151
+ let e = r.segIndex ?? q.value?.segIndex;
170
152
  return e === void 0 ? void 0 : r.event.segments?.[e];
171
- }), ht = S(() => J.value?.url), gt = S(() => J.value?.label), _t = S(() => J.value?.type ?? r.event.types[0] ?? "motion"), Y = S(() => {
153
+ }), ht = S(() => q.value?.url), Y = S(() => q.value?.label), gt = S(() => q.value?.type ?? r.event.types[0] ?? "motion"), _t = S(() => {
172
154
  if (r.hideSegmentBadge) return;
173
155
  let e = r.event.segments?.length ?? 0;
174
156
  return r.segIndex !== void 0 && e > 1 ? `${r.segIndex + 1}/${e}` : void 0;
175
157
  }), X = S(() => {
176
- let e = B.value, t = J.value?.url;
158
+ let e = z.value, t = q.value?.url;
177
159
  if (!e || !t) return [];
178
160
  let n = [{
179
161
  url: t,
180
- label: J.value?.label,
181
- type: _t.value,
162
+ label: q.value?.label,
163
+ type: gt.value,
182
164
  crop: !1
183
165
  }];
184
- for (let t of ne(e, r.segIndex)) {
166
+ for (let t of re(e, r.segIndex)) {
185
167
  if (n.some((e) => e.url === t.url)) continue;
186
168
  let e = t.key.split(":")[0];
187
169
  n.push({
@@ -193,9 +175,9 @@ var He = _({
193
175
  });
194
176
  }
195
177
  if (r.segIndex === void 0) for (let t of Object.keys(e.cards ?? e.strips ?? {}).sort((e, t) => Number(e) - Number(t))) {
196
- let i = le(e.cards?.[t] ?? e.strips?.[t]);
178
+ let i = me(e.cards?.[t] ?? e.strips?.[t]);
197
179
  if (!i || n.some((e) => e.url === i)) continue;
198
- let a = Se(r.event, t);
180
+ let a = _e(r.event, t);
199
181
  n.push({
200
182
  url: i,
201
183
  label: a,
@@ -204,60 +186,60 @@ var He = _({
204
186
  });
205
187
  }
206
188
  return n.length > 1 ? n : [];
207
- }), vt = S(() => X.value.length > 1), yt = S(() => X.value.length ? Math.min(U.value, X.value.length - 1) : 0), Z = S(() => vt.value ? X.value[yt.value] : void 0), bt = S(() => !!Z.value?.crop), xt = S(() => Z.value?.url ?? ht.value), St = S(() => Z.value?.label ?? gt.value), Q = S(() => {
208
- let e = mt.value;
209
- return (e ? re(r.event, e) : [...new Set(r.event.types)]).filter((e) => e !== "motion" && e !== "audio");
189
+ }), vt = S(() => X.value.length > 1), yt = S(() => X.value.length ? Math.min(H.value, X.value.length - 1) : 0), Z = S(() => vt.value ? X.value[yt.value] : void 0), bt = S(() => !!Z.value?.crop), xt = S(() => Z.value?.url ?? ht.value), St = S(() => Z.value?.label ?? Y.value), Q = S(() => {
190
+ let e = J.value;
191
+ return (e ? se(r.event, e) : [...new Set(r.event.types)]).filter((e) => e !== "motion" && e !== "audio");
210
192
  }), Ct = S(() => r.cameraName ?? r.event.cameraId), wt = S(() => X.value.map((e) => ({
211
193
  url: e.url,
212
194
  type: e.type
213
195
  }))), Tt = S(() => Q.value.slice(0, Et.value.icons)), Et = S(() => {
214
- let e = Ue.value;
196
+ let e = pt.value;
215
197
  if (!e) return {
216
198
  icons: 2,
217
199
  tiles: 2
218
200
  };
219
- let t = e - pt;
220
- r.selectionMode && (t -= ft);
221
- let n = wt.value.length > 0 ? 52 : 0, i = It(Q.value.length, Math.max(0, t - n), lt), a = Q.value.length > 0 ? Math.max(1, i) : 0, o = a * lt + (a < Q.value.length ? dt : 0);
201
+ let t = e - ft;
202
+ r.selectionMode && (t -= dt);
203
+ let n = wt.value.length > 0 ? 52 : 0, i = It(Q.value.length, Math.max(0, t - n), ct), a = Q.value.length > 0 ? Math.max(1, i) : 0, o = a * ct + (a < Q.value.length ? ut : 0);
222
204
  return {
223
205
  icons: a,
224
- tiles: It(wt.value.length, Math.max(0, t - o), ut)
206
+ tiles: It(wt.value.length, Math.max(0, t - o), lt)
225
207
  };
226
208
  }), Dt = S(() => Q.value.slice(Et.value.icons)), Ot = S(() => wt.value.slice(0, Et.value.tiles)), kt = S(() => wt.value.length - Et.value.tiles), At = S(() => {
227
- let e = r.segIndex === void 0 ? void 0 : r.event.segments?.[r.segIndex]?.firstSeen, t = new Date(e ?? r.event.thumbnailAt ?? r.event.startTime), n = /* @__PURE__ */ new Date(), i = t.toDateString() === n.toDateString(), a = t.toLocaleTimeString([], {
209
+ let e = new Date(J.value?.firstSeen ?? r.event.thumbnailAt ?? r.event.startTime), t = /* @__PURE__ */ new Date(), n = e.toDateString() === t.toDateString(), i = e.toLocaleTimeString([], {
228
210
  hour: "2-digit",
229
211
  minute: "2-digit"
230
212
  });
231
- return i ? a : `${t.toLocaleDateString([], {
213
+ return n ? i : `${e.toLocaleDateString([], {
232
214
  month: "short",
233
215
  day: "numeric"
234
- })} ${a}`;
235
- }), jt = S(() => !!(_.value && r.event.endTime && r.event.hasRecording !== !1)), Mt = S(() => L ? R.value ? f("views.recordings.no_preview") : z.value ? L.status.value === "unavailable" ? f("views.recordings.no_preview") : L.status.value === "playing" && L.previewTimeMs.value ? zt(L.previewTimeMs.value) : "" : "" : ""), Nt = S(() => {
216
+ })} ${i}`;
217
+ }), jt = S(() => !!(_.value && r.event.endTime && r.event.hasRecording !== !1)), Mt = S(() => I ? L.value ? f("views.recordings.no_preview") : R.value ? I.status.value === "unavailable" ? f("views.recordings.no_preview") : I.status.value === "playing" && I.previewTimeMs.value ? zt(I.previewTimeMs.value) : "" : "" : ""), Nt = S(() => {
236
218
  let e = Z.value;
237
219
  if (e && e.type === "face") return e.label ? e.label : "unknown";
238
220
  }), Pt = S(() => {
239
221
  let e = [];
240
- return We.value && Nt.value !== void 0 && e.push({
222
+ return mt.value && Nt.value !== void 0 && e.push({
241
223
  key: "reassign",
242
224
  label: f("views.recordings.reassign_face"),
243
- icon: He,
244
- loading: G.value,
225
+ icon: Ue,
226
+ loading: W.value,
245
227
  onClick: () => Kt()
246
228
  }), r.camera && e.push({
247
229
  key: "trace",
248
230
  label: f("views.recordings.open_trace"),
249
- icon: Ce,
231
+ icon: fe,
250
232
  onClick: () => i("openTrace")
251
233
  }), e.push({
252
234
  key: "ask",
253
235
  label: f("views.recordings.ask_assistant"),
254
- icon: Me,
236
+ icon: Pe,
255
237
  onClick: () => Ft()
256
238
  }), jt.value && e.push({
257
239
  key: "download",
258
240
  label: f("views.recordings.download"),
259
- icon: pe,
260
- loading: H.value,
241
+ icon: ye,
242
+ loading: V.value,
261
243
  onClick: () => Yt()
262
244
  }), e;
263
245
  });
@@ -273,63 +255,63 @@ var He = _({
273
255
  });
274
256
  }
275
257
  function It(e, t, n) {
276
- return e === 0 || t < n ? 0 : e * n <= t ? e : Math.max(0, Math.floor((t - dt) / n));
258
+ return e === 0 || t < n ? 0 : e * n <= t ? e : Math.max(0, Math.floor((t - ut) / n));
277
259
  }
278
260
  function Lt(e) {
279
261
  let t = X.value.length;
280
- t && ($(), U.value = (yt.value + e + t) % t);
262
+ t && ($(), H.value = (yt.value + e + t) % t);
281
263
  }
282
264
  function Rt(e, t) {
283
- vt.value && (t.stopPropagation(), $(), U.value = e);
265
+ vt.value && (t.stopPropagation(), $(), H.value = e);
284
266
  }
285
267
  function $() {
286
- R.value = !1, L && z.value && (z.value = !1, L.onHoverEnd());
268
+ L.value = !1, I && R.value && (R.value = !1, I.onHoverEnd());
287
269
  }
288
270
  function zt(e) {
289
271
  let t = new Date(e);
290
272
  return `${String(t.getHours()).padStart(2, "0")}:${String(t.getMinutes()).padStart(2, "0")}:${String(t.getSeconds()).padStart(2, "0")}`;
291
273
  }
292
274
  function Bt() {
293
- if (!L || yt.value > 0) return;
294
- let e = Le.value;
275
+ if (!I || yt.value > 0) return;
276
+ let e = ze.value;
295
277
  if (!e) return;
296
- let t = ae(r.event);
278
+ let t = ce(r.event);
297
279
  if (r.event.hasRecording === !1 || !t) {
298
- R.value = !0;
280
+ L.value = !0;
299
281
  return;
300
282
  }
301
- z.value = !0, L.onHoverStart(e, r.event.cameraId, r.event.id, r.event.startTime, t, r.camera?.zones?.privacy, ce(r.event));
283
+ R.value = !0, I.onHoverStart(e, r.event.cameraId, r.event.id, r.event.startTime, t, r.camera?.zones?.privacy, oe(r.event));
302
284
  }
303
285
  function Vt() {
304
- Be.blocksMouseEnter() || Bt();
286
+ He.blocksMouseEnter() || Bt();
305
287
  }
306
288
  function Ht() {
307
- R.value = !1, L && (z.value = !1, L.onHoverEnd());
289
+ L.value = !1, I && (R.value = !1, I.onHoverEnd());
308
290
  }
309
291
  async function Ut(e = 2) {
310
292
  let t = await r.loadThumbnails(r.event.id, r.event.startTime);
311
293
  if (t) {
312
- B.value = t;
313
- let e = I(t, r.event, "card");
314
- V.value = e.url ? "loaded" : "empty";
294
+ z.value = t;
295
+ let e = F(t, r.event, "card");
296
+ B.value = e.url ? "loaded" : "empty";
315
297
  } else if (e > 0) return await new Promise((e) => setTimeout(e, 500)), Ut(e - 1);
316
- else V.value = r.event.state === "active" ? "loading" : "empty";
298
+ else B.value = r.event.state === "active" ? "loading" : "empty";
317
299
  }
318
300
  function Wt() {
319
- if (!Be.consumesClick()) {
301
+ if (!He.consumesClick()) {
320
302
  if (r.selectionMode) {
321
303
  i("select");
322
304
  return;
323
305
  }
324
- i("scrollToEvent", mt.value?.firstSeen ?? ve(r.event));
306
+ i("scrollToEvent", J.value?.firstSeen ?? we(r.event));
325
307
  }
326
308
  }
327
309
  function Gt(e) {
328
- $(), ze.value?.toggleMenu(e);
310
+ $(), Ve.value?.toggleMenu(e);
329
311
  }
330
312
  function Kt() {
331
313
  let e = Nt.value;
332
- e !== void 0 && b.openComponentDialog(Ge, {
314
+ e !== void 0 && b.openComponentDialog(We, {
333
315
  data: {
334
316
  title: f("views.recordings.reassign_face"),
335
317
  confirmText: f("components.form.button.save"),
@@ -343,12 +325,12 @@ var He = _({
343
325
  }
344
326
  async function qt(e) {
345
327
  let t = Nt.value;
346
- if (t === void 0 || G.value) return;
328
+ if (t === void 0 || W.value) return;
347
329
  let n = Z.value?.faceSeg ?? -1, i = _.value;
348
330
  if (i?.reassignEventFace) {
349
- G.value = !0;
331
+ W.value = !0;
350
332
  try {
351
- await i.reassignEventFace(r.event.id, n, t, e) > 0 && se(r.event.id), s.add({
333
+ await i.reassignEventFace(r.event.id, n, t, e) > 0 && Ae(r.event.id), s.add({
352
334
  severity: "success",
353
335
  detail: f("views.recordings.reassign_done"),
354
336
  life: 3e3
@@ -356,35 +338,35 @@ var He = _({
356
338
  } catch (e) {
357
339
  s.add({
358
340
  severity: "error",
359
- detail: ye(e),
341
+ detail: Se(e),
360
342
  life: 5e3
361
343
  });
362
344
  } finally {
363
- G.value = !1;
345
+ W.value = !1;
364
346
  }
365
347
  }
366
348
  }
367
349
  async function Jt() {
368
- let e = !K.value;
369
- W.value = e;
350
+ let e = !G.value;
351
+ U.value = e;
370
352
  try {
371
353
  await m.setEventFavorite(r.event.id, e);
372
354
  } catch (e) {
373
- W.value = null, s.add({
355
+ U.value = null, s.add({
374
356
  severity: "error",
375
- detail: ye(e),
357
+ detail: Se(e),
376
358
  life: 5e3
377
359
  });
378
360
  }
379
361
  }
380
362
  async function Yt() {
381
- if (H.value) return;
363
+ if (V.value) return;
382
364
  let e = _.value;
383
365
  if (e?.nvrExport && r.event.endTime) {
384
- H.value = !0;
366
+ V.value = !0;
385
367
  try {
386
368
  let t = await e.nvrExport(r.event.cameraId, r.event.startTime * 1e3, r.event.endTime * 1e3);
387
- await xe({
369
+ await be({
388
370
  url: t.url,
389
371
  filename: t.filename
390
372
  });
@@ -392,47 +374,47 @@ var He = _({
392
374
  o.error("Download failed:", e), s.add({
393
375
  severity: "error",
394
376
  summary: f("views.recordings.download_failed"),
395
- detail: ye(e),
377
+ detail: Se(e),
396
378
  life: 5e3
397
379
  });
398
380
  } finally {
399
- H.value = !1;
381
+ V.value = !1;
400
382
  }
401
383
  }
402
384
  }
403
- return w(() => m.storeVersion.value, () => {
385
+ return ee(() => m.storeVersion.value, () => {
404
386
  let e = m.getCachedThumbnails(r.event.id);
405
387
  if (!e) {
406
- B.value && Ut();
388
+ z.value && Ut();
407
389
  return;
408
390
  }
409
- B.value = e, I(e, r.event, "card").url && (V.value = "loaded");
410
- }), ee(() => {
411
- M === "loading" && Ut();
391
+ z.value = e, F(e, r.event, "card").url && (B.value = "loaded");
392
+ }), te(() => {
393
+ j === "loading" && Ut();
412
394
  }), (t, r) => {
413
- let i = be, o = de, s = F, c = me, f = Fe, p = Ve, m = he, _ = fe, b = Te, S = De, w = te;
414
- return u(), T("div", {
395
+ let i = Te, o = Oe, s = P, c = he, f = Le, p = Ee, m = ue, _ = Ce, b = pe, S = de, ee = ne;
396
+ return u(), w("div", {
415
397
  ref_key: "rootRef",
416
- ref: Pe,
398
+ ref: Ie,
417
399
  class: "recording-card relative group cursor-pointer",
418
400
  onClick: Wt,
419
401
  onMouseenter: Vt,
420
402
  onMouseleave: Ht
421
- }, [A("div", {
403
+ }, [k("div", {
422
404
  class: h(["bg-neutral-900 w-full rounded-xl overflow-hidden relative transition-shadow duration-200", { "ring-2 ring-inset ring-primary/70": e.siblingActive }]),
423
405
  style: { "aspect-ratio": "1/1" }
424
406
  }, [
425
- x(V) === "loading" ? (u(), v(i, {
407
+ x(B) === "loading" ? (u(), v(i, {
426
408
  key: 0,
427
409
  width: "100%",
428
410
  height: "100%",
429
411
  class: "rounded-xl"
430
- })) : x(xt) ? (u(), T(O, { key: 1 }, [x(bt) ? (u(), T("img", {
412
+ })) : x(xt) ? (u(), w(D, { key: 1 }, [x(bt) ? (u(), w("img", {
431
413
  key: 0,
432
414
  src: x(xt),
433
415
  "aria-hidden": "true",
434
416
  class: "absolute inset-0 w-full h-full object-cover blur-xl scale-110 opacity-50 pointer-events-none"
435
- }, null, 8, Ke)) : y("", !0), P(o, {
417
+ }, null, 8, Ge)) : y("", !0), N(o, {
436
418
  src: x(xt),
437
419
  alt: x(Ct),
438
420
  class: "pointer-events-none w-full h-full transition-transform duration-300 group-hover:scale-105",
@@ -442,22 +424,22 @@ var He = _({
442
424
  "src",
443
425
  "alt",
444
426
  "image-style"
445
- ])], 64)) : (u(), T("div", qe, [(u(), v(g(x(E)[x(_t)] ?? x(E).motion), { class: "w-10 h-10 text-white/20" }))])),
446
- x(L) ? j((u(), T("canvas", {
427
+ ])], 64)) : (u(), w("div", Ke, [(u(), v(g(x(T)[x(gt)] ?? x(T).motion), { class: "w-10 h-10 text-white/20" }))])),
428
+ x(I) ? A((u(), w("canvas", {
447
429
  key: 3,
448
430
  ref_key: "previewCanvasRef",
449
- ref: Le,
431
+ ref: ze,
450
432
  class: "absolute inset-0 w-full h-full object-cover pointer-events-none z-[1]"
451
- }, null, 512)), [[n, x(z)]]) : y("", !0),
452
- r[2] ||= A("div", { class: "absolute inset-0 bg-transparent group-hover:bg-black/30 pointer-events-none transition-colors duration-200 z-[2]" }, null, -1),
453
- A("div", Je, [A("div", Ye, [
454
- A("p", Xe, d(x(Ct)), 1),
455
- x(Y) ? (u(), T("span", Ze, d(x(Y)), 1)) : y("", !0),
456
- x(q) ? (u(), T("span", {
433
+ }, null, 512)), [[n, x(R)]]) : y("", !0),
434
+ r[2] ||= k("div", { class: "absolute inset-0 bg-transparent group-hover:bg-black/30 pointer-events-none transition-colors duration-200 z-[2]" }, null, -1),
435
+ k("div", qe, [k("div", Je, [
436
+ k("p", Ye, d(x(Ct)), 1),
437
+ x(_t) ? (u(), w("span", Xe, d(x(_t)), 1)) : y("", !0),
438
+ x(K) ? (u(), w("span", {
457
439
  key: 1,
458
- class: h(["text-[10px] font-bold text-white px-1.5 py-0.5 rounded-md shrink-0", x(q).color])
459
- }, d(x(q).label), 3)) : y("", !0),
460
- x(We) && !e.selectionMode ? j((u(), v(f, {
440
+ class: h(["text-[10px] font-bold text-white px-1.5 py-0.5 rounded-md shrink-0", x(K).color])
441
+ }, d(x(K).label), 3)) : y("", !0),
442
+ x(mt) && !e.selectionMode ? A((u(), v(f, {
461
443
  key: 2,
462
444
  rounded: "",
463
445
  text: "",
@@ -466,7 +448,7 @@ var He = _({
466
448
  onClick: a(Jt, ["stop"]),
467
449
  onMouseenter: $
468
450
  }, {
469
- icon: C(() => [x(K) ? (u(), v(s, {
451
+ icon: C(() => [x(G) ? (u(), v(s, {
470
452
  key: 0,
471
453
  class: "w-3 h-3 text-yellow-400"
472
454
  })) : (u(), v(c, {
@@ -475,31 +457,31 @@ var He = _({
475
457
  }))]),
476
458
  _: 1
477
459
  })), [[
478
- w,
479
- { value: x(K) ? t.$t("views.recordings.unfavorite") : t.$t("views.recordings.favorite") },
460
+ ee,
461
+ { value: x(G) ? t.$t("views.recordings.unfavorite") : t.$t("views.recordings.favorite") },
480
462
  void 0,
481
463
  { left: !0 }
482
464
  ]]) : y("", !0),
483
- x(Pt).length > 0 && !e.selectionMode ? j((u(), v(f, {
465
+ x(Pt).length > 0 && !e.selectionMode ? A((u(), v(f, {
484
466
  key: 3,
485
467
  rounded: "",
486
468
  text: "",
487
469
  severity: "secondary",
488
- loading: x(H) || x(G),
470
+ loading: x(V) || x(W),
489
471
  class: "!w-5 !h-5 !p-0 shrink-0 bg-black/60 hover:!bg-black/80",
490
472
  onClick: a(Gt, ["stop"]),
491
473
  onMouseenter: $
492
474
  }, {
493
- icon: C(() => [P(p, { class: "w-3 h-3 text-white" })]),
475
+ icon: C(() => [N(p, { class: "w-3 h-3 text-white" })]),
494
476
  _: 1
495
477
  }, 8, ["loading"])), [[
496
- w,
478
+ ee,
497
479
  { value: t.$t("views.recordings.more_actions") },
498
480
  void 0,
499
481
  { left: !0 }
500
482
  ]]) : y("", !0)
501
- ]), A("p", Qe, d(x(At)), 1)]),
502
- x(X).length > 1 ? (u(), T(O, { key: 4 }, [P(f, {
483
+ ]), k("p", Ze, d(x(At)), 1)]),
484
+ x(X).length > 1 ? (u(), w(D, { key: 4 }, [N(f, {
503
485
  rounded: "",
504
486
  text: "",
505
487
  severity: "secondary",
@@ -508,9 +490,9 @@ var He = _({
508
490
  onClick: r[0] ||= a((e) => Lt(-1), ["stop"]),
509
491
  onMouseenter: $
510
492
  }, {
511
- icon: C(() => [P(m, { class: "w-5 h-5 text-white" })]),
493
+ icon: C(() => [N(m, { class: "w-5 h-5 text-white" })]),
512
494
  _: 1
513
- }, 8, ["aria-label"]), P(f, {
495
+ }, 8, ["aria-label"]), N(f, {
514
496
  rounded: "",
515
497
  text: "",
516
498
  severity: "secondary",
@@ -519,61 +501,61 @@ var He = _({
519
501
  onClick: r[1] ||= a((e) => Lt(1), ["stop"]),
520
502
  onMouseenter: $
521
503
  }, {
522
- icon: C(() => [P(_, { class: "w-5 h-5 text-white" })]),
504
+ icon: C(() => [N(_, { class: "w-5 h-5 text-white" })]),
523
505
  _: 1
524
506
  }, 8, ["aria-label"])], 64)) : y("", !0),
525
- x(St) ? (u(), T("div", {
507
+ x(St) ? (u(), w("div", {
526
508
  key: 5,
527
509
  class: h(["absolute left-1/2 -translate-x-1/2 z-[3] max-w-[85%] pointer-events-none transition-all duration-200", x(Mt) ? "bottom-16" : "bottom-10"])
528
- }, [A("span", $e, d(x(St)), 1)], 2)) : y("", !0),
529
- A("div", {
510
+ }, [k("span", Qe, d(x(St)), 1)], 2)) : y("", !0),
511
+ k("div", {
530
512
  ref_key: "footerRef",
531
- ref: Re,
513
+ ref: Be,
532
514
  class: "absolute bottom-2 left-2 right-2 flex items-center justify-between gap-2 z-[3]"
533
- }, [A("div", et, [
534
- e.selectionMode ? (u(), T("div", {
515
+ }, [k("div", $e, [
516
+ e.selectionMode ? (u(), w("div", {
535
517
  key: 0,
536
518
  class: h(["w-6 h-6 rounded-full border-2 flex items-center justify-center transition-colors shrink-0", e.selected ? "bg-primary border-primary" : "bg-black/40 border-white/80"])
537
519
  }, [e.selected ? (u(), v(b, {
538
520
  key: 0,
539
521
  class: "w-4 h-4 text-white"
540
522
  })) : y("", !0)], 2)) : y("", !0),
541
- (u(!0), T(O, null, l(x(Tt), (e) => (u(), T("div", {
523
+ (u(!0), w(D, null, l(x(Tt), (e) => (u(), w("div", {
542
524
  key: e,
543
525
  class: "flex items-center justify-center w-5 h-5 rounded-md bg-black/60 shrink-0"
544
- }, [(u(), v(g(x(E)[e] ?? x(E).motion), { class: "w-3 h-3 text-white/80" }))]))), 128)),
545
- x(Dt).length > 0 ? (u(), T("span", {
526
+ }, [(u(), v(g(x(T)[e] ?? x(T).motion), { class: "w-3 h-3 text-white/80" }))]))), 128)),
527
+ x(Dt).length > 0 ? (u(), w("span", {
546
528
  key: 1,
547
529
  title: x(Dt).join(", "),
548
530
  class: "text-[10px] text-white/60 font-medium shrink-0"
549
- }, " +" + d(x(Dt).length), 9, tt)) : y("", !0)
550
- ]), x(Ot).length > 0 || x(kt) > 0 ? (u(), T("div", nt, [(u(!0), T(O, null, l(x(Ot), (e, t) => (u(), T("div", {
531
+ }, " +" + d(x(Dt).length), 9, et)) : y("", !0)
532
+ ]), x(Ot).length > 0 || x(kt) > 0 ? (u(), w("div", tt, [(u(!0), w(D, null, l(x(Ot), (e, t) => (u(), w("div", {
551
533
  key: t,
552
534
  class: h(["w-7 h-7 rounded overflow-hidden border bg-neutral-800 cursor-pointer", t === x(yt) ? "border-primary/80" : "border-white/20"]),
553
535
  onClick: (e) => Rt(t, e)
554
- }, [A("img", {
536
+ }, [k("img", {
555
537
  src: e.url,
556
538
  alt: e.type,
557
539
  decoding: "async",
558
540
  loading: "lazy",
559
541
  class: "w-full h-full object-cover"
560
- }, null, 8, it)], 10, rt))), 128)), x(kt) > 0 ? (u(), T("span", at, "+" + d(x(kt)), 1)) : y("", !0)])) : y("", !0)], 512),
561
- x(L) && x(z) && x(L).isLoading.value ? (u(), T("div", ot, [P(S, {
542
+ }, null, 8, rt)], 10, nt))), 128)), x(kt) > 0 ? (u(), w("span", it, "+" + d(x(kt)), 1)) : y("", !0)])) : y("", !0)], 512),
543
+ x(I) && x(R) && x(I).isLoading.value ? (u(), w("div", at, [N(S, {
562
544
  class: "w-[28px] h-[28px] m-0",
563
545
  "stroke-width": "6"
564
546
  })])) : y("", !0),
565
- x(Mt) ? (u(), T("div", st, [A("span", ct, d(x(Mt)), 1)])) : y("", !0)
566
- ], 2), P(ue, {
547
+ x(Mt) ? (u(), w("div", ot, [k("span", st, d(x(Mt)), 1)])) : y("", !0)
548
+ ], 2), N(ae, {
567
549
  ref_key: "cardMenuRef",
568
- ref: ze,
550
+ ref: Ve,
569
551
  items: x(Pt),
570
552
  popover: { pt: { content: { class: "p-0! rounded-xl! overflow-hidden!" } } }
571
553
  }, null, 8, ["items"])], 544);
572
554
  };
573
555
  }
574
- }), [["__scopeId", "data-v-500b223d"]]), q = {
556
+ }), [["__scopeId", "data-v-7f24e751"]]), mt = {
575
557
  name: "VirtualScroller",
576
- components: { SpinnerIcon: Pe },
558
+ components: { SpinnerIcon: Ie },
577
559
  extends: {
578
560
  name: "BaseVirtualScroller",
579
561
  extends: i,
@@ -1121,14 +1103,14 @@ var He = _({
1121
1103
  this.content = e;
1122
1104
  }
1123
1105
  }
1124
- }, J = ["tabindex"];
1125
- function mt(e, t, n, r, i, a) {
1126
- let o = E("SpinnerIcon");
1127
- return e.disabled ? (u(), T(O, { key: 1 }, [f(e.$slots, "default"), f(e.$slots, "content", {
1106
+ }, G = ["tabindex"];
1107
+ function K(e, t, n, r, i, a) {
1108
+ let o = T("SpinnerIcon");
1109
+ return e.disabled ? (u(), w(D, { key: 1 }, [f(e.$slots, "default"), f(e.$slots, "content", {
1128
1110
  items: e.items,
1129
1111
  rows: e.items,
1130
1112
  columns: a.loadedColumns
1131
- })], 64)) : (u(), T("div", p({
1113
+ })], 64)) : (u(), w("div", p({
1132
1114
  key: 0,
1133
1115
  ref: a.elementRef,
1134
1116
  class: a.containerClass,
@@ -1150,32 +1132,32 @@ function mt(e, t, n, r, i, a) {
1150
1132
  vertical: a.isVertical(),
1151
1133
  horizontal: a.isHorizontal(),
1152
1134
  both: a.isBoth()
1153
- }, () => [A("div", p({
1135
+ }, () => [k("div", p({
1154
1136
  ref: a.contentRef,
1155
1137
  class: a.contentClass,
1156
1138
  style: i.contentStyle
1157
- }, e.ptm("content")), [(u(!0), T(O, null, l(a.loadedItems, (t, n) => f(e.$slots, "item", {
1139
+ }, e.ptm("content")), [(u(!0), w(D, null, l(a.loadedItems, (t, n) => f(e.$slots, "item", {
1158
1140
  item: t,
1159
1141
  options: a.getOptions(n)
1160
1142
  }, void 0, void 0, a.resolveItemKey(t, n))), 128))], 16)]),
1161
- e.showSpacer ? (u(), T("div", p({
1143
+ e.showSpacer ? (u(), w("div", p({
1162
1144
  key: 0,
1163
1145
  class: "p-virtualscroller-spacer",
1164
1146
  style: i.spacerStyle
1165
1147
  }, e.ptm("spacer")), null, 16)) : y("", !0),
1166
- !e.loaderDisabled && e.showLoader && i.d_loading ? (u(), T("div", p({
1148
+ !e.loaderDisabled && e.showLoader && i.d_loading ? (u(), w("div", p({
1167
1149
  key: 1,
1168
1150
  class: a.loaderClass
1169
- }, e.ptm("loader")), [e.$slots && e.$slots.loader ? (u(!0), T(O, { key: 0 }, l(i.loaderArr, (t, n) => f(e.$slots, "loader", { options: a.getLoaderOptions(n, a.isBoth() && { numCols: e.d_numItemsInViewport.cols }) }, void 0, void 0, n)), 128)) : y("", !0), f(e.$slots, "loadingicon", {}, () => [P(o, p({
1151
+ }, e.ptm("loader")), [e.$slots && e.$slots.loader ? (u(!0), w(D, { key: 0 }, l(i.loaderArr, (t, n) => f(e.$slots, "loader", { options: a.getLoaderOptions(n, a.isBoth() && { numCols: e.d_numItemsInViewport.cols }) }, void 0, void 0, n)), 128)) : y("", !0), f(e.$slots, "loadingicon", {}, () => [N(o, p({
1170
1152
  spin: "",
1171
1153
  class: "p-virtualscroller-loading-icon"
1172
1154
  }, e.ptm("loadingIcon")), null, 16)])], 16)) : y("", !0)
1173
- ], 16, J));
1155
+ ], 16, G));
1174
1156
  }
1175
- var ht = /*#__PURE__*/ L(q, [["render", mt]]), gt = {
1157
+ var q = /*#__PURE__*/ I(mt, [["render", K]]), J = {
1176
1158
  key: 1,
1177
1159
  class: "pointer-events-none absolute bottom-2 left-1/2 -translate-x-1/2 z-10 rounded-full bg-black/60 p-1.5"
1178
- }, _t = /*#__PURE__*/ L(/* @__PURE__ */ M({
1160
+ }, ht = /*#__PURE__*/ I(/* @__PURE__ */ j({
1179
1161
  __name: "CuiRecordingsGrid",
1180
1162
  props: {
1181
1163
  items: {},
@@ -1196,7 +1178,7 @@ var ht = /*#__PURE__*/ L(q, [["render", mt]]), gt = {
1196
1178
  }
1197
1179
  },
1198
1180
  setup(e, { expose: t }) {
1199
- let n = e, r = k("containerRef"), { width: i, height: a } = ke(r), o = S(() => a.value > 0 ? `${a.value}px` : void 0), s = S(() => {
1181
+ let n = e, r = O("containerRef"), { width: i, height: a } = je(r), o = S(() => a.value > 0 ? `${a.value}px` : void 0), s = S(() => {
1200
1182
  let e = i.value;
1201
1183
  if (!e) return 0;
1202
1184
  let t = n.gap;
@@ -1220,49 +1202,49 @@ var ht = /*#__PURE__*/ L(q, [["render", mt]]), gt = {
1220
1202
  let t = e;
1221
1203
  if (t && t.length !== 0) return g(t[0]);
1222
1204
  }
1223
- let b = N(!1), E = null;
1224
- async function j() {
1225
- if (b.value || !n.hasMore || !n.loadMore || E !== null && n.items.length === E) return;
1205
+ let b = M(!1), T = null;
1206
+ async function A() {
1207
+ if (b.value || !n.hasMore || !n.loadMore || T !== null && n.items.length === T) return;
1226
1208
  b.value = !0;
1227
1209
  let e = n.items.length;
1228
1210
  try {
1229
1211
  await Promise.resolve(n.loadMore());
1230
1212
  } finally {
1231
- b.value = !1, E = n.items.length === e ? e : null;
1213
+ b.value = !1, T = n.items.length === e ? e : null;
1232
1214
  }
1233
1215
  }
1234
- let M = N(0);
1235
- function ee(e) {
1216
+ let j = M(0);
1217
+ function te(e) {
1236
1218
  let t = e.target;
1237
1219
  if (!t) return;
1238
- M.value = t.scrollTop;
1220
+ j.value = t.scrollTop;
1239
1221
  let n = p.value * 3;
1240
- t.scrollTop + t.clientHeight >= t.scrollHeight - n && j();
1222
+ t.scrollTop + t.clientHeight >= t.scrollHeight - n && A();
1241
1223
  }
1242
- function te() {
1224
+ function ne() {
1243
1225
  (r.value?.querySelector(".recordings-scroll"))?.scrollTo({
1244
1226
  top: 0,
1245
1227
  behavior: "smooth"
1246
1228
  });
1247
1229
  }
1248
- let F = !1;
1249
- return w([
1230
+ let P = !1;
1231
+ return ee([
1250
1232
  () => n.items.length,
1251
1233
  a,
1252
1234
  p,
1253
1235
  () => n.hasMore
1254
1236
  ], () => {
1255
- F || (F = !0, m(() => {
1256
- if (F = !1, !n.hasMore) return;
1237
+ P || (P = !0, m(() => {
1238
+ if (P = !1, !n.hasMore) return;
1257
1239
  let e = a.value, t = h.value.length * p.value;
1258
- e > 0 && p.value > 0 && t < e + p.value && j();
1240
+ e > 0 && p.value > 0 && t < e + p.value && A();
1259
1241
  }));
1260
1242
  }, { flush: "post" }), t({
1261
- scrollToTop: te,
1262
- scrollY: M
1243
+ scrollToTop: ne,
1244
+ scrollY: j
1263
1245
  }), (t, n) => {
1264
- let i = ht, a = ze;
1265
- return u(), T("div", {
1246
+ let i = q, a = Ve;
1247
+ return u(), w("div", {
1266
1248
  ref_key: "containerRef",
1267
1249
  ref: r,
1268
1250
  class: "recordings-grid-root relative"
@@ -1275,17 +1257,17 @@ var ht = /*#__PURE__*/ L(q, [["render", mt]]), gt = {
1275
1257
  class: "recordings-scroll",
1276
1258
  "num-tolerated-items": 2,
1277
1259
  "item-key": _,
1278
- onScroll: ee
1260
+ onScroll: te
1279
1261
  }, {
1280
- item: C(({ item: n }) => [A("div", {
1262
+ item: C(({ item: n }) => [k("div", {
1281
1263
  class: "recordings-row",
1282
- style: D({
1264
+ style: E({
1283
1265
  height: `${x(p)}px`,
1284
1266
  gap: `${e.gap}px`
1285
1267
  })
1286
- }, [(u(!0), T(O, null, l(n, (e) => (u(), T("div", {
1268
+ }, [(u(!0), w(D, null, l(n, (e) => (u(), w("div", {
1287
1269
  key: g(e),
1288
- style: D({
1270
+ style: E({
1289
1271
  width: `${x(c)}px`,
1290
1272
  height: `${x(d)}px`
1291
1273
  })
@@ -1295,7 +1277,7 @@ var ht = /*#__PURE__*/ L(q, [["render", mt]]), gt = {
1295
1277
  "items",
1296
1278
  "item-size",
1297
1279
  "scroll-height"
1298
- ])) : y("", !0), x(b) ? (u(), T("div", gt, [P(a, {
1280
+ ])) : y("", !0), x(b) ? (u(), w("div", J, [N(a, {
1299
1281
  width: "18px",
1300
1282
  height: "18px",
1301
1283
  class: "text-white"
@@ -1313,7 +1295,7 @@ function Y(e) {
1313
1295
  }
1314
1296
  return e.event.thumbnailAt ?? e.event.startTime;
1315
1297
  }
1316
- function X(e) {
1298
+ function gt(e) {
1317
1299
  let t = [];
1318
1300
  for (let n of e) {
1319
1301
  let e = n.segments ?? [];
@@ -1335,4 +1317,4 @@ function X(e) {
1335
1317
  return t.sort((e, t) => Y(t) - Y(e)), t;
1336
1318
  }
1337
1319
  //#endregion
1338
- export { K as i, Y as n, _t as r, X as t };
1320
+ export { pt as i, Y as n, ht as r, gt as t };