@camera.ui/server 2.2.5-beta.4 → 2.2.5

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 (643) hide show
  1. package/dist/interface/assets/{404-YZOLos9r.js → 404-CiOxoqnT.js} +1 -1
  2. package/dist/interface/assets/{About-HtxMc8JZ.js → About-DWOlfWEm.js} +1 -1
  3. package/dist/interface/assets/Assistant-B1xdMAkA.js +1 -0
  4. package/dist/interface/assets/{Assistant-BMscGKnc.css → Assistant-CXx7EY1W.css} +1 -1
  5. package/dist/interface/assets/{Automation-D3DcUyui.js → Automation-BJgwUkUB.js} +3 -3
  6. package/dist/interface/assets/{AutomationImport-Dp_hT6hQ.js → AutomationImport-9GRAndAt.js} +2 -2
  7. package/dist/interface/assets/{AutomationStore-BKR7GXMk.js → AutomationStore-D_HR2Xby.js} +2 -2
  8. package/dist/interface/assets/{AutomationStoreDetail-B9yh51WQ.js → AutomationStoreDetail-B9MxV2py.js} +2 -2
  9. package/dist/interface/assets/Automations-Bpw8olkc.js +2 -0
  10. package/dist/interface/assets/Camera-BpFfZDaS.js +2 -0
  11. package/dist/interface/assets/{CameraConsole-BI93OaRt.js → CameraConsole-BKPTLSTO.js} +1 -1
  12. package/dist/interface/assets/{Cameras-Ctub8sVt.js → Cameras-DcrVCgLy.js} +2 -2
  13. package/dist/interface/assets/Camview-C16pyCZk.js +1 -0
  14. package/dist/interface/assets/{Camview-CZct5cnP.css → Camview-DasO326h.css} +1 -1
  15. package/dist/interface/assets/{CertificateUpload-xW55NA1Q.js → CertificateUpload-BYFKZCP9.js} +1 -1
  16. package/dist/interface/assets/Config-BmEL5EaW.js +2 -0
  17. package/dist/interface/assets/{ConfigActionAssistant-B488rOp5.js → ConfigActionAssistant-DM4tIhoa.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionCameraControl-ZMUuBxOs.js → ConfigActionCameraControl-Deo0eDPS.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionDelay-BJ11xvOW.js → ConfigActionDelay-_EqbfWgo.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionHttp-DOUo69OR.js → ConfigActionHttp-BxJmoshF.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionImageInput-BMzuVZW9.js → ConfigActionImageInput-KrzXFQDm.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionMqtt-Co_uksca.js → ConfigActionMqtt-BoYBomRC.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionNotification-CcZkstYx.js → ConfigActionNotification-CSAOijDt.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionNotificationControl--VeucoTw.js → ConfigActionNotificationControl-BOdyKiOs.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionOutput-CyDa1LGA.js → ConfigActionOutput-CwsPcnd_.js} +1 -1
  26. package/dist/interface/assets/{ConfigActionPlugin-Kfg3ZEQF.js → ConfigActionPlugin-D3wyULpp.js} +1 -1
  27. package/dist/interface/assets/{ConfigActionSensor-DhAF0HPw.js → ConfigActionSensor-BmeaIxYY.js} +1 -1
  28. package/dist/interface/assets/{ConfigActionSnapshot-zMe3SPvW.js → ConfigActionSnapshot-DbyFKcYr.js} +1 -1
  29. package/dist/interface/assets/{ConfigActionVariable-BE5q3NwY.js → ConfigActionVariable-cThGJ1Pc.js} +1 -1
  30. package/dist/interface/assets/{ConfigConditionIfElse-BNIRtSVD.js → ConfigConditionIfElse-BugkJeXR.js} +1 -1
  31. package/dist/interface/assets/{ConfigConditionSensorState-DTNd-SzI.js → ConfigConditionSensorState-Bf-mMf4E.js} +1 -1
  32. package/dist/interface/assets/{ConfigConditionSwitch-BU5wWMU1.js → ConfigConditionSwitch-DcpFoYET.js} +1 -1
  33. package/dist/interface/assets/{ConfigConditionTime-KXTCIVIV.js → ConfigConditionTime-CM4bSMyU.js} +1 -1
  34. package/dist/interface/assets/{ConfigSensorValueInput-BC1FpMm-.js → ConfigSensorValueInput-CgAI34__.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerDetection-hIN1hi53.js → ConfigTriggerDetection-BWK6gfwM.js} +1 -1
  36. package/dist/interface/assets/ConfigTriggerGeofence-Cm3CU7Tl.js +1 -0
  37. package/dist/interface/assets/{ConfigTriggerManual-C5vwxS-e.js → ConfigTriggerManual-DgkR-GWy.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerMqtt-B4PtWC3E.js → ConfigTriggerMqtt-BMFjTAso.js} +1 -1
  39. package/dist/interface/assets/{ConfigTriggerSchedule-BZzUdGBa.js → ConfigTriggerSchedule-E_QWfNKy.js} +1 -1
  40. package/dist/interface/assets/{ConfigTriggerSensor-D18nwMsj.js → ConfigTriggerSensor-DOdJkZRo.js} +1 -1
  41. package/dist/interface/assets/{ConfigTriggerSystem-BhygWLB4.js → ConfigTriggerSystem-BFDIbZsE.js} +1 -1
  42. package/dist/interface/assets/{ConfigTriggerWebhook-yyuBuhLD.js → ConfigTriggerWebhook-DDoUEVHb.js} +1 -1
  43. package/dist/interface/assets/Console-BIj7cIqO.js +1 -0
  44. package/dist/interface/assets/CuiAssistantConversation-CRNCKRHz.js +5 -0
  45. package/dist/interface/assets/{CuiAssistantConversation-lkpZg3ML.css → CuiAssistantConversation-DQ0wOJvV.css} +1 -1
  46. package/dist/interface/assets/CuiAutomationRunsDialog-DMUfNcsf.js +1 -0
  47. package/dist/interface/assets/CuiBottomSheet-CYi5c3fP.js +1 -0
  48. package/dist/interface/assets/{CuiBottomSheet-DWefGWK2.js → CuiBottomSheet-FwsPnJ3n.js} +1 -1
  49. package/dist/interface/assets/{CuiCameraPipCard-C2qaGJlH.js → CuiCameraPipCard-Cb_Qbly6.js} +1 -1
  50. package/dist/interface/assets/CuiCameraRecordings-BeciatDY.js +1 -0
  51. package/dist/interface/assets/{CuiCameraShares-DcqOcePX.js → CuiCameraShares-CSFwIYsg.js} +1 -1
  52. package/dist/interface/assets/CuiCameraTable-BgL5FZso.js +1 -0
  53. package/dist/interface/assets/{CuiCameraTable-BOkfp_5M.js → CuiCameraTable-DBRfGX3I.js} +2 -2
  54. package/dist/interface/assets/{CuiChartTable-DP38uBwK.js → CuiChartTable-CtasoxMM.js} +1 -1
  55. package/dist/interface/assets/{CuiConsole-C7xE_nQg.js → CuiConsole-DQbAafiz.js} +2 -2
  56. package/dist/interface/assets/CuiDataTable-JlD7Agky.js +1 -0
  57. package/dist/interface/assets/{CuiLightControl-ChGYpQAK.js → CuiLightControl-CLYl5pfN.js} +1 -1
  58. package/dist/interface/assets/{CuiList-DJp0__mV.js → CuiList-Dsu5m0TA.js} +1 -1
  59. package/dist/interface/assets/{CuiMarkdownContent-BUYtK_wD.js → CuiMarkdownContent-BYBQX_aF.js} +1 -1
  60. package/dist/interface/assets/CuiMarkdownContent-DTAm-EDR.js +1 -0
  61. package/dist/interface/assets/{CuiPluginCard-CWImTZ6l.js → CuiPluginCard-CC1oXY16.js} +2 -2
  62. package/dist/interface/assets/{CuiPluginCategoryChip-Ch_upS6Y.js → CuiPluginCategoryChip-B2bR5LQa.js} +1 -1
  63. package/dist/interface/assets/{CuiPluginOAuthButton-DEQ9xILN.js → CuiPluginOAuthButton-DfEjfcY-.js} +2 -2
  64. package/dist/interface/assets/{CuiPluginTrustBadge-sVWdvHcM.js → CuiPluginTrustBadge-C6CW6Soh.js} +1 -1
  65. package/dist/interface/assets/{CuiQRCode-DqSF4SkD.js → CuiQRCode-DGKBhDib.js} +1 -1
  66. package/dist/interface/assets/CuiSchema-pAAVh28m.js +1 -0
  67. package/dist/interface/assets/{CuiTopNavbarItem-B_KWykgq.js → CuiTopNavbarItem-ve-3Dsc3.js} +1 -1
  68. package/dist/interface/assets/Faces-1xd5yGuO.js +1 -0
  69. package/dist/interface/assets/{FirstSteps-QNYTkEJo.js → FirstSteps-E9cMqa0a.js} +1 -1
  70. package/dist/interface/assets/Floorplan-BovV_ATh.js +1 -0
  71. package/dist/interface/assets/Instances-BbxyB7vR.js +1 -0
  72. package/dist/interface/assets/{Logs-BSPT80vP.js → Logs-BhRactvQ.js} +2 -2
  73. package/dist/interface/assets/{Menu-HHtuhIS2.js → Menu-DMCmUVDs.js} +1 -1
  74. package/dist/interface/assets/Metrics-BgXrNl38.js +12 -0
  75. package/dist/interface/assets/Metrics-ChVnC6f6.css +1 -0
  76. package/dist/interface/assets/{OAuthDeviceFlow-Bn1nlWNa.js → OAuthDeviceFlow-BMEwVkIa.js} +1 -1
  77. package/dist/interface/assets/Plugin-CDNywaVE.js +1 -0
  78. package/dist/interface/assets/Plugin-Qr_Q_Qfi.css +1 -0
  79. package/dist/interface/assets/{PluginConsole-Cv-uhnPY.js → PluginConsole-C4Ba_U_1.js} +1 -1
  80. package/dist/interface/assets/{PluginDetail-cpOz7FkA.js → PluginDetail-13OWIzdd.js} +2 -2
  81. package/dist/interface/assets/{PluginSchema-DW3TGeTM.js → PluginSchema-DN0cSU8s.js} +1 -1
  82. package/dist/interface/assets/PluginSearch-sPkO8aH3.js +2 -0
  83. package/dist/interface/assets/PluginSearch-xNIlfXk4.js +1 -0
  84. package/dist/interface/assets/{PluginUpdateProgress-n6q6vzyd.js → PluginUpdateProgress-CeWuRp3Z.js} +1 -1
  85. package/dist/interface/assets/Plugins-C8yjhxnQ.js +1 -0
  86. package/dist/interface/assets/{RecentEventsFilter-CTR5JK_P.js → RecentEventsFilter-Kp_lTOuG.js} +1 -1
  87. package/dist/interface/assets/Recordings-BHT8Vvv_.js +1 -0
  88. package/dist/interface/assets/Recordings-DwuojaAw.css +1 -0
  89. package/dist/interface/assets/SensorEdit-C-yJdJuP.js +1 -0
  90. package/dist/interface/assets/{SensorHistory-9CdOpCPs.js → SensorHistory-ClAcOgHj.js} +1 -1
  91. package/dist/interface/assets/Sensors-Cza4Et2c.js +2 -0
  92. package/dist/interface/assets/Settings-Cj0leoGd.js +1 -0
  93. package/dist/interface/assets/SettingsAccount-COkcBBSz.js +1 -0
  94. package/dist/interface/assets/SettingsAccount-DjrJdssy.js +1 -0
  95. package/dist/interface/assets/{SettingsAppearance-BY1xQMx4.js → SettingsAppearance-CJt4xJEW.js} +1 -1
  96. package/dist/interface/assets/SettingsAppearance-D20YW7Vq.js +1 -0
  97. package/dist/interface/assets/SettingsAssistant-CDdbbG-c.css +1 -0
  98. package/dist/interface/assets/SettingsAssistant-DKWDp1AI.js +1 -0
  99. package/dist/interface/assets/{SettingsBackup-D_weokqu.js → SettingsBackup-DIJmci05.js} +1 -1
  100. package/dist/interface/assets/{SettingsList-Bq24WTDU.js → SettingsList-Cb_dLy5T.js} +1 -1
  101. package/dist/interface/assets/SettingsMqtt-LIuCRPT5.js +1 -0
  102. package/dist/interface/assets/{SettingsNotifications-8TZOUxg2.js → SettingsNotifications-CZxqqH_8.js} +1 -1
  103. package/dist/interface/assets/{SettingsPermissions-M8u_jrN0.js → SettingsPermissions-CJiz0Z7B.js} +1 -1
  104. package/dist/interface/assets/{SettingsRecordings-C1Kp5xW_.js → SettingsRecordings-BEpwMh-y.js} +1 -1
  105. package/dist/interface/assets/SettingsRemote-DRt-N_yA.js +2 -0
  106. package/dist/interface/assets/{SettingsSystem-Cetu2faJ.js → SettingsSystem-Cncdpx8T.js} +2 -2
  107. package/dist/interface/assets/{SettingsUsers-CDwtQLdV.js → SettingsUsers-DZkz8WlI.js} +1 -1
  108. package/dist/interface/assets/Terminal-U4yfJN3O.js +4 -0
  109. package/dist/interface/assets/Training-Bkn52mPJ.css +1 -0
  110. package/dist/interface/assets/Training-DfgE_dA8.js +1 -0
  111. package/dist/interface/assets/Updates-cCvbFq3w.js +2 -0
  112. package/dist/interface/assets/{VariableInput-BxPj5wo6.js → VariableInput-PVsqGYW0.js} +1 -1
  113. package/dist/interface/assets/{VariableSuggestions-CbizvAkz.js → VariableSuggestions-DwLtlzVz.js} +1 -1
  114. package/dist/interface/assets/{VersionsHandler-CePyEUVO.js → VersionsHandler-Df7dhddp.js} +2 -2
  115. package/dist/interface/assets/{VirtualSensorCreate-D_GVoeL7.js → VirtualSensorCreate-FTKANjd-.js} +1 -1
  116. package/dist/interface/assets/Workers-Ba37_3cY.js +2 -0
  117. package/dist/interface/assets/{account-Bu30He0P.js → account-DwW7pBOb.js} +1 -1
  118. package/dist/interface/assets/{alert-circle-D2fAQwTX.js → alert-circle-BdUVAt1B.js} +1 -1
  119. package/dist/interface/assets/{alert-outline-D7zaSJH_.js → alert-outline-IRxYbw0j.js} +1 -1
  120. package/dist/interface/assets/api-C1mraOYr.js +4 -0
  121. package/dist/interface/assets/{api-DW2niHRN.js → api-DpqXhwcx.js} +1 -1
  122. package/dist/interface/assets/api-z8ZVnoOl.css +2 -0
  123. package/dist/interface/assets/{arrow-left-BGLyEqqa.js → arrow-left-Bk-ZrOVr.js} +1 -1
  124. package/dist/interface/assets/assistant-Lz3mFLDo.js +1 -0
  125. package/dist/interface/assets/{assistantModels-D0soYqq7.js → assistantModels-BsSgRsws.js} +1 -1
  126. package/dist/interface/assets/{auth-Dc8bUpc-.js → auth-L7_5vsJs.js} +1 -1
  127. package/dist/interface/assets/{automations-DXrjbArj.js → automations-D1XFFSrm.js} +1 -1
  128. package/dist/interface/assets/{back-filled-BPBVnQjx.js → back-filled-D-X19YMO.js} +1 -1
  129. package/dist/interface/assets/{bell-ring-CyCFPUL_.js → bell-ring-DreEHgoT.js} +1 -1
  130. package/dist/interface/assets/{brain-CIJB1ree.js → brain-DuDAg544.js} +1 -1
  131. package/dist/interface/assets/{cameraSources-QJfUDOQJ.js → cameraSources-DEGJDtmK.js} +1 -1
  132. package/dist/interface/assets/{cctv-D6kxZ-lp.js → cctv-DM-C_8_6.js} +1 -1
  133. package/dist/interface/assets/{check-circle-DHAAn6A6.js → check-circle-Bevuw8-0.js} +1 -1
  134. package/dist/interface/assets/{check-circle-outline-BbqeKfIK.js → check-circle-outline-aMxkvksr.js} +1 -1
  135. package/dist/interface/assets/{chevron-down-ZYTrU871.js → chevron-down-CCFn9Z56.js} +1 -1
  136. package/dist/interface/assets/{chevron-up-LQXNz9CE.js → chevron-up-CSImUM3_.js} +1 -1
  137. package/dist/interface/assets/{clock-outline-CKTiLKoR.js → clock-outline-DH3WIEJt.js} +1 -1
  138. package/dist/interface/assets/{close-BbEPZQqa.js → close-CMxyM4v9.js} +1 -1
  139. package/dist/interface/assets/{close-circle-BSUSUs4K.js → close-circle-CfgJCZ9A.js} +1 -1
  140. package/dist/interface/assets/{cloud-check-BTGbrAQ_.js → cloud-check-CbdFLIdR.js} +1 -1
  141. package/dist/interface/assets/cloudHandoff-DkUx4m3P.js +1 -0
  142. package/dist/interface/assets/{config-CiQDwB4t.js → config-CVqy37fG.js} +1 -1
  143. package/dist/interface/assets/{content-copy-V0DW9ZbH.js → content-copy-Bz49QPOI.js} +1 -1
  144. package/dist/interface/assets/{copy-DsmMEtSH.js → copy-DA6QQHRt.js} +1 -1
  145. package/dist/interface/assets/{cube-scan-DGhUFV1x.js → cube-scan-IiH8zwm2.js} +1 -1
  146. package/dist/interface/assets/database-refresh-outline-CIUDpcuq.js +1 -0
  147. package/dist/interface/assets/{delete-CY8fsIW6.js → delete-Btu-UVx9.js} +1 -1
  148. package/dist/interface/assets/{dist-DNyx_J8o.js → dist-D_qWDAKp.js} +1 -1
  149. package/dist/interface/assets/{dots-vertical-pP1vP0Qa.js → dots-vertical-D496SIss.js} +1 -1
  150. package/dist/interface/assets/{download-CyjJ7yJW.js → download-BSC7lwq_.js} +1 -1
  151. package/dist/interface/assets/esm-0kxqa_1s.js +1 -0
  152. package/dist/interface/assets/esm-4p_M5mFV.js +1 -0
  153. package/dist/interface/assets/esm-8G-vO1KQ.js +1 -0
  154. package/dist/interface/assets/esm-8cB56ICb.js +1 -0
  155. package/dist/interface/assets/esm-B92csSEb.js +1 -0
  156. package/dist/interface/assets/esm-BHiNTIiN.js +1 -0
  157. package/dist/interface/assets/esm-Bu9PMLmw.js +1 -0
  158. package/dist/interface/assets/esm-CS6Ra46d.js +1 -0
  159. package/dist/interface/assets/esm-CWvQWALL.js +1 -0
  160. package/dist/interface/assets/esm-D2UDrwmt.js +1 -0
  161. package/dist/interface/assets/esm-D8OHF2X1.js +1 -0
  162. package/dist/interface/assets/esm-DrXkS8eG.js +1 -0
  163. package/dist/interface/assets/esm-pfoHiO1a.js +1 -0
  164. package/dist/interface/assets/esm-tJSCF7Vh.js +1 -0
  165. package/dist/interface/assets/{eventIcons-cdzqQc0W.js → eventIcons-UQutPG3p.js} +1 -1
  166. package/dist/interface/assets/{eye-off-JCu1iUer.js → eye-off-CSU0U8g7.js} +1 -1
  167. package/dist/interface/assets/{eye-off-outline-GErp76H2.js → eye-off-outline-DCxLRGo_.js} +1 -1
  168. package/dist/interface/assets/{flowSchema-BRTZHQ1w.js → flowSchema-CppNBDy1.js} +1 -1
  169. package/dist/interface/assets/{help-circle-outline-G43EJuch.js → help-circle-outline-Cr_yNhPi.js} +1 -1
  170. package/dist/interface/assets/{history-CNJREqJG.js → history-anuCbp1T.js} +1 -1
  171. package/dist/interface/assets/{home-B-_OQpZ6.js → home-N3bDR1vX.js} +1 -1
  172. package/dist/interface/assets/{information-outline-Blt4EtWJ.js → information-outline-CMWIvLNB.js} +1 -1
  173. package/dist/interface/assets/{intercomService-BnA-FQ0Q.js → intercomService-CjoJaOZ7.js} +1 -1
  174. package/dist/interface/assets/{lan-C3jliANx.js → lan-CYXjdk7L.js} +1 -1
  175. package/dist/interface/assets/main-BK3kmiG2.js +3 -0
  176. package/dist/interface/assets/{main-BoGhBedC.css → main-Bo0Lb1y2.css} +1 -1
  177. package/dist/interface/assets/{microphone-B6xc9JQ2.js → microphone-BB2pATI_.js} +1 -1
  178. package/dist/interface/assets/{minus-BI5qXFwJ.js → minus-BCp3ZNKO.js} +1 -1
  179. package/dist/interface/assets/{mqtt-iD9XHYO_.js → mqtt-BENV9Fx4.js} +1 -1
  180. package/dist/interface/assets/native-BEkWOGyD.js +1 -0
  181. package/dist/interface/assets/native-ugMg173F.js +1 -0
  182. package/dist/interface/assets/{nodeDefinitions-Dop49tx8.js → nodeDefinitions-ByrqsENY.js} +1 -1
  183. package/dist/interface/assets/{notifications-CbAJX7RF.js → notifications-By40oPng.js} +1 -1
  184. package/dist/interface/assets/{pause-DKzvPG2b.js → pause-BQlxwAW2.js} +1 -1
  185. package/dist/interface/assets/{pencil-DKbi9SsG.js → pencil-CDsNnEXi.js} +1 -1
  186. package/dist/interface/assets/{pencil-outline-CD3Xv98d.js → pencil-outline-CIQL5Kui.js} +1 -1
  187. package/dist/interface/assets/plugin-eafNQWg2.js +1 -0
  188. package/dist/interface/assets/{plugins-eIUrXNeM.js → plugins-09rEDbMz.js} +1 -1
  189. package/dist/interface/assets/{plus-CHPYoMO_.js → plus-Bp4q9G7S.js} +1 -1
  190. package/dist/interface/assets/{plus--kDl8ben.js → plus-CySoovdr.js} +1 -1
  191. package/dist/interface/assets/{power-C9wmNlFS.js → power-WmBLDR0-.js} +1 -1
  192. package/dist/interface/assets/{radar-B3ra28GD.js → radar-CyYAmume.js} +1 -1
  193. package/dist/interface/assets/{refresh-DfqyhMOh.js → refresh-CHTA3jVN.js} +1 -1
  194. package/dist/interface/assets/{restore-FMacmqd_.js → restore-C8RNM5yX.js} +1 -1
  195. package/dist/interface/assets/{rooms-BqPyo8jc.js → rooms-LBxn-Uuu.js} +1 -1
  196. package/dist/interface/assets/{round-alt-arrow-left-bold-56eF9Bol.js → round-alt-arrow-left-bold-Gh5mi_yR.js} +1 -1
  197. package/dist/interface/assets/{search-BXbDWhLk.js → search-BajCVmOI.js} +1 -1
  198. package/dist/interface/assets/sensorIcons-Csu5s0uk.js +1 -0
  199. package/dist/interface/assets/{sensorSlots-BZCXtnb6.js → sensorSlots-CtbKmsGG.js} +1 -1
  200. package/dist/interface/assets/{sensors-DttBNEEt.js → sensors-CbzNs18A.js} +1 -1
  201. package/dist/interface/assets/{server-DUFhf2c_.js → server-Btp5KILd.js} +1 -1
  202. package/dist/interface/assets/{settings-Cw63SIJl.js → settings-DnksaK7m.js} +1 -1
  203. package/dist/interface/assets/{source-branch-oyzrlfCD.js → source-branch-CzqIPffP.js} +1 -1
  204. package/dist/interface/assets/{theme-BMmjtQ4w.js → theme-GhzGwpqd.js} +1 -1
  205. package/dist/interface/assets/{trash-2-BQc04l9M.js → trash-2-DJeEhHf4.js} +1 -1
  206. package/dist/interface/assets/{trash-can-outline-Bk5eENNM.js → trash-can-outline-DrT6iw7I.js} +1 -1
  207. package/dist/interface/assets/{trash-fill-CXk8BmtF.js → trash-fill-Bb_-UicM.js} +1 -1
  208. package/dist/interface/assets/{trash2-2rUvghml.js → trash2-Dsl8gfxq.js} +1 -1
  209. package/dist/interface/assets/types-BAwhu9iv.js +1 -0
  210. package/dist/interface/assets/{types-DWTSNJ79.js → types-CklFkUXk.js} +1 -1
  211. package/dist/interface/assets/{types-CXw7CEzu.js → types-D8QWPhe-.js} +1 -1
  212. package/dist/interface/assets/{undo-Dcf7vcsv.js → undo-DoqJW-k7.js} +1 -1
  213. package/dist/interface/assets/ungrouped-BMk56E3L.js +1 -0
  214. package/dist/interface/assets/{ungrouped-DHMJ9Rg1.css → ungrouped-BnQIcSQd.css} +1 -1
  215. package/dist/interface/assets/{updates-TIPWXKzL.js → updates-CGo0T4sn.js} +1 -1
  216. package/dist/interface/assets/{upload-nnbfDypK.js → upload-C3w1XH-o.js} +1 -1
  217. package/dist/interface/assets/{upload-B-ZYPekV.js → upload-DtIcwiNC.js} +1 -1
  218. package/dist/interface/assets/{useAppVersion-BIz44Bg4.js → useAppVersion-CJlexqyz.js} +1 -1
  219. package/dist/interface/assets/{useAssistantActions-CLkkw9kB.js → useAssistantActions-Cc_O6M9_.js} +1 -1
  220. package/dist/interface/assets/useBackupRestore-_s8vS5WF.js +1 -0
  221. package/dist/interface/assets/{useCameraOptions-A97teAIr.js → useCameraOptions-CFISVNgk.js} +1 -1
  222. package/dist/interface/assets/{useKeyboardInset-DXVi1dLG.js → useKeyboardInset-DkUn62i7.js} +1 -1
  223. package/dist/interface/assets/{useLogsSocket-BlFxVXjF.js → useLogsSocket-D-ndWAg0.js} +1 -1
  224. package/dist/interface/assets/{useNavLayout-C5obaCNv.js → useNavLayout-CG0X_3kt.js} +1 -1
  225. package/dist/interface/assets/{usePermissions-C8hB_pG1.js → usePermissions-BXTw4tII.js} +1 -1
  226. package/dist/interface/assets/{usePluginUpdates-DO0-Gk4Q.js → usePluginUpdates-nW_dt66E.js} +1 -1
  227. package/dist/interface/assets/{usePushRegistration-BUttCraQ.js → usePushRegistration-DCqOAxR4.js} +2 -2
  228. package/dist/interface/assets/{useServerRestart-Cz9eVHUE.js → useServerRestart-CxJGxAcU.js} +1 -1
  229. package/dist/interface/assets/{useStreamStatus-BhS_MCCB.js → useStreamStatus-CXb1HbAq.js} +1 -1
  230. package/dist/interface/assets/{useTabSwipe-D4k8lm1M.js → useTabSwipe-DHb8__wU.js} +1 -1
  231. package/dist/interface/assets/{useUpdateChannel-D9lhfW0y.js → useUpdateChannel-BR4PMh1R.js} +1 -1
  232. package/dist/interface/assets/{useUpdatesSocket-DnH9sON5.js → useUpdatesSocket-DKDRZhvc.js} +1 -1
  233. package/dist/interface/assets/useUserOptions-lyc4WJ4L.js +1 -0
  234. package/dist/interface/assets/{variable-CcE0ZwTr.js → variable-ywTlRfo5.js} +1 -1
  235. package/dist/interface/assets/{vendor-cameraui-QXD8jkcj.js → vendor-cameraui-CK4yHsJi.js} +45 -45
  236. package/dist/interface/assets/{vendor-capacitor-COL6Kz75.js → vendor-capacitor-f9ShAzys.js} +2 -2
  237. package/dist/interface/assets/{vendor-chart-80wrH3md.js → vendor-chart-DBK083Hu.js} +1 -1
  238. package/dist/interface/assets/{vendor-core-CnhnyKDl.js → vendor-core-B-Q4es-f.js} +1 -1
  239. package/dist/interface/assets/{vendor-dnd-CEJS9JKU.js → vendor-dnd-DGQLvX6Y.js} +1 -1
  240. package/dist/interface/assets/{vendor-draggabilly-BY7O1F_Z.js → vendor-draggabilly-D8CK6M-y.js} +1 -1
  241. package/dist/interface/assets/{vendor-DGke_6M4.js → vendor-gFkr2qsZ.js} +1 -1
  242. package/dist/interface/assets/vendor-gridstack-DtDG3os6.js +3 -0
  243. package/dist/interface/assets/{vendor-markdown-DD4teg2u.js → vendor-markdown-qHIinIUE.js} +1 -1
  244. package/dist/interface/assets/{vendor-primevue-CCUqY55W.js → vendor-primevue-Cmp3VjIC.js} +72 -72
  245. package/dist/interface/assets/{vendor-vueflow-Bmwd2les.js → vendor-vueflow-bSwRZ9X8.js} +1 -1
  246. package/dist/interface/assets/web-3OOGlctS.js +1 -0
  247. package/dist/interface/assets/web-5NFVd9gs.js +1 -0
  248. package/dist/interface/assets/web-A4yovlXr.js +1 -0
  249. package/dist/interface/assets/web-BBC3YoWX.js +1 -0
  250. package/dist/interface/assets/web-B_9Qyt8E.js +1 -0
  251. package/dist/interface/assets/web-BjKL51lK-DUIsII0n.js +1 -0
  252. package/dist/interface/assets/web-C2-YAfsx.js +1 -0
  253. package/dist/interface/assets/web-CUL_MhvM.js +1 -0
  254. package/dist/interface/assets/web-CZVCXYLV.js +1 -0
  255. package/dist/interface/assets/web-DJ-LUxlV.js +1 -0
  256. package/dist/interface/assets/web-DNsEGLGS.js +1 -0
  257. package/dist/interface/assets/web-DZsU0QT_.js +1 -0
  258. package/dist/interface/assets/web-MoyOTbiU.js +1 -0
  259. package/dist/interface/assets/web-avRH_3t7.js +1 -0
  260. package/dist/interface/assets/{webhook-oVbP79Yk.js → webhook-CWKf2Qxu.js} +1 -1
  261. package/dist/interface/assets/workbox-window.prod.es5-BEYAF-e-.js +1 -0
  262. package/dist/interface/assets/{zoom-in-GKNy8xA7.js → zoom-in-CHkXAWHy.js} +1 -1
  263. package/dist/interface/ha/{404-DLhJqxRl.js → 404-B2T8Gktj.js} +1 -1
  264. package/dist/interface/ha/{About-DC0i1iE4.js → About-CrTKzU9_.js} +6 -6
  265. package/dist/interface/ha/{Assistant-BmazMPIg.js → Assistant-BDHJmYx_.js} +823 -820
  266. package/dist/interface/ha/{Automation-gabF9YzQ.js → Automation-Czo5EsAg.js} +337 -337
  267. package/dist/interface/ha/{AutomationImport-DaqZNs9s.js → AutomationImport-CuFAQbiX.js} +6 -6
  268. package/dist/interface/ha/{AutomationStore-DzM4huo5.js → AutomationStore-D-6x0JIt.js} +16 -16
  269. package/dist/interface/ha/{AutomationStoreDetail-CpzQMt_D.js → AutomationStoreDetail-Dad4q1MN.js} +19 -19
  270. package/dist/interface/ha/{Automations-Dcm4Us50.js → Automations-C-oGM5SR.js} +71 -71
  271. package/dist/interface/ha/{Camera-CNK3QR7l.js → Camera-CerkQGbZ.js} +214 -214
  272. package/dist/interface/ha/{CameraConsole-CpcF0411.js → CameraConsole-hRGwbjsD.js} +3 -3
  273. package/dist/interface/ha/{Cameras-Cf9rwRyf.js → Cameras-Bk5TFXA8.js} +92 -92
  274. package/dist/interface/ha/{Camview-BFKR2t6C.js → Camview-CsKKqxxY.js} +382 -382
  275. package/dist/interface/ha/{Config-1XH3zfr2.js → Config-Vl4-K3A_.js} +11 -11
  276. package/dist/interface/ha/{ConfigActionAssistant-C0-NFoTB.js → ConfigActionAssistant-OWUX8glZ.js} +4 -4
  277. package/dist/interface/ha/{ConfigActionCameraControl-DNSKZPSZ.js → ConfigActionCameraControl-DEaOot8w.js} +3 -3
  278. package/dist/interface/ha/{ConfigActionHttp-DVJAcGkl.js → ConfigActionHttp-CSr2BpKL.js} +2 -2
  279. package/dist/interface/ha/{ConfigActionImageInput-VVbHHHZs.js → ConfigActionImageInput--O8Tyca-.js} +1 -1
  280. package/dist/interface/ha/{ConfigActionMqtt-N5OUJDzM.js → ConfigActionMqtt-DQJ4-gs2.js} +4 -4
  281. package/dist/interface/ha/{ConfigActionNotification-s142tQoU.js → ConfigActionNotification-wR8CCA_T.js} +3 -3
  282. package/dist/interface/ha/{ConfigActionNotificationControl-Dh7kaKVP.js → ConfigActionNotificationControl-DNMrHwPz.js} +2 -2
  283. package/dist/interface/ha/{ConfigActionOutput-B4HHTg5C.js → ConfigActionOutput-C-LVFxFP.js} +1 -1
  284. package/dist/interface/ha/{ConfigActionPlugin-D20G2Dqf.js → ConfigActionPlugin-BCREAkNo.js} +5 -5
  285. package/dist/interface/ha/{ConfigActionSensor-BS3jrFaG.js → ConfigActionSensor-D48CQ6qR.js} +5 -5
  286. package/dist/interface/ha/{ConfigActionSnapshot-CInLAcwK.js → ConfigActionSnapshot-DpDy88Mg.js} +2 -2
  287. package/dist/interface/ha/{ConfigActionVariable-C5vADGNF.js → ConfigActionVariable-D9BxmwvB.js} +1 -1
  288. package/dist/interface/ha/{ConfigConditionIfElse-CPeWDD31.js → ConfigConditionIfElse-CW42tQFY.js} +3 -3
  289. package/dist/interface/ha/{ConfigConditionSensorState-BM5GmpN6.js → ConfigConditionSensorState-BZpij7kB.js} +4 -4
  290. package/dist/interface/ha/{ConfigConditionSwitch-Dmz9FduJ.js → ConfigConditionSwitch-DlTuJ9Sf.js} +5 -5
  291. package/dist/interface/ha/{ConfigSensorValueInput-Ch5njvtv.js → ConfigSensorValueInput-2QLHESlE.js} +5 -5
  292. package/dist/interface/ha/{ConfigTriggerDetection-BR2QWNyO.js → ConfigTriggerDetection-DPmUkmUJ.js} +3 -3
  293. package/dist/interface/ha/{ConfigTriggerGeofence-CaImOjyW.js → ConfigTriggerGeofence--T9OXhGl.js} +2 -2
  294. package/dist/interface/ha/{ConfigTriggerMqtt-DWz1XwZQ.js → ConfigTriggerMqtt-fZn_X6yY.js} +1 -1
  295. package/dist/interface/ha/{ConfigTriggerSensor-lfnhz0im.js → ConfigTriggerSensor-_3O6iBFX.js} +1 -1
  296. package/dist/interface/ha/{ConfigTriggerSystem-CwUhyFAj.js → ConfigTriggerSystem-CC9lqi8Q.js} +2 -2
  297. package/dist/interface/ha/{ConfigTriggerWebhook-J6Xts7GQ.js → ConfigTriggerWebhook-BuBcgXqf.js} +1 -1
  298. package/dist/interface/ha/{Console-BSdKFm6Y.js → Console-DNc49UEt.js} +13 -13
  299. package/dist/interface/ha/{CuiAutomationRunsDialog-BU8sympp.js → CuiAutomationRunsDialog-Dj_iiZht.js} +2 -2
  300. package/dist/interface/ha/{CuiBottomSheet-Bnp7ta7V.js → CuiBottomSheet-DG7wOV7m.js} +1 -1
  301. package/dist/interface/ha/{CuiCameraRecordings-E-mMqKSs.js → CuiCameraRecordings-BlOZTfQ4.js} +12 -12
  302. package/dist/interface/ha/{CuiCameraShares-DcNwd2OC.js → CuiCameraShares-BOn-mobi.js} +2 -2
  303. package/dist/interface/ha/{CuiCameraTable-DNW9Vm_A.js → CuiCameraTable-D50FLiK8.js} +9 -9
  304. package/dist/interface/ha/{CuiChartTable-muC7jL2H.js → CuiChartTable-CfcVRvdZ.js} +42 -42
  305. package/dist/interface/ha/{CuiConsole-ND8bcuTg.js → CuiConsole-UpN0Wihm.js} +6 -6
  306. package/dist/interface/ha/{CuiDataTable-CN4T8DgP.js → CuiDataTable-CpADXKNF.js} +6 -6
  307. package/dist/interface/ha/{CuiPluginCard-nIQiyQvH.js → CuiPluginCard-CT6ZfL9o.js} +52 -52
  308. package/dist/interface/ha/{CuiPluginOAuthButton-FJ49NfUh.js → CuiPluginOAuthButton-BJVKd6Ac.js} +6 -6
  309. package/dist/interface/ha/{CuiPluginTrustBadge-D6eanMyI.js → CuiPluginTrustBadge-gb9GI24w.js} +3 -3
  310. package/dist/interface/ha/{CuiQRCode-BdJzeeoE.js → CuiQRCode-DqKDx9zR.js} +7 -7
  311. package/dist/interface/ha/{CuiSchema-DY0V-8xP.js → CuiSchema-CHeJkx0k.js} +129 -129
  312. package/dist/interface/ha/{CuiTopNavbarItem-DT5pAKHp.js → CuiTopNavbarItem-CFeI6ZYU.js} +5 -5
  313. package/dist/interface/ha/Faces-CTfvhhCj.js +1441 -0
  314. package/dist/interface/ha/{FirstSteps-yS2M2cor.js → FirstSteps-C-WXJ8IL.js} +80 -80
  315. package/dist/interface/ha/{Floorplan-DSOeScjI.js → Floorplan-CDKTYN7B.js} +307 -307
  316. package/dist/interface/ha/{Instances-B4h5EKpF.js → Instances-n23yvN3L.js} +62 -62
  317. package/dist/interface/ha/{Logs-BH0Lxvs6.js → Logs-Dfm0BWOQ.js} +10 -10
  318. package/dist/interface/ha/{Menu-COH7QXuE.js → Menu-76kvdAEF.js} +15 -15
  319. package/dist/interface/ha/{Metrics-BtnRqL_I.js → Metrics-lnivlTWm.js} +101 -100
  320. package/dist/interface/ha/{OAuthDeviceFlow-D2QJ9MnP.js → OAuthDeviceFlow-4ChaymHu.js} +7 -7
  321. package/dist/interface/ha/{Plugin-EfUSqwyh.js → Plugin-BV8YA8aN.js} +486 -347
  322. package/dist/interface/ha/{PluginConsole-hh_o15f7.js → PluginConsole-csf1Km7f.js} +4 -4
  323. package/dist/interface/ha/{PluginDetail-DFiXGkrY.js → PluginDetail-DTff6cbA.js} +185 -185
  324. package/dist/interface/ha/{PluginSearch-Cdrfubrj.js → PluginSearch-CdjxmFPN.js} +116 -116
  325. package/dist/interface/ha/{PluginUpdateProgress-BD2g2kVj.js → PluginUpdateProgress-ClyF4pbA.js} +3 -3
  326. package/dist/interface/ha/{Plugins-qFiHW-Nk.js → Plugins-_xOrqP36.js} +34 -34
  327. package/dist/interface/ha/{RecentEventsFilter-UWrXnvfq.js → RecentEventsFilter-9ZkDHD1g.js} +1 -1
  328. package/dist/interface/ha/{Recordings-BzeC6tOz.js → Recordings-dTZv0pkp.js} +483 -458
  329. package/dist/interface/ha/{SensorEdit-BSgy7lkZ.js → SensorEdit-DDRkZjmm.js} +40 -40
  330. package/dist/interface/ha/{SensorHistory-IDvP8LKH.js → SensorHistory-DSGlRITr.js} +2 -2
  331. package/dist/interface/ha/{Sensors-Diqp4oZ0.js → Sensors-DjhGRUzM.js} +477 -462
  332. package/dist/interface/ha/{Settings-BgDsxAlx.js → Settings-DYuvz4de.js} +17 -17
  333. package/dist/interface/ha/{SettingsAccount-DBXMQPYk.js → SettingsAccount-DQAo8SnK.js} +146 -146
  334. package/dist/interface/ha/{SettingsAppearance-VmbjnT3o.js → SettingsAppearance-_tbhpUA0.js} +8 -8
  335. package/dist/interface/ha/{SettingsAssistant-C2R4ZetE.js → SettingsAssistant-DSf-dYuD.js} +656 -533
  336. package/dist/interface/ha/{SettingsBackup-BqY9TwYn.js → SettingsBackup-wLOa7xtw.js} +40 -40
  337. package/dist/interface/ha/{SettingsList-CzHcfo2N.js → SettingsList-CYujivw5.js} +4 -4
  338. package/dist/interface/ha/{SettingsMqtt-DqV3h3Ow.js → SettingsMqtt-DbxJ-h3J.js} +115 -115
  339. package/dist/interface/ha/{SettingsNotifications-yn5fIR_7.js → SettingsNotifications-DO2-KJvq.js} +118 -118
  340. package/dist/interface/ha/{SettingsRecordings-DDs1lyfY.js → SettingsRecordings-C47i1UhI.js} +9 -9
  341. package/dist/interface/ha/{SettingsRemote-jBw3l5E0.js → SettingsRemote-BPvb-KLI.js} +335 -335
  342. package/dist/interface/ha/{SettingsSystem-BOv9hNlk.js → SettingsSystem-BJPrv9JE.js} +9 -9
  343. package/dist/interface/ha/{SettingsUsers-Biv-2F4C.js → SettingsUsers-CcpCz6Y1.js} +89 -89
  344. package/dist/interface/ha/{Terminal-CmcrGEV0.js → Terminal-DT7-WNH1.js} +16 -16
  345. package/dist/interface/ha/Training-CqGBf8k1.js +1694 -0
  346. package/dist/interface/ha/{Updates-DJAcmDQJ.js → Updates-CgdrqX6R.js} +13 -13
  347. package/dist/interface/ha/{VariableInput-DlYg7t0m.js → VariableInput-DOzSFgxT.js} +1 -1
  348. package/dist/interface/ha/{VersionsHandler-UnrAWn-b.js → VersionsHandler-ItklhE2t.js} +10 -10
  349. package/dist/interface/ha/{VirtualSensorCreate-CssxeaCC.js → VirtualSensorCreate-DbS3VqHC.js} +2 -2
  350. package/dist/interface/ha/{Workers-CLpqLugC.js → Workers-6PU7yUv1.js} +36 -36
  351. package/dist/interface/ha/{api-BP7mlzjP.js → api-Dv3Lk_g5.js} +8832 -8608
  352. package/dist/interface/ha/{api-B_tDa73J.js → api-anWolhVj.js} +3 -3
  353. package/dist/interface/ha/{assistant-Cb6ACguQ.js → assistant-B3m0Kgev.js} +101 -97
  354. package/dist/interface/ha/{auth-DOYDRgFm.js → auth-CAkpM_7A.js} +33 -33
  355. package/dist/interface/ha/{automationBlueprint-CbbG_ku4.js → automationBlueprint-DwVvbKbw.js} +4 -4
  356. package/dist/interface/ha/cameraui-cards.js +1 -1
  357. package/dist/interface/ha/{cards-BpBP1zVW.js → cards-B0qagpBw.js} +743 -667
  358. package/dist/interface/ha/{config-DroY1HBs.js → config-C20itAPE.js} +14 -14
  359. package/dist/interface/ha/database-refresh-outline-PiqlCkA7.js +19 -0
  360. package/dist/interface/ha/{dist-BTp4AyuI.js → dist-BIngHzHx.js} +5 -5
  361. package/dist/interface/ha/{dist-C6MBHJhs.js → dist-oFWkn6pD.js} +5 -8
  362. package/dist/interface/ha/{mqtt-NJTVdd53.js → mqtt-C6JvkA5E.js} +14 -14
  363. package/dist/interface/ha/{notifications-BPTvvgvv.js → notifications-gLmNZxwZ.js} +19 -19
  364. package/dist/interface/ha/{pinia-C6gt7A_Q.js → pinia-Du8AM917.js} +639 -625
  365. package/dist/interface/ha/{plugins-B29K3nQP.js → plugins-6x0kBuQb.js} +53 -53
  366. package/dist/interface/ha/{rooms-DLw0WUy_.js → rooms-C-mLT6mX.js} +11 -11
  367. package/dist/interface/ha/{server-B4b5_Ecu.js → server-DuikIt69.js} +28 -28
  368. package/dist/interface/ha/{types-DJHHL7nn.js → types-C0NcQ4Cz.js} +49 -38
  369. package/dist/interface/ha/{types-XqA3YJPD.js → types-wLECk3Ml.js} +3 -1
  370. package/dist/interface/ha/{ungrouped-xyK1QrsM.js → ungrouped-ooCH0Izh.js} +120 -120
  371. package/dist/interface/ha/{updates-XFSu9Tfm.js → updates-H8MlOQLC.js} +36 -36
  372. package/dist/interface/ha/{useAppVersion-BH3rU1zz.js → useAppVersion-DAUCV_cn.js} +1 -1
  373. package/dist/interface/ha/{useLogsSocket-CaTRzvgU.js → useLogsSocket-BOLAXPuD.js} +1 -1
  374. package/dist/interface/ha/{useNavLayout-DV0_OQx0.js → useNavLayout-B7VoHzM1.js} +2 -2
  375. package/dist/interface/ha/{useServerRestart-C8tynLUf.js → useServerRestart-qSH0bqwY.js} +1 -1
  376. package/dist/interface/ha/{useTabSwipe-CFoLDp3j.js → useTabSwipe-DYzG_gVG.js} +1 -1
  377. package/dist/interface/ha/{useUpdateChannel-DSG2RTPe.js → useUpdateChannel-CK7JiWbG.js} +2 -2
  378. package/dist/interface/ha/{useUpdatesSocket-CSQ0g7-6.js → useUpdatesSocket-DrqkGMuR.js} +1 -1
  379. package/dist/interface/ha/{useUserOptions-CFaCy6L1.js → useUserOptions-BteVUdaT.js} +1 -1
  380. package/dist/interface/index.html +70 -70
  381. package/dist/interface/sw.js +1 -1
  382. package/dist/server/package.json +28 -28
  383. package/dist/server/requirements.txt +2 -2
  384. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +44 -0
  385. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +2 -0
  386. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/detection.py +7 -2
  387. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/__init__.py +42 -0
  388. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/assistant_models.py +300 -0
  389. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/contract.py +9 -0
  390. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/helper.py +21 -0
  391. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/interfaces.py +80 -4
  392. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/__init__.py +6 -0
  393. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/base.py +2 -0
  394. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/face.py +3 -7
  395. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/face_embedder.py +69 -0
  396. package/dist/server/src/api/controllers/assistant.controller.js +1 -1
  397. package/dist/server/src/api/controllers/assistant.controller.js.map +1 -1
  398. package/dist/server/src/api/database/index.d.ts +1 -1
  399. package/dist/server/src/api/database/index.js +1 -1
  400. package/dist/server/src/api/database/migrations/v2-2-5.d.ts +3 -0
  401. package/dist/server/src/api/database/migrations/v2-2-5.js +19 -0
  402. package/dist/server/src/api/database/migrations/v2-2-5.js.map +1 -0
  403. package/dist/server/src/api/database/record-schemas.d.ts +4 -2
  404. package/dist/server/src/api/database/record-schemas.js +4 -1
  405. package/dist/server/src/api/database/record-schemas.js.map +1 -1
  406. package/dist/server/src/api/database/types.d.ts +5 -1
  407. package/dist/server/src/api/schemas/assistant.schema.d.ts +21 -7
  408. package/dist/server/src/api/schemas/assistant.schema.js +4 -1
  409. package/dist/server/src/api/schemas/assistant.schema.js.map +1 -1
  410. package/dist/server/src/api/schemas/cameras.schema.d.ts +56 -8
  411. package/dist/server/src/api/schemas/cameras.schema.js +4 -3
  412. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  413. package/dist/server/src/api/services/assistant.service.d.ts +1 -1
  414. package/dist/server/src/api/services/assistant.service.js +4 -1
  415. package/dist/server/src/api/services/assistant.service.js.map +1 -1
  416. package/dist/server/src/api/services/cameras.service.js +2 -2
  417. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  418. package/dist/server/src/api/websocket/nsp/worker-perf.js +13 -0
  419. package/dist/server/src/api/websocket/nsp/worker-perf.js.map +1 -1
  420. package/dist/server/src/api/websocket/types.d.ts +12 -0
  421. package/dist/server/src/assistant/budget.d.ts +27 -0
  422. package/dist/server/src/assistant/budget.js +118 -0
  423. package/dist/server/src/assistant/budget.js.map +1 -0
  424. package/dist/server/src/assistant/compaction.d.ts +10 -0
  425. package/dist/server/src/assistant/compaction.js +83 -0
  426. package/dist/server/src/assistant/compaction.js.map +1 -0
  427. package/dist/server/src/assistant/docs.js +4 -3
  428. package/dist/server/src/assistant/docs.js.map +1 -1
  429. package/dist/server/src/assistant/history.d.ts +1 -0
  430. package/dist/server/src/assistant/history.js +28 -0
  431. package/dist/server/src/assistant/history.js.map +1 -1
  432. package/dist/server/src/assistant/manager.d.ts +10 -0
  433. package/dist/server/src/assistant/manager.js +261 -62
  434. package/dist/server/src/assistant/manager.js.map +1 -1
  435. package/dist/server/src/assistant/plugin-models.d.ts +34 -0
  436. package/dist/server/src/assistant/plugin-models.js +266 -0
  437. package/dist/server/src/assistant/plugin-models.js.map +1 -0
  438. package/dist/server/src/assistant/prompt.d.ts +7 -1
  439. package/dist/server/src/assistant/prompt.js +75 -11
  440. package/dist/server/src/assistant/prompt.js.map +1 -1
  441. package/dist/server/src/assistant/providers.js +7 -3
  442. package/dist/server/src/assistant/providers.js.map +1 -1
  443. package/dist/server/src/assistant/recap.d.ts +3 -0
  444. package/dist/server/src/assistant/recap.js +65 -0
  445. package/dist/server/src/assistant/recap.js.map +1 -0
  446. package/dist/server/src/assistant/registry.d.ts +16 -1
  447. package/dist/server/src/assistant/registry.js +49 -1
  448. package/dist/server/src/assistant/registry.js.map +1 -1
  449. package/dist/server/src/assistant/retry.js +38 -24
  450. package/dist/server/src/assistant/retry.js.map +1 -1
  451. package/dist/server/src/assistant/router.d.ts +7 -0
  452. package/dist/server/src/assistant/router.js +67 -0
  453. package/dist/server/src/assistant/router.js.map +1 -0
  454. package/dist/server/src/assistant/skills.d.ts +8 -0
  455. package/dist/server/src/assistant/skills.js +59 -1
  456. package/dist/server/src/assistant/skills.js.map +1 -1
  457. package/dist/server/src/assistant/threads.d.ts +1 -0
  458. package/dist/server/src/assistant/threads.js +7 -1
  459. package/dist/server/src/assistant/threads.js.map +1 -1
  460. package/dist/server/src/assistant/tool-names.js +9 -1
  461. package/dist/server/src/assistant/tool-names.js.map +1 -1
  462. package/dist/server/src/assistant/tool-rank.d.ts +2 -0
  463. package/dist/server/src/assistant/tool-rank.js +48 -0
  464. package/dist/server/src/assistant/tool-rank.js.map +1 -0
  465. package/dist/server/src/assistant/tool-schema.d.ts +3 -0
  466. package/dist/server/src/assistant/tool-schema.js +65 -0
  467. package/dist/server/src/assistant/tool-schema.js.map +1 -0
  468. package/dist/server/src/assistant/tools/api.js +7 -9
  469. package/dist/server/src/assistant/tools/api.js.map +1 -1
  470. package/dist/server/src/assistant/tools/ask.js +1 -2
  471. package/dist/server/src/assistant/tools/ask.js.map +1 -1
  472. package/dist/server/src/assistant/tools/automations.js +3 -5
  473. package/dist/server/src/assistant/tools/automations.js.map +1 -1
  474. package/dist/server/src/assistant/tools/cameras.js +3 -4
  475. package/dist/server/src/assistant/tools/cameras.js.map +1 -1
  476. package/dist/server/src/assistant/tools/docs.js +5 -6
  477. package/dist/server/src/assistant/tools/docs.js.map +1 -1
  478. package/dist/server/src/assistant/tools/instance.js +19 -19
  479. package/dist/server/src/assistant/tools/instance.js.map +1 -1
  480. package/dist/server/src/assistant/tools/memory.js +3 -4
  481. package/dist/server/src/assistant/tools/memory.js.map +1 -1
  482. package/dist/server/src/assistant/tools/metrics.js +1 -2
  483. package/dist/server/src/assistant/tools/metrics.js.map +1 -1
  484. package/dist/server/src/assistant/tools/notifications.js +4 -11
  485. package/dist/server/src/assistant/tools/notifications.js.map +1 -1
  486. package/dist/server/src/assistant/tools/plugins.js +12 -14
  487. package/dist/server/src/assistant/tools/plugins.js.map +1 -1
  488. package/dist/server/src/assistant/tools/report.js +17 -12
  489. package/dist/server/src/assistant/tools/report.js.map +1 -1
  490. package/dist/server/src/assistant/tools/schedules.js +6 -11
  491. package/dist/server/src/assistant/tools/schedules.js.map +1 -1
  492. package/dist/server/src/assistant/tools/sensors.js +63 -4
  493. package/dist/server/src/assistant/tools/sensors.js.map +1 -1
  494. package/dist/server/src/assistant/tools/settings.js +2 -3
  495. package/dist/server/src/assistant/tools/settings.js.map +1 -1
  496. package/dist/server/src/assistant/tools/system.js +3 -5
  497. package/dist/server/src/assistant/tools/system.js.map +1 -1
  498. package/dist/server/src/assistant/tools/terminal.js +4 -5
  499. package/dist/server/src/assistant/tools/terminal.js.map +1 -1
  500. package/dist/server/src/assistant/types.d.ts +10 -1
  501. package/dist/server/src/assistant/uploads.d.ts +2 -1
  502. package/dist/server/src/assistant/uploads.js +25 -3
  503. package/dist/server/src/assistant/uploads.js.map +1 -1
  504. package/dist/server/src/camera/decoder/detection-coordinator.d.ts +5 -0
  505. package/dist/server/src/camera/decoder/detection-coordinator.js +45 -14
  506. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  507. package/dist/server/src/camera/decoder/detection-pipeline.js +2 -1
  508. package/dist/server/src/camera/decoder/detection-pipeline.js.map +1 -1
  509. package/dist/server/src/camera/decoder/event-manager.d.ts +27 -4
  510. package/dist/server/src/camera/decoder/event-manager.js +175 -48
  511. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  512. package/dist/server/src/camera/decoder/nvr-sink.d.ts +4 -1
  513. package/dist/server/src/camera/decoder/nvr-sink.js +1 -1
  514. package/dist/server/src/camera/decoder/nvr-sink.js.map +1 -1
  515. package/dist/server/src/camera/decoder/perf-tracker.d.ts +10 -0
  516. package/dist/server/src/camera/decoder/perf-tracker.js +20 -0
  517. package/dist/server/src/camera/decoder/perf-tracker.js.map +1 -1
  518. package/dist/server/src/camera/decoder/secondary-stage.d.ts +21 -1
  519. package/dist/server/src/camera/decoder/secondary-stage.js +301 -59
  520. package/dist/server/src/camera/decoder/secondary-stage.js.map +1 -1
  521. package/dist/server/src/camera/decoder/side-queue.d.ts +13 -0
  522. package/dist/server/src/camera/decoder/side-queue.js +53 -0
  523. package/dist/server/src/camera/decoder/side-queue.js.map +1 -0
  524. package/dist/server/src/camera/decoder/sources/buffered-source.d.ts +2 -0
  525. package/dist/server/src/camera/decoder/sources/buffered-source.js +7 -1
  526. package/dist/server/src/camera/decoder/sources/buffered-source.js.map +1 -1
  527. package/dist/server/src/camera/decoder/types.d.ts +11 -1
  528. package/dist/server/src/camera/decoder/types.js +9 -1
  529. package/dist/server/src/camera/decoder/types.js.map +1 -1
  530. package/dist/server/src/camera/sensors/controller.d.ts +1 -0
  531. package/dist/server/src/camera/sensors/controller.js +28 -4
  532. package/dist/server/src/camera/sensors/controller.js.map +1 -1
  533. package/dist/server/src/main.js +11 -2
  534. package/dist/server/src/main.js.map +1 -1
  535. package/dist/server/src/plugins/runtime/python/proxy/camera_device.py +1 -14
  536. package/dist/server/src/plugins/runtime/python/proxy/sensor.py +14 -1
  537. package/dist/server/src/plugins/runtime/python/proxy/sensor_manager.py +1 -13
  538. package/dist/server/src/rpc/interfaces/detection.d.ts +14 -2
  539. package/dist/server/src/rpc/server.js +1 -0
  540. package/dist/server/src/rpc/server.js.map +1 -1
  541. package/dist/server/src/services/config/index.d.ts +1 -0
  542. package/dist/server/src/services/config/index.js +6 -11
  543. package/dist/server/src/services/config/index.js.map +1 -1
  544. package/dist/server/src/utils/camera.js +8 -5
  545. package/dist/server/src/utils/camera.js.map +1 -1
  546. package/dist/server/src/utils/instance-lock.d.ts +1 -0
  547. package/dist/server/src/utils/instance-lock.js +57 -0
  548. package/dist/server/src/utils/instance-lock.js.map +1 -0
  549. package/dist/server/src/workers/agent.d.ts +2 -0
  550. package/dist/server/src/workers/agent.js +11 -1
  551. package/dist/server/src/workers/agent.js.map +1 -1
  552. package/dist/server/src/workers/manager.js +9 -2
  553. package/dist/server/src/workers/manager.js.map +1 -1
  554. package/dist/server/src/workers/types.d.ts +1 -0
  555. package/npm-shrinkwrap.json +209 -209
  556. package/package.json +28 -28
  557. package/dist/interface/assets/Assistant-bB8RBo-m.js +0 -1
  558. package/dist/interface/assets/Automations-BdZZW2eN.js +0 -2
  559. package/dist/interface/assets/Camera-Ct7ndOxr.js +0 -2
  560. package/dist/interface/assets/Camview-BjQdTHNh.js +0 -1
  561. package/dist/interface/assets/Config-CBTbYd5v.js +0 -2
  562. package/dist/interface/assets/ConfigTriggerGeofence-Bl2ZacbY.js +0 -1
  563. package/dist/interface/assets/Console-Cfk9MA9m.js +0 -1
  564. package/dist/interface/assets/CuiAssistantConversation-BHK_i56I.js +0 -5
  565. package/dist/interface/assets/CuiAutomationRunsDialog-B0ohEHw0.js +0 -1
  566. package/dist/interface/assets/CuiBottomSheet-NgX7VFao.js +0 -1
  567. package/dist/interface/assets/CuiCameraRecordings-BTD-CQAg.js +0 -1
  568. package/dist/interface/assets/CuiCameraTable-KPk46Xcl.js +0 -1
  569. package/dist/interface/assets/CuiDataTable-CsqH-RB1.js +0 -1
  570. package/dist/interface/assets/CuiMarkdownContent-DSArmS0V.js +0 -1
  571. package/dist/interface/assets/CuiSchema-ytExUVhI.js +0 -1
  572. package/dist/interface/assets/Faces-Cb6XMxDC.js +0 -1
  573. package/dist/interface/assets/Floorplan-DbqADtN1.js +0 -1
  574. package/dist/interface/assets/Instances-DrMzPD65.js +0 -1
  575. package/dist/interface/assets/Metrics-BUP_-7o7.css +0 -1
  576. package/dist/interface/assets/Metrics-CqhUnVRA.js +0 -12
  577. package/dist/interface/assets/Plugin-BDqNeTCT.css +0 -1
  578. package/dist/interface/assets/Plugin-DyOg_fbg.js +0 -1
  579. package/dist/interface/assets/PluginSearch-BgecD9Ob.js +0 -2
  580. package/dist/interface/assets/PluginSearch-C8xHKikH.js +0 -1
  581. package/dist/interface/assets/Plugins-CuujWEtM.js +0 -1
  582. package/dist/interface/assets/Recordings-9FJqCfdM.css +0 -1
  583. package/dist/interface/assets/Recordings-ths9khZr.js +0 -1
  584. package/dist/interface/assets/SensorEdit-BzoIH7QC.js +0 -1
  585. package/dist/interface/assets/Sensors-CK5uExfU.js +0 -2
  586. package/dist/interface/assets/Settings-DN5hFtw_.js +0 -1
  587. package/dist/interface/assets/SettingsAccount-BCrmon5O.js +0 -1
  588. package/dist/interface/assets/SettingsAccount-CSy1BAIH.js +0 -1
  589. package/dist/interface/assets/SettingsAppearance-h_XPZfQl.js +0 -1
  590. package/dist/interface/assets/SettingsAssistant-BESab92C.css +0 -1
  591. package/dist/interface/assets/SettingsAssistant-D8FmVbUL.js +0 -1
  592. package/dist/interface/assets/SettingsMqtt-DCkLIYpF.js +0 -1
  593. package/dist/interface/assets/SettingsRemote-DXlQKwlT.js +0 -2
  594. package/dist/interface/assets/Terminal-Dl-aAZME.js +0 -4
  595. package/dist/interface/assets/Training-B1oQjAr8.css +0 -1
  596. package/dist/interface/assets/Training-DdZjXgt1.js +0 -1
  597. package/dist/interface/assets/Updates-CkB1lXuo.js +0 -2
  598. package/dist/interface/assets/Workers-7yiebNkl.js +0 -2
  599. package/dist/interface/assets/api-DK2Bav9D.js +0 -4
  600. package/dist/interface/assets/api-DTCqDA-h.css +0 -2
  601. package/dist/interface/assets/assistant-BJ6xKcw_.js +0 -1
  602. package/dist/interface/assets/cloudHandoff-DtlquYGZ.js +0 -1
  603. package/dist/interface/assets/esm-4Hzzm93H.js +0 -1
  604. package/dist/interface/assets/esm-BrFPi5_4.js +0 -1
  605. package/dist/interface/assets/esm-C7pcdfXf.js +0 -1
  606. package/dist/interface/assets/esm-C8bsO829.js +0 -1
  607. package/dist/interface/assets/esm-CXzdnAMk.js +0 -1
  608. package/dist/interface/assets/esm-CZNGZkPu.js +0 -1
  609. package/dist/interface/assets/esm-D0iI7OVb.js +0 -1
  610. package/dist/interface/assets/esm-DKolm6KU.js +0 -1
  611. package/dist/interface/assets/esm-DTywI9gs.js +0 -1
  612. package/dist/interface/assets/esm-DifXcK9i.js +0 -1
  613. package/dist/interface/assets/esm-Dq5o-Xb4.js +0 -1
  614. package/dist/interface/assets/esm-IbQuUZ5l.js +0 -1
  615. package/dist/interface/assets/esm-Xre_AP5i.js +0 -1
  616. package/dist/interface/assets/esm-zYnXHhpH.js +0 -1
  617. package/dist/interface/assets/main-D74mRIxc.js +0 -3
  618. package/dist/interface/assets/native-CAujTO6L.js +0 -1
  619. package/dist/interface/assets/native-sQ88qazf.js +0 -1
  620. package/dist/interface/assets/plugin-D7K50k_y.js +0 -1
  621. package/dist/interface/assets/sensorIcons-DQVgryYP.js +0 -1
  622. package/dist/interface/assets/types-5rE8Tz0_.js +0 -1
  623. package/dist/interface/assets/ungrouped-D56FGIrg.js +0 -1
  624. package/dist/interface/assets/useBackupRestore-Crfd592q.js +0 -1
  625. package/dist/interface/assets/useUserOptions-BTRBUuE2.js +0 -1
  626. package/dist/interface/assets/vendor-gridstack-anPyIu9V.js +0 -3
  627. package/dist/interface/assets/web-3M-ddn4G.js +0 -1
  628. package/dist/interface/assets/web-BY80VGyU.js +0 -1
  629. package/dist/interface/assets/web-B_tUYyM0.js +0 -1
  630. package/dist/interface/assets/web-BjKL51lK-Bb5NYhpJ.js +0 -1
  631. package/dist/interface/assets/web-Bv-4PJGI.js +0 -1
  632. package/dist/interface/assets/web-C3Pk8qeB.js +0 -1
  633. package/dist/interface/assets/web-CLcvGPH6.js +0 -1
  634. package/dist/interface/assets/web-DO8gTOVJ.js +0 -1
  635. package/dist/interface/assets/web-DR5q_DmI.js +0 -1
  636. package/dist/interface/assets/web-DRHbG4Te.js +0 -1
  637. package/dist/interface/assets/web-DaQ8d8yk.js +0 -1
  638. package/dist/interface/assets/web-EVRW5whF.js +0 -1
  639. package/dist/interface/assets/web-S6Dk3UWN.js +0 -1
  640. package/dist/interface/assets/web-pWIp0wf0.js +0 -1
  641. package/dist/interface/assets/workbox-window.prod.es5-Dz5rcO1z.js +0 -1
  642. package/dist/interface/ha/Faces-C_svyTrr.js +0 -1282
  643. package/dist/interface/ha/Training-BEzPiXZg.js +0 -1512
@@ -1 +1 @@
1
- import{Tr as e}from"./vendor-cameraui-QXD8jkcj.js";import{i as t}from"./eventLabels-BsPoPWS9.js";var n={trigger:`#22c55e`,condition:`#f59e0b`,action:`#3b82f6`,utility:`#8b5cf6`},r={mode:`drag`},i=[{key:`detectionSettings.snooze`,labelKey:`components.automation_nodes.camera_prop_snooze`,inputType:`boolean`,defaultValue:`false`},{key:`disabled`,labelKey:`components.automation_nodes.camera_prop_disabled`,inputType:`boolean`,defaultValue:`false`},{key:`recordingSettings.enabled`,labelKey:`components.automation_nodes.camera_prop_recording`,inputType:`boolean`,defaultValue:`true`},{key:`recordingSettings.mode`,labelKey:`components.automation_nodes.camera_prop_recording_mode`,inputType:`select`,options:[{labelKey:`components.automation_nodes.option_continuous`,value:`continuous`},{labelKey:`components.automation_nodes.option_event`,value:`event`},{labelKey:`components.automation_nodes.option_adhoc`,value:`adhoc`}],defaultValue:`continuous`},{key:`recordingSettings.preBuffer`,labelKey:`components.automation_nodes.camera_prop_recording_prebuffer`,inputType:`number`,min:0,max:60,step:1,defaultValue:`10`},{key:`recordingSettings.sources`,labelKey:`components.automation_nodes.camera_prop_recording_sources`,inputType:`multiselect`,options:[{labelKey:`components.automation_nodes.option_high`,value:`high`},{labelKey:`components.automation_nodes.option_mid`,value:`mid`},{labelKey:`components.automation_nodes.option_low`,value:`low`}],defaultValue:`["high","mid","low"]`},{key:`ptzAutotrack.enabled`,labelKey:`components.automation_nodes.camera_prop_ptz_autotrack`,inputType:`boolean`,defaultValue:`false`},{key:`ptzAutotrack.returnToHome`,labelKey:`components.automation_nodes.camera_prop_ptz_return_home`,inputType:`boolean`,defaultValue:`false`},{key:`ptzAutotrack.targetLabels`,labelKey:`components.automation_nodes.camera_prop_ptz_target_labels`,inputType:`multiselect`,options:e.map(e=>({labelKey:t(e),value:e})),defaultValue:`["person"]`},{key:`ptzAutotrack.minConfidence`,labelKey:`components.automation_nodes.camera_prop_ptz_min_confidence`,inputType:`number`,min:.3,max:1,step:.05,defaultValue:`0.5`},...e.map(e=>({key:`detectionSettings.object.confidences.${e}`,labelKey:`components.automation_nodes.camera_prop_object_confidence_${e}`,inputType:`number`,min:.3,max:1,step:.05,defaultValue:`0.5`})),{key:`detectionSettings.motion.timeout`,labelKey:`components.automation_nodes.camera_prop_motion_timeout`,inputType:`number`,min:10,defaultValue:`30`},{key:`detectionSettings.motion.resolution`,labelKey:`components.automation_nodes.camera_prop_motion_resolution`,inputType:`select`,options:[{labelKey:`components.automation_nodes.option_low`,value:`low`},{labelKey:`components.automation_nodes.option_medium`,value:`medium`},{labelKey:`components.automation_nodes.option_high`,value:`high`}],defaultValue:`low`},{key:`detectionSettings.audio.timeout`,labelKey:`components.automation_nodes.camera_prop_audio_timeout`,inputType:`number`,min:10,defaultValue:`30`},{key:`detectionSettings.audio.minDecibels`,labelKey:`components.automation_nodes.camera_prop_audio_min_decibels`,inputType:`number`,min:-100,max:0,defaultValue:`-40`},{key:`detectionSettings.audio.confidence`,labelKey:`components.automation_nodes.camera_prop_audio_confidence`,inputType:`number`,min:0,max:1,step:.05,defaultValue:`0.7`},{key:`detectionSettings.object.suppressStatic`,labelKey:`components.automation_nodes.camera_prop_suppress_static`,inputType:`boolean`,defaultValue:`true`},{key:`detectionSettings.object.timeout`,labelKey:`components.automation_nodes.camera_prop_object_timeout`,inputType:`number`,min:10,defaultValue:`15`},{key:`detectionSettings.face.confidence`,labelKey:`components.automation_nodes.camera_prop_face_confidence`,inputType:`number`,min:0,max:1,step:.05,defaultValue:`0.5`},{key:`detectionSettings.face.matchThreshold`,labelKey:`components.automation_nodes.camera_prop_face_match_threshold`,inputType:`number`,min:.3,max:.95,step:.05,defaultValue:`0.55`},{key:`detectionSettings.licensePlate.confidence`,labelKey:`components.automation_nodes.camera_prop_plate_confidence`,inputType:`number`,min:0,max:1,step:.05,defaultValue:`0.3`},{key:`detectionSettings.licensePlate.ocrConfidence`,labelKey:`components.automation_nodes.camera_prop_plate_ocr_confidence`,inputType:`number`,min:0,max:1,step:.05,defaultValue:`0.9`},{key:`detectionSettings.licensePlate.minLength`,labelKey:`components.automation_nodes.camera_prop_plate_min_length`,inputType:`number`,min:1,max:10,step:1,defaultValue:`4`},{key:`detectionSettings.sensor.timeout`,labelKey:`components.automation_nodes.camera_prop_sensor_timeout`,inputType:`number`,min:10,defaultValue:`30`},{key:`detectionSettings.cascadeDetection`,labelKey:`components.automation_nodes.camera_prop_cascade_detection`,inputType:`boolean`,defaultValue:`true`},{key:`detectionSettings.cascadeTimeout`,labelKey:`components.automation_nodes.camera_prop_cascade_timeout`,inputType:`number`,min:1,max:300,defaultValue:`10`},{key:`frameWorkerSettings.mainStreamAnalysis`,labelKey:`components.automation_nodes.camera_prop_main_stream_analysis`,inputType:`boolean`,defaultValue:`false`},{key:`snapshotSettings.mode`,labelKey:`components.automation_nodes.camera_prop_snapshot_mode`,inputType:`select`,options:[{labelKey:`components.automation_nodes.option_snapshot_interval`,value:`interval`},{labelKey:`components.automation_nodes.option_snapshot_on_view`,value:`onView`},{labelKey:`components.automation_nodes.option_snapshot_on_demand`,value:`onDemand`}],defaultValue:`interval`},{key:`snapshotSettings.interval`,labelKey:`components.automation_nodes.camera_prop_snapshot_interval`,inputType:`number`,min:10,max:3600,defaultValue:`60`},{key:`snapshotSettings.maxAge`,labelKey:`components.automation_nodes.camera_prop_snapshot_max_age`,inputType:`number`,min:10,max:3600,defaultValue:`60`}];export{n,r,i as t};
1
+ import{Er as e}from"./vendor-cameraui-CK4yHsJi.js";import{i as t}from"./eventLabels-BsPoPWS9.js";var n={trigger:`#22c55e`,condition:`#f59e0b`,action:`#3b82f6`,utility:`#8b5cf6`},r={mode:`drag`},i=[{key:`detectionSettings.snooze`,labelKey:`components.automation_nodes.camera_prop_snooze`,inputType:`boolean`,defaultValue:`false`},{key:`disabled`,labelKey:`components.automation_nodes.camera_prop_disabled`,inputType:`boolean`,defaultValue:`false`},{key:`recordingSettings.enabled`,labelKey:`components.automation_nodes.camera_prop_recording`,inputType:`boolean`,defaultValue:`true`},{key:`recordingSettings.mode`,labelKey:`components.automation_nodes.camera_prop_recording_mode`,inputType:`select`,options:[{labelKey:`components.automation_nodes.option_continuous`,value:`continuous`},{labelKey:`components.automation_nodes.option_event`,value:`event`},{labelKey:`components.automation_nodes.option_adhoc`,value:`adhoc`}],defaultValue:`continuous`},{key:`recordingSettings.preBuffer`,labelKey:`components.automation_nodes.camera_prop_recording_prebuffer`,inputType:`number`,min:0,max:60,step:1,defaultValue:`10`},{key:`recordingSettings.sources`,labelKey:`components.automation_nodes.camera_prop_recording_sources`,inputType:`multiselect`,options:[{labelKey:`components.automation_nodes.option_high`,value:`high`},{labelKey:`components.automation_nodes.option_mid`,value:`mid`},{labelKey:`components.automation_nodes.option_low`,value:`low`}],defaultValue:`["high","mid","low"]`},{key:`ptzAutotrack.enabled`,labelKey:`components.automation_nodes.camera_prop_ptz_autotrack`,inputType:`boolean`,defaultValue:`false`},{key:`ptzAutotrack.returnToHome`,labelKey:`components.automation_nodes.camera_prop_ptz_return_home`,inputType:`boolean`,defaultValue:`false`},{key:`ptzAutotrack.targetLabels`,labelKey:`components.automation_nodes.camera_prop_ptz_target_labels`,inputType:`multiselect`,options:e.map(e=>({labelKey:t(e),value:e})),defaultValue:`["person"]`},{key:`ptzAutotrack.minConfidence`,labelKey:`components.automation_nodes.camera_prop_ptz_min_confidence`,inputType:`number`,min:.3,max:1,step:.05,defaultValue:`0.5`},...e.map(e=>({key:`detectionSettings.object.confidences.${e}`,labelKey:`components.automation_nodes.camera_prop_object_confidence_${e}`,inputType:`number`,min:.3,max:1,step:.05,defaultValue:`0.5`})),{key:`detectionSettings.motion.timeout`,labelKey:`components.automation_nodes.camera_prop_motion_timeout`,inputType:`number`,min:10,defaultValue:`30`},{key:`detectionSettings.motion.resolution`,labelKey:`components.automation_nodes.camera_prop_motion_resolution`,inputType:`select`,options:[{labelKey:`components.automation_nodes.option_low`,value:`low`},{labelKey:`components.automation_nodes.option_medium`,value:`medium`},{labelKey:`components.automation_nodes.option_high`,value:`high`}],defaultValue:`low`},{key:`detectionSettings.audio.timeout`,labelKey:`components.automation_nodes.camera_prop_audio_timeout`,inputType:`number`,min:10,defaultValue:`30`},{key:`detectionSettings.audio.minDecibels`,labelKey:`components.automation_nodes.camera_prop_audio_min_decibels`,inputType:`number`,min:-100,max:0,defaultValue:`-40`},{key:`detectionSettings.audio.confidence`,labelKey:`components.automation_nodes.camera_prop_audio_confidence`,inputType:`number`,min:0,max:1,step:.05,defaultValue:`0.7`},{key:`detectionSettings.object.suppressStatic`,labelKey:`components.automation_nodes.camera_prop_suppress_static`,inputType:`boolean`,defaultValue:`true`},{key:`detectionSettings.object.timeout`,labelKey:`components.automation_nodes.camera_prop_object_timeout`,inputType:`number`,min:10,defaultValue:`15`},{key:`detectionSettings.face.confidence`,labelKey:`components.automation_nodes.camera_prop_face_confidence`,inputType:`number`,min:0,max:1,step:.05,defaultValue:`0.5`},{key:`detectionSettings.face.matchSensitivity`,labelKey:`components.automation_nodes.camera_prop_face_match_sensitivity`,inputType:`select`,options:[{labelKey:`components.automation_nodes.option_face_strict`,value:`strict`},{labelKey:`components.automation_nodes.option_face_balanced`,value:`balanced`},{labelKey:`components.automation_nodes.option_face_relaxed`,value:`relaxed`}],defaultValue:`balanced`},{key:`detectionSettings.licensePlate.confidence`,labelKey:`components.automation_nodes.camera_prop_plate_confidence`,inputType:`number`,min:0,max:1,step:.05,defaultValue:`0.3`},{key:`detectionSettings.licensePlate.ocrConfidence`,labelKey:`components.automation_nodes.camera_prop_plate_ocr_confidence`,inputType:`number`,min:0,max:1,step:.05,defaultValue:`0.9`},{key:`detectionSettings.licensePlate.minLength`,labelKey:`components.automation_nodes.camera_prop_plate_min_length`,inputType:`number`,min:1,max:10,step:1,defaultValue:`4`},{key:`detectionSettings.sensor.timeout`,labelKey:`components.automation_nodes.camera_prop_sensor_timeout`,inputType:`number`,min:10,defaultValue:`30`},{key:`detectionSettings.cascadeDetection`,labelKey:`components.automation_nodes.camera_prop_cascade_detection`,inputType:`boolean`,defaultValue:`true`},{key:`detectionSettings.cascadeTimeout`,labelKey:`components.automation_nodes.camera_prop_cascade_timeout`,inputType:`number`,min:1,max:300,defaultValue:`10`},{key:`frameWorkerSettings.mainStreamAnalysis`,labelKey:`components.automation_nodes.camera_prop_main_stream_analysis`,inputType:`boolean`,defaultValue:`false`},{key:`snapshotSettings.mode`,labelKey:`components.automation_nodes.camera_prop_snapshot_mode`,inputType:`select`,options:[{labelKey:`components.automation_nodes.option_snapshot_interval`,value:`interval`},{labelKey:`components.automation_nodes.option_snapshot_on_view`,value:`onView`},{labelKey:`components.automation_nodes.option_snapshot_on_demand`,value:`onDemand`}],defaultValue:`interval`},{key:`snapshotSettings.interval`,labelKey:`components.automation_nodes.camera_prop_snapshot_interval`,inputType:`number`,min:10,max:3600,defaultValue:`60`},{key:`snapshotSettings.maxAge`,labelKey:`components.automation_nodes.camera_prop_snapshot_max_age`,inputType:`number`,min:10,max:3600,defaultValue:`60`}];export{n,r,i as t};
@@ -1 +1 @@
1
- import{Mn as e}from"./api-DK2Bav9D.js";import{Cr as t,Hn as n,In as r,cn as i,dn as a,ln as o,sn as s,sr as c,un as l,vn as u,yr as d}from"./vendor-DGke_6M4.js";import{r as f}from"./alert-outline-D7zaSJH_.js";import{f as p}from"./eventIcons-cdzqQc0W.js";import{t as m}from"./bell-ring-CyCFPUL_.js";import{n as h,t as g}from"./webhook-oVbP79Yk.js";import{i as _,n as v,r as y}from"./CuiPluginTrustBadge-sVWdvHcM.js";var b={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function x(e,t){return r(),a(`svg`,b,[...t[0]||=[i(`path`,{fill:`currentColor`,d:`M15 13h1.5v2.82l2.44 1.41l-.75 1.3L15 16.69zm4-5H5v11h4.67c-.43-.91-.67-1.93-.67-3a7 7 0 0 1 7-7c1.07 0 2.09.24 3 .67zM5 21a2 2 0 0 1-2-2V5c0-1.11.89-2 2-2h1V1h2v2h8V1h2v2h1a2 2 0 0 1 2 2v6.1c1.24 1.26 2 2.99 2 4.9a7 7 0 0 1-7 7c-1.91 0-3.64-.76-4.9-2zm11-9.85A4.85 4.85 0 0 0 11.15 16c0 2.68 2.17 4.85 4.85 4.85A4.85 4.85 0 0 0 20.85 16c0-2.68-2.17-4.85-4.85-4.85`},null,-1)]])}var S=c({name:`mdi-calendar-clock`,render:x}),C={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function w(e,t){return r(),a(`svg`,C,[...t[0]||=[i(`path`,{fill:`currentColor`,d:`m20.84 2.18l-3.93.78l2.74 3.54l1.97-.4zm-6.87 1.36L12 3.93l2.75 3.53l1.96-.39zm-4.9.96l-1.97.41l2.75 3.53l1.96-.39zm-4.91 1l-.98.19a2 2 0 0 0-1.57 2.35L2 10l4.9-.97zM2 10v10a2 2 0 0 0 2 2h16c1.11 0 2-.89 2-2V10z`},null,-1)]])}var T=c({name:`mdi-movie-open`,render:w}),E={notification:{icon:m,labelKey:`components.automation_store.category_notification`},recording:{icon:y,labelKey:`components.automation_store.category_recording`},presence:{icon:h,labelKey:`components.automation_store.category_presence`},detection:{icon:p,labelKey:`components.automation_store.category_detection`},schedule:{icon:S,labelKey:`components.automation_store.category_schedule`},webhook:{icon:g,labelKey:`components.automation_store.category_webhook`},mqtt:{icon:f,labelKey:`components.automation_store.category_mqtt`},scene:{icon:T,labelKey:`components.automation_store.category_scene`},utility:{icon:v,labelKey:`components.automation_store.category_utility`},other:{icon:_,labelKey:`components.automation_store.category_other`}},D=[`notification`,`recording`,`presence`,`detection`,`schedule`,`webhook`,`mqtt`,`scene`,`utility`,`other`];function O(e){return e&&e in E?E[e]:E.other}var k={key:0,class:`cui-category-chip`},A={class:`cui-category-chip-label`},j=e(u({__name:`CuiAutomationCategoryChip`,props:{category:{}},setup(e){let c=e,u=s(()=>O(c.category));return(s,c)=>e.category?(r(),a(`span`,k,[(r(),o(n(d(u).icon),{class:`cui-category-chip-icon`})),i(`span`,A,t(s.$t(d(u).labelKey)),1)])):l(``,!0)}}),[[`__scopeId`,`data-v-ea2e312f`]]),M={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function N(e,t){return r(),a(`svg`,M,[...t[0]||=[i(`path`,{fill:`currentColor`,d:`M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.62L12 2L9.19 8.62L2 9.24l5.45 4.73L5.82 21z`},null,-1)]])}var P=c({name:`mdi-star`,render:N}),F={camera:`components.automation_store.input_camera`,plugin:`components.automation_store.input_plugin`,sensor:`components.automation_store.input_sensor`,"notification-targets":`components.automation_store.input_notification_targets`,"system-target":`components.automation_store.input_system_target`,text:`components.automation_store.input_text`};function I(e,t){return e?.length?e.map(e=>t(F[e.type],{count:e.count??1})):[]}export{D as a,E as i,P as n,j as r,I as t};
1
+ import{Nn as e}from"./api-C1mraOYr.js";import{Cr as t,Hn as n,In as r,cn as i,dn as a,ln as o,sn as s,sr as c,un as l,vn as u,yr as d}from"./vendor-gFkr2qsZ.js";import{r as f}from"./alert-outline-IRxYbw0j.js";import{f as p}from"./eventIcons-UQutPG3p.js";import{t as m}from"./bell-ring-DreEHgoT.js";import{n as h,t as g}from"./webhook-CWKf2Qxu.js";import{i as _,n as v,r as y}from"./CuiPluginTrustBadge-C6CW6Soh.js";var b={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function x(e,t){return r(),a(`svg`,b,[...t[0]||=[i(`path`,{fill:`currentColor`,d:`M15 13h1.5v2.82l2.44 1.41l-.75 1.3L15 16.69zm4-5H5v11h4.67c-.43-.91-.67-1.93-.67-3a7 7 0 0 1 7-7c1.07 0 2.09.24 3 .67zM5 21a2 2 0 0 1-2-2V5c0-1.11.89-2 2-2h1V1h2v2h8V1h2v2h1a2 2 0 0 1 2 2v6.1c1.24 1.26 2 2.99 2 4.9a7 7 0 0 1-7 7c-1.91 0-3.64-.76-4.9-2zm11-9.85A4.85 4.85 0 0 0 11.15 16c0 2.68 2.17 4.85 4.85 4.85A4.85 4.85 0 0 0 20.85 16c0-2.68-2.17-4.85-4.85-4.85`},null,-1)]])}var S=c({name:`mdi-calendar-clock`,render:x}),C={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function w(e,t){return r(),a(`svg`,C,[...t[0]||=[i(`path`,{fill:`currentColor`,d:`m20.84 2.18l-3.93.78l2.74 3.54l1.97-.4zm-6.87 1.36L12 3.93l2.75 3.53l1.96-.39zm-4.9.96l-1.97.41l2.75 3.53l1.96-.39zm-4.91 1l-.98.19a2 2 0 0 0-1.57 2.35L2 10l4.9-.97zM2 10v10a2 2 0 0 0 2 2h16c1.11 0 2-.89 2-2V10z`},null,-1)]])}var T=c({name:`mdi-movie-open`,render:w}),E={notification:{icon:m,labelKey:`components.automation_store.category_notification`},recording:{icon:y,labelKey:`components.automation_store.category_recording`},presence:{icon:h,labelKey:`components.automation_store.category_presence`},detection:{icon:p,labelKey:`components.automation_store.category_detection`},schedule:{icon:S,labelKey:`components.automation_store.category_schedule`},webhook:{icon:g,labelKey:`components.automation_store.category_webhook`},mqtt:{icon:f,labelKey:`components.automation_store.category_mqtt`},scene:{icon:T,labelKey:`components.automation_store.category_scene`},utility:{icon:v,labelKey:`components.automation_store.category_utility`},other:{icon:_,labelKey:`components.automation_store.category_other`}},D=[`notification`,`recording`,`presence`,`detection`,`schedule`,`webhook`,`mqtt`,`scene`,`utility`,`other`];function O(e){return e&&e in E?E[e]:E.other}var k={key:0,class:`cui-category-chip`},A={class:`cui-category-chip-label`},j=e(u({__name:`CuiAutomationCategoryChip`,props:{category:{}},setup(e){let c=e,u=s(()=>O(c.category));return(s,c)=>e.category?(r(),a(`span`,k,[(r(),o(n(d(u).icon),{class:`cui-category-chip-icon`})),i(`span`,A,t(s.$t(d(u).labelKey)),1)])):l(``,!0)}}),[[`__scopeId`,`data-v-ea2e312f`]]),M={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function N(e,t){return r(),a(`svg`,M,[...t[0]||=[i(`path`,{fill:`currentColor`,d:`M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.62L12 2L9.19 8.62L2 9.24l5.45 4.73L5.82 21z`},null,-1)]])}var P=c({name:`mdi-star`,render:N}),F={camera:`components.automation_store.input_camera`,plugin:`components.automation_store.input_plugin`,sensor:`components.automation_store.input_sensor`,"notification-targets":`components.automation_store.input_notification_targets`,"system-target":`components.automation_store.input_system_target`,text:`components.automation_store.input_text`};function I(e,t){return e?.length?e.map(e=>t(F[e.type],{count:e.count??1})):[]}export{D as a,E as i,P as n,j as r,I as t};
@@ -1 +1 @@
1
- import{In as e,cn as t,dn as n,sr as r}from"./vendor-DGke_6M4.js";var i={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function a(r,a){return e(),n(`svg`,i,[...a[0]||=[t(`path`,{fill:`currentColor`,d:`M26 20h-6v-2h6zm4 8h-6v-2h6zm-2-4h-6v-2h6z`},null,-1),t(`path`,{fill:`currentColor`,d:`M17.003 20a4.9 4.9 0 0 0-2.404-4.173L22 3l-1.73-1l-7.577 13.126a5.7 5.7 0 0 0-5.243 1.503C3.706 20.24 3.996 28.682 4.01 29.04a1 1 0 0 0 1 .96h14.991a1 1 0 0 0 .6-1.8c-3.54-2.656-3.598-8.146-3.598-8.2m-5.073-3.003A3.11 3.11 0 0 1 15.004 20c0 .038.002.208.017.469l-5.9-2.624a3.8 3.8 0 0 1 2.809-.848M15.45 28A5.2 5.2 0 0 1 14 25h-2a6.5 6.5 0 0 0 .968 3h-2.223A16.6 16.6 0 0 1 10 24H8a17.3 17.3 0 0 0 .665 4H6c.031-1.836.29-5.892 1.803-8.553l7.533 3.35A13 13 0 0 0 17.596 28Z`},null,-1)]])}var o=r({name:`carbon-clean`,render:a}),s={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function c(r,i){return e(),n(`svg`,s,[...i[0]||=[t(`path`,{fill:`currentColor`,d:`M12 10h12.185l-3.587-3.586L22 5l6 6l-6 6l-1.402-1.415L24.182 12H12a6 6 0 0 0 0 12h8v2h-8a8 8 0 0 1 0-16`},null,-1)]])}var l=r({name:`carbon-redo`,render:c}),u={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function d(r,i){return e(),n(`svg`,u,[...i[0]||=[t(`path`,{fill:`currentColor`,d:`m27.71 9.29l-5-5A1 1 0 0 0 22 4H6a2 2 0 0 0-2 2v20a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V10a1 1 0 0 0-.29-.71M12 6h8v4h-8Zm8 20h-8v-8h8Zm2 0v-8a2 2 0 0 0-2-2h-8a2 2 0 0 0-2 2v8H6V6h4v4a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V6.41l4 4V26Z`},null,-1)]])}var f=r({name:`carbon-save`,render:d}),p={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function m(r,i){return e(),n(`svg`,p,[...i[0]||=[t(`path`,{fill:`currentColor`,d:`M20 10H7.815l3.587-3.586L10 5l-6 6l6 6l1.402-1.415L7.818 12H20a6 6 0 0 1 0 12h-8v2h8a8 8 0 0 0 0-16`},null,-1)]])}var h=r({name:`carbon-undo`,render:m});export{o as i,f as n,l as r,h as t};
1
+ import{In as e,cn as t,dn as n,sr as r}from"./vendor-gFkr2qsZ.js";var i={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function a(r,a){return e(),n(`svg`,i,[...a[0]||=[t(`path`,{fill:`currentColor`,d:`M26 20h-6v-2h6zm4 8h-6v-2h6zm-2-4h-6v-2h6z`},null,-1),t(`path`,{fill:`currentColor`,d:`M17.003 20a4.9 4.9 0 0 0-2.404-4.173L22 3l-1.73-1l-7.577 13.126a5.7 5.7 0 0 0-5.243 1.503C3.706 20.24 3.996 28.682 4.01 29.04a1 1 0 0 0 1 .96h14.991a1 1 0 0 0 .6-1.8c-3.54-2.656-3.598-8.146-3.598-8.2m-5.073-3.003A3.11 3.11 0 0 1 15.004 20c0 .038.002.208.017.469l-5.9-2.624a3.8 3.8 0 0 1 2.809-.848M15.45 28A5.2 5.2 0 0 1 14 25h-2a6.5 6.5 0 0 0 .968 3h-2.223A16.6 16.6 0 0 1 10 24H8a17.3 17.3 0 0 0 .665 4H6c.031-1.836.29-5.892 1.803-8.553l7.533 3.35A13 13 0 0 0 17.596 28Z`},null,-1)]])}var o=r({name:`carbon-clean`,render:a}),s={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function c(r,i){return e(),n(`svg`,s,[...i[0]||=[t(`path`,{fill:`currentColor`,d:`M12 10h12.185l-3.587-3.586L22 5l6 6l-6 6l-1.402-1.415L24.182 12H12a6 6 0 0 0 0 12h8v2h-8a8 8 0 0 1 0-16`},null,-1)]])}var l=r({name:`carbon-redo`,render:c}),u={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function d(r,i){return e(),n(`svg`,u,[...i[0]||=[t(`path`,{fill:`currentColor`,d:`m27.71 9.29l-5-5A1 1 0 0 0 22 4H6a2 2 0 0 0-2 2v20a2 2 0 0 0 2 2h20a2 2 0 0 0 2-2V10a1 1 0 0 0-.29-.71M12 6h8v4h-8Zm8 20h-8v-8h8Zm2 0v-8a2 2 0 0 0-2-2h-8a2 2 0 0 0-2 2v8H6V6h4v4a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V6.41l4 4V26Z`},null,-1)]])}var f=r({name:`carbon-save`,render:d}),p={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function m(r,i){return e(),n(`svg`,p,[...i[0]||=[t(`path`,{fill:`currentColor`,d:`M20 10H7.815l3.587-3.586L10 5l-6 6l6 6l1.402-1.415L7.818 12H20a6 6 0 0 1 0 12h-8v2h8a8 8 0 0 0 0-16`},null,-1)]])}var h=r({name:`carbon-undo`,render:m});export{o as i,f as n,l as r,h as t};
@@ -0,0 +1 @@
1
+ import{B as e,Fn as t,Kt as n,Nn as r,Nt as i,T as a,Ur as o,Wt as s,_i as c,a as l,b as u,c as d,er as f,h as p,ii as m,j as h,o as g,qn as _,s as ee,u as te}from"./vendor-cameraui-CK4yHsJi.js";import{$ as ne,Ar as re,Cn as ie,J as ae,Mn as oe,Nn as v,Q as se,Tn as ce,X as le,Y as ue,Z as de,bn as fe,ct as pe,gn as me,hn as he,it as ge,kn as _e,q as ve,rt as ye,s as be,xn as xe}from"./api-C1mraOYr.js";import{$n as Se,Bn as Ce,Cn as we,Cr as y,Dn as b,Hn as Te,In as x,Jn as S,On as Ee,Pn as De,Rn as C,Tn as Oe,Xn as ke,Zn as Ae,br as w,cn as T,dn as E,dr as D,en as je,er as Me,gn as O,ln as k,nn as A,or as j,rn as M,sn as N,sr as Ne,un as P,vn as F,yr as I,zn as L}from"./vendor-gFkr2qsZ.js";import{a as Pe}from"./intercomService-CjoJaOZ7.js";import{i as Fe}from"./alert-outline-IRxYbw0j.js";import{t as Ie}from"./eventIcons-UQutPG3p.js";import{u as Le}from"./vendor-core-B-Q4es-f.js";import{M as R,P as z}from"./vendor-primevue-Cmp3VjIC.js";var B={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Re(e,t){return x(),E(`svg`,B,[...t[0]||=[T(`path`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,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`},null,-1)]])}var ze=Ne({name:`tabler-user-edit`,render:Re}),V={class:`flex flex-col gap-4 w-full`},H={key:0,class:`flex justify-center`},U=[`src`,`alt`],W={class:`flex flex-col gap-2 w-full`},G={class:`cui-label`},Be={class:`flex flex-col gap-2 w-full`},K={for:`reassignTarget`,class:`cui-label`},Ve=F({__name:`FaceReassign`,props:{cropUrl:{},oldName:{}},setup(t,{expose:n}){let r=t,{t:a}=o(),{plugin:s}=i(`@camera.ui/camera-ui-nvr`),c=D(null),l=D([]),u=D(!0),d=N(()=>r.oldName===`unknown`?a(`views.recordings.reassign_unknown_person`):r.oldName),f=N(()=>{let e=l.value.filter(e=>e!==r.oldName).map(e=>({label:e,value:e}));return r.oldName!==`unknown`&&e.push({label:a(`views.recordings.reassign_unknown`),value:``}),e});return De(async()=>{try{let e=await s.value?.listKnownFaces?.();l.value=(e??[]).map(e=>e.name)}catch{}finally{u.value=!1}}),n({onConfirm:async()=>c.value}),(t,n)=>{let i=e,a=R;return x(),E(`div`,V,[r.cropUrl?(x(),E(`div`,H,[T(`img`,{src:r.cropUrl,alt:I(d),class:`w-36 h-36 rounded-xl object-cover bg-neutral-900`},null,8,U)])):P(``,!0),T(`div`,W,[T(`label`,G,y(t.$t(`views.recordings.reassign_current`)),1),O(i,{"model-value":I(d),class:`w-full`,fluid:``,disabled:``},null,8,[`model-value`])]),T(`div`,Be,[T(`label`,K,y(t.$t(`views.recordings.reassign_new`)),1),O(a,{id:`reassignTarget`,modelValue:I(c),"onUpdate:modelValue":n[0]||=e=>j(c)?c.value=e:null,options:I(f),"option-label":`label`,"option-value":`value`,class:`w-full`,fluid:``,loading:I(u),disabled:I(u),placeholder:t.$t(`views.faces.enter_or_pick_name`)},null,8,[`modelValue`,`options`,`loading`,`disabled`,`placeholder`])])])}}}),He={key:0,class:`card-skeleton absolute inset-0 rounded-xl`},Ue={key:2,class:`w-full h-full flex items-center justify-center bg-neutral-800/80`},We={class:`absolute top-0 left-0 right-0 p-2 bg-gradient-to-b from-black/80 to-transparent z-[3]`},Ge={class:`flex items-center gap-1.5`},Ke={class:`text-xs font-semibold text-white truncate min-w-0 flex-1`},qe={key:0,class:`text-[10px] font-semibold text-white/80 bg-black/60 px-1.5 py-0.5 rounded-md shrink-0`},Je=[`title`],Ye=[`title`,`disabled`],Xe={class:`text-[10px] text-white/70`},Ze=[`aria-label`],Qe=[`aria-label`],$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={key:0,class:`flex items-center gap-0.5 shrink-0 opacity-85 group-hover:opacity-100 transition-opacity duration-200`},rt=[`onClick`],it=[`src`,`alt`],at={key:0,class:`text-[10px] text-white/60 font-medium`},ot={key:6,class:`absolute inset-0 z-[4] flex items-center justify-center pointer-events-none`},st={key:7,class:`absolute bottom-10 left-1/2 -translate-x-1/2 z-[4] pointer-events-none`},ct={class:`text-[10px] font-semibold text-white bg-black/60 px-1.5 py-0.5 rounded-md whitespace-nowrap`,style:{"font-variant-numeric":`tabular-nums`}},lt=24,ut=30,dt=22,ft=28,pt=8,mt=8,ht=v(F({__name:`RecordingCard`,props:{event:{},cameraName:{},camera:{},loadThumbnails:{type:Function},semanticScore:{},segIndex:{},hideSegmentBadge:{type:Boolean},selectionMode:{type:Boolean},selected:{type:Boolean},siblingActive:{type:Boolean}},emits:[`scrollToEvent`,`select`,`openTrace`],setup(e,{emit:t}){let n=e,r=t,s=Pe(),f=re(),{t:m}=o(),_=Le(),v=u(`@camera.ui/camera-ui-nvr`),{plugin:Se}=i(`@camera.ui/camera-ui-nvr`),Ce=pe(),{icons:b}=Ie(),Oe=v.getCachedThumbnails(n.event.id),Ae=Oe?l(Oe,n.event,`card`,n.segIndex).url?`loaded`:`empty`:`loading`,j=we(ee,void 0),Ne=S(`rootRef`),F=S(`previewCanvasRef`),L=S(`footerRef`),R=S(`cardMenuRef`),z=D(!1),B=D(!1),Re=de(Ne,()=>Gt(),()=>$()),V=D(!1),H=D(Oe??null),U=D(Ae),W=D(!1),G=D(0),Be=D(null),K=D(!1),ht=D(0),gt=N(()=>ie(void 0,`admin`)),_t=N(()=>Be.value??n.event.favorite??!1),vt=N(()=>{if(n.semanticScore==null)return;let e=Math.max(0,Math.min(1,n.semanticScore));return{pct:e,label:`${(e*100).toFixed(0)}%`,color:e>=.5?`bg-green-500/80`:e>=.25?`bg-yellow-500/80`:`bg-red-400/80`}}),q=N(()=>H.value?l(H.value,n.event,`card`,n.segIndex):null),J=N(()=>{let e=n.segIndex??q.value?.segIndex;return e===void 0?void 0:n.event.segments?.[e]}),yt=N(()=>q.value?.url),bt=N(()=>q.value?.label),xt=N(()=>q.value?.type??n.event.types[0]??`motion`),Y=N(()=>{if(n.hideSegmentBadge)return;let e=n.event.segments?.length??0;return n.segIndex!==void 0&&e>1?`${n.segIndex+1}/${e}`:void 0}),X=N(()=>{let e=H.value,t=q.value?.url;if(!e||!t)return[];let r=[{url:t,label:q.value?.label,type:xt.value,crop:!1}];for(let t of d(e,n.segIndex)){if(r.some(e=>e.url===t.url))continue;let e=t.key.split(`:`)[0];r.push({url:t.url,label:t.label,type:t.type,crop:!0,faceSeg:/^\d+$/.test(e)?Number(e):-1})}if(n.segIndex===void 0)for(let t of Object.keys(e.cards??e.strips??{}).sort((e,t)=>Number(e)-Number(t))){let i=p(e.cards?.[t]??e.strips?.[t]);if(!i||r.some(e=>e.url===i))continue;let a=ne(n.event,t);r.push({url:i,label:a,type:a,crop:!1})}return r.length>1?r:[]}),St=N(()=>X.value.length>1),Ct=N(()=>X.value.length?Math.min(G.value,X.value.length-1):0),Z=N(()=>St.value?X.value[Ct.value]:void 0),wt=N(()=>!!Z.value?.crop),Tt=N(()=>Z.value?.url??yt.value),Et=N(()=>Z.value?.label??bt.value),Q=N(()=>{let e=J.value;return(e?a(n.event,e):[...new Set(n.event.types)]).filter(e=>e!==`motion`&&e!==`audio`)}),Dt=N(()=>n.cameraName??n.event.cameraId),Ot=N(()=>X.value.map(e=>({url:e.url,type:e.type}))),kt=N(()=>Q.value.slice(0,At.value.icons)),At=N(()=>{let e=ht.value;if(!e)return{icons:2,tiles:2};let t=e-pt;n.selectionMode&&(t-=ft);let r=Ot.value.length>0?52:0,i=Vt(Q.value.length,Math.max(0,t-r),lt),a=Q.value.length>0?Math.max(1,i):0,o=a*lt+(a<Q.value.length?dt:0);return{icons:a,tiles:Vt(Ot.value.length,Math.max(0,t-o),ut)}}),jt=N(()=>Q.value.slice(At.value.icons)),Mt=N(()=>Ot.value.slice(0,At.value.tiles)),Nt=N(()=>Ot.value.length-At.value.tiles),Pt=N(()=>{let e=new Date(J.value?.firstSeen??n.event.thumbnailAt??n.event.startTime),t=new Date,r=e.toDateString()===t.toDateString(),i=e.toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`});return r?i:`${e.toLocaleDateString([],{month:`short`,day:`numeric`})} ${i}`}),Ft=N(()=>!!(Se.value&&n.event.endTime&&n.event.hasRecording!==!1)),It=N(()=>j?B.value?m(`views.recordings.no_preview`):V.value?j.status.value===`unavailable`?m(`views.recordings.no_preview`):j.status.value===`playing`&&j.previewTimeMs.value?Wt(j.previewTimeMs.value):``:``:``),Lt=N(()=>{let e=Z.value;if(e&&e.type===`face`)return e.label?e.label:`unknown`}),Rt=N(()=>{let e=[];return gt.value&&Lt.value!==void 0&&e.push({key:`reassign`,label:m(`views.recordings.reassign_face`),icon:ze,loading:K.value,onClick:()=>Zt()}),n.camera&&e.push({key:`trace`,label:m(`views.recordings.open_trace`),icon:ye,onClick:()=>r(`openTrace`,J.value?.firstSeen)}),e.push({key:`ask`,label:m(`views.recordings.ask_assistant`),icon:Fe,onClick:()=>Bt()}),Ft.value&&e.push({key:`download`,label:m(`views.recordings.download`),icon:ge,loading:W.value,onClick:()=>en()}),e});function zt(){me(R.value?.hide)}function Bt(){let e=m(`views.recordings.ask_assistant_prompt`,{camera:n.cameraName??n.camera?.name??n.event.cameraId,time:new Date(n.event.startTime).toLocaleString(),id:n.event.id});_.push({path:`/assistant`,query:{prompt:e}})}function Vt(e,t,n){return e===0||t<n?0:e*n<=t?e:Math.max(0,Math.floor((t-dt)/n))}function Ht(e){let t=X.value.length;t&&($(),G.value=(Ct.value+e+t)%t)}function Ut(e,t){St.value&&(t.stopPropagation(),$(),G.value=e)}function $(){B.value=!1,j&&V.value&&(V.value=!1,j.onHoverEnd())}function Wt(e){let t=new Date(e);return`${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}:${String(t.getSeconds()).padStart(2,`0`)}`}function Gt(){if(!j||Ct.value>0)return;let e=F.value;if(!e)return;let t=te(n.event);if(n.event.hasRecording===!1||!t){B.value=!0;return}V.value=!0,j.onHoverStart(e,n.event.cameraId,n.event.id,n.event.startTime,t,n.camera?.zones?.privacy,h(n.event))}function Kt(){Re.blocksMouseEnter()||Gt()}function qt(){B.value=!1,j&&(V.value=!1,j.onHoverEnd())}async function Jt(e=2){let t=await n.loadThumbnails(n.event.id,n.event.startTime);if(t){H.value=t;let e=l(t,n.event,`card`);U.value=e.url?`loaded`:`empty`}else if(e>0)return await new Promise(e=>setTimeout(e,500)),Jt(e-1);else U.value=n.event.state===`active`?`loading`:`empty`}function Yt(){if(!Re.consumesClick()){if(n.selectionMode){r(`select`);return}r(`scrollToEvent`,J.value?.firstSeen??se(n.event))}}async function Xt(e){$(),z.value||(z.value=!0,await Ee()),R.value?.toggleMenu(e)}function Zt(){let e=Lt.value;e!==void 0&&Ce.openComponentDialog(Ve,{data:{title:m(`views.recordings.reassign_face`),confirmText:m(`components.form.button.save`),contentProps:{cropUrl:Z.value?.url,oldName:e}},onConfirm:e=>Qt(e)})}async function Qt(e){let t=Lt.value;if(t===void 0||K.value)return;let r=Z.value?.faceSeg??-1,i=Se.value;if(i?.reassignEventFace){K.value=!0;try{await i.reassignEventFace(n.event.id,r,t,e)>0&&g(n.event.id),f.add({severity:`success`,detail:m(`views.recordings.reassign_done`),life:3e3})}catch(e){f.add({severity:`error`,detail:be(e),life:5e3})}finally{K.value=!1}}}async function $t(){let e=!_t.value;Be.value=e;try{await v.setEventFavorite(n.event.id,e)}catch(e){Be.value=null,f.add({severity:`error`,detail:be(e),life:5e3})}}async function en(){if(W.value)return;let e=Se.value;if(e?.nvrExport&&n.event.endTime){W.value=!0;try{let t=await e.nvrExport(n.event.cameraId,n.event.startTime*1e3,n.event.endTime*1e3);await _e({url:t.url,filename:t.filename})}catch(e){s.error(`Download failed:`,e),f.add({severity:`error`,summary:m(`views.recordings.download_failed`),detail:be(e),life:5e3})}finally{W.value=!1}}}return ke(()=>v.storeVersion.value,()=>{let e=v.getCachedThumbnails(n.event.id);if(!e){H.value&&Jt();return}H.value=e,l(e,n.event,`card`).url&&(U.value=`loaded`)}),c(L,e=>{let t=e[0]?.contentRect.width??0,n=Math.round(t/mt)*mt;n!==ht.value&&(ht.value=n)}),De(()=>{Ae===`loading`&&Jt()}),(t,n)=>{let r=oe,i=ve,a=ae,o=ue,s=le,c=fe,l=xe,u=ce;return x(),E(`div`,{ref_key:`rootRef`,ref:Ne,class:`recording-card relative group cursor-pointer`,onClickCapture:zt,onClick:Yt,onMouseenter:Kt,onMouseleave:qt},[T(`div`,{class:w([`bg-neutral-900 w-full rounded-xl overflow-hidden relative transition-shadow duration-200`,{"ring-2 ring-inset ring-primary/70":e.siblingActive}]),style:{"aspect-ratio":`1/1`}},[I(U)===`loading`?(x(),E(`div`,He)):I(Tt)?(x(),k(r,{key:1,src:I(Tt),alt:I(Dt),class:`pointer-events-none w-full h-full transition-transform duration-300 group-hover:scale-105`,"image-style":{objectFit:I(wt)?`contain`:`cover`},"image-container-class":`w-full h-full`},null,8,[`src`,`alt`,`image-style`])):(x(),E(`div`,Ue,[(x(),k(Te(I(b)[I(xt)]??I(b).motion),{class:`w-10 h-10 text-white/20`}))])),I(j)?Me((x(),E(`canvas`,{key:3,ref_key:`previewCanvasRef`,ref:F,class:`absolute inset-0 w-full h-full object-cover pointer-events-none z-[1]`},null,512)),[[je,I(V)]]):P(``,!0),n[2]||=T(`div`,{class:`absolute inset-0 bg-transparent group-hover:bg-black/30 pointer-events-none transition-colors duration-200 z-[2]`},null,-1),T(`div`,We,[T(`div`,Ge,[T(`p`,Ke,y(I(Dt)),1),I(Y)?(x(),E(`span`,qe,y(I(Y)),1)):P(``,!0),I(vt)?(x(),E(`span`,{key:1,class:w([`text-[10px] font-bold text-white px-1.5 py-0.5 rounded-md shrink-0`,I(vt).color])},y(I(vt).label),3)):P(``,!0),I(gt)&&!e.selectionMode?(x(),E(`button`,{key:2,title:I(_t)?t.$t(`views.recordings.unfavorite`):t.$t(`views.recordings.favorite`),type:`button`,class:`card-icon-button w-5 h-5 shrink-0`,onClick:A($t,[`stop`]),onMouseenter:$},[I(_t)?(x(),k(i,{key:0,class:`w-3 h-3 text-yellow-400`})):(x(),k(a,{key:1,class:`w-3 h-3 text-white`}))],40,Je)):P(``,!0),I(Rt).length>0&&!e.selectionMode?(x(),E(`button`,{key:3,title:t.$t(`views.recordings.more_actions`),type:`button`,class:`card-icon-button w-5 h-5 shrink-0`,disabled:I(W)||I(K),onClick:A(Xt,[`stop`]),onMouseenter:$},[I(W)||I(K)?(x(),k(o,{key:0,class:`w-3 h-3 text-white`})):(x(),k(s,{key:1,class:`w-3 h-3 text-white`}))],40,Ye)):P(``,!0)]),T(`p`,Xe,y(I(Pt)),1)]),I(X).length>1?(x(),E(M,{key:4},[T(`button`,{type:`button`,class:`card-icon-button carousel-nav absolute left-1 top-1/2 -translate-y-1/2 z-[3] w-7 h-7 transition-opacity duration-200`,"aria-label":t.$t(`views.recordings.prev_image`),onClick:n[0]||=A(e=>Ht(-1),[`stop`]),onMouseenter:$},[O(c,{class:`w-5 h-5 text-white`})],40,Ze),T(`button`,{type:`button`,class:`card-icon-button carousel-nav absolute right-1 top-1/2 -translate-y-1/2 z-[3] w-7 h-7 transition-opacity duration-200`,"aria-label":t.$t(`views.recordings.next_image`),onClick:n[1]||=A(e=>Ht(1),[`stop`]),onMouseenter:$},[O(l,{class:`w-5 h-5 text-white`})],40,Qe)],64)):P(``,!0),I(Et)?(x(),E(`div`,{key:5,class:w([`absolute left-1/2 -translate-x-1/2 z-[3] max-w-[85%] pointer-events-none transition-all duration-200`,I(It)?`bottom-16`:`bottom-10`])},[T(`span`,$e,y(I(Et)),1)],2)):P(``,!0),T(`div`,{ref_key:`footerRef`,ref:L,class:`absolute bottom-2 left-2 right-2 flex items-center justify-between gap-2 z-[3]`},[T(`div`,et,[e.selectionMode?(x(),E(`div`,{key:0,class:w([`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`])},[e.selected?(x(),k(u,{key:0,class:`w-4 h-4 text-white`})):P(``,!0)],2)):P(``,!0),(x(!0),E(M,null,C(I(kt),e=>(x(),E(`div`,{key:e,class:`flex items-center justify-center w-5 h-5 rounded-md bg-black/60 shrink-0`},[(x(),k(Te(I(b)[e]??I(b).motion),{class:`w-3 h-3 text-white/80`}))]))),128)),I(jt).length>0?(x(),E(`span`,{key:1,title:I(jt).join(`, `),class:`text-[10px] text-white/60 font-medium shrink-0`},` +`+y(I(jt).length),9,tt)):P(``,!0)]),I(Mt).length>0||I(Nt)>0?(x(),E(`div`,nt,[(x(!0),E(M,null,C(I(Mt),(e,t)=>(x(),E(`div`,{key:t,class:w([`w-7 h-7 rounded overflow-hidden border bg-neutral-800 cursor-pointer`,t===I(Ct)?`border-primary/80`:`border-white/20`]),onClick:e=>Ut(t,e)},[T(`img`,{src:e.url,alt:e.type,decoding:`async`,loading:`lazy`,class:`w-full h-full object-cover`},null,8,it)],10,rt))),128)),I(Nt)>0?(x(),E(`span`,at,`+`+y(I(Nt)),1)):P(``,!0)])):P(``,!0)],512),I(j)&&I(V)&&I(j).isLoading.value?(x(),E(`div`,ot,[O(o,{class:`w-7 h-7 text-white`})])):P(``,!0),I(It)?(x(),E(`div`,st,[T(`span`,ct,y(I(It)),1)])):P(``,!0)],2),I(z)?(x(),k(he,{key:0,ref_key:`cardMenuRef`,ref:R,items:I(Rt),popover:{pt:{content:{class:`p-0! rounded-xl! overflow-hidden!`}}}},null,8,[`items`])):P(``,!0)],544)}}}),[[`__scopeId`,`data-v-22b538a5`]]),gt={name:`VirtualScroller`,components:{SpinnerIcon:s},extends:{name:`BaseVirtualScroller`,extends:n,provide(){return{$pcVirtualScroller:this,$parentInstance:this}},props:{id:{type:String,default:null},style:null,class:null,items:{type:Array,default:null},itemSize:{type:[Number,Array],default:0},scrollHeight:null,scrollWidth:null,orientation:{type:String,default:`vertical`},rtl:{type:Boolean,default:!1},numToleratedItems:{type:Number,default:null},delay:{type:Number,default:0},resizeDelay:{type:Number,default:10},lazy:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loaderDisabled:{type:Boolean,default:!1},columns:{type:Array,default:null},loading:{type:Boolean,default:!1},showSpacer:{type:Boolean,default:!0},showLoader:{type:Boolean,default:!1},tabindex:{type:Number,default:0},inline:{type:Boolean,default:!1},step:{type:Number,default:0},appendOnly:{type:Boolean,default:!1},autoSize:{type:Boolean,default:!1},itemKey:{type:[String,Function],default:null}},style:z,beforeMount(){z.loadCSS({nonce:this.$primevueConfig?.csp?.nonce})}},inheritAttrs:!1,emits:[`update:numToleratedItems`,`scroll`,`scroll-index-change`,`lazy-load`],data(){let e=this.isBoth();return{first:e?{rows:0,cols:0}:0,last:e?{rows:0,cols:0}:0,page:e?{rows:0,cols:0}:0,numItemsInViewport:e?{rows:0,cols:0}:0,lastScrollPos:e?{top:0,left:0}:0,d_numToleratedItems:this.numToleratedItems,d_loading:this.loading,loaderArr:[],spacerStyle:{},contentStyle:{},observedWidth:0,observedHeight:0}},element:null,content:null,lastScrollPos:null,scrollTimeout:null,resizeTimeout:null,defaultWidth:0,defaultHeight:0,defaultContentWidth:0,defaultContentHeight:0,isRangeChanged:!1,lazyLoadState:{},resizeListener:null,initialized:!1,computed:{containerClass(){return[`p-virtualscroller`,this.class,{"p-virtualscroller-inline":this.inline,"p-virtualscroller-both p-both-scroll":this.isBoth(),"p-virtualscroller-horizontal p-horizontal-scroll":this.isHorizontal(),"p-virtualscroller-rtl":this.rtl&&this.isHorizontal()}]},contentClass(){return[`p-virtualscroller-content`,{"p-virtualscroller-loading":this.d_loading}]},loaderClass(){return[`p-virtualscroller-loader`,{"p-virtualscroller-loader-mask":!this.$slots.loader}]},loadedItems(){return this.items&&!this.d_loading?this.isBoth()?this.items.slice(this.appendOnly?0:this.first.rows,this.last.rows).map(e=>this.columns?e:e.slice(this.appendOnly?0:this.first.cols,this.last.cols)):this.isHorizontal()&&this.columns?this.items:this.items.slice(this.appendOnly?0:this.first,this.last):[]},loadedRows(){return this.d_loading?this.loaderDisabled?this.loaderArr:[]:this.loadedItems},loadedColumns(){if(this.columns){let e=this.isBoth(),t=this.isHorizontal();if(e||t)return this.d_loading&&this.loaderDisabled?e?this.loaderArr[0]:this.loaderArr:this.columns.slice(e?this.first.cols:this.first,e?this.last.cols:this.last)}return this.columns}},watch:{numToleratedItems(e){this.d_numToleratedItems=e},loading(e,t){this.lazy&&e!==t&&e!==this.d_loading&&(this.d_loading=e)},items(e,t){(!t||t.length!==(e||[]).length)&&this.scheduleInit()},itemSize(){this.scheduleInit()},orientation(){this.lastScrollPos=this.isBoth()?{top:0,left:0}:0},scrollHeight(){this.scheduleInit()},scrollWidth(){this.scheduleInit()}},mounted(){this.viewInit(),this.lastScrollPos=this.isBoth()?{top:0,left:0}:0,this.lazyLoadState=this.lazyLoadState||{}},updated(){!this.initialized&&this.viewInit()},unmounted(){this.unbindResizeListener(),this.unbindSizeObserver(),this.initialized=!1},methods:{resolveItemKey(e,t){let n=this.itemKey;return typeof n==`function`?n(e,t)??t:typeof n==`string`&&typeof e==`object`&&e?e[n]??t:t},viewInit(){_(this.element)&&(this.setContentEl(this.content),this.bindSizeObserver(),this.init(),this.calculateAutoSize(),this.bindResizeListener(),this.defaultWidth=r(this.element),this.defaultHeight=t(this.element),this.defaultContentWidth=r(this.content),this.defaultContentHeight=t(this.content),this.initialized=!0)},init(){this.disabled||(this.setSize(),this.calculateOptions(),this.setSpacerSize())},scheduleInit(){this._initScheduled||(this._initScheduled=!0,Promise.resolve().then(()=>{this._initScheduled=!1,this.init(),this.calculateAutoSize()}))},isVertical(){return this.orientation===`vertical`},isHorizontal(){return this.orientation===`horizontal`},isBoth(){return this.orientation===`both`},scrollTo(e){this.element&&this.element.scrollTo(e)},scrollToIndex(e,t=`auto`){let n=this.isBoth(),r=this.isHorizontal(),i=this.rtl&&r;if(n?e.every(e=>e>-1):e>-1){let a=this.first,{scrollTop:o=0,scrollLeft:s=0}=this.element,{numToleratedItems:c}=this.calculateNumItems(),l=this.getContentPosition(),u=this.itemSize,d=(e=0,t)=>e<=t?0:e,f=(e,t,n)=>e*t+n,p=(e=0,n=0)=>{i&&(e=this.element.scrollWidth-this.element.clientWidth-e),this.scrollTo({left:e,top:n,behavior:t})},m=n?{rows:0,cols:0}:0,h=!1,g=!1;n?(m={rows:d(e[0],c[0]),cols:d(e[1],c[1])},p(f(m.cols,u[1],l.left),f(m.rows,u[0],l.top)),g=this.lastScrollPos.top!==o||this.lastScrollPos.left!==s,h=m.rows!==a.rows||m.cols!==a.cols):(m=d(e,c),r?p(f(m,u,l.left),o):p(s,f(m,u,l.top)),g=this.lastScrollPos!==(r?s:o),h=m!==a),this.isRangeChanged=h,g&&(this.first=m)}},scrollInView(e,t,n=`auto`){if(t){let r=this.isBoth(),i=this.isHorizontal();if(r?e.every(e=>e>-1):e>-1){let{first:a,viewport:o}=this.getRenderedRange(),s=(e=0,t=0)=>this.scrollTo({left:e,top:t,behavior:n}),c=t===`to-start`,l=t===`to-end`;if(c){if(r)o.first.rows-a.rows>e[0]?s(o.first.cols*this.itemSize[1],(o.first.rows-1)*this.itemSize[0]):o.first.cols-a.cols>e[1]&&s((o.first.cols-1)*this.itemSize[1],o.first.rows*this.itemSize[0]);else if(o.first-a>e){let e=(o.first-1)*this.itemSize;i?s(e,0):s(0,e)}}else if(l){if(r)o.last.rows-a.rows<=e[0]+1?s(o.first.cols*this.itemSize[1],(o.first.rows+1)*this.itemSize[0]):o.last.cols-a.cols<=e[1]+1&&s((o.first.cols+1)*this.itemSize[1],o.first.rows*this.itemSize[0]);else if(o.last-a<=e+1){let e=(o.first+1)*this.itemSize;i?s(e,0):s(0,e)}}}}else this.scrollToIndex(e,n)},getRenderedRange(){let e=(e,t)=>Math.floor(e/(t||e)),t=this.first,n=0;if(this.element){let r=this.isBoth(),i=this.isHorizontal(),{scrollTop:a,scrollLeft:o}=this.element;r?(t={rows:e(a,this.itemSize[0]),cols:e(o,this.itemSize[1])},n={rows:t.rows+this.numItemsInViewport.rows,cols:t.cols+this.numItemsInViewport.cols}):(t=e(i?o:a,this.itemSize),n=t+this.numItemsInViewport)}return{first:this.first,last:this.last,viewport:{first:t,last:n}}},calculateNumItems(){let e=this.isBoth(),t=this.isHorizontal(),n=this.itemSize,r=this.getContentPosition(),i=this.observedWidth||(this.element?this.element.offsetWidth:0),a=this.observedHeight||(this.element?this.element.offsetHeight:0),o=i?i-r.left:0,s=a?a-r.top:0,c=(e,t)=>Math.ceil(e/(t||e)),l=e=>Math.ceil(e/2),u=e?{rows:c(s,n[0]),cols:c(o,n[1])}:c(t?o:s,n);return{numItemsInViewport:u,numToleratedItems:this.d_numToleratedItems||(e?[l(u.rows),l(u.cols)]:l(u))}},calculateOptions(){let e=this.isBoth(),t=this.first,{numItemsInViewport:n,numToleratedItems:r}=this.calculateNumItems(),i=(e,t,n,r=!1)=>this.getLast(e+t+(e<n?2:3)*n,r),a=e?{rows:i(t.rows,n.rows,r[0]),cols:i(t.cols,n.cols,r[1],!0)}:i(t,n,r);this.last=a,this.numItemsInViewport=n,this.d_numToleratedItems=r,this.$emit(`update:numToleratedItems`,this.d_numToleratedItems),this.showLoader&&(this.loaderArr=e?Array.from({length:n.rows}).map(()=>Array.from({length:n.cols})):Array.from({length:n})),this.lazy&&Promise.resolve().then(()=>{this.lazyLoadState={first:this.step?e?{rows:0,cols:t.cols}:0:t,last:Math.min(this.step?this.step:a,this.items?.length-1||0)},this.$emit(`lazy-load`,this.lazyLoadState)})},calculateAutoSize(){this.autoSize&&!this.d_loading&&Promise.resolve().then(()=>{if(this.content){let e=this.isBoth(),n=this.isHorizontal(),i=this.isVertical();this.content.style.minHeight=this.content.style.minWidth=`auto`,this.content.style.position=`relative`,this.element.style.contain=`none`;let[a,o]=[r(this.element),t(this.element)];(e||n)&&(this.element.style.width=a<this.defaultWidth?a+`px`:this.scrollWidth||this.defaultWidth+`px`),(e||i)&&(this.element.style.height=o<this.defaultHeight?o+`px`:this.scrollHeight||this.defaultHeight+`px`),this.content.style.minHeight=this.content.style.minWidth=``,this.content.style.position=``,this.element.style.contain=``}})},getLast(e=0,t){return this.items?Math.min(t?(this.columns||this.items[0])?.length||0:this.items?.length||0,e):0},getContentPosition(){if(this.content){if(this.cachedContentPosition&&this.cachedContentElement===this.content)return this.cachedContentPosition;let e=getComputedStyle(this.content),t=parseFloat(e.paddingLeft)+Math.max(parseFloat(e.left)||0,0),n=parseFloat(e.paddingRight)+Math.max(parseFloat(e.right)||0,0),r=parseFloat(e.paddingTop)+Math.max(parseFloat(e.top)||0,0),i=parseFloat(e.paddingBottom)+Math.max(parseFloat(e.bottom)||0,0);return this.cachedContentElement=this.content,this.cachedContentPosition={left:t,right:n,top:r,bottom:i,x:t+n,y:r+i},this.cachedContentPosition}return{left:0,right:0,top:0,bottom:0,x:0,y:0}},setSize(){if(this.element){let e=this.isBoth(),t=this.isHorizontal(),n=this.element.parentElement,r=this.scrollWidth||`${this.element.offsetWidth||n.offsetWidth}px`,i=this.scrollHeight||`${this.element.offsetHeight||n.offsetHeight}px`,a=(e,t)=>this.element.style[e]=t;e||t?(a(`height`,i),a(`width`,r)):a(`height`,i)}},setSpacerSize(){let e=this.items;if(e){let t=this.isBoth(),n=this.isHorizontal(),r=this.getContentPosition(),i=(e,t,n,r=0)=>this.spacerStyle={...this.spacerStyle,[`${e}`]:(t||[]).length*n+r+`px`};t?(i(`height`,e,this.itemSize[0],r.y),i(`width`,this.columns||e[1],this.itemSize[1],r.x)):n?i(`width`,this.columns||e,this.itemSize,r.x):i(`height`,e,this.itemSize,r.y)}},setContentPosition(e){if(this.content&&!this.appendOnly){let t=this.isBoth(),n=this.isHorizontal(),r=this.rtl&&n,i=e?e.first:this.first,a=(e,t)=>e*t,o=(e=0,t=0)=>{let n=r?-e:e;this.contentStyle={...this.contentStyle,transform:`translate3d(${n}px, ${t}px, 0)`}};if(t){let e=i.rows,t=i.cols,n=this.itemSize;o(a(t,n[1]),a(e,n[0]))}else{let e=i,t=this.itemSize,r=a(e,t);n?o(r,0):o(0,r)}}},onScrollPositionChange(e){let t=e.target,n=this.isBoth(),r=this.isHorizontal(),i=this.rtl&&r,a=this.getContentPosition(),o=(e,t)=>e?e>t?e-t:e:0,s=(e,t)=>Math.floor(e/(t||e)),c=o(t.scrollTop,a.top),l=o(t.scrollLeft,a.left);i&&l<0&&(l=Math.abs(l));let u=n?{rows:0,cols:0}:0,d=this.last,f=!1,p=this.lastScrollPos;if(n){let e=this.lastScrollPos.top<=c,n=this.lastScrollPos.left<=l;if(!this.appendOnly||this.appendOnly&&(e||n)){let r={rows:s(c,this.itemSize[0]),cols:s(l,this.itemSize[1])},i={rows:this.calculateTriggerIndex(r.rows,this.first.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0],e),cols:this.calculateTriggerIndex(r.cols,this.first.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],n)};u={rows:this.calculateFirst(r.rows,i.rows,this.first.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0],e),cols:this.calculateFirst(r.cols,i.cols,this.first.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],n,!0)},d={rows:this.calculateLast(r.rows,u.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0]),cols:this.calculateLast(r.cols,u.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],!0)},f=u.rows!==this.first.rows||d.rows!==this.last.rows||u.cols!==this.first.cols||d.cols!==this.last.cols||this.isRangeChanged,p={top:c,left:t.scrollLeft}}}else{let e=r?l:c,t=this.lastScrollPos<=e;if(!this.appendOnly||this.appendOnly&&t){let n=s(e,this.itemSize),r=this.calculateTriggerIndex(n,this.first,this.last,this.numItemsInViewport,this.d_numToleratedItems,t);u=this.calculateFirst(n,r,this.first,this.last,this.numItemsInViewport,this.d_numToleratedItems,t),d=this.calculateLast(n,u,this.last,this.numItemsInViewport,this.d_numToleratedItems),f=u!==this.first||d!==this.last||this.isRangeChanged,p=e}}return{first:u,last:d,isRangeChanged:f,scrollPos:p}},calculateTriggerIndex(e,t,n,r,i,a){return e<=i?i:a?n-r-i:t+i-1},calculateFirst(e,t,n,r,i,a,o,s=!1){if(e<=a)return 0;let c=Math.max(0,o?e<t?n:e-a:e>t?n:e-2*a),l=this.getLast(c,s);return c>l?l-i:c},calculateLast(e,t,n,r,i,a=!1){let o=t+r+2*i;return e>=i&&(o+=i+1),this.getLast(o,a)},onScrollChange(e){let{first:t,last:n,isRangeChanged:r,scrollPos:i}=this.onScrollPositionChange(e);if(r){let e={first:t,last:n};if(this.setContentPosition(e),this.first=t,this.last=n,this.lastScrollPos=i,this.$emit(`scroll-index-change`,e),this.lazy&&this.isPageChanged(t)){let e={first:this.step?Math.min(this.getPageByFirst(t)*this.step,(this.items?.length||0)-this.step):t,last:Math.min(this.step?(this.getPageByFirst(t)+1)*this.step:n,this.items?.length-1||0)};(this.lazyLoadState.first!==e.first||this.lazyLoadState.last!==e.last)&&this.$emit(`lazy-load`,e),this.lazyLoadState=e}}},onScroll(e){if(this.$emit(`scroll`,e),this.delay){if(this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.isPageChanged()){if(!this.d_loading&&this.showLoader){let{isRangeChanged:t}=this.onScrollPositionChange(e);(t||this.step&&this.isPageChanged())&&(this.d_loading=!0)}this.scrollTimeout=setTimeout(()=>{this.onScrollChange(e),this.d_loading&&this.showLoader&&(!this.lazy||this.loading===void 0)&&(this.d_loading=!1,this.page=this.getPageByFirst())},this.delay)}}else this.onScrollChange(e)},onResize(){this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout(()=>{if(_(this.element)){let e=this.isBoth(),n=this.isVertical(),i=this.isHorizontal(),[a,o]=[r(this.element),t(this.element)],[s,c]=[a!==this.defaultWidth,o!==this.defaultHeight];(e?s||c:i?s:n&&c)&&(this.d_numToleratedItems=this.numToleratedItems,this.defaultWidth=a,this.defaultHeight=o,this.defaultContentWidth=r(this.content),this.defaultContentHeight=t(this.content),this.init())}},this.resizeDelay)},bindResizeListener(){this.resizeListener||(this.resizeListener=this.onResize.bind(this),window.addEventListener(`resize`,this.resizeListener),window.addEventListener(`orientationchange`,this.resizeListener))},bindSizeObserver(){this.sizeObserver||!this.element||typeof ResizeObserver>`u`||(this.sizeObserver=new ResizeObserver(e=>{let t=e[0]?.borderBoxSize?.[0];this.observedWidth=t?t.inlineSize:e[0]?.contentRect.width??0,this.observedHeight=t?t.blockSize:e[0]?.contentRect.height??0}),this.sizeObserver.observe(this.element))},unbindSizeObserver(){this.sizeObserver&&=(this.sizeObserver.disconnect(),null)},unbindResizeListener(){this.resizeListener&&=(window.removeEventListener(`resize`,this.resizeListener),window.removeEventListener(`orientationchange`,this.resizeListener),null)},getOptions(e){let t=(this.items||[]).length,n=this.isBoth()?this.first.rows+e:this.first+e;return{index:n,count:t,first:n===0,last:n===t-1,even:n%2==0,odd:n%2!=0}},getLoaderOptions(e,t){let n=this.loaderArr.length;return{index:e,count:n,first:e===0,last:e===n-1,even:e%2==0,odd:e%2!=0,...t}},getPageByFirst(e){return Math.floor(((e??this.first)+this.d_numToleratedItems*4)/(this.step||1))},isPageChanged(e){return this.step&&!this.lazy?this.page!==this.getPageByFirst(e??this.first):!0},setContentEl(e){this.content=e||this.content||f(this.element,`[data-pc-section="content"]`)},elementRef(e){this.element=e},contentRef(e){this.content=e}}},_t=[`tabindex`];function vt(e,t,n,r,i,a){let o=Ce(`SpinnerIcon`);return e.disabled?(x(),E(M,{key:1},[L(e.$slots,`default`),L(e.$slots,`content`,{items:e.items,rows:e.items,columns:a.loadedColumns})],64)):(x(),E(`div`,b({key:0,ref:a.elementRef,class:a.containerClass,tabindex:e.tabindex,style:e.style},e.ptmi(`root`),{onScroll:t[0]||=(...e)=>a.onScroll&&a.onScroll(...e)}),[L(e.$slots,`content`,{styleClass:a.contentClass,items:a.loadedItems,getItemOptions:a.getOptions,loading:i.d_loading,getLoaderOptions:a.getLoaderOptions,itemSize:e.itemSize,rows:a.loadedRows,columns:a.loadedColumns,contentRef:a.contentRef,spacerStyle:i.spacerStyle,contentStyle:i.contentStyle,vertical:a.isVertical(),horizontal:a.isHorizontal(),both:a.isBoth()},()=>[T(`div`,b({ref:a.contentRef,class:a.contentClass,style:i.contentStyle},e.ptm(`content`)),[(x(!0),E(M,null,C(a.loadedItems,(t,n)=>L(e.$slots,`item`,{item:t,options:a.getOptions(n)},void 0,void 0,a.resolveItemKey(t,n))),128))],16)]),e.showSpacer?(x(),E(`div`,b({key:0,class:`p-virtualscroller-spacer`,style:i.spacerStyle},e.ptm(`spacer`)),null,16)):P(``,!0),!e.loaderDisabled&&e.showLoader&&i.d_loading?(x(),E(`div`,b({key:1,class:a.loaderClass},e.ptm(`loader`)),[e.$slots&&e.$slots.loader?(x(!0),E(M,{key:0},C(i.loaderArr,(t,n)=>L(e.$slots,`loader`,{options:a.getLoaderOptions(n,a.isBoth()&&{numCols:e.d_numItemsInViewport.cols})},void 0,void 0,n)),128)):P(``,!0),L(e.$slots,`loadingicon`,{},()=>[O(o,b({spin:``,class:`p-virtualscroller-loading-icon`},e.ptm(`loadingIcon`)),null,16)])],16)):P(``,!0)],16,_t))}var q=v(gt,[[`render`,vt]]),J={aspectRatio:1,gap:8,hasMore:!1,loadMore:void 0,itemKey:void 0},yt={class:`recordings-row`},bt={key:1,class:`pointer-events-none absolute bottom-2 left-1/2 -translate-x-1/2 z-10 rounded-full bg-black/60 p-1.5`},xt=v(F({__name:`CuiRecordingsGrid`,props:Oe({items:{},minItemWidth:{},aspectRatio:{},gap:{},hasMore:{type:Boolean},loadMore:{type:Function},itemKey:{type:Function}},J),setup(e,{expose:t}){let n=e,r=S(`containerRef`),{width:i,height:a}=m(r),o=D(0),s=D(!1),c=null,l=!1,u=N(()=>a.value>0?`${a.value}px`:void 0),d=N(()=>{let e=i.value;return e?Math.max(1,Math.floor((e+n.gap)/(n.minItemWidth+n.gap))):0}),f=N(()=>{let e=i.value,t=d.value;return!e||!t?0:Math.floor((e-(t-1)*n.gap)/t)}),p=N(()=>f.value?Math.floor(f.value/n.aspectRatio):0),h=N(()=>p.value?p.value+n.gap:0),g=N(()=>{let e=d.value;if(!e)return[];let t=[];for(let r=0;r<n.items.length;r+=e)t.push(n.items.slice(r,r+e));return t});function _(e){if(n.itemKey)return n.itemKey(e);let t=e;return t.id??t.key??JSON.stringify(e)}function ee(e){let t=e;if(t&&t.length!==0)return _(t[0])}async function te(){if(s.value||!n.hasMore||!n.loadMore||c!==null&&n.items.length===c)return;s.value=!0;let e=n.items.length;try{await Promise.resolve(n.loadMore())}finally{s.value=!1,c=n.items.length===e?e:null}}function ne(e){let t=e.target;t&&(o.value=t.scrollTop,t.scrollTop+t.clientHeight>=t.scrollHeight-h.value*3&&te())}function re(){(r.value?.querySelector(`.recordings-scroll`))?.scrollTo({top:0,behavior:`smooth`})}return Ae(()=>{let e=r.value;e&&f.value&&(e.style.setProperty(`--cell-w`,`${f.value}px`),e.style.setProperty(`--cell-h`,`${p.value}px`),e.style.setProperty(`--cell-gap`,`${n.gap}px`))}),ke([()=>n.items.length,a,h,()=>n.hasMore],()=>{l||(l=!0,Ee(()=>{l=!1,n.hasMore&&h.value&&a.value&&g.value.length*h.value<a.value+h.value&&te()}))},{flush:`post`}),t({scrollToTop:re,scrollY:o}),(e,t)=>{let n=q,i=ue;return x(),E(`div`,{ref_key:`containerRef`,ref:r,class:`recordings-grid-root relative`},[I(g).length>0&&I(f)>0?(x(),k(n,{key:0,items:I(g),"item-size":I(h),"scroll-height":I(u),"num-tolerated-items":I(2),"item-key":ee,orientation:`vertical`,class:`recordings-scroll`,onScroll:ne},{item:Se(({item:t})=>[T(`div`,yt,[(x(!0),E(M,null,C(t,t=>(x(),E(`div`,{key:_(t),class:`recordings-cell`},[L(e.$slots,`item`,{item:t},void 0,!0)]))),128))])]),_:3},8,[`items`,`item-size`,`scroll-height`,`num-tolerated-items`])):P(``,!0),I(s)?(x(),E(`div`,bt,[O(i,{width:`18px`,height:`18px`,class:`text-white`})])):P(``,!0)],512)}}}),[[`__scopeId`,`data-v-a672f3ff`]]);function Y(e){if(e.episode)return e.episode.endTime;if(e.segIndex!==void 0){let t=e.event.segments?.[e.segIndex];if(t)return t.firstSeen}return e.event.thumbnailAt??e.event.startTime}function X(e){let t=[];for(let n of e){let e=n.segments??[];if(e.length<=1){t.push({event:n,key:n.id});continue}e.forEach((e,r)=>{e&&t.push({event:n,key:`${n.id}:seg:${r}`,segIndex:r})})}return t.sort((e,t)=>Y(t)-Y(e)),t}export{ht as i,Y as n,xt as r,X as t};
@@ -1 +1 @@
1
- .card-icon-button[data-v-22b538a5]{cursor:pointer;background:#0009;border-radius:9999px;justify-content:center;align-items:center;padding:0;display:flex}.card-icon-button[data-v-22b538a5]:hover{background:#000c}.card-icon-button[data-v-22b538a5]:disabled{cursor:default}.carousel-nav[data-v-22b538a5]{background:#0006}.carousel-nav[data-v-22b538a5]:hover{background:#0009}.card-skeleton[data-v-22b538a5]{background:var(--p-skeleton-background,#ffffff0f);animation:1.4s ease-in-out infinite card-skeleton-pulse-22b538a5}@keyframes card-skeleton-pulse-22b538a5{50%{opacity:.55}}.recording-card[data-v-22b538a5]{contain:layout;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}@media (hover:hover) and (pointer:fine){.carousel-nav[data-v-22b538a5]{opacity:0}.recording-card:hover .carousel-nav[data-v-22b538a5],.recording-card:focus-within .carousel-nav[data-v-22b538a5]{opacity:1}}.recordings-grid-root[data-v-1270305c]{width:100%;height:100%;min-height:0}.recordings-scroll[data-v-1270305c]{overscroll-behavior:contain;scrollbar-width:none;scroll-snap-type:y proximity;width:100%;height:100%;overflow:hidden auto}.recordings-scroll[data-v-1270305c]::-webkit-scrollbar{display:none}.recordings-row[data-v-1270305c]{height:calc(var(--cell-h) + var(--cell-gap));align-items:stretch;gap:var(--cell-gap);scroll-snap-align:start;display:flex}.recordings-cell[data-v-1270305c]{width:var(--cell-w);height:var(--cell-h)}
1
+ .card-icon-button[data-v-22b538a5]{cursor:pointer;background:#0009;border-radius:9999px;justify-content:center;align-items:center;padding:0;display:flex}.card-icon-button[data-v-22b538a5]:hover{background:#000c}.card-icon-button[data-v-22b538a5]:disabled{cursor:default}.carousel-nav[data-v-22b538a5]{background:#0006}.carousel-nav[data-v-22b538a5]:hover{background:#0009}.card-skeleton[data-v-22b538a5]{background:var(--p-skeleton-background,#ffffff0f);animation:1.4s ease-in-out infinite card-skeleton-pulse-22b538a5}@keyframes card-skeleton-pulse-22b538a5{50%{opacity:.55}}.recording-card[data-v-22b538a5]{contain:layout;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}@media (hover:hover) and (pointer:fine){.carousel-nav[data-v-22b538a5]{opacity:0}.recording-card:hover .carousel-nav[data-v-22b538a5],.recording-card:focus-within .carousel-nav[data-v-22b538a5]{opacity:1}}.recordings-grid-root[data-v-a672f3ff]{width:100%;height:100%;min-height:0}.recordings-scroll[data-v-a672f3ff]{overscroll-behavior:contain;scrollbar-width:none;width:100%;height:100%;overflow:hidden auto}.recordings-scroll[data-v-a672f3ff]::-webkit-scrollbar{display:none}.recordings-row[data-v-a672f3ff]{height:calc(var(--cell-h) + var(--cell-gap));align-items:stretch;gap:var(--cell-gap);display:flex}.recordings-cell[data-v-a672f3ff]{width:var(--cell-w);height:var(--cell-h)}
@@ -1 +1 @@
1
- import{Dr as e,Rr as t,kr as n}from"./api-DK2Bav9D.js";import{K as r,Z as i,cr as a,dr as o,mr as s,sn as c}from"./vendor-DGke_6M4.js";import{f as l}from"./vendor-core-CnhnyKDl.js";import{l as u,u as d}from"./server-DUFhf2c_.js";import{n as f}from"./useServerRestart-Cz9eVHUE.js";import{t as p}from"./useUpdatesSocket-DnH9sON5.js";import{u as m}from"./plugins-eIUrXNeM.js";async function h({signal:e}={}){return(await t.get(`/updates/status`,{signal:e})).data}async function g(){return(await t.post(`/updates/run`)).data}async function _(){await t.post(`/updates/cancel`)}async function v(){await t.post(`/updates/check`,void 0,{timeout:6e4})}async function y(){return(await t.get(`/workers/config`)).data}async function b(e){return(await t.patch(`/workers/config`,e)).data}async function x(){return(await t.post(`/workers/pairings`)).data}async function S(e){await t.delete(`/workers/${e}`)}async function C(e){await t.post(`/workers/${e}/restart`)}async function w({agentId:e,version:n}){await t.post(`/workers/${e}/update`,n?{version:n}:{})}async function T({agentId:e,name:n}){await t.patch(`/workers/${e}`,{name:n})}async function E({cameraId:e,agentId:n}){return(await t.post(`/workers/assign`,{cameraId:e,agentId:n})).data}async function D({cameraId:e}){return(await t.post(`/workers/unassign`,{cameraId:e})).data}async function O({pluginName:e,agentId:n}){return(await t.post(`/workers/assign-plugin`,{pluginName:e,agentId:n})).data}async function k({pluginName:e}){return(await t.post(`/workers/unassign-plugin`,{pluginName:e})).data}var A=class{_queryClient=i();toast=n();getConfigQuery(){return e({queryKey:[`workersConfig`],queryFn:()=>y(),retry:!1})}patchConfigQuery(){return r({mutationFn:b,onSuccess:()=>this._queryClient.invalidateQueries({queryKey:[`workersConfig`]}),onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})}})}createPairingQuery(){return r({mutationFn:x})}removeWorkerQuery(){return r({mutationFn:S,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}assignCameraQuery(){return r({mutationFn:E,onMutate:({cameraId:e,agentId:t})=>this.patchCameraWorker(e,t),onError:(e,t,n)=>{n?.rollback(),this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}unassignCameraQuery(){return r({mutationFn:D,onMutate:({cameraId:e})=>this.patchCameraWorker(e,void 0),onError:(e,t,n)=>{n?.rollback(),this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}restartWorkerQuery(){return r({mutationFn:C})}updateWorkerQuery(){return r({mutationFn:w,onError:e=>{this.toast.add({severity:`error`,detail:e,life:5e3})}})}renameWorkerQuery(){return r({mutationFn:T,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})}})}assignPluginQuery(){return r({mutationFn:O,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`pluginsList`]})})}unassignPluginQuery(){return r({mutationFn:k,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`pluginsList`]})})}patchCameraWorker(e,t){let n=[];for(let[r,i]of this._queryClient.getQueriesData({queryKey:[`camerasList`]}))i?.result&&(n.push([r,i]),this._queryClient.setQueryData(r,{...i,result:i.result.map(n=>n._id===e?{...n,workerAgentId:t}:n)}));return{rollback:()=>{for(let[e,t]of n)this._queryClient.setQueryData(e,t)}}}},j=3e4,M=l(`updates`,()=>{let e=n(),t=p(),{beginServerRestart:r}=f(),i=s(null),l=o(!1),y=o(Date.now()),b=o(!1),x,S=null,C=c(()=>{let e=new Map;for(let t of i.value?.run?.active?i.value.run.items:i.value?.lastRun?.items??[])e.set(t.id,t);for(let t of i.value?.manual??[])e.set(t.id,t);return e}),T=c(()=>{let e=i.value?.pending;if(!e)return[];let t=[];t.push(W({id:`server`,kind:`server`,name:`camera.ui`,installedVersion:e.server.installedVersion,latestVersion:e.server.latestVersion??e.server.installedVersion,status:e.server.updateAvailable?e.server.blockedReason?`blocked`:`pending`:`uptodate`,blockedReason:e.server.updateAvailable?e.server.blockedReason:void 0}));for(let n of e.plugins)t.push(W({id:`plugin:${n.pluginName}`,kind:`plugin`,name:n.displayName||n.pluginName,packageName:n.pluginName,installedVersion:n.installedVersion,latestVersion:n.latestVersion??n.installedVersion,status:n.updateAvailable?`pending`:`uptodate`}));for(let n of e.workers)t.push(W({id:`worker:${n.agentId}`,kind:`worker`,name:n.name,installedVersion:n.installedVersion,latestVersion:e.targetServerVersion,status:n.updateAvailable?n.updatable?`pending`:`blocked`:`uptodate`,blockedReason:n.updateAvailable&&!n.updatable?n.blockedReason:void 0}));return t}),E=c(()=>i.value?.run?.active===!0),D=c(()=>i.value?.run?.cancelRequested===!0),O=c(()=>i.value?.lastRun?.finishedAt??null),k=c(()=>i.value?.run?.active?i.value.run.items.length:0),A=c(()=>i.value?.run?.active?i.value.run.items.filter(e=>e.status===`success`||e.status===`error`).length:0),M=c(()=>T.value.filter(e=>e.status===`pending`||e.status===`error`)),N=c(()=>M.value.length),P=c(()=>T.value.filter(e=>e.status===`error`)),F=c(()=>T.value.filter(e=>e.status===`updating`)),I=c(()=>F.value[0]),L=c(()=>T.value.find(e=>e.status===`restarting`)),R=c(()=>T.value.some(e=>e.kind===`server`&&(e.status===`updating`||e.status===`restarting`))),z=c(()=>F.value.some(e=>e.kind!==`server`)),B=c(()=>E.value||R.value||z.value),V=c(()=>i.value!==null&&N.value===0&&!B.value),H=c(()=>T.value.some(e=>e.kind===`server`&&(e.status===`pending`||e.status===`error`))),U=c(()=>i.value?.pending.targetServerVersion);function W(e){let t=C.value.get(e.id);return!t||t.status===`success`&&e.status===`uptodate`||t.status===`success`&&e.status===`pending`&&e.latestVersion!==t.targetVersion?e:{...e,status:t.status,error:t.error,latestVersion:t.targetVersion??e.latestVersion}}async function G(){return S||(S=h().then(e=>{i.value=e,y.value=Date.now()}).catch(()=>{}).finally(()=>{S=null}),S)}function K(){b.value||(b.value=!0,t.connect(),t.onStatus(()=>{G()}),G(),x??=setInterval(()=>G(),j))}async function q(){if(!B.value){l.value=!0;try{await v().catch(()=>{}),await G()}finally{l.value=!1}}}async function J(t){let n=T.value.find(e=>e.id===t);if(n&&!E.value&&(n.status===`pending`||n.status===`error`))try{n.kind===`plugin`?await m({pluginData:{pluginname:n.packageName??n.name,pluginversion:n.latestVersion??`latest`}}):n.kind===`worker`?await w({agentId:t.slice(7),version:U.value}):(await d({serverData:{version:n.latestVersion??`latest`}}),r(),await u())}catch(t){e.add({severity:`error`,detail:t?.response?.data?.message??t?.message,life:5e3})}finally{G()}}async function Y(){if(!(B.value||N.value===0))try{await g()}catch(t){e.add({severity:`error`,detail:t?.response?.data?.message??t?.message,life:5e3})}finally{G()}}async function X(){if(E.value)try{await _()}catch{}finally{G()}}function Z(e){return T.value.filter(t=>t.kind===e)}return a(()=>{x&&clearInterval(x)}),{status:i,items:T,runActive:E,cancelRequested:D,runFinishedAt:O,isChecking:l,checkedAt:y,runTotal:k,runDone:A,pendingItems:M,pendingCount:N,failedItems:P,updatingItems:F,updatingItem:I,restartingItem:L,serverBusy:R,targetsBusy:z,busy:B,allUpToDate:V,serverPending:H,targetServerVersion:U,connect:K,refresh:q,updateItem:J,updateAll:Y,cancelRun:X,itemsOf:Z}});export{A as n,M as t};
1
+ import{Ar as e,Or as t,zr as n}from"./api-C1mraOYr.js";import{K as r,Z as i,cr as a,dr as o,mr as s,sn as c}from"./vendor-gFkr2qsZ.js";import{f as l}from"./vendor-core-B-Q4es-f.js";import{l as u,u as d}from"./server-Btp5KILd.js";import{n as f}from"./useServerRestart-CxJGxAcU.js";import{t as p}from"./useUpdatesSocket-DKDRZhvc.js";import{u as m}from"./plugins-09rEDbMz.js";async function h({signal:e}={}){return(await n.get(`/updates/status`,{signal:e})).data}async function g(){return(await n.post(`/updates/run`)).data}async function _(){await n.post(`/updates/cancel`)}async function v(){await n.post(`/updates/check`,void 0,{timeout:6e4})}async function y(){return(await n.get(`/workers/config`)).data}async function b(e){return(await n.patch(`/workers/config`,e)).data}async function x(){return(await n.post(`/workers/pairings`)).data}async function S(e){await n.delete(`/workers/${e}`)}async function C(e){await n.post(`/workers/${e}/restart`)}async function w({agentId:e,version:t}){await n.post(`/workers/${e}/update`,t?{version:t}:{})}async function T({agentId:e,name:t}){await n.patch(`/workers/${e}`,{name:t})}async function E({cameraId:e,agentId:t}){return(await n.post(`/workers/assign`,{cameraId:e,agentId:t})).data}async function D({cameraId:e}){return(await n.post(`/workers/unassign`,{cameraId:e})).data}async function O({pluginName:e,agentId:t}){return(await n.post(`/workers/assign-plugin`,{pluginName:e,agentId:t})).data}async function k({pluginName:e}){return(await n.post(`/workers/unassign-plugin`,{pluginName:e})).data}var A=class{_queryClient=i();toast=e();getConfigQuery(){return t({queryKey:[`workersConfig`],queryFn:()=>y(),retry:!1})}patchConfigQuery(){return r({mutationFn:b,onSuccess:()=>this._queryClient.invalidateQueries({queryKey:[`workersConfig`]}),onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})}})}createPairingQuery(){return r({mutationFn:x})}removeWorkerQuery(){return r({mutationFn:S,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}assignCameraQuery(){return r({mutationFn:E,onMutate:({cameraId:e,agentId:t})=>this.patchCameraWorker(e,t),onError:(e,t,n)=>{n?.rollback(),this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}unassignCameraQuery(){return r({mutationFn:D,onMutate:({cameraId:e})=>this.patchCameraWorker(e,void 0),onError:(e,t,n)=>{n?.rollback(),this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}restartWorkerQuery(){return r({mutationFn:C})}updateWorkerQuery(){return r({mutationFn:w,onError:e=>{this.toast.add({severity:`error`,detail:e,life:5e3})}})}renameWorkerQuery(){return r({mutationFn:T,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})}})}assignPluginQuery(){return r({mutationFn:O,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`pluginsList`]})})}unassignPluginQuery(){return r({mutationFn:k,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`pluginsList`]})})}patchCameraWorker(e,t){let n=[];for(let[r,i]of this._queryClient.getQueriesData({queryKey:[`camerasList`]}))i?.result&&(n.push([r,i]),this._queryClient.setQueryData(r,{...i,result:i.result.map(n=>n._id===e?{...n,workerAgentId:t}:n)}));return{rollback:()=>{for(let[e,t]of n)this._queryClient.setQueryData(e,t)}}}},j=3e4,M=l(`updates`,()=>{let t=e(),n=p(),{beginServerRestart:r}=f(),i=s(null),l=o(!1),y=o(Date.now()),b=o(!1),x,S=null,C=c(()=>{let e=new Map;for(let t of i.value?.run?.active?i.value.run.items:i.value?.lastRun?.items??[])e.set(t.id,t);for(let t of i.value?.manual??[])e.set(t.id,t);return e}),T=c(()=>{let e=i.value?.pending;if(!e)return[];let t=[];t.push(W({id:`server`,kind:`server`,name:`camera.ui`,installedVersion:e.server.installedVersion,latestVersion:e.server.latestVersion??e.server.installedVersion,status:e.server.updateAvailable?e.server.blockedReason?`blocked`:`pending`:`uptodate`,blockedReason:e.server.updateAvailable?e.server.blockedReason:void 0}));for(let n of e.plugins)t.push(W({id:`plugin:${n.pluginName}`,kind:`plugin`,name:n.displayName||n.pluginName,packageName:n.pluginName,installedVersion:n.installedVersion,latestVersion:n.latestVersion??n.installedVersion,status:n.updateAvailable?`pending`:`uptodate`}));for(let n of e.workers)t.push(W({id:`worker:${n.agentId}`,kind:`worker`,name:n.name,installedVersion:n.installedVersion,latestVersion:e.targetServerVersion,status:n.updateAvailable?n.updatable?`pending`:`blocked`:`uptodate`,blockedReason:n.updateAvailable&&!n.updatable?n.blockedReason:void 0}));return t}),E=c(()=>i.value?.run?.active===!0),D=c(()=>i.value?.run?.cancelRequested===!0),O=c(()=>i.value?.lastRun?.finishedAt??null),k=c(()=>i.value?.run?.active?i.value.run.items.length:0),A=c(()=>i.value?.run?.active?i.value.run.items.filter(e=>e.status===`success`||e.status===`error`).length:0),M=c(()=>T.value.filter(e=>e.status===`pending`||e.status===`error`)),N=c(()=>M.value.length),P=c(()=>T.value.filter(e=>e.status===`error`)),F=c(()=>T.value.filter(e=>e.status===`updating`)),I=c(()=>F.value[0]),L=c(()=>T.value.find(e=>e.status===`restarting`)),R=c(()=>T.value.some(e=>e.kind===`server`&&(e.status===`updating`||e.status===`restarting`))),z=c(()=>F.value.some(e=>e.kind!==`server`)),B=c(()=>E.value||R.value||z.value),V=c(()=>i.value!==null&&N.value===0&&!B.value),H=c(()=>T.value.some(e=>e.kind===`server`&&(e.status===`pending`||e.status===`error`))),U=c(()=>i.value?.pending.targetServerVersion);function W(e){let t=C.value.get(e.id);return!t||t.status===`success`&&e.status===`uptodate`||t.status===`success`&&e.status===`pending`&&e.latestVersion!==t.targetVersion?e:{...e,status:t.status,error:t.error,latestVersion:t.targetVersion??e.latestVersion}}async function G(){return S||(S=h().then(e=>{i.value=e,y.value=Date.now()}).catch(()=>{}).finally(()=>{S=null}),S)}function K(){b.value||(b.value=!0,n.connect(),n.onStatus(()=>{G()}),G(),x??=setInterval(()=>G(),j))}async function q(){if(!B.value){l.value=!0;try{await v().catch(()=>{}),await G()}finally{l.value=!1}}}async function J(e){let n=T.value.find(t=>t.id===e);if(n&&!E.value&&(n.status===`pending`||n.status===`error`))try{n.kind===`plugin`?await m({pluginData:{pluginname:n.packageName??n.name,pluginversion:n.latestVersion??`latest`}}):n.kind===`worker`?await w({agentId:e.slice(7),version:U.value}):(await d({serverData:{version:n.latestVersion??`latest`}}),r(),await u())}catch(e){t.add({severity:`error`,detail:e?.response?.data?.message??e?.message,life:5e3})}finally{G()}}async function Y(){if(!(B.value||N.value===0))try{await g()}catch(e){t.add({severity:`error`,detail:e?.response?.data?.message??e?.message,life:5e3})}finally{G()}}async function X(){if(E.value)try{await _()}catch{}finally{G()}}function Z(e){return T.value.filter(t=>t.kind===e)}return a(()=>{x&&clearInterval(x)}),{status:i,items:T,runActive:E,cancelRequested:D,runFinishedAt:O,isChecking:l,checkedAt:y,runTotal:k,runDone:A,pendingItems:M,pendingCount:N,failedItems:P,updatingItems:F,updatingItem:I,restartingItem:L,serverBusy:R,targetsBusy:z,busy:B,allUpToDate:V,serverPending:H,targetServerVersion:U,connect:K,refresh:q,updateItem:J,updateAll:Y,cancelRun:X,itemsOf:Z}});export{A as n,M as t};
@@ -1 +1 @@
1
- import{In as e,cn as t,dn as n,sr as r}from"./vendor-DGke_6M4.js";var i={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function a(r,a){return e(),n(`svg`,i,[...a[0]||=[t(`path`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2M7 9l5-5l5 5m-5-5v12`},null,-1)]])}var o=r({name:`tabler-upload`,render:a});export{o as t};
1
+ import{In as e,cn as t,dn as n,sr as r}from"./vendor-gFkr2qsZ.js";var i={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function a(r,a){return e(),n(`svg`,i,[...a[0]||=[t(`path`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2M7 9l5-5l5 5m-5-5v12`},null,-1)]])}var o=r({name:`tabler-upload`,render:a});export{o as t};
@@ -1 +1 @@
1
- import{In as e,cn as t,dn as n,sr as r}from"./vendor-DGke_6M4.js";var i={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function a(r,a){return e(),n(`svg`,i,[...a[0]||=[t(`path`,{fill:`currentColor`,d:`M9 16v-6H5l7-7l7 7h-4v6zm-4 4v-2h14v2z`},null,-1)]])}var o=r({name:`mdi-upload`,render:a});export{o as t};
1
+ import{In as e,cn as t,dn as n,sr as r}from"./vendor-gFkr2qsZ.js";var i={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function a(r,a){return e(),n(`svg`,i,[...a[0]||=[t(`path`,{fill:`currentColor`,d:`M9 16v-6H5l7-7l7 7h-4v6zm-4 4v-2h14v2z`},null,-1)]])}var o=r({name:`mdi-upload`,render:a});export{o as t};
@@ -1 +1 @@
1
- import"./api-DK2Bav9D.js";import{dr as e}from"./vendor-DGke_6M4.js";import{i as t}from"./intercomService-BnA-FQ0Q.js";function n(){let{electron:n}=t(),r=e(null);return{uiVersion:`2.0.0`,appVersion:r,nativeVersion:e(null),refreshAppVersion:async()=>{if(n)try{let e=await n.invoke(`get-app-version`);r.value=typeof e==`string`?e:null}catch{r.value=null}}}}export{n as t};
1
+ import"./api-C1mraOYr.js";import{dr as e}from"./vendor-gFkr2qsZ.js";import{i as t}from"./intercomService-CjoJaOZ7.js";function n(){let{electron:n}=t(),r=e(null);return{uiVersion:`2.0.0`,appVersion:r,nativeVersion:e(null),refreshAppVersion:async()=>{if(n)try{let e=await n.invoke(`get-app-version`);r.value=typeof e==`string`?e:null}catch{r.value=null}}}}export{n as t};
@@ -1 +1 @@
1
- import{Ai as e}from"./vendor-cameraui-QXD8jkcj.js";import{fr as t}from"./vendor-DGke_6M4.js";var n=t(new Map);function r(){function t(t){n.set(t.name,t),e(()=>{n.get(t.name)===t&&n.delete(t.name)})}function r(){return Array.from(n.values()).map(({name:e,description:t})=>({name:e,description:t}))}async function i(e,t){let r=n.get(e);if(!r)throw Error(`No action "${e}" on this page`);return r.run(t)}return{register:t,list:r,run:i}}export{r as t};
1
+ import{Mi as e}from"./vendor-cameraui-CK4yHsJi.js";import{fr as t}from"./vendor-gFkr2qsZ.js";var n=t(new Map);function r(){function t(t){n.set(t.name,t),e(()=>{n.get(t.name)===t&&n.delete(t.name)})}function r(){return Array.from(n.values()).map(({name:e,description:t})=>({name:e,description:t}))}async function i(e,t){let r=n.get(e);if(!r)throw Error(`No action "${e}" on this page`);return r.run(t)}return{register:t,list:r,run:i}}export{r as t};
@@ -0,0 +1 @@
1
+ import{Ar as e,_ as t,s as n,zr as r}from"./api-C1mraOYr.js";import{dr as i}from"./vendor-gFkr2qsZ.js";import{l as a}from"./server-Btp5KILd.js";import{n as o}from"./useServerRestart-CxJGxAcU.js";var s=3e5;async function c(e){return(await r.post(`/backup/download`,{localStorage:e},{responseType:`arraybuffer`,timeout:s})).data}async function l(e,t){return(await r.post(`/backup/restore`,e,{timeout:s,onUploadProgress:e=>{e.total&&t?.(Math.round(e.loaded/e.total*100))}})).data}async function u(){return(await r.get(`/backup/scheduler`)).data}async function d(e){return(await r.patch(`/backup/scheduler`,e)).data}async function f(){return(await r.post(`/backup/scheduler/run`)).data}async function p(e){return(await r.get(`/backup/scheduler/backups/${encodeURIComponent(e)}`,{responseType:`arraybuffer`,timeout:s})).data}async function m(e){await r.delete(`/backup/scheduler/backups/${encodeURIComponent(e)}`)}var h=i(!1),g=i(`idle`),_=i(0),v=i(``),y=h;function b(e){e.theme&&localStorage.setItem(`theme`,JSON.stringify(e.theme)),e.language&&localStorage.setItem(`language`,e.language),e.ui&&localStorage.setItem(`ui`,JSON.stringify(e.ui))}function x(){async function r(r){let i=e();h.value=!0,g.value=`uploading`,_.value=0,v.value=``;try{let e=new FormData;e.append(`upload`,r),b(await l(e,e=>{_.value=e,e>=100&&(g.value=`restoring`)}))}catch(e){return h.value=!1,g.value=`idle`,v.value=n(e),i.add({severity:`error`,detail:v.value,life:1e4}),!1}g.value=`restarting`;let{beginServerRestart:s}=o();return s(),await a().catch(()=>{}),await t().logout(),h.value=!1,g.value=`idle`,!0}return{active:h,phase:g,uploadPercent:_,lastError:v,restoreLocalStorage:b,run:r}}export{p as a,f as c,c as i,x as n,u as o,m as r,d as s,y as t};
@@ -1 +1 @@
1
- import{Vr as e,yt as t}from"./vendor-cameraui-QXD8jkcj.js";import{It as n}from"./api-DK2Bav9D.js";import{sn as r}from"./vendor-DGke_6M4.js";import{A as i,N as a}from"./types-5rE8Tz0_.js";function o(){let{data:e}=new n().getCamerasQuery({page:1,pageSize:-1});function t(t){return e.value?.result?.find(e=>e._id===t)?.name}return{cameraName:t}}function s(){let o=new n,{t:s}=e(),{data:c}=o.getCamerasQuery({page:1,pageSize:-1}),l=r(()=>c.value?.result??[]),u=r(()=>l.value.map(e=>({label:e.name,value:e._id})));function d(e){let{sensors:n,isLoading:i}=t(),a=r(()=>n.value.filter(t=>e?.(t)??!0).map(e=>{let t=s(`components.camera_options.sensor_type_${e.type}`),n=e.assignedCameraIds.value.map(e=>l.value.find(t=>t._id===e)?.name).filter(Boolean).join(`, `);return{label:`${e.displayName.value||e.name} (${t}${n?` · ${n}`:``})`,value:e.id,type:e.type}}));function o(e){return e?n.value.find(t=>t.id===e):void 0}return{sensorOptions:a,sensorById:o,isLoading:i}}function f(e,t=`observable`){return(t===`writable`?a(e):i(e)).map(e=>({label:s(`components.automation_nodes.sensor_property_${e}`),value:e}))}return{cameras:l,cameraOptions:u,useSensorOptions:d,getPropertiesForSensor:f}}export{s as n,o as t};
1
+ import{Ur as e,bt as t}from"./vendor-cameraui-CK4yHsJi.js";import{It as n}from"./api-C1mraOYr.js";import{sn as r}from"./vendor-gFkr2qsZ.js";import{A as i,N as a}from"./types-BAwhu9iv.js";function o(){let{data:e}=new n().getCamerasQuery({page:1,pageSize:-1});function t(t){return e.value?.result?.find(e=>e._id===t)?.name}return{cameraName:t}}function s(){let o=new n,{t:s}=e(),{data:c}=o.getCamerasQuery({page:1,pageSize:-1}),l=r(()=>c.value?.result??[]),u=r(()=>l.value.map(e=>({label:e.name,value:e._id})));function d(e){let{sensors:n,isLoading:i}=t(),a=r(()=>n.value.filter(t=>e?.(t)??!0).map(e=>{let t=s(`components.camera_options.sensor_type_${e.type}`),n=e.assignedCameraIds.value.map(e=>l.value.find(t=>t._id===e)?.name).filter(Boolean).join(`, `);return{label:`${e.displayName.value||e.name} (${t}${n?` · ${n}`:``})`,value:e.id,type:e.type}}));function o(e){return e?n.value.find(t=>t.id===e):void 0}return{sensorOptions:a,sensorById:o,isLoading:i}}function f(e,t=`observable`){return(t===`writable`?a(e):i(e)).map(e=>({label:s(`components.automation_nodes.sensor_property_${e}`),value:e}))}return{cameras:l,cameraOptions:u,useSensorOptions:d,getPropertiesForSensor:f}}export{s as n,o as t};
@@ -1 +1 @@
1
- import"./api-DK2Bav9D.js";import{dr as e,ur as t}from"./vendor-DGke_6M4.js";var n=new Set([`button`,`checkbox`,`radio`,`range`,`submit`,`reset`,`file`,`color`,`image`]),r=e(0),i=!1;function a(e){return e instanceof HTMLTextAreaElement?!e.readOnly&&!e.disabled:e instanceof HTMLInputElement?!e.readOnly&&!e.disabled&&!n.has(e.type):e instanceof HTMLElement&&e.isContentEditable}function o(){return{keyboardInset:t(r)}}function s(){if(i||typeof window>`u`||(i=!0,navigator.maxTouchPoints===0))return;let e=window.innerHeight,t=()=>{let t=window.visualViewport;if(t){if(!a(document.activeElement)){c(0);return}c(Math.max(0,e-t.height-t.offsetTop))}};window.addEventListener(`resize`,()=>{e=window.innerHeight,t()}),window.visualViewport?.addEventListener(`resize`,t),window.visualViewport?.addEventListener(`scroll`,t),document.addEventListener(`focusin`,()=>setTimeout(t,50)),document.addEventListener(`focusout`,()=>setTimeout(t,50))}function c(e){e!==r.value&&(r.value=e,document.documentElement.style.setProperty(`--keyboard-inset`,`${e}px`))}export{s as n,o as r,a as t};
1
+ import"./api-C1mraOYr.js";import{dr as e,ur as t}from"./vendor-gFkr2qsZ.js";var n=new Set([`button`,`checkbox`,`radio`,`range`,`submit`,`reset`,`file`,`color`,`image`]),r=e(0),i=!1;function a(e){return e instanceof HTMLTextAreaElement?!e.readOnly&&!e.disabled:e instanceof HTMLInputElement?!e.readOnly&&!e.disabled&&!n.has(e.type):e instanceof HTMLElement&&e.isContentEditable}function o(){return{keyboardInset:t(r)}}function s(){if(i||typeof window>`u`||(i=!0,navigator.maxTouchPoints===0))return;let e=window.innerHeight,t=()=>{let t=window.visualViewport;if(t){if(!a(document.activeElement)){c(0);return}c(Math.max(0,e-t.height-t.offsetTop))}};window.addEventListener(`resize`,()=>{e=window.innerHeight,t()}),window.visualViewport?.addEventListener(`resize`,t),window.visualViewport?.addEventListener(`scroll`,t),document.addEventListener(`focusin`,()=>setTimeout(t,50)),document.addEventListener(`focusout`,()=>setTimeout(t,50))}function c(e){e!==r.value&&(r.value=e,document.documentElement.style.setProperty(`--keyboard-inset`,`${e}px`))}export{s as n,o as r,a as t};
@@ -1 +1 @@
1
- import{vr as e}from"./api-DK2Bav9D.js";import{Xn as t}from"./vendor-DGke_6M4.js";function n(n={}){let{target:r,onStdout:i,onDisconnect:a,onClearLog:o,onReconnected:s}=n,c=e(`/logs`),l=null,u=null,d=r,f=!1,p=0;r&&c.on(`stdout/${r}`,e=>i?.(e)),c.on(`clear-log`,e=>o?.(e??`all`)),c.onReady(()=>{f&&s?.(),f=!0,l?.()}),t(c.connected,(e,t)=>{!e&&t&&a?.()});function m(){}function h(){}function g(e){e>0&&(p=e),d&&e>0&&c.emit(`term-size`,{target:d,cols:e})}function _(e){return e.kind===`all`?`stdout`:e.kind===`system`?`stdout/system/${e.id}`:`stdout/${e.id}`}function v(e,t){u?.(),u=c.on(_(e),e=>i?.(e)),d=e.kind===`all`?void 0:e.id,p>0&&g(p),l=()=>{switch(e.kind){case`all`:c.emit(`get-all-logs`);break;case`system`:c.emit(`get-system-log`,e.id,t);break;case`camera`:c.emit(`get-camera-log`,e.id,t);break;case`plugin`:c.emit(`get-plugin-log`,e.id,t)}},l()}function y(){l=()=>c.emit(`get-all-logs`),l()}function b(e,t){l=()=>c.emit(`get-camera-log`,e,t),l()}function x(e,t){l=()=>c.emit(`get-plugin-log`,e,t),l()}return{isConnected:c.connected,connect:m,disconnect:h,reportSize:g,switchSource:v,requestAllLogs:y,requestCameraLog:b,requestPluginLog:x}}export{n as t};
1
+ import{yr as e}from"./api-C1mraOYr.js";import{Xn as t}from"./vendor-gFkr2qsZ.js";function n(n={}){let{target:r,onStdout:i,onDisconnect:a,onClearLog:o,onReconnected:s}=n,c=e(`/logs`),l=null,u=null,d=r,f=!1,p=0;r&&c.on(`stdout/${r}`,e=>i?.(e)),c.on(`clear-log`,e=>o?.(e??`all`)),c.onReady(()=>{f&&s?.(),f=!0,l?.()}),t(c.connected,(e,t)=>{!e&&t&&a?.()});function m(){}function h(){}function g(e){e>0&&(p=e),d&&e>0&&c.emit(`term-size`,{target:d,cols:e})}function _(e){return e.kind===`all`?`stdout`:e.kind===`system`?`stdout/system/${e.id}`:`stdout/${e.id}`}function v(e,t){u?.(),u=c.on(_(e),e=>i?.(e)),d=e.kind===`all`?void 0:e.id,p>0&&g(p),l=()=>{switch(e.kind){case`all`:c.emit(`get-all-logs`);break;case`system`:c.emit(`get-system-log`,e.id,t);break;case`camera`:c.emit(`get-camera-log`,e.id,t);break;case`plugin`:c.emit(`get-plugin-log`,e.id,t)}},l()}function y(){l=()=>c.emit(`get-all-logs`),l()}function b(e,t){l=()=>c.emit(`get-camera-log`,e,t),l()}function x(e,t){l=()=>c.emit(`get-plugin-log`,e,t),l()}return{isConnected:c.connected,connect:m,disconnect:h,reportSize:g,switchSource:v,requestAllLogs:y,requestCameraLog:b,requestPluginLog:x}}export{n as t};
@@ -1 +1 @@
1
- import{Sn as e,_ as t,x as n}from"./api-DK2Bav9D.js";import{sn as r}from"./vendor-DGke_6M4.js";import{p as i}from"./vendor-core-CnhnyKDl.js";var a=[`main`,`manage`,`system`],o=[`main`,`manage`,`system`,`settings`],s={main:!1,manage:!1,system:!0,settings:!0};function c(e){return e.meta?.navbar?.position===`top`?`main`:e.meta?.navbar?.group??`main`}function l(){let a=t(),{user:l}=i(a),u=r(()=>l.value?.navLayout??{}),d=r(()=>{let t=[];for(let r of n)r.meta?.navbar&&(r.meta.navbar.position===`top`||r.meta.navbar.group)&&e(r)&&t.push({route:r,name:r.name,labelKey:r.name.toLowerCase(),to:r.path,icon:r.meta.navbar.icon.default,activeIcon:r.meta.navbar.icon.active,defaultGroup:c(r),kind:`page`});let r=n.find(e=>e.name===`Settings`);for(let n of r?.children??[])n.meta?.settingsBar&&e(n)&&t.push({route:n,name:n.name,labelKey:n.meta.name,to:`/settings/${n.path}`,icon:n.meta.settingsBar.icon.default,activeIcon:n.meta.settingsBar.icon.active,defaultGroup:`settings`,kind:`settings`});return t}),f=r(()=>{let e=new Map(d.value.map(e=>[e.name,e])),t={main:[],manage:[],system:[],settings:[]},n=new Set;for(let r of o)for(let i of u.value.order?.[r]??[]){let a=e.get(i);a&&!n.has(i)&&(t[r].push(a),n.add(i))}for(let e of d.value)n.has(e.name)||t[e.defaultGroup].push(e);return t}),p=r(()=>new Set(u.value.hidden??[])),m=r(()=>u.value.settingsInNav??!1);function h(e){if(!l.value)return;let t={...u.value,...e};for(let e of Object.keys(t))t[e]===void 0&&delete t[e];t.order&&Object.keys(t.order).length===0&&delete t.order,t.collapsible&&Object.keys(t.collapsible).length===0&&delete t.collapsible,t.hidden&&t.hidden.length===0&&delete t.hidden,t.settingsInNav||delete t.settingsInNav;let n=Object.keys(t).length?t:null;l.value={...l.value,navLayout:n},a.updateUser({preferences:{navLayout:n}})}function g(e){return u.value.collapsible?.[e]??s[e]}function _(e,t){let n={...u.value.collapsible};t===s[e]?delete n[e]:n[e]=t,h({collapsible:n})}function v(e){h({settingsInNav:e})}function y(e){return p.value.has(e)}function b(e){let t=new Set(p.value);t.has(e)?t.delete(e):t.add(e),h({hidden:[...t]})}function x(e){let t={main:[...e.main],manage:[...e.manage],system:[...e.system],settings:[...e.settings]},n=u.value.order;n&&o.every(e=>{let r=n[e]??[];return r.length===t[e].length&&r.every((n,r)=>n===t[e][r])})||h({order:t})}function S(){h({order:void 0,hidden:void 0})}return{entries:d,groups:f,settingsInNav:m,isCollapsible:g,isHidden:y,toggleHidden:b,setCollapsible:_,setSettingsInNav:v,persistOrder:x,resetOrder:S}}export{a as n,l as r,o as t};
1
+ import{Cn as e,_ as t,x as n}from"./api-C1mraOYr.js";import{sn as r}from"./vendor-gFkr2qsZ.js";import{p as i}from"./vendor-core-B-Q4es-f.js";var a=[`main`,`manage`,`system`],o=[`main`,`manage`,`system`,`settings`],s={main:!1,manage:!1,system:!0,settings:!0};function c(e){return e.meta?.navbar?.position===`top`?`main`:e.meta?.navbar?.group??`main`}function l(){let a=t(),{user:l}=i(a),u=r(()=>l.value?.navLayout??{}),d=r(()=>{let t=[];for(let r of n)r.meta?.navbar&&(r.meta.navbar.position===`top`||r.meta.navbar.group)&&e(r)&&t.push({route:r,name:r.name,labelKey:r.name.toLowerCase(),to:r.path,icon:r.meta.navbar.icon.default,activeIcon:r.meta.navbar.icon.active,defaultGroup:c(r),kind:`page`});let r=n.find(e=>e.name===`Settings`);for(let n of r?.children??[])n.meta?.settingsBar&&e(n)&&t.push({route:n,name:n.name,labelKey:n.meta.name,to:`/settings/${n.path}`,icon:n.meta.settingsBar.icon.default,activeIcon:n.meta.settingsBar.icon.active,defaultGroup:`settings`,kind:`settings`});return t}),f=r(()=>{let e=new Map(d.value.map(e=>[e.name,e])),t={main:[],manage:[],system:[],settings:[]},n=new Set;for(let r of o)for(let i of u.value.order?.[r]??[]){let a=e.get(i);a&&!n.has(i)&&(t[r].push(a),n.add(i))}for(let e of d.value)n.has(e.name)||t[e.defaultGroup].push(e);return t}),p=r(()=>new Set(u.value.hidden??[])),m=r(()=>u.value.settingsInNav??!1);function h(e){if(!l.value)return;let t={...u.value,...e};for(let e of Object.keys(t))t[e]===void 0&&delete t[e];t.order&&Object.keys(t.order).length===0&&delete t.order,t.collapsible&&Object.keys(t.collapsible).length===0&&delete t.collapsible,t.hidden&&t.hidden.length===0&&delete t.hidden,t.settingsInNav||delete t.settingsInNav;let n=Object.keys(t).length?t:null;l.value={...l.value,navLayout:n},a.updateUser({preferences:{navLayout:n}})}function g(e){return u.value.collapsible?.[e]??s[e]}function _(e,t){let n={...u.value.collapsible};t===s[e]?delete n[e]:n[e]=t,h({collapsible:n})}function v(e){h({settingsInNav:e})}function y(e){return p.value.has(e)}function b(e){let t=new Set(p.value);t.has(e)?t.delete(e):t.add(e),h({hidden:[...t]})}function x(e){let t={main:[...e.main],manage:[...e.manage],system:[...e.system],settings:[...e.settings]},n=u.value.order;n&&o.every(e=>{let r=n[e]??[];return r.length===t[e].length&&r.every((n,r)=>n===t[e][r])})||h({order:t})}function S(){h({order:void 0,hidden:void 0})}return{entries:d,groups:f,settingsInNav:m,isCollapsible:g,isHidden:y,toggleHidden:b,setCollapsible:_,setSettingsInNav:v,persistOrder:x,resetOrder:S}}export{a as n,l as r,o as t};
@@ -1 +1 @@
1
- import{lr as e}from"./vendor-DGke_6M4.js";import{i as t}from"./intercomService-BnA-FQ0Q.js";var n=e({microphone:`unknown`,location:`unknown`,notifications:`unknown`});function r(){let{isElectronApp:e,electron:r}=t(),a=e;async function o(){await Promise.all([s(),c(),l()])}async function s(){if(e&&r){n.microphone=await r.invoke(`get-mic-access`)??`unknown`;return}n.microphone=await i(`microphone`)}async function c(){n.location=await i(`geolocation`)}async function l(){if(typeof Notification>`u`){n.notifications=`unknown`;return}n.notifications=Notification.permission==="default"?`prompt`:Notification.permission}async function u(t){if(t===`microphone`){if(e&&r)await r.invoke(`ask-mic-access`);else try{(await navigator.mediaDevices.getUserMedia({audio:!0})).getTracks().forEach(e=>e.stop())}catch{}await s();return}if(t===`location`){await new Promise(e=>{navigator.geolocation.getCurrentPosition(()=>e(),()=>e(),{timeout:1e4})}),await c();return}typeof Notification<`u`&&await Notification.requestPermission(),await l()}async function d(){e&&r&&await r.invoke(`open-mic-settings`)}return{states:n,canOpenSettings:a,refresh:o,request:u,openSettings:d}}async function i(e){try{let t=await navigator.permissions.query({name:e});return t.state===`granted`?`granted`:t.state===`denied`?`denied`:`prompt`}catch{return`unknown`}}export{r as t};
1
+ import{lr as e}from"./vendor-gFkr2qsZ.js";import{i as t}from"./intercomService-CjoJaOZ7.js";var n=e({microphone:`unknown`,location:`unknown`,notifications:`unknown`});function r(){let{isElectronApp:e,electron:r}=t(),a=e;async function o(){await Promise.all([s(),c(),l()])}async function s(){if(e&&r){n.microphone=await r.invoke(`get-mic-access`)??`unknown`;return}n.microphone=await i(`microphone`)}async function c(){n.location=await i(`geolocation`)}async function l(){if(typeof Notification>`u`){n.notifications=`unknown`;return}n.notifications=Notification.permission==="default"?`prompt`:Notification.permission}async function u(t){if(t===`microphone`){if(e&&r)await r.invoke(`ask-mic-access`);else try{(await navigator.mediaDevices.getUserMedia({audio:!0})).getTracks().forEach(e=>e.stop())}catch{}await s();return}if(t===`location`){await new Promise(e=>{navigator.geolocation.getCurrentPosition(()=>e(),()=>e(),{timeout:1e4})}),await c();return}typeof Notification<`u`&&await Notification.requestPermission(),await l()}async function d(){e&&r&&await r.invoke(`open-mic-settings`)}return{states:n,canOpenSettings:a,refresh:o,request:u,openSettings:d}}async function i(e){try{let t=await navigator.permissions.query({name:e});return t.state===`granted`?`granted`:t.state===`denied`?`denied`:`prompt`}catch{return`unknown`}}export{r as t};
@@ -1 +1 @@
1
- import{lr as e,nr as t}from"./vendor-DGke_6M4.js";import{t as n}from"./useLogsSocket-BlFxVXjF.js";var r=2e3,i=e({});function a(){function e(e){return i[e]}function a(e){return i[e]?.status===`updating`}async function o(e,a,o){if(i[e]?.status===`updating`)return!1;i[e]={status:`updating`,lines:[],version:a};let s=i[e],c=t(!0);c.run(()=>{n({target:e,onStdout:e=>{s.lines.push(e),s.lines.length>r&&s.lines.splice(0,s.lines.length-r)}})});try{return await o(),s.status=`success`,!0}catch(e){return s.status=`error`,s.error=e?.response?.data?.message??e?.message??String(e),!1}finally{c.stop()}}return{runs:i,runOf:e,isUpdating:a,startUpdate:o}}export{a as t};
1
+ import{lr as e,nr as t}from"./vendor-gFkr2qsZ.js";import{t as n}from"./useLogsSocket-D-ndWAg0.js";var r=2e3,i=e({});function a(){function e(e){return i[e]}function a(e){return i[e]?.status===`updating`}async function o(e,a,o){if(i[e]?.status===`updating`)return!1;i[e]={status:`updating`,lines:[],version:a};let s=i[e],c=t(!0);c.run(()=>{n({target:e,onStdout:e=>{s.lines.push(e),s.lines.length>r&&s.lines.splice(0,s.lines.length-r)}})});try{return await o(),s.status=`success`,!0}catch(e){return s.status=`error`,s.error=e?.response?.data?.message??e?.message??String(e),!1}finally{c.stop()}}return{runs:i,runOf:e,isUpdating:a,startUpdate:o}}export{a as t};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./esm-zYnXHhpH.js","./vendor-capacitor-COL6Kz75.js","./vendor-DGke_6M4.js","./rolldown-runtime-C0FnF6B9.js","./dist-DNyx_J8o.js"])))=>i.map(i=>d[i]);
2
- import"./vendor-cameraui-QXD8jkcj.js";import"./api-DK2Bav9D.js";import{Ht as e,dr as t}from"./vendor-DGke_6M4.js";import{a as n}from"./intercomService-BnA-FQ0Q.js";import"./notifications-CbAJX7RF.js";n(`PushRegistration`);var r=`cui.push.registrations`;t(!1);var i=null;function a(){return{registerForPush:async()=>{},forgetIfThisDevice:async(e,t)=>{if(!e)return;let n=await c(e);n&&n.deviceId===t&&(await u(e),await f(e))},getSyncState:async(e,t)=>({status:`unknown`}),restoreMarker:async(e,t)=>{await c(e)||await l(e,{deviceId:t,enabledAt:Date.now()})}}}async function o(){try{let{Preferences:t}=await e(async()=>{let{Preferences:e}=await import(`./esm-zYnXHhpH.js`);return{Preferences:e}},__vite__mapDeps([0,1,2,3]),import.meta.url),{value:n}=await t.get({key:r});return n?JSON.parse(n):{}}catch{return{}}}async function s(t){try{let{Preferences:n}=await e(async()=>{let{Preferences:e}=await import(`./esm-zYnXHhpH.js`);return{Preferences:e}},__vite__mapDeps([0,1,2,3]),import.meta.url);await n.set({key:r,value:JSON.stringify(t)})}catch{}}async function c(e){return(await o())[e]??null}async function l(e,t){let n=await o();n[e]=t,await s(n)}async function u(e){let t=await o();t[e]&&(delete t[e],await s(t))}function d(){return i??=(async()=>{try{let{Capacitor:t,registerPlugin:n}=await e(async()=>{let{Capacitor:e,registerPlugin:t}=await import(`./dist-DNyx_J8o.js`);return{Capacitor:e,registerPlugin:t}},__vite__mapDeps([4,2,3]),import.meta.url);return t.isPluginAvailable(`PushCrypto`)?{plugin:n(`PushCrypto`)}:{plugin:null}}catch{return{plugin:null}}})(),i}async function f(e){try{let{plugin:t}=await d();await t?.deleteKey({serverId:e})}catch{}}export{a as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./esm-B92csSEb.js","./vendor-capacitor-f9ShAzys.js","./vendor-gFkr2qsZ.js","./rolldown-runtime-C0FnF6B9.js","./dist-D_qWDAKp.js"])))=>i.map(i=>d[i]);
2
+ import"./vendor-cameraui-CK4yHsJi.js";import"./api-C1mraOYr.js";import{Ht as e,dr as t}from"./vendor-gFkr2qsZ.js";import{a as n}from"./intercomService-CjoJaOZ7.js";import"./notifications-By40oPng.js";n(`PushRegistration`);var r=`cui.push.registrations`;t(!1);var i=null;function a(){return{registerForPush:async()=>{},forgetIfThisDevice:async(e,t)=>{if(!e)return;let n=await c(e);n&&n.deviceId===t&&(await u(e),await f(e))},getSyncState:async(e,t)=>({status:`unknown`}),restoreMarker:async(e,t)=>{await c(e)||await l(e,{deviceId:t,enabledAt:Date.now()})}}}async function o(){try{let{Preferences:t}=await e(async()=>{let{Preferences:e}=await import(`./esm-B92csSEb.js`);return{Preferences:e}},__vite__mapDeps([0,1,2,3]),import.meta.url),{value:n}=await t.get({key:r});return n?JSON.parse(n):{}}catch{return{}}}async function s(t){try{let{Preferences:n}=await e(async()=>{let{Preferences:e}=await import(`./esm-B92csSEb.js`);return{Preferences:e}},__vite__mapDeps([0,1,2,3]),import.meta.url);await n.set({key:r,value:JSON.stringify(t)})}catch{}}async function c(e){return(await o())[e]??null}async function l(e,t){let n=await o();n[e]=t,await s(n)}async function u(e){let t=await o();t[e]&&(delete t[e],await s(t))}function d(){return i??=(async()=>{try{let{Capacitor:t,registerPlugin:n}=await e(async()=>{let{Capacitor:e,registerPlugin:t}=await import(`./dist-D_qWDAKp.js`);return{Capacitor:e,registerPlugin:t}},__vite__mapDeps([4,2,3]),import.meta.url);return t.isPluginAvailable(`PushCrypto`)?{plugin:n(`PushCrypto`)}:{plugin:null}}catch{return{plugin:null}}})(),i}async function f(e){try{let{plugin:t}=await d();await t?.deleteKey({serverId:e})}catch{}}export{a as t};
@@ -1 +1 @@
1
- import{jr as e}from"./api-DK2Bav9D.js";import{Xn as t,dr as n,nr as r}from"./vendor-DGke_6M4.js";var i=n(!1),a=null,o;function s(){a||(a=r(!0),a.run(()=>{let n=e();t(n.bannerMode,e=>{e!==null&&i.value&&(clearTimeout(o),i.value=!1)})}));function n(){i.value=!0,clearTimeout(o),o=setTimeout(()=>{i.value=!1},15e3)}return{restarting:i,beginServerRestart:n}}export{s as n,i as t};
1
+ import{Mr as e}from"./api-C1mraOYr.js";import{Xn as t,dr as n,nr as r}from"./vendor-gFkr2qsZ.js";var i=n(!1),a=null,o;function s(){a||(a=r(!0),a.run(()=>{let n=e();t(n.bannerMode,e=>{e!==null&&i.value&&(clearTimeout(o),i.value=!1)})}));function n(){i.value=!0,clearTimeout(o),o=setTimeout(()=>{i.value=!1},15e3)}return{restarting:i,beginServerRestart:n}}export{s as n,i as t};
@@ -1 +1 @@
1
- import{vr as e}from"./api-DK2Bav9D.js";import{lr as t,nr as n,sn as r}from"./vendor-DGke_6M4.js";var i=t({streamStatus:{},streamConnections:{},streamCodecs:{}}),a=null,o=null;function s(){o?.emit(`get-stream-status`)}function c(){return o||(a=n(!0),a.run(()=>{let t=e(`/camera.ui`);o=t,t.on(`stream-status`,e=>{i.streamStatus=e}),t.on(`stream-connections`,e=>{i.streamConnections=e}),t.on(`stream-codecs`,e=>{i.streamCodecs=e}),t.onReady(()=>{s()})}),o)}function l(e){let t=Object.values(e);if(t.length===0)return`idle`;let n=t.filter(e=>e===`connected`).length,r=t.filter(e=>e===`error`).length,i=t.filter(e=>e===`connecting`).length;return n===t.length?`connected`:r===t.length?`error`:i>0&&n===0&&r===0?`connecting`:n>0&&(r>0||t.some(e=>e===`idle`))?`partial`:n>0?`connected`:i>0?`connecting`:`idle`}function u(){function e(){c()}function t(){}function n(e){let t=i.streamStatus[e];return t?l(t):`idle`}function a(e){return i.streamStatus[e]}function o(e,t){return i.streamStatus[e]?.[t]??`idle`}function u(e,t){return i.streamConnections[e]?.[t]??0}function d(e,t){return i.streamCodecs[e]?.[t]}return{streamStatus:r(()=>i.streamStatus),getCameraStatus:n,getCameraSources:a,getSourceStatus:o,getSourceConnections:u,getSourceCodecs:d,connect:e,disconnect:t,refresh:s}}export{u as t};
1
+ import{yr as e}from"./api-C1mraOYr.js";import{lr as t,nr as n,sn as r}from"./vendor-gFkr2qsZ.js";var i=t({streamStatus:{},streamConnections:{},streamCodecs:{}}),a=null,o=null;function s(){o?.emit(`get-stream-status`)}function c(){return o||(a=n(!0),a.run(()=>{let t=e(`/camera.ui`);o=t,t.on(`stream-status`,e=>{i.streamStatus=e}),t.on(`stream-connections`,e=>{i.streamConnections=e}),t.on(`stream-codecs`,e=>{i.streamCodecs=e}),t.onReady(()=>{s()})}),o)}function l(e){let t=Object.values(e);if(t.length===0)return`idle`;let n=t.filter(e=>e===`connected`).length,r=t.filter(e=>e===`error`).length,i=t.filter(e=>e===`connecting`).length;return n===t.length?`connected`:r===t.length?`error`:i>0&&n===0&&r===0?`connecting`:n>0&&(r>0||t.some(e=>e===`idle`))?`partial`:n>0?`connected`:i>0?`connecting`:`idle`}function u(){function e(){c()}function t(){}function n(e){let t=i.streamStatus[e];return t?l(t):`idle`}function a(e){return i.streamStatus[e]}function o(e,t){return i.streamStatus[e]?.[t]??`idle`}function u(e,t){return i.streamConnections[e]?.[t]??0}function d(e,t){return i.streamCodecs[e]?.[t]}return{streamStatus:r(()=>i.streamStatus),getCameraStatus:n,getCameraSources:a,getSourceStatus:o,getSourceConnections:u,getSourceCodecs:d,connect:e,disconnect:t,refresh:s}}export{u as t};
@@ -1 +1 @@
1
- import{bi as e,mi as t}from"./vendor-cameraui-QXD8jkcj.js";import{Rn as n}from"./api-DK2Bav9D.js";import{Xn as r,dr as i}from"./vendor-DGke_6M4.js";var a=[`INPUT`,`TEXTAREA`,`SELECT`,`BUTTON`],o=[`.p-datatable`,`.no-tab-swipe`];function s(s,c,l={}){let{isTouch:u}=n(),d=[...o,...l.exclude??[]],f=i(!0);function p(e){let t=e;for(;t&&t!==s.value;){if(t.scrollWidth>t.clientWidth+1){let e=getComputedStyle(t).overflowX;if(e===`auto`||e===`scroll`)return!0}t=t.parentElement}return!1}function m(e){let t=e.target;(a.includes(t.tagName)||d.some(e=>t.closest(e))||p(t))&&(f.value=!1)}function h(){f.value=!0}let{isSwiping:g,direction:_}=u.value?e(s,{threshold:50,onSwipeStart:m,onSwipeEnd:h}):t(s,{threshold:50,onSwipeStart:m,onSwipeEnd:h});r([g,_],()=>{g.value&&f.value&&(_.value===`left`||_.value===`right`)&&c(_.value)})}export{s as t};
1
+ import{Si as e,gi as t}from"./vendor-cameraui-CK4yHsJi.js";import{zn as n}from"./api-C1mraOYr.js";import{Xn as r,dr as i}from"./vendor-gFkr2qsZ.js";var a=[`INPUT`,`TEXTAREA`,`SELECT`,`BUTTON`],o=[`.p-datatable`,`.no-tab-swipe`];function s(s,c,l={}){let{isTouch:u}=n(),d=[...o,...l.exclude??[]],f=i(!0);function p(e){let t=e;for(;t&&t!==s.value;){if(t.scrollWidth>t.clientWidth+1){let e=getComputedStyle(t).overflowX;if(e===`auto`||e===`scroll`)return!0}t=t.parentElement}return!1}function m(e){let t=e.target;(a.includes(t.tagName)||d.some(e=>t.closest(e))||p(t))&&(f.value=!1)}function h(){f.value=!0}let{isSwiping:g,direction:_}=u.value?e(s,{threshold:50,onSwipeStart:m,onSwipeEnd:h}):t(s,{threshold:50,onSwipeStart:m,onSwipeEnd:h});r([g,_],()=>{g.value&&f.value&&(_.value===`left`||_.value===`right`)&&c(_.value)})}export{s as t};
@@ -1 +1 @@
1
- import{Pr as e}from"./api-DK2Bav9D.js";import{Xn as t,sn as n}from"./vendor-DGke_6M4.js";import{t as r}from"./config-CiQDwB4t.js";`${e}`;async function i(e){}function a(){let e=new r,{data:a}=e.getConfigQuery(!0),{mutateAsync:o}=e.patchConfigQuery(),s=n(()=>a.value&&typeof a.value!=`string`?a.value:void 0),c=n(()=>s.value?.betaUpdates??!1);return t(()=>s.value?.betaUpdates,e=>{e!==void 0&&i(e)},{immediate:!0}),{isBeta:c,setBeta:async e=>{let t=s.value;t&&t.betaUpdates!==e&&await o({configData:JSON.stringify({...t,betaUpdates:e})})}}}export{a as t};
1
+ import{Fr as e}from"./api-C1mraOYr.js";import{Xn as t,sn as n}from"./vendor-gFkr2qsZ.js";import{t as r}from"./config-CVqy37fG.js";`${e}`;async function i(e){}function a(){let e=new r,{data:a}=e.getConfigQuery(!0),{mutateAsync:o}=e.patchConfigQuery(),s=n(()=>a.value&&typeof a.value!=`string`?a.value:void 0),c=n(()=>s.value?.betaUpdates??!1);return t(()=>s.value?.betaUpdates,e=>{e!==void 0&&i(e)},{immediate:!0}),{isBeta:c,setBeta:async e=>{let t=s.value;t&&t.betaUpdates!==e&&await o({configData:JSON.stringify({...t,betaUpdates:e})})}}}export{a as t};
@@ -1 +1 @@
1
- import{vr as e}from"./api-DK2Bav9D.js";import{lr as t,nr as n,sn as r}from"./vendor-DGke_6M4.js";var i=t({status:null}),a=null,o=null,s=new Set;function c(){return o||(a=n(!0),a.run(()=>{let t=e(`/camera.ui`);o=t,t.on(`updates-status`,e=>{i.status=e;for(let e of s)try{e()}catch{}}),t.onReady(()=>{for(let e of s)try{e()}catch{}})}),o)}function l(){function e(){c()}function t(e){return s.add(e),()=>s.delete(e)}return{status:r(()=>i.status),connect:e,onStatus:t}}export{l as t};
1
+ import{yr as e}from"./api-C1mraOYr.js";import{lr as t,nr as n,sn as r}from"./vendor-gFkr2qsZ.js";var i=t({status:null}),a=null,o=null,s=new Set;function c(){return o||(a=n(!0),a.run(()=>{let t=e(`/camera.ui`);o=t,t.on(`updates-status`,e=>{i.status=e;for(let e of s)try{e()}catch{}}),t.onReady(()=>{for(let e of s)try{e()}catch{}})}),o)}function l(){function e(){c()}function t(e){return s.add(e),()=>s.delete(e)}return{status:r(()=>i.status),connect:e,onStatus:t}}export{l as t};
@@ -0,0 +1 @@
1
+ import{Dr as e}from"./api-C1mraOYr.js";import{sn as t}from"./vendor-gFkr2qsZ.js";function n(){let{data:n}=new e().getUsersQuery({page:1,pageSize:-1});return{userOptions:t(()=>(n.value?.result??[]).map(e=>({label:e.username,value:e.username})))}}export{n as t};
@@ -1 +1 @@
1
- import{In as e,cn as t,dn as n,sr as r}from"./vendor-DGke_6M4.js";var i={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function a(r,a){return e(),n(`svg`,i,[...a[0]||=[t(`path`,{fill:`currentColor`,d:`M20.41 3c1.39 2.71 1.94 5.84 1.59 9c-.2 3.16-1.3 6.29-3.17 9l-1.53-1c1.61-2.43 2.55-5.2 2.7-8c.34-2.8-.11-5.57-1.3-8zM5.17 3L6.7 4C5.09 6.43 4.15 9.2 4 12c-.34 2.8.12 5.57 1.3 8l-1.69 1c-1.4-2.71-1.96-5.83-1.61-9c.2-3.16 1.3-6.29 3.17-9m6.91 7.68l2.32-3.23h2.53l-3.78 5l2.2 4.92h-2.26L11.71 14l-2.43 3.33H6.76l3.9-5.12l-2.13-4.76h2.27z`},null,-1)]])}var o=r({name:`mdi-variable`,render:a});export{o as t};
1
+ import{In as e,cn as t,dn as n,sr as r}from"./vendor-gFkr2qsZ.js";var i={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function a(r,a){return e(),n(`svg`,i,[...a[0]||=[t(`path`,{fill:`currentColor`,d:`M20.41 3c1.39 2.71 1.94 5.84 1.59 9c-.2 3.16-1.3 6.29-3.17 9l-1.53-1c1.61-2.43 2.55-5.2 2.7-8c.34-2.8-.11-5.57-1.3-8zM5.17 3L6.7 4C5.09 6.43 4.15 9.2 4 12c-.34 2.8.12 5.57 1.3 8l-1.69 1c-1.4-2.71-1.96-5.83-1.61-9c.2-3.16 1.3-6.29 3.17-9m6.91 7.68l2.32-3.23h2.53l-3.78 5l2.2 4.92h-2.26L11.71 14l-2.43 3.33H6.76l3.9-5.12l-2.13-4.76h2.27z`},null,-1)]])}var o=r({name:`mdi-variable`,render:a});export{o as t};