@camera.ui/server 2.2.6 → 2.2.8

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 (560) hide show
  1. package/dist/interface/assets/{404-BLVuKvLk.js → 404-BYV0u5qE.js} +1 -1
  2. package/dist/interface/assets/{About-C-AJ0jfI.js → About-DBOS1rfw.js} +1 -1
  3. package/dist/interface/assets/Assistant-BRcHj8hq.js +1 -0
  4. package/dist/interface/assets/Automation-C0Emde7z.js +3 -0
  5. package/dist/interface/assets/{AutomationImport-C8VYjDzf.js → AutomationImport-Iu-K82Os.js} +2 -2
  6. package/dist/interface/assets/{AutomationStore-CE4PKRGd.js → AutomationStore-C2G0Bk8c.js} +2 -2
  7. package/dist/interface/assets/{AutomationStoreDetail-DavWfjLv.js → AutomationStoreDetail-BbvLRJ5u.js} +2 -2
  8. package/dist/interface/assets/Automations-D-vfqRnZ.js +2 -0
  9. package/dist/interface/assets/Camera-BpurrgAr.js +2 -0
  10. package/dist/interface/assets/Camera-D0B7yyVD.css +1 -0
  11. package/dist/interface/assets/{CameraConsole-C4AmtcrM.js → CameraConsole-JBD3ZmJ6.js} +2 -2
  12. package/dist/interface/assets/{Cameras-DR577Bno.js → Cameras-R5mJGMK9.js} +2 -2
  13. package/dist/interface/assets/{Camview-Bri_T7Tq.css → Camview-DH6_8CxH.css} +1 -1
  14. package/dist/interface/assets/Camview-IbOVRx20.js +1 -0
  15. package/dist/interface/assets/{CertificateUpload-BYFKZCP9.js → CertificateUpload-B9S4EOQs.js} +1 -1
  16. package/dist/interface/assets/Config-CbFl5Wcp.js +2 -0
  17. package/dist/interface/assets/{ConfigActionAssistant-YtCVI8LZ.js → ConfigActionAssistant-DIOh6-np.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionCameraControl-Dg_1zOYt.js → ConfigActionCameraControl-Bw_egtpP.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionDelay-_EqbfWgo.js → ConfigActionDelay-B9i4YZjy.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionHttp-BzwLv2tn.js → ConfigActionHttp-DFtxAa3U.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionImageInput-CLdY2sV4.js → ConfigActionImageInput-CuTH4Nw2.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionMqtt-lGqYshl3.js → ConfigActionMqtt-B9SfWP-G.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionNotification-D5Dj3EoU.js → ConfigActionNotification-BGMIByJT.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionNotificationControl-Dy5fKamr.js → ConfigActionNotificationControl-Cz72szMd.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionOutput-DzsQ31L0.js → ConfigActionOutput-BG6DoIRe.js} +1 -1
  26. package/dist/interface/assets/{ConfigActionPlugin-BFrBcXvL.js → ConfigActionPlugin-B5oRSE9n.js} +1 -1
  27. package/dist/interface/assets/{ConfigActionSensor-CX8ePlan.js → ConfigActionSensor-BErRRYfl.js} +1 -1
  28. package/dist/interface/assets/{ConfigActionSnapshot-BATLRmh6.js → ConfigActionSnapshot-Di-uxMrg.js} +1 -1
  29. package/dist/interface/assets/{ConfigActionVariable-Dgn5jvaR.js → ConfigActionVariable-BBpUti5A.js} +1 -1
  30. package/dist/interface/assets/{ConfigConditionIfElse-D5IIBjyk.js → ConfigConditionIfElse-DjOKPXQw.js} +1 -1
  31. package/dist/interface/assets/{ConfigConditionSensorState-C0JxBWdG.js → ConfigConditionSensorState-BzvvZvD0.js} +1 -1
  32. package/dist/interface/assets/{ConfigConditionSwitch-Brlgd0XP.js → ConfigConditionSwitch-DQvdfUxR.js} +1 -1
  33. package/dist/interface/assets/{ConfigConditionTime-CM4bSMyU.js → ConfigConditionTime-BqOElX5C.js} +1 -1
  34. package/dist/interface/assets/{ConfigSensorValueInput-CtuH8dCa.js → ConfigSensorValueInput-BT-0LhSH.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerDetection-DsL7lLQl.js → ConfigTriggerDetection-1OkudUah.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerGeofence-CAGIk1_W.js → ConfigTriggerGeofence-HGatk3C5.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerManual-DgkR-GWy.js → ConfigTriggerManual-DpRr_vVq.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerMqtt-B_iFalAQ.js → ConfigTriggerMqtt-C_MId3BY.js} +1 -1
  39. package/dist/interface/assets/{ConfigTriggerSchedule-E_QWfNKy.js → ConfigTriggerSchedule-BmwDqd6N.js} +1 -1
  40. package/dist/interface/assets/{ConfigTriggerSensor-hYNbLXUu.js → ConfigTriggerSensor-Rgx8q4g8.js} +1 -1
  41. package/dist/interface/assets/{ConfigTriggerSystem-DR1EFpE9.js → ConfigTriggerSystem-4VsHPmbn.js} +1 -1
  42. package/dist/interface/assets/{ConfigTriggerWebhook-C-B5GGFH.js → ConfigTriggerWebhook-Bs7zEfY0.js} +1 -1
  43. package/dist/interface/assets/Console-oCuuVKET.js +1 -0
  44. package/dist/interface/assets/{CuiAssistantConversation-BmshW6Vc.css → CuiAssistantConversation-BmBhwrNh.css} +1 -1
  45. package/dist/interface/assets/CuiAssistantConversation-Bsyxau9v.js +5 -0
  46. package/dist/interface/assets/CuiAutomationRunsDialog-sRh_K6JI.js +1 -0
  47. package/dist/interface/assets/CuiBottomSheet-DWoSHzC7.js +1 -0
  48. package/dist/interface/assets/{CuiBottomSheet-C2sM2E3M.js → CuiBottomSheet-Dd3uOtnC.js} +1 -1
  49. package/dist/interface/assets/CuiCameraPipCard-D6REm8uT.js +1 -0
  50. package/dist/interface/assets/CuiCameraPipCard-TYTCfwXf.css +1 -0
  51. package/dist/interface/assets/CuiCameraRecordings-C2tvrbbw.js +1 -0
  52. package/dist/interface/assets/{CuiCameraShares-B6jdUBVm.js → CuiCameraShares-jrrUEHoZ.js} +1 -1
  53. package/dist/interface/assets/CuiCameraTable-BOzTWLwd.js +1 -0
  54. package/dist/interface/assets/{CuiCameraTable-CpBo25Qc.js → CuiCameraTable-C7WLZ2pA.js} +2 -2
  55. package/dist/interface/assets/CuiChartTable-BYrIX7LV.js +1 -0
  56. package/dist/interface/assets/CuiChartTable-DCr_AsSw.css +1 -0
  57. package/dist/interface/assets/{CuiConsole-BGptpT6r.js → CuiConsole-CkZML0iY.js} +2 -2
  58. package/dist/interface/assets/CuiDataTable-BFIhx1D3.js +1 -0
  59. package/dist/interface/assets/{CuiLightControl-wbZi3fA1.js → CuiLightControl-DitIWqUr.js} +1 -1
  60. package/dist/interface/assets/{CuiList-Dsu5m0TA.js → CuiList-BewTNr2X.js} +1 -1
  61. package/dist/interface/assets/CuiMarkdownContent-Do04YgHe.js +1 -0
  62. package/dist/interface/assets/{CuiMarkdownContent-BYBQX_aF.js → CuiMarkdownContent-qOPm3VEi.js} +1 -1
  63. package/dist/interface/assets/CuiPluginCard-Bd2HFduI.js +2 -0
  64. package/dist/interface/assets/{CuiPluginCategoryChip-BtJ_6_gN.js → CuiPluginCategoryChip-DlzOwRgc.js} +1 -1
  65. package/dist/interface/assets/{CuiPluginOAuthButton-Duf35I8K.js → CuiPluginOAuthButton-BQZkTcgo.js} +2 -2
  66. package/dist/interface/assets/{CuiPluginTrustBadge-jxXeRTH2.js → CuiPluginTrustBadge-DbqdfdaL.js} +1 -1
  67. package/dist/interface/assets/{CuiQRCode-BNchrpoB.js → CuiQRCode-2WsWJQFi.js} +1 -1
  68. package/dist/interface/assets/{CuiSchema-DGTMkVSe.js → CuiSchema-BL0QZmP2.js} +1 -1
  69. package/dist/interface/assets/{CuiTopNavbarItem-CHtLvn53.js → CuiTopNavbarItem-Ti2TueU1.js} +1 -1
  70. package/dist/interface/assets/Faces-DARrGLXf.js +1 -0
  71. package/dist/interface/assets/{FirstSteps-HzaBMDbH.js → FirstSteps-DBYPBvGr.js} +1 -1
  72. package/dist/interface/assets/Floorplan-BaZvzoyv.js +1 -0
  73. package/dist/interface/assets/{Instances-Dl-6rL5O.js → Instances-r0xReURi.js} +1 -1
  74. package/dist/interface/assets/{Logs-DsJkuQFq.js → Logs-DMehPk0t.js} +2 -2
  75. package/dist/interface/assets/{Menu-D_woMkjL.js → Menu-C34RRyLd.js} +1 -1
  76. package/dist/interface/assets/Metrics-BjoC71_O.js +12 -0
  77. package/dist/interface/assets/Metrics-DsHBab6t.css +1 -0
  78. package/dist/interface/assets/{OAuthDeviceFlow-CXfILAE1.js → OAuthDeviceFlow-CdZxelf2.js} +1 -1
  79. package/dist/interface/assets/Plugin-npx7CnwV.js +1 -0
  80. package/dist/interface/assets/{PluginConsole-C96m5zKy.js → PluginConsole-D1BRQCO9.js} +2 -2
  81. package/dist/interface/assets/PluginDetail-nwTrJmO6.js +2 -0
  82. package/dist/interface/assets/{PluginSchema-u1bqXU29.js → PluginSchema-B9VsBHOU.js} +1 -1
  83. package/dist/interface/assets/PluginSearch-CP2kQWKf.js +1 -0
  84. package/dist/interface/assets/PluginSearch-WEvbKMRs.js +2 -0
  85. package/dist/interface/assets/{PluginUpdateProgress-BT4lN9HT.js → PluginUpdateProgress-uj0XPV-_.js} +1 -1
  86. package/dist/interface/assets/Plugins-CPx9Hszm.js +1 -0
  87. package/dist/interface/assets/{RecentEventsFilter-Kp_lTOuG.js → RecentEventsFilter-D5VSH2K1.js} +1 -1
  88. package/dist/interface/assets/Recordings-De6Zcv0M.js +1 -0
  89. package/dist/interface/assets/SensorEdit-SD_oHBRo.js +1 -0
  90. package/dist/interface/assets/{SensorHistory-Cet35_RO.js → SensorHistory-SxiLOloa.js} +1 -1
  91. package/dist/interface/assets/Sensors-Djl64M-W.js +2 -0
  92. package/dist/interface/assets/{Settings-C-LCDIbK.js → Settings-CAf2reGs.js} +1 -1
  93. package/dist/interface/assets/SettingsAccount-BGj5Ni91.js +1 -0
  94. package/dist/interface/assets/SettingsAccount-Dy6WC8ql.js +1 -0
  95. package/dist/interface/assets/SettingsAppearance-BGFhMlRk.js +1 -0
  96. package/dist/interface/assets/{SettingsAppearance-BS4EQNjH.js → SettingsAppearance-DQzQmVzE.js} +1 -1
  97. package/dist/interface/assets/SettingsAssistant-BwYVyuN3.js +1 -0
  98. package/dist/interface/assets/{SettingsBackup-DBlV1gej.js → SettingsBackup-CVExGnOo.js} +1 -1
  99. package/dist/interface/assets/{SettingsList-D8eSwbBY.js → SettingsList-vo7sz_MY.js} +1 -1
  100. package/dist/interface/assets/SettingsMqtt-B1CuOcML.js +1 -0
  101. package/dist/interface/assets/SettingsNotifications-CCQ6eiq8.js +1 -0
  102. package/dist/interface/assets/{SettingsPermissions-CJiz0Z7B.js → SettingsPermissions-BlOf6HEy.js} +1 -1
  103. package/dist/interface/assets/{SettingsRecordings-CLz9Zp47.js → SettingsRecordings-7tTBg6m1.js} +1 -1
  104. package/dist/interface/assets/SettingsRemote-CsIGx-LU.css +1 -0
  105. package/dist/interface/assets/SettingsRemote-DBgKmIdv.js +2 -0
  106. package/dist/interface/assets/{SettingsSystem-txTFGomQ.js → SettingsSystem-DaFMsZpN.js} +2 -2
  107. package/dist/interface/assets/{SettingsUsers-CUp6vQPc.js → SettingsUsers-DXACwVPi.js} +1 -1
  108. package/dist/interface/assets/Terminal-DtGqlHbk.js +4 -0
  109. package/dist/interface/assets/{Training-Bkn52mPJ.css → Training-C-ToeAl4.css} +1 -1
  110. package/dist/interface/assets/Training-Ca11D1Vj.js +1 -0
  111. package/dist/interface/assets/Updates-yenwuqnD.js +2 -0
  112. package/dist/interface/assets/{VariableInput-183LygmK.js → VariableInput-CcILik4M.js} +1 -1
  113. package/dist/interface/assets/{VariableSuggestions-DwLtlzVz.js → VariableSuggestions-Bj0HdrYW.js} +1 -1
  114. package/dist/interface/assets/{VersionsHandler-DkbkcypK.js → VersionsHandler-BA8Lcysg.js} +1 -1
  115. package/dist/interface/assets/{VirtualSensorCreate-Bn4tgdxA.js → VirtualSensorCreate-DvHyw7I2.js} +1 -1
  116. package/dist/interface/assets/{Workers-DH59zE1C.css → Workers-Dey1snI4.css} +1 -1
  117. package/dist/interface/assets/Workers-Dyo44zxe.js +2 -0
  118. package/dist/interface/assets/{account-DwW7pBOb.js → account-DjBQulDn.js} +1 -1
  119. package/dist/interface/assets/ace-BPAekgyf.js +1 -0
  120. package/dist/interface/assets/{ace.config-CCyX_Ohk.js → ace.config-CvKE-yp1.js} +1 -1
  121. package/dist/interface/assets/{alert-circle-BdUVAt1B.js → alert-circle-B-JCMbb9.js} +1 -1
  122. package/dist/interface/assets/{alert-outline-IRxYbw0j.js → alert-outline-B4ZZowEj.js} +1 -1
  123. package/dist/interface/assets/api-CHQlxVtZ.css +2 -0
  124. package/dist/interface/assets/{api-h4HRB3ef.js → api-CKbL5jC7.js} +1 -1
  125. package/dist/interface/assets/api-CLazgL-g.js +4 -0
  126. package/dist/interface/assets/{arrow-left-Bk-ZrOVr.js → arrow-left-PeaVwpHd.js} +1 -1
  127. package/dist/interface/assets/{assistant-4hYyIu6D.js → assistant-CwmHp5bB.js} +1 -1
  128. package/dist/interface/assets/{assistantModels-BsSgRsws.js → assistantModels-D3ncWWu0.js} +1 -1
  129. package/dist/interface/assets/{auth-DFesRtwI.js → auth-AfZrkJ2f.js} +1 -1
  130. package/dist/interface/assets/{automations-D2bnX8uw.js → automations-DOCG0q8-.js} +1 -1
  131. package/dist/interface/assets/{back-filled-D-X19YMO.js → back-filled-CJoz7Gkl.js} +1 -1
  132. package/dist/interface/assets/{bell-ring-DreEHgoT.js → bell-ring-CBf0Yn3H.js} +1 -1
  133. package/dist/interface/assets/{brain-DuDAg544.js → brain-uZ03n3LW.js} +1 -1
  134. package/dist/interface/assets/cameraSources-mHEz9ROa.js +1 -0
  135. package/dist/interface/assets/{cctv-DM-C_8_6.js → cctv-VgKQ-dBV.js} +1 -1
  136. package/dist/interface/assets/{check-circle-Bevuw8-0.js → check-circle-BU-KNgPB.js} +1 -1
  137. package/dist/interface/assets/{check-circle-outline-aMxkvksr.js → check-circle-outline-BsxzAMed.js} +1 -1
  138. package/dist/interface/assets/{chevron-down-CCFn9Z56.js → chevron-down-CxK4Sfjs.js} +1 -1
  139. package/dist/interface/assets/{chevron-up-CSImUM3_.js → chevron-up-DWfNH8va.js} +1 -1
  140. package/dist/interface/assets/{clock-outline-DH3WIEJt.js → clock-outline-BtWx4GaF.js} +1 -1
  141. package/dist/interface/assets/{close-CMxyM4v9.js → close-Be7oB7d_.js} +1 -1
  142. package/dist/interface/assets/{close-circle-CfgJCZ9A.js → close-circle-D7Jmhp_7.js} +1 -1
  143. package/dist/interface/assets/{cloud-check-CbdFLIdR.js → cloud-check-zCGJxpWI.js} +1 -1
  144. package/dist/interface/assets/cloudHandoff-zJCrDmwk.js +1 -0
  145. package/dist/interface/assets/{config-DDaCrMSU.js → config-AG0SnOiY.js} +1 -1
  146. package/dist/interface/assets/{content-copy-Bz49QPOI.js → content-copy-BcYlfuFc.js} +1 -1
  147. package/dist/interface/assets/{copy-DA6QQHRt.js → copy-DuY-M96E.js} +1 -1
  148. package/dist/interface/assets/{cube-scan-IiH8zwm2.js → cube-scan-Cae03i_N.js} +1 -1
  149. package/dist/interface/assets/{database-refresh-outline-CIUDpcuq.js → database-refresh-outline-B3OEQFF7.js} +1 -1
  150. package/dist/interface/assets/{delete-Btu-UVx9.js → delete-BWgOAzKl.js} +1 -1
  151. package/dist/interface/assets/{dist-D_qWDAKp.js → dist-DmpuuM9s.js} +1 -1
  152. package/dist/interface/assets/{dots-vertical-D496SIss.js → dots-vertical-Kby1GY8_.js} +1 -1
  153. package/dist/interface/assets/{download-BSC7lwq_.js → download-C291Yq7I.js} +1 -1
  154. package/dist/interface/assets/esm-B2TVBF3B.js +1 -0
  155. package/dist/interface/assets/esm-BEntuCG7.js +1 -0
  156. package/dist/interface/assets/esm-BRnyrFH8.js +1 -0
  157. package/dist/interface/assets/esm-CCwXzd_8.js +1 -0
  158. package/dist/interface/assets/esm-CEjwTsuD.js +1 -0
  159. package/dist/interface/assets/esm-CGGV9tC4.js +1 -0
  160. package/dist/interface/assets/esm-CI2tTOc5.js +1 -0
  161. package/dist/interface/assets/esm-CgxZmMYv.js +1 -0
  162. package/dist/interface/assets/esm-Csc6f5Fy.js +1 -0
  163. package/dist/interface/assets/esm-Qzx3d-Ie.js +1 -0
  164. package/dist/interface/assets/esm-a_w7mTdx.js +1 -0
  165. package/dist/interface/assets/esm-iKfsu7-H.js +1 -0
  166. package/dist/interface/assets/esm-ks5kvk_e.js +1 -0
  167. package/dist/interface/assets/esm-nJfTguKF.js +1 -0
  168. package/dist/interface/assets/{eventIcons-UQutPG3p.js → eventIcons-C3JWChgS.js} +1 -1
  169. package/dist/interface/assets/{eye-off-CSU0U8g7.js → eye-off-zGCIHKOK.js} +1 -1
  170. package/dist/interface/assets/{flowSchema-YJtAu9gB.js → flowSchema-B0d3VjU7.js} +1 -1
  171. package/dist/interface/assets/{help-circle-outline-Cr_yNhPi.js → help-circle-outline-DXFepDAG.js} +1 -1
  172. package/dist/interface/assets/{history-anuCbp1T.js → history-D-FlZdKD.js} +1 -1
  173. package/dist/interface/assets/{home-N3bDR1vX.js → home-DPdzRxcM.js} +1 -1
  174. package/dist/interface/assets/{information-outline-CMWIvLNB.js → information-outline-ChOM9qgI.js} +1 -1
  175. package/dist/interface/assets/{intercomService-CjoJaOZ7.js → intercomService-DG3EeZ6s.js} +1 -1
  176. package/dist/interface/assets/{lan-CYXjdk7L.js → lan-DvYEO83l.js} +1 -1
  177. package/dist/interface/assets/{main-DVa5U7UB.css → main-CGY9cVyi.css} +1 -1
  178. package/dist/interface/assets/main-DkHV6YgB.js +3 -0
  179. package/dist/interface/assets/{microphone-BB2pATI_.js → microphone-D-T9xga4.js} +1 -1
  180. package/dist/interface/assets/{minus-BCp3ZNKO.js → minus-4T4INuO4.js} +1 -1
  181. package/dist/interface/assets/mqtt-DE2VbNdt.js +1 -0
  182. package/dist/interface/assets/native-CtfXrwj5.js +1 -0
  183. package/dist/interface/assets/native-JMtkOkIV.js +1 -0
  184. package/dist/interface/assets/{nodeDefinitions-ByrqsENY.js → nodeDefinitions-Dp8cnne1.js} +1 -1
  185. package/dist/interface/assets/{notifications-5yeK345h.js → notifications-8FH4ApEz.js} +1 -1
  186. package/dist/interface/assets/{pause-BQlxwAW2.js → pause-DHqHYA3V.js} +1 -1
  187. package/dist/interface/assets/{pencil-outline-CIQL5Kui.js → pencil-outline-D-GmPf8M.js} +1 -1
  188. package/dist/interface/assets/{pencil-CDsNnEXi.js → pencil-vACi-JzY.js} +1 -1
  189. package/dist/interface/assets/plugin-Dt5Xetfz.js +1 -0
  190. package/dist/interface/assets/{plugins-BTOdE_zv.js → plugins-2JLUEMYc.js} +1 -1
  191. package/dist/interface/assets/{plus-Bp4q9G7S.js → plus-BBUb8_uL.js} +1 -1
  192. package/dist/interface/assets/{plus-CySoovdr.js → plus-BJb7U4bN.js} +1 -1
  193. package/dist/interface/assets/{power-WmBLDR0-.js → power-Dm_aNIz-.js} +1 -1
  194. package/dist/interface/assets/{radar-CyYAmume.js → radar-Dcvdz--e.js} +1 -1
  195. package/dist/interface/assets/{refresh-CHTA3jVN.js → refresh-CO4F18Je.js} +1 -1
  196. package/dist/interface/assets/{restore-C8RNM5yX.js → restore-xRBt3Grb.js} +1 -1
  197. package/dist/interface/assets/{rooms-BCdm6IAx.js → rooms-DoAfzA8W.js} +1 -1
  198. package/dist/interface/assets/{round-alt-arrow-left-bold-Gh5mi_yR.js → round-alt-arrow-left-bold-CZHXzGS5.js} +1 -1
  199. package/dist/interface/assets/{search-BajCVmOI.js → search-D75YW08B.js} +1 -1
  200. package/dist/interface/assets/{sensorIcons-5Ynqwo3e.js → sensorIcons-BntiOPX7.js} +1 -1
  201. package/dist/interface/assets/{sensorSlots-BF70tpV7.js → sensorSlots-biaL-O8E.js} +1 -1
  202. package/dist/interface/assets/{sensors-CeFEEz8r.js → sensors-DyAMdS-H.js} +1 -1
  203. package/dist/interface/assets/server-BDRUGj61.js +1 -0
  204. package/dist/interface/assets/{settings-DnksaK7m.js → settings-DDOgc5BX.js} +1 -1
  205. package/dist/interface/assets/{source-branch-CzqIPffP.js → source-branch-DVHuYlkZ.js} +1 -1
  206. package/dist/interface/assets/{theme-DF_XA58O.js → theme-CLxrnR60.js} +1 -1
  207. package/dist/interface/assets/{trash-2-DJeEhHf4.js → trash-2-DDKPtl2x.js} +1 -1
  208. package/dist/interface/assets/{trash-can-outline-DrT6iw7I.js → trash-can-outline-DVH3zgo0.js} +1 -1
  209. package/dist/interface/assets/{trash-fill-Bb_-UicM.js → trash-fill-C_IJ4Vu2.js} +1 -1
  210. package/dist/interface/assets/{trash2-Dsl8gfxq.js → trash2-DY0XTaJD.js} +1 -1
  211. package/dist/interface/assets/{types-CklFkUXk.js → types-8JXzkoC8.js} +1 -1
  212. package/dist/interface/assets/{types-ArGM5-5O.js → types-B4LLKzDW.js} +1 -1
  213. package/dist/interface/assets/types-a7Nw-P-m.js +1 -0
  214. package/dist/interface/assets/{undo-DoqJW-k7.js → undo-YRkBYCnf.js} +1 -1
  215. package/dist/interface/assets/ungrouped-BoAbb9w3.js +1 -0
  216. package/dist/interface/assets/ungrouped-ChmBvcXp.css +1 -0
  217. package/dist/interface/assets/updates-F-veEP1I.js +1 -0
  218. package/dist/interface/assets/{upload-DtIcwiNC.js → upload-2WcHRjTq.js} +1 -1
  219. package/dist/interface/assets/{upload-C3w1XH-o.js → upload-BiE7VzTj.js} +1 -1
  220. package/dist/interface/assets/{useAppVersion-Dcvu95bZ.js → useAppVersion-BjUQmB7M.js} +1 -1
  221. package/dist/interface/assets/{useAssistantActions-Cc_O6M9_.js → useAssistantActions-CNEJol4o.js} +1 -1
  222. package/dist/interface/assets/useBackupRestore-Biqn_lhh.js +1 -0
  223. package/dist/interface/assets/{useCameraOptions-8I4MTDgj.js → useCameraOptions-D_oduve2.js} +1 -1
  224. package/dist/interface/assets/useKeyboardInset-CPWSVYlA.js +1 -0
  225. package/dist/interface/assets/{useLogsSocket-bpOiLgWT.js → useLogsSocket-B_jXUqv8.js} +1 -1
  226. package/dist/interface/assets/{useNavLayout-Cjf6Da2u.js → useNavLayout-DEngIIeU.js} +1 -1
  227. package/dist/interface/assets/{usePermissions-BXTw4tII.js → usePermissions-DAO92InI.js} +1 -1
  228. package/dist/interface/assets/{usePluginUpdates-bOMj-IvL.js → usePluginUpdates-CJi8Y_wl.js} +1 -1
  229. package/dist/interface/assets/{usePushRegistration-HOvLuUVP.js → usePushRegistration-j9WCeFbv.js} +2 -2
  230. package/dist/interface/assets/{useServerRestart-CQN4cdHJ.js → useServerRestart-BVks5tuC.js} +1 -1
  231. package/dist/interface/assets/{useStreamStatus-Da7c2Wme.js → useStreamStatus-DQ0NSyU8.js} +1 -1
  232. package/dist/interface/assets/{useTabSwipe-fFuyJJBQ.js → useTabSwipe-CVq7EcIY.js} +1 -1
  233. package/dist/interface/assets/{useUpdateChannel-Ca1RX32u.js → useUpdateChannel-C0fjDvNP.js} +1 -1
  234. package/dist/interface/assets/{useUpdatesSocket-DHZNpLQX.js → useUpdatesSocket-DXKF9hzc.js} +1 -1
  235. package/dist/interface/assets/useUserOptions-UjMeAL5n.js +1 -0
  236. package/dist/interface/assets/{variable-ywTlRfo5.js → variable-Cp8o-q8t.js} +1 -1
  237. package/dist/interface/assets/vendor-Df81FCJz.js +29 -0
  238. package/dist/interface/assets/{vendor-ace-CvEoip98.js → vendor-ace-QSsGUspX.js} +1 -1
  239. package/dist/interface/assets/{vendor-cameraui-CK4yHsJi.js → vendor-cameraui-GmMRyJ2R.js} +45 -45
  240. package/dist/interface/assets/{vendor-capacitor-Bs_WzL0Q.js → vendor-capacitor-t5EIN1GG.js} +2 -2
  241. package/dist/interface/assets/{vendor-chart-DBK083Hu.js → vendor-chart-BiJYkx5_.js} +1 -1
  242. package/dist/interface/assets/{vendor-core-B-Q4es-f.js → vendor-core-BeAannbA.js} +1 -1
  243. package/dist/interface/assets/{vendor-dnd-DGQLvX6Y.js → vendor-dnd-C1kMh9_t.js} +1 -1
  244. package/dist/interface/assets/{vendor-draggabilly-D8CK6M-y.js → vendor-draggabilly-Cw1oJ6qc.js} +1 -1
  245. package/dist/interface/assets/vendor-leaflet-OSZlONe5.js +1 -0
  246. package/dist/interface/assets/{vendor-markdown-qHIinIUE.js → vendor-markdown-DTWiWKBj.js} +1 -1
  247. package/dist/interface/assets/{vendor-primevue-Cmp3VjIC.js → vendor-primevue-Zx6t06A4.js} +77 -77
  248. package/dist/interface/assets/{vendor-vueflow-bSwRZ9X8.js → vendor-vueflow-DWU_IzGe.js} +1 -1
  249. package/dist/interface/assets/web-B98ahwoP.js +1 -0
  250. package/dist/interface/assets/web-BSsSrRZf.js +1 -0
  251. package/dist/interface/assets/web-BiNRDta4.js +1 -0
  252. package/dist/interface/assets/web-BjKL51lK-CZKmYhby.js +1 -0
  253. package/dist/interface/assets/web-BjtOcquy.js +1 -0
  254. package/dist/interface/assets/web-CkTE9nCG.js +1 -0
  255. package/dist/interface/assets/web-Cvogq5S5.js +1 -0
  256. package/dist/interface/assets/web-D-A4EBKj.js +1 -0
  257. package/dist/interface/assets/web-DVGMBduz.js +1 -0
  258. package/dist/interface/assets/web-SpWB7I6X.js +1 -0
  259. package/dist/interface/assets/web-k0ihT_qK.js +1 -0
  260. package/dist/interface/assets/web-ovBpm7Dl.js +1 -0
  261. package/dist/interface/assets/web-z5Xz9tOQ.js +1 -0
  262. package/dist/interface/assets/web-zfhkFevT.js +1 -0
  263. package/dist/interface/assets/{webhook-CWKf2Qxu.js → webhook-DIjChTrs.js} +1 -1
  264. package/dist/interface/assets/workbox-window.prod.es5-DRKojI0e.js +1 -0
  265. package/dist/interface/assets/{zoom-in-CHkXAWHy.js → zoom-in-rMB152Uz.js} +1 -1
  266. package/dist/interface/ha/{404-C0mWQGWl.js → 404-D5gfy0Cd.js} +1 -1
  267. package/dist/interface/ha/{About-ByE7XErJ.js → About-JzlpCzBN.js} +3 -3
  268. package/dist/interface/ha/{Assistant-Z3FTR868.js → Assistant-DgOfGesf.js} +2239 -1725
  269. package/dist/interface/ha/{Automation-COQqTFNw.js → Automation-BDaWYiBu.js} +146 -146
  270. package/dist/interface/ha/{AutomationImport-ueWqMBX9.js → AutomationImport-BNB_PJ9R.js} +6 -6
  271. package/dist/interface/ha/{AutomationStore-DBO4aZqy.js → AutomationStore-_TeOt1wz.js} +73 -73
  272. package/dist/interface/ha/{AutomationStoreDetail-DMnYu7hf.js → AutomationStoreDetail-jjIEZoRi.js} +20 -20
  273. package/dist/interface/ha/{Automations-CMdbidc0.js → Automations-DM6FEVOw.js} +110 -110
  274. package/dist/interface/ha/Camera-sH9fRv18.js +670 -0
  275. package/dist/interface/ha/{CameraConsole-oMNZfKE6.js → CameraConsole-BoVql05l.js} +4 -4
  276. package/dist/interface/ha/{Cameras-CsqrLx97.js → Cameras-cQBGvXq7.js} +349 -347
  277. package/dist/interface/ha/{Camview-Br0LUakz.js → Camview-mkG5FXZM.js} +323 -319
  278. package/dist/interface/ha/{Config-Y5eUNSW7.js → Config-BNPDzo_h.js} +11 -11
  279. package/dist/interface/ha/{ConfigActionAssistant-hl-6ZACj.js → ConfigActionAssistant-C-8P3DYz.js} +4 -4
  280. package/dist/interface/ha/{ConfigActionCameraControl-DnXlVFWD.js → ConfigActionCameraControl-x1ksGL7m.js} +3 -3
  281. package/dist/interface/ha/{ConfigActionHttp-BkpkMmRd.js → ConfigActionHttp-DzCJp85z.js} +2 -2
  282. package/dist/interface/ha/{ConfigActionImageInput-Dp78_QS_.js → ConfigActionImageInput-C5C5U_2z.js} +1 -1
  283. package/dist/interface/ha/{ConfigActionMqtt-DA_UWb5j.js → ConfigActionMqtt-T29xb75r.js} +4 -4
  284. package/dist/interface/ha/{ConfigActionNotification-CQ4Ses3a.js → ConfigActionNotification-BcnyilF9.js} +3 -3
  285. package/dist/interface/ha/{ConfigActionNotificationControl-Cb5PNGz-.js → ConfigActionNotificationControl-D3wIVKuU.js} +2 -2
  286. package/dist/interface/ha/{ConfigActionOutput-DLuNHwRb.js → ConfigActionOutput-hD-yVczw.js} +1 -1
  287. package/dist/interface/ha/{ConfigActionPlugin-ChKFCNaj.js → ConfigActionPlugin-Bz1O-O4Q.js} +5 -5
  288. package/dist/interface/ha/{ConfigActionSensor-DOutFalW.js → ConfigActionSensor-FOz-PYl_.js} +5 -5
  289. package/dist/interface/ha/{ConfigActionSnapshot-GWgY6YIN.js → ConfigActionSnapshot-CmxEOuK1.js} +2 -2
  290. package/dist/interface/ha/{ConfigActionVariable-bu-9VYTG.js → ConfigActionVariable-BCvkrdCh.js} +1 -1
  291. package/dist/interface/ha/{ConfigConditionIfElse-iNp8tlZV.js → ConfigConditionIfElse-icfTG9OA.js} +3 -3
  292. package/dist/interface/ha/{ConfigConditionSensorState-Dn7kcHpJ.js → ConfigConditionSensorState-ClUAsm0d.js} +4 -4
  293. package/dist/interface/ha/{ConfigConditionSwitch-DaUlDgo0.js → ConfigConditionSwitch-C8AMCkn6.js} +5 -5
  294. package/dist/interface/ha/{ConfigSensorValueInput-D6m6suqJ.js → ConfigSensorValueInput-ChvDQzGd.js} +4 -4
  295. package/dist/interface/ha/{ConfigTriggerDetection-C5B_DC_L.js → ConfigTriggerDetection-aUSyaClu.js} +2 -2
  296. package/dist/interface/ha/{ConfigTriggerGeofence-B4WVNcK5.js → ConfigTriggerGeofence-DsJeJWP4.js} +7 -7
  297. package/dist/interface/ha/{ConfigTriggerMqtt-wnMfk_Un.js → ConfigTriggerMqtt-CsAxA7QZ.js} +1 -1
  298. package/dist/interface/ha/{ConfigTriggerSensor-xFpI5KPu.js → ConfigTriggerSensor-CTxr9cfU.js} +1 -1
  299. package/dist/interface/ha/{ConfigTriggerSystem-YI9WYYVM.js → ConfigTriggerSystem-C8UEfpfs.js} +2 -2
  300. package/dist/interface/ha/{ConfigTriggerWebhook-58c2KgUe.js → ConfigTriggerWebhook-frEE-SCB.js} +1 -1
  301. package/dist/interface/ha/{Console-Coiqh32K.js → Console-A3VtbsLg.js} +12 -12
  302. package/dist/interface/ha/{CuiAutomationRunsDialog-CJ2MGfEY.js → CuiAutomationRunsDialog-BlJvhBiX.js} +2 -2
  303. package/dist/interface/ha/{CuiBottomSheet-BlG9Pl9j.js → CuiBottomSheet-Cu-t3H0Z.js} +1 -1
  304. package/dist/interface/ha/{CuiCameraRecordings-DLXEB4Q7.js → CuiCameraRecordings-R5ArEmqJ.js} +10 -10
  305. package/dist/interface/ha/{CuiCameraShares-BCIeaM6u.js → CuiCameraShares-B9pfRkM4.js} +5 -5
  306. package/dist/interface/ha/{CuiCameraTable-PYYC7sOu.js → CuiCameraTable-CKjGKaMC.js} +9 -9
  307. package/dist/interface/ha/{CuiChartTable-FQ2iR5Hd.js → CuiChartTable-BxWjRe-k.js} +89 -74
  308. package/dist/interface/ha/{CuiConsole-C77k5q_-.js → CuiConsole-C5fzsR7t.js} +4 -4
  309. package/dist/interface/ha/{CuiDataTable-CIKQLseG.js → CuiDataTable-BOdQDY8J.js} +5 -5
  310. package/dist/interface/ha/{CuiPluginCard-DZNXKP_P.js → CuiPluginCard-BT71RRAD.js} +33 -33
  311. package/dist/interface/ha/{CuiPluginOAuthButton-DVf52_Zc.js → CuiPluginOAuthButton-moh9uS7G.js} +7 -7
  312. package/dist/interface/ha/{CuiPluginTrustBadge-CPljYiM8.js → CuiPluginTrustBadge-F_pVWkPJ.js} +1 -1
  313. package/dist/interface/ha/{CuiQRCode-oe8PLnLj.js → CuiQRCode-BNuj-nJ4.js} +6 -6
  314. package/dist/interface/ha/{CuiSchema-CQy94ZTs.js → CuiSchema-Cb_8Ks-I.js} +125 -125
  315. package/dist/interface/ha/{CuiTopNavbarItem-D6OHZLQY.js → CuiTopNavbarItem-BGzrrTls.js} +1 -1
  316. package/dist/interface/ha/{Faces-DxAPvemO.js → Faces-CsM5VO8Q.js} +247 -247
  317. package/dist/interface/ha/{FirstSteps-ZINTSaeL.js → FirstSteps-BFX0-EEi.js} +12 -12
  318. package/dist/interface/ha/{Floorplan-DkbL8ppT.js → Floorplan-D6MGqSJT.js} +198 -199
  319. package/dist/interface/ha/{Instances-totWtqd7.js → Instances-CHzIUyyA.js} +72 -72
  320. package/dist/interface/ha/{Logs-CzabIFja.js → Logs-DZKM3dWv.js} +10 -10
  321. package/dist/interface/ha/{Menu-DcVBOQfw.js → Menu-BQz4dfQi.js} +8 -8
  322. package/dist/interface/ha/{Metrics-B_SN5hbp.js → Metrics-CdpWJ1mm.js} +310 -308
  323. package/dist/interface/ha/{OAuthDeviceFlow-B28TPsTQ.js → OAuthDeviceFlow-DUELtx3X.js} +9 -9
  324. package/dist/interface/ha/{Plugin-B2PbbB8d.js → Plugin-5bbTF0Rv.js} +92 -92
  325. package/dist/interface/ha/{PluginConsole-_KeG4FvO.js → PluginConsole-C__0lzsS.js} +4 -4
  326. package/dist/interface/ha/{PluginDetail-GK_Fx14e.js → PluginDetail-Blrktk9W.js} +9 -9
  327. package/dist/interface/ha/{PluginSearch-qSy4aqAW.js → PluginSearch-BKbdwHQ1.js} +121 -121
  328. package/dist/interface/ha/{PluginUpdateProgress-C4Q2j6VO.js → PluginUpdateProgress-IsNiecu3.js} +3 -3
  329. package/dist/interface/ha/{Plugins-D0tvZHie.js → Plugins-CC2Dwlx5.js} +53 -53
  330. package/dist/interface/ha/{Recordings-CpxJYaAa.js → Recordings-B1XsJrzs.js} +303 -301
  331. package/dist/interface/ha/{SensorEdit-8KtqLXEu.js → SensorEdit-Bi2Yx_ji.js} +46 -46
  332. package/dist/interface/ha/{SensorHistory-CPTTsdjM.js → SensorHistory-sqG_6eav.js} +2 -2
  333. package/dist/interface/ha/{Sensors-DJt_Hnn2.js → Sensors-DLtOh1p4.js} +509 -510
  334. package/dist/interface/ha/{Settings-B-OdG5pG.js → Settings-DI3_zenm.js} +38 -38
  335. package/dist/interface/ha/{SettingsAccount-Ba2-2Lbi.js → SettingsAccount-pS86Qyr-.js} +251 -251
  336. package/dist/interface/ha/{SettingsAppearance-D56HjSuQ.js → SettingsAppearance-tS3bubKQ.js} +4 -4
  337. package/dist/interface/ha/{SettingsAssistant-DglU0auc.js → SettingsAssistant-LejCRXsF.js} +501 -501
  338. package/dist/interface/ha/{SettingsBackup-DZx4McDz.js → SettingsBackup-CkhD1Kze.js} +23 -23
  339. package/dist/interface/ha/{SettingsList-D9nIGkbE.js → SettingsList-bibwvPSM.js} +2 -2
  340. package/dist/interface/ha/{SettingsMqtt-BOszh--k.js → SettingsMqtt-DSt0B4Qg.js} +18 -18
  341. package/dist/interface/ha/{SettingsNotifications-DBVpZfp0.js → SettingsNotifications-BF7ajNwE.js} +118 -118
  342. package/dist/interface/ha/{SettingsRecordings-D3oJnizu.js → SettingsRecordings-BTIdncxg.js} +9 -9
  343. package/dist/interface/ha/{SettingsRemote-BOotvcOT.js → SettingsRemote-Cba4P1-O.js} +347 -344
  344. package/dist/interface/ha/{SettingsSystem-Bg11qoQX.js → SettingsSystem-_Nnh2ZF5.js} +9 -9
  345. package/dist/interface/ha/{SettingsUsers-KpLs9Jnh.js → SettingsUsers-BfHFoxJi.js} +83 -83
  346. package/dist/interface/ha/{Terminal-D6opTHYI.js → Terminal-Dv_7oWmS.js} +11 -11
  347. package/dist/interface/ha/Training-CaSFA5oH.js +1699 -0
  348. package/dist/interface/ha/{Updates-C_OvXJjd.js → Updates-BHl5H7zE.js} +15 -15
  349. package/dist/interface/ha/{VariableInput-CfaDp67S.js → VariableInput-DtLo7-Nw.js} +1 -1
  350. package/dist/interface/ha/{VersionsHandler-D1FVeYUZ.js → VersionsHandler-CF0DSeol.js} +10 -10
  351. package/dist/interface/ha/{VirtualSensorCreate-DJIgMVrt.js → VirtualSensorCreate-C907EgIz.js} +2 -2
  352. package/dist/interface/ha/Workers-Dz1d9gEQ.js +814 -0
  353. package/dist/interface/ha/{ace-B3bPzJu9.js → ace-C9MtBQVV.js} +1 -1
  354. package/dist/interface/ha/{ace.config-Dt55Nqby.js → ace.config-CSXnaIzV.js} +1 -1
  355. package/dist/interface/ha/{api-D2VzV4is.js → api-DUqpDJ2N.js} +14361 -14070
  356. package/dist/interface/ha/{api-CDawdL4p.js → api-gId1nlMj.js} +4 -4
  357. package/dist/interface/ha/{assistant-BmDAfChm.js → assistant-BaR65gIY.js} +50 -50
  358. package/dist/interface/ha/{auth-CvLz9C4w.js → auth-Btsz_KxO.js} +38 -38
  359. package/dist/interface/ha/{automationBlueprint-BhNaeOZ1.js → automationBlueprint-CuO3iOiM.js} +3 -3
  360. package/dist/interface/ha/cameraui-cards.js +1 -1
  361. package/dist/interface/ha/{cards-MQrnU0T8.js → cards-DWhezIPP.js} +1447 -1407
  362. package/dist/interface/ha/{config-t_oAKFkJ.js → config-BKStpoEQ.js} +12 -12
  363. package/dist/interface/ha/{dist-oFWkn6pD.js → dist-CM7R4_Gj.js} +34 -25
  364. package/dist/interface/ha/{mqtt-C20h1uze.js → mqtt-ajcSmTB-.js} +14 -14
  365. package/dist/interface/ha/{notifications-Cy9DKiEn.js → notifications-Cf9dXHEO.js} +18 -18
  366. package/dist/interface/ha/{pinia-BokSpDzj.js → pinia-DIKO5lnE.js} +267 -259
  367. package/dist/interface/ha/{plugins-jozYyBhV.js → plugins-ml823dJV.js} +61 -61
  368. package/dist/interface/ha/{rooms-DyfT3cXp.js → rooms-C5gUErBi.js} +9 -9
  369. package/dist/interface/ha/{server-hCCjQjZE.js → server-dArenpJI.js} +26 -26
  370. package/dist/interface/ha/{types-RG0SckNR.js → types-DYymuACA.js} +25 -25
  371. package/dist/interface/ha/{ungrouped-BbyfoCQp.js → ungrouped-BHLAySWP.js} +237 -213
  372. package/dist/interface/ha/{updates-hUgVDgoD.js → updates-D5sFzGtC.js} +33 -33
  373. package/dist/interface/ha/{useAppVersion-wNhZDuvR.js → useAppVersion-C5x3Ap4_.js} +1 -1
  374. package/dist/interface/ha/{useKeyboardInset-Cmbvb_W3.js → useKeyboardInset-Cj0T2AFX.js} +1 -1
  375. package/dist/interface/ha/{useLogsSocket-y9Aex3tJ.js → useLogsSocket-DtvfQlPh.js} +1 -1
  376. package/dist/interface/ha/{useNavLayout-Ehb0t34k.js → useNavLayout-HSFBA4JV.js} +13 -13
  377. package/dist/interface/ha/{useServerRestart-CRSVcz3z.js → useServerRestart-Ci0SppGW.js} +1 -1
  378. package/dist/interface/ha/{useTabSwipe-B_bseZkI.js → useTabSwipe-CPKkRmaH.js} +1 -1
  379. package/dist/interface/ha/{useUpdateChannel-C_GU6lj6.js → useUpdateChannel-CXHHovK3.js} +2 -2
  380. package/dist/interface/ha/{useUpdatesSocket-CYgHb7UX.js → useUpdatesSocket-DVST2YXV.js} +1 -1
  381. package/dist/interface/ha/{useUserOptions-pVYr-s3O.js → useUserOptions-BYcYI6QA.js} +1 -1
  382. package/dist/interface/index.html +70 -70
  383. package/dist/interface/sw.js +1 -1
  384. package/dist/server/package.json +16 -16
  385. package/dist/server/requirements.txt +2 -2
  386. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +8 -0
  387. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/device.py +5 -1
  388. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/internal/camera_config_internal.py +5 -1
  389. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/manager/__init__.py +2 -1
  390. package/dist/server/src/api/controllers/api.controller.js +1 -1
  391. package/dist/server/src/api/controllers/api.controller.js.map +1 -1
  392. package/dist/server/src/api/controllers/plugins.controller.js +1 -0
  393. package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
  394. package/dist/server/src/api/controllers/workers.controller.d.ts +2 -2
  395. package/dist/server/src/api/controllers/workers.controller.js +8 -2
  396. package/dist/server/src/api/controllers/workers.controller.js.map +1 -1
  397. package/dist/server/src/api/database/record-schemas.d.ts +3 -0
  398. package/dist/server/src/api/database/record-schemas.js +1 -0
  399. package/dist/server/src/api/database/record-schemas.js.map +1 -1
  400. package/dist/server/src/api/database/types.d.ts +4 -0
  401. package/dist/server/src/api/routes/workers.routes.js +4 -4
  402. package/dist/server/src/api/routes/workers.routes.js.map +1 -1
  403. package/dist/server/src/api/schemas/cameras.schema.d.ts +38 -0
  404. package/dist/server/src/api/schemas/cameras.schema.js +22 -0
  405. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  406. package/dist/server/src/api/schemas/users.schema.d.ts +12 -0
  407. package/dist/server/src/api/schemas/users.schema.js +4 -0
  408. package/dist/server/src/api/schemas/users.schema.js.map +1 -1
  409. package/dist/server/src/api/schemas/workers.schema.d.ts +5 -4
  410. package/dist/server/src/api/schemas/workers.schema.js +6 -3
  411. package/dist/server/src/api/schemas/workers.schema.js.map +1 -1
  412. package/dist/server/src/api/services/cameras.service.d.ts +3 -0
  413. package/dist/server/src/api/services/cameras.service.js +47 -2
  414. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  415. package/dist/server/src/api/services/plugins.service.d.ts +1 -0
  416. package/dist/server/src/api/services/plugins.service.js +5 -1
  417. package/dist/server/src/api/services/plugins.service.js.map +1 -1
  418. package/dist/server/src/api/services/workers.service.d.ts +2 -0
  419. package/dist/server/src/api/services/workers.service.js +15 -0
  420. package/dist/server/src/api/services/workers.service.js.map +1 -1
  421. package/dist/server/src/api/types/index.d.ts +3 -2
  422. package/dist/server/src/api/websocket/nsp/notifications.d.ts +1 -0
  423. package/dist/server/src/api/websocket/nsp/notifications.js +7 -0
  424. package/dist/server/src/api/websocket/nsp/notifications.js.map +1 -1
  425. package/dist/server/src/assistant/automation-catalog.js +12 -2
  426. package/dist/server/src/assistant/automation-catalog.js.map +1 -1
  427. package/dist/server/src/assistant/pricing.js +39 -10
  428. package/dist/server/src/assistant/pricing.js.map +1 -1
  429. package/dist/server/src/assistant/providers.js +9 -1
  430. package/dist/server/src/assistant/providers.js.map +1 -1
  431. package/dist/server/src/camera/decoder/event-manager.d.ts +1 -2
  432. package/dist/server/src/camera/decoder/event-manager.js +37 -59
  433. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  434. package/dist/server/src/manager/coreManager.d.ts +2 -1
  435. package/dist/server/src/manager/coreManager.js +9 -2
  436. package/dist/server/src/manager/coreManager.js.map +1 -1
  437. package/dist/server/src/manager/notificationManager.d.ts +1 -0
  438. package/dist/server/src/manager/notificationManager.js +11 -0
  439. package/dist/server/src/manager/notificationManager.js.map +1 -1
  440. package/dist/server/src/plugins/runtime/node/proxy/coreManager.js +1 -1
  441. package/dist/server/src/plugins/runtime/node/proxy/coreManager.js.map +1 -1
  442. package/dist/server/src/plugins/runtime/python/proxy/camera_device.py +3 -0
  443. package/dist/server/src/plugins/runtime/python/proxy/core_manager.py +1 -1
  444. package/dist/server/src/plugins/runtime/python/rpc/typings.py +1 -1
  445. package/dist/server/src/rpc/interfaces/core.d.ts +1 -1
  446. package/dist/server/src/sensors/registry.d.ts +2 -0
  447. package/dist/server/src/sensors/registry.js +24 -0
  448. package/dist/server/src/sensors/registry.js.map +1 -1
  449. package/dist/server/src/services/config/index.d.ts +1 -0
  450. package/dist/server/src/services/config/index.js +12 -1
  451. package/dist/server/src/services/config/index.js.map +1 -1
  452. package/dist/server/src/utils/ipc.js +23 -17
  453. package/dist/server/src/utils/ipc.js.map +1 -1
  454. package/dist/server/src/workers/agent.js +2 -0
  455. package/dist/server/src/workers/agent.js.map +1 -1
  456. package/dist/server/src/workers/manager.d.ts +1 -0
  457. package/dist/server/src/workers/manager.js +22 -0
  458. package/dist/server/src/workers/manager.js.map +1 -1
  459. package/dist/server/src/workers/types.d.ts +5 -0
  460. package/dist/server/src/workers/types.js.map +1 -1
  461. package/npm-shrinkwrap.json +111 -111
  462. package/package.json +16 -16
  463. package/dist/interface/assets/Assistant-BJKGIvVo.js +0 -1
  464. package/dist/interface/assets/Automation-C95DzuZb.js +0 -3
  465. package/dist/interface/assets/Automations-BOP_17Ri.js +0 -2
  466. package/dist/interface/assets/Camera-BW9ikKqh.css +0 -1
  467. package/dist/interface/assets/Camera-C5S7eI9a.js +0 -2
  468. package/dist/interface/assets/Camview-CHxKB41T.js +0 -1
  469. package/dist/interface/assets/Config-BrDDGWpr.js +0 -2
  470. package/dist/interface/assets/Console-cIr6lYux.js +0 -1
  471. package/dist/interface/assets/CuiAssistantConversation-Bigl43Ph.js +0 -5
  472. package/dist/interface/assets/CuiAutomationRunsDialog-Ci7SWAml.js +0 -1
  473. package/dist/interface/assets/CuiBottomSheet-ViBOgklN.js +0 -1
  474. package/dist/interface/assets/CuiCameraPipCard-BQKk4fxY.css +0 -1
  475. package/dist/interface/assets/CuiCameraPipCard-wdK7xir-.js +0 -1
  476. package/dist/interface/assets/CuiCameraRecordings-BB7bF67B.js +0 -1
  477. package/dist/interface/assets/CuiCameraTable-CHnQFkce.js +0 -1
  478. package/dist/interface/assets/CuiChartTable-DXY7rY3O.css +0 -1
  479. package/dist/interface/assets/CuiChartTable-dIcxGtfl.js +0 -1
  480. package/dist/interface/assets/CuiDataTable-CQmp5mAy.js +0 -1
  481. package/dist/interface/assets/CuiMarkdownContent-DTAm-EDR.js +0 -1
  482. package/dist/interface/assets/CuiPluginCard-BjIc7It9.js +0 -2
  483. package/dist/interface/assets/Faces-p18jNfXl.js +0 -1
  484. package/dist/interface/assets/Floorplan-DYyEx7WO.js +0 -1
  485. package/dist/interface/assets/Metrics-ChVnC6f6.css +0 -1
  486. package/dist/interface/assets/Metrics-l3UwykCM.js +0 -12
  487. package/dist/interface/assets/Plugin-Ldj3HygQ.js +0 -1
  488. package/dist/interface/assets/PluginDetail-CnfaI1vh.js +0 -2
  489. package/dist/interface/assets/PluginSearch-BiXG3Xk2.js +0 -2
  490. package/dist/interface/assets/PluginSearch-BuE7we1T.js +0 -1
  491. package/dist/interface/assets/Plugins-Csx6AXaW.js +0 -1
  492. package/dist/interface/assets/Recordings-D0KTY5cI.js +0 -1
  493. package/dist/interface/assets/SensorEdit-zs-f_o1N.js +0 -1
  494. package/dist/interface/assets/Sensors-BLAoalEt.js +0 -2
  495. package/dist/interface/assets/SettingsAccount-BsN7jGmo.js +0 -1
  496. package/dist/interface/assets/SettingsAccount-DuVyCSE-.js +0 -1
  497. package/dist/interface/assets/SettingsAppearance-DQcGbYbV.js +0 -1
  498. package/dist/interface/assets/SettingsAssistant-DViJklFd.js +0 -1
  499. package/dist/interface/assets/SettingsMqtt-JoszJJgV.js +0 -1
  500. package/dist/interface/assets/SettingsNotifications-3veSrxa_.js +0 -1
  501. package/dist/interface/assets/SettingsRemote-CtP6Gz9C.css +0 -1
  502. package/dist/interface/assets/SettingsRemote-DUyl8k7I.js +0 -2
  503. package/dist/interface/assets/Terminal-hln2UuSR.js +0 -4
  504. package/dist/interface/assets/Training-D6lhvUf-.js +0 -1
  505. package/dist/interface/assets/Updates-BwSWt9w7.js +0 -2
  506. package/dist/interface/assets/Workers-B6b15izn.js +0 -2
  507. package/dist/interface/assets/ace-DzzM-RlW.js +0 -1
  508. package/dist/interface/assets/api-C9mnOxie.js +0 -4
  509. package/dist/interface/assets/api-Cj9a6qPu.css +0 -2
  510. package/dist/interface/assets/cameraSources-DmVZWs4-.js +0 -1
  511. package/dist/interface/assets/cloudHandoff-Ba98bzeq.js +0 -1
  512. package/dist/interface/assets/esm-Bn9gXwX4.js +0 -1
  513. package/dist/interface/assets/esm-BzM6y2-F.js +0 -1
  514. package/dist/interface/assets/esm-CP3JWrtj.js +0 -1
  515. package/dist/interface/assets/esm-CjAXkqCf.js +0 -1
  516. package/dist/interface/assets/esm-Cqxk-j1S.js +0 -1
  517. package/dist/interface/assets/esm-DFHd3JNU.js +0 -1
  518. package/dist/interface/assets/esm-DfMLJtug.js +0 -1
  519. package/dist/interface/assets/esm-DhDrpq7a.js +0 -1
  520. package/dist/interface/assets/esm-DvhM-SOd.js +0 -1
  521. package/dist/interface/assets/esm-G63bqygQ.js +0 -1
  522. package/dist/interface/assets/esm-Gn-Y59hU.js +0 -1
  523. package/dist/interface/assets/esm-KJSOz2vj.js +0 -1
  524. package/dist/interface/assets/esm-Ryfc94Tm.js +0 -1
  525. package/dist/interface/assets/esm-rSfI5Poy.js +0 -1
  526. package/dist/interface/assets/eye-off-outline-DCxLRGo_.js +0 -1
  527. package/dist/interface/assets/main-C796FmqQ.js +0 -3
  528. package/dist/interface/assets/mqtt-DGBPptzB.js +0 -1
  529. package/dist/interface/assets/native-CZJE8bTs.js +0 -1
  530. package/dist/interface/assets/native-DKZwialB.js +0 -1
  531. package/dist/interface/assets/plugin-DSEMkqaK.js +0 -1
  532. package/dist/interface/assets/server-bhW2Mw4D.js +0 -1
  533. package/dist/interface/assets/types-BcAxmlqC.js +0 -1
  534. package/dist/interface/assets/ungrouped-BnQIcSQd.css +0 -1
  535. package/dist/interface/assets/ungrouped-CkIlDUwl.js +0 -1
  536. package/dist/interface/assets/updates-D3x_kPMM.js +0 -1
  537. package/dist/interface/assets/useBackupRestore-xp5KhKVn.js +0 -1
  538. package/dist/interface/assets/useKeyboardInset-C0Lp0UcX.js +0 -1
  539. package/dist/interface/assets/useUserOptions-BQdOB-Dp.js +0 -1
  540. package/dist/interface/assets/vendor-gFkr2qsZ.js +0 -23
  541. package/dist/interface/assets/vendor-leaflet-DkAk6mAj.js +0 -1
  542. package/dist/interface/assets/web-BDNQnMmA.js +0 -1
  543. package/dist/interface/assets/web-B_9Qyt8E.js +0 -1
  544. package/dist/interface/assets/web-BhJykCtq.js +0 -1
  545. package/dist/interface/assets/web-BjKL51lK-wWFeZlLg.js +0 -1
  546. package/dist/interface/assets/web-C7nJwIOa.js +0 -1
  547. package/dist/interface/assets/web-CGJsJQDb.js +0 -1
  548. package/dist/interface/assets/web-CJwASxrl.js +0 -1
  549. package/dist/interface/assets/web-CLe0L31Y.js +0 -1
  550. package/dist/interface/assets/web-DEv1hAn1.js +0 -1
  551. package/dist/interface/assets/web-DaeQvsXT.js +0 -1
  552. package/dist/interface/assets/web-H3-wNunW.js +0 -1
  553. package/dist/interface/assets/web-LCdyqJq1.js +0 -1
  554. package/dist/interface/assets/web-XZWYTK65.js +0 -1
  555. package/dist/interface/assets/web-rU5hlxxW.js +0 -1
  556. package/dist/interface/assets/workbox-window.prod.es5-BEYAF-e-.js +0 -1
  557. package/dist/interface/ha/Camera-C28q_3pu.js +0 -657
  558. package/dist/interface/ha/Training-OB2KOQ7L.js +0 -1694
  559. package/dist/interface/ha/Workers-cJMI4mYX.js +0 -765
  560. package/dist/interface/ha/eye-off-outline-ACbzsGuK.js +0 -19
@@ -3,376 +3,375 @@ import { m as t } from "./ripple-ZDATPc2w.js";
3
3
  import { B as n, H as r, Jt as i, Wt as a, Y as ee, _t as o, bt as s, d as c, f as l, ft as te, gt as ne, kt as u, l as d, lt as f, ot as re, p, qt as ie, r as ae, rt as oe, u as m, ut as h, v as g, x as se, xt as _, y as v, yt as ce, z as le } from "./runtime-core.esm-bundler-_TfE0DWz.js";
4
4
  import { t as ue } from "./tooltip-BDrlgLof.js";
5
5
  import { t as de } from "./history-XMyO_cLc.js";
6
- import { $i as y, Ar as fe, Bi as b, Ci as x, Dn as pe, Dr as me, Er as S, Jt as he, Or as ge, R as C, Si as _e, U as ve, Wr as ye, _t as w, bi as T, dn as E, ei as be, et as xe, fi as D, gr as Se, gt as O, la as k, q as Ce, wr as we, z as Te } from "./api-D2VzV4is.js";
7
- import { M as A } from "./protocol-BB4jdtUC-DW3jl2tV.js";
8
- import { i as Ee } from "./intercomService-B7HkLs6z.js";
9
- import { T as De, k as j, r as Oe } from "./pinia-BokSpDzj.js";
10
- import { n as ke } from "./vue-i18n-D5EAy78K.js";
11
- import { D as M } from "./dist-BIngHzHx.js";
12
- import { n as Ae } from "./alert-outline-FcLLjoOK.js";
13
- import { a as je, c as Me, d as Ne, f as Pe, h as Fe, i as Ie, l as Le, o as Re, p as ze, r as Be, s as Ve, u as N } from "./eventIcons-BFNUgeGr.js";
14
- import { n as He, t as Ue } from "./button-BouAFgf5.js";
15
- import { v as We } from "./dist-oFWkn6pD.js";
16
- import { n as Ge, t as Ke } from "./inputicon-1w06U-Jl.js";
17
- import { t as qe } from "./inputtext-C_ygnPrC.js";
18
- import { t as Je } from "./checkbox-CAKzZcqk.js";
19
- import { t as Ye } from "./close-CxFbonhd.js";
20
- import { t as Xe } from "./chip-BTHURsTF.js";
21
- import { i as Ze, t as Qe } from "./CuiDataTable-CIKQLseG.js";
22
- import { t as $e } from "./search-BViwEHdF.js";
23
- import { t as et } from "./trash-can-outline-CBwv40Ck.js";
24
- import { t as tt } from "./back-filled-CaxrZv0Q.js";
25
- import { t as nt } from "./plus-CgxY7W0L.js";
26
- import { t as rt } from "./settings-lWJfHaif.js";
27
- import { t as it } from "./radar-BG-Tcwg_.js";
28
- import { t as at } from "./eye-off-outline-ACbzsGuK.js";
6
+ import { Ar as fe, Dn as pe, Er as me, Hi as he, Jt as ge, Kr as _e, Mr as y, Or as b, R as ve, Si as x, Ti as S, U as ye, _r as be, _t as C, da as w, dn as T, et as xe, gt as Se, kr as Ce, mi as E, ni as we, q as Te, ta as D, vr as Ee, wi as O, z as De } from "./api-DUqpDJ2N.js";
7
+ import { M as k } from "./protocol-BB4jdtUC-DW3jl2tV.js";
8
+ import { i as Oe } from "./intercomService-B7HkLs6z.js";
9
+ import { T as ke, k as A, r as Ae } from "./pinia-DIKO5lnE.js";
10
+ import { n as je } from "./vue-i18n-D5EAy78K.js";
11
+ import { D as j } from "./dist-BIngHzHx.js";
12
+ import { n as Me } from "./alert-outline-FcLLjoOK.js";
13
+ import { a as Ne, c as Pe, d as Fe, f as Ie, h as Le, i as Re, l as ze, o as Be, p as Ve, r as He, s as Ue, u as M } from "./eventIcons-BFNUgeGr.js";
14
+ import { n as We, t as Ge } from "./button-BouAFgf5.js";
15
+ import { v as Ke } from "./dist-CM7R4_Gj.js";
16
+ import { n as qe, t as Je } from "./inputicon-1w06U-Jl.js";
17
+ import { t as Ye } from "./inputtext-C_ygnPrC.js";
18
+ import { t as Xe } from "./checkbox-CAKzZcqk.js";
19
+ import { t as Ze } from "./close-CxFbonhd.js";
20
+ import { t as Qe } from "./chip-BTHURsTF.js";
21
+ import { i as $e, t as et } from "./CuiDataTable-BOdQDY8J.js";
22
+ import { t as tt } from "./search-BViwEHdF.js";
23
+ import { t as nt } from "./trash-can-outline-CBwv40Ck.js";
24
+ import { t as rt } from "./back-filled-CaxrZv0Q.js";
25
+ import { t as it } from "./plus-CgxY7W0L.js";
26
+ import { t as at } from "./settings-lWJfHaif.js";
27
+ import { t as ot } from "./radar-BG-Tcwg_.js";
29
28
  //#region ~icons/mdi/account-search-outline
30
- var P = {
29
+ var N = {
31
30
  viewBox: "0 0 24 24",
32
31
  width: "1.2em",
33
32
  height: "1.2em"
34
33
  };
35
- function ot(e, t) {
36
- return r(), p("svg", P, [...t[0] ||= [m("path", {
34
+ function st(e, t) {
35
+ return r(), p("svg", N, [...t[0] ||= [m("path", {
37
36
  fill: "currentColor",
38
37
  d: "M10 13c-.35.59-.64 1.24-.81 1.93C6.5 15.16 3.9 16.42 3.9 17v1.1h5.3c.17.68.45 1.32.8 1.9H2v-3c0-2.66 5.33-4 8-4m0-9a4 4 0 0 1 4 4c0 .91-.31 1.75-.82 2.43c-.86.32-1.63.83-2.27 1.47L10 12a4 4 0 0 1-4-4a4 4 0 0 1 4-4m0 1.9A2.1 2.1 0 0 0 7.9 8a2.1 2.1 0 0 0 2.1 2.1A2.1 2.1 0 0 0 12.1 8A2.1 2.1 0 0 0 10 5.9m5.5 6.1c2.5 0 4.5 2 4.5 4.5c0 .88-.25 1.71-.69 2.4l3.08 3.1L21 23.39l-3.12-3.07c-.69.43-1.51.68-2.38.68c-2.5 0-4.5-2-4.5-4.5s2-4.5 4.5-4.5m0 2a2.5 2.5 0 0 0-2.5 2.5a2.5 2.5 0 0 0 2.5 2.5a2.5 2.5 0 0 0 2.5-2.5a2.5 2.5 0 0 0-2.5-2.5"
39
38
  }, null, -1)]]);
40
39
  }
41
- var st = o({
40
+ var ct = o({
42
41
  name: "mdi-account-search-outline",
43
- render: ot
44
- }), F = {
42
+ render: st
43
+ }), P = {
45
44
  viewBox: "0 0 24 24",
46
45
  width: "1.2em",
47
46
  height: "1.2em"
48
47
  };
49
- function I(e, t) {
50
- return r(), p("svg", F, [...t[0] ||= [m("path", {
48
+ function F(e, t) {
49
+ return r(), p("svg", P, [...t[0] ||= [m("path", {
51
50
  fill: "currentColor",
52
51
  d: "M6 6.9L3.87 4.78l1.41-1.41L7.4 5.5zM13 1v3h-2V1zm7.13 3.78L18 6.9l-1.4-1.4l2.12-2.13zM4.5 10.5v2h-3v-2zm15 0h3v2h-3zM6 20h12a2 2 0 0 1 2 2H4a2 2 0 0 1 2-2m6-15a6 6 0 0 1 6 6v8H6v-8a6 6 0 0 1 6-6m0 2a4 4 0 0 0-4 4v6h8v-6a4 4 0 0 0-4-4"
53
52
  }, null, -1)]]);
54
53
  }
55
- var L = o({
54
+ var I = o({
56
55
  name: "mdi-alarm-light-outline",
57
- render: I
58
- }), ct = {
56
+ render: F
57
+ }), lt = {
59
58
  viewBox: "0 0 24 24",
60
59
  width: "1.2em",
61
60
  height: "1.2em"
62
61
  };
63
- function lt(e, t) {
64
- return r(), p("svg", ct, [...t[0] ||= [m("path", {
62
+ function ut(e, t) {
63
+ return r(), p("svg", lt, [...t[0] ||= [m("path", {
65
64
  fill: "currentColor",
66
65
  d: "M16 10H8V6h8m.67-2H15V2H9v2H7.33A1.33 1.33 0 0 0 6 5.33v15.34C6 21.4 6.6 22 7.33 22h9.34A1.33 1.33 0 0 0 18 20.67V5.33C18 4.6 17.4 4 16.67 4"
67
66
  }, null, -1)]]);
68
67
  }
69
- var ut = o({
68
+ var dt = o({
70
69
  name: "mdi-battery-70",
71
- render: lt
72
- }), dt = {
70
+ render: ut
71
+ }), ft = {
73
72
  viewBox: "0 0 24 24",
74
73
  width: "1.2em",
75
74
  height: "1.2em"
76
75
  };
77
- function ft(e, t) {
78
- return r(), p("svg", dt, [...t[0] ||= [m("path", {
76
+ function pt(e, t) {
77
+ return r(), p("svg", ft, [...t[0] ||= [m("path", {
79
78
  fill: "currentColor",
80
79
  d: "M12 18a6 6 0 0 1-6-6a6 6 0 0 1 6-6a6 6 0 0 1 6 6a6 6 0 0 1-6 6m8-2.69L23.31 12L20 8.69V4h-4.69L12 .69L8.69 4H4v4.69L.69 12L4 15.31V20h4.69L12 23.31L15.31 20H20z"
81
80
  }, null, -1)]]);
82
81
  }
83
- var R = o({
82
+ var L = o({
84
83
  name: "mdi-brightness-5",
85
- render: ft
86
- }), z = {
84
+ render: pt
85
+ }), R = {
87
86
  viewBox: "0 0 24 24",
88
87
  width: "1.2em",
89
88
  height: "1.2em"
90
89
  };
91
- function B(e, t) {
92
- return r(), p("svg", z, [...t[0] ||= [m("path", {
90
+ function z(e, t) {
91
+ return r(), p("svg", R, [...t[0] ||= [m("path", {
93
92
  fill: "currentColor",
94
93
  d: "M9.61 16.11c0-2.08.98-3.92 2.49-5.11H5l1.5-4.5h11l1.22 3.66c.84.37 1.58.91 2.19 1.58L18.92 6c-.2-.58-.76-1-1.42-1h-11c-.66 0-1.22.42-1.42 1L3 12v8c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-1h4.29c-.43-.87-.68-1.85-.68-2.89M6.5 16c-.83 0-1.5-.67-1.5-1.5S5.67 13 6.5 13s1.5.67 1.5 1.5S7.33 16 6.5 16m14.21 4.7l-.01.01zm-4.6-9.09c2.5 0 4.5 2 4.5 4.5c0 .89-.25 1.71-.69 2.39L23 21.61L21.61 23l-3.11-3.07c-.7.43-1.5.68-2.39.68c-2.5 0-4.5-2-4.5-4.5s2-4.5 4.5-4.5m0 2a2.5 2.5 0 1 0 2.5 2.5c0-1.39-1.11-2.5-2.5-2.5"
95
94
  }, null, -1)]]);
96
95
  }
97
- var V = o({
96
+ var B = o({
98
97
  name: "mdi-car-search",
99
- render: B
100
- }), pt = {
98
+ render: z
99
+ }), mt = {
101
100
  viewBox: "0 0 24 24",
102
101
  width: "1.2em",
103
102
  height: "1.2em"
104
103
  };
105
- function mt(e, t) {
106
- return r(), p("svg", pt, [...t[0] ||= [m("path", {
104
+ function ht(e, t) {
105
+ return r(), p("svg", mt, [...t[0] ||= [m("path", {
107
106
  fill: "currentColor",
108
107
  d: "M21 16.5c0 .38-.21.71-.53.88l-7.9 4.44c-.16.12-.36.18-.57.18s-.41-.06-.57-.18l-7.9-4.44A.99.99 0 0 1 3 16.5v-9c0-.38.21-.71.53-.88l7.9-4.44c.16-.12.36-.18.57-.18s.41.06.57.18l7.9 4.44c.32.17.53.5.53.88zM12 4.15L6.04 7.5L12 10.85l5.96-3.35zM5 15.91l6 3.38v-6.71L5 9.21zm14 0v-6.7l-6 3.37v6.71z"
109
108
  }, null, -1)]]);
110
109
  }
111
- var ht = o({
110
+ var gt = o({
112
111
  name: "mdi-cube-outline",
113
- render: mt
114
- }), H = {
112
+ render: ht
113
+ }), V = {
115
114
  viewBox: "0 0 24 24",
116
115
  width: "1.2em",
117
116
  height: "1.2em"
118
117
  };
119
- function gt(e, t) {
120
- return r(), p("svg", H, [...t[0] ||= [m("path", {
118
+ function _t(e, t) {
119
+ return r(), p("svg", V, [...t[0] ||= [m("path", {
121
120
  fill: "currentColor",
122
121
  d: "M17 22v-2h3v-3h2v3.5c0 .39-.16.74-.46 1.04s-.65.46-1.04.46zM7 22H3.5c-.39 0-.74-.16-1.04-.46S2 20.89 2 20.5V17h2v3h3zM17 2h3.5c.39 0 .74.16 1.04.46s.46.65.46 1.04V7h-2V4h-3zM7 2v2H4v3H2V3.5c0-.39.16-.74.46-1.04S3.11 2 3.5 2zm6 15.25l4-2.3v-4.59l-4 2.3zm-1-6.33l4-2.29l-4-2.35l-4 2.35zm-5 4.03l4 2.3v-4.59l-4-2.3zm11.23-7.36c.5.32.77.75.77 1.32v6.32c0 .57-.27 1-.77 1.32l-5.48 3.18q-.75.48-1.5 0l-5.48-3.18c-.5-.32-.77-.75-.77-1.32V8.91c0-.57.27-1 .77-1.32l5.48-3.18c.25-.13.5-.19.75-.19s.5.06.75.19z"
123
122
  }, null, -1)]]);
124
123
  }
125
- var U = o({
124
+ var H = o({
126
125
  name: "mdi-cube-scan",
127
- render: gt
128
- }), _t = {
126
+ render: _t
127
+ }), vt = {
129
128
  viewBox: "0 0 24 24",
130
129
  width: "1.2em",
131
130
  height: "1.2em"
132
131
  };
133
- function vt(e, t) {
134
- return r(), p("svg", _t, [...t[0] ||= [m("path", {
132
+ function yt(e, t) {
133
+ return r(), p("svg", vt, [...t[0] ||= [m("path", {
135
134
  fill: "currentColor",
136
135
  d: "M8 3c-1.11 0-2 .89-2 2v16h12V5c0-1.11-.89-2-2-2zm0 2h8v14H8zm5 6v2h2v-2z"
137
136
  }, null, -1)]]);
138
137
  }
139
- var W = o({
138
+ var U = o({
140
139
  name: "mdi-door",
141
- render: vt
142
- }), yt = {
140
+ render: yt
141
+ }), bt = {
143
142
  viewBox: "0 0 24 24",
144
143
  width: "1.2em",
145
144
  height: "1.2em"
146
145
  };
147
- function bt(e, t) {
148
- return r(), p("svg", yt, [...t[0] ||= [m("path", {
146
+ function xt(e, t) {
147
+ return r(), p("svg", bt, [...t[0] ||= [m("path", {
149
148
  fill: "currentColor",
150
149
  d: "M12 3L2 12h3v8h14v-8h3zm0 5.75A2.25 2.25 0 0 1 14.25 11A2.25 2.25 0 0 1 12 13.25A2.25 2.25 0 0 1 9.75 11A2.25 2.25 0 0 1 12 8.75M12 15c1.5 0 4.5.75 4.5 2.25V18h-9v-.75c0-1.5 3-2.25 4.5-2.25"
151
150
  }, null, -1)]]);
152
151
  }
153
- var xt = o({
152
+ var St = o({
154
153
  name: "mdi-home-account",
155
- render: bt
156
- }), G = {
154
+ render: xt
155
+ }), W = {
157
156
  viewBox: "0 0 24 24",
158
157
  width: "1.2em",
159
158
  height: "1.2em"
160
159
  };
161
- function St(e, t) {
162
- return r(), p("svg", G, [...t[0] ||= [m("path", {
160
+ function Ct(e, t) {
161
+ return r(), p("svg", W, [...t[0] ||= [m("path", {
163
162
  fill: "currentColor",
164
163
  d: "M15.5 9c.7 0 1.29-.24 1.77-.73c.49-.48.73-1.07.73-1.77c0-.67-.24-1.27-.73-1.77c-.48-.5-1.07-.73-1.77-.73c-.67 0-1.27.23-1.77.73S13 5.83 13 6.5c0 .7.23 1.29.73 1.77c.5.49 1.1.73 1.77.73m3.81-.09l3.1 3.09L21 13.41l-3.14-3.1c-.78.47-1.58.69-2.39.69c-1.25 0-2.31-.42-3.17-1.3c-.85-.87-1.3-1.93-1.3-3.2c0-1.23.45-2.3 1.33-3.17C13.2 2.45 14.27 2 15.5 2c1.27 0 2.33.45 3.2 1.33c.88.87 1.3 1.94 1.3 3.17c0 .83-.22 1.63-.69 2.41M16.5 18h-11l2.75-3.5l1.97 2.33l2.72-3.52zm1.5-5l2 2v5c0 .55-.19 1-.59 1.4c-.41.39-.88.6-1.41.6H4c-.55 0-1-.21-1.4-.6c-.39-.4-.6-.85-.6-1.4V6c0-.53.21-1 .6-1.41C3 4.19 3.45 4 4 4h5.5c-.3.64-.47 1.31-.5 2H4v14h14z"
165
164
  }, null, -1)]]);
166
165
  }
167
- var K = o({
166
+ var G = o({
168
167
  name: "mdi-image-search-outline",
169
- render: St
170
- }), Ct = {
168
+ render: Ct
169
+ }), wt = {
171
170
  viewBox: "0 0 24 24",
172
171
  width: "1.2em",
173
172
  height: "1.2em"
174
173
  };
175
- function wt(e, t) {
176
- return r(), p("svg", Ct, [...t[0] ||= [m("path", {
174
+ function Tt(e, t) {
175
+ return r(), p("svg", wt, [...t[0] ||= [m("path", {
177
176
  fill: "currentColor",
178
177
  d: "M4 18h9l-2 2H4c-.5 0-1.03-.21-1.41-.59S2 18.5 2 18V8h2zM17.63 4.84C17.27 4.33 16.67 4 16 4H8c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h8c.67 0 1.27-.34 1.63-.85L22 10zM16 14H8V6h8l3.55 4Z"
179
178
  }, null, -1)]]);
180
179
  }
181
- var Tt = o({
180
+ var Et = o({
182
181
  name: "mdi-label-multiple-outline",
183
- render: wt
184
- }), q = {
182
+ render: Tt
183
+ }), K = {
185
184
  viewBox: "0 0 24 24",
186
185
  width: "1.2em",
187
186
  height: "1.2em"
188
187
  };
189
- function Et(e, t) {
190
- return r(), p("svg", q, [...t[0] ||= [m("path", {
188
+ function Dt(e, t) {
189
+ return r(), p("svg", K, [...t[0] ||= [m("path", {
191
190
  fill: "currentColor",
192
191
  d: "M12 17a2 2 0 0 1-2-2c0-1.11.89-2 2-2a2 2 0 0 1 2 2a2 2 0 0 1-2 2m6 3V10H6v10zm0-12a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V10c0-1.11.89-2 2-2h1V6a5 5 0 0 1 5-5a5 5 0 0 1 5 5v2zm-6-5a3 3 0 0 0-3 3v2h6V6a3 3 0 0 0-3-3"
193
192
  }, null, -1)]]);
194
193
  }
195
- var Dt = o({
194
+ var Ot = o({
196
195
  name: "mdi-lock-outline",
197
- render: Et
198
- }), Ot = {
196
+ render: Dt
197
+ }), kt = {
199
198
  viewBox: "0 0 24 24",
200
199
  width: "1.2em",
201
200
  height: "1.2em"
202
201
  };
203
- function kt(e, t) {
204
- return r(), p("svg", Ot, [...t[0] ||= [m("path", {
202
+ function At(e, t) {
203
+ return r(), p("svg", kt, [...t[0] ||= [m("path", {
205
204
  fill: "currentColor",
206
205
  d: "M5 7a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h3v-2H5V9h3V7zm6 0a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2zm0 2h2v6h-2zm5 1.5V12h3v1.5h-1.5A1.5 1.5 0 0 0 16 15v3h4.5v-1.5h-3V15H19a1.5 1.5 0 0 0 1.5-1.5V12a1.5 1.5 0 0 0-1.5-1.5z"
207
206
  }, null, -1)]]);
208
207
  }
209
- var At = o({
208
+ var jt = o({
210
209
  name: "mdi-molecule-co2",
211
- render: kt
212
- }), jt = {
210
+ render: At
211
+ }), Mt = {
213
212
  viewBox: "0 0 24 24",
214
213
  width: "1.2em",
215
214
  height: "1.2em"
216
215
  };
217
- function Mt(e, t) {
218
- return r(), p("svg", jt, [...t[0] ||= [m("path", {
216
+ function Nt(e, t) {
217
+ return r(), p("svg", Mt, [...t[0] ||= [m("path", {
219
218
  fill: "currentColor",
220
219
  d: "M16 7V3h-2v4h-4V3H8v4C7 7 6 8 6 9v5.5L9.5 18v3h5v-3l3.5-3.5V9c0-1-1-2-2-2m0 6.67l-2.91 2.92l-.42.41h-1.34l-.41-.41L8 13.67V9.09c0-.03.06-.09.09-.09h7.83c.03 0 .08.06.08.09z"
221
220
  }, null, -1)]]);
222
221
  }
223
- var Nt = o({
222
+ var Pt = o({
224
223
  name: "mdi-power-plug-outline",
225
- render: Mt
226
- }), Pt = {
224
+ render: Nt
225
+ }), Ft = {
227
226
  viewBox: "0 0 24 24",
228
227
  width: "1.2em",
229
228
  height: "1.2em"
230
229
  };
231
- function Ft(e, t) {
232
- return r(), p("svg", Pt, [...t[0] ||= [m("path", {
230
+ function It(e, t) {
231
+ return r(), p("svg", Ft, [...t[0] ||= [m("path", {
233
232
  fill: "currentColor",
234
233
  d: "M8 14.25L4.75 11H7c.25-5.61 2.39-10 5-10c2 0 3.77 2.64 4.55 6.45C20.36 8.23 23 10 23 12c0 1.83-2.17 3.43-5.4 4.3l.29-2.03C19.8 13.72 21 12.91 21 12c0-1.06-1.65-2-4.13-2.5c.08.79.13 1.63.13 2.5c0 6.08-2.24 11-5 11c-1.83 0-3.43-2.17-4.3-5.4l2.03.29C10.28 19.8 11.09 21 12 21c1.66 0 3-4.03 3-9q0-1.5-.15-2.85Q13.5 9 12 9l-1.86.06l.29-2.01L12 7c.87 0 1.71.05 2.5.13C14 4.65 13.06 3 12 3c-1.54 0-2.82 3.5-3 8h2.25zM14.25 16L11 19.25V17c-5.61-.25-10-2.39-10-5c0-1.83 2.17-3.43 5.4-4.3l-.29 2.03C4.2 10.28 3 11.09 3 12c0 1.54 3.5 2.82 8 3v-2.25z"
235
234
  }, null, -1)]]);
236
235
  }
237
- var It = o({
236
+ var Lt = o({
238
237
  name: "mdi-rotate-orbit",
239
- render: Ft
240
- }), J = {
238
+ render: It
239
+ }), q = {
241
240
  viewBox: "0 0 24 24",
242
241
  width: "1.2em",
243
242
  height: "1.2em"
244
243
  };
245
- function Lt(e, t) {
246
- return r(), p("svg", J, [...t[0] ||= [m("path", {
244
+ function Rt(e, t) {
245
+ return r(), p("svg", q, [...t[0] ||= [m("path", {
247
246
  fill: "currentColor",
248
247
  d: "M21 11c0 5.55-3.84 10.74-9 12c-5.16-1.26-9-6.45-9-12V5l9-4l9 4zm-9 10c3.75-1 7-5.46 7-9.78V6.3l-7-3.12L5 6.3v4.92C5 15.54 8.25 20 12 21m-1-7h2v3h3v-5h2l-6-5l-6 5h2v5h3z"
249
248
  }, null, -1)]]);
250
249
  }
251
- var Rt = o({
250
+ var zt = o({
252
251
  name: "mdi-shield-home-outline",
253
- render: Lt
254
- }), zt = {
252
+ render: Rt
253
+ }), Bt = {
255
254
  viewBox: "0 0 24 24",
256
255
  width: "1.2em",
257
256
  height: "1.2em"
258
257
  };
259
- function Bt(e, t) {
260
- return r(), p("svg", zt, [...t[0] ||= [m("path", {
258
+ function Vt(e, t) {
259
+ return r(), p("svg", Bt, [...t[0] ||= [m("path", {
261
260
  fill: "currentColor",
262
261
  d: "M15 13V5a3 3 0 0 0-6 0v8a5 5 0 1 0 6 0m-3-9a1 1 0 0 1 1 1v3h-2V5a1 1 0 0 1 1-1"
263
262
  }, null, -1)]]);
264
263
  }
265
- var Vt = o({
264
+ var Ht = o({
266
265
  name: "mdi-thermometer",
267
- render: Bt
268
- }), Ht = {
266
+ render: Vt
267
+ }), Ut = {
269
268
  viewBox: "0 0 24 24",
270
269
  width: "1.2em",
271
270
  height: "1.2em"
272
271
  };
273
- function Ut(e, t) {
274
- return r(), p("svg", Ht, [...t[0] ||= [m("path", {
272
+ function Wt(e, t) {
273
+ return r(), p("svg", Ut, [...t[0] ||= [m("path", {
275
274
  fill: "currentColor",
276
275
  d: "M17 6H7c-3.31 0-6 2.69-6 6s2.69 6 6 6h10c3.31 0 6-2.69 6-6s-2.69-6-6-6m0 10H7c-2.21 0-4-1.79-4-4s1.79-4 4-4h10c2.21 0 4 1.79 4 4s-1.79 4-4 4m0-7c-1.66 0-3 1.34-3 3s1.34 3 3 3s3-1.34 3-3s-1.34-3-3-3"
277
276
  }, null, -1)]]);
278
277
  }
279
- var Wt = o({
278
+ var Gt = o({
280
279
  name: "mdi-toggle-switch-outline",
281
- render: Ut
282
- }), Gt = {
280
+ render: Wt
281
+ }), Kt = {
283
282
  viewBox: "0 0 24 24",
284
283
  width: "1.2em",
285
284
  height: "1.2em"
286
285
  };
287
- function Kt(e, t) {
288
- return r(), p("svg", Gt, [...t[0] ||= [m("path", {
286
+ function qt(e, t) {
287
+ return r(), p("svg", Kt, [...t[0] ||= [m("path", {
289
288
  fill: "currentColor",
290
289
  d: "M12 3.25S6 10 6 14c0 3.32 2.69 6 6 6a6 6 0 0 0 6-6c0-4-6-10.75-6-10.75m2.47 6.72l1.06 1.06l-6 6l-1.06-1.06M9.75 10A1.25 1.25 0 0 1 11 11.25a1.25 1.25 0 0 1-1.25 1.25a1.25 1.25 0 0 1-1.25-1.25A1.25 1.25 0 0 1 9.75 10m4.5 4.5a1.25 1.25 0 0 1 1.25 1.25A1.25 1.25 0 0 1 14.25 17A1.25 1.25 0 0 1 13 15.75a1.25 1.25 0 0 1 1.25-1.25"
291
290
  }, null, -1)]]);
292
291
  }
293
- var qt = o({
292
+ var Jt = o({
294
293
  name: "mdi-water-percent",
295
- render: Kt
296
- }), Jt = {
294
+ render: qt
295
+ }), Yt = {
297
296
  viewBox: "0 0 24 24",
298
297
  width: "1.2em",
299
298
  height: "1.2em"
300
299
  };
301
- function Yt(e, t) {
302
- return r(), p("svg", Jt, [...t[0] ||= [m("path", {
300
+ function Xt(e, t) {
301
+ return r(), p("svg", Yt, [...t[0] ||= [m("path", {
303
302
  fill: "currentColor",
304
303
  d: "m22 12l-2 1l-1 1l-1-1l-1 3l-1-3l-1 8l-1-8l-1 2l-1-2l-1 4l-1-4l-1 9l-1-9l-1 6l-1-6l-1 1l-1-1l-2-1l2-1l1-1l1 1l1-6l1 6l1-9l1 9l1-4l1 4l1-2l1 2l1-8l1 8l1-3l1 3l1-1l1 1z"
305
304
  }, null, -1)]]);
306
305
  }
307
- var Xt = o({
306
+ var Zt = o({
308
307
  name: "mdi-waveform",
309
- render: Yt
310
- }), Zt = {
311
- [M.Motion]: Pe,
312
- [M.Object]: U,
313
- [M.Audio]: Xt,
314
- [M.Face]: Fe,
315
- [M.FaceEmbedder]: st,
316
- [M.LicensePlate]: V,
317
- [M.Classifier]: Tt,
318
- [M.Clip]: K,
319
- [M.ObjectAssist]: ht,
320
- [M.Contact]: W,
321
- [M.Temperature]: Vt,
322
- [M.Humidity]: qt,
323
- [M.Occupancy]: xt,
324
- [M.Smoke]: Re,
325
- [M.Leak]: Be,
326
- [M.Gas]: N,
327
- [M.CarbonMonoxide]: Le,
328
- [M.CarbonDioxide]: At,
329
- [M.Heat]: Ne,
330
- [M.Cold]: je,
331
- [M.Vibration]: Ie,
332
- [M.Tamper]: Ve,
333
- [M.Problem]: ze,
334
- [M.Power]: Nt,
335
- [M.Illuminance]: R,
336
- [M.Light]: Ae,
337
- [M.Siren]: L,
338
- [M.Switch]: Wt,
339
- [M.Lock]: Dt,
340
- [M.PTZ]: It,
341
- [M.SecuritySystem]: Rt,
342
- [M.Garage]: Me,
343
- [M.Doorbell]: E,
344
- [M.Battery]: ut
308
+ render: Xt
309
+ }), Qt = {
310
+ [j.Motion]: Ie,
311
+ [j.Object]: H,
312
+ [j.Audio]: Zt,
313
+ [j.Face]: Le,
314
+ [j.FaceEmbedder]: ct,
315
+ [j.LicensePlate]: B,
316
+ [j.Classifier]: Et,
317
+ [j.Clip]: G,
318
+ [j.ObjectAssist]: gt,
319
+ [j.Contact]: U,
320
+ [j.Temperature]: Ht,
321
+ [j.Humidity]: Jt,
322
+ [j.Occupancy]: St,
323
+ [j.Smoke]: Be,
324
+ [j.Leak]: He,
325
+ [j.Gas]: M,
326
+ [j.CarbonMonoxide]: ze,
327
+ [j.CarbonDioxide]: jt,
328
+ [j.Heat]: Fe,
329
+ [j.Cold]: Ne,
330
+ [j.Vibration]: Re,
331
+ [j.Tamper]: Ue,
332
+ [j.Problem]: Ve,
333
+ [j.Power]: Pt,
334
+ [j.Illuminance]: L,
335
+ [j.Light]: Me,
336
+ [j.Siren]: I,
337
+ [j.Switch]: Gt,
338
+ [j.Lock]: Ot,
339
+ [j.PTZ]: Lt,
340
+ [j.SecuritySystem]: zt,
341
+ [j.Garage]: Pe,
342
+ [j.Doorbell]: T,
343
+ [j.Battery]: dt
345
344
  };
346
- function Qt(e) {
347
- return Zt[e] ?? Pe;
345
+ function $t(e) {
346
+ return Qt[e] ?? Ie;
348
347
  }
349
348
  //#endregion
350
349
  //#region src/api/routes/sensors.ts
351
- async function $t({ signal: e, cameraId: t }) {
352
- return (await y.get("/sensors", {
350
+ async function en({ signal: e, cameraId: t }) {
351
+ return (await D.get("/sensors", {
353
352
  signal: e,
354
353
  params: t ? { camera: t } : void 0
355
354
  })).data.sensors;
356
355
  }
357
- async function en({ data: e }) {
358
- return (await y.post("/sensors", e)).data;
356
+ async function tn({ data: e }) {
357
+ return (await D.post("/sensors", e)).data;
359
358
  }
360
- async function tn({ id: e, data: t }) {
361
- return (await y.patch(`/sensors/${e}`, t)).data;
359
+ async function nn({ id: e, data: t }) {
360
+ return (await D.patch(`/sensors/${e}`, t)).data;
362
361
  }
363
- async function nn({ id: e }) {
364
- await y.delete(`/sensors/${e}`);
362
+ async function rn({ id: e }) {
363
+ await D.delete(`/sensors/${e}`);
365
364
  }
366
- async function rn({ ids: e }) {
367
- return (await y.delete("/sensors", { data: { ids: e } })).data;
365
+ async function an({ ids: e }) {
366
+ return (await D.delete("/sensors", { data: { ids: e } })).data;
368
367
  }
369
- async function an({ id: e, signal: t }) {
370
- return (await y.get(`/sensors/${e}/history`, { signal: t })).data.history;
368
+ async function on({ id: e, signal: t }) {
369
+ return (await D.get(`/sensors/${e}/history`, { signal: t })).data.history;
371
370
  }
372
- var on = class {
373
- _queryClient = b();
374
- t = k.global.t;
375
- toast = _e();
371
+ var sn = class {
372
+ _queryClient = he();
373
+ t = w.global.t;
374
+ toast = O();
376
375
  queryActivator = _([{
377
376
  name: "getSensorsQuery",
378
377
  enabled: !0
@@ -381,17 +380,17 @@ var on = class {
381
380
  enabled: !0
382
381
  }]);
383
382
  getSensorsQuery() {
384
- return T({
383
+ return x({
385
384
  queryKey: ["sensorsList"],
386
- queryFn: ({ signal: e }) => $t({ signal: e }),
385
+ queryFn: ({ signal: e }) => en({ signal: e }),
387
386
  placeholderData: (e) => e,
388
387
  enabled: () => this.queryActivator.value.some((e) => e.name === "getSensorsQuery" && e.enabled)
389
388
  });
390
389
  }
391
390
  getCameraSensorsQuery(e) {
392
- return T({
391
+ return x({
393
392
  queryKey: ["sensorsList", e],
394
- queryFn: ({ signal: t }) => $t({
393
+ queryFn: ({ signal: t }) => en({
395
394
  signal: t,
396
395
  cameraId: u(e)
397
396
  }),
@@ -400,8 +399,8 @@ var on = class {
400
399
  });
401
400
  }
402
401
  createVirtualSensorQuery() {
403
- return x({
404
- mutationFn: en,
402
+ return S({
403
+ mutationFn: tn,
405
404
  onSuccess: async () => {
406
405
  await this._queryClient.refetchQueries({ queryKey: ["sensorsList"] }), this.toast.add({
407
406
  severity: "success",
@@ -412,154 +411,154 @@ var on = class {
412
411
  });
413
412
  }
414
413
  patchSensorQuery() {
415
- return x({
416
- mutationFn: tn,
414
+ return S({
415
+ mutationFn: nn,
417
416
  onSuccess: async () => {
418
417
  await this._queryClient.refetchQueries({ queryKey: ["sensorsList"] });
419
418
  }
420
419
  });
421
420
  }
422
421
  deleteSensorQuery() {
423
- return x({
424
- mutationFn: nn,
422
+ return S({
423
+ mutationFn: rn,
425
424
  onSuccess: async () => {
426
425
  await this._queryClient.refetchQueries({ queryKey: ["sensorsList"] });
427
426
  }
428
427
  });
429
428
  }
430
429
  bulkDeleteSensorsQuery() {
431
- return x({
432
- mutationFn: rn,
430
+ return S({
431
+ mutationFn: an,
433
432
  onSuccess: async () => {
434
433
  await this._queryClient.refetchQueries({ queryKey: ["sensorsList"] });
435
434
  }
436
435
  });
437
436
  }
438
- }, sn = {
437
+ }, cn = {
439
438
  viewBox: "0 0 24 24",
440
439
  width: "1.2em",
441
440
  height: "1.2em"
442
441
  };
443
- function cn(e, t) {
444
- return r(), p("svg", sn, [...t[0] ||= [m("path", {
442
+ function ln(e, t) {
443
+ return r(), p("svg", cn, [...t[0] ||= [m("path", {
445
444
  fill: "currentColor",
446
445
  d: "M14 10H3v2h11zm0-4H3v2h11zM3 16h7v-2H3zm18.5-4.5L23 13l-7 7l-4.5-4.5L13 14l3 3z"
447
446
  }, null, -1)]]);
448
447
  }
449
- var ln = o({
448
+ var un = o({
450
449
  name: "mdi-playlist-check",
451
- render: cn
452
- }), un = {
450
+ render: ln
451
+ }), dn = {
453
452
  viewBox: "0 0 24 24",
454
453
  width: "1.2em",
455
454
  height: "1.2em"
456
455
  };
457
- function dn(e, t) {
458
- return r(), p("svg", un, [...t[0] ||= [m("path", {
456
+ function fn(e, t) {
457
+ return r(), p("svg", dn, [...t[0] ||= [m("path", {
459
458
  fill: "currentColor",
460
459
  d: "M3 16h7v-2H3m15 0v-4h-2v4h-4v2h4v4h2v-4h4v-2m-8-8H3v2h11m0 2H3v2h11z"
461
460
  }, null, -1)]]);
462
461
  }
463
- var fn = o({
462
+ var pn = o({
464
463
  name: "mdi-playlist-plus",
465
- render: dn
464
+ render: fn
466
465
  });
467
466
  //#endregion
468
467
  //#region src/utils/sensorSlots.ts
469
- function pn(e, t) {
470
- if (!e.boundCameraId || e.pluginId === "cameraui.virtual" || !t || t._id !== e.boundCameraId || !De.has(e.type) && (e.pluginId === t.pluginInfo?.id || mn(t.assignments?.cameraController, e.pluginId))) return !0;
471
- let n = j(e.type);
472
- return mn(t.assignments?.[n], e.pluginId) ? !0 : e.type === M.Object && mn(t.assignments?.objectAssist, e.pluginId);
473
- }
474
468
  function mn(e, t) {
469
+ if (!e.boundCameraId || e.pluginId === "cameraui.virtual" || !t || t._id !== e.boundCameraId || !ke.has(e.type) && (e.pluginId === t.pluginInfo?.id || hn(t.assignments?.cameraController, e.pluginId))) return !0;
470
+ let n = A(e.type);
471
+ return hn(t.assignments?.[n], e.pluginId) ? !0 : e.type === j.Object && hn(t.assignments?.objectAssist, e.pluginId);
472
+ }
473
+ function hn(e, t) {
475
474
  return Array.isArray(e) ? e.some((e) => e.id === t) : e?.id === t;
476
475
  }
477
476
  //#endregion
478
477
  //#region src/composables/sockets/useSensorsSocket.ts
479
- var hn = 5e3, Y = ce({
478
+ var gn = 5e3, J = ce({
480
479
  isLoading: !0,
481
480
  sensors: [],
482
481
  isScanning: !1,
483
482
  error: null
484
- }), X = null, Z = null, Q = !1, $ = 0, gn = null, _n = /* @__PURE__ */ new Set();
483
+ }), Y = null, X = null, Z = !1, Q = 0, $ = null, _n = /* @__PURE__ */ new Set();
485
484
  function vn() {
486
- Y.isLoading = !0, Y.sensors = [], Y.isScanning = !1, Y.error = null;
485
+ J.isLoading = !0, J.sensors = [], J.isScanning = !1, J.error = null;
487
486
  }
488
487
  function yn() {
489
- return Z || (X = te(!0), X.run(() => {
490
- let e = D("/sensors");
491
- Z = e, e.onReady(() => {
488
+ return X || (Y = te(!0), Y.run(() => {
489
+ let e = E("/sensors");
490
+ X = e, e.onReady(() => {
492
491
  bn();
493
492
  }), re(e.connected, (e, t) => {
494
- !e && t && (Q = !1);
493
+ !e && t && (Z = !1);
495
494
  }), e.on("sensors:discovered", (e) => {
496
- Y.sensors = [...Y.sensors.filter((t) => t.pluginId !== e.source), ...e.sensors];
495
+ J.sensors = [...J.sensors.filter((t) => t.pluginId !== e.source), ...e.sensors];
497
496
  }), e.on("sensors:scanning", (e) => {
498
- Y.isScanning = e.isScanning;
497
+ J.isScanning = e.isScanning;
499
498
  }), e.on("sensors:adopted", (e) => {
500
- Y.sensors = Y.sensors.filter((t) => t.pluginId !== e.pluginId || t.id !== e.id);
499
+ J.sensors = J.sensors.filter((t) => t.pluginId !== e.pluginId || t.id !== e.id);
501
500
  }), e.on("sensor:source:changed", (e) => {
502
501
  for (let t of _n) t(e);
503
502
  });
504
- }), Z);
503
+ }), X);
505
504
  }
506
505
  async function bn() {
507
- if (!Z || Q) return {
508
- success: Q,
509
- sensors: Y.sensors,
510
- isScanning: Y.isScanning
506
+ if (!X || Z) return {
507
+ success: Z,
508
+ sensors: J.sensors,
509
+ isScanning: J.isScanning
511
510
  };
512
511
  try {
513
- let e = await Z.request("sensors:subscribe", {});
514
- return Q = e.success, e.sensors && (Y.sensors = e.sensors), e.isScanning !== void 0 && (Y.isScanning = e.isScanning), Y.isLoading = !1, e;
512
+ let e = await X.request("sensors:subscribe", {});
513
+ return Z = e.success, e.sensors && (J.sensors = e.sensors), e.isScanning !== void 0 && (J.isScanning = e.isScanning), J.isLoading = !1, e;
515
514
  } catch (e) {
516
- return Y.isLoading = !1, Y.error = e instanceof Error ? e.message : "subscribe failed", { success: !1 };
515
+ return J.isLoading = !1, J.error = e instanceof Error ? e.message : "subscribe failed", { success: !1 };
517
516
  }
518
517
  }
519
518
  async function xn() {
520
- if (!Z || !Q) return { success: !0 };
519
+ if (!X || !Z) return { success: !0 };
521
520
  try {
522
- let e = await Z.request("sensors:unsubscribe", {});
523
- return Q = !e.success, e;
521
+ let e = await X.request("sensors:unsubscribe", {});
522
+ return Z = !e.success, e;
524
523
  } catch {
525
524
  return { success: !1 };
526
525
  }
527
526
  }
528
527
  function Sn() {
529
- Q && xn(), X?.stop(), X = null, Z = null, Q = !1, vn();
528
+ Z && xn(), Y?.stop(), Y = null, X = null, Z = !1, vn();
530
529
  }
531
530
  function Cn() {
532
- gn &&= (clearTimeout(gn), null), $++;
531
+ $ &&= (clearTimeout($), null), Q++;
533
532
  function e() {
534
- yn(), Z?.connected.value && !Q && bn();
533
+ yn(), X?.connected.value && !Z && bn();
535
534
  }
536
535
  function t() {
537
- Q && xn();
536
+ Z && xn();
538
537
  }
539
538
  async function n() {
540
- if (!Z?.ready.value) return {
539
+ if (!X?.ready.value) return {
541
540
  success: !1,
542
541
  error: "Not connected"
543
542
  };
544
- Y.sensors = [], Y.isScanning = !0;
543
+ J.sensors = [], J.isScanning = !0;
545
544
  try {
546
- let e = await Z.request("sensors:rescan", {});
547
- return e.success || (Y.isScanning = !1), e;
545
+ let e = await X.request("sensors:rescan", {});
546
+ return e.success || (J.isScanning = !1), e;
548
547
  } catch (e) {
549
- return Y.isScanning = !1, {
548
+ return J.isScanning = !1, {
550
549
  success: !1,
551
550
  error: e instanceof Error ? e.message : "rescan failed"
552
551
  };
553
552
  }
554
553
  }
555
554
  async function r(e) {
556
- if (!Z?.ready.value) return {
555
+ if (!X?.ready.value) return {
557
556
  success: !1,
558
557
  error: "Not connected"
559
558
  };
560
559
  let { pluginId: t, pluginName: n, ...r } = e;
561
560
  try {
562
- return await Z.request("sensors:adopt", {
561
+ return await X.request("sensors:adopt", {
563
562
  pluginId: t,
564
563
  sensor: r
565
564
  });
@@ -573,18 +572,18 @@ function Cn() {
573
572
  function i(e) {
574
573
  return _n.add(e), () => _n.delete(e);
575
574
  }
576
- let a = d(() => [...Y.sensors].sort((e, t) => e.name.localeCompare(t.name)));
577
- return A(() => {
578
- $--, !($ > 0) && ($ = 0, gn = setTimeout(() => {
579
- $ <= 0 && (Sn(), gn = null);
580
- }, hn));
575
+ let a = d(() => [...J.sensors].sort((e, t) => e.name.localeCompare(t.name)));
576
+ return k(() => {
577
+ Q--, !(Q > 0) && (Q = 0, $ = setTimeout(() => {
578
+ Q <= 0 && (Sn(), $ = null);
579
+ }, gn));
581
580
  }), {
582
- state: s(Y),
583
- isConnected: d(() => Z?.connected.value ?? !1),
584
- isLoading: d(() => Y.isLoading),
585
- sensors: d(() => Y.sensors),
586
- isScanning: d(() => Y.isScanning),
587
- error: d(() => Y.error),
581
+ state: s(J),
582
+ isConnected: d(() => X?.connected.value ?? !1),
583
+ isLoading: d(() => J.isLoading),
584
+ sensors: d(() => J.sensors),
585
+ isScanning: d(() => J.isScanning),
586
+ error: d(() => J.error),
588
587
  sortedSensors: a,
589
588
  connect: e,
590
589
  disconnect: t,
@@ -630,7 +629,7 @@ var wn = { class: "flex flex-col" }, Tn = {
630
629
  }, $n = { class: "text-muted text-sm" }, er = { class: "flex flex-wrap items-center gap-2 mt-4" }, tr = /*@__PURE__*/ se({
631
630
  __name: "Sensors",
632
631
  setup(e) {
633
- let o = w(() => import("./SensorEdit-8KtqLXEu.js")), s = w(() => import("./SensorHistory-CPTTsdjM.js")), te = w(() => import("./VirtualSensorCreate-DJIgMVrt.js")), re = {
632
+ let o = C(() => import("./SensorEdit-Bi2Yx_ji.js")), s = C(() => import("./SensorHistory-sqG_6eav.js")), te = C(() => import("./VirtualSensorCreate-C907EgIz.js")), re = {
634
633
  connected: "green",
635
634
  disconnected: "gray",
636
635
  unavailable: "orange",
@@ -639,202 +638,202 @@ var wn = { class: "flex flex-col" }, Tn = {
639
638
  color: "rgb(251, 146, 60)",
640
639
  filter: "drop-shadow(0 0 6px rgba(251, 146, 60, 0.6))"
641
640
  }, ce = /* @__PURE__ */ new Set([
642
- M.Motion,
643
- M.Object,
644
- M.Audio,
645
- M.Face,
646
- M.LicensePlate,
647
- M.Classifier,
648
- M.Contact,
649
- M.Occupancy,
650
- M.Smoke,
651
- M.Leak,
652
- M.Gas,
653
- M.CarbonMonoxide,
654
- M.Heat,
655
- M.Cold,
656
- M.Vibration,
657
- M.Tamper,
658
- M.Problem,
659
- M.Power
660
- ]), y = new on(), x = new he(), S = O(), T = Cn(), E = b(), D = _e(), { t: k } = ke(), { smBreakpoint: A } = fe(), De = ye(), { uiSettings: j } = Oe(De), { sensors: Ae } = We(), { data: je, isBusy: Me } = y.getSensorsQuery(), { data: Ne } = x.getCamerasQuery({
641
+ j.Motion,
642
+ j.Object,
643
+ j.Audio,
644
+ j.Face,
645
+ j.LicensePlate,
646
+ j.Classifier,
647
+ j.Contact,
648
+ j.Occupancy,
649
+ j.Smoke,
650
+ j.Leak,
651
+ j.Gas,
652
+ j.CarbonMonoxide,
653
+ j.Heat,
654
+ j.Cold,
655
+ j.Vibration,
656
+ j.Tamper,
657
+ j.Problem,
658
+ j.Power
659
+ ]), b = new sn(), x = new ge(), S = Se(), w = Cn(), T = he(), E = O(), { t: D } = je(), { smBreakpoint: k } = y(), ke = _e(), { uiSettings: A } = Ae(ke), { sensors: Me } = Ke(), { data: Ne, isBusy: Pe } = b.getSensorsQuery(), { data: Fe } = x.getCamerasQuery({
661
660
  page: 1,
662
661
  pageSize: -1
663
- }), { mutateAsync: Pe, isPending: Fe } = y.createVirtualSensorQuery(), { mutateAsync: Ie } = y.patchSensorQuery(), { mutateAsync: Le, isPending: Re } = y.deleteSensorQuery(), { mutateAsync: ze } = y.bulkDeleteSensorsQuery(), Be = {
662
+ }), { mutateAsync: Ie, isPending: Le } = b.createVirtualSensorQuery(), { mutateAsync: Re } = b.patchSensorQuery(), { mutateAsync: ze, isPending: Be } = b.deleteSensorQuery(), { mutateAsync: Ve } = b.bulkDeleteSensorsQuery(), He = {
664
663
  bodyRow: { class: "text-sm text-secondary" },
665
664
  column: { columnTitle: { class: "text-sm" } },
666
665
  datatable: { class: "z-0" }
667
- }, Ve = oe("menuRef"), N = _(""), P = _(!1), ot, st = d(() => je.value === void 0 && Me.value), F = d(() => Se(void 0, "admin")), I = d(() => je.value ?? []), L = d(() => I.value.filter((e) => e.assignmentLocked).length), ct = d(() => I.value.filter((e) => !Et(e)).length), lt = d(() => [{
666
+ }, Ue = oe("menuRef"), M = _(""), N = _(!1), st, ct = d(() => Ne.value === void 0 && Pe.value), P = d(() => be(void 0, "admin")), F = d(() => Ne.value ?? []), I = d(() => F.value.filter((e) => e.assignmentLocked).length), lt = d(() => F.value.filter((e) => !Dt(e)).length), ut = d(() => [{
668
667
  key: "hideAllCameraBound",
669
- label: k("views.sensors.hide_all_camera_bound"),
670
- description: k("views.sensors.hide_all_camera_bound_hint"),
671
- badge: L.value ? String(L.value) : void 0,
668
+ label: D("views.sensors.hide_all_camera_bound"),
669
+ description: D("views.sensors.hide_all_camera_bound_hint"),
670
+ badge: I.value ? String(I.value) : void 0,
672
671
  toggle: !0,
673
- toggleState: j.value.sensors.hideAllCameraBound,
674
- onClick: () => j.value.sensors.hideAllCameraBound = !j.value.sensors.hideAllCameraBound
672
+ toggleState: A.value.sensors.hideAllCameraBound,
673
+ onClick: () => A.value.sensors.hideAllCameraBound = !A.value.sensors.hideAllCameraBound
675
674
  }, {
676
675
  key: "onlyEnabledCameraBound",
677
- label: k("views.sensors.only_enabled_camera_bound"),
678
- description: k("views.sensors.only_enabled_camera_bound_hint"),
679
- badge: ct.value ? String(ct.value) : void 0,
676
+ label: D("views.sensors.only_enabled_camera_bound"),
677
+ description: D("views.sensors.only_enabled_camera_bound_hint"),
678
+ badge: lt.value ? String(lt.value) : void 0,
680
679
  toggle: !0,
681
- toggleState: j.value.sensors.onlyEnabledCameraBound,
682
- onClick: () => j.value.sensors.onlyEnabledCameraBound = !j.value.sensors.onlyEnabledCameraBound
683
- }]), ut = d(() => (Ne.value?.result ?? []).map((e) => ({
680
+ toggleState: A.value.sensors.onlyEnabledCameraBound,
681
+ onClick: () => A.value.sensors.onlyEnabledCameraBound = !A.value.sensors.onlyEnabledCameraBound
682
+ }]), dt = d(() => (Fe.value?.result ?? []).map((e) => ({
684
683
  label: e.name,
685
684
  value: e._id
686
- }))), dt = d(() => new Map((Ne.value?.result ?? []).map((e) => [e._id, e]))), ft = d(() => new Map(Ae.value.map((e) => [e.id, e]))), R = d(() => {
687
- let e = N.value.toLowerCase().trim();
688
- return I.value.map((e) => {
689
- let t = kt(e);
685
+ }))), ft = d(() => new Map((Fe.value?.result ?? []).map((e) => [e._id, e]))), pt = d(() => new Map(Me.value.map((e) => [e.id, e]))), L = d(() => {
686
+ let e = M.value.toLowerCase().trim();
687
+ return F.value.map((e) => {
688
+ let t = At(e);
690
689
  return {
691
690
  sensor: e,
692
691
  label: e.displayName || e.name,
693
- typeLabel: k(`components.camera_options.sensor_type_${e.type}`),
692
+ typeLabel: D(`components.camera_options.sensor_type_${e.type}`),
694
693
  nativeLabel: e.address ?? e.nativeId ?? "",
695
- pluginLabel: e.virtual ? k("views.sensors.owner_virtual") : e.pluginName,
696
- assignedLabel: e.assignedCameraIds.map((e) => ut.value.find((t) => t.value === e)?.label).filter(Boolean).join(", "),
694
+ pluginLabel: e.virtual ? D("views.sensors.owner_virtual") : e.pluginName,
695
+ assignedLabel: e.assignedCameraIds.map((e) => dt.value.find((t) => t.value === e)?.label).filter(Boolean).join(", "),
697
696
  state: t,
698
- stateLabel: At(t, e),
697
+ stateLabel: jt(t, e),
699
698
  stateColor: re[t]
700
699
  };
701
- }).filter((e) => !j.value.sensors.hideAllCameraBound || !e.sensor.assignmentLocked).filter((e) => !j.value.sensors.onlyEnabledCameraBound || Et(e.sensor)).filter((t) => !e || [
700
+ }).filter((e) => !A.value.sensors.hideAllCameraBound || !e.sensor.assignmentLocked).filter((e) => !A.value.sensors.onlyEnabledCameraBound || Dt(e.sensor)).filter((t) => !e || [
702
701
  t.label,
703
702
  t.typeLabel,
704
703
  t.nativeLabel,
705
704
  t.pluginLabel,
706
705
  t.assignedLabel
707
706
  ].some((t) => t.toLowerCase().includes(e))).sort((e, t) => e.label.localeCompare(t.label));
708
- }), z = d(() => T.isScanning.value), B = d(() => {
709
- let e = N.value.toLowerCase().trim();
710
- return T.sortedSensors.value.filter((t) => !e || [
707
+ }), R = d(() => w.isScanning.value), z = d(() => {
708
+ let e = M.value.toLowerCase().trim();
709
+ return w.sortedSensors.value.filter((t) => !e || [
711
710
  t.name,
712
711
  t.id,
713
712
  t.pluginName,
714
713
  t.room ?? ""
715
714
  ].some((t) => t.toLowerCase().includes(e)));
716
- }), { selectionMode: V, selectedIds: pt, selectedItems: mt, allSelected: ht, bulkBusy: H, enterSelectionMode: gt, exitSelectionMode: U, toggleSelectAll: _t, toggleSelection: vt } = C(() => R.value, (e) => e.sensor.id), { selectionMode: W, selectedIds: yt, selectedItems: bt, allSelected: xt, bulkBusy: G, enterSelectionMode: St, exitSelectionMode: K, toggleSelectAll: Ct, toggleSelection: wt } = C(() => B.value, q), Tt = d(() => mt.value.filter((e) => J(e.sensor)));
717
- function q(e) {
715
+ }), { selectionMode: B, selectedIds: mt, selectedItems: ht, allSelected: gt, bulkBusy: V, enterSelectionMode: _t, exitSelectionMode: H, toggleSelectAll: vt, toggleSelection: yt } = ve(() => L.value, (e) => e.sensor.id), { selectionMode: U, selectedIds: bt, selectedItems: xt, allSelected: St, bulkBusy: W, enterSelectionMode: Ct, exitSelectionMode: G, toggleSelectAll: wt, toggleSelection: Tt } = ve(() => z.value, K), Et = d(() => ht.value.filter((e) => q(e.sensor)));
716
+ function K(e) {
718
717
  return `${e.pluginId}:${e.id}`;
719
718
  }
720
- function Et(e) {
719
+ function Dt(e) {
721
720
  if (!e.boundCameraId) return !0;
722
- let t = dt.value.get(e.boundCameraId);
723
- return t ? pn(e, t) : !1;
724
- }
725
- function Ot(e) {
726
- return ft.value.get(e.id)?.connected.value ?? e.connected;
721
+ let t = ft.value.get(e.boundCameraId);
722
+ return t ? mn(e, t) : !1;
727
723
  }
728
724
  function kt(e) {
729
- return Ot(e) ? e.sourceState === "removed" ? "removed" : e.sourceState === "unavailable" ? "unavailable" : "connected" : "disconnected";
725
+ return pt.value.get(e.id)?.connected.value ?? e.connected;
726
+ }
727
+ function At(e) {
728
+ return kt(e) ? e.sourceState === "removed" ? "removed" : e.sourceState === "unavailable" ? "unavailable" : "connected" : "disconnected";
730
729
  }
731
- function At(e, t) {
730
+ function jt(e, t) {
732
731
  switch (e) {
733
- case "disconnected": return k("views.sensors.disconnected");
734
- case "unavailable": return k("views.sensors.state_unavailable");
735
- case "removed": return k("views.sensors.state_removed", { plugin: t.pluginName });
736
- default: return k("views.sensors.connected");
732
+ case "disconnected": return D("views.sensors.disconnected");
733
+ case "unavailable": return D("views.sensors.state_unavailable");
734
+ case "removed": return D("views.sensors.state_removed", { plugin: t.pluginName });
735
+ default: return D("views.sensors.connected");
737
736
  }
738
737
  }
739
- function jt() {
740
- K(), gt();
741
- }
742
738
  function Mt() {
743
- U(), St();
739
+ G(), _t();
744
740
  }
745
- function Nt(e) {
746
- if (W.value) {
747
- wt(q(e));
741
+ function Nt() {
742
+ H(), Ct();
743
+ }
744
+ function Pt(e) {
745
+ if (U.value) {
746
+ Tt(K(e));
748
747
  return;
749
748
  }
750
- Pt(e);
749
+ Ft(e);
751
750
  }
752
- function Pt(e) {
751
+ function Ft(e) {
753
752
  S.openTextDialog({
754
753
  data: {
755
- title: k("views.sensors.adopt_title"),
756
- contentText: k("views.sensors.adopt_confirm", {
754
+ title: D("views.sensors.adopt_title"),
755
+ contentText: D("views.sensors.adopt_confirm", {
757
756
  name: e.name,
758
757
  plugin: e.pluginName
759
758
  }),
760
- confirmText: k("components.form.button.add"),
761
- loading: P
759
+ confirmText: D("components.form.button.add"),
760
+ loading: N
762
761
  },
763
762
  onConfirm: async () => {
764
- P.value = !0;
763
+ N.value = !0;
765
764
  try {
766
- let t = await T.adoptSensor(e);
765
+ let t = await w.adoptSensor(e);
767
766
  if (!t.success) {
768
- D.add({
767
+ E.add({
769
768
  severity: "error",
770
- summary: k("views.sensors.adopt_title"),
769
+ summary: D("views.sensors.adopt_title"),
771
770
  detail: t.error,
772
771
  life: 3e3
773
772
  });
774
773
  return;
775
774
  }
776
- await E.refetchQueries({ queryKey: ["sensorsList"] }), D.add({
775
+ await T.refetchQueries({ queryKey: ["sensorsList"] }), E.add({
777
776
  severity: "success",
778
- detail: k("views.sensors.adopted", { name: e.name }),
777
+ detail: D("views.sensors.adopted", { name: e.name }),
779
778
  life: 3e3
780
779
  });
781
780
  } finally {
782
- P.value = !1;
781
+ N.value = !1;
783
782
  }
784
783
  }
785
784
  });
786
785
  }
787
- async function Ft() {
788
- let e = await T.forceRescan();
789
- e.success || D.add({
786
+ async function It() {
787
+ let e = await w.forceRescan();
788
+ e.success || E.add({
790
789
  severity: "error",
791
- summary: k("views.sensors.rescan"),
790
+ summary: D("views.sensors.rescan"),
792
791
  detail: e.error,
793
792
  life: 3e3
794
793
  });
795
794
  }
796
- function It(e) {
797
- let t = ft.value.get(e.id), n = (n) => t ? t.getProperty(n) : e.properties?.[n];
795
+ function Lt(e) {
796
+ let t = pt.value.get(e.id), n = (n) => t ? t.getProperty(n) : e.properties?.[n];
798
797
  switch (e.type) {
799
- case M.Light:
800
- case M.Switch: return !!n("on");
801
- case M.Siren: return !!n("active");
802
- case M.Doorbell: return !!n("ring");
803
- case M.Garage:
804
- case M.Lock: return n("currentState") === 0;
805
- case M.SecuritySystem: return n("currentState") === 4;
806
- case M.Battery: return !!n("low");
798
+ case j.Light:
799
+ case j.Switch: return !!n("on");
800
+ case j.Siren: return !!n("active");
801
+ case j.Doorbell: return !!n("ring");
802
+ case j.Garage:
803
+ case j.Lock: return n("currentState") === 0;
804
+ case j.SecuritySystem: return n("currentState") === 4;
805
+ case j.Battery: return !!n("low");
807
806
  default: return ce.has(String(e.type)) && !!n("detected");
808
807
  }
809
808
  }
810
- function J(e) {
811
- return e.virtual || !e.assignmentLocked || !Ot(e);
809
+ function q(e) {
810
+ return e.virtual || !e.assignmentLocked || !kt(e);
812
811
  }
813
- function Lt(e) {
814
- if (V.value) {
815
- vt(e.sensor.id);
812
+ function Rt(e) {
813
+ if (B.value) {
814
+ yt(e.sensor.id);
816
815
  return;
817
816
  }
818
- F.value && S.openComponentDialog(o, {
817
+ P.value && S.openComponentDialog(o, {
819
818
  data: {
820
819
  title: e.label,
821
- confirmText: k("components.form.button.save"),
820
+ confirmText: D("components.form.button.save"),
822
821
  contentProps: {
823
822
  sensor: e.sensor,
824
- cameraOptions: ut.value
823
+ cameraOptions: dt.value
825
824
  }
826
825
  },
827
826
  onConfirm: async (t) => {
828
- t && await Ie({
827
+ t && await Re({
829
828
  id: e.sensor.id,
830
829
  data: t
831
830
  });
832
831
  }
833
832
  });
834
833
  }
835
- function Rt(e) {
834
+ function zt(e) {
836
835
  S.openComponentDialog(s, { data: {
837
- title: `${e.displayName || e.name} · ${k("views.sensors.history")}`,
836
+ title: `${e.displayName || e.name} · ${D("views.sensors.history")}`,
838
837
  hideConfirmButton: !0,
839
838
  contentProps: {
840
839
  sensorId: e.id,
@@ -842,100 +841,100 @@ var wn = { class: "flex flex-col" }, Tn = {
842
841
  }
843
842
  } });
844
843
  }
845
- function zt(e, t, n) {
846
- t.length && D.add({
844
+ function Bt(e, t, n) {
845
+ t.length && E.add({
847
846
  severity: "error",
848
- summary: k("views.sensors.bulk_failed", { count: t.length }),
847
+ summary: D("views.sensors.bulk_failed", { count: t.length }),
849
848
  detail: t.join(", "),
850
849
  life: 8e3
851
- }), e && D.add({
850
+ }), e && E.add({
852
851
  severity: "success",
853
- detail: k(n, { count: e }),
852
+ detail: D(n, { count: e }),
854
853
  life: 5e3
855
854
  });
856
855
  }
857
- function Bt() {
858
- let e = [...Tt.value];
856
+ function Vt() {
857
+ let e = [...Et.value];
859
858
  S.openTextDialog({
860
859
  data: {
861
- title: k("components.dialog.title.confirm"),
862
- contentText: k("views.sensors.delete_selected_confirm", { count: e.length }),
863
- confirmText: k("components.form.button.remove"),
860
+ title: D("components.dialog.title.confirm"),
861
+ contentText: D("views.sensors.delete_selected_confirm", { count: e.length }),
862
+ confirmText: D("components.form.button.remove"),
864
863
  confirmButtonProps: { severity: "danger" }
865
864
  },
866
865
  onConfirm: async () => {
867
- H.value = !0;
866
+ V.value = !0;
868
867
  try {
869
- let { skipped: t } = await ze({ ids: e.map((e) => e.sensor.id) }), n = e.filter((e) => t.includes(e.sensor.id)).map((e) => e.label);
870
- U(), zt(e.length - n.length, n, "views.sensors.delete_selected_done");
868
+ let { skipped: t } = await Ve({ ids: e.map((e) => e.sensor.id) }), n = e.filter((e) => t.includes(e.sensor.id)).map((e) => e.label);
869
+ H(), Bt(e.length - n.length, n, "views.sensors.delete_selected_done");
871
870
  } finally {
872
- H.value = !1;
871
+ V.value = !1;
873
872
  }
874
873
  }
875
874
  });
876
875
  }
877
- function Vt() {
878
- let e = [...bt.value];
876
+ function Ht() {
877
+ let e = [...xt.value];
879
878
  S.openTextDialog({
880
879
  data: {
881
- title: k("views.sensors.adopt_title"),
882
- contentText: k("views.sensors.adopt_selected_confirm", { count: e.length }),
883
- confirmText: k("components.form.button.add")
880
+ title: D("views.sensors.adopt_title"),
881
+ contentText: D("views.sensors.adopt_selected_confirm", { count: e.length }),
882
+ confirmText: D("components.form.button.add")
884
883
  },
885
884
  onConfirm: async () => {
886
- G.value = !0;
885
+ W.value = !0;
887
886
  try {
888
887
  let t = [];
889
- for (let n of e) (await T.adoptSensor(n)).success || t.push(n.name);
890
- await E.refetchQueries({ queryKey: ["sensorsList"] }), K(), zt(e.length - t.length, t, "views.sensors.adopt_selected_done");
888
+ for (let n of e) (await w.adoptSensor(n)).success || t.push(n.name);
889
+ await T.refetchQueries({ queryKey: ["sensorsList"] }), G(), Bt(e.length - t.length, t, "views.sensors.adopt_selected_done");
891
890
  } finally {
892
- G.value = !1;
891
+ W.value = !1;
893
892
  }
894
893
  }
895
894
  });
896
895
  }
897
- function Ht(e) {
898
- E.setQueryData(["sensorsList"], (t) => t?.map((t) => t.id === e.sensorId ? {
896
+ function Ut(e) {
897
+ T.setQueryData(["sensorsList"], (t) => t?.map((t) => t.id === e.sensorId ? {
899
898
  ...t,
900
899
  sourceState: e.sourceState,
901
900
  address: e.address
902
901
  } : t));
903
902
  }
904
- function Ut() {
903
+ function Wt() {
905
904
  S.openComponentDialog(te, {
906
905
  data: {
907
- title: k("views.sensors.create_virtual"),
908
- confirmText: k("components.form.button.save"),
909
- loading: Fe,
906
+ title: D("views.sensors.create_virtual"),
907
+ confirmText: D("components.form.button.save"),
908
+ loading: Le,
910
909
  contentProps: {}
911
910
  },
912
911
  onConfirm: async (e) => {
913
- e && await Pe({ data: e });
912
+ e && await Ie({ data: e });
914
913
  }
915
914
  });
916
915
  }
917
- function Wt(e) {
916
+ function Gt(e) {
918
917
  S.openTextDialog({
919
918
  data: {
920
- title: k("views.sensors.delete"),
921
- contentText: k("views.sensors.delete_confirm"),
922
- confirmText: k("components.form.button.remove"),
923
- loading: Re,
919
+ title: D("views.sensors.delete"),
920
+ contentText: D("views.sensors.delete_confirm"),
921
+ confirmText: D("components.form.button.remove"),
922
+ loading: Be,
924
923
  confirmButtonProps: { severity: "danger" }
925
924
  },
926
925
  onConfirm: async () => {
927
- await Le({ id: e.id });
926
+ await ze({ id: e.id });
928
927
  }
929
928
  });
930
929
  }
931
930
  return le(() => {
932
- F.value && (T.connect(), ot = T.onSourceChanged(Ht));
931
+ P.value && (w.connect(), st = w.onSourceChanged(Ut));
933
932
  }), n(() => {
934
- ot?.(), F.value && T.unsubscribe();
933
+ st?.(), P.value && w.unsubscribe();
935
934
  }), (e, n) => {
936
- let o = tt, s = Ue, te = Ce, d = $e, re = Ke, oe = qe, _ = Ge, ce = rt, le = pe, y = we, fe = be, b = Je, x = Ze, S = He, he = at, C = Xe, _e = Dt, ye = de, w = et, T = Qe, E = Ee, D = xe, Se = it, O = me, De = ge, j = ue;
935
+ let o = rt, s = Ge, te = Te, d = tt, re = Je, oe = Ye, _ = qe, ce = at, le = pe, he = me, ge = we, _e = Xe, y = $e, b = We, ve = Ee, x = Qe, S = Ot, be = de, C = nt, w = et, T = Oe, Se = xe, E = ot, O = Ce, ke = fe, A = ue;
937
936
  return r(), p("div", wn, [
938
- u(A) ? l("", !0) : (r(), p("h1", Tn, i(u(k)("views.sensors.title")), 1)),
937
+ u(k) ? l("", !0) : (r(), p("h1", Tn, i(u(D)("views.sensors.title")), 1)),
939
938
  v(te, { position: "left" }, {
940
939
  default: f(() => [v(s, {
941
940
  severity: "secondary",
@@ -954,9 +953,9 @@ var wn = { class: "flex flex-col" }, Tn = {
954
953
  default: f(() => [v(d, { class: "w-4 h-4" })]),
955
954
  _: 1
956
955
  }), v(oe, {
957
- modelValue: u(N),
958
- "onUpdate:modelValue": n[1] ||= (e) => ne(N) ? N.value = e : null,
959
- placeholder: u(k)("views.sensors.search"),
956
+ modelValue: u(M),
957
+ "onUpdate:modelValue": n[1] ||= (e) => ne(M) ? M.value = e : null,
958
+ placeholder: u(D)("views.sensors.search"),
960
959
  class: "w-full"
961
960
  }, null, 8, ["modelValue", "placeholder"])]),
962
961
  _: 1
@@ -965,20 +964,20 @@ var wn = { class: "flex flex-col" }, Tn = {
965
964
  severity: "secondary",
966
965
  outlined: "",
967
966
  class: "cui-button shrink-0",
968
- onClick: n[2] ||= (e) => u(Ve)?.toggleMenu(e)
967
+ onClick: n[2] ||= (e) => u(Ue)?.toggleMenu(e)
969
968
  }, {
970
969
  icon: f(() => [v(ce, { class: "w-4.5 h-4.5" })]),
971
970
  _: 1
972
971
  })), [[
973
- j,
974
- { value: u(k)("views.sensors.settings") },
972
+ A,
973
+ { value: u(D)("views.sensors.settings") },
975
974
  void 0,
976
975
  { left: !0 }
977
976
  ]]),
978
977
  v(le, {
979
978
  ref_key: "menuRef",
980
- ref: Ve,
981
- items: u(lt),
979
+ ref: Ue,
980
+ items: u(ut),
982
981
  "auto-hide": !1,
983
982
  popover: { pt: {
984
983
  root: { class: "w-[22rem]" },
@@ -986,59 +985,59 @@ var wn = { class: "flex flex-col" }, Tn = {
986
985
  } }
987
986
  }, null, 8, ["items"])
988
987
  ]),
989
- u(st) ? (r(), p("div", Dn, [v(y, {
988
+ u(ct) ? (r(), p("div", Dn, [v(he, {
990
989
  "stroke-width": "5",
991
990
  class: "w-[30px] h-[30px]"
992
- })])) : !u(R).length && !u(B).length && !u(z) ? (r(), p("div", On, [v(fe, { class: "w-12 h-12 text-muted" }), m("span", kn, i(u(I).length ? u(k)("views.sensors.no_matches") : u(k)("views.sensors.no_sensors")), 1)])) : u(R).length ? (r(), p("div", An, [m("span", jn, i(u(k)("views.sensors.adopted_title")), 1), v(E, { class: "cui-card" }, {
993
- content: f(() => [v(T, {
994
- value: u(R),
991
+ })])) : !u(L).length && !u(z).length && !u(R) ? (r(), p("div", On, [v(ge, { class: "w-12 h-12 text-muted" }), m("span", kn, i(u(F).length ? u(D)("views.sensors.no_matches") : u(D)("views.sensors.no_sensors")), 1)])) : u(L).length ? (r(), p("div", An, [m("span", jn, i(u(D)("views.sensors.adopted_title")), 1), v(T, { class: "cui-card" }, {
992
+ content: f(() => [v(w, {
993
+ value: u(L),
995
994
  "striped-rows": "",
996
- pt: Be,
995
+ pt: He,
997
996
  class: "w-full",
998
- onRowClick: n[4] ||= (e) => Lt(e.data)
997
+ onRowClick: n[4] ||= (e) => Rt(e.data)
999
998
  }, {
1000
999
  default: f(() => [
1001
- u(V) ? (r(), c(x, {
1000
+ u(B) ? (r(), c(y, {
1002
1001
  key: 0,
1003
1002
  header: "",
1004
1003
  "header-class": "p-2 pl-4 w-8 max-w-8",
1005
1004
  class: "p-2 pl-4 w-8 max-w-8"
1006
1005
  }, {
1007
- body: f(({ data: e }) => [v(b, {
1008
- "model-value": u(pt).has(e.sensor.id),
1006
+ body: f(({ data: e }) => [v(_e, {
1007
+ "model-value": u(mt).has(e.sensor.id),
1009
1008
  binary: "",
1010
1009
  size: "small",
1011
1010
  onClick: n[3] ||= t(() => {}, ["stop"]),
1012
- "onUpdate:modelValue": (t) => u(vt)(e.sensor.id)
1011
+ "onUpdate:modelValue": (t) => u(yt)(e.sensor.id)
1013
1012
  }, null, 8, ["model-value", "onUpdate:modelValue"])]),
1014
1013
  _: 1
1015
1014
  })) : l("", !0),
1016
- v(x, {
1015
+ v(y, {
1017
1016
  header: "",
1018
1017
  "header-class": "p-2 pl-4 w-5 max-w-5",
1019
1018
  class: "p-2 pl-4 w-5 max-w-5"
1020
1019
  }, {
1021
- body: f(({ data: e }) => [m("div", Mn, [h(v(S, { style: ie({ background: e.stateColor }) }, null, 8, ["style"]), [[j, { value: e.stateLabel }]])])]),
1020
+ body: f(({ data: e }) => [m("div", Mn, [h(v(b, { style: ie({ background: e.stateColor }) }, null, 8, ["style"]), [[A, { value: e.stateLabel }]])])]),
1022
1021
  _: 1
1023
1022
  }),
1024
- v(x, {
1023
+ v(y, {
1025
1024
  field: "label",
1026
- header: u(k)("views.sensors.name"),
1025
+ header: u(D)("views.sensors.name"),
1027
1026
  sortable: "",
1028
1027
  "header-class": "p-2",
1029
1028
  class: "p-2 w-[40%] min-w-[180px] max-w-0"
1030
1029
  }, {
1031
- body: f(({ data: e }) => [m("div", Nn, [(r(), c(ee(u(Qt)(e.sensor.type)), {
1032
- class: a(["w-5 h-5 shrink-0 transition-colors", { "text-muted": !It(e.sensor) }]),
1033
- style: ie(It(e.sensor) ? se : void 0)
1030
+ body: f(({ data: e }) => [m("div", Nn, [(r(), c(ee(u($t)(e.sensor.type)), {
1031
+ class: a(["w-5 h-5 shrink-0 transition-colors", { "text-muted": !Lt(e.sensor) }]),
1032
+ style: ie(Lt(e.sensor) ? se : void 0)
1034
1033
  }, null, 8, ["class", "style"])), m("div", Pn, [
1035
- m("div", Fn, [h((r(), p("span", In, [g(i(e.label), 1)])), [[j, e.label]]), e.sensor.exposed ? l("", !0) : h((r(), c(he, {
1034
+ m("div", Fn, [h((r(), p("span", In, [g(i(e.label), 1)])), [[A, e.label]]), e.sensor.exposed ? l("", !0) : h((r(), c(ve, {
1036
1035
  key: 0,
1037
1036
  class: "w-4 h-4 shrink-0 text-muted"
1038
- }, null, 512)), [[j, u(k)("views.sensors.not_exposed")]])]),
1039
- u(A) ? (r(), p("span", Ln, i(e.typeLabel) + " · " + i(e.pluginLabel), 1)) : l("", !0),
1040
- u(A) && e.nativeLabel ? h((r(), p("span", Rn, [g(i(e.nativeLabel), 1)])), [[j, e.nativeLabel]]) : l("", !0),
1041
- u(A) && e.state !== "connected" ? (r(), p("span", {
1037
+ }, null, 512)), [[A, u(D)("views.sensors.not_exposed")]])]),
1038
+ u(k) ? (r(), p("span", Ln, i(e.typeLabel) + " · " + i(e.pluginLabel), 1)) : l("", !0),
1039
+ u(k) && e.nativeLabel ? h((r(), p("span", Rn, [g(i(e.nativeLabel), 1)])), [[A, e.nativeLabel]]) : l("", !0),
1040
+ u(k) && e.state !== "connected" ? (r(), p("span", {
1042
1041
  key: 2,
1043
1042
  class: "text-xs truncate",
1044
1043
  style: ie({ color: e.stateColor })
@@ -1046,21 +1045,21 @@ var wn = { class: "flex flex-col" }, Tn = {
1046
1045
  ])])]),
1047
1046
  _: 1
1048
1047
  }, 8, ["header"]),
1049
- u(A) ? l("", !0) : (r(), c(x, {
1048
+ u(k) ? l("", !0) : (r(), c(y, {
1050
1049
  key: 1,
1051
1050
  field: "nativeLabel",
1052
- header: u(k)("views.sensors.native_id"),
1051
+ header: u(D)("views.sensors.native_id"),
1053
1052
  sortable: "",
1054
1053
  "header-class": "p-2 whitespace-nowrap cui-col-center",
1055
1054
  class: "p-2 w-[28%] min-w-[160px] max-w-0 text-center"
1056
1055
  }, {
1057
- body: f(({ data: e }) => [e.nativeLabel ? h((r(), p("span", zn, [g(i(e.nativeLabel), 1)])), [[j, e.nativeLabel]]) : (r(), p("span", Bn, "—"))]),
1056
+ body: f(({ data: e }) => [e.nativeLabel ? h((r(), p("span", zn, [g(i(e.nativeLabel), 1)])), [[A, e.nativeLabel]]) : (r(), p("span", Bn, "—"))]),
1058
1057
  _: 1
1059
1058
  }, 8, ["header"])),
1060
- u(A) ? l("", !0) : (r(), c(x, {
1059
+ u(k) ? l("", !0) : (r(), c(y, {
1061
1060
  key: 2,
1062
1061
  field: "typeLabel",
1063
- header: u(k)("views.sensors.type"),
1062
+ header: u(D)("views.sensors.type"),
1064
1063
  sortable: "",
1065
1064
  "header-class": "p-2 whitespace-nowrap cui-col-center",
1066
1065
  class: "p-2 whitespace-nowrap text-center"
@@ -1068,34 +1067,34 @@ var wn = { class: "flex flex-col" }, Tn = {
1068
1067
  body: f(({ data: e }) => [m("span", Vn, i(e.typeLabel), 1)]),
1069
1068
  _: 1
1070
1069
  }, 8, ["header"])),
1071
- u(A) ? l("", !0) : (r(), c(x, {
1070
+ u(k) ? l("", !0) : (r(), c(y, {
1072
1071
  key: 3,
1073
1072
  field: "pluginLabel",
1074
- header: u(k)("views.sensors.plugin"),
1073
+ header: u(D)("views.sensors.plugin"),
1075
1074
  sortable: "",
1076
1075
  "header-class": "p-2 whitespace-nowrap cui-col-center",
1077
1076
  class: "p-2 whitespace-nowrap text-center"
1078
1077
  }, {
1079
- body: f(({ data: e }) => [v(C, {
1078
+ body: f(({ data: e }) => [v(x, {
1080
1079
  label: e.pluginLabel,
1081
1080
  class: "text-xs whitespace-nowrap"
1082
1081
  }, null, 8, ["label"])]),
1083
1082
  _: 1
1084
1083
  }, 8, ["header"])),
1085
- v(x, {
1084
+ v(y, {
1086
1085
  field: "assignedLabel",
1087
- header: u(k)("views.sensors.assigned_cameras"),
1086
+ header: u(D)("views.sensors.assigned_cameras"),
1088
1087
  sortable: "",
1089
1088
  "header-class": "p-2 whitespace-nowrap cui-col-center",
1090
1089
  class: "p-2 min-w-[140px] text-center"
1091
1090
  }, {
1092
- body: f(({ data: e }) => [m("div", Hn, [e.sensor.assignmentLocked ? h((r(), c(_e, {
1091
+ body: f(({ data: e }) => [m("div", Hn, [e.sensor.assignmentLocked ? h((r(), c(S, {
1093
1092
  key: 0,
1094
1093
  class: "w-3.5 h-3.5 shrink-0 text-muted"
1095
- }, null, 512)), [[j, u(k)("views.sensors.assigned_cameras_locked_hint")]]) : l("", !0), m("span", { class: a(["text-xs truncate", e.assignedLabel ? "text-muted" : "text-muted italic"]) }, i(e.assignedLabel || u(k)("views.sensors.unassigned")), 3)])]),
1094
+ }, null, 512)), [[A, u(D)("views.sensors.assigned_cameras_locked_hint")]]) : l("", !0), m("span", { class: a(["text-xs truncate", e.assignedLabel ? "text-muted" : "text-muted italic"]) }, i(e.assignedLabel || u(D)("views.sensors.unassigned")), 3)])]),
1096
1095
  _: 1
1097
1096
  }, 8, ["header"]),
1098
- v(x, {
1097
+ v(y, {
1099
1098
  header: "",
1100
1099
  "header-class": "p-2 pr-4 w-28",
1101
1100
  class: "p-2 pr-4 w-28"
@@ -1105,34 +1104,34 @@ var wn = { class: "flex flex-col" }, Tn = {
1105
1104
  rounded: "",
1106
1105
  severity: "secondary",
1107
1106
  class: "cui-icon-sm shrink-0",
1108
- onClick: t((t) => Rt(e.sensor), ["stop"])
1107
+ onClick: t((t) => zt(e.sensor), ["stop"])
1109
1108
  }, {
1110
- icon: f(() => [v(ye, {
1109
+ icon: f(() => [v(be, {
1111
1110
  width: "100%",
1112
1111
  height: "100%"
1113
1112
  })]),
1114
1113
  _: 1
1115
1114
  }, 8, ["onClick"])), [[
1116
- j,
1117
- u(k)("views.sensors.history"),
1115
+ A,
1116
+ u(D)("views.sensors.history"),
1118
1117
  void 0,
1119
1118
  { left: !0 }
1120
- ]]), u(F) ? h((r(), p("span", Wn, [v(s, {
1119
+ ]]), u(P) ? h((r(), p("span", Wn, [v(s, {
1121
1120
  text: "",
1122
1121
  rounded: "",
1123
1122
  severity: "danger",
1124
1123
  class: "cui-icon-sm",
1125
- disabled: !J(e.sensor),
1126
- onClick: t((t) => Wt(e.sensor), ["stop"])
1124
+ disabled: !q(e.sensor),
1125
+ onClick: t((t) => Gt(e.sensor), ["stop"])
1127
1126
  }, {
1128
- icon: f(() => [v(w, {
1127
+ icon: f(() => [v(C, {
1129
1128
  width: "100%",
1130
1129
  height: "100%"
1131
1130
  })]),
1132
1131
  _: 1
1133
1132
  }, 8, ["disabled", "onClick"])])), [[
1134
- j,
1135
- J(e.sensor) ? u(k)("views.sensors.delete") : u(k)("views.sensors.delete_camera_bound"),
1133
+ A,
1134
+ q(e.sensor) ? u(D)("views.sensors.delete") : u(D)("views.sensors.delete_camera_bound"),
1136
1135
  void 0,
1137
1136
  { left: !0 }
1138
1137
  ]]) : l("", !0)])]),
@@ -1143,86 +1142,86 @@ var wn = { class: "flex flex-col" }, Tn = {
1143
1142
  }, 8, ["value"])]),
1144
1143
  _: 1
1145
1144
  })])) : l("", !0),
1146
- u(F) && !u(st) ? (r(), p("div", {
1145
+ u(P) && !u(ct) ? (r(), p("div", {
1147
1146
  key: 4,
1148
- class: a(["flex min-h-0 flex-col", { "mt-6": u(R).length }])
1149
- }, [m("span", Gn, i(u(k)("views.sensors.discovered_title")), 1), v(E, { class: "cui-card" }, {
1150
- content: f(() => [u(B).length ? (r(), c(T, {
1147
+ class: a(["flex min-h-0 flex-col", { "mt-6": u(L).length }])
1148
+ }, [m("span", Gn, i(u(D)("views.sensors.discovered_title")), 1), v(T, { class: "cui-card" }, {
1149
+ content: f(() => [u(z).length ? (r(), c(w, {
1151
1150
  key: 0,
1152
- value: u(B),
1151
+ value: u(z),
1153
1152
  "striped-rows": "",
1154
- pt: Be,
1155
- class: a(["w-full", { "opacity-60 pointer-events-none": u(P) || u(G) }]),
1156
- onRowClick: n[6] ||= (e) => Nt(e.data)
1153
+ pt: He,
1154
+ class: a(["w-full", { "opacity-60 pointer-events-none": u(N) || u(W) }]),
1155
+ onRowClick: n[6] ||= (e) => Pt(e.data)
1157
1156
  }, {
1158
1157
  default: f(() => [
1159
- u(W) ? (r(), c(x, {
1158
+ u(U) ? (r(), c(y, {
1160
1159
  key: 0,
1161
1160
  header: "",
1162
1161
  "header-class": "p-2 pl-4 w-8 max-w-8",
1163
1162
  class: "p-2 pl-4 w-8 max-w-8"
1164
1163
  }, {
1165
- body: f(({ data: e }) => [v(b, {
1166
- "model-value": u(yt).has(q(e)),
1164
+ body: f(({ data: e }) => [v(_e, {
1165
+ "model-value": u(bt).has(K(e)),
1167
1166
  binary: "",
1168
1167
  size: "small",
1169
1168
  onClick: n[5] ||= t(() => {}, ["stop"]),
1170
- "onUpdate:modelValue": (t) => u(wt)(q(e))
1169
+ "onUpdate:modelValue": (t) => u(Tt)(K(e))
1171
1170
  }, null, 8, ["model-value", "onUpdate:modelValue"])]),
1172
1171
  _: 1
1173
1172
  })) : l("", !0),
1174
- v(x, {
1173
+ v(y, {
1175
1174
  header: "",
1176
1175
  "header-class": "p-2 pl-4 w-5 max-w-5",
1177
1176
  class: "p-2 pl-4 w-5 max-w-5"
1178
1177
  }, {
1179
- body: f(() => [m("div", Kn, [h(v(S, { style: { background: "orange" } }, null, 512), [[j, { value: u(k)("views.sensors.status_discovered") }]])])]),
1178
+ body: f(() => [m("div", Kn, [h(v(b, { style: { background: "orange" } }, null, 512), [[A, { value: u(D)("views.sensors.status_discovered") }]])])]),
1180
1179
  _: 1
1181
1180
  }),
1182
- v(x, {
1181
+ v(y, {
1183
1182
  field: "name",
1184
- header: u(k)("views.sensors.name"),
1183
+ header: u(D)("views.sensors.name"),
1185
1184
  sortable: "",
1186
1185
  "header-class": "p-2",
1187
1186
  class: "p-2 w-full min-w-[200px] max-w-0"
1188
1187
  }, {
1189
- body: f(({ data: e }) => [m("div", qn, [(r(), c(ee(u(Qt)(e.type)), { class: "w-5 h-5 shrink-0 text-muted" })), m("div", Jn, [h((r(), p("span", Yn, [g(i(e.name), 1)])), [[j, e.name]]), h((r(), p("span", Xn, [g(i(e.address ?? e.id), 1)])), [[j, e.address ?? e.id]])])])]),
1188
+ body: f(({ data: e }) => [m("div", qn, [(r(), c(ee(u($t)(e.type)), { class: "w-5 h-5 shrink-0 text-muted" })), m("div", Jn, [h((r(), p("span", Yn, [g(i(e.name), 1)])), [[A, e.name]]), h((r(), p("span", Xn, [g(i(e.address ?? e.id), 1)])), [[A, e.address ?? e.id]])])])]),
1190
1189
  _: 1
1191
1190
  }, 8, ["header"]),
1192
- u(A) ? l("", !0) : (r(), c(x, {
1191
+ u(k) ? l("", !0) : (r(), c(y, {
1193
1192
  key: 1,
1194
1193
  field: "type",
1195
- header: u(k)("views.sensors.type"),
1194
+ header: u(D)("views.sensors.type"),
1196
1195
  sortable: "",
1197
1196
  "header-class": "p-2 whitespace-nowrap",
1198
1197
  class: "p-2 whitespace-nowrap"
1199
1198
  }, {
1200
- body: f(({ data: e }) => [m("span", Zn, i(u(k)(`components.camera_options.sensor_type_${e.type}`)), 1)]),
1199
+ body: f(({ data: e }) => [m("span", Zn, i(u(D)(`components.camera_options.sensor_type_${e.type}`)), 1)]),
1201
1200
  _: 1
1202
1201
  }, 8, ["header"])),
1203
- u(A) ? l("", !0) : (r(), c(x, {
1202
+ u(k) ? l("", !0) : (r(), c(y, {
1204
1203
  key: 2,
1205
1204
  field: "room",
1206
- header: u(k)("components.form.label.room"),
1205
+ header: u(D)("components.form.label.room"),
1207
1206
  sortable: "",
1208
1207
  "header-class": "p-2 whitespace-nowrap",
1209
1208
  class: "p-2 whitespace-nowrap"
1210
1209
  }, {
1211
- body: f(({ data: e }) => [e.room ? (r(), c(C, {
1210
+ body: f(({ data: e }) => [e.room ? (r(), c(x, {
1212
1211
  key: 0,
1213
1212
  label: e.room,
1214
1213
  class: "text-xs whitespace-nowrap"
1215
1214
  }, null, 8, ["label"])) : l("", !0)]),
1216
1215
  _: 1
1217
1216
  }, 8, ["header"])),
1218
- v(x, {
1217
+ v(y, {
1219
1218
  field: "pluginName",
1220
- header: u(k)("views.sensors.plugin"),
1219
+ header: u(D)("views.sensors.plugin"),
1221
1220
  sortable: "",
1222
1221
  "header-class": "p-2 pr-4 whitespace-nowrap",
1223
1222
  class: "p-2 pr-4 whitespace-nowrap"
1224
1223
  }, {
1225
- body: f(({ data: e }) => [v(C, {
1224
+ body: f(({ data: e }) => [v(x, {
1226
1225
  label: e.pluginName,
1227
1226
  class: "text-xs whitespace-nowrap"
1228
1227
  }, null, 8, ["label"])]),
@@ -1230,76 +1229,76 @@ var wn = { class: "flex flex-col" }, Tn = {
1230
1229
  }, 8, ["header"])
1231
1230
  ]),
1232
1231
  _: 1
1233
- }, 8, ["value", "class"])) : (r(), p("div", Qn, [u(z) ? (r(), c(D, {
1232
+ }, 8, ["value", "class"])) : (r(), p("div", Qn, [u(R) ? (r(), c(Se, {
1234
1233
  key: 0,
1235
1234
  width: "24px",
1236
1235
  height: "24px",
1237
1236
  class: "text-muted"
1238
- })) : (r(), c(Se, {
1237
+ })) : (r(), c(E, {
1239
1238
  key: 1,
1240
1239
  width: "32px",
1241
1240
  height: "32px",
1242
1241
  class: "text-muted"
1243
- })), m("span", $n, i(u(z) ? u(k)("views.sensors.scanning") : u(k)("views.sensors.no_discovered")), 1)])), m("div", er, [n[7] ||= m("div", { class: "ml-auto" }, null, -1), v(s, {
1242
+ })), m("span", $n, i(u(R) ? u(D)("views.sensors.scanning") : u(D)("views.sensors.no_discovered")), 1)])), m("div", er, [n[7] ||= m("div", { class: "ml-auto" }, null, -1), v(s, {
1244
1243
  severity: "secondary",
1245
1244
  class: "cui-button-medium",
1246
- label: u(k)("views.sensors.rescan"),
1247
- loading: u(z),
1248
- onClick: Ft
1245
+ label: u(D)("views.sensors.rescan"),
1246
+ loading: u(R),
1247
+ onClick: It
1249
1248
  }, null, 8, ["label", "loading"])])]),
1250
1249
  _: 1
1251
1250
  })], 2)) : l("", !0),
1252
- u(F) ? (r(), c(De, {
1251
+ u(P) ? (r(), c(ke, {
1253
1252
  key: 5,
1254
- "force-visible": u(V) || u(W)
1253
+ "force-visible": u(B) || u(U)
1255
1254
  }, {
1256
- default: f(() => [!u(V) && !u(W) ? (r(), p(ae, { key: 0 }, [
1257
- u(R).length ? (r(), c(O, {
1255
+ default: f(() => [!u(B) && !u(U) ? (r(), p(ae, { key: 0 }, [
1256
+ u(L).length ? (r(), c(O, {
1258
1257
  key: 0,
1259
1258
  grouped: "",
1260
- "tooltip-props": { value: u(k)("views.sensors.select") },
1259
+ "tooltip-props": { value: u(D)("views.sensors.select") },
1261
1260
  "button-props": { severity: "secondary" },
1262
- icon: u(Te),
1261
+ icon: u(De),
1263
1262
  "icon-props": {
1264
1263
  width: "100%",
1265
1264
  height: "100%"
1266
1265
  },
1267
- onClick: jt
1266
+ onClick: Mt
1268
1267
  }, null, 8, ["tooltip-props", "icon"])) : l("", !0),
1269
- u(B).length ? (r(), c(O, {
1268
+ u(z).length ? (r(), c(O, {
1270
1269
  key: 1,
1271
1270
  grouped: "",
1272
- "tooltip-props": { value: u(k)("views.sensors.select_discovered") },
1271
+ "tooltip-props": { value: u(D)("views.sensors.select_discovered") },
1273
1272
  "button-props": { severity: "secondary" },
1274
- icon: u(ln),
1273
+ icon: u(un),
1275
1274
  "icon-props": {
1276
1275
  width: "100%",
1277
1276
  height: "100%"
1278
1277
  },
1279
- onClick: Mt
1278
+ onClick: Nt
1280
1279
  }, null, 8, ["tooltip-props", "icon"])) : l("", !0),
1281
1280
  v(O, {
1282
1281
  grouped: "",
1283
- "tooltip-props": { value: u(k)("views.sensors.create_virtual") },
1282
+ "tooltip-props": { value: u(D)("views.sensors.create_virtual") },
1284
1283
  "button-props": { class: "text-white" },
1285
- icon: u(nt),
1284
+ icon: u(it),
1286
1285
  "icon-props": {
1287
1286
  width: "30px",
1288
1287
  height: "30px"
1289
1288
  },
1290
- onClick: Ut
1289
+ onClick: Wt
1291
1290
  }, null, 8, ["tooltip-props", "icon"])
1292
- ], 64)) : u(V) ? (r(), p(ae, { key: 1 }, [
1291
+ ], 64)) : u(B) ? (r(), p(ae, { key: 1 }, [
1293
1292
  v(O, {
1294
1293
  grouped: "",
1295
1294
  "tooltip-props": { value: e.$t("components.form.tooltip.cancel_selection") },
1296
1295
  "button-props": { severity: "secondary" },
1297
- icon: u(Ye),
1296
+ icon: u(Ze),
1298
1297
  "icon-props": {
1299
1298
  width: "100%",
1300
1299
  height: "100%"
1301
1300
  },
1302
- onClick: u(U)
1301
+ onClick: u(H)
1303
1302
  }, null, 8, [
1304
1303
  "tooltip-props",
1305
1304
  "icon",
@@ -1308,13 +1307,13 @@ var wn = { class: "flex flex-col" }, Tn = {
1308
1307
  v(O, {
1309
1308
  grouped: "",
1310
1309
  "tooltip-props": { value: e.$t("components.form.tooltip.select_all") },
1311
- "button-props": { severity: u(ht) ? "primary" : "secondary" },
1312
- icon: u(ve),
1310
+ "button-props": { severity: u(gt) ? "primary" : "secondary" },
1311
+ icon: u(ye),
1313
1312
  "icon-props": {
1314
1313
  width: "100%",
1315
1314
  height: "100%"
1316
1315
  },
1317
- onClick: u(_t)
1316
+ onClick: u(vt)
1318
1317
  }, null, 8, [
1319
1318
  "tooltip-props",
1320
1319
  "button-props",
@@ -1323,17 +1322,17 @@ var wn = { class: "flex flex-col" }, Tn = {
1323
1322
  ]),
1324
1323
  v(O, {
1325
1324
  grouped: "",
1326
- "tooltip-props": { value: u(k)("views.sensors.delete_selected") },
1325
+ "tooltip-props": { value: u(D)("views.sensors.delete_selected") },
1327
1326
  "button-props": {
1328
1327
  severity: "danger",
1329
- disabled: !u(Tt).length || u(H)
1328
+ disabled: !u(Et).length || u(V)
1330
1329
  },
1331
- icon: u(et),
1330
+ icon: u(nt),
1332
1331
  "icon-props": {
1333
1332
  width: "100%",
1334
1333
  height: "100%"
1335
1334
  },
1336
- onClick: Bt
1335
+ onClick: Vt
1337
1336
  }, null, 8, [
1338
1337
  "tooltip-props",
1339
1338
  "button-props",
@@ -1344,12 +1343,12 @@ var wn = { class: "flex flex-col" }, Tn = {
1344
1343
  grouped: "",
1345
1344
  "tooltip-props": { value: e.$t("components.form.tooltip.cancel_selection") },
1346
1345
  "button-props": { severity: "secondary" },
1347
- icon: u(Ye),
1346
+ icon: u(Ze),
1348
1347
  "icon-props": {
1349
1348
  width: "100%",
1350
1349
  height: "100%"
1351
1350
  },
1352
- onClick: u(K)
1351
+ onClick: u(G)
1353
1352
  }, null, 8, [
1354
1353
  "tooltip-props",
1355
1354
  "icon",
@@ -1358,13 +1357,13 @@ var wn = { class: "flex flex-col" }, Tn = {
1358
1357
  v(O, {
1359
1358
  grouped: "",
1360
1359
  "tooltip-props": { value: e.$t("components.form.tooltip.select_all") },
1361
- "button-props": { severity: u(xt) ? "primary" : "secondary" },
1362
- icon: u(ve),
1360
+ "button-props": { severity: u(St) ? "primary" : "secondary" },
1361
+ icon: u(ye),
1363
1362
  "icon-props": {
1364
1363
  width: "100%",
1365
1364
  height: "100%"
1366
1365
  },
1367
- onClick: u(Ct)
1366
+ onClick: u(wt)
1368
1367
  }, null, 8, [
1369
1368
  "tooltip-props",
1370
1369
  "button-props",
@@ -1373,17 +1372,17 @@ var wn = { class: "flex flex-col" }, Tn = {
1373
1372
  ]),
1374
1373
  v(O, {
1375
1374
  grouped: "",
1376
- "tooltip-props": { value: u(k)("views.sensors.adopt_selected") },
1375
+ "tooltip-props": { value: u(D)("views.sensors.adopt_selected") },
1377
1376
  "button-props": {
1378
1377
  class: "text-white",
1379
- disabled: !u(bt).length || u(G)
1378
+ disabled: !u(xt).length || u(W)
1380
1379
  },
1381
- icon: u(fn),
1380
+ icon: u(pn),
1382
1381
  "icon-props": {
1383
1382
  width: "100%",
1384
1383
  height: "100%"
1385
1384
  },
1386
- onClick: Vt
1385
+ onClick: Ht
1387
1386
  }, null, 8, [
1388
1387
  "tooltip-props",
1389
1388
  "button-props",
@@ -1395,6 +1394,6 @@ var wn = { class: "flex flex-col" }, Tn = {
1395
1394
  ]);
1396
1395
  };
1397
1396
  }
1398
- }), nr = /* @__PURE__ */ e({ default: () => rr }), rr = /*#__PURE__*/ S(tr, [["__scopeId", "data-v-cf8a7b2d"]]);
1397
+ }), nr = /* @__PURE__ */ e({ default: () => rr }), rr = /*#__PURE__*/ b(tr, [["__scopeId", "data-v-cf8a7b2d"]]);
1399
1398
  //#endregion
1400
- export { rr as default, L as i, an as n, Qt as r, nr as t };
1399
+ export { rr as default, I as i, on as n, $t as r, nr as t };