@camera.ui/server 2.1.16 → 2.1.17

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 (345) hide show
  1. package/dist/interface/assets/{404-CqZDSHs_.js → 404-Cg1J2LX8.js} +1 -1
  2. package/dist/interface/assets/{About-Dk4SUTxo.js → About-CW7G6onF.js} +1 -1
  3. package/dist/interface/assets/Automation-CIwBJK1Y.js +3 -0
  4. package/dist/interface/assets/{AutomationImport-DDywNuRK.js → AutomationImport-CHkNv7C-.js} +2 -2
  5. package/dist/interface/assets/{AutomationStore-o0JYwGRr.js → AutomationStore-5bTym-Gl.js} +2 -2
  6. package/dist/interface/assets/{AutomationStoreDetail-DeAGahaF.js → AutomationStoreDetail-BF8UoG_l.js} +2 -2
  7. package/dist/interface/assets/Automations-CaX2fHhJ.js +2 -0
  8. package/dist/interface/assets/Camera-1zdmJnP-.js +2 -0
  9. package/dist/interface/assets/Camera-DSyI4J5-.css +1 -0
  10. package/dist/interface/assets/{CameraConsole-32WtMX1a.js → CameraConsole-CB1HEFKJ.js} +2 -2
  11. package/dist/interface/assets/{Cameras-zffI0fD9.js → Cameras-CyCY0rW9.js} +2 -2
  12. package/dist/interface/assets/Camview-Dia7G1u_.js +1 -0
  13. package/dist/interface/assets/{CertificateUpload-Dg0V9Hei.js → CertificateUpload-jP-JIxmY.js} +1 -1
  14. package/dist/interface/assets/{Config-CKrqFe-g.js → Config-DOa7WHyQ.js} +1 -1
  15. package/dist/interface/assets/{ConfigActionCameraControl-sbvBJQr3.js → ConfigActionCameraControl-BmCE3XLC.js} +1 -1
  16. package/dist/interface/assets/{ConfigActionDelay-CiPxydTn.js → ConfigActionDelay-CfHCZ0uf.js} +1 -1
  17. package/dist/interface/assets/{ConfigActionHttp-UqiZm0kq.js → ConfigActionHttp-DdM7gEb0.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionImageInput-DkGVZ-ti.js → ConfigActionImageInput-CrPPNT4K.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionMqtt-DQu5H4bY.js → ConfigActionMqtt-D7-u4zri.js} +1 -1
  20. package/dist/interface/assets/ConfigActionNotification-BSuUI2FP.js +1 -0
  21. package/dist/interface/assets/{ConfigActionNotificationControl-B_EpM5m9.js → ConfigActionNotificationControl-DfvAxKnx.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionOutput-DeOsk0T1.js → ConfigActionOutput-DPplSpm_.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionPlugin-CSZHcNQ6.js → ConfigActionPlugin-BnRn_p26.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionSensor-Dx7DcDVr.js → ConfigActionSensor-CoEoqFAY.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionSnapshot-Baj-r4Cd.js → ConfigActionSnapshot-wXdFiyU-.js} +1 -1
  26. package/dist/interface/assets/{ConfigActionVariable-Ccu___aS.js → ConfigActionVariable-BqJvOOHH.js} +1 -1
  27. package/dist/interface/assets/{ConfigConditionIfElse-0hU7UW8q.js → ConfigConditionIfElse-DG2Kgqn5.js} +1 -1
  28. package/dist/interface/assets/{ConfigConditionSensorState-BX19KYLJ.js → ConfigConditionSensorState-BytECo6r.js} +1 -1
  29. package/dist/interface/assets/{ConfigConditionSwitch-D-XUhwcE.js → ConfigConditionSwitch-DaSt9uZE.js} +1 -1
  30. package/dist/interface/assets/{ConfigConditionTime-B6OO8cmh.js → ConfigConditionTime-D42OsshU.js} +1 -1
  31. package/dist/interface/assets/{ConfigSensorValueInput-DZHYQez8.js → ConfigSensorValueInput-BtEmtZSm.js} +1 -1
  32. package/dist/interface/assets/{ConfigTriggerDetection-BNyR5aOG.js → ConfigTriggerDetection-CDH2fzsu.js} +1 -1
  33. package/dist/interface/assets/ConfigTriggerGeofence-Dopegic5.js +1 -0
  34. package/dist/interface/assets/{ConfigTriggerManual-DFSTAuUt.js → ConfigTriggerManual-DAtWfH0-.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerMqtt-D_O8RyrQ.js → ConfigTriggerMqtt-CB3_PxqD.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerSchedule-BFZnBfCM.js → ConfigTriggerSchedule-BUzOrF23.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerSensor-D1Tst2wQ.js → ConfigTriggerSensor-D5kRIb7I.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerSystem-BNfatCp8.js → ConfigTriggerSystem-Cud77VMR.js} +1 -1
  39. package/dist/interface/assets/{ConfigTriggerWebhook--nEO_Odl.js → ConfigTriggerWebhook-CeG5R3kV.js} +1 -1
  40. package/dist/interface/assets/Console-DdOD6Pd5.js +1 -0
  41. package/dist/interface/assets/{CuiAutomationRunsDialog-CkMRT1C8.js → CuiAutomationRunsDialog-Cym6xMVJ.js} +1 -1
  42. package/dist/interface/assets/CuiBottomSheet-B3QSHp4-.js +1 -0
  43. package/dist/interface/assets/{CuiBottomSheet-mKu68LHd.js → CuiBottomSheet-BSoMhymR.js} +1 -1
  44. package/dist/interface/assets/{CuiCameraPipCard-Djp8qBvZ.js → CuiCameraPipCard-DGgrxZJd.js} +1 -1
  45. package/dist/interface/assets/CuiCameraRecordings-Bu68AFdM.js +1 -0
  46. package/dist/interface/assets/{CuiCameraShares-B73pWIFh.js → CuiCameraShares-BOhfTcxQ.js} +1 -1
  47. package/dist/interface/assets/CuiCameraTable-C1CHYnda.js +1 -0
  48. package/dist/interface/assets/{CuiCameraTable-DripFD6D.js → CuiCameraTable-D0lc0VAJ.js} +2 -2
  49. package/dist/interface/assets/{CuiChartTable-DyyQV7mt.js → CuiChartTable-DcrFI8tT.js} +1 -1
  50. package/dist/interface/assets/{CuiConsole-UxJwQqNG.js → CuiConsole-ICLBq4Q-.js} +2 -2
  51. package/dist/interface/assets/{CuiDataTable-DZm0I8k7.js → CuiDataTable-BooFPsGH.js} +1 -1
  52. package/dist/interface/assets/{CuiLightControl-CB3l0ZLj.js → CuiLightControl-D1ih2hO-.js} +1 -1
  53. package/dist/interface/assets/{CuiList-DMQgYqaU.js → CuiList-ChI82KjI.js} +1 -1
  54. package/dist/interface/assets/{CuiPluginCard-HpQMNND1.js → CuiPluginCard-DqdSWrwb.js} +2 -2
  55. package/dist/interface/assets/{CuiPluginCategoryChip-C6aEP-ug.js → CuiPluginCategoryChip-DsRcMb72.js} +1 -1
  56. package/dist/interface/assets/{CuiPluginOAuthButton-DpGacvsa.js → CuiPluginOAuthButton-BSvRKUSY.js} +2 -2
  57. package/dist/interface/assets/{CuiPluginTrustBadge-Dl1PEsm6.js → CuiPluginTrustBadge-DXL7N1LC.js} +1 -1
  58. package/dist/interface/assets/CuiQRCode-DHln6Lo9.js +1 -0
  59. package/dist/interface/assets/CuiSchema-B7i2O3Fy.js +1 -0
  60. package/dist/interface/assets/{CuiTopNavbarItem-qPj6XwXr.js → CuiTopNavbarItem-TMfTyt8u.js} +1 -1
  61. package/dist/interface/assets/{Faces-DRWIPDfH.js → Faces-CyTkMqMW.js} +1 -1
  62. package/dist/interface/assets/FirstSteps-B4gb7Sgn.js +1 -0
  63. package/dist/interface/assets/Floorplan-DBwWnuys.js +1 -0
  64. package/dist/interface/assets/{Instances-VC4-anOF.js → Instances-D9fnwItz.js} +1 -1
  65. package/dist/interface/assets/{Logs-DROgZxLH.js → Logs-Brk6fJa0.js} +2 -2
  66. package/dist/interface/assets/{Menu-CmTk2or7.js → Menu-CrdBz1Er.js} +1 -1
  67. package/dist/interface/assets/Metrics-DXMgfNIL.js +9 -0
  68. package/dist/interface/assets/{OAuthDeviceFlow-BrdiDoCh.js → OAuthDeviceFlow-D5hSwHeO.js} +1 -1
  69. package/dist/interface/assets/Plugin-C65oNZ9N.js +1 -0
  70. package/dist/interface/assets/{PluginConsole-CxiW1w6K.js → PluginConsole-Bs3Z5u9-.js} +2 -2
  71. package/dist/interface/assets/PluginDetail-C3KUrHvq.js +2 -0
  72. package/dist/interface/assets/{PluginSchema-BgVZ_4if.js → PluginSchema-D22zRDkZ.js} +1 -1
  73. package/dist/interface/assets/PluginSearch-4ngDmZQ2.js +1 -0
  74. package/dist/interface/assets/PluginSearch-D7XYJzl4.js +2 -0
  75. package/dist/interface/assets/{PluginUpdateProgress-DEcle8-x.js → PluginUpdateProgress-MEdR7mID.js} +1 -1
  76. package/dist/interface/assets/Plugins-DQTlb12n.js +1 -0
  77. package/dist/interface/assets/Recordings-CqBwRvn-.js +1 -0
  78. package/dist/interface/assets/SensorEdit-BM2zHAM7.js +1 -0
  79. package/dist/interface/assets/{SensorHistory-H03yZia0.js → SensorHistory-Dbv2ODqn.js} +1 -1
  80. package/dist/interface/assets/Sensors-B4YzyU7R.js +2 -0
  81. package/dist/interface/assets/{Sensors-DzGV2Ngo.css → Sensors-DETviyjO.css} +1 -1
  82. package/dist/interface/assets/{Settings-9nC18KH8.js → Settings--wgPYOyK.js} +1 -1
  83. package/dist/interface/assets/{SettingsAccount-BTYvhCJP.js → SettingsAccount-BF6Cp8Rt.js} +1 -1
  84. package/dist/interface/assets/SettingsAccount-D7CHP0f1.js +1 -0
  85. package/dist/interface/assets/SettingsAppearance-Ba0jbbVW.js +1 -0
  86. package/dist/interface/assets/SettingsAppearance-BpXZwBjO.js +1 -0
  87. package/dist/interface/assets/{SettingsBackup-Bu48xw4v.js → SettingsBackup-qEYm-6De.js} +1 -1
  88. package/dist/interface/assets/{SettingsList-74c5OMQf.js → SettingsList-1brGZ2E_.js} +1 -1
  89. package/dist/interface/assets/{SettingsMqtt-81rJ4zV6.js → SettingsMqtt-Ds8YpoLA.js} +1 -1
  90. package/dist/interface/assets/SettingsNotifications-Diqpfbrh.js +1 -0
  91. package/dist/interface/assets/{SettingsPermissions-DqyVtVKE.js → SettingsPermissions-GmGacrLc.js} +1 -1
  92. package/dist/interface/assets/{SettingsRecordings-Bxn28Frz.js → SettingsRecordings-CtEm_7PE.js} +1 -1
  93. package/dist/interface/assets/SettingsRemote-CENHI51U.js +2 -0
  94. package/dist/interface/assets/SettingsSystem-YkigO2-V.js +2 -0
  95. package/dist/interface/assets/{SettingsUsers-DUOJN7uO.js → SettingsUsers-BNPa87gu.js} +1 -1
  96. package/dist/interface/assets/{Terminal-45QW5yPE.js → Terminal-uxOHZpUp.js} +3 -3
  97. package/dist/interface/assets/Training-BRZKDa8S.js +1 -0
  98. package/dist/interface/assets/Training-DMNjB3uX.css +1 -0
  99. package/dist/interface/assets/{Updates-B32Pra5E.js → Updates-CbscgL60.js} +1 -1
  100. package/dist/interface/assets/{VariableInput-CyTGQFtz.js → VariableInput-Dqg4sqBD.js} +1 -1
  101. package/dist/interface/assets/{VariableSuggestions-BLlD4F87.js → VariableSuggestions-DZCkPAVs.js} +1 -1
  102. package/dist/interface/assets/{VersionsHandler-CIq6v6lE.js → VersionsHandler-BYFshrhO.js} +2 -2
  103. package/dist/interface/assets/{VirtualSensorCreate-Di2IyYAg.js → VirtualSensorCreate-CQ-C4si3.js} +1 -1
  104. package/dist/interface/assets/{Workers-tb039NGc.js → Workers-DC77SjZQ.js} +2 -2
  105. package/dist/interface/assets/api-Cb8_C_se.js +4 -0
  106. package/dist/interface/assets/{api-4JRK8ya0.js → api-CbYNh0N1.js} +1 -1
  107. package/dist/interface/assets/api-DIyogyx5.css +2 -0
  108. package/dist/interface/assets/{auth-ISkWvJbZ.js → auth-Bev1OdHw.js} +1 -1
  109. package/dist/interface/assets/{automations-CeH81DN-.js → automations-DrpESBB_.js} +1 -1
  110. package/dist/interface/assets/cameraSources-QF2xqMxX.js +1 -0
  111. package/dist/interface/assets/cloudHandoff-BknPGUc0.js +1 -0
  112. package/dist/interface/assets/{config-DthCyQJv.js → config-DCK7k2P4.js} +1 -1
  113. package/dist/interface/assets/{flowSchema-DZ2bDhJt.js → flowSchema-D3Ddm5sW.js} +1 -1
  114. package/dist/interface/assets/{intercomService-Bd71KwsB.js → intercomService-DIwpkwG4.js} +1 -1
  115. package/dist/interface/assets/{main-ExPfCNlz.css → main-Cb5Z8N7b.css} +1 -1
  116. package/dist/interface/assets/main-DVwdxi04.js +3 -0
  117. package/dist/interface/assets/{mqtt-oPORDio9.js → mqtt-COWs_r7k.js} +1 -1
  118. package/dist/interface/assets/{notifications-BirFkpbF.js → notifications-sIv1-H85.js} +1 -1
  119. package/dist/interface/assets/{plugins-vyA7MMhx.js → plugins-CXQj6XQt.js} +1 -1
  120. package/dist/interface/assets/{rooms-MfPQPywT.js → rooms-DScX89Ks.js} +1 -1
  121. package/dist/interface/assets/{sensorIcons-B4H11BbT.js → sensorIcons-CvVtOgZB.js} +1 -1
  122. package/dist/interface/assets/sensorSlots-DsfKs8_k.js +1 -0
  123. package/dist/interface/assets/{sensors-xryx8Wvn.js → sensors-Bf_gYmB5.js} +1 -1
  124. package/dist/interface/assets/{server-BK9gwxH8.js → server-CahE6_Pv.js} +1 -1
  125. package/dist/interface/assets/{theme-DQeAzJ1v.js → theme-DmUc7UHl.js} +1 -1
  126. package/dist/interface/assets/{types-Bcj_K26s.js → types-D4kUDpid.js} +1 -1
  127. package/dist/interface/assets/{types-kN1Tn2Og.js → types-Dse8_nTX.js} +1 -1
  128. package/dist/interface/assets/{types-D626ASim.js → types-hwOSxlNg.js} +1 -1
  129. package/dist/interface/assets/ungrouped-Byxe4LNR.js +1 -0
  130. package/dist/interface/assets/ungrouped-n3OnGhCH.css +1 -0
  131. package/dist/interface/assets/{updates-Dzqxen12.js → updates-C4gAnNY6.js} +1 -1
  132. package/dist/interface/assets/{useAppVersion-JY7cdzlr.js → useAppVersion--b5Zj7tl.js} +1 -1
  133. package/dist/interface/assets/{useBackupRestore-CeShFVWy.js → useBackupRestore-Bx13MgrJ.js} +1 -1
  134. package/dist/interface/assets/{useCameraOptions-BeUNT5Rz.js → useCameraOptions-DN4gJjIl.js} +1 -1
  135. package/dist/interface/assets/{useLogsSocket-DDSuX00j.js → useLogsSocket-DqVa6Hky.js} +1 -1
  136. package/dist/interface/assets/{useNavLayout-DgAgRNq2.js → useNavLayout-CuQ9F9cj.js} +1 -1
  137. package/dist/interface/assets/{usePermissions-DFzwIs8L.js → usePermissions-C1L7m3Nc.js} +1 -1
  138. package/dist/interface/assets/{usePluginUpdates-Bb-LOOyL.js → usePluginUpdates-CvQPy02x.js} +1 -1
  139. package/dist/interface/assets/{usePushRegistration-iverdyzz.js → usePushRegistration-BKvefMFq.js} +1 -1
  140. package/dist/interface/assets/{useServerRestart-BchofDLe.js → useServerRestart-ByN6484v.js} +1 -1
  141. package/dist/interface/assets/{useStreamStatus-BOJt1v1c.js → useStreamStatus-BbtTnidZ.js} +1 -1
  142. package/dist/interface/assets/{useTabSwipe-v0Yet-YZ.js → useTabSwipe-D9udGzPx.js} +1 -1
  143. package/dist/interface/assets/{useUpdateChannel-K9ADk5yx.js → useUpdateChannel-8t3W9dNr.js} +1 -1
  144. package/dist/interface/assets/{useUpdatesSocket-sj1-DmFM.js → useUpdatesSocket-D9s_5T3l.js} +1 -1
  145. package/dist/interface/assets/{useUserOptions-BnF_qBdZ.js → useUserOptions-CEPYkuSm.js} +1 -1
  146. package/dist/interface/assets/{vendor-cameraui-BPX4wReW.js → vendor-cameraui-Dlzn4pyz.js} +26 -26
  147. package/dist/interface/assets/vendor-core-COMSlypG.js +1 -0
  148. package/dist/interface/assets/{vendor-primevue-iEFYdXsu.js → vendor-primevue-DF71EsUM.js} +55 -55
  149. package/dist/interface/ha/{404-DlQnv9jN.js → 404-Bm-oxxip.js} +1 -1
  150. package/dist/interface/ha/{About-BLQJmllv.js → About-CDcN0Q2J.js} +3 -3
  151. package/dist/interface/ha/{Automation-DLMPArOd.js → Automation-BQd4b0ym.js} +102 -102
  152. package/dist/interface/ha/{AutomationImport-Qzz3Ta4D.js → AutomationImport-CX1C76Wb.js} +6 -6
  153. package/dist/interface/ha/{AutomationStore-DNXC9s6h.js → AutomationStore-D4B0KpoW.js} +56 -56
  154. package/dist/interface/ha/{AutomationStoreDetail-CTqydRKj.js → AutomationStoreDetail-B53Giz4B.js} +6 -6
  155. package/dist/interface/ha/{Automations-DRxe1fli.js → Automations-BXlwOElS.js} +124 -124
  156. package/dist/interface/ha/{Camera-OrI4Wf4F.js → Camera-CauwMneE.js} +21 -19
  157. package/dist/interface/ha/{CameraConsole-6yGhoHmu.js → CameraConsole-CmsMjuIR.js} +5 -5
  158. package/dist/interface/ha/{Cameras-DpEaKKDG.js → Cameras-CyHDmgs0.js} +259 -259
  159. package/dist/interface/ha/{Camview-CnPz4cGs.js → Camview-BwwvU5k8.js} +70 -70
  160. package/dist/interface/ha/{Config-Bb2ERyAA.js → Config-C_Zuyeoc.js} +10 -10
  161. package/dist/interface/ha/{ConfigActionCameraControl-CC2tWFz2.js → ConfigActionCameraControl-C1_QyuX8.js} +3 -3
  162. package/dist/interface/ha/{ConfigActionHttp-DBsEL44i.js → ConfigActionHttp-C0d433mh.js} +2 -2
  163. package/dist/interface/ha/{ConfigActionImageInput-Rt3AOJ3I.js → ConfigActionImageInput-BYys2FwC.js} +1 -1
  164. package/dist/interface/ha/{ConfigActionMqtt-BYSSc954.js → ConfigActionMqtt-DznDfzze.js} +4 -4
  165. package/dist/interface/ha/{ConfigActionNotification-DKlIsZJd.js → ConfigActionNotification-CC2qfBLm.js} +3 -3
  166. package/dist/interface/ha/{ConfigActionNotificationControl-D5AVW2tR.js → ConfigActionNotificationControl-3jlm7_A4.js} +2 -2
  167. package/dist/interface/ha/{ConfigActionOutput-DIlu8Ujc.js → ConfigActionOutput-BEf1U3_l.js} +1 -1
  168. package/dist/interface/ha/{ConfigActionPlugin-o1YNBh-g.js → ConfigActionPlugin-C57BUrJD.js} +5 -5
  169. package/dist/interface/ha/{ConfigActionSensor-BEvwg0tf.js → ConfigActionSensor-BkoSPCUJ.js} +5 -5
  170. package/dist/interface/ha/{ConfigActionSnapshot-Bnw0JNNj.js → ConfigActionSnapshot-CC3EpmCq.js} +2 -2
  171. package/dist/interface/ha/{ConfigActionVariable-oGPagsvF.js → ConfigActionVariable-JDyDhSzZ.js} +1 -1
  172. package/dist/interface/ha/{ConfigConditionIfElse-7LCDNDvS.js → ConfigConditionIfElse-BVg-TUpv.js} +3 -3
  173. package/dist/interface/ha/{ConfigConditionSensorState-nO-s7wi6.js → ConfigConditionSensorState-YYeWly1H.js} +4 -4
  174. package/dist/interface/ha/{ConfigConditionSwitch-GrIKkY-P.js → ConfigConditionSwitch-DQHXX-4U.js} +5 -5
  175. package/dist/interface/ha/{ConfigSensorValueInput-Cthp3KXt.js → ConfigSensorValueInput-BuuzQ1nJ.js} +4 -4
  176. package/dist/interface/ha/{ConfigTriggerDetection-CJE9QFaK.js → ConfigTriggerDetection-CUvkAmpJ.js} +12 -12
  177. package/dist/interface/ha/{ConfigTriggerGeofence-Cyeu7Cit.js → ConfigTriggerGeofence-CCHELnfy.js} +7 -7
  178. package/dist/interface/ha/{ConfigTriggerMqtt-D5EoOztE.js → ConfigTriggerMqtt-BfLnCiWZ.js} +1 -1
  179. package/dist/interface/ha/{ConfigTriggerSensor-DYg_HRjO.js → ConfigTriggerSensor-Bi-Jld2G.js} +1 -1
  180. package/dist/interface/ha/{ConfigTriggerSystem-DzpajiyS.js → ConfigTriggerSystem-_HXrWjaJ.js} +2 -2
  181. package/dist/interface/ha/{ConfigTriggerWebhook-IE4PVb4O.js → ConfigTriggerWebhook-CFYsVF_r.js} +1 -1
  182. package/dist/interface/ha/{Console-BYgny5Dy.js → Console-CR95JZFd.js} +8 -8
  183. package/dist/interface/ha/{CuiAutomationRunsDialog-CoYgpbW0.js → CuiAutomationRunsDialog--mpkPFmw.js} +2 -2
  184. package/dist/interface/ha/{CuiBottomSheet-C4cK3fYK.js → CuiBottomSheet-DfFzwDjq.js} +1 -1
  185. package/dist/interface/ha/{CuiCameraRecordings-BAxchc71.js → CuiCameraRecordings-DCIFFbFk.js} +17 -18
  186. package/dist/interface/ha/{CuiCameraShares-CfQr1iyX.js → CuiCameraShares-Dwv_XtX4.js} +2 -2
  187. package/dist/interface/ha/{CuiCameraTable-B60mcEl_.js → CuiCameraTable-L6wd-VYz.js} +2 -2
  188. package/dist/interface/ha/{CuiChartTable-CbUVz-Cj.js → CuiChartTable-CxJR8u6U.js} +42 -42
  189. package/dist/interface/ha/{CuiConsole-DEjAQFwC.js → CuiConsole-CvL9TXZY.js} +20 -20
  190. package/dist/interface/ha/{CuiDataTable-005ptLsa.js → CuiDataTable-Bn80WJXi.js} +6 -6
  191. package/dist/interface/ha/{CuiPluginCard-BWwPLJ6m.js → CuiPluginCard-CtOzPAal.js} +18 -18
  192. package/dist/interface/ha/{CuiPluginOAuthButton-CgmDgRY9.js → CuiPluginOAuthButton-1LgNMLII.js} +3 -3
  193. package/dist/interface/ha/{CuiPluginTrustBadge-BWnP1whX.js → CuiPluginTrustBadge-mHuy3ab9.js} +1 -1
  194. package/dist/interface/ha/{CuiQRCode-ONkk6Wqy.js → CuiQRCode-CloepWte.js} +2 -2
  195. package/dist/interface/ha/{CuiSchema-C3uI1GwG.js → CuiSchema-CJsEWewj.js} +19 -19
  196. package/dist/interface/ha/{CuiTopNavbarItem-Bhws0XkE.js → CuiTopNavbarItem-B2EM-tmz.js} +1 -1
  197. package/dist/interface/ha/{Faces-DuxYlZGd.js → Faces-BMkZfxDm.js} +107 -107
  198. package/dist/interface/ha/{FirstSteps-BAlqShSK.js → FirstSteps-BH0mga3u.js} +11 -11
  199. package/dist/interface/ha/{Floorplan-BVwSNFd6.js → Floorplan-CyfIUI4Z.js} +275 -275
  200. package/dist/interface/ha/{Instances-BM9sRNSP.js → Instances-BwNXc91J.js} +70 -70
  201. package/dist/interface/ha/{Logs-KISz4BU-.js → Logs-CcSiN16r.js} +8 -8
  202. package/dist/interface/ha/{Menu-DYI6PeIn.js → Menu-qdN0OBb7.js} +10 -10
  203. package/dist/interface/ha/{Metrics-BjpKFunA.js → Metrics-ClM5lhvC.js} +89 -89
  204. package/dist/interface/ha/{OAuthDeviceFlow-DG-KUGZj.js → OAuthDeviceFlow-BBr-rER_.js} +3 -3
  205. package/dist/interface/ha/{Plugin-BjWyUUhe.js → Plugin-BBkSXygO.js} +50 -50
  206. package/dist/interface/ha/{PluginConsole-BK3cotea.js → PluginConsole-DqrBnXSX.js} +6 -6
  207. package/dist/interface/ha/{PluginDetail-BDzDeShX.js → PluginDetail-Clu6nv-B.js} +9 -9
  208. package/dist/interface/ha/{PluginSearch-DsFUuPC-.js → PluginSearch-Dn-24FLX.js} +32 -32
  209. package/dist/interface/ha/{PluginUpdateProgress-BMrdkjRq.js → PluginUpdateProgress-CzhHUKDg.js} +3 -3
  210. package/dist/interface/ha/{Plugins-3WPnsHXw.js → Plugins-qYJD5ioU.js} +16 -16
  211. package/dist/interface/ha/{Recordings-0wDF4ArK.js → Recordings-CBIt3vL7.js} +354 -355
  212. package/dist/interface/ha/{SensorEdit-B0L2zIha.js → SensorEdit-BbG6apZA.js} +349 -349
  213. package/dist/interface/ha/{SensorHistory-CQJEY1sW.js → SensorHistory-CqGsnQPW.js} +2 -2
  214. package/dist/interface/ha/{Sensors-BYdBTCLo.js → Sensors-mKWkCDF8.js} +474 -448
  215. package/dist/interface/ha/{Settings-BaqGiBCa.js → Settings-C5J4ubiA.js} +10 -10
  216. package/dist/interface/ha/{SettingsAccount-B0Sth0EF.js → SettingsAccount-tCyZsBxG.js} +39 -39
  217. package/dist/interface/ha/{SettingsAppearance-B_oylmTa.js → SettingsAppearance-DqJp4Clt.js} +6 -6
  218. package/dist/interface/ha/{SettingsBackup-BLmoV5AW.js → SettingsBackup-CHnCKYgz.js} +5 -5
  219. package/dist/interface/ha/{SettingsList-CMX7wMye.js → SettingsList-DsQOPeKW.js} +1 -1
  220. package/dist/interface/ha/{SettingsMqtt-C-sGwxOZ.js → SettingsMqtt-TPIsEcXe.js} +180 -180
  221. package/dist/interface/ha/{SettingsNotifications-tc9FCCUF.js → SettingsNotifications-DH3T_xyh.js} +3 -3
  222. package/dist/interface/ha/{SettingsRecordings-DDs16z2A.js → SettingsRecordings-Ay8lj8Lm.js} +4 -4
  223. package/dist/interface/ha/{SettingsRemote-0c0umjFJ.js → SettingsRemote-CHiBADuu.js} +314 -314
  224. package/dist/interface/ha/{SettingsSystem-DfXxWXQk.js → SettingsSystem-tqs40pUW.js} +8 -8
  225. package/dist/interface/ha/{SettingsUsers-CmjC0zsF.js → SettingsUsers-BUbC_Qc7.js} +39 -39
  226. package/dist/interface/ha/{Terminal-nbUX6PPZ.js → Terminal-f_b-089t.js} +4 -4
  227. package/dist/interface/ha/Training-Dcxo9PFi.js +1479 -0
  228. package/dist/interface/ha/{Updates-UaxBGn6D.js → Updates-aGl5hy8Q.js} +11 -11
  229. package/dist/interface/ha/{VariableInput-0bF2H1Bm.js → VariableInput-yJGbaZEo.js} +1 -1
  230. package/dist/interface/ha/{VersionsHandler-CnXVnfBl.js → VersionsHandler-Q4PfRpbs.js} +10 -10
  231. package/dist/interface/ha/{VirtualSensorCreate-BE60rAkJ.js → VirtualSensorCreate-Gbi6aJBh.js} +8 -8
  232. package/dist/interface/ha/{Workers-CaX3Z3w-.js → Workers-BbBqOc0H.js} +129 -129
  233. package/dist/interface/ha/{api-CmcbBFTx.js → api-DBu4gh4_.js} +8390 -8315
  234. package/dist/interface/ha/{api-S-NnjUWl.js → api-DY0z6Sp_.js} +3 -3
  235. package/dist/interface/ha/{auth-CqYE7s1-.js → auth-C2V-kpRp.js} +38 -38
  236. package/dist/interface/ha/{automationBlueprint-Dmp54JD1.js → automationBlueprint-MGUZJTFY.js} +4 -4
  237. package/dist/interface/ha/cameraui-cards.js +1 -1
  238. package/dist/interface/ha/{cards-MnCBmBIR.js → cards-BA6g_9R5.js} +566 -566
  239. package/dist/interface/ha/{config-C94KN4WM.js → config-BGlhgEOa.js} +15 -15
  240. package/dist/interface/ha/{dist-BQFunPaA.js → dist-BqTZri2H.js} +743 -725
  241. package/dist/interface/ha/{mqtt-HDLqlOJt.js → mqtt-BLKZNA-E.js} +15 -15
  242. package/dist/interface/ha/{notifications-C2_2_NRh.js → notifications-BW0RNMnG.js} +22 -22
  243. package/dist/interface/ha/{pinia-DLNUke3Q.js → pinia-DINxhtY-.js} +168 -165
  244. package/dist/interface/ha/{plugins-l2i4DgqO.js → plugins-Cj-B4Nwy.js} +68 -68
  245. package/dist/interface/ha/{rooms-Bp1ZVAzT.js → rooms-C32i51p-.js} +8 -8
  246. package/dist/interface/ha/{server-BsduJDAB.js → server-CfbE_0Z9.js} +32 -32
  247. package/dist/interface/ha/{types-iZUCCt1P.js → types-Ry6RjBNa.js} +17 -17
  248. package/dist/interface/ha/ungrouped-CO29-tSV.js +1320 -0
  249. package/dist/interface/ha/{updates-CDsPvhpo.js → updates-CZPI8XJ1.js} +37 -37
  250. package/dist/interface/ha/{useAppVersion-BJtSGn4X.js → useAppVersion-9jfqRo_z.js} +1 -1
  251. package/dist/interface/ha/{useLogsSocket-Ck-ZQpQD.js → useLogsSocket-B0E7a3ys.js} +1 -1
  252. package/dist/interface/ha/{useNavLayout-Bn6HYs-i.js → useNavLayout-B2wfeha-.js} +2 -2
  253. package/dist/interface/ha/{useServerRestart-fff_KK9Y.js → useServerRestart-CCH-yMWR.js} +1 -1
  254. package/dist/interface/ha/{useTabSwipe-B1CQZuyT.js → useTabSwipe-D2uqGEvR.js} +1 -1
  255. package/dist/interface/ha/{useUpdateChannel-DUBmGEDe.js → useUpdateChannel--SP3Wjym.js} +2 -2
  256. package/dist/interface/ha/{useUpdatesSocket-DoLb2kcJ.js → useUpdatesSocket-BBbUCMU-.js} +1 -1
  257. package/dist/interface/ha/{useUserOptions-D0kNSHFH.js → useUserOptions-Bh54UAkH.js} +1 -1
  258. package/dist/interface/index.html +28 -27
  259. package/dist/interface/sw.js +1 -1
  260. package/dist/server/package.json +1 -1
  261. package/dist/server/src/api/controllers/training.controller.d.ts +4 -2
  262. package/dist/server/src/api/controllers/training.controller.js +2 -2
  263. package/dist/server/src/api/controllers/training.controller.js.map +1 -1
  264. package/dist/server/src/api/database/record-schemas.d.ts +1 -0
  265. package/dist/server/src/api/database/record-schemas.js +1 -0
  266. package/dist/server/src/api/database/record-schemas.js.map +1 -1
  267. package/dist/server/src/api/routes/training.routes.js +3 -2
  268. package/dist/server/src/api/routes/training.routes.js.map +1 -1
  269. package/dist/server/src/api/schemas/training.schema.d.ts +4 -0
  270. package/dist/server/src/api/schemas/training.schema.js +3 -0
  271. package/dist/server/src/api/schemas/training.schema.js.map +1 -1
  272. package/dist/server/src/api/services/sensors.service.d.ts +1 -0
  273. package/dist/server/src/api/services/sensors.service.js +1 -0
  274. package/dist/server/src/api/services/sensors.service.js.map +1 -1
  275. package/dist/server/src/api/types/index.d.ts +2 -1
  276. package/dist/server/src/camera/decoder/detection-coordinator.js +23 -7
  277. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  278. package/dist/server/src/camera/decoder/detection-window.d.ts +5 -0
  279. package/dist/server/src/camera/decoder/detection-window.js +5 -5
  280. package/dist/server/src/camera/decoder/detection-window.js.map +1 -1
  281. package/dist/server/src/camera/decoder/event-manager.d.ts +5 -1
  282. package/dist/server/src/camera/decoder/event-manager.js +21 -14
  283. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  284. package/dist/server/src/camera/decoder/training-sink.d.ts +14 -3
  285. package/dist/server/src/camera/decoder/training-sink.js +32 -17
  286. package/dist/server/src/camera/decoder/training-sink.js.map +1 -1
  287. package/dist/server/src/camera/decoder/types.d.ts +1 -1
  288. package/dist/server/src/camera/decoder/types.js +2 -6
  289. package/dist/server/src/camera/decoder/types.js.map +1 -1
  290. package/dist/server/src/manager/trainingCandidateManager.d.ts +2 -3
  291. package/dist/server/src/manager/trainingCandidateManager.js +17 -18
  292. package/dist/server/src/manager/trainingCandidateManager.js.map +1 -1
  293. package/dist/server/src/manager/types.d.ts +5 -0
  294. package/dist/server/src/remote/api/routes/train.d.ts +6 -1
  295. package/dist/server/src/remote/api/routes/train.js +6 -2
  296. package/dist/server/src/remote/api/routes/train.js.map +1 -1
  297. package/dist/server/src/sensors/registry.d.ts +1 -0
  298. package/dist/server/src/sensors/registry.js +10 -0
  299. package/dist/server/src/sensors/registry.js.map +1 -1
  300. package/package.json +1 -1
  301. package/dist/interface/assets/Automation-CDvt2MXN.js +0 -3
  302. package/dist/interface/assets/Automations-2K-7hZfK.js +0 -2
  303. package/dist/interface/assets/Camera-B72IU-UF.js +0 -2
  304. package/dist/interface/assets/Camera-Cm9I0H6c.css +0 -1
  305. package/dist/interface/assets/Camview-KzzN0Q1w.js +0 -1
  306. package/dist/interface/assets/ConfigActionNotification-C2uXIMpm.js +0 -1
  307. package/dist/interface/assets/ConfigTriggerGeofence-Cuq1SnOZ.js +0 -1
  308. package/dist/interface/assets/Console-DkylrXI4.js +0 -1
  309. package/dist/interface/assets/CuiBottomSheet-DILQuWKb.js +0 -1
  310. package/dist/interface/assets/CuiCameraRecordings-Bi0I7jeO.js +0 -1
  311. package/dist/interface/assets/CuiCameraTable-CUdAnRJP.js +0 -1
  312. package/dist/interface/assets/CuiQRCode-D04Onyhk.js +0 -1
  313. package/dist/interface/assets/CuiRecordingsGrid-BhATIjIf.css +0 -1
  314. package/dist/interface/assets/CuiRecordingsGrid-BzyJWpFt.js +0 -1
  315. package/dist/interface/assets/CuiSchema-thjfmEWw.js +0 -1
  316. package/dist/interface/assets/FirstSteps-C6GVpZVr.js +0 -1
  317. package/dist/interface/assets/Floorplan-Q-UYDnrE.js +0 -1
  318. package/dist/interface/assets/Metrics-CYZF-em9.js +0 -9
  319. package/dist/interface/assets/Plugin-DuPHiiYJ.js +0 -1
  320. package/dist/interface/assets/PluginDetail-DWP7_hNa.js +0 -2
  321. package/dist/interface/assets/PluginSearch-1djFQUjL.js +0 -1
  322. package/dist/interface/assets/PluginSearch-Ba-hQHxm.js +0 -2
  323. package/dist/interface/assets/Plugins-BZ3U4pcG.js +0 -1
  324. package/dist/interface/assets/Recordings-CI5MIFR-.js +0 -1
  325. package/dist/interface/assets/SensorEdit-B6s-VZ3F.js +0 -1
  326. package/dist/interface/assets/Sensors-DDPUwbb-.js +0 -2
  327. package/dist/interface/assets/SettingsAccount-CKi0z3Bm.js +0 -1
  328. package/dist/interface/assets/SettingsAppearance-CDbQnSvl.js +0 -1
  329. package/dist/interface/assets/SettingsAppearance-D9Y28zzz.js +0 -1
  330. package/dist/interface/assets/SettingsNotifications-xHV5KiZg.js +0 -1
  331. package/dist/interface/assets/SettingsRemote-7h2dKJlF.js +0 -2
  332. package/dist/interface/assets/SettingsSystem-D-MLhCdN.js +0 -2
  333. package/dist/interface/assets/Training-B5SzDUAC.css +0 -1
  334. package/dist/interface/assets/Training-DWrQVSS0.js +0 -1
  335. package/dist/interface/assets/api-CFf063x3.js +0 -4
  336. package/dist/interface/assets/api-eoOLTOnS.css +0 -2
  337. package/dist/interface/assets/cameraSources-CgAEmb37.js +0 -1
  338. package/dist/interface/assets/cloudHandoff-B_kCnm4R.js +0 -1
  339. package/dist/interface/assets/main--lW4P3A4.js +0 -3
  340. package/dist/interface/assets/ungrouped-C6pQb0X4.css +0 -1
  341. package/dist/interface/assets/ungrouped-C_gJm6d7.js +0 -1
  342. package/dist/interface/assets/vendor-core-D0ANiY7g.js +0 -1
  343. package/dist/interface/ha/CuiRecordingsGrid-D6HHyF1D.js +0 -735
  344. package/dist/interface/ha/Training-GMcD4Qg9.js +0 -1440
  345. package/dist/interface/ha/ungrouped-wz-KNJpA.js +0 -426
@@ -3,9 +3,9 @@ import { B as t, G as n, H as r, Jt as i, M as a, N as o, Wt as s, Y as c, _t as
3
3
  import { t as E } from "./tooltip-BIrD_hC8.js";
4
4
  import { t as ae } from "./message-C8U_kMBA.js";
5
5
  import { t as D } from "./chevron-down-P5MtUhJO.js";
6
- import { $i as oe, Br as se, Bt as ce, Cr as O, Ft as le, G as ue, Ht as k, It as de, Lt as fe, Mn as pe, Mr as me, Pt as he, Qt as ge, Rt as A, Si as _e, Ur as j, Ut as ve, Vt as ye, ar as be, cr as M, gr as N, jr as xe, lt as Se, o as P, pi as F, pn as Ce, ut as we, wr as I, yn as Te, zt as Ee } from "./api-CmcbBFTx.js";
6
+ import { Bt as oe, Ci as se, Cr as ce, Ft as le, G as ue, Ht as de, It as O, Lt as fe, Mn as pe, Mr as me, Nr as he, Pt as ge, Qt as _e, Rt as k, Ut as ve, Vr as A, Vt as ye, Wr as be, ea as j, gr as xe, lt as M, mi as N, o as Se, pn as Ce, sr as P, ur as F, ut as we, wr as I, yn as Te, zt as Ee } from "./api-DBu4gh4_.js";
7
7
  import { n as De } from "./vue-i18n-Dcb07o5U.js";
8
- import { G as L, v as Oe } from "./dist-BQFunPaA.js";
8
+ import { G as L, v as Oe } from "./dist-BqTZri2H.js";
9
9
  import { t as ke } from "./button-BlYuI0Q7.js";
10
10
  import { t as Ae } from "./inputtext-DGIESrd0.js";
11
11
  import { t as je } from "./close-Eq3txTBS.js";
@@ -14,13 +14,13 @@ import { t as Ne } from "./select-DjWkRqsI.js";
14
14
  import { i as R, n as Pe, r as Fe, t as Ie } from "./accordion-BT2wHwK8.js";
15
15
  import { t as Le } from "./speeddial-Dv9txWte.js";
16
16
  import { t as Re } from "./textarea-DvLkfUX7.js";
17
- import { t as ze } from "./CuiBottomSheet-C4cK3fYK.js";
17
+ import { t as ze } from "./CuiBottomSheet-DfFzwDjq.js";
18
18
  import { t as Be } from "./cctv-Bz6BH0ns.js";
19
- import { u as Ve } from "./cards-MnCBmBIR.js";
19
+ import { u as Ve } from "./cards-BA6g_9R5.js";
20
20
  import { t as He } from "./trash-can-outline-DCqsCOd2.js";
21
21
  import { t as Ue } from "./back-filled-Cxzg5vQg.js";
22
22
  import { a as We, d as Ge, f as Ke, l as z, p as qe, t as B, u as Je } from "./vue-flow-background-B0Vu4-8M.js";
23
- import { n as Ye } from "./rooms-Bp1ZVAzT.js";
23
+ import { n as Ye } from "./rooms-C32i51p-.js";
24
24
  import { t as V } from "./minus-DKa9TXat.js";
25
25
  import { t as H } from "./eye-off-outline-DO3xfiua.js";
26
26
  import { t as Xe } from "./pencil-outline-BqfTDXIh.js";
@@ -313,7 +313,7 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
313
313
  }, Xt = { class: "cui-label" }, Zt = { class: "flex flex-col field-gap" }, $ = { class: "cui-label" }, Qt = { class: "text-color font-normal text-sm" }, $t = { class: "flex flex-col gap-6" }, en = { class: "flex flex-col field-gap" }, tn = { class: "cui-label" }, nn = { class: "flex flex-col field-gap" }, rn = { class: "cui-label" }, an = { class: "text-color font-normal text-sm" }, on = { class: "flex flex-col gap-6" }, sn = { class: "flex flex-col field-gap" }, cn = { class: "cui-label" }, ln = { class: "flex flex-col field-gap" }, un = { class: "cui-label" }, dn = { class: "flex flex-col field-gap" }, fn = { class: "cui-label" }, pn = {
314
314
  key: 0,
315
315
  class: "p-4 border-top-color"
316
- }, mn = /*#__PURE__*/ O(/* @__PURE__ */ C({
316
+ }, mn = /*#__PURE__*/ ce(/* @__PURE__ */ C({
317
317
  __name: "CuiFloorplanInspector",
318
318
  props: {
319
319
  fluid: { type: Boolean },
@@ -382,32 +382,32 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
382
382
  }), oe = h(() => at.filter((e) => e !== "stairs").map((e) => ({
383
383
  label: o(`views.floorplan.connection_${e}`),
384
384
  value: e
385
- }))), se = h(() => E.value ? `${n.rooms.find((e) => e.roomId === E.value?.fromRoomId)?.name ?? ""} · ${n.rooms.find((e) => e.roomId === E.value?.toRoomId)?.name ?? ""}` : ""), ce = h(() => ((f.value?.rotation ?? 0) % 360 + 360) % 360), O = h(() => C.value ? C.value.owner || (n.rooms.find((e) => e.roomId === C.value?.roomId)?.name ?? "") : l.value ? n.levels.find((e) => e.id === l.value?.levelId)?.name ?? "" : E.value ? o(`views.floorplan.connection_${E.value.type}`) : f.value ? n.rooms.find((e) => e.roomId === f.value?.roomId)?.name ?? o("views.floorplan.no_room") : "");
386
- function le(e) {
385
+ }))), se = h(() => E.value ? `${n.rooms.find((e) => e.roomId === E.value?.fromRoomId)?.name ?? ""} · ${n.rooms.find((e) => e.roomId === E.value?.toRoomId)?.name ?? ""}` : ""), ce = h(() => ((f.value?.rotation ?? 0) % 360 + 360) % 360), le = h(() => C.value ? C.value.owner || (n.rooms.find((e) => e.roomId === C.value?.roomId)?.name ?? "") : l.value ? n.levels.find((e) => e.id === l.value?.levelId)?.name ?? "" : E.value ? o(`views.floorplan.connection_${E.value.type}`) : f.value ? n.rooms.find((e) => e.roomId === f.value?.roomId)?.name ?? o("views.floorplan.no_room") : "");
386
+ function ue(e) {
387
387
  C.value && a("update-sensor", {
388
388
  id: C.value.id,
389
389
  patch: e
390
390
  });
391
391
  }
392
- function ue(e) {
392
+ function de(e) {
393
393
  return {
394
394
  outdoor: e !== "indoor",
395
395
  publicSpace: e === "public"
396
396
  };
397
397
  }
398
- function k(e) {
398
+ function O(e) {
399
399
  l.value && a("update-room", {
400
400
  id: l.value.id,
401
401
  patch: e
402
402
  });
403
403
  }
404
- function de(e) {
404
+ function fe(e) {
405
405
  f.value && a("update-camera", {
406
406
  id: f.value.id,
407
407
  patch: e
408
408
  });
409
409
  }
410
- function fe() {
410
+ function pe() {
411
411
  l.value ? a("remove", {
412
412
  kind: "room",
413
413
  id: l.value.id
@@ -423,7 +423,7 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
423
423
  });
424
424
  }
425
425
  return (t, n) => {
426
- let o = Be, h = nt, w = $e, pe = je, me = ke, he = Fe, ge = Ne, A = ae, _e = Ae, j = Re, ve = R, ye = Pe, M = be, N = Ie;
426
+ let o = Be, h = nt, w = $e, me = je, he = ke, ge = Fe, _e = Ne, k = ae, ve = Ae, A = Re, ye = R, be = Pe, j = P, xe = Ie;
427
427
  return r(), _("div", _t, [
428
428
  b("div", vt, [
429
429
  b("div", yt, [m(f) ? (r(), u(o, {
@@ -436,51 +436,51 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
436
436
  key: 2,
437
437
  class: "w-4 h-4"
438
438
  }))]),
439
- b("div", bt, [b("div", Z, i(m(l)?.name ?? m(f)?.name ?? m(C)?.name ?? m(se)), 1), b("div", xt, i(m(O)), 1)]),
440
- T(me, {
439
+ b("div", bt, [b("div", Z, i(m(l)?.name ?? m(f)?.name ?? m(C)?.name ?? m(se)), 1), b("div", xt, i(m(le)), 1)]),
440
+ T(he, {
441
441
  severity: "secondary",
442
442
  text: "",
443
443
  rounded: "",
444
444
  class: "shrink-0 cui-icon-sm",
445
445
  onClick: n[0] ||= (e) => a("close")
446
446
  }, {
447
- icon: g(() => [T(pe, {
447
+ icon: g(() => [T(me, {
448
448
  width: "100%",
449
449
  height: "100%"
450
450
  })]),
451
451
  _: 1
452
452
  })
453
453
  ]),
454
- b("div", St, [T(N, {
454
+ b("div", St, [T(xe, {
455
455
  multiple: "",
456
456
  value: m(c),
457
457
  class: s(e.fluid ? "w-full" : "w-[300px]")
458
458
  }, {
459
459
  default: g(() => [
460
- m(l) ? (r(), u(ye, {
460
+ m(l) ? (r(), u(be, {
461
461
  key: 0,
462
462
  value: "general"
463
463
  }, {
464
- default: g(() => [T(he, { class: "px-4 rounded-none!" }, {
464
+ default: g(() => [T(ge, { class: "px-4 rounded-none!" }, {
465
465
  default: g(() => [b("span", Ct, i(t.$t("views.floorplan.section_room")), 1)]),
466
466
  _: 1
467
- }), T(ve, { pt: { content: { class: e.fluid ? "px-4 w-full" : "px-4 w-[300px]" } } }, {
467
+ }), T(ye, { pt: { content: { class: e.fluid ? "px-4 w-full" : "px-4 w-[300px]" } } }, {
468
468
  default: g(() => [b("div", wt, [
469
469
  m(x).length > 1 ? (r(), _("div", Tt, [
470
470
  b("label", Et, i(t.$t("views.floorplan.belongs_to")), 1),
471
- T(ge, {
471
+ T(_e, {
472
472
  "model-value": m(l).roomId,
473
473
  options: m(x),
474
474
  "option-label": "label",
475
475
  "option-value": "value",
476
476
  disabled: e.readOnly,
477
- "onUpdate:modelValue": n[1] ||= (e) => e && k({ roomId: e })
477
+ "onUpdate:modelValue": n[1] ||= (e) => e && O({ roomId: e })
478
478
  }, null, 8, [
479
479
  "model-value",
480
480
  "options",
481
481
  "disabled"
482
482
  ]),
483
- T(A, {
483
+ T(k, {
484
484
  severity: "secondary",
485
485
  variant: "simple",
486
486
  size: "small",
@@ -492,12 +492,12 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
492
492
  ])) : d("", !0),
493
493
  b("div", Dt, [
494
494
  b("label", Ot, i(t.$t("views.floorplan.room_name")), 1),
495
- T(_e, {
495
+ T(ve, {
496
496
  "model-value": m(l).name,
497
497
  disabled: e.readOnly,
498
- "onUpdate:modelValue": n[2] ||= (e) => k({ name: e ?? "" })
498
+ "onUpdate:modelValue": n[2] ||= (e) => O({ name: e ?? "" })
499
499
  }, null, 8, ["model-value", "disabled"]),
500
- m(te) > 1 ? (r(), u(A, {
500
+ m(te) > 1 ? (r(), u(k, {
501
501
  key: 0,
502
502
  severity: "secondary",
503
503
  variant: "simple",
@@ -508,28 +508,28 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
508
508
  _: 1
509
509
  })) : d("", !0)
510
510
  ]),
511
- b("div", kt, [b("label", At, i(t.$t("views.floorplan.level")), 1), T(ge, {
511
+ b("div", kt, [b("label", At, i(t.$t("views.floorplan.level")), 1), T(_e, {
512
512
  "model-value": m(l).levelId,
513
513
  options: m(p),
514
514
  "option-label": "label",
515
515
  "option-value": "value",
516
- "onUpdate:modelValue": n[3] ||= (e) => k({ levelId: e })
516
+ "onUpdate:modelValue": n[3] ||= (e) => O({ levelId: e })
517
517
  }, null, 8, ["model-value", "options"])]),
518
518
  b("div", jt, [
519
519
  b("label", Mt, i(t.$t("views.floorplan.room_kind")), 1),
520
- T(ge, {
520
+ T(_e, {
521
521
  "model-value": m(ee),
522
522
  options: m(v),
523
523
  "option-label": "label",
524
524
  "option-value": "value",
525
525
  disabled: e.readOnly,
526
- "onUpdate:modelValue": n[4] ||= (e) => k(ue(e))
526
+ "onUpdate:modelValue": n[4] ||= (e) => O(de(e))
527
527
  }, null, 8, [
528
528
  "model-value",
529
529
  "options",
530
530
  "disabled"
531
531
  ]),
532
- T(A, {
532
+ T(k, {
533
533
  severity: "secondary",
534
534
  variant: "simple",
535
535
  size: "small",
@@ -541,19 +541,19 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
541
541
  ]),
542
542
  b("div", Nt, [
543
543
  b("label", Pt, i(t.$t("views.floorplan.note")), 1),
544
- T(j, {
544
+ T(A, {
545
545
  "model-value": m(l).note,
546
546
  disabled: e.readOnly,
547
547
  maxlength: m(240),
548
548
  rows: "3",
549
549
  "auto-resize": "",
550
- "onUpdate:modelValue": n[5] ||= (e) => k({ note: e ?? "" })
550
+ "onUpdate:modelValue": n[5] ||= (e) => O({ note: e ?? "" })
551
551
  }, null, 8, [
552
552
  "model-value",
553
553
  "disabled",
554
554
  "maxlength"
555
555
  ]),
556
- T(A, {
556
+ T(k, {
557
557
  severity: "secondary",
558
558
  variant: "simple",
559
559
  size: "small",
@@ -569,18 +569,18 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
569
569
  }, 8, ["pt"])]),
570
570
  _: 1
571
571
  })) : d("", !0),
572
- m(E) ? (r(), u(ye, {
572
+ m(E) ? (r(), u(be, {
573
573
  key: 1,
574
574
  value: "general"
575
575
  }, {
576
- default: g(() => [T(he, { class: "px-4 rounded-none!" }, {
576
+ default: g(() => [T(ge, { class: "px-4 rounded-none!" }, {
577
577
  default: g(() => [b("span", Lt, i(t.$t("views.floorplan.section_connection")), 1)]),
578
578
  _: 1
579
- }), T(ve, { pt: { content: { class: e.fluid ? "px-4 w-full" : "px-4 w-[300px]" } } }, {
579
+ }), T(ye, { pt: { content: { class: e.fluid ? "px-4 w-full" : "px-4 w-[300px]" } } }, {
580
580
  default: g(() => [
581
581
  b("div", Rt, [
582
582
  b("label", zt, i(t.$t("views.floorplan.connection_type")), 1),
583
- m(D) ? (r(), _("span", Bt, i(t.$t("views.floorplan.connection_stairs")), 1)) : (r(), u(ge, {
583
+ m(D) ? (r(), _("span", Bt, i(t.$t("views.floorplan.connection_stairs")), 1)) : (r(), u(_e, {
584
584
  key: 0,
585
585
  "model-value": m(E).type,
586
586
  options: m(oe),
@@ -596,7 +596,7 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
596
596
  "options",
597
597
  "disabled"
598
598
  ])),
599
- T(A, {
599
+ T(k, {
600
600
  severity: "secondary",
601
601
  variant: "simple",
602
602
  size: "small",
@@ -608,7 +608,7 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
608
608
  ]),
609
609
  m(D) ? d("", !0) : (r(), _("div", Vt, [
610
610
  b("label", Ht, i(t.$t("views.floorplan.connection_width", { value: m(st)(m(E).width).toFixed(2) })), 1),
611
- T(M, {
611
+ T(j, {
612
612
  "model-value": m(E).width,
613
613
  disabled: e.readOnly,
614
614
  min: m(q).min,
@@ -624,7 +624,7 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
624
624
  "min",
625
625
  "max"
626
626
  ]),
627
- T(A, {
627
+ T(k, {
628
628
  severity: "secondary",
629
629
  variant: "simple",
630
630
  size: "small",
@@ -636,7 +636,7 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
636
636
  ])),
637
637
  b("div", Ut, [
638
638
  b("label", Wt, i(t.$t("views.floorplan.note")), 1),
639
- T(j, {
639
+ T(A, {
640
640
  "model-value": m(E).note,
641
641
  disabled: e.readOnly,
642
642
  maxlength: m(240),
@@ -651,7 +651,7 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
651
651
  "disabled",
652
652
  "maxlength"
653
653
  ]),
654
- T(A, {
654
+ T(k, {
655
655
  severity: "secondary",
656
656
  variant: "simple",
657
657
  size: "small",
@@ -666,22 +666,22 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
666
666
  }, 8, ["pt"])]),
667
667
  _: 1
668
668
  })) : d("", !0),
669
- m(C) ? (r(), u(ye, {
669
+ m(C) ? (r(), u(be, {
670
670
  key: 2,
671
671
  value: "general"
672
672
  }, {
673
- default: g(() => [T(he, { class: "px-4 rounded-none!" }, {
673
+ default: g(() => [T(ge, { class: "px-4 rounded-none!" }, {
674
674
  default: g(() => [b("span", Gt, i(t.$t("views.floorplan.section_sensor")), 1)]),
675
675
  _: 1
676
- }), T(ve, { pt: { content: { class: e.fluid ? "px-4 w-full" : "px-4 w-[300px]" } } }, {
676
+ }), T(ye, { pt: { content: { class: e.fluid ? "px-4 w-full" : "px-4 w-[300px]" } } }, {
677
677
  default: g(() => [b("div", Kt, [
678
- b("div", qt, [b("label", Jt, i(t.$t("views.floorplan.assigned_room")), 1), T(ge, {
678
+ b("div", qt, [b("label", Jt, i(t.$t("views.floorplan.assigned_room")), 1), T(_e, {
679
679
  "model-value": m(C).roomId,
680
680
  options: m(re),
681
681
  disabled: e.readOnly,
682
682
  "option-label": "label",
683
683
  "option-value": "value",
684
- "onUpdate:modelValue": n[9] ||= (e) => e && le({ roomId: e })
684
+ "onUpdate:modelValue": n[9] ||= (e) => e && ue({ roomId: e })
685
685
  }, null, 8, [
686
686
  "model-value",
687
687
  "options",
@@ -689,20 +689,20 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
689
689
  ])]),
690
690
  m(ie).length ? (r(), _("div", Yt, [
691
691
  b("label", Xt, i(t.$t("views.floorplan.sensor_passage")), 1),
692
- T(ge, {
692
+ T(_e, {
693
693
  "model-value": m(C).connectionId,
694
694
  options: m(ie),
695
695
  disabled: e.readOnly,
696
696
  "option-label": "label",
697
697
  "option-value": "value",
698
698
  "show-clear": "",
699
- "onUpdate:modelValue": n[10] ||= (e) => le({ connectionId: e ?? null })
699
+ "onUpdate:modelValue": n[10] ||= (e) => ue({ connectionId: e ?? null })
700
700
  }, null, 8, [
701
701
  "model-value",
702
702
  "options",
703
703
  "disabled"
704
704
  ]),
705
- T(A, {
705
+ T(k, {
706
706
  severity: "secondary",
707
707
  variant: "simple",
708
708
  size: "small",
@@ -714,19 +714,19 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
714
714
  ])) : d("", !0),
715
715
  b("div", Zt, [
716
716
  b("label", $, i(t.$t("views.floorplan.note")), 1),
717
- T(j, {
717
+ T(A, {
718
718
  "model-value": m(C).note,
719
719
  disabled: e.readOnly,
720
720
  maxlength: m(240),
721
721
  rows: "3",
722
722
  "auto-resize": "",
723
- "onUpdate:modelValue": n[11] ||= (e) => le({ note: e ?? "" })
723
+ "onUpdate:modelValue": n[11] ||= (e) => ue({ note: e ?? "" })
724
724
  }, null, 8, [
725
725
  "model-value",
726
726
  "disabled",
727
727
  "maxlength"
728
728
  ]),
729
- T(A, {
729
+ T(k, {
730
730
  severity: "secondary",
731
731
  variant: "simple",
732
732
  size: "small",
@@ -741,26 +741,26 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
741
741
  }, 8, ["pt"])]),
742
742
  _: 1
743
743
  })) : d("", !0),
744
- m(f) ? (r(), _(y, { key: 3 }, [T(ye, { value: "general" }, {
745
- default: g(() => [T(he, { class: "px-4 rounded-none!" }, {
744
+ m(f) ? (r(), _(y, { key: 3 }, [T(be, { value: "general" }, {
745
+ default: g(() => [T(ge, { class: "px-4 rounded-none!" }, {
746
746
  default: g(() => [b("span", Qt, i(t.$t("views.floorplan.section_camera")), 1)]),
747
747
  _: 1
748
- }), T(ve, { pt: { content: { class: e.fluid ? "px-4 w-full" : "px-4 w-[300px]" } } }, {
748
+ }), T(ye, { pt: { content: { class: e.fluid ? "px-4 w-full" : "px-4 w-[300px]" } } }, {
749
749
  default: g(() => [b("div", $t, [b("div", en, [
750
750
  b("label", tn, i(t.$t("views.floorplan.assigned_room")), 1),
751
- T(ge, {
751
+ T(_e, {
752
752
  "model-value": m(f).roomId,
753
753
  options: m(ne),
754
754
  disabled: e.readOnly,
755
755
  "option-label": "label",
756
756
  "option-value": "value",
757
- "onUpdate:modelValue": n[12] ||= (e) => e && de({ roomId: e })
757
+ "onUpdate:modelValue": n[12] ||= (e) => e && fe({ roomId: e })
758
758
  }, null, 8, [
759
759
  "model-value",
760
760
  "options",
761
761
  "disabled"
762
762
  ]),
763
- T(A, {
763
+ T(k, {
764
764
  severity: "secondary",
765
765
  variant: "simple",
766
766
  size: "small",
@@ -771,19 +771,19 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
771
771
  })
772
772
  ]), b("div", nn, [
773
773
  b("label", rn, i(t.$t("views.floorplan.note")), 1),
774
- T(j, {
774
+ T(A, {
775
775
  "model-value": m(f).note,
776
776
  disabled: e.readOnly,
777
777
  maxlength: m(240),
778
778
  rows: "3",
779
779
  "auto-resize": "",
780
- "onUpdate:modelValue": n[13] ||= (e) => de({ note: e ?? "" })
780
+ "onUpdate:modelValue": n[13] ||= (e) => fe({ note: e ?? "" })
781
781
  }, null, 8, [
782
782
  "model-value",
783
783
  "disabled",
784
784
  "maxlength"
785
785
  ]),
786
- T(A, {
786
+ T(k, {
787
787
  severity: "secondary",
788
788
  variant: "simple",
789
789
  size: "small",
@@ -796,33 +796,33 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
796
796
  _: 1
797
797
  }, 8, ["pt"])]),
798
798
  _: 1
799
- }), T(ye, { value: "view" }, {
800
- default: g(() => [T(he, { class: "px-4 rounded-none!" }, {
799
+ }), T(be, { value: "view" }, {
800
+ default: g(() => [T(ge, { class: "px-4 rounded-none!" }, {
801
801
  default: g(() => [b("span", an, i(t.$t("views.floorplan.section_view")), 1)]),
802
802
  _: 1
803
- }), T(ve, { pt: { content: { class: e.fluid ? "px-4 w-full" : "px-4 w-[300px]" } } }, {
803
+ }), T(ye, { pt: { content: { class: e.fluid ? "px-4 w-full" : "px-4 w-[300px]" } } }, {
804
804
  default: g(() => [b("div", on, [
805
- b("div", sn, [b("label", cn, i(t.$t("views.floorplan.direction", { value: m(ce) })), 1), T(M, {
805
+ b("div", sn, [b("label", cn, i(t.$t("views.floorplan.direction", { value: m(ce) })), 1), T(j, {
806
806
  "model-value": m(ce),
807
807
  disabled: e.readOnly,
808
808
  min: 0,
809
809
  max: 359,
810
- "onUpdate:modelValue": n[14] ||= (e) => de({ rotation: Number(e) })
810
+ "onUpdate:modelValue": n[14] ||= (e) => fe({ rotation: Number(e) })
811
811
  }, null, 8, ["model-value", "disabled"])]),
812
- b("div", ln, [b("label", un, i(t.$t("views.floorplan.fov", { value: m(f).fov })), 1), T(M, {
812
+ b("div", ln, [b("label", un, i(t.$t("views.floorplan.fov", { value: m(f).fov })), 1), T(j, {
813
813
  "model-value": m(f).fov,
814
814
  disabled: e.readOnly,
815
815
  min: 30,
816
816
  max: 180,
817
- "onUpdate:modelValue": n[15] ||= (e) => de({ fov: Number(e) })
817
+ "onUpdate:modelValue": n[15] ||= (e) => fe({ fov: Number(e) })
818
818
  }, null, 8, ["model-value", "disabled"])]),
819
- b("div", dn, [b("label", fn, i(t.$t("views.floorplan.range", { value: m(st)(m(f).range).toFixed(1) })), 1), T(M, {
819
+ b("div", dn, [b("label", fn, i(t.$t("views.floorplan.range", { value: m(st)(m(f).range).toFixed(1) })), 1), T(j, {
820
820
  disabled: e.readOnly,
821
821
  "model-value": m(f).range,
822
822
  min: m(K).min,
823
823
  max: m(K).max,
824
824
  step: 50,
825
- "onUpdate:modelValue": n[16] ||= (e) => de({ range: Number(e) })
825
+ "onUpdate:modelValue": n[16] ||= (e) => fe({ range: Number(e) })
826
826
  }, null, 8, [
827
827
  "disabled",
828
828
  "model-value",
@@ -837,12 +837,12 @@ var _t = { class: "h-full flex flex-col overflow-hidden" }, vt = { class: "flex
837
837
  ]),
838
838
  _: 1
839
839
  }, 8, ["value", "class"])]),
840
- e.readOnly ? d("", !0) : (r(), _("div", pn, [T(me, {
840
+ e.readOnly ? d("", !0) : (r(), _("div", pn, [T(he, {
841
841
  severity: "danger",
842
842
  fluid: "",
843
843
  class: "w-full cui-button-medium",
844
844
  label: m(l) ? t.$t("views.floorplan.delete_room") : m(E) ? t.$t("views.floorplan.remove_connection") : m(C) ? t.$t("views.floorplan.remove_sensor") : t.$t("views.floorplan.remove_camera"),
845
- onClick: fe
845
+ onClick: pe
846
846
  }, null, 8, ["label"])]))
847
847
  ]);
848
848
  };
@@ -1022,7 +1022,7 @@ var bn = l({
1022
1022
  width: "46",
1023
1023
  height: "46",
1024
1024
  viewBox: "0 0 46 46"
1025
- }, wr = ["transform"], Tr = { class: "flex flex-col overflow-hidden floorplan-controls" }, Er = { class: "floorplan-scale flex items-center gap-2 px-2 py-1" }, Dr = ["width"], Or = ["d"], kr = { class: "text-xs text-muted whitespace-nowrap" }, Ar = 60, jr = /*#__PURE__*/ O(/* @__PURE__ */ C({
1025
+ }, wr = ["transform"], Tr = { class: "flex flex-col overflow-hidden floorplan-controls" }, Er = { class: "floorplan-scale flex items-center gap-2 px-2 py-1" }, Dr = ["width"], Or = ["d"], kr = { class: "text-xs text-muted whitespace-nowrap" }, Ar = 60, jr = /*#__PURE__*/ ce(/* @__PURE__ */ C({
1026
1026
  __name: "CuiFloorplanCanvas",
1027
1027
  props: {
1028
1028
  mobile: { type: Boolean },
@@ -1060,17 +1060,17 @@ var bn = l({
1060
1060
  let p = a, S = f, ne = te("wrapperRef"), C = w(!1), re = w(!1), ae = te("compassRef"), D = w({
1061
1061
  x: null,
1062
1062
  y: null
1063
- }), oe = w(null), se = w(null), ce = w(null), O = w(null), le = /* @__PURE__ */ new Set(["motion", "audio"]), ue = /* @__PURE__ */ new Set([
1063
+ }), oe = w(null), se = w(null), ce = w(null), le = w(null), ue = /* @__PURE__ */ new Set(["motion", "audio"]), de = /* @__PURE__ */ new Set([
1064
1064
  "object",
1065
1065
  "face",
1066
1066
  "licensePlate",
1067
1067
  "classifier",
1068
1068
  "objectAssist",
1069
1069
  "clip"
1070
- ]), k = null, de = !1, pe = null, { viewport: me, zoomIn: he, zoomOut: ge, fitBounds: _e } = z(), { sensors: j } = Oe(), ve = h(() => p.sensors.filter((e) => e.levelId === p.levelId)), be = h(() => {
1070
+ ]), O = null, pe = !1, me = null, { viewport: he, zoomIn: ge, zoomOut: _e, fitBounds: ve } = z(), { sensors: A } = Oe(), be = h(() => p.sensors.filter((e) => e.levelId === p.levelId)), j = h(() => {
1071
1071
  let e = /* @__PURE__ */ new Map();
1072
- for (let t of j.value) {
1073
- let n = String(t.type), r = le.has(n), i = ue.has(n);
1072
+ for (let t of A.value) {
1073
+ let n = String(t.type), r = ue.has(n), i = de.has(n);
1074
1074
  if (!r && !i || t.getProperty("detected") !== !0) continue;
1075
1075
  let a = Ke(t, n);
1076
1076
  for (let n of t.assignedCameraIds.value) {
@@ -1082,19 +1082,19 @@ var bn = l({
1082
1082
  }
1083
1083
  }
1084
1084
  return e;
1085
- }), M = h(() => {
1086
- let e = F.value.find((e) => e.id === O.value);
1085
+ }), xe = h(() => {
1086
+ let e = F.value.find((e) => e.id === le.value);
1087
1087
  if (!e) return null;
1088
1088
  let t = `${ct(e.width, 1)} x ${ct(e.height, 1)}`;
1089
1089
  return {
1090
1090
  text: t,
1091
1091
  width: st(t),
1092
1092
  x: e.x + e.width / 2,
1093
- y: e.y + e.height + 10 / N.value
1093
+ y: e.y + e.height + 10 / M.value
1094
1094
  };
1095
- }), N = h(() => me.value.zoom), xe = h(() => ({
1096
- x: me.value.x,
1097
- y: me.value.y
1095
+ }), M = h(() => he.value.zoom), N = h(() => ({
1096
+ x: he.value.x,
1097
+ y: he.value.y
1098
1098
  })), Se = h(() => p.north ?? 0), P = h(() => p.readOnly === !0 || C.value), F = h(() => p.rooms.filter((e) => e.levelId === p.levelId)), we = h(() => p.cameras.filter((e) => e.levelId === p.levelId)), I = h(() => {
1099
1099
  let e = 4e3, t = [0], n = [0];
1100
1100
  for (let e of F.value) t.push(e.x, e.x + e.width), n.push(e.y, e.y + e.height);
@@ -1116,7 +1116,7 @@ var bn = l({
1116
1116
  draggable: !1,
1117
1117
  selectable: !1,
1118
1118
  data: {}
1119
- }], L = h(() => p.selection?.kind === "room" ? F.value.find((e) => e.id === p.selection?.id) : void 0), ke = h(() => p.selection?.kind === "camera" ? we.value.find((e) => e.id === p.selection?.id) : void 0), Ae = h(() => N.value >= .45), je = h(() => {
1119
+ }], L = h(() => p.selection?.kind === "room" ? F.value.find((e) => e.id === p.selection?.id) : void 0), ke = h(() => p.selection?.kind === "camera" ? we.value.find((e) => e.id === p.selection?.id) : void 0), Ae = h(() => M.value >= .45), je = h(() => {
1120
1120
  let e = [
1121
1121
  .5,
1122
1122
  1,
@@ -1125,10 +1125,10 @@ var bn = l({
1125
1125
  10,
1126
1126
  20,
1127
1127
  50
1128
- ], t = e.filter((e) => e * 100 * N.value <= 130).pop() ?? e[0];
1128
+ ], t = e.filter((e) => e * 100 * M.value <= 130).pop() ?? e[0];
1129
1129
  return {
1130
1130
  meters: t,
1131
- width: Math.round(t * 100 * N.value),
1131
+ width: Math.round(t * 100 * M.value),
1132
1132
  label: `${t} m`
1133
1133
  };
1134
1134
  }), Me = h(() => p.connections.map((e) => ({
@@ -1154,7 +1154,7 @@ var bn = l({
1154
1154
  }), Fe = h(() => [...R.value].map(([e, t]) => ({
1155
1155
  roomId: e,
1156
1156
  parts: t,
1157
- ...pt(t, 8 / N.value, Pe.value.get(e) ?? []),
1157
+ ...pt(t, 8 / M.value, Pe.value.get(e) ?? []),
1158
1158
  outdoor: t.every((e) => e.outdoor),
1159
1159
  publicSpace: t.every((e) => e.publicSpace),
1160
1160
  selected: t.some((e) => J("room", e.id))
@@ -1177,7 +1177,7 @@ var bn = l({
1177
1177
  r.set(i, [...r.get(i) ?? [], ...n]);
1178
1178
  }
1179
1179
  let i = /* @__PURE__ */ new Map();
1180
- for (let [e, t] of r) i.set(e, pt(t, 8 / N.value, []).fill);
1180
+ for (let [e, t] of r) i.set(e, pt(t, 8 / M.value, []).fill);
1181
1181
  return [...R.value.keys()].map((e) => ({
1182
1182
  roomId: e,
1183
1183
  path: i.get(t(e)) ?? ""
@@ -1235,15 +1235,15 @@ var bn = l({
1235
1235
  }), Be = h(() => {
1236
1236
  let e = [], t = /* @__PURE__ */ new Map(), n = (n, r, i, a) => {
1237
1237
  let o = F.value.find((e) => e.id === r) ?? F.value.find((e) => e.roomId === n);
1238
- if (!o || o.width * N.value < 80 || o.height * N.value < 60) return;
1238
+ if (!o || o.width * M.value < 80 || o.height * M.value < 60) return;
1239
1239
  let s = t.get(o.id) ?? 0;
1240
1240
  t.set(o.id, s + 1), e.push({
1241
1241
  key: i ?? `stairs-${n}`,
1242
1242
  roomId: n,
1243
1243
  connectionId: i,
1244
1244
  direction: a,
1245
- x: o.x + o.width - (16 + s * 30) / N.value,
1246
- y: o.y + 16 / N.value
1245
+ x: o.x + o.width - (16 + s * 30) / M.value,
1246
+ y: o.y + 16 / M.value
1247
1247
  });
1248
1248
  };
1249
1249
  for (let e of Me.value) e.geometry.kind === "badge" && n(e.geometry.roomId, e.geometry.shapeId, e.connection.id, G(e.connection, e.geometry.roomId));
@@ -1259,12 +1259,12 @@ var bn = l({
1259
1259
  }), Ue = h(() => {
1260
1260
  let e = ne.value?.getBoundingClientRect(), t = e?.width ?? 0, n = e?.height ?? 0;
1261
1261
  return {
1262
- left: -xe.value.x / N.value,
1263
- top: -xe.value.y / N.value,
1264
- right: (t - xe.value.x) / N.value,
1265
- bottom: (n - xe.value.y) / N.value
1262
+ left: -N.value.x / M.value,
1263
+ top: -N.value.y / M.value,
1264
+ right: (t - N.value.x) / M.value,
1265
+ bottom: (n - N.value.y) / M.value
1266
1266
  };
1267
- }), Ge = h(() => new Set(we.value.filter((e) => be.value.has(e.id)).map((e) => e.roomId)));
1267
+ }), Ge = h(() => new Set(we.value.filter((e) => j.value.has(e.id)).map((e) => e.roomId)));
1268
1268
  function Ke(e, t) {
1269
1269
  switch (t) {
1270
1270
  case "object":
@@ -1282,15 +1282,15 @@ var bn = l({
1282
1282
  }
1283
1283
  }
1284
1284
  function qe(e) {
1285
- return be.value.get(e)?.level;
1285
+ return j.value.get(e)?.level;
1286
1286
  }
1287
1287
  function Je(e) {
1288
- return be.value.get(e.id)?.labels ?? [];
1288
+ return j.value.get(e.id)?.labels ?? [];
1289
1289
  }
1290
1290
  function Ye(e) {
1291
- let t = (8 + Je(e).length * 17) / N.value;
1291
+ let t = (8 + Je(e).length * 17) / M.value;
1292
1292
  return {
1293
- width: t + st(e.name) - 10 / N.value,
1293
+ width: t + st(e.name) - 10 / M.value,
1294
1294
  textOffset: t
1295
1295
  };
1296
1296
  }
@@ -1305,13 +1305,13 @@ var bn = l({
1305
1305
  ce.value = null, S("hover-sensor", null);
1306
1306
  }
1307
1307
  function W(e) {
1308
- return j.value.find((t) => t.id === e);
1308
+ return A.value.find((t) => t.id === e);
1309
1309
  }
1310
1310
  function Ze(e) {
1311
1311
  return ye(e.sensorType, Ee(W(e.id)));
1312
1312
  }
1313
1313
  function Qe(e) {
1314
- let t = A(W(e.id));
1314
+ let t = k(W(e.id));
1315
1315
  return t ? `${e.name} · ${t}` : e.name;
1316
1316
  }
1317
1317
  function G(e, t) {
@@ -1332,7 +1332,7 @@ var bn = l({
1332
1332
  return t ? [t] : [];
1333
1333
  }
1334
1334
  function tt(e) {
1335
- let t = e.width >= e.height, n = t ? e.width : e.height, r = t ? e.height : e.width, i = 9 / N.value, a = Math.max(Math.min(15, r * .3), i);
1335
+ let t = e.width >= e.height, n = t ? e.width : e.height, r = t ? e.height : e.width, i = 9 / M.value, a = Math.max(Math.min(15, r * .3), i);
1336
1336
  if (a > r) return null;
1337
1337
  let o = n - a, s = a * rt, c = e.name;
1338
1338
  if (s * c.length > o) {
@@ -1359,10 +1359,10 @@ var bn = l({
1359
1359
  oe.value = null, S("hover-camera", null);
1360
1360
  }
1361
1361
  function st(e) {
1362
- return (e.length * 7 + 20) / N.value;
1362
+ return (e.length * 7 + 20) / M.value;
1363
1363
  }
1364
1364
  function lt(e, t) {
1365
- let n = 4 / N.value;
1365
+ let n = 4 / M.value;
1366
1366
  return `M ${e - n * 2} ${t + n * 1.5} L ${e - n} ${t + n * 1.5} L ${e - n} ${t} L ${e + n} ${t} L ${e + n} ${t - n * 1.5} L ${e + n * 2} ${t - n * 1.5}`;
1367
1367
  }
1368
1368
  function mt(e) {
@@ -1378,8 +1378,8 @@ var bn = l({
1378
1378
  function gt(e) {
1379
1379
  let t = ne.value?.getBoundingClientRect();
1380
1380
  return t ? {
1381
- x: (e.clientX - t.left - xe.value.x) / N.value,
1382
- y: (e.clientY - t.top - xe.value.y) / N.value
1381
+ x: (e.clientX - t.left - N.value.x) / M.value,
1382
+ y: (e.clientY - t.top - N.value.y) / M.value
1383
1383
  } : {
1384
1384
  x: 0,
1385
1385
  y: 0
@@ -1392,7 +1392,7 @@ var bn = l({
1392
1392
  return F.value.some((n) => n.id !== t && e.x < n.x + n.width && e.x + e.width > n.x && e.y < n.y + n.height && e.y + e.height > n.y);
1393
1393
  }
1394
1394
  function _t(e, t, n) {
1395
- let r = 10 / N.value, i = n === "end" ? [e.x + e.width] : [e.x, e.x + e.width], a = n === "end" ? [e.y + e.height] : [e.y, e.y + e.height], o, s;
1395
+ let r = 10 / M.value, i = n === "end" ? [e.x + e.width] : [e.x, e.x + e.width], a = n === "end" ? [e.y + e.height] : [e.y, e.y + e.height], o, s;
1396
1396
  for (let e of F.value) if (e.id !== t) {
1397
1397
  for (let t of i) for (let n of [e.x, e.x + e.width]) {
1398
1398
  let e = n - t;
@@ -1457,7 +1457,7 @@ var bn = l({
1457
1457
  }), P.value) return;
1458
1458
  e.stopPropagation();
1459
1459
  let n = gt(e);
1460
- k = {
1460
+ O = {
1461
1461
  mode: "room",
1462
1462
  id: t.id,
1463
1463
  offsetX: n.x - t.x,
@@ -1468,7 +1468,7 @@ var bn = l({
1468
1468
  S("select", {
1469
1469
  kind: "room",
1470
1470
  id: t.id
1471
- }), !P.value && (e.stopPropagation(), O.value = t.id, k = {
1471
+ }), !P.value && (e.stopPropagation(), le.value = t.id, O = {
1472
1472
  mode: "resize",
1473
1473
  id: t.id,
1474
1474
  originX: t.x,
@@ -1482,7 +1482,7 @@ var bn = l({
1482
1482
  }), P.value) return;
1483
1483
  e.stopPropagation();
1484
1484
  let n = gt(e);
1485
- k = {
1485
+ O = {
1486
1486
  mode: "camera",
1487
1487
  id: t.id,
1488
1488
  offsetX: n.x - t.x,
@@ -1493,28 +1493,28 @@ var bn = l({
1493
1493
  S("select", {
1494
1494
  kind: "camera",
1495
1495
  id: t.id
1496
- }), !P.value && (e.stopPropagation(), k = {
1496
+ }), !P.value && (e.stopPropagation(), O = {
1497
1497
  mode: "rotate",
1498
1498
  id: t.id
1499
1499
  }, Z(e));
1500
1500
  }
1501
1501
  function Et(e) {
1502
- if (!k) return;
1503
- if (k.mode === "north") {
1502
+ if (!O) return;
1503
+ if (O.mode === "north") {
1504
1504
  let t = ae.value?.getBoundingClientRect();
1505
1505
  if (!t) return;
1506
1506
  let n = Math.atan2(e.clientY - (t.top + t.height / 2), e.clientX - (t.left + t.width / 2)) * 180 / Math.PI;
1507
1507
  S("update-north", Math.round((n + 450) % 360));
1508
1508
  return;
1509
1509
  }
1510
- de || (de = !0, S("history"));
1510
+ pe || (pe = !0, S("history"));
1511
1511
  let t = gt(e);
1512
- if (k.mode === "room") {
1513
- let e = k.id, n = F.value.find((t) => t.id === e);
1512
+ if (O.mode === "room") {
1513
+ let e = O.id, n = F.value.find((t) => t.id === e);
1514
1514
  if (!n) return;
1515
1515
  let r = _t({
1516
- x: Y(t.x - k.offsetX),
1517
- y: Y(t.y - k.offsetY),
1516
+ x: Y(t.x - O.offsetX),
1517
+ y: Y(t.y - O.offsetY),
1518
1518
  width: n.width,
1519
1519
  height: n.height
1520
1520
  }, n.id, "both"), i = X(n, n.id) ? {
@@ -1528,14 +1528,14 @@ var bn = l({
1528
1528
  });
1529
1529
  return;
1530
1530
  }
1531
- if (k.mode === "resize") {
1532
- let e = k.id, n = F.value.find((t) => t.id === e);
1531
+ if (O.mode === "resize") {
1532
+ let e = O.id, n = F.value.find((t) => t.id === e);
1533
1533
  if (!n) return;
1534
1534
  let r = _t({
1535
1535
  x: n.x,
1536
1536
  y: n.y,
1537
- width: Math.max(60, Y(t.x - k.originX)),
1538
- height: Math.max(60, Y(t.y - k.originY))
1537
+ width: Math.max(60, Y(t.x - O.originX)),
1538
+ height: Math.max(60, Y(t.y - O.originY))
1539
1539
  }, n.id, "end"), i = X({
1540
1540
  ...r,
1541
1541
  height: n.height
@@ -1550,8 +1550,8 @@ var bn = l({
1550
1550
  });
1551
1551
  return;
1552
1552
  }
1553
- if (k.mode === "passage") {
1554
- let e = k, n = p.connections.find((t) => t.id === e.id);
1553
+ if (O.mode === "passage") {
1554
+ let e = O, n = p.connections.find((t) => t.id === e.id);
1555
1555
  if (!n) return;
1556
1556
  let r = dt(e.wall, n.offset, n.width), i = Nt(e.wall, {
1557
1557
  x: (r.x1 + r.x2) / 2,
@@ -1563,8 +1563,8 @@ var bn = l({
1563
1563
  }), e.grab = a;
1564
1564
  return;
1565
1565
  }
1566
- if (k.mode === "passage-resize") {
1567
- let e = k, n = p.connections.find((t) => t.id === e.id);
1566
+ if (O.mode === "passage-resize") {
1567
+ let e = O, n = p.connections.find((t) => t.id === e.id);
1568
1568
  if (!n) return;
1569
1569
  let r = dt(e.wall, n.offset, n.width), i = Nt(e.wall, e.end === 0 ? {
1570
1570
  x: r.x2,
@@ -1580,23 +1580,23 @@ var bn = l({
1580
1580
  });
1581
1581
  return;
1582
1582
  }
1583
- if (k.mode === "sensor") {
1584
- let e = k.id, n = yt(ve.value.find((t) => t.id === e)?.roomId ?? "", Y(t.x - k.offsetX), Y(t.y - k.offsetY));
1583
+ if (O.mode === "sensor") {
1584
+ let e = O.id, n = yt(be.value.find((t) => t.id === e)?.roomId ?? "", Y(t.x - O.offsetX), Y(t.y - O.offsetY));
1585
1585
  S("move-sensor", {
1586
1586
  id: e,
1587
1587
  ...n
1588
1588
  });
1589
1589
  return;
1590
1590
  }
1591
- if (k.mode === "camera") {
1592
- let e = k.id, n = yt(we.value.find((t) => t.id === e)?.roomId ?? "", Y(t.x - k.offsetX), Y(t.y - k.offsetY));
1591
+ if (O.mode === "camera") {
1592
+ let e = O.id, n = yt(we.value.find((t) => t.id === e)?.roomId ?? "", Y(t.x - O.offsetX), Y(t.y - O.offsetY));
1593
1593
  S("move-camera", {
1594
1594
  id: e,
1595
1595
  ...n
1596
1596
  });
1597
1597
  return;
1598
1598
  }
1599
- let n = k.id, r = we.value.find((e) => e.id === n);
1599
+ let n = O.id, r = we.value.find((e) => e.id === n);
1600
1600
  if (!r) return;
1601
1601
  let i = t.x - r.x, a = t.y - r.y;
1602
1602
  S("rotate-camera", {
@@ -1622,7 +1622,7 @@ var bn = l({
1622
1622
  };
1623
1623
  }
1624
1624
  function Ot(e) {
1625
- P.value || (e.stopPropagation(), S("history"), k = { mode: "north" }, ae.value?.setPointerCapture?.(e.pointerId));
1625
+ P.value || (e.stopPropagation(), S("history"), O = { mode: "north" }, ae.value?.setPointerCapture?.(e.pointerId));
1626
1626
  }
1627
1627
  function kt(e) {
1628
1628
  let t = e.dataTransfer?.getData(ot);
@@ -1631,8 +1631,8 @@ var bn = l({
1631
1631
  let n = JSON.parse(t), r = ne.value?.getBoundingClientRect();
1632
1632
  r && S("drop", {
1633
1633
  ...n,
1634
- x: Y((e.clientX - r.left - xe.value.x) / N.value),
1635
- y: Y((e.clientY - r.top - xe.value.y) / N.value)
1634
+ x: Y((e.clientX - r.left - N.value.x) / M.value),
1635
+ y: Y((e.clientY - r.top - N.value.y) / M.value)
1636
1636
  });
1637
1637
  }
1638
1638
  function At(e, t) {
@@ -1642,7 +1642,7 @@ var bn = l({
1642
1642
  }), P.value) return;
1643
1643
  e.stopPropagation();
1644
1644
  let n = gt(e);
1645
- k = {
1645
+ O = {
1646
1646
  mode: "sensor",
1647
1647
  id: t.id,
1648
1648
  offsetX: n.x - t.x,
@@ -1653,7 +1653,7 @@ var bn = l({
1653
1653
  Pt(e, {
1654
1654
  kind: "connection",
1655
1655
  id: t.id
1656
- }), !P.value && (e.stopPropagation(), k = {
1656
+ }), !P.value && (e.stopPropagation(), O = {
1657
1657
  mode: "passage",
1658
1658
  id: t.id,
1659
1659
  wall: t.wall,
@@ -1661,7 +1661,7 @@ var bn = l({
1661
1661
  }, Z(e));
1662
1662
  }
1663
1663
  function Mt(e, t, n) {
1664
- P.value || (e.stopPropagation(), k = {
1664
+ P.value || (e.stopPropagation(), O = {
1665
1665
  mode: "passage-resize",
1666
1666
  id: t.id,
1667
1667
  wall: t.wall,
@@ -1672,14 +1672,14 @@ var bn = l({
1672
1672
  return (t.x - e.x) * e.stepX + (t.y - e.y) * e.stepY;
1673
1673
  }
1674
1674
  function Pt(e, t) {
1675
- pe = {
1675
+ me = {
1676
1676
  target: t,
1677
1677
  x: e.clientX,
1678
1678
  y: e.clientY
1679
1679
  };
1680
1680
  }
1681
1681
  function Ft(e) {
1682
- O.value = null, pe &&= (e && Math.abs(e.clientX - pe.x) < 4 && Math.abs(e.clientY - pe.y) < 4 && S("select", pe.target), null), k?.mode === "room" && de && S("settle-room", k.id), k = null, de = !1, D.value = {
1682
+ le.value = null, me &&= (e && Math.abs(e.clientX - me.x) < 4 && Math.abs(e.clientY - me.y) < 4 && S("select", me.target), null), O?.mode === "room" && pe && S("settle-room", O.id), O = null, pe = !1, D.value = {
1683
1683
  x: null,
1684
1684
  y: null
1685
1685
  };
@@ -1690,7 +1690,7 @@ var bn = l({
1690
1690
  for (let n of we.value) e.push(n.x - Ar, n.x + Ar), t.push(n.y - Ar, n.y + Ar);
1691
1691
  if (!e.length) return;
1692
1692
  let n = Math.min(...e), r = Math.min(...t);
1693
- _e({
1693
+ ve({
1694
1694
  x: n,
1695
1695
  y: r,
1696
1696
  width: Math.max(Math.max(...e) - n, 1),
@@ -1739,21 +1739,21 @@ var bn = l({
1739
1739
  }, [b("defs", null, [
1740
1740
  b("pattern", {
1741
1741
  id: "floorplan-public",
1742
- width: 14 / m(N),
1743
- height: 14 / m(N),
1742
+ width: 14 / m(M),
1743
+ height: 14 / m(M),
1744
1744
  patternUnits: "userSpaceOnUse",
1745
1745
  patternTransform: "rotate(45)"
1746
1746
  }, [b("rect", {
1747
- width: 14 / m(N),
1748
- height: 14 / m(N),
1747
+ width: 14 / m(M),
1748
+ height: 14 / m(M),
1749
1749
  class: "public-base"
1750
1750
  }, null, 8, Sn), b("line", {
1751
1751
  x1: "0",
1752
1752
  y1: "0",
1753
1753
  x2: "0",
1754
- y2: 14 / m(N),
1754
+ y2: 14 / m(M),
1755
1755
  class: "public-hatch",
1756
- "stroke-width": 1.5 / m(N)
1756
+ "stroke-width": 1.5 / m(M)
1757
1757
  }, null, 8, Cn)], 8, xn),
1758
1758
  (r(!0), _(y, null, n(m(Ie), (e) => (r(), _("clipPath", {
1759
1759
  id: `floorplan-sight-${e.roomId}`,
@@ -1761,17 +1761,17 @@ var bn = l({
1761
1761
  }, [b("path", { d: e.path }, null, 8, Tn)], 8, wn))), 128)),
1762
1762
  b("pattern", {
1763
1763
  id: "floorplan-gaps-hatch",
1764
- width: 10 / m(N),
1765
- height: 10 / m(N),
1764
+ width: 10 / m(M),
1765
+ height: 10 / m(M),
1766
1766
  patternUnits: "userSpaceOnUse",
1767
1767
  patternTransform: "rotate(-45)"
1768
1768
  }, [b("line", {
1769
1769
  x1: "0",
1770
1770
  y1: "0",
1771
1771
  x2: "0",
1772
- y2: 10 / m(N),
1772
+ y2: 10 / m(M),
1773
1773
  class: "gaps-hatch",
1774
- "stroke-width": 1.5 / m(N)
1774
+ "stroke-width": 1.5 / m(M)
1775
1775
  }, null, 8, Dn)], 8, En),
1776
1776
  m(re) ? (r(), _("mask", {
1777
1777
  key: 0,
@@ -1808,7 +1808,7 @@ var bn = l({
1808
1808
  "room-selected": e.selected,
1809
1809
  "room-public-wall": e.publicSpace
1810
1810
  }]),
1811
- "stroke-width": (e.selected ? 2.5 : 1.5) / m(N)
1811
+ "stroke-width": (e.selected ? 2.5 : 1.5) / m(M)
1812
1812
  }, null, 10, Pn)]))), 128)),
1813
1813
  (r(!0), _(y, null, n(m(Ie), (e) => (r(), _("g", {
1814
1814
  key: `sight-${e.roomId}`,
@@ -1854,20 +1854,20 @@ var bn = l({
1854
1854
  b("path", {
1855
1855
  d: e.line,
1856
1856
  class: "connection-hit",
1857
- "stroke-width": 24 / m(N)
1857
+ "stroke-width": 24 / m(M)
1858
1858
  }, null, 8, Vn),
1859
1859
  b("path", {
1860
1860
  d: e.line,
1861
1861
  class: s(["connection", [`connection-${e.type}`, { "connection-selected": J("connection", e.id) }]]),
1862
- "stroke-width": 7 / m(N)
1862
+ "stroke-width": 7 / m(M)
1863
1863
  }, null, 10, Hn),
1864
1864
  (r(!0), _(y, null, n(J("connection", e.id) && !m(P) ? e.handles : [], (t, n) => (r(), _("circle", {
1865
1865
  key: n,
1866
1866
  cx: t.x,
1867
1867
  cy: t.y,
1868
- r: 7 / m(N),
1868
+ r: 7 / m(M),
1869
1869
  class: "passage-handle nopan",
1870
- "stroke-width": 2 / m(N),
1870
+ "stroke-width": 2 / m(M),
1871
1871
  onPointerdown: (t) => Mt(t, e, n)
1872
1872
  }, null, 40, Un))), 128))
1873
1873
  ], 42, Bn))), 128)),
@@ -1875,7 +1875,7 @@ var bn = l({
1875
1875
  key: 0,
1876
1876
  d: `M ${e.geometry.x1} ${e.geometry.y1} L ${e.geometry.x2} ${e.geometry.y2}`,
1877
1877
  class: s(["connection connection-stairs", { "connection-selected": J("connection", e.connection.id) }]),
1878
- "stroke-width": 2 / m(N),
1878
+ "stroke-width": 2 / m(M),
1879
1879
  onPointerdown: (t) => xt(t, e.connection.id)
1880
1880
  }, null, 42, Wn)) : d("", !0)], 64))), 128)),
1881
1881
  (r(!0), _(y, null, n(m(we), (e) => (r(), _("g", {
@@ -1888,30 +1888,30 @@ var bn = l({
1888
1888
  b("circle", {
1889
1889
  cx: e.x,
1890
1890
  cy: e.y,
1891
- r: 13 / m(N),
1891
+ r: 13 / m(M),
1892
1892
  class: s(["camera-body", [`camera-${qe(e.id) ?? "idle"}`, { "camera-selected": J("camera", e.id) }]]),
1893
- "stroke-width": 2 / m(N)
1893
+ "stroke-width": 2 / m(M)
1894
1894
  }, null, 10, Kn),
1895
1895
  b("circle", {
1896
1896
  cx: e.x,
1897
1897
  cy: e.y,
1898
- r: 4 / m(N),
1898
+ r: 4 / m(M),
1899
1899
  class: "camera-lens"
1900
1900
  }, null, 8, qn),
1901
- m(oe) === e.id || J("camera", e.id) || m(be).has(e.id) ? (r(), _("g", Jn, [
1901
+ m(oe) === e.id || J("camera", e.id) || m(j).has(e.id) ? (r(), _("g", Jn, [
1902
1902
  b("rect", {
1903
1903
  x: e.x - Ye(e).width / 2,
1904
- y: e.y - 42 / m(N),
1904
+ y: e.y - 42 / m(M),
1905
1905
  width: Ye(e).width,
1906
- height: 20 / m(N),
1907
- rx: 10 / m(N)
1906
+ height: 20 / m(M),
1907
+ rx: 10 / m(M)
1908
1908
  }, null, 8, Yn),
1909
1909
  (r(!0), _(y, null, n(Je(e), (t, n) => (r(), _("foreignObject", {
1910
1910
  key: t,
1911
- x: e.x - Ye(e).width / 2 + (8 + n * 17) / m(N),
1912
- y: e.y - 39.5 / m(N),
1913
- width: 15 / m(N),
1914
- height: 15 / m(N),
1911
+ x: e.x - Ye(e).width / 2 + (8 + n * 17) / m(M),
1912
+ y: e.y - 39.5 / m(M),
1913
+ width: 15 / m(M),
1914
+ height: 15 / m(M),
1915
1915
  class: "chip-glyph"
1916
1916
  }, [(r(), u(c(m(Te)(t).icon), {
1917
1917
  width: "100%",
@@ -1919,17 +1919,17 @@ var bn = l({
1919
1919
  }))], 8, Xn))), 128)),
1920
1920
  b("text", {
1921
1921
  x: e.x - Ye(e).width / 2 + Ye(e).textOffset,
1922
- y: e.y - 28 / m(N),
1923
- "font-size": 12 / m(N)
1922
+ y: e.y - 28 / m(M),
1923
+ "font-size": 12 / m(M)
1924
1924
  }, i(e.name), 9, Zn)
1925
1925
  ])) : d("", !0)
1926
1926
  ], 42, Gn))), 128)),
1927
1927
  (r(!0), _(y, null, n(m(Ae) ? m(Re) : [], (t) => (r(), _("g", { key: t.roomId }, [b("circle", {
1928
1928
  cx: t.x,
1929
1929
  cy: t.y,
1930
- r: 11 / m(N),
1930
+ r: 11 / m(M),
1931
1931
  class: "connection-ghost nopan",
1932
- "stroke-width": 1.5 / m(N),
1932
+ "stroke-width": 1.5 / m(M),
1933
1933
  onPointerdown: e((e) => S("create-connection", {
1934
1934
  fromRoomId: t.fromRoomId,
1935
1935
  toRoomId: t.roomId,
@@ -1937,11 +1937,11 @@ var bn = l({
1937
1937
  toShapeId: t.shapeId
1938
1938
  }), ["stop"])
1939
1939
  }, null, 40, Qn), b("path", {
1940
- d: `M ${t.x - 5 / m(N)} ${t.y} L ${t.x + 5 / m(N)} ${t.y} M ${t.x} ${t.y - 5 / m(N)} L ${t.x} ${t.y + 5 / m(N)}`,
1940
+ d: `M ${t.x - 5 / m(M)} ${t.y} L ${t.x + 5 / m(M)} ${t.y} M ${t.x} ${t.y - 5 / m(M)} L ${t.x} ${t.y + 5 / m(M)}`,
1941
1941
  class: "connection-ghost-plus",
1942
- "stroke-width": 1.5 / m(N)
1942
+ "stroke-width": 1.5 / m(M)
1943
1943
  }, null, 8, $n)]))), 128)),
1944
- (r(!0), _(y, null, n(m(ve), (e) => (r(), _("g", {
1944
+ (r(!0), _(y, null, n(m(be), (e) => (r(), _("g", {
1945
1945
  key: `sensor-${e.id}`,
1946
1946
  class: s({ nopan: !m(P) }),
1947
1947
  onPointerdown: (t) => At(t, e),
@@ -1951,15 +1951,15 @@ var bn = l({
1951
1951
  b("circle", {
1952
1952
  cx: e.x,
1953
1953
  cy: e.y,
1954
- r: 11 / m(N),
1954
+ r: 11 / m(M),
1955
1955
  class: s(["sensor-body", { "sensor-selected": J("sensor", e.id) }]),
1956
- "stroke-width": 2 / m(N)
1956
+ "stroke-width": 2 / m(M)
1957
1957
  }, null, 10, tr),
1958
1958
  (r(), _("foreignObject", {
1959
- x: e.x - 7 / m(N),
1960
- y: e.y - 7 / m(N),
1961
- width: 14 / m(N),
1962
- height: 14 / m(N),
1959
+ x: e.x - 7 / m(M),
1960
+ y: e.y - 7 / m(M),
1961
+ width: 14 / m(M),
1962
+ height: 14 / m(M),
1963
1963
  class: "sensor-glyph"
1964
1964
  }, [(r(), u(c(m(fe)(e.sensorType, W(e.id))), {
1965
1965
  width: "100%",
@@ -1968,15 +1968,15 @@ var bn = l({
1968
1968
  }, null, 8, ["style"]))], 8, nr)),
1969
1969
  m(ce) === e.id || J("sensor", e.id) ? (r(), _("g", rr, [b("rect", {
1970
1970
  x: e.x - st(Qe(e)) / 2,
1971
- y: e.y - 42 / m(N),
1971
+ y: e.y - 42 / m(M),
1972
1972
  width: st(Qe(e)),
1973
- height: 20 / m(N),
1974
- rx: 10 / m(N)
1973
+ height: 20 / m(M),
1974
+ rx: 10 / m(M)
1975
1975
  }, null, 8, ir), b("text", {
1976
1976
  x: e.x,
1977
- y: e.y - 28 / m(N),
1977
+ y: e.y - 28 / m(M),
1978
1978
  "text-anchor": "middle",
1979
- "font-size": 12 / m(N)
1979
+ "font-size": 12 / m(M)
1980
1980
  }, i(Qe(e)), 9, ar)])) : d("", !0)
1981
1981
  ], 42, er))), 128)),
1982
1982
  (r(!0), _(y, null, n(m(ze), (e) => (r(), _("g", {
@@ -1988,27 +1988,27 @@ var bn = l({
1988
1988
  b("circle", {
1989
1989
  cx: e.x,
1990
1990
  cy: e.y,
1991
- r: 11 / m(N),
1991
+ r: 11 / m(M),
1992
1992
  class: "flight-camera-body",
1993
- "stroke-width": 1.5 / m(N)
1993
+ "stroke-width": 1.5 / m(M)
1994
1994
  }, null, 8, sr),
1995
1995
  b("circle", {
1996
1996
  cx: e.x,
1997
1997
  cy: e.y,
1998
- r: 3.5 / m(N),
1998
+ r: 3.5 / m(M),
1999
1999
  class: "flight-camera-lens"
2000
2000
  }, null, 8, cr),
2001
2001
  m(se) === e.key ? (r(), _("g", lr, [b("rect", {
2002
2002
  x: e.x - st(e.label) / 2,
2003
- y: e.y - 42 / m(N),
2003
+ y: e.y - 42 / m(M),
2004
2004
  width: st(e.label),
2005
- height: 20 / m(N),
2006
- rx: 10 / m(N)
2005
+ height: 20 / m(M),
2006
+ rx: 10 / m(M)
2007
2007
  }, null, 8, ur), b("text", {
2008
2008
  x: e.x,
2009
- y: e.y - 28 / m(N),
2009
+ y: e.y - 28 / m(M),
2010
2010
  "text-anchor": "middle",
2011
- "font-size": 12 / m(N)
2011
+ "font-size": 12 / m(M)
2012
2012
  }, i(e.label), 9, dr)])) : d("", !0)
2013
2013
  ], 40, or))), 128)),
2014
2014
  (r(!0), _(y, null, n(m(Be), (e) => (r(), _("g", {
@@ -2019,67 +2019,67 @@ var bn = l({
2019
2019
  b("circle", {
2020
2020
  cx: e.x,
2021
2021
  cy: e.y,
2022
- r: 12 / m(N),
2022
+ r: 12 / m(M),
2023
2023
  class: s([e.connectionId ? "connection-badge" : "connection-ghost", { "connection-selected": e.connectionId && J("connection", e.connectionId) }]),
2024
- "stroke-width": (e.connectionId ? 2 : 1.5) / m(N)
2024
+ "stroke-width": (e.connectionId ? 2 : 1.5) / m(M)
2025
2025
  }, null, 10, pr),
2026
2026
  b("path", {
2027
2027
  d: lt(e.x, e.y),
2028
2028
  class: "badge-glyph",
2029
- "stroke-width": 1.5 / m(N),
2029
+ "stroke-width": 1.5 / m(M),
2030
2030
  fill: "none",
2031
2031
  "stroke-linejoin": "round"
2032
2032
  }, null, 8, mr),
2033
2033
  e.direction ? (r(), _("text", {
2034
2034
  key: 0,
2035
- x: e.x + 13 / m(N),
2036
- y: e.y - 7 / m(N),
2035
+ x: e.x + 13 / m(M),
2036
+ y: e.y - 7 / m(M),
2037
2037
  class: "badge-direction",
2038
- "font-size": 12 / m(N)
2038
+ "font-size": 12 / m(M)
2039
2039
  }, i(e.direction), 9, hr)) : d("", !0),
2040
- m(M) ? (r(), _("g", gr, [b("rect", {
2041
- x: m(M).x - m(M).width / 2,
2042
- y: m(M).y,
2043
- width: m(M).width,
2044
- height: 20 / m(N),
2045
- rx: 10 / m(N)
2040
+ m(xe) ? (r(), _("g", gr, [b("rect", {
2041
+ x: m(xe).x - m(xe).width / 2,
2042
+ y: m(xe).y,
2043
+ width: m(xe).width,
2044
+ height: 20 / m(M),
2045
+ rx: 10 / m(M)
2046
2046
  }, null, 8, _r), b("text", {
2047
- x: m(M).x,
2048
- y: m(M).y + 14 / m(N),
2047
+ x: m(xe).x,
2048
+ y: m(xe).y + 14 / m(M),
2049
2049
  "text-anchor": "middle",
2050
- "font-size": 12 / m(N)
2051
- }, i(m(M).text), 9, vr)])) : d("", !0)
2050
+ "font-size": 12 / m(M)
2051
+ }, i(m(xe).text), 9, vr)])) : d("", !0)
2052
2052
  ], 42, fr))), 128)),
2053
2053
  m(D).x === null ? d("", !0) : (r(), _("path", {
2054
2054
  key: 1,
2055
2055
  d: `M ${m(D).x} ${m(Ue).top} L ${m(D).x} ${m(Ue).bottom}`,
2056
2056
  class: "guide",
2057
- "stroke-width": 1 / m(N)
2057
+ "stroke-width": 1 / m(M)
2058
2058
  }, null, 8, yr)),
2059
2059
  m(D).y === null ? d("", !0) : (r(), _("path", {
2060
2060
  key: 2,
2061
2061
  d: `M ${m(Ue).left} ${m(D).y} L ${m(Ue).right} ${m(D).y}`,
2062
2062
  class: "guide",
2063
- "stroke-width": 1 / m(N)
2063
+ "stroke-width": 1 / m(M)
2064
2064
  }, null, 8, br)),
2065
2065
  m(L) && !m(P) ? (r(), _("rect", {
2066
2066
  key: 3,
2067
- x: m(L).x + m(L).width - 7 / m(N),
2068
- y: m(L).y + m(L).height - 7 / m(N),
2069
- width: 14 / m(N),
2070
- height: 14 / m(N),
2071
- rx: 3 / m(N),
2067
+ x: m(L).x + m(L).width - 7 / m(M),
2068
+ y: m(L).y + m(L).height - 7 / m(M),
2069
+ width: 14 / m(M),
2070
+ height: 14 / m(M),
2071
+ rx: 3 / m(M),
2072
2072
  class: "handle nopan",
2073
- "stroke-width": 1.5 / m(N),
2073
+ "stroke-width": 1.5 / m(M),
2074
2074
  onPointerdown: o[1] ||= (e) => Ct(e, m(L))
2075
2075
  }, null, 40, xr)) : d("", !0),
2076
2076
  m(ke) && !m(P) ? (r(), _("circle", {
2077
2077
  key: 4,
2078
2078
  cx: m(ke).x + Math.cos(mt(m(ke).rotation)) * m(ke).range,
2079
2079
  cy: m(ke).y + Math.sin(mt(m(ke).rotation)) * m(ke).range,
2080
- r: 9 / m(N),
2080
+ r: 9 / m(M),
2081
2081
  class: "handle nopan",
2082
- "stroke-width": 1.5 / m(N),
2082
+ "stroke-width": 1.5 / m(M),
2083
2083
  onPointerdown: o[2] ||= (e) => Tt(e, m(ke))
2084
2084
  }, null, 40, Sr)) : d("", !0)
2085
2085
  ], 8, Mn)], 4))]),
@@ -2127,7 +2127,7 @@ var bn = l({
2127
2127
  type: "button",
2128
2128
  class: "control-button",
2129
2129
  onPointerdown: o[4] ||= e(() => {}, ["stop"]),
2130
- onClick: o[5] ||= e((e) => m(he)(), ["stop"])
2130
+ onClick: o[5] ||= e((e) => m(ge)(), ["stop"])
2131
2131
  }, [T(l, { class: "w-4 h-4" })], 32)), [[
2132
2132
  w,
2133
2133
  { value: t.$t("views.floorplan.zoom_in") },
@@ -2138,7 +2138,7 @@ var bn = l({
2138
2138
  type: "button",
2139
2139
  class: "control-button",
2140
2140
  onPointerdown: o[6] ||= e(() => {}, ["stop"]),
2141
- onClick: o[7] ||= e((e) => m(ge)(), ["stop"])
2141
+ onClick: o[7] ||= e((e) => m(_e)(), ["stop"])
2142
2142
  }, [T(f, { class: "w-4 h-4" })], 32)), [[
2143
2143
  w,
2144
2144
  { value: t.$t("views.floorplan.zoom_out") },
@@ -2243,7 +2243,7 @@ var Pr = l({
2243
2243
  ], ai = { class: "flex items-center gap-2.5 flex-1 min-w-0 px-3 py-2.5" }, oi = { class: "flex items-center justify-center w-8 h-8 rounded-lg shrink-0 palette-icon" }, si = { class: "flex flex-col min-w-0" }, ci = { class: "text-[13px] font-medium truncate text-color leading-tight" }, li = {
2244
2244
  key: 0,
2245
2245
  class: "text-[11px] text-muted truncate leading-tight"
2246
- }, ui = /*#__PURE__*/ O(/* @__PURE__ */ C({
2246
+ }, ui = /*#__PURE__*/ ce(/* @__PURE__ */ C({
2247
2247
  __name: "CuiFloorplanPalette",
2248
2248
  props: {
2249
2249
  cameras: {},
@@ -2386,10 +2386,10 @@ var Si = l({
2386
2386
  //#endregion
2387
2387
  //#region src/api/routes/floorplan.ts
2388
2388
  async function Ci({ signal: e } = {}) {
2389
- return (await oe.get("/floorplan", { signal: e })).data;
2389
+ return (await j.get("/floorplan", { signal: e })).data;
2390
2390
  }
2391
2391
  async function wi(e) {
2392
- return (await oe.put("/floorplan", e)).data;
2392
+ return (await j.put("/floorplan", e)).data;
2393
2393
  }
2394
2394
  //#endregion
2395
2395
  //#region src/components/CuiDialog/templates/FloorplanLevel/FloorplanLevel.vue?vue&type=script&setup=true&lang.ts
@@ -2416,7 +2416,7 @@ var Ti = { class: "flex flex-col gap-2 w-full" }, Ei = {
2416
2416
  }), Oi = re({ plan: null }), ki = null, Ai = null, ji = /* @__PURE__ */ new Set();
2417
2417
  function Mi() {
2418
2418
  Ai || (ki = f(!0), ki.run(() => {
2419
- let e = F("/camera.ui");
2419
+ let e = N("/camera.ui");
2420
2420
  Ai = e, e.on("floorplan-changed", (e) => {
2421
2421
  Oi.plan = e;
2422
2422
  for (let t of ji) try {
@@ -2458,13 +2458,13 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
2458
2458
  }, qi = { class: "flex items-center justify-center" }, Ji = {
2459
2459
  key: 0,
2460
2460
  class: "flex items-center gap-2 pl-3 pr-2 py-1.5"
2461
- }, Yi = { class: "flex-1 min-w-0 text-sm font-semibold truncate text-color" }, Xi = 50, Zi = 92, Qi = /*#__PURE__*/ O(/* @__PURE__ */ C({
2461
+ }, Yi = { class: "flex-1 min-w-0 text-sm font-semibold truncate text-color" }, Xi = 50, Zi = 92, Qi = /*#__PURE__*/ ce(/* @__PURE__ */ C({
2462
2462
  __name: "Floorplan",
2463
2463
  setup(e) {
2464
- let { t: f } = De(), { smBreakpoint: S } = xe(), { bottombarHeight: C } = me(), re = we(), ae = _e(), oe = j(), O = Ni(), A = new ge(), { sensors: ye } = Oe(), { data: be } = A.getCamerasQuery({
2464
+ let { t: f } = De(), { smBreakpoint: S } = me(), { bottombarHeight: C } = he(), re = we(), ae = se(), ce = be(), k = Ni(), ye = new _e(), { sensors: j } = Oe(), { data: N } = ye.getCamerasQuery({
2465
2465
  page: 1,
2466
2466
  pageSize: -1
2467
- }), F = w(), Ce = w(), Te = w(null), Ee = w(null), Ae = w({
2467
+ }), Ce = w(), P = w(), Te = w(null), Ee = w(null), Ae = w({
2468
2468
  x: 0,
2469
2469
  y: 0
2470
2470
  }), je = w(null), Ne = w({
@@ -2495,7 +2495,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
2495
2495
  value: L.NightArm,
2496
2496
  labelKey: "views.floorplan.security_night"
2497
2497
  }
2498
- ], ct = 0, lt = !1, ft, pt, mt, J = N(void 0, "admin"), ht = h(() => Math.max(it.value - Zi, 0)), gt = h(() => q.value.length > 0), Y = h(() => ot.value.length > 0), X = h(() => (be.value?.result ?? []).find((e) => e._id === Be.value)), _t = h(() => z.value.find((e) => e.id === W.value)), vt = h(() => Mt() !== nt.value), yt = h(() => new Map((be.value?.result ?? []).map((e) => [e._id, e.name]))), bt = h(() => ye.value.filter((e) => le.has(String(e.type)))), Z = h(() => new Map(bt.value.map((e) => [e.id, {
2498
+ ], ct = 0, lt = !1, ft, pt, mt, J = xe(void 0, "admin"), ht = h(() => Math.max(it.value - Zi, 0)), gt = h(() => q.value.length > 0), Y = h(() => ot.value.length > 0), X = h(() => (N.value?.result ?? []).find((e) => e._id === Be.value)), _t = h(() => z.value.find((e) => e.id === W.value)), vt = h(() => Mt() !== nt.value), yt = h(() => new Map((N.value?.result ?? []).map((e) => [e._id, e.name]))), bt = h(() => j.value.filter((e) => le.has(String(e.type)))), Z = h(() => new Map(bt.value.map((e) => [e.id, {
2499
2499
  name: At(e),
2500
2500
  owner: jt(e)
2501
2501
  }]))), xt = h(() => {
@@ -2514,7 +2514,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
2514
2514
  }));
2515
2515
  }), Ct = h(() => {
2516
2516
  let e = new Set(H.value.map((e) => e.id));
2517
- return (be.value?.result ?? []).filter((t) => !e.has(t._id)).map((e) => ({
2517
+ return (N.value?.result ?? []).filter((t) => !e.has(t._id)).map((e) => ({
2518
2518
  id: e._id,
2519
2519
  name: e.name
2520
2520
  }));
@@ -2821,16 +2821,16 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
2821
2821
  }
2822
2822
  let $ = h(() => U.value.find((e) => e.id === Re.value));
2823
2823
  function Qt(e) {
2824
- return ye.value.find((t) => t.id === e);
2824
+ return j.value.find((t) => t.id === e);
2825
2825
  }
2826
2826
  function $t(e) {
2827
- return J && !he.has(e);
2827
+ return J && !ge.has(e);
2828
2828
  }
2829
2829
  async function en(e) {
2830
2830
  J && await ve(Qt(e));
2831
2831
  }
2832
2832
  async function tn(e, t) {
2833
- J && await k(Qt(e), t);
2833
+ J && await de(Qt(e), t);
2834
2834
  }
2835
2835
  function nn() {
2836
2836
  clearTimeout(pt);
@@ -2873,7 +2873,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
2873
2873
  Te.value = e, Ae.value = {
2874
2874
  x: t.clientX,
2875
2875
  y: t.clientY
2876
- }, o(() => Ce.value?.toggleMenu(t, Ee.value));
2876
+ }, o(() => P.value?.toggleMenu(t, Ee.value));
2877
2877
  }
2878
2878
  function un({ id: e, patch: t }) {
2879
2879
  Q(!0);
@@ -3098,7 +3098,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3098
3098
  } catch (e) {
3099
3099
  ae.add({
3100
3100
  severity: "error",
3101
- detail: P(e),
3101
+ detail: Se(e),
3102
3102
  life: 5e3
3103
3103
  });
3104
3104
  } finally {
@@ -3107,9 +3107,9 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3107
3107
  }
3108
3108
  async function jn() {
3109
3109
  await Promise.all([
3110
- A.queryClient.refetchQueries({ queryKey: ["camerasList"] }),
3111
- A.queryClient.refetchQueries({ queryKey: ["cameras"] }),
3112
- A.queryClient.refetchQueries({
3110
+ ye.queryClient.refetchQueries({ queryKey: ["camerasList"] }),
3111
+ ye.queryClient.refetchQueries({ queryKey: ["cameras"] }),
3112
+ ye.queryClient.refetchQueries({
3113
3113
  queryKey: ["rooms"],
3114
3114
  exact: !0
3115
3115
  })
@@ -3122,7 +3122,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3122
3122
  } catch (e) {
3123
3123
  ae.add({
3124
3124
  severity: "error",
3125
- detail: P(e),
3125
+ detail: Se(e),
3126
3126
  life: 5e3
3127
3127
  });
3128
3128
  } finally {
@@ -3151,7 +3151,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3151
3151
  }
3152
3152
  (e.key === "Delete" || e.key === "Backspace") && G.value && (e.preventDefault(), _n(G.value));
3153
3153
  }
3154
- let Fn = O.onPlan(async (e) => {
3154
+ let Fn = k.onPlan(async (e) => {
3155
3155
  vt.value || (Ft(e, await Ye()), await jn());
3156
3156
  });
3157
3157
  function In(e) {
@@ -3175,20 +3175,20 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3175
3175
  }
3176
3176
  mt = new ResizeObserver(([e]) => it.value = Math.round(e.contentRect.height)), mt.observe(e);
3177
3177
  }), ee(() => G.value && `${G.value.kind}:${G.value.id}`, () => K.value = 0), ie(() => {
3178
- O.connect(), window.addEventListener("keydown", Pn), Mn();
3179
- }), se((e) => !vt.value || lt ? !0 : (re.openTextDialog({
3178
+ k.connect(), window.addEventListener("keydown", Pn), Mn();
3179
+ }), A((e) => !vt.value || lt ? !0 : (re.openTextDialog({
3180
3180
  data: {
3181
3181
  title: f("views.floorplan.unsaved_title"),
3182
3182
  contentText: f("views.floorplan.unsaved_message"),
3183
3183
  confirmText: f("views.floorplan.discard")
3184
3184
  },
3185
3185
  onConfirm: async () => {
3186
- lt = !0, oe.push(e.fullPath);
3186
+ lt = !0, ce.push(e.fullPath);
3187
3187
  }
3188
3188
  }), !1)), t(() => {
3189
3189
  clearTimeout(ft), clearTimeout(pt), Fn(), mt?.disconnect(), window.removeEventListener("keydown", Pn);
3190
3190
  }), (e, t) => {
3191
- let o = Ue, l = ke, f = ue, h = gi, ee = D, te = pi, ne = Me, w = He, re = Xe, ie = Ve, ae = I, oe = ui, se = jr, O = mn, le = Le, k = Ge, me = ze, he = M, ge = Se, A = Ze, _e = pe, j = E;
3191
+ let o = Ue, l = ke, f = ue, h = gi, ee = D, te = pi, ne = Me, w = He, re = Xe, ie = Ve, ae = I, se = ui, ce = jr, le = mn, de = Le, me = Ge, he = ze, ge = F, _e = M, k = Ze, ve = pe, A = E;
3192
3192
  return r(), _("div", Pi, [
3193
3193
  T(f, { position: "left" }, {
3194
3194
  default: g(() => [T(l, {
@@ -3209,7 +3209,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3209
3209
  class: "cui-button-medium shrink-0",
3210
3210
  label: m(_t)?.name ?? e.$t("views.floorplan.no_levels"),
3211
3211
  disabled: !m(z).length,
3212
- onClick: t[1] ||= (e) => m(F)?.toggleMenu(e)
3212
+ onClick: t[1] ||= (e) => m(Ce)?.toggleMenu(e)
3213
3213
  }, {
3214
3214
  icon: g(() => [T(h)]),
3215
3215
  _: 1
@@ -3230,7 +3230,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3230
3230
  })]),
3231
3231
  _: 1
3232
3232
  }, 8, ["disabled"])), [[
3233
- j,
3233
+ A,
3234
3234
  { value: e.$t("views.floorplan.level_down") },
3235
3235
  void 0,
3236
3236
  { bottom: !0 }
@@ -3249,7 +3249,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3249
3249
  })]),
3250
3250
  _: 1
3251
3251
  }, 8, ["disabled"])), [[
3252
- j,
3252
+ A,
3253
3253
  { value: e.$t("views.floorplan.level_up") },
3254
3254
  void 0,
3255
3255
  { bottom: !0 }
@@ -3272,7 +3272,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3272
3272
  })]),
3273
3273
  _: 1
3274
3274
  }, 8, ["disabled"])), [[
3275
- j,
3275
+ A,
3276
3276
  { value: e.$t("views.floorplan.remove_level") },
3277
3277
  void 0,
3278
3278
  { bottom: !0 }
@@ -3291,7 +3291,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3291
3291
  })]),
3292
3292
  _: 1
3293
3293
  }, 8, ["disabled"])), [[
3294
- j,
3294
+ A,
3295
3295
  { value: e.$t("views.floorplan.rename_level") },
3296
3296
  void 0,
3297
3297
  { bottom: !0 }
@@ -3309,7 +3309,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3309
3309
  })]),
3310
3310
  _: 1
3311
3311
  })), [[
3312
- j,
3312
+ A,
3313
3313
  { value: e.$t("views.floorplan.add_level") },
3314
3314
  void 0,
3315
3315
  { bottom: !0 }
@@ -3320,7 +3320,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3320
3320
  class: "w-[30px] h-[30px] m-0",
3321
3321
  "stroke-width": "5"
3322
3322
  })])) : (r(), _("div", Li, [
3323
- m(J) && !m(S) ? (r(), u(oe, {
3323
+ m(J) && !m(S) ? (r(), u(se, {
3324
3324
  key: 0,
3325
3325
  cameras: m(Ct),
3326
3326
  sensors: m(xt),
@@ -3334,7 +3334,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3334
3334
  "rooms",
3335
3335
  "disabled"
3336
3336
  ])) : d("", !0),
3337
- T(se, {
3337
+ T(ce, {
3338
3338
  mobile: m(S),
3339
3339
  "bottom-inset": m(S) && m(G) ? Math.max(m(it) - m(K), 0) : 0,
3340
3340
  "bottom-inset-dragging": m(at),
@@ -3382,7 +3382,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3382
3382
  key: 1,
3383
3383
  class: "shrink-0 overflow-hidden transition-[width] duration-200 ease-in-out",
3384
3384
  style: v({ width: m(G) ? "300px" : "0px" })
3385
- }, [m(G) ? (r(), u(O, {
3385
+ }, [m(G) ? (r(), u(le, {
3386
3386
  key: 0,
3387
3387
  rooms: m(B),
3388
3388
  connections: m(V),
@@ -3421,7 +3421,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3421
3421
  }, [b("div", {
3422
3422
  class: "flex justify-center py-2 cursor-grab active:cursor-grabbing sheet-grip",
3423
3423
  onPointerdown: In
3424
- }, [...t[14] ||= [b("div", { class: "w-10 h-1 rounded-full sheet-grip-bar" }, null, -1)]], 32), T(O, {
3424
+ }, [...t[14] ||= [b("div", { class: "w-10 h-1 rounded-full sheet-grip-bar" }, null, -1)]], 32), T(le, {
3425
3425
  rooms: m(B),
3426
3426
  connections: m(V),
3427
3427
  cameras: m(H),
@@ -3446,7 +3446,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3446
3446
  "selection",
3447
3447
  "read-only"
3448
3448
  ])], 4)) : d("", !0),
3449
- m(J) && !m(et) ? (r(), u(le, {
3449
+ m(J) && !m(et) ? (r(), u(de, {
3450
3450
  key: 3,
3451
3451
  model: m(Dt),
3452
3452
  direction: "up",
@@ -3493,7 +3493,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3493
3493
  }), {
3494
3494
  icon: g(() => [(r(), u(c(e.icon)))]),
3495
3495
  _: 2
3496
- }, 1040, ["onClick"])), [[j, { value: e.label }]])]),
3496
+ }, 1040, ["onClick"])), [[A, { value: e.label }]])]),
3497
3497
  _: 1
3498
3498
  }, 8, ["model", "style"])) : d("", !0),
3499
3499
  m(J) && m(vt) ? x((r(), u(l, {
@@ -3511,9 +3511,9 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3511
3511
  }),
3512
3512
  onClick: An
3513
3513
  }, {
3514
- icon: g(() => [T(k, { class: "w-5 h-5" })]),
3514
+ icon: g(() => [T(me, { class: "w-5 h-5" })]),
3515
3515
  _: 1
3516
- }, 8, ["loading", "style"])), [[j, { value: e.$t("views.floorplan.save") }]]) : d("", !0),
3516
+ }, 8, ["loading", "style"])), [[A, { value: e.$t("views.floorplan.save") }]]) : d("", !0),
3517
3517
  m(J) && m(S) && !m(et) ? x((r(), u(l, {
3518
3518
  key: 5,
3519
3519
  rounded: "",
@@ -3528,14 +3528,14 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3528
3528
  }, {
3529
3529
  icon: g(() => [T(ie, { class: "w-5 h-5" })]),
3530
3530
  _: 1
3531
- }, 8, ["style"])), [[j, { value: e.$t("views.floorplan.palette") }]]) : d("", !0),
3532
- T(me, {
3531
+ }, 8, ["style"])), [[A, { value: e.$t("views.floorplan.palette") }]]) : d("", !0),
3532
+ T(he, {
3533
3533
  modelValue: m($e),
3534
3534
  "onUpdate:modelValue": t[10] ||= (e) => p($e) ? $e.value = e : null,
3535
3535
  title: e.$t("views.floorplan.palette"),
3536
3536
  "max-height": "70vh"
3537
3537
  }, {
3538
- default: g(() => [T(oe, {
3538
+ default: g(() => [T(se, {
3539
3539
  cameras: m(Ct),
3540
3540
  sensors: m(xt),
3541
3541
  rooms: m(St),
@@ -3577,7 +3577,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3577
3577
  top: `${m(Fe).y}px`
3578
3578
  })
3579
3579
  }, null, 4),
3580
- T(he, {
3580
+ T(ge, {
3581
3581
  ref_key: "sensorPopoverRef",
3582
3582
  ref: Ie,
3583
3583
  class: "shadow-lg cui-rounded-corner",
@@ -3592,13 +3592,13 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3592
3592
  b("div", zi, [b("div", Bi, [(r(), u(c(m(fe)(m($).sensorType, Qt(m($).id))), { class: "w-4 h-4" }))]), b("div", Vi, [
3593
3593
  b("div", Hi, i(m($).name), 1),
3594
3594
  m($).owner ? (r(), _("div", Ui, i(m($).owner), 1)) : d("", !0),
3595
- b("div", Wi, i(m(ce)(m($).sensorType, Qt(m($).id))), 1)
3595
+ b("div", Wi, i(m(oe)(m($).sensorType, Qt(m($).id))), 1)
3596
3596
  ])]),
3597
3597
  m($).note ? (r(), _("div", Gi, i(m($).note), 1)) : d("", !0),
3598
3598
  m($).sensorType === "securitySystem" ? (r(), _("div", Ki, [(r(), _(y, null, n(st, (t) => T(l, {
3599
3599
  key: t.value,
3600
3600
  severity: "secondary",
3601
- outlined: m(de)(Qt(m($).id)) !== t.value,
3601
+ outlined: m(O)(Qt(m($).id)) !== t.value,
3602
3602
  size: "small",
3603
3603
  class: "cui-button-medium",
3604
3604
  label: e.$t(t.labelKey),
@@ -3618,7 +3618,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3618
3618
  ], 32)) : d("", !0)]),
3619
3619
  _: 1
3620
3620
  }, 512),
3621
- T(he, {
3621
+ T(ge, {
3622
3622
  ref_key: "previewRef",
3623
3623
  ref: R,
3624
3624
  class: "shadow-lg cui-rounded-corner overflow-hidden",
@@ -3628,7 +3628,7 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3628
3628
  class: "w-[280px] flex flex-col",
3629
3629
  onPointerenter: sn,
3630
3630
  onPointerleave: cn
3631
- }, [b("div", qi, [m(X) ? (r(), u(ge, {
3631
+ }, [b("div", qi, [m(X) ? (r(), u(_e, {
3632
3632
  key: 0,
3633
3633
  "camera-info": m(X),
3634
3634
  "source-role": "low-resolution",
@@ -3646,26 +3646,26 @@ var Pi = { class: "h-full w-full relative overflow-hidden flex flex-col" }, Fi =
3646
3646
  class: "cui-button p-1.5",
3647
3647
  onClick: t[12] ||= (t) => e.$router.push(`/cameras/${m(X).name}`)
3648
3648
  }, {
3649
- icon: g(() => [T(A, { class: "w-4 h-4" })]),
3649
+ icon: g(() => [T(k, { class: "w-4 h-4" })]),
3650
3650
  _: 1
3651
3651
  })), [[
3652
- j,
3652
+ A,
3653
3653
  { value: e.$t("views.floorplan.open_camera") },
3654
3654
  void 0,
3655
3655
  { top: !0 }
3656
3656
  ]])])) : d("", !0)], 32)]),
3657
3657
  _: 1
3658
3658
  }, 512),
3659
- T(_e, {
3659
+ T(ve, {
3660
3660
  ref_key: "stairsMenuRef",
3661
- ref: Ce,
3661
+ ref: P,
3662
3662
  items: m(Ot),
3663
3663
  "max-height": "320px",
3664
3664
  popover: { pt: { content: { class: "p-0! rounded-xl! overflow-hidden!" } } }
3665
3665
  }, null, 8, ["items"]),
3666
- T(_e, {
3666
+ T(ve, {
3667
3667
  ref_key: "levelMenuRef",
3668
- ref: F,
3668
+ ref: Ce,
3669
3669
  items: m(Et),
3670
3670
  popover: { pt: { content: { class: "p-0! rounded-xl! overflow-hidden!" } } }
3671
3671
  }, null, 8, ["items"])