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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (645) hide show
  1. package/dist/interface/assets/{404-YZOLos9r.js → 404-CiOxoqnT.js} +1 -1
  2. package/dist/interface/assets/{About-HtxMc8JZ.js → About-DWOlfWEm.js} +1 -1
  3. package/dist/interface/assets/Assistant-B1xdMAkA.js +1 -0
  4. package/dist/interface/assets/{Assistant-BMscGKnc.css → Assistant-CXx7EY1W.css} +1 -1
  5. package/dist/interface/assets/{Automation-D3DcUyui.js → Automation-BJgwUkUB.js} +3 -3
  6. package/dist/interface/assets/{AutomationImport-Dp_hT6hQ.js → AutomationImport-9GRAndAt.js} +2 -2
  7. package/dist/interface/assets/{AutomationStore-BKR7GXMk.js → AutomationStore-D_HR2Xby.js} +2 -2
  8. package/dist/interface/assets/{AutomationStoreDetail-B9yh51WQ.js → AutomationStoreDetail-B9MxV2py.js} +2 -2
  9. package/dist/interface/assets/Automations-Bpw8olkc.js +2 -0
  10. package/dist/interface/assets/Camera-BpFfZDaS.js +2 -0
  11. package/dist/interface/assets/{CameraConsole-BI93OaRt.js → CameraConsole-BKPTLSTO.js} +1 -1
  12. package/dist/interface/assets/{Cameras-Ctub8sVt.js → Cameras-DcrVCgLy.js} +2 -2
  13. package/dist/interface/assets/Camview-C16pyCZk.js +1 -0
  14. package/dist/interface/assets/{Camview-CZct5cnP.css → Camview-DasO326h.css} +1 -1
  15. package/dist/interface/assets/{CertificateUpload-xW55NA1Q.js → CertificateUpload-BYFKZCP9.js} +1 -1
  16. package/dist/interface/assets/Config-BmEL5EaW.js +2 -0
  17. package/dist/interface/assets/{ConfigActionAssistant-B488rOp5.js → ConfigActionAssistant-DM4tIhoa.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionCameraControl-ZMUuBxOs.js → ConfigActionCameraControl-Deo0eDPS.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionDelay-BJ11xvOW.js → ConfigActionDelay-_EqbfWgo.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionHttp-DOUo69OR.js → ConfigActionHttp-BxJmoshF.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionImageInput-BMzuVZW9.js → ConfigActionImageInput-KrzXFQDm.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionMqtt-Co_uksca.js → ConfigActionMqtt-BoYBomRC.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionNotification-CcZkstYx.js → ConfigActionNotification-CSAOijDt.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionNotificationControl--VeucoTw.js → ConfigActionNotificationControl-BOdyKiOs.js} +1 -1
  25. package/dist/interface/assets/{ConfigActionOutput-CyDa1LGA.js → ConfigActionOutput-CwsPcnd_.js} +1 -1
  26. package/dist/interface/assets/{ConfigActionPlugin-Kfg3ZEQF.js → ConfigActionPlugin-D3wyULpp.js} +1 -1
  27. package/dist/interface/assets/{ConfigActionSensor-DhAF0HPw.js → ConfigActionSensor-BmeaIxYY.js} +1 -1
  28. package/dist/interface/assets/{ConfigActionSnapshot-zMe3SPvW.js → ConfigActionSnapshot-DbyFKcYr.js} +1 -1
  29. package/dist/interface/assets/{ConfigActionVariable-BE5q3NwY.js → ConfigActionVariable-cThGJ1Pc.js} +1 -1
  30. package/dist/interface/assets/{ConfigConditionIfElse-BNIRtSVD.js → ConfigConditionIfElse-BugkJeXR.js} +1 -1
  31. package/dist/interface/assets/{ConfigConditionSensorState-DTNd-SzI.js → ConfigConditionSensorState-Bf-mMf4E.js} +1 -1
  32. package/dist/interface/assets/{ConfigConditionSwitch-BU5wWMU1.js → ConfigConditionSwitch-DcpFoYET.js} +1 -1
  33. package/dist/interface/assets/{ConfigConditionTime-KXTCIVIV.js → ConfigConditionTime-CM4bSMyU.js} +1 -1
  34. package/dist/interface/assets/{ConfigSensorValueInput-BC1FpMm-.js → ConfigSensorValueInput-CgAI34__.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerDetection-hIN1hi53.js → ConfigTriggerDetection-BWK6gfwM.js} +1 -1
  36. package/dist/interface/assets/ConfigTriggerGeofence-Cm3CU7Tl.js +1 -0
  37. package/dist/interface/assets/{ConfigTriggerManual-C5vwxS-e.js → ConfigTriggerManual-DgkR-GWy.js} +1 -1
  38. package/dist/interface/assets/{ConfigTriggerMqtt-B4PtWC3E.js → ConfigTriggerMqtt-BMFjTAso.js} +1 -1
  39. package/dist/interface/assets/{ConfigTriggerSchedule-BZzUdGBa.js → ConfigTriggerSchedule-E_QWfNKy.js} +1 -1
  40. package/dist/interface/assets/{ConfigTriggerSensor-D18nwMsj.js → ConfigTriggerSensor-DOdJkZRo.js} +1 -1
  41. package/dist/interface/assets/{ConfigTriggerSystem-BhygWLB4.js → ConfigTriggerSystem-BFDIbZsE.js} +1 -1
  42. package/dist/interface/assets/{ConfigTriggerWebhook-yyuBuhLD.js → ConfigTriggerWebhook-DDoUEVHb.js} +1 -1
  43. package/dist/interface/assets/Console-BIj7cIqO.js +1 -0
  44. package/dist/interface/assets/CuiAssistantConversation-CRNCKRHz.js +5 -0
  45. package/dist/interface/assets/{CuiAssistantConversation-lkpZg3ML.css → CuiAssistantConversation-DQ0wOJvV.css} +1 -1
  46. package/dist/interface/assets/CuiAutomationRunsDialog-DMUfNcsf.js +1 -0
  47. package/dist/interface/assets/CuiBottomSheet-CYi5c3fP.js +1 -0
  48. package/dist/interface/assets/{CuiBottomSheet-DWefGWK2.js → CuiBottomSheet-FwsPnJ3n.js} +1 -1
  49. package/dist/interface/assets/{CuiCameraPipCard-C2qaGJlH.js → CuiCameraPipCard-Cb_Qbly6.js} +1 -1
  50. package/dist/interface/assets/CuiCameraRecordings-BeciatDY.js +1 -0
  51. package/dist/interface/assets/{CuiCameraShares-DcqOcePX.js → CuiCameraShares-CSFwIYsg.js} +1 -1
  52. package/dist/interface/assets/CuiCameraTable-BgL5FZso.js +1 -0
  53. package/dist/interface/assets/{CuiCameraTable-BOkfp_5M.js → CuiCameraTable-DBRfGX3I.js} +2 -2
  54. package/dist/interface/assets/{CuiChartTable-DP38uBwK.js → CuiChartTable-CtasoxMM.js} +1 -1
  55. package/dist/interface/assets/{CuiConsole-C7xE_nQg.js → CuiConsole-DQbAafiz.js} +2 -2
  56. package/dist/interface/assets/CuiDataTable-JlD7Agky.js +1 -0
  57. package/dist/interface/assets/{CuiLightControl-ChGYpQAK.js → CuiLightControl-CLYl5pfN.js} +1 -1
  58. package/dist/interface/assets/{CuiList-DJp0__mV.js → CuiList-Dsu5m0TA.js} +1 -1
  59. package/dist/interface/assets/{CuiMarkdownContent-BUYtK_wD.js → CuiMarkdownContent-BYBQX_aF.js} +1 -1
  60. package/dist/interface/assets/CuiMarkdownContent-DTAm-EDR.js +1 -0
  61. package/dist/interface/assets/{CuiPluginCard-CWImTZ6l.js → CuiPluginCard-CC1oXY16.js} +2 -2
  62. package/dist/interface/assets/{CuiPluginCategoryChip-Ch_upS6Y.js → CuiPluginCategoryChip-B2bR5LQa.js} +1 -1
  63. package/dist/interface/assets/{CuiPluginOAuthButton-DEQ9xILN.js → CuiPluginOAuthButton-DfEjfcY-.js} +2 -2
  64. package/dist/interface/assets/{CuiPluginTrustBadge-sVWdvHcM.js → CuiPluginTrustBadge-C6CW6Soh.js} +1 -1
  65. package/dist/interface/assets/{CuiQRCode-DqSF4SkD.js → CuiQRCode-DGKBhDib.js} +1 -1
  66. package/dist/interface/assets/CuiSchema-pAAVh28m.js +1 -0
  67. package/dist/interface/assets/{CuiTopNavbarItem-B_KWykgq.js → CuiTopNavbarItem-ve-3Dsc3.js} +1 -1
  68. package/dist/interface/assets/Faces-1xd5yGuO.js +1 -0
  69. package/dist/interface/assets/{FirstSteps-QNYTkEJo.js → FirstSteps-E9cMqa0a.js} +1 -1
  70. package/dist/interface/assets/Floorplan-BovV_ATh.js +1 -0
  71. package/dist/interface/assets/Instances-BbxyB7vR.js +1 -0
  72. package/dist/interface/assets/{Logs-BSPT80vP.js → Logs-BhRactvQ.js} +2 -2
  73. package/dist/interface/assets/{Menu-HHtuhIS2.js → Menu-DMCmUVDs.js} +1 -1
  74. package/dist/interface/assets/Metrics-BgXrNl38.js +12 -0
  75. package/dist/interface/assets/Metrics-ChVnC6f6.css +1 -0
  76. package/dist/interface/assets/{OAuthDeviceFlow-Bn1nlWNa.js → OAuthDeviceFlow-BMEwVkIa.js} +1 -1
  77. package/dist/interface/assets/Plugin-CDNywaVE.js +1 -0
  78. package/dist/interface/assets/Plugin-Qr_Q_Qfi.css +1 -0
  79. package/dist/interface/assets/{PluginConsole-Cv-uhnPY.js → PluginConsole-C4Ba_U_1.js} +1 -1
  80. package/dist/interface/assets/{PluginDetail-cpOz7FkA.js → PluginDetail-13OWIzdd.js} +2 -2
  81. package/dist/interface/assets/{PluginSchema-DW3TGeTM.js → PluginSchema-DN0cSU8s.js} +1 -1
  82. package/dist/interface/assets/PluginSearch-sPkO8aH3.js +2 -0
  83. package/dist/interface/assets/PluginSearch-xNIlfXk4.js +1 -0
  84. package/dist/interface/assets/{PluginUpdateProgress-n6q6vzyd.js → PluginUpdateProgress-CeWuRp3Z.js} +1 -1
  85. package/dist/interface/assets/Plugins-C8yjhxnQ.js +1 -0
  86. package/dist/interface/assets/{RecentEventsFilter-CTR5JK_P.js → RecentEventsFilter-Kp_lTOuG.js} +1 -1
  87. package/dist/interface/assets/Recordings-BHT8Vvv_.js +1 -0
  88. package/dist/interface/assets/Recordings-DwuojaAw.css +1 -0
  89. package/dist/interface/assets/SensorEdit-C-yJdJuP.js +1 -0
  90. package/dist/interface/assets/{SensorHistory-9CdOpCPs.js → SensorHistory-ClAcOgHj.js} +1 -1
  91. package/dist/interface/assets/Sensors-Cza4Et2c.js +2 -0
  92. package/dist/interface/assets/Settings-Cj0leoGd.js +1 -0
  93. package/dist/interface/assets/SettingsAccount-COkcBBSz.js +1 -0
  94. package/dist/interface/assets/SettingsAccount-DjrJdssy.js +1 -0
  95. package/dist/interface/assets/{SettingsAppearance-BY1xQMx4.js → SettingsAppearance-CJt4xJEW.js} +1 -1
  96. package/dist/interface/assets/SettingsAppearance-D20YW7Vq.js +1 -0
  97. package/dist/interface/assets/SettingsAssistant-CDdbbG-c.css +1 -0
  98. package/dist/interface/assets/SettingsAssistant-DKWDp1AI.js +1 -0
  99. package/dist/interface/assets/{SettingsBackup-D_weokqu.js → SettingsBackup-DIJmci05.js} +1 -1
  100. package/dist/interface/assets/{SettingsList-Bq24WTDU.js → SettingsList-Cb_dLy5T.js} +1 -1
  101. package/dist/interface/assets/SettingsMqtt-LIuCRPT5.js +1 -0
  102. package/dist/interface/assets/{SettingsNotifications-8TZOUxg2.js → SettingsNotifications-CZxqqH_8.js} +1 -1
  103. package/dist/interface/assets/{SettingsPermissions-M8u_jrN0.js → SettingsPermissions-CJiz0Z7B.js} +1 -1
  104. package/dist/interface/assets/{SettingsRecordings-C1Kp5xW_.js → SettingsRecordings-BEpwMh-y.js} +1 -1
  105. package/dist/interface/assets/SettingsRemote-DRt-N_yA.js +2 -0
  106. package/dist/interface/assets/{SettingsSystem-Cetu2faJ.js → SettingsSystem-Cncdpx8T.js} +2 -2
  107. package/dist/interface/assets/{SettingsUsers-CDwtQLdV.js → SettingsUsers-DZkz8WlI.js} +1 -1
  108. package/dist/interface/assets/Terminal-U4yfJN3O.js +4 -0
  109. package/dist/interface/assets/Training-Bkn52mPJ.css +1 -0
  110. package/dist/interface/assets/Training-DfgE_dA8.js +1 -0
  111. package/dist/interface/assets/Updates-cCvbFq3w.js +2 -0
  112. package/dist/interface/assets/{VariableInput-BxPj5wo6.js → VariableInput-PVsqGYW0.js} +1 -1
  113. package/dist/interface/assets/{VariableSuggestions-CbizvAkz.js → VariableSuggestions-DwLtlzVz.js} +1 -1
  114. package/dist/interface/assets/{VersionsHandler-CePyEUVO.js → VersionsHandler-Df7dhddp.js} +2 -2
  115. package/dist/interface/assets/{VirtualSensorCreate-D_GVoeL7.js → VirtualSensorCreate-FTKANjd-.js} +1 -1
  116. package/dist/interface/assets/Workers-Ba37_3cY.js +2 -0
  117. package/dist/interface/assets/{account-Bu30He0P.js → account-DwW7pBOb.js} +1 -1
  118. package/dist/interface/assets/{alert-circle-D2fAQwTX.js → alert-circle-BdUVAt1B.js} +1 -1
  119. package/dist/interface/assets/{alert-outline-D7zaSJH_.js → alert-outline-IRxYbw0j.js} +1 -1
  120. package/dist/interface/assets/api-C1mraOYr.js +4 -0
  121. package/dist/interface/assets/{api-DW2niHRN.js → api-DpqXhwcx.js} +1 -1
  122. package/dist/interface/assets/api-z8ZVnoOl.css +2 -0
  123. package/dist/interface/assets/{arrow-left-BGLyEqqa.js → arrow-left-Bk-ZrOVr.js} +1 -1
  124. package/dist/interface/assets/assistant-Lz3mFLDo.js +1 -0
  125. package/dist/interface/assets/{assistantModels-D0soYqq7.js → assistantModels-BsSgRsws.js} +1 -1
  126. package/dist/interface/assets/{auth-Dc8bUpc-.js → auth-L7_5vsJs.js} +1 -1
  127. package/dist/interface/assets/{automations-DXrjbArj.js → automations-D1XFFSrm.js} +1 -1
  128. package/dist/interface/assets/{back-filled-BPBVnQjx.js → back-filled-D-X19YMO.js} +1 -1
  129. package/dist/interface/assets/{bell-ring-CyCFPUL_.js → bell-ring-DreEHgoT.js} +1 -1
  130. package/dist/interface/assets/{brain-CIJB1ree.js → brain-DuDAg544.js} +1 -1
  131. package/dist/interface/assets/{cameraSources-QJfUDOQJ.js → cameraSources-DEGJDtmK.js} +1 -1
  132. package/dist/interface/assets/{cctv-D6kxZ-lp.js → cctv-DM-C_8_6.js} +1 -1
  133. package/dist/interface/assets/{check-circle-DHAAn6A6.js → check-circle-Bevuw8-0.js} +1 -1
  134. package/dist/interface/assets/{check-circle-outline-BbqeKfIK.js → check-circle-outline-aMxkvksr.js} +1 -1
  135. package/dist/interface/assets/{chevron-down-ZYTrU871.js → chevron-down-CCFn9Z56.js} +1 -1
  136. package/dist/interface/assets/{chevron-up-LQXNz9CE.js → chevron-up-CSImUM3_.js} +1 -1
  137. package/dist/interface/assets/{clock-outline-CKTiLKoR.js → clock-outline-DH3WIEJt.js} +1 -1
  138. package/dist/interface/assets/{close-BbEPZQqa.js → close-CMxyM4v9.js} +1 -1
  139. package/dist/interface/assets/{close-circle-BSUSUs4K.js → close-circle-CfgJCZ9A.js} +1 -1
  140. package/dist/interface/assets/{cloud-check-BTGbrAQ_.js → cloud-check-CbdFLIdR.js} +1 -1
  141. package/dist/interface/assets/cloudHandoff-DkUx4m3P.js +1 -0
  142. package/dist/interface/assets/{config-CiQDwB4t.js → config-CVqy37fG.js} +1 -1
  143. package/dist/interface/assets/{content-copy-V0DW9ZbH.js → content-copy-Bz49QPOI.js} +1 -1
  144. package/dist/interface/assets/{copy-DsmMEtSH.js → copy-DA6QQHRt.js} +1 -1
  145. package/dist/interface/assets/{cube-scan-DGhUFV1x.js → cube-scan-IiH8zwm2.js} +1 -1
  146. package/dist/interface/assets/database-refresh-outline-CIUDpcuq.js +1 -0
  147. package/dist/interface/assets/{delete-CY8fsIW6.js → delete-Btu-UVx9.js} +1 -1
  148. package/dist/interface/assets/{dist-DNyx_J8o.js → dist-D_qWDAKp.js} +1 -1
  149. package/dist/interface/assets/{dots-vertical-pP1vP0Qa.js → dots-vertical-D496SIss.js} +1 -1
  150. package/dist/interface/assets/{download-CyjJ7yJW.js → download-BSC7lwq_.js} +1 -1
  151. package/dist/interface/assets/esm-0kxqa_1s.js +1 -0
  152. package/dist/interface/assets/esm-4p_M5mFV.js +1 -0
  153. package/dist/interface/assets/esm-8G-vO1KQ.js +1 -0
  154. package/dist/interface/assets/esm-8cB56ICb.js +1 -0
  155. package/dist/interface/assets/esm-B92csSEb.js +1 -0
  156. package/dist/interface/assets/esm-BHiNTIiN.js +1 -0
  157. package/dist/interface/assets/esm-Bu9PMLmw.js +1 -0
  158. package/dist/interface/assets/esm-CS6Ra46d.js +1 -0
  159. package/dist/interface/assets/esm-CWvQWALL.js +1 -0
  160. package/dist/interface/assets/esm-D2UDrwmt.js +1 -0
  161. package/dist/interface/assets/esm-D8OHF2X1.js +1 -0
  162. package/dist/interface/assets/esm-DrXkS8eG.js +1 -0
  163. package/dist/interface/assets/esm-pfoHiO1a.js +1 -0
  164. package/dist/interface/assets/esm-tJSCF7Vh.js +1 -0
  165. package/dist/interface/assets/{eventIcons-cdzqQc0W.js → eventIcons-UQutPG3p.js} +1 -1
  166. package/dist/interface/assets/{eye-off-JCu1iUer.js → eye-off-CSU0U8g7.js} +1 -1
  167. package/dist/interface/assets/{eye-off-outline-GErp76H2.js → eye-off-outline-DCxLRGo_.js} +1 -1
  168. package/dist/interface/assets/{flowSchema-BRTZHQ1w.js → flowSchema-CppNBDy1.js} +1 -1
  169. package/dist/interface/assets/{help-circle-outline-G43EJuch.js → help-circle-outline-Cr_yNhPi.js} +1 -1
  170. package/dist/interface/assets/{history-CNJREqJG.js → history-anuCbp1T.js} +1 -1
  171. package/dist/interface/assets/{home-B-_OQpZ6.js → home-N3bDR1vX.js} +1 -1
  172. package/dist/interface/assets/{information-outline-Blt4EtWJ.js → information-outline-CMWIvLNB.js} +1 -1
  173. package/dist/interface/assets/{intercomService-BnA-FQ0Q.js → intercomService-CjoJaOZ7.js} +1 -1
  174. package/dist/interface/assets/{lan-C3jliANx.js → lan-CYXjdk7L.js} +1 -1
  175. package/dist/interface/assets/main-BK3kmiG2.js +3 -0
  176. package/dist/interface/assets/{main-BoGhBedC.css → main-Bo0Lb1y2.css} +1 -1
  177. package/dist/interface/assets/{microphone-B6xc9JQ2.js → microphone-BB2pATI_.js} +1 -1
  178. package/dist/interface/assets/{minus-BI5qXFwJ.js → minus-BCp3ZNKO.js} +1 -1
  179. package/dist/interface/assets/{mqtt-iD9XHYO_.js → mqtt-BENV9Fx4.js} +1 -1
  180. package/dist/interface/assets/native-BEkWOGyD.js +1 -0
  181. package/dist/interface/assets/native-ugMg173F.js +1 -0
  182. package/dist/interface/assets/{nodeDefinitions-Dop49tx8.js → nodeDefinitions-ByrqsENY.js} +1 -1
  183. package/dist/interface/assets/{notifications-CbAJX7RF.js → notifications-By40oPng.js} +1 -1
  184. package/dist/interface/assets/{pause-DKzvPG2b.js → pause-BQlxwAW2.js} +1 -1
  185. package/dist/interface/assets/{pencil-DKbi9SsG.js → pencil-CDsNnEXi.js} +1 -1
  186. package/dist/interface/assets/{pencil-outline-CD3Xv98d.js → pencil-outline-CIQL5Kui.js} +1 -1
  187. package/dist/interface/assets/plugin-eafNQWg2.js +1 -0
  188. package/dist/interface/assets/{plugins-eIUrXNeM.js → plugins-09rEDbMz.js} +1 -1
  189. package/dist/interface/assets/{plus-CHPYoMO_.js → plus-Bp4q9G7S.js} +1 -1
  190. package/dist/interface/assets/{plus--kDl8ben.js → plus-CySoovdr.js} +1 -1
  191. package/dist/interface/assets/{power-C9wmNlFS.js → power-WmBLDR0-.js} +1 -1
  192. package/dist/interface/assets/{radar-B3ra28GD.js → radar-CyYAmume.js} +1 -1
  193. package/dist/interface/assets/{refresh-DfqyhMOh.js → refresh-CHTA3jVN.js} +1 -1
  194. package/dist/interface/assets/{restore-FMacmqd_.js → restore-C8RNM5yX.js} +1 -1
  195. package/dist/interface/assets/{rooms-BqPyo8jc.js → rooms-LBxn-Uuu.js} +1 -1
  196. package/dist/interface/assets/{round-alt-arrow-left-bold-56eF9Bol.js → round-alt-arrow-left-bold-Gh5mi_yR.js} +1 -1
  197. package/dist/interface/assets/{search-BXbDWhLk.js → search-BajCVmOI.js} +1 -1
  198. package/dist/interface/assets/sensorIcons-Csu5s0uk.js +1 -0
  199. package/dist/interface/assets/{sensorSlots-BZCXtnb6.js → sensorSlots-CtbKmsGG.js} +1 -1
  200. package/dist/interface/assets/{sensors-DttBNEEt.js → sensors-CbzNs18A.js} +1 -1
  201. package/dist/interface/assets/{server-DUFhf2c_.js → server-Btp5KILd.js} +1 -1
  202. package/dist/interface/assets/{settings-Cw63SIJl.js → settings-DnksaK7m.js} +1 -1
  203. package/dist/interface/assets/{source-branch-oyzrlfCD.js → source-branch-CzqIPffP.js} +1 -1
  204. package/dist/interface/assets/{theme-BMmjtQ4w.js → theme-GhzGwpqd.js} +1 -1
  205. package/dist/interface/assets/{trash-2-BQc04l9M.js → trash-2-DJeEhHf4.js} +1 -1
  206. package/dist/interface/assets/{trash-can-outline-Bk5eENNM.js → trash-can-outline-DrT6iw7I.js} +1 -1
  207. package/dist/interface/assets/{trash-fill-CXk8BmtF.js → trash-fill-Bb_-UicM.js} +1 -1
  208. package/dist/interface/assets/{trash2-2rUvghml.js → trash2-Dsl8gfxq.js} +1 -1
  209. package/dist/interface/assets/types-BAwhu9iv.js +1 -0
  210. package/dist/interface/assets/{types-DWTSNJ79.js → types-CklFkUXk.js} +1 -1
  211. package/dist/interface/assets/{types-CXw7CEzu.js → types-D8QWPhe-.js} +1 -1
  212. package/dist/interface/assets/{undo-Dcf7vcsv.js → undo-DoqJW-k7.js} +1 -1
  213. package/dist/interface/assets/ungrouped-BMk56E3L.js +1 -0
  214. package/dist/interface/assets/{ungrouped-DHMJ9Rg1.css → ungrouped-BnQIcSQd.css} +1 -1
  215. package/dist/interface/assets/{updates-TIPWXKzL.js → updates-CGo0T4sn.js} +1 -1
  216. package/dist/interface/assets/{upload-nnbfDypK.js → upload-C3w1XH-o.js} +1 -1
  217. package/dist/interface/assets/{upload-B-ZYPekV.js → upload-DtIcwiNC.js} +1 -1
  218. package/dist/interface/assets/{useAppVersion-BIz44Bg4.js → useAppVersion-CJlexqyz.js} +1 -1
  219. package/dist/interface/assets/{useAssistantActions-CLkkw9kB.js → useAssistantActions-Cc_O6M9_.js} +1 -1
  220. package/dist/interface/assets/useBackupRestore-_s8vS5WF.js +1 -0
  221. package/dist/interface/assets/{useCameraOptions-A97teAIr.js → useCameraOptions-CFISVNgk.js} +1 -1
  222. package/dist/interface/assets/{useKeyboardInset-DXVi1dLG.js → useKeyboardInset-DkUn62i7.js} +1 -1
  223. package/dist/interface/assets/{useLogsSocket-BlFxVXjF.js → useLogsSocket-D-ndWAg0.js} +1 -1
  224. package/dist/interface/assets/{useNavLayout-C5obaCNv.js → useNavLayout-CG0X_3kt.js} +1 -1
  225. package/dist/interface/assets/{usePermissions-C8hB_pG1.js → usePermissions-BXTw4tII.js} +1 -1
  226. package/dist/interface/assets/{usePluginUpdates-DO0-Gk4Q.js → usePluginUpdates-nW_dt66E.js} +1 -1
  227. package/dist/interface/assets/{usePushRegistration-BUttCraQ.js → usePushRegistration-DCqOAxR4.js} +2 -2
  228. package/dist/interface/assets/{useServerRestart-Cz9eVHUE.js → useServerRestart-CxJGxAcU.js} +1 -1
  229. package/dist/interface/assets/{useStreamStatus-BhS_MCCB.js → useStreamStatus-CXb1HbAq.js} +1 -1
  230. package/dist/interface/assets/{useTabSwipe-D4k8lm1M.js → useTabSwipe-DHb8__wU.js} +1 -1
  231. package/dist/interface/assets/{useUpdateChannel-D9lhfW0y.js → useUpdateChannel-BR4PMh1R.js} +1 -1
  232. package/dist/interface/assets/{useUpdatesSocket-DnH9sON5.js → useUpdatesSocket-DKDRZhvc.js} +1 -1
  233. package/dist/interface/assets/useUserOptions-lyc4WJ4L.js +1 -0
  234. package/dist/interface/assets/{variable-CcE0ZwTr.js → variable-ywTlRfo5.js} +1 -1
  235. package/dist/interface/assets/{vendor-cameraui-QXD8jkcj.js → vendor-cameraui-CK4yHsJi.js} +45 -45
  236. package/dist/interface/assets/{vendor-capacitor-COL6Kz75.js → vendor-capacitor-f9ShAzys.js} +2 -2
  237. package/dist/interface/assets/{vendor-chart-80wrH3md.js → vendor-chart-DBK083Hu.js} +1 -1
  238. package/dist/interface/assets/{vendor-core-CnhnyKDl.js → vendor-core-B-Q4es-f.js} +1 -1
  239. package/dist/interface/assets/{vendor-dnd-CEJS9JKU.js → vendor-dnd-DGQLvX6Y.js} +1 -1
  240. package/dist/interface/assets/{vendor-draggabilly-BY7O1F_Z.js → vendor-draggabilly-D8CK6M-y.js} +1 -1
  241. package/dist/interface/assets/{vendor-DGke_6M4.js → vendor-gFkr2qsZ.js} +1 -1
  242. package/dist/interface/assets/vendor-gridstack-DtDG3os6.js +3 -0
  243. package/dist/interface/assets/{vendor-markdown-DD4teg2u.js → vendor-markdown-qHIinIUE.js} +1 -1
  244. package/dist/interface/assets/{vendor-primevue-CCUqY55W.js → vendor-primevue-Cmp3VjIC.js} +72 -72
  245. package/dist/interface/assets/{vendor-vueflow-Bmwd2les.js → vendor-vueflow-bSwRZ9X8.js} +1 -1
  246. package/dist/interface/assets/web-3OOGlctS.js +1 -0
  247. package/dist/interface/assets/web-5NFVd9gs.js +1 -0
  248. package/dist/interface/assets/web-A4yovlXr.js +1 -0
  249. package/dist/interface/assets/web-BBC3YoWX.js +1 -0
  250. package/dist/interface/assets/web-B_9Qyt8E.js +1 -0
  251. package/dist/interface/assets/web-BjKL51lK-DUIsII0n.js +1 -0
  252. package/dist/interface/assets/web-C2-YAfsx.js +1 -0
  253. package/dist/interface/assets/web-CUL_MhvM.js +1 -0
  254. package/dist/interface/assets/web-CZVCXYLV.js +1 -0
  255. package/dist/interface/assets/web-DJ-LUxlV.js +1 -0
  256. package/dist/interface/assets/web-DNsEGLGS.js +1 -0
  257. package/dist/interface/assets/web-DZsU0QT_.js +1 -0
  258. package/dist/interface/assets/web-MoyOTbiU.js +1 -0
  259. package/dist/interface/assets/web-avRH_3t7.js +1 -0
  260. package/dist/interface/assets/{webhook-oVbP79Yk.js → webhook-CWKf2Qxu.js} +1 -1
  261. package/dist/interface/assets/workbox-window.prod.es5-BEYAF-e-.js +1 -0
  262. package/dist/interface/assets/{zoom-in-GKNy8xA7.js → zoom-in-CHkXAWHy.js} +1 -1
  263. package/dist/interface/ha/{404-DLhJqxRl.js → 404-B2T8Gktj.js} +1 -1
  264. package/dist/interface/ha/{About-DC0i1iE4.js → About-CrTKzU9_.js} +6 -6
  265. package/dist/interface/ha/{Assistant-BmazMPIg.js → Assistant-BDHJmYx_.js} +823 -820
  266. package/dist/interface/ha/{Automation-gabF9YzQ.js → Automation-Czo5EsAg.js} +337 -337
  267. package/dist/interface/ha/{AutomationImport-DaqZNs9s.js → AutomationImport-CuFAQbiX.js} +6 -6
  268. package/dist/interface/ha/{AutomationStore-DzM4huo5.js → AutomationStore-D-6x0JIt.js} +16 -16
  269. package/dist/interface/ha/{AutomationStoreDetail-CpzQMt_D.js → AutomationStoreDetail-Dad4q1MN.js} +19 -19
  270. package/dist/interface/ha/{Automations-Dcm4Us50.js → Automations-C-oGM5SR.js} +71 -71
  271. package/dist/interface/ha/{Camera-CNK3QR7l.js → Camera-CerkQGbZ.js} +214 -214
  272. package/dist/interface/ha/{CameraConsole-CpcF0411.js → CameraConsole-hRGwbjsD.js} +3 -3
  273. package/dist/interface/ha/{Cameras-Cf9rwRyf.js → Cameras-Bk5TFXA8.js} +92 -92
  274. package/dist/interface/ha/{Camview-BFKR2t6C.js → Camview-CsKKqxxY.js} +382 -382
  275. package/dist/interface/ha/{Config-1XH3zfr2.js → Config-Vl4-K3A_.js} +11 -11
  276. package/dist/interface/ha/{ConfigActionAssistant-C0-NFoTB.js → ConfigActionAssistant-OWUX8glZ.js} +4 -4
  277. package/dist/interface/ha/{ConfigActionCameraControl-DNSKZPSZ.js → ConfigActionCameraControl-DEaOot8w.js} +3 -3
  278. package/dist/interface/ha/{ConfigActionHttp-DVJAcGkl.js → ConfigActionHttp-CSr2BpKL.js} +2 -2
  279. package/dist/interface/ha/{ConfigActionImageInput-VVbHHHZs.js → ConfigActionImageInput--O8Tyca-.js} +1 -1
  280. package/dist/interface/ha/{ConfigActionMqtt-N5OUJDzM.js → ConfigActionMqtt-DQJ4-gs2.js} +4 -4
  281. package/dist/interface/ha/{ConfigActionNotification-s142tQoU.js → ConfigActionNotification-wR8CCA_T.js} +3 -3
  282. package/dist/interface/ha/{ConfigActionNotificationControl-Dh7kaKVP.js → ConfigActionNotificationControl-DNMrHwPz.js} +2 -2
  283. package/dist/interface/ha/{ConfigActionOutput-B4HHTg5C.js → ConfigActionOutput-C-LVFxFP.js} +1 -1
  284. package/dist/interface/ha/{ConfigActionPlugin-D20G2Dqf.js → ConfigActionPlugin-BCREAkNo.js} +5 -5
  285. package/dist/interface/ha/{ConfigActionSensor-BS3jrFaG.js → ConfigActionSensor-D48CQ6qR.js} +5 -5
  286. package/dist/interface/ha/{ConfigActionSnapshot-CInLAcwK.js → ConfigActionSnapshot-DpDy88Mg.js} +2 -2
  287. package/dist/interface/ha/{ConfigActionVariable-C5vADGNF.js → ConfigActionVariable-D9BxmwvB.js} +1 -1
  288. package/dist/interface/ha/{ConfigConditionIfElse-CPeWDD31.js → ConfigConditionIfElse-CW42tQFY.js} +3 -3
  289. package/dist/interface/ha/{ConfigConditionSensorState-BM5GmpN6.js → ConfigConditionSensorState-BZpij7kB.js} +4 -4
  290. package/dist/interface/ha/{ConfigConditionSwitch-Dmz9FduJ.js → ConfigConditionSwitch-DlTuJ9Sf.js} +5 -5
  291. package/dist/interface/ha/{ConfigSensorValueInput-Ch5njvtv.js → ConfigSensorValueInput-2QLHESlE.js} +5 -5
  292. package/dist/interface/ha/{ConfigTriggerDetection-BR2QWNyO.js → ConfigTriggerDetection-DPmUkmUJ.js} +3 -3
  293. package/dist/interface/ha/{ConfigTriggerGeofence-CaImOjyW.js → ConfigTriggerGeofence--T9OXhGl.js} +2 -2
  294. package/dist/interface/ha/{ConfigTriggerMqtt-DWz1XwZQ.js → ConfigTriggerMqtt-fZn_X6yY.js} +1 -1
  295. package/dist/interface/ha/{ConfigTriggerSensor-lfnhz0im.js → ConfigTriggerSensor-_3O6iBFX.js} +1 -1
  296. package/dist/interface/ha/{ConfigTriggerSystem-CwUhyFAj.js → ConfigTriggerSystem-CC9lqi8Q.js} +2 -2
  297. package/dist/interface/ha/{ConfigTriggerWebhook-J6Xts7GQ.js → ConfigTriggerWebhook-BuBcgXqf.js} +1 -1
  298. package/dist/interface/ha/{Console-BSdKFm6Y.js → Console-DNc49UEt.js} +13 -13
  299. package/dist/interface/ha/{CuiAutomationRunsDialog-BU8sympp.js → CuiAutomationRunsDialog-Dj_iiZht.js} +2 -2
  300. package/dist/interface/ha/{CuiBottomSheet-Bnp7ta7V.js → CuiBottomSheet-DG7wOV7m.js} +1 -1
  301. package/dist/interface/ha/{CuiCameraRecordings-E-mMqKSs.js → CuiCameraRecordings-BlOZTfQ4.js} +12 -12
  302. package/dist/interface/ha/{CuiCameraShares-DcNwd2OC.js → CuiCameraShares-BOn-mobi.js} +2 -2
  303. package/dist/interface/ha/{CuiCameraTable-DNW9Vm_A.js → CuiCameraTable-D50FLiK8.js} +9 -9
  304. package/dist/interface/ha/{CuiChartTable-muC7jL2H.js → CuiChartTable-CfcVRvdZ.js} +42 -42
  305. package/dist/interface/ha/{CuiConsole-ND8bcuTg.js → CuiConsole-UpN0Wihm.js} +6 -6
  306. package/dist/interface/ha/{CuiDataTable-CN4T8DgP.js → CuiDataTable-CpADXKNF.js} +6 -6
  307. package/dist/interface/ha/{CuiPluginCard-nIQiyQvH.js → CuiPluginCard-CT6ZfL9o.js} +52 -52
  308. package/dist/interface/ha/{CuiPluginOAuthButton-FJ49NfUh.js → CuiPluginOAuthButton-BJVKd6Ac.js} +6 -6
  309. package/dist/interface/ha/{CuiPluginTrustBadge-D6eanMyI.js → CuiPluginTrustBadge-gb9GI24w.js} +3 -3
  310. package/dist/interface/ha/{CuiQRCode-BdJzeeoE.js → CuiQRCode-DqKDx9zR.js} +7 -7
  311. package/dist/interface/ha/{CuiSchema-DY0V-8xP.js → CuiSchema-CHeJkx0k.js} +129 -129
  312. package/dist/interface/ha/{CuiTopNavbarItem-DT5pAKHp.js → CuiTopNavbarItem-CFeI6ZYU.js} +5 -5
  313. package/dist/interface/ha/Faces-CTfvhhCj.js +1441 -0
  314. package/dist/interface/ha/{FirstSteps-yS2M2cor.js → FirstSteps-C-WXJ8IL.js} +80 -80
  315. package/dist/interface/ha/{Floorplan-DSOeScjI.js → Floorplan-CDKTYN7B.js} +307 -307
  316. package/dist/interface/ha/{Instances-B4h5EKpF.js → Instances-n23yvN3L.js} +62 -62
  317. package/dist/interface/ha/{Logs-BH0Lxvs6.js → Logs-Dfm0BWOQ.js} +10 -10
  318. package/dist/interface/ha/{Menu-COH7QXuE.js → Menu-76kvdAEF.js} +15 -15
  319. package/dist/interface/ha/{Metrics-BtnRqL_I.js → Metrics-lnivlTWm.js} +101 -100
  320. package/dist/interface/ha/{OAuthDeviceFlow-D2QJ9MnP.js → OAuthDeviceFlow-4ChaymHu.js} +7 -7
  321. package/dist/interface/ha/{Plugin-EfUSqwyh.js → Plugin-BV8YA8aN.js} +486 -347
  322. package/dist/interface/ha/{PluginConsole-hh_o15f7.js → PluginConsole-csf1Km7f.js} +4 -4
  323. package/dist/interface/ha/{PluginDetail-DFiXGkrY.js → PluginDetail-DTff6cbA.js} +185 -185
  324. package/dist/interface/ha/{PluginSearch-Cdrfubrj.js → PluginSearch-CdjxmFPN.js} +116 -116
  325. package/dist/interface/ha/{PluginUpdateProgress-BD2g2kVj.js → PluginUpdateProgress-ClyF4pbA.js} +3 -3
  326. package/dist/interface/ha/{Plugins-qFiHW-Nk.js → Plugins-_xOrqP36.js} +34 -34
  327. package/dist/interface/ha/{RecentEventsFilter-UWrXnvfq.js → RecentEventsFilter-9ZkDHD1g.js} +1 -1
  328. package/dist/interface/ha/{Recordings-BzeC6tOz.js → Recordings-dTZv0pkp.js} +483 -458
  329. package/dist/interface/ha/{SensorEdit-BSgy7lkZ.js → SensorEdit-DDRkZjmm.js} +40 -40
  330. package/dist/interface/ha/{SensorHistory-IDvP8LKH.js → SensorHistory-DSGlRITr.js} +2 -2
  331. package/dist/interface/ha/{Sensors-Diqp4oZ0.js → Sensors-DjhGRUzM.js} +477 -462
  332. package/dist/interface/ha/{Settings-BgDsxAlx.js → Settings-DYuvz4de.js} +17 -17
  333. package/dist/interface/ha/{SettingsAccount-DBXMQPYk.js → SettingsAccount-DQAo8SnK.js} +146 -146
  334. package/dist/interface/ha/{SettingsAppearance-VmbjnT3o.js → SettingsAppearance-_tbhpUA0.js} +8 -8
  335. package/dist/interface/ha/{SettingsAssistant-C2R4ZetE.js → SettingsAssistant-DSf-dYuD.js} +656 -533
  336. package/dist/interface/ha/{SettingsBackup-BqY9TwYn.js → SettingsBackup-wLOa7xtw.js} +40 -40
  337. package/dist/interface/ha/{SettingsList-CzHcfo2N.js → SettingsList-CYujivw5.js} +4 -4
  338. package/dist/interface/ha/{SettingsMqtt-DqV3h3Ow.js → SettingsMqtt-DbxJ-h3J.js} +115 -115
  339. package/dist/interface/ha/{SettingsNotifications-yn5fIR_7.js → SettingsNotifications-DO2-KJvq.js} +118 -118
  340. package/dist/interface/ha/{SettingsRecordings-DDs1lyfY.js → SettingsRecordings-C47i1UhI.js} +9 -9
  341. package/dist/interface/ha/{SettingsRemote-jBw3l5E0.js → SettingsRemote-BPvb-KLI.js} +335 -335
  342. package/dist/interface/ha/{SettingsSystem-BOv9hNlk.js → SettingsSystem-BJPrv9JE.js} +9 -9
  343. package/dist/interface/ha/{SettingsUsers-Biv-2F4C.js → SettingsUsers-CcpCz6Y1.js} +89 -89
  344. package/dist/interface/ha/{Terminal-CmcrGEV0.js → Terminal-DT7-WNH1.js} +16 -16
  345. package/dist/interface/ha/Training-CqGBf8k1.js +1694 -0
  346. package/dist/interface/ha/{Updates-DJAcmDQJ.js → Updates-CgdrqX6R.js} +13 -13
  347. package/dist/interface/ha/{VariableInput-DlYg7t0m.js → VariableInput-DOzSFgxT.js} +1 -1
  348. package/dist/interface/ha/{VersionsHandler-UnrAWn-b.js → VersionsHandler-ItklhE2t.js} +10 -10
  349. package/dist/interface/ha/{VirtualSensorCreate-CssxeaCC.js → VirtualSensorCreate-DbS3VqHC.js} +2 -2
  350. package/dist/interface/ha/{Workers-CLpqLugC.js → Workers-6PU7yUv1.js} +36 -36
  351. package/dist/interface/ha/{api-BP7mlzjP.js → api-Dv3Lk_g5.js} +8832 -8608
  352. package/dist/interface/ha/{api-B_tDa73J.js → api-anWolhVj.js} +3 -3
  353. package/dist/interface/ha/{assistant-Cb6ACguQ.js → assistant-B3m0Kgev.js} +101 -97
  354. package/dist/interface/ha/{auth-DOYDRgFm.js → auth-CAkpM_7A.js} +33 -33
  355. package/dist/interface/ha/{automationBlueprint-CbbG_ku4.js → automationBlueprint-DwVvbKbw.js} +4 -4
  356. package/dist/interface/ha/cameraui-cards.js +1 -1
  357. package/dist/interface/ha/{cards-BpBP1zVW.js → cards-B0qagpBw.js} +743 -667
  358. package/dist/interface/ha/{config-DroY1HBs.js → config-C20itAPE.js} +14 -14
  359. package/dist/interface/ha/database-refresh-outline-PiqlCkA7.js +19 -0
  360. package/dist/interface/ha/{dist-BTp4AyuI.js → dist-BIngHzHx.js} +5 -5
  361. package/dist/interface/ha/{dist-C6MBHJhs.js → dist-oFWkn6pD.js} +5 -8
  362. package/dist/interface/ha/{mqtt-NJTVdd53.js → mqtt-C6JvkA5E.js} +14 -14
  363. package/dist/interface/ha/{notifications-BPTvvgvv.js → notifications-gLmNZxwZ.js} +19 -19
  364. package/dist/interface/ha/{pinia-C6gt7A_Q.js → pinia-Du8AM917.js} +639 -625
  365. package/dist/interface/ha/{plugins-B29K3nQP.js → plugins-6x0kBuQb.js} +53 -53
  366. package/dist/interface/ha/{rooms-DLw0WUy_.js → rooms-C-mLT6mX.js} +11 -11
  367. package/dist/interface/ha/{server-B4b5_Ecu.js → server-DuikIt69.js} +28 -28
  368. package/dist/interface/ha/{types-DJHHL7nn.js → types-C0NcQ4Cz.js} +49 -38
  369. package/dist/interface/ha/{types-XqA3YJPD.js → types-wLECk3Ml.js} +3 -1
  370. package/dist/interface/ha/{ungrouped-xyK1QrsM.js → ungrouped-ooCH0Izh.js} +120 -120
  371. package/dist/interface/ha/{updates-XFSu9Tfm.js → updates-H8MlOQLC.js} +36 -36
  372. package/dist/interface/ha/{useAppVersion-BH3rU1zz.js → useAppVersion-DAUCV_cn.js} +1 -1
  373. package/dist/interface/ha/{useLogsSocket-CaTRzvgU.js → useLogsSocket-BOLAXPuD.js} +1 -1
  374. package/dist/interface/ha/{useNavLayout-DV0_OQx0.js → useNavLayout-B7VoHzM1.js} +2 -2
  375. package/dist/interface/ha/{useServerRestart-C8tynLUf.js → useServerRestart-qSH0bqwY.js} +1 -1
  376. package/dist/interface/ha/{useTabSwipe-CFoLDp3j.js → useTabSwipe-DYzG_gVG.js} +1 -1
  377. package/dist/interface/ha/{useUpdateChannel-DSG2RTPe.js → useUpdateChannel-CK7JiWbG.js} +2 -2
  378. package/dist/interface/ha/{useUpdatesSocket-CSQ0g7-6.js → useUpdatesSocket-DrqkGMuR.js} +1 -1
  379. package/dist/interface/ha/{useUserOptions-CFaCy6L1.js → useUserOptions-BteVUdaT.js} +1 -1
  380. package/dist/interface/index.html +70 -70
  381. package/dist/interface/sw.js +1 -1
  382. package/dist/server/package.json +28 -28
  383. package/dist/server/requirements.txt +2 -2
  384. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/__init__.py +44 -0
  385. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/config.py +2 -0
  386. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/camera/detection.py +7 -2
  387. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/__init__.py +42 -0
  388. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/assistant_models.py +300 -0
  389. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/contract.py +9 -0
  390. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/helper.py +21 -0
  391. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/plugin/interfaces.py +80 -4
  392. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/__init__.py +6 -0
  393. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/base.py +2 -0
  394. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/face.py +3 -7
  395. package/dist/server/src/_camera_ui_tools/camera_ui_sdk/sensor/face_embedder.py +69 -0
  396. package/dist/server/src/api/controllers/assistant.controller.js +1 -1
  397. package/dist/server/src/api/controllers/assistant.controller.js.map +1 -1
  398. package/dist/server/src/api/database/index.d.ts +1 -1
  399. package/dist/server/src/api/database/index.js +1 -1
  400. package/dist/server/src/api/database/migrations/v2-2-5.d.ts +3 -0
  401. package/dist/server/src/api/database/migrations/v2-2-5.js +19 -0
  402. package/dist/server/src/api/database/migrations/v2-2-5.js.map +1 -0
  403. package/dist/server/src/api/database/record-schemas.d.ts +4 -2
  404. package/dist/server/src/api/database/record-schemas.js +4 -1
  405. package/dist/server/src/api/database/record-schemas.js.map +1 -1
  406. package/dist/server/src/api/database/types.d.ts +5 -1
  407. package/dist/server/src/api/schemas/assistant.schema.d.ts +21 -7
  408. package/dist/server/src/api/schemas/assistant.schema.js +4 -1
  409. package/dist/server/src/api/schemas/assistant.schema.js.map +1 -1
  410. package/dist/server/src/api/schemas/cameras.schema.d.ts +56 -8
  411. package/dist/server/src/api/schemas/cameras.schema.js +4 -3
  412. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  413. package/dist/server/src/api/services/assistant.service.d.ts +1 -1
  414. package/dist/server/src/api/services/assistant.service.js +4 -1
  415. package/dist/server/src/api/services/assistant.service.js.map +1 -1
  416. package/dist/server/src/api/services/cameras.service.js +2 -2
  417. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  418. package/dist/server/src/api/websocket/nsp/logs.js +3 -3
  419. package/dist/server/src/api/websocket/nsp/logs.js.map +1 -1
  420. package/dist/server/src/api/websocket/nsp/worker-perf.js +13 -0
  421. package/dist/server/src/api/websocket/nsp/worker-perf.js.map +1 -1
  422. package/dist/server/src/api/websocket/types.d.ts +12 -0
  423. package/dist/server/src/assistant/budget.d.ts +27 -0
  424. package/dist/server/src/assistant/budget.js +118 -0
  425. package/dist/server/src/assistant/budget.js.map +1 -0
  426. package/dist/server/src/assistant/compaction.d.ts +10 -0
  427. package/dist/server/src/assistant/compaction.js +83 -0
  428. package/dist/server/src/assistant/compaction.js.map +1 -0
  429. package/dist/server/src/assistant/docs.js +4 -3
  430. package/dist/server/src/assistant/docs.js.map +1 -1
  431. package/dist/server/src/assistant/history.d.ts +1 -0
  432. package/dist/server/src/assistant/history.js +28 -0
  433. package/dist/server/src/assistant/history.js.map +1 -1
  434. package/dist/server/src/assistant/manager.d.ts +10 -0
  435. package/dist/server/src/assistant/manager.js +261 -62
  436. package/dist/server/src/assistant/manager.js.map +1 -1
  437. package/dist/server/src/assistant/plugin-models.d.ts +34 -0
  438. package/dist/server/src/assistant/plugin-models.js +266 -0
  439. package/dist/server/src/assistant/plugin-models.js.map +1 -0
  440. package/dist/server/src/assistant/prompt.d.ts +7 -1
  441. package/dist/server/src/assistant/prompt.js +75 -11
  442. package/dist/server/src/assistant/prompt.js.map +1 -1
  443. package/dist/server/src/assistant/providers.js +7 -3
  444. package/dist/server/src/assistant/providers.js.map +1 -1
  445. package/dist/server/src/assistant/recap.d.ts +3 -0
  446. package/dist/server/src/assistant/recap.js +65 -0
  447. package/dist/server/src/assistant/recap.js.map +1 -0
  448. package/dist/server/src/assistant/registry.d.ts +16 -1
  449. package/dist/server/src/assistant/registry.js +49 -1
  450. package/dist/server/src/assistant/registry.js.map +1 -1
  451. package/dist/server/src/assistant/retry.js +38 -24
  452. package/dist/server/src/assistant/retry.js.map +1 -1
  453. package/dist/server/src/assistant/router.d.ts +7 -0
  454. package/dist/server/src/assistant/router.js +67 -0
  455. package/dist/server/src/assistant/router.js.map +1 -0
  456. package/dist/server/src/assistant/skills.d.ts +8 -0
  457. package/dist/server/src/assistant/skills.js +59 -1
  458. package/dist/server/src/assistant/skills.js.map +1 -1
  459. package/dist/server/src/assistant/threads.d.ts +1 -0
  460. package/dist/server/src/assistant/threads.js +7 -1
  461. package/dist/server/src/assistant/threads.js.map +1 -1
  462. package/dist/server/src/assistant/tool-names.js +9 -1
  463. package/dist/server/src/assistant/tool-names.js.map +1 -1
  464. package/dist/server/src/assistant/tool-rank.d.ts +2 -0
  465. package/dist/server/src/assistant/tool-rank.js +48 -0
  466. package/dist/server/src/assistant/tool-rank.js.map +1 -0
  467. package/dist/server/src/assistant/tool-schema.d.ts +3 -0
  468. package/dist/server/src/assistant/tool-schema.js +65 -0
  469. package/dist/server/src/assistant/tool-schema.js.map +1 -0
  470. package/dist/server/src/assistant/tools/api.js +7 -9
  471. package/dist/server/src/assistant/tools/api.js.map +1 -1
  472. package/dist/server/src/assistant/tools/ask.js +1 -2
  473. package/dist/server/src/assistant/tools/ask.js.map +1 -1
  474. package/dist/server/src/assistant/tools/automations.js +3 -5
  475. package/dist/server/src/assistant/tools/automations.js.map +1 -1
  476. package/dist/server/src/assistant/tools/cameras.js +3 -4
  477. package/dist/server/src/assistant/tools/cameras.js.map +1 -1
  478. package/dist/server/src/assistant/tools/docs.js +5 -6
  479. package/dist/server/src/assistant/tools/docs.js.map +1 -1
  480. package/dist/server/src/assistant/tools/instance.js +19 -19
  481. package/dist/server/src/assistant/tools/instance.js.map +1 -1
  482. package/dist/server/src/assistant/tools/memory.js +3 -4
  483. package/dist/server/src/assistant/tools/memory.js.map +1 -1
  484. package/dist/server/src/assistant/tools/metrics.js +1 -2
  485. package/dist/server/src/assistant/tools/metrics.js.map +1 -1
  486. package/dist/server/src/assistant/tools/notifications.js +4 -11
  487. package/dist/server/src/assistant/tools/notifications.js.map +1 -1
  488. package/dist/server/src/assistant/tools/plugins.js +12 -14
  489. package/dist/server/src/assistant/tools/plugins.js.map +1 -1
  490. package/dist/server/src/assistant/tools/report.js +17 -12
  491. package/dist/server/src/assistant/tools/report.js.map +1 -1
  492. package/dist/server/src/assistant/tools/schedules.js +6 -11
  493. package/dist/server/src/assistant/tools/schedules.js.map +1 -1
  494. package/dist/server/src/assistant/tools/sensors.js +63 -4
  495. package/dist/server/src/assistant/tools/sensors.js.map +1 -1
  496. package/dist/server/src/assistant/tools/settings.js +2 -3
  497. package/dist/server/src/assistant/tools/settings.js.map +1 -1
  498. package/dist/server/src/assistant/tools/system.js +3 -5
  499. package/dist/server/src/assistant/tools/system.js.map +1 -1
  500. package/dist/server/src/assistant/tools/terminal.js +4 -5
  501. package/dist/server/src/assistant/tools/terminal.js.map +1 -1
  502. package/dist/server/src/assistant/types.d.ts +10 -1
  503. package/dist/server/src/assistant/uploads.d.ts +2 -1
  504. package/dist/server/src/assistant/uploads.js +25 -3
  505. package/dist/server/src/assistant/uploads.js.map +1 -1
  506. package/dist/server/src/camera/decoder/detection-coordinator.d.ts +5 -0
  507. package/dist/server/src/camera/decoder/detection-coordinator.js +45 -14
  508. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  509. package/dist/server/src/camera/decoder/detection-pipeline.js +2 -1
  510. package/dist/server/src/camera/decoder/detection-pipeline.js.map +1 -1
  511. package/dist/server/src/camera/decoder/event-manager.d.ts +27 -4
  512. package/dist/server/src/camera/decoder/event-manager.js +175 -48
  513. package/dist/server/src/camera/decoder/event-manager.js.map +1 -1
  514. package/dist/server/src/camera/decoder/nvr-sink.d.ts +4 -1
  515. package/dist/server/src/camera/decoder/nvr-sink.js +1 -1
  516. package/dist/server/src/camera/decoder/nvr-sink.js.map +1 -1
  517. package/dist/server/src/camera/decoder/perf-tracker.d.ts +10 -0
  518. package/dist/server/src/camera/decoder/perf-tracker.js +20 -0
  519. package/dist/server/src/camera/decoder/perf-tracker.js.map +1 -1
  520. package/dist/server/src/camera/decoder/secondary-stage.d.ts +21 -1
  521. package/dist/server/src/camera/decoder/secondary-stage.js +301 -59
  522. package/dist/server/src/camera/decoder/secondary-stage.js.map +1 -1
  523. package/dist/server/src/camera/decoder/side-queue.d.ts +13 -0
  524. package/dist/server/src/camera/decoder/side-queue.js +53 -0
  525. package/dist/server/src/camera/decoder/side-queue.js.map +1 -0
  526. package/dist/server/src/camera/decoder/sources/buffered-source.d.ts +2 -0
  527. package/dist/server/src/camera/decoder/sources/buffered-source.js +7 -1
  528. package/dist/server/src/camera/decoder/sources/buffered-source.js.map +1 -1
  529. package/dist/server/src/camera/decoder/types.d.ts +11 -1
  530. package/dist/server/src/camera/decoder/types.js +9 -1
  531. package/dist/server/src/camera/decoder/types.js.map +1 -1
  532. package/dist/server/src/camera/sensors/controller.d.ts +1 -0
  533. package/dist/server/src/camera/sensors/controller.js +28 -4
  534. package/dist/server/src/camera/sensors/controller.js.map +1 -1
  535. package/dist/server/src/main.js +11 -2
  536. package/dist/server/src/main.js.map +1 -1
  537. package/dist/server/src/plugins/runtime/python/proxy/camera_device.py +1 -14
  538. package/dist/server/src/plugins/runtime/python/proxy/sensor.py +14 -1
  539. package/dist/server/src/plugins/runtime/python/proxy/sensor_manager.py +1 -13
  540. package/dist/server/src/rpc/interfaces/detection.d.ts +14 -2
  541. package/dist/server/src/rpc/server.js +1 -0
  542. package/dist/server/src/rpc/server.js.map +1 -1
  543. package/dist/server/src/services/config/index.d.ts +1 -0
  544. package/dist/server/src/services/config/index.js +6 -11
  545. package/dist/server/src/services/config/index.js.map +1 -1
  546. package/dist/server/src/utils/camera.js +8 -5
  547. package/dist/server/src/utils/camera.js.map +1 -1
  548. package/dist/server/src/utils/instance-lock.d.ts +1 -0
  549. package/dist/server/src/utils/instance-lock.js +57 -0
  550. package/dist/server/src/utils/instance-lock.js.map +1 -0
  551. package/dist/server/src/workers/agent.d.ts +2 -0
  552. package/dist/server/src/workers/agent.js +11 -1
  553. package/dist/server/src/workers/agent.js.map +1 -1
  554. package/dist/server/src/workers/manager.js +9 -2
  555. package/dist/server/src/workers/manager.js.map +1 -1
  556. package/dist/server/src/workers/types.d.ts +1 -0
  557. package/npm-shrinkwrap.json +209 -209
  558. package/package.json +28 -28
  559. package/dist/interface/assets/Assistant-bB8RBo-m.js +0 -1
  560. package/dist/interface/assets/Automations-BdZZW2eN.js +0 -2
  561. package/dist/interface/assets/Camera-Ct7ndOxr.js +0 -2
  562. package/dist/interface/assets/Camview-BjQdTHNh.js +0 -1
  563. package/dist/interface/assets/Config-CBTbYd5v.js +0 -2
  564. package/dist/interface/assets/ConfigTriggerGeofence-Bl2ZacbY.js +0 -1
  565. package/dist/interface/assets/Console-Cfk9MA9m.js +0 -1
  566. package/dist/interface/assets/CuiAssistantConversation-BHK_i56I.js +0 -5
  567. package/dist/interface/assets/CuiAutomationRunsDialog-B0ohEHw0.js +0 -1
  568. package/dist/interface/assets/CuiBottomSheet-NgX7VFao.js +0 -1
  569. package/dist/interface/assets/CuiCameraRecordings-BTD-CQAg.js +0 -1
  570. package/dist/interface/assets/CuiCameraTable-KPk46Xcl.js +0 -1
  571. package/dist/interface/assets/CuiDataTable-CsqH-RB1.js +0 -1
  572. package/dist/interface/assets/CuiMarkdownContent-DSArmS0V.js +0 -1
  573. package/dist/interface/assets/CuiSchema-ytExUVhI.js +0 -1
  574. package/dist/interface/assets/Faces-Cb6XMxDC.js +0 -1
  575. package/dist/interface/assets/Floorplan-DbqADtN1.js +0 -1
  576. package/dist/interface/assets/Instances-DrMzPD65.js +0 -1
  577. package/dist/interface/assets/Metrics-BUP_-7o7.css +0 -1
  578. package/dist/interface/assets/Metrics-CqhUnVRA.js +0 -12
  579. package/dist/interface/assets/Plugin-BDqNeTCT.css +0 -1
  580. package/dist/interface/assets/Plugin-DyOg_fbg.js +0 -1
  581. package/dist/interface/assets/PluginSearch-BgecD9Ob.js +0 -2
  582. package/dist/interface/assets/PluginSearch-C8xHKikH.js +0 -1
  583. package/dist/interface/assets/Plugins-CuujWEtM.js +0 -1
  584. package/dist/interface/assets/Recordings-9FJqCfdM.css +0 -1
  585. package/dist/interface/assets/Recordings-ths9khZr.js +0 -1
  586. package/dist/interface/assets/SensorEdit-BzoIH7QC.js +0 -1
  587. package/dist/interface/assets/Sensors-CK5uExfU.js +0 -2
  588. package/dist/interface/assets/Settings-DN5hFtw_.js +0 -1
  589. package/dist/interface/assets/SettingsAccount-BCrmon5O.js +0 -1
  590. package/dist/interface/assets/SettingsAccount-CSy1BAIH.js +0 -1
  591. package/dist/interface/assets/SettingsAppearance-h_XPZfQl.js +0 -1
  592. package/dist/interface/assets/SettingsAssistant-BESab92C.css +0 -1
  593. package/dist/interface/assets/SettingsAssistant-D8FmVbUL.js +0 -1
  594. package/dist/interface/assets/SettingsMqtt-DCkLIYpF.js +0 -1
  595. package/dist/interface/assets/SettingsRemote-DXlQKwlT.js +0 -2
  596. package/dist/interface/assets/Terminal-Dl-aAZME.js +0 -4
  597. package/dist/interface/assets/Training-B1oQjAr8.css +0 -1
  598. package/dist/interface/assets/Training-DdZjXgt1.js +0 -1
  599. package/dist/interface/assets/Updates-CkB1lXuo.js +0 -2
  600. package/dist/interface/assets/Workers-7yiebNkl.js +0 -2
  601. package/dist/interface/assets/api-DK2Bav9D.js +0 -4
  602. package/dist/interface/assets/api-DTCqDA-h.css +0 -2
  603. package/dist/interface/assets/assistant-BJ6xKcw_.js +0 -1
  604. package/dist/interface/assets/cloudHandoff-DtlquYGZ.js +0 -1
  605. package/dist/interface/assets/esm-4Hzzm93H.js +0 -1
  606. package/dist/interface/assets/esm-BrFPi5_4.js +0 -1
  607. package/dist/interface/assets/esm-C7pcdfXf.js +0 -1
  608. package/dist/interface/assets/esm-C8bsO829.js +0 -1
  609. package/dist/interface/assets/esm-CXzdnAMk.js +0 -1
  610. package/dist/interface/assets/esm-CZNGZkPu.js +0 -1
  611. package/dist/interface/assets/esm-D0iI7OVb.js +0 -1
  612. package/dist/interface/assets/esm-DKolm6KU.js +0 -1
  613. package/dist/interface/assets/esm-DTywI9gs.js +0 -1
  614. package/dist/interface/assets/esm-DifXcK9i.js +0 -1
  615. package/dist/interface/assets/esm-Dq5o-Xb4.js +0 -1
  616. package/dist/interface/assets/esm-IbQuUZ5l.js +0 -1
  617. package/dist/interface/assets/esm-Xre_AP5i.js +0 -1
  618. package/dist/interface/assets/esm-zYnXHhpH.js +0 -1
  619. package/dist/interface/assets/main-D74mRIxc.js +0 -3
  620. package/dist/interface/assets/native-CAujTO6L.js +0 -1
  621. package/dist/interface/assets/native-sQ88qazf.js +0 -1
  622. package/dist/interface/assets/plugin-D7K50k_y.js +0 -1
  623. package/dist/interface/assets/sensorIcons-DQVgryYP.js +0 -1
  624. package/dist/interface/assets/types-5rE8Tz0_.js +0 -1
  625. package/dist/interface/assets/ungrouped-D56FGIrg.js +0 -1
  626. package/dist/interface/assets/useBackupRestore-Crfd592q.js +0 -1
  627. package/dist/interface/assets/useUserOptions-BTRBUuE2.js +0 -1
  628. package/dist/interface/assets/vendor-gridstack-anPyIu9V.js +0 -3
  629. package/dist/interface/assets/web-3M-ddn4G.js +0 -1
  630. package/dist/interface/assets/web-BY80VGyU.js +0 -1
  631. package/dist/interface/assets/web-B_tUYyM0.js +0 -1
  632. package/dist/interface/assets/web-BjKL51lK-Bb5NYhpJ.js +0 -1
  633. package/dist/interface/assets/web-Bv-4PJGI.js +0 -1
  634. package/dist/interface/assets/web-C3Pk8qeB.js +0 -1
  635. package/dist/interface/assets/web-CLcvGPH6.js +0 -1
  636. package/dist/interface/assets/web-DO8gTOVJ.js +0 -1
  637. package/dist/interface/assets/web-DR5q_DmI.js +0 -1
  638. package/dist/interface/assets/web-DRHbG4Te.js +0 -1
  639. package/dist/interface/assets/web-DaQ8d8yk.js +0 -1
  640. package/dist/interface/assets/web-EVRW5whF.js +0 -1
  641. package/dist/interface/assets/web-S6Dk3UWN.js +0 -1
  642. package/dist/interface/assets/web-pWIp0wf0.js +0 -1
  643. package/dist/interface/assets/workbox-window.prod.es5-Dz5rcO1z.js +0 -1
  644. package/dist/interface/ha/Faces-C_svyTrr.js +0 -1282
  645. package/dist/interface/ha/Training-BEzPiXZg.js +0 -1512
@@ -1,4 +1,4 @@
1
- import{Ai as e,Bt as t,Ht as n,Kt as r,Vr as i,X as a,z as o,zt as s}from"./vendor-cameraui-QXD8jkcj.js";import{In as c,It as l,Mn as u,Nn as d,Sn as f,Y as p,ct as m,ft as h,h as g,kr as _,o as v,ur as y,vr as b}from"./api-DK2Bav9D.js";import{$n as x,C as S,Cn as C,Cr as w,Dn as T,Fn as ee,In as E,Jn as D,Pn as te,Rn as O,S as k,Sr as ne,Xn as A,Xt as j,_r as re,br as M,cn as N,dn as P,dr as F,er as I,gn as L,hn as R,ln as z,lr as ie,nn as ae,nr as B,or as V,rn as H,sn as U,sr as W,un as G,ur as oe,vn as K,x as q,yr as J,zn as se}from"./vendor-DGke_6M4.js";import{a as Y}from"./intercomService-BnA-FQ0Q.js";import{i as ce,r as le}from"./vendor-zod-CBbC1rE7.js";import{nt as ue}from"./types-5rE8Tz0_.js";import{A as de,B as fe,C as pe,D as me,E as he,M as ge,O as _e,R as ve,k as ye,q as be,z as xe}from"./vendor-primevue-CCUqY55W.js";import{t as Se}from"./close-BbEPZQqa.js";import{n as Ce,t as we}from"./eye-off-JCu1iUer.js";import{t as Te}from"./plus--kDl8ben.js";import{n as Ee,r as De,t as Oe}from"./CuiSchema-ytExUVhI.js";import{t as ke}from"./rooms-BqPyo8jc.js";import{c as Ae,l as je,n as Me,o as Ne,r as Pe,t as Fe}from"./cameraSources-QJfUDOQJ.js";import{t as Ie}from"./CuiDataTable-CsqH-RB1.js";import{t as Le}from"./CuiCameraTable-BOkfp_5M.js";import{t as Re}from"./plus-CHPYoMO_.js";import{t as ze}from"./radar-B3ra28GD.js";var Be={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Ve(e,t){return E(),P(`svg`,Be,[...t[0]||=[N(`path`,{fill:`currentColor`,d:`M12.5 9q-.275 0-.425-.25t0-.5L15 3.175q.2-.325.5-.387t.65.112q1.725.775 3.05 2.162T21.25 8.2q.125.325-.038.563T20.7 9zm-3.575 1.225l-3-5.2q-.2-.325-.1-.65t.4-.525Q7.425 3 8.888 2.5T12 2q.375 0 .825.038t.75.087q.35.05.463.3t-.063.55L9.8 10.225q-.15.25-.437.25t-.438-.25M2.85 14q-.275 0-.5-.187t-.275-.463t-.062-.6T2 12q0-1.575.513-3.137T4.1 5.9q.275-.35.638-.35t.562.375l4.2 7.325q.15.25-.012.5T9.05 14zm5 7.1q-1.65-.8-3.025-2.175T2.75 15.8q-.125-.325.05-.562T3.325 15h8.15q.275 0 .425.25t0 .5l-2.875 5.025q-.2.325-.5.425t-.675-.1M12 22q-.35 0-.788-.038t-.762-.087q-.35-.05-.475-.3t.05-.55l4.125-7.2q.15-.25.5-.25t.5.25l2.95 5.125q.175.275.113.6t-.413.6q-1.15.85-2.687 1.35T12 22m6.775-3.875l-4.25-7.375q-.15-.25.013-.5t.437-.25h6.175q.275 0 .5.188t.275.462t.062.6T22 12q0 1.575-.513 3.163T19.9 18.125q-.2.275-.575.288t-.55-.288`},null,-1)]])}var He=W({name:`material-symbols-camera-rounded`,render:Ve}),Ue="#### Source: Bubble\n\nOther names: [ESeeCloud](http://www.eseecloud.com/), [dvr163](http://help.dvr163.com/).\n\n- you can skip `username`, `password`, `port`, `ch` and `stream` if they are default\n- setup separate streams for different channels and streams\n\n```yaml\nstreams:\n camera1: bubble://username:password@192.168.1.123:34567/bubble/live?ch=0&stream=0\n```\n\n_Source: [Go2Rtc Bubble](https://github.com/seydx/go2rtc#source-bubble)_\n",We='#### Source: CUI\n\nThis source can be used to stream dynamically generated, go2rtc compatible, URLs. The source is just a placeholder for a `https://` URL.\n\n```yaml\nstreams:\n camera1: cui://192.168.1.123:34567/some-identifier-if-you-want\n```\n\nThe URL will be changed to `https://192.168.1.123:34567/some-identifier-if-you-want` and the response must be like this:\n\n```json\n{\n {\n "streamUrl": "rtsp://192.168.1.1:554/stream",\n }\n}\n```\n\nGo2rtc will then use the `streamUrl` to stream the video. The `streamUrl` can be any URL that is compatible with go2rtc. The response must be a valid JSON object with the `streamUrl` key.\n',Ge=`#### Source: Doorbird
1
+ import{B as e,Bt as t,Mi as n,Ur as r,Ut as i,Vt as a,Z as o,qt as s}from"./vendor-cameraui-CK4yHsJi.js";import{Ar as c,Cn as l,It as u,Ln as d,Nn as f,Pn as p,Y as m,ct as h,dr as g,ft as _,h as v,o as y,yr as b}from"./api-C1mraOYr.js";import{$n as x,C as S,Cn as C,Cr as w,Dn as T,Fn as ee,In as E,Jn as D,Pn as te,Rn as O,S as k,Sr as ne,Xn as A,Xt as j,_r as M,br as N,cn as P,dn as F,dr as I,er as L,gn as R,hn as z,ln as B,lr as re,nn as ie,nr as ae,or as V,rn as H,sn as U,sr as W,un as G,ur as oe,vn as K,x as q,yr as J,zn as se}from"./vendor-gFkr2qsZ.js";import{a as Y}from"./intercomService-CjoJaOZ7.js";import{i as ce,r as le}from"./vendor-zod-CBbC1rE7.js";import{nt as ue}from"./types-BAwhu9iv.js";import{A as de,B as fe,C as pe,D as me,E as he,M as ge,O as _e,R as ve,k as ye,q as be,z as xe}from"./vendor-primevue-Cmp3VjIC.js";import{t as Se}from"./close-CMxyM4v9.js";import{n as Ce,t as we}from"./eye-off-CSU0U8g7.js";import{t as Te}from"./plus-CySoovdr.js";import{n as Ee,r as De,t as Oe}from"./CuiSchema-pAAVh28m.js";import{t as ke}from"./rooms-LBxn-Uuu.js";import{c as Ae,l as je,n as Me,o as Ne,r as Pe,t as Fe}from"./cameraSources-DEGJDtmK.js";import{t as Ie}from"./CuiDataTable-JlD7Agky.js";import{t as Le}from"./CuiCameraTable-DBRfGX3I.js";import{t as Re}from"./plus-Bp4q9G7S.js";import{t as ze}from"./radar-CyYAmume.js";var Be={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Ve(e,t){return E(),F(`svg`,Be,[...t[0]||=[P(`path`,{fill:`currentColor`,d:`M12.5 9q-.275 0-.425-.25t0-.5L15 3.175q.2-.325.5-.387t.65.112q1.725.775 3.05 2.162T21.25 8.2q.125.325-.038.563T20.7 9zm-3.575 1.225l-3-5.2q-.2-.325-.1-.65t.4-.525Q7.425 3 8.888 2.5T12 2q.375 0 .825.038t.75.087q.35.05.463.3t-.063.55L9.8 10.225q-.15.25-.437.25t-.438-.25M2.85 14q-.275 0-.5-.187t-.275-.463t-.062-.6T2 12q0-1.575.513-3.137T4.1 5.9q.275-.35.638-.35t.562.375l4.2 7.325q.15.25-.012.5T9.05 14zm5 7.1q-1.65-.8-3.025-2.175T2.75 15.8q-.125-.325.05-.562T3.325 15h8.15q.275 0 .425.25t0 .5l-2.875 5.025q-.2.325-.5.425t-.675-.1M12 22q-.35 0-.788-.038t-.762-.087q-.35-.05-.475-.3t.05-.55l4.125-7.2q.15-.25.5-.25t.5.25l2.95 5.125q.175.275.113.6t-.413.6q-1.15.85-2.687 1.35T12 22m6.775-3.875l-4.25-7.375q-.15-.25.013-.5t.437-.25h6.175q.275 0 .5.188t.275.462t.062.6T22 12q0 1.575-.513 3.163T19.9 18.125q-.2.275-.575.288t-.55-.288`},null,-1)]])}var He=W({name:`material-symbols-camera-rounded`,render:Ve}),Ue="#### Source: Bubble\n\nOther names: [ESeeCloud](http://www.eseecloud.com/), [dvr163](http://help.dvr163.com/).\n\n- you can skip `username`, `password`, `port`, `ch` and `stream` if they are default\n- setup separate streams for different channels and streams\n\n```yaml\nstreams:\n camera1: bubble://username:password@192.168.1.123:34567/bubble/live?ch=0&stream=0\n```\n\n_Source: [Go2Rtc Bubble](https://github.com/seydx/go2rtc#source-bubble)_\n",We='#### Source: CUI\n\nThis source can be used to stream dynamically generated, go2rtc compatible, URLs. The source is just a placeholder for a `https://` URL.\n\n```yaml\nstreams:\n camera1: cui://192.168.1.123:34567/some-identifier-if-you-want\n```\n\nThe URL will be changed to `https://192.168.1.123:34567/some-identifier-if-you-want` and the response must be like this:\n\n```json\n{\n {\n "streamUrl": "rtsp://192.168.1.1:554/stream",\n }\n}\n```\n\nGo2rtc will then use the `streamUrl` to stream the video. The `streamUrl` can be any URL that is compatible with go2rtc. The response must be a valid JSON object with the `streamUrl` key.\n',Ge=`#### Source: Doorbird
2
2
 
3
3
  [Doorbird](https://www.doorbird.com/) proprietary camera protocol with **two way audio** support.
4
4
 
@@ -648,4 +648,4 @@ streams:
648
648
  \`\`\`
649
649
 
650
650
  _Source: [Go2Rtc Yandex](https://github.com/AlexxIT/go2rtc/tree/master/internal/yandex)_
651
- `,_t={class:`flex flex-col gap-6`},vt={class:`flex gap-2 items-center w-full`},yt={class:`flex gap-2 items-center w-full`},bt={class:`text-color text-sm`},xt={class:`flex flex-col gap-6`},St=[`for`],Ct=[`for`],wt={class:`w-full flex flex-col gap-2`},Tt={class:`flex items-center gap-4`},Et={class:`flex flex-col field-switch-gap`},Dt=[`for`],Ot={class:`flex items-center gap-4`},kt={class:`flex flex-col field-switch-gap`},At=[`for`],jt={class:`flex items-center gap-4`},Mt={class:`flex flex-col field-switch-gap`},Nt=[`for`],Pt={class:`flex items-center gap-4`},Ft={class:`flex flex-col field-switch-gap`},It=[`for`],Lt={class:`flex flex-col gap-6`},Rt={class:`flex flex-col field-gap`},zt=[`for`],Bt={key:0,class:`w-full flex flex-row gap-2`},Vt=`rtsp://user:pass@192.168.1.50:554/stream`,Ht=K({__name:`CuiCameraSources`,props:{sources:{},isLoading:{type:Boolean},allowAddRemoveSources:{type:Boolean,default:!1}},setup(e,{expose:n}){let a=new l,s=e,c=m(),{t:u}=i(),{mutateAsync:d,isPending:f}=a.previewCameraQuery(),p=Object.assign({"../../markdowns/bubble.md":Ue,"../../markdowns/cui.md":We,"../../markdowns/doorbird.md":Ge,"../../markdowns/dvrip.md":Ke,"../../markdowns/echo.md":qe,"../../markdowns/exec.md":Je,"../../markdowns/expr.md":Ye,"../../markdowns/ffmpeg.md":Xe,"../../markdowns/gopro.md":Ze,"../../markdowns/hass.md":Qe,"../../markdowns/homekit.md":$e,"../../markdowns/http.md":et,"../../markdowns/isapi.md":tt,"../../markdowns/ivideon.md":nt,"../../markdowns/kasa.md":rt,"../../markdowns/nest.md":it,"../../markdowns/onvif.md":at,"../../markdowns/ring.md":ot,"../../markdowns/roborock.md":st,"../../markdowns/rtmp.md":ct,"../../markdowns/rtsp.md":lt,"../../markdowns/tapo.md":ut,"../../markdowns/tuya.md":dt,"../../markdowns/webrtc.md":ft,"../../markdowns/webtorrent.md":pt,"../../markdowns/wyze.md":mt,"../../markdowns/xiaomi.md":ht,"../../markdowns/yandex.md":gt}),h=F([`high-resolution`,`mid-resolution`,`low-resolution`,`snapshot`]),_=F(s.sources.map((e,t)=>t)),v=U(()=>s.isLoading||f.value);function y(e){return e.urls.some(Me)}function b(e){let t=Fe(e);if(!t)return;let n=t.replace(/[:/]+$/,``);return p[`../../markdowns/${n}.md`]}function S(e){return!!b(e)}function C(e){s.sources[e].urls.push(``)}function ee(e,t){s.sources[e].urls.splice(t,1)}function D(e,t,n){s.sources[e].urls[t]=n}function te(e,t){e.role=t,t===`snapshot`&&(e.useForSnapshot=!1,e.hotMode=!1,e.preload=!1)}function ne(){s.sources.push({_id:g(8),name:``,role:null,urls:[``],useForSnapshot:!1,hotMode:!0,preload:!0,muted:!1}),_.value=[s.sources.length]}function A(e){s.sources.splice(e,1)}function re(e){let t=b(e);t&&c.openTextDialog({data:{title:u(`components.dialog.title.information`),hideConfirmButton:!0,contentText:t,markdown:!0}})}async function ie(e){let t=Pe(e);if(t)try{let e=await d({cameraData:{url:t}});c.openImageDialog({data:{title:u(`components.dialog.title.preview`),src:`data:image/jpeg;base64,${e}`,hideConfirmButton:!0}})}catch{}}return n({newSource:ne}),(n,i)=>{let a=he,s=Se,c=t,l=ye,u=o,d=xe,f=fe,p=ge,m=be,g=Ee,b=He,ne=ve,F=de,B=_e,U=me,W=r;return E(),P(`div`,_t,[L(U,{value:J(_),"onUpdate:value":i[0]||=e=>V(_)?_.value=e:null,multiple:``},{default:x(()=>[(E(!0),P(H,null,O(e.sources,(t,r)=>(E(),z(B,{key:t._id,value:r,class:M({"border-b-0":r===e.sources.length-1})},{default:x(()=>[L(l,{class:M({"px-0 pt-0":r===0,"px-0":r!==0,"pb-5":r===e.sources.length-1})},{default:x(()=>[N(`div`,vt,[N(`div`,yt,[N(`span`,bt,w(n.$t(`components.dialog.components.new_camera.source`)+`: `),1),L(a,{class:`text-color text-xs border-[1px] bg-primary-500/20 border-primary-500/30 py-2 px-3 rounded-full overflow-hidden`,label:t.name===``?n.$t(`components.dialog.components.new_camera.unknown`):t.name},null,8,[`label`])]),e.allowAddRemoveSources&&e.sources.length>1?(E(),z(c,{key:0,text:``,rounded:``,severity:`danger`,class:`cui-icon-md ml-auto mr-2`,loading:J(v),onClick:e=>A(r)},{icon:x(()=>[L(s,{width:`100%`,height:`100%`})]),_:1},8,[`loading`,`onClick`])):G(``,!0)])]),_:2},1032,[`class`]),L(F,{pt:{content:{class:{"px-0":!0,"pb-5":r===e.sources.length-1}}}},{default:x(()=>[N(`div`,xt,[L(J(k),{modelValue:t.name,"onUpdate:modelValue":e=>t.name=e,modelModifiers:{trim:!0},name:`sources[${r}].name`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:e,errors:t})=>[N(`label`,{for:`sources[${r}].name`,class:`cui-label`},w(n.$t(`components.form.label.source_name`)),9,St),L(d,null,{default:x(()=>[L(u,T({ref_for:!0},e,{invalid:t.length>0,loading:J(v),type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`sources[${r}].name`,class:`cui-input-error`},null,8,[`name`])]),_:2},1024),t.length?G(``,!0):(E(),z(f,{key:0,severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[R(w(n.$t(`components.form.hint.source_name`)),1)]),_:1}))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`name`]),L(J(k),{"model-value":t.role,name:`sources[${r}].role`,as:`div`,class:`flex flex-col field-gap`},{default:x(({errors:i})=>[N(`label`,{for:`sources[${r}].role`,class:`cui-label`},w(n.$t(`components.form.label.source_role`)),9,Ct),L(d,null,{default:x(()=>[L(p,{"model-value":t.role,options:J(h).filter(n=>!e.sources.some(e=>e.role===n&&e._id!==t._id)),invalid:i.length>0,loading:J(v),onValueChange:e=>te(t,e)},null,8,[`model-value`,`options`,`invalid`,`loading`,`onValueChange`])]),_:2},1024),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`sources[${r}].role`,class:`cui-input-error`},null,8,[`name`])]),_:2},1024),i.length?G(``,!0):(E(),z(f,{key:0,severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[R(w(n.$t(`components.form.hint.source_role`)),1)]),_:1}))]),_:2},1032,[`model-value`,`name`]),N(`div`,wt,[t.role!==`snapshot`&&e.sources.length>1?(E(),z(J(k),{key:0,"model-value":t.useForSnapshot,value:!0,"unchecked-value":!1,type:`checkbox`,name:`sources[${r}].useForSnapshot`,as:`div`,class:`flex flex-col field-gap cui-toggle-switch`},{default:x(({field:i,errors:a})=>[N(`div`,Tt,[N(`div`,Et,[N(`label`,{for:`sources[${r}].useForSnapshot`,class:`cui-label-switch`},w(n.$t(`components.form.label.use_for_snapshot`)),9,Dt),L(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:x(()=>[R(w(n.$t(`components.form.hint.use_for_snapshot`)),1)]),_:1}),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`sources[${r}].useForSnapshot`,class:`cui-input-switch-error`},null,8,[`name`])]),_:2},1024)]),L(m,T({"model-value":t.useForSnapshot},{ref_for:!0},i,{invalid:a.length>0,loading:J(v),disabled:e.sources.some(e=>(e.useForSnapshot||e.role===`snapshot`)&&e._id!==t._id),class:`ml-auto shrink-0`,onValueChange:e=>t.useForSnapshot=e}),null,16,[`model-value`,`invalid`,`loading`,`disabled`,`onValueChange`])])]),_:2},1032,[`model-value`,`name`])):G(``,!0),t.role===`snapshot`?G(``,!0):(E(),z(J(k),{key:1,"model-value":t.hotMode,value:!0,"unchecked-value":!1,type:`checkbox`,name:`sources[${r}].hotMode`,as:`div`,class:`flex flex-col field-gap cui-toggle-switch`},{default:x(({field:e,errors:i})=>[N(`div`,Ot,[N(`div`,kt,[N(`label`,{for:`sources[${r}].hotMode`,class:`cui-label-switch`},w(n.$t(`components.form.label.hot_mode`)),9,At),L(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:x(()=>[R(w(n.$t(`components.form.hint.hot_mode`)),1)]),_:1}),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`sources[${r}].hotMode`,class:`cui-input-switch-error`},null,8,[`name`])]),_:2},1024)]),L(m,T({"model-value":t.hotMode},{ref_for:!0},e,{invalid:i.length>0,loading:J(v),class:`ml-auto shrink-0`,onValueChange:e=>t.hotMode=e}),null,16,[`model-value`,`invalid`,`loading`,`onValueChange`])])]),_:2},1032,[`model-value`,`name`])),t.role===`snapshot`?G(``,!0):(E(),z(J(k),{key:2,"model-value":t.preload,value:!0,"unchecked-value":!1,type:`checkbox`,name:`sources[${r}].preload`,as:`div`,class:`flex flex-col field-gap cui-toggle-switch`},{default:x(({field:e,errors:i})=>[N(`div`,jt,[N(`div`,Mt,[N(`label`,{for:`sources[${r}].preload`,class:`cui-label-switch`},w(n.$t(`components.form.label.preload`)),9,Nt),L(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:x(()=>[R(w(n.$t(`components.form.hint.preload`)),1)]),_:1}),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`sources[${r}].preload`,class:`cui-input-switch-error`},null,8,[`name`])]),_:2},1024)]),L(m,T({"model-value":t.preload},{ref_for:!0},e,{invalid:i.length>0,loading:J(v),class:`ml-auto shrink-0`,onValueChange:e=>t.preload=e}),null,16,[`model-value`,`invalid`,`loading`,`onValueChange`])])]),_:2},1032,[`model-value`,`name`])),t.role===`snapshot`?G(``,!0):(E(),z(J(k),{key:3,"model-value":t.muted,value:!0,"unchecked-value":!1,type:`checkbox`,name:`sources[${r}].muted`,as:`div`,class:`flex flex-col field-gap cui-toggle-switch`},{default:x(({field:e,errors:i})=>[N(`div`,Pt,[N(`div`,Ft,[N(`label`,{for:`sources[${r}].muted`,class:`cui-label-switch`},w(n.$t(`components.form.label.muted`)),9,It),L(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:x(()=>[R(w(n.$t(`components.form.hint.muted`)),1)]),_:1}),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`sources[${r}].muted`,class:`cui-input-switch-error`},null,8,[`name`])]),_:2},1024)]),L(m,T({"model-value":t.muted},{ref_for:!0},e,{invalid:i.length>0,loading:J(v),class:`ml-auto shrink-0`,onValueChange:e=>t.muted=e}),null,16,[`model-value`,`invalid`,`loading`,`onValueChange`])])]),_:2},1032,[`model-value`,`name`]))]),N(`div`,Lt,[N(`div`,Rt,[N(`label`,{for:`sources[${r}].urls[]`,class:`cui-label`},w(n.$t(`components.form.label.sources`)),9,zt),L(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[R(w(y(t)?n.$t(`views.devices.managed_source_hint`):n.$t(`components.form.hint.source_urls`)),1)]),_:2},1024)]),(E(!0),P(H,null,O(t.urls,(e,i)=>(E(),P(H,{key:i},[J(Me)(e)?(E(),P(`div`,Bt,[L(d,null,{default:x(()=>[L(u,{"model-value":e,readonly:``,loading:J(v),type:`text`},null,8,[`model-value`,`loading`])]),_:2},1024)])):(E(),z(J(k),{key:1,"model-value":e,name:`sources[${r}].urls[${i}]`,as:`div`,class:`flex flex-col field-gap w-full`},{default:x(({errors:a})=>[L(d,null,{default:x(()=>[L(u,{"model-value":e,invalid:a.length>0,loading:J(v),type:`text`,placeholder:Vt,"onUpdate:modelValue":e=>D(r,i,e??``)},null,8,[`model-value`,`invalid`,`loading`,`onUpdate:modelValue`]),L(ne,null,{default:x(()=>[I((E(),z(c,{text:``,rounded:``,severity:`secondary`,disabled:J(v)||!S(e),class:`border-right-color`,onClick:t=>re(e)},{icon:x(()=>[L(g,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`,`onClick`])),[[W,{value:n.$t(`components.dialog.components.new_camera.protocol_info`)},void 0,{top:!0}]]),I((E(),z(c,{text:``,rounded:``,severity:`secondary`,disabled:J(v)||!J(Fe)(e),class:`border-right-color`,onClick:t=>ie(e)},{icon:x(()=>[L(b,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`,`onClick`])),[[W,{value:n.$t(`components.dialog.components.new_camera.test_source`)},void 0,{top:!0}]]),t.urls.length>1?(E(),z(c,{key:0,text:``,rounded:``,severity:`danger`,disabled:J(v),onClick:ae(e=>ee(r,i),[`prevent`])},{icon:x(()=>[L(s,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`,`onClick`])):G(``,!0)]),_:2},1024)]),_:2},1024),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`sources[${r}].urls[${i}]`,class:`cui-input-error`},null,8,[`name`])]),_:2},1024),L(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[R(w(J(Fe)(e)?n.$t(`components.form.hint.source_detected_protocol`,{protocol:J(Fe)(e)}):n.$t(`components.form.hint.source_url`)),1)]),_:2},1024)]),_:2},1032,[`model-value`,`name`]))],64))),128)),y(t)?G(``,!0):(E(),z(c,{key:0,loading:J(v),label:n.$t(`components.form.button.add_source`),class:`ml-auto cui-button-medium`,onClick:e=>C(r)},null,8,[`loading`,`label`,`onClick`]))])])]),_:2},1032,[`pt`])]),_:2},1032,[`value`,`class`]))),128))]),_:1},8,[`value`])])}}}),Ut={class:`flex flex-col gap-6`},Wt={for:`name`,class:`cui-label`},Gt={class:`flex flex-col field-gap`},Kt={for:`type`,class:`cui-label`},qt={class:`flex flex-col field-gap`},Jt={for:`room`,class:`cui-label`},Yt={class:`flex gap-2`},Xt={class:`text-color font-normal`},Zt={class:`flex flex-col gap-6`},Qt={for:`info.manufacturer`,class:`cui-label`},$t={for:`info.model`,class:`cui-label`},en={for:`info.hardware`,class:`cui-label`},tn={for:`info.serialNumber`,class:`cui-label`},nn={for:`info.firmwareVersion`,class:`cui-label`},rn={for:`info.supportUrl`,class:`cui-label`},an=K({__name:`CuiCameraDetailsFields`,props:{form:{},isLoading:{type:Boolean}},setup(e){let n=new ke,a=e,s=m(),{t:c}=i(),{data:l,isBusy:u}=n.getRoomsQuery(),{mutateAsync:d}=n.createRoomMutation(),f=F([`camera`,`doorbell`]),p=U(()=>(l.value?.levels.length??0)>0),h=U(()=>je(l.value,c));function g(e){a.form.roomId=e}function _(){s.openComponentDialog(Ae,{data:{title:c(`components.dialog.title.create_room`),confirmText:c(`components.form.button.add`),contentProps:{}},onConfirm:async e=>{e&&g((await d({name:e,levelId:null,outdoor:!1,publicSpace:!1,note:``})).id)}})}return(n,i)=>{let a=o,s=xe,c=fe,l=ge,d=Te,m=t,v=ye,y=de,b=_e,S=me,C=r;return E(),P(`div`,Ut,[L(J(k),{modelValue:e.form.name,"onUpdate:modelValue":i[0]||=t=>e.form.name=t,modelModifiers:{trim:!0},name:`name`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:t,errors:r})=>[N(`label`,Wt,w(n.$t(`components.form.label.name`)),1),L(s,null,{default:x(()=>[L(a,T(t,{invalid:r.length>0,loading:e.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`name`,class:`cui-input-error`})]),_:1}),r.length?G(``,!0):(E(),z(c,{key:0,severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[R(w(n.$t(`components.form.hint.camera_name`)),1)]),_:1}))]),_:1},8,[`modelValue`]),N(`div`,Gt,[N(`label`,Kt,w(n.$t(`components.form.label.type`)),1),L(s,null,{default:x(()=>[L(l,{"model-value":e.form.type,options:J(f),loading:e.isLoading,type:`text`,onValueChange:i[1]||=t=>e.form.type=t},null,8,[`model-value`,`options`,`loading`])]),_:1})]),N(`div`,qt,[N(`label`,Jt,w(n.$t(`components.form.label.room`)),1),N(`div`,Yt,[L(l,{"model-value":e.form.roomId,options:J(h),"option-label":`label`,"option-value":`value`,"option-group-label":J(p)?`label`:void 0,"option-group-children":J(p)?`items`:void 0,loading:J(u),class:`w-full`,"onUpdate:modelValue":i[2]||=e=>g(e)},null,8,[`model-value`,`options`,`option-group-label`,`option-group-children`,`loading`]),I((E(),z(m,{severity:`secondary`,outlined:``,class:`shrink-0 h-[42px] w-[42px] p-0`,onClick:_},{icon:x(()=>[L(d,{class:`w-4 h-4`})]),_:1})),[[C,n.$t(`components.form.button.create_room`),void 0,{top:!0}]])]),L(c,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[R(w(n.$t(`components.form.hint.room`)),1)]),_:1})]),se(n.$slots,`default`),L(S,null,{default:x(()=>[L(b,{value:`branding`},{default:x(()=>[L(v,{class:`px-0 pt-0`},{default:x(()=>[N(`span`,Xt,w(n.$t(`components.camera_options.branding`)),1)]),_:1}),L(y,{pt:{content:{class:`px-0`}}},{default:x(()=>[N(`div`,Zt,[L(J(k),{modelValue:e.form.info.manufacturer,"onUpdate:modelValue":i[3]||=t=>e.form.info.manufacturer=t,modelModifiers:{trim:!0},name:`info.manufacturer`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:t,errors:r})=>[N(`label`,Qt,w(n.$t(`components.form.label.manufacturer`)),1),L(s,null,{default:x(()=>[L(a,T(t,{invalid:r.length>0,loading:e.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`info.manufacturer`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),L(J(k),{modelValue:e.form.info.model,"onUpdate:modelValue":i[4]||=t=>e.form.info.model=t,modelModifiers:{trim:!0},name:`info.model`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:t,errors:r})=>[N(`label`,$t,w(n.$t(`components.form.label.model`)),1),L(s,null,{default:x(()=>[L(a,T(t,{invalid:r.length>0,loading:e.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`info.model`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),L(J(k),{modelValue:e.form.info.hardware,"onUpdate:modelValue":i[5]||=t=>e.form.info.hardware=t,modelModifiers:{trim:!0},name:`info.hardware`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:t,errors:r})=>[N(`label`,en,w(n.$t(`components.form.label.hardware_version`)),1),L(s,null,{default:x(()=>[L(a,T(t,{invalid:r.length>0,loading:e.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`info.hardware`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),L(J(k),{modelValue:e.form.info.serialNumber,"onUpdate:modelValue":i[6]||=t=>e.form.info.serialNumber=t,modelModifiers:{trim:!0},name:`info.serialNumber`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:t,errors:r})=>[N(`label`,tn,w(n.$t(`components.form.label.serial_number`)),1),L(s,null,{default:x(()=>[L(a,T(t,{invalid:r.length>0,loading:e.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`info.serialNumber`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),L(J(k),{modelValue:e.form.info.firmwareVersion,"onUpdate:modelValue":i[7]||=t=>e.form.info.firmwareVersion=t,modelModifiers:{trim:!0},name:`info.firmwareVersion`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:t,errors:r})=>[N(`label`,nn,w(n.$t(`components.form.label.firmware_version`)),1),L(s,null,{default:x(()=>[L(a,T(t,{invalid:r.length>0,loading:e.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`info.firmwareVersion`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),L(J(k),{modelValue:e.form.info.supportUrl,"onUpdate:modelValue":i[8]||=t=>e.form.info.supportUrl=t,modelModifiers:{trim:!0},name:`info.supportUrl`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:t,errors:r})=>[N(`label`,rn,w(n.$t(`components.form.label.support_url`)),1),L(s,null,{default:x(()=>[L(a,T(t,{invalid:r.length>0,loading:e.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),L(j,{name:`fade`},{default:x(()=>[L(J(q),{name:`info.supportUrl`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`])])]),_:1})]),_:1})]),_:1})])}}}),on={disabled:!1,name:``,type:`camera`,room:`Default`,roomId:null,info:{manufacturer:``,model:``,hardware:``,serialNumber:``,firmwareVersion:``,supportUrl:``},sources:[{_id:g(8),name:``,role:`high-resolution`,urls:[``],useForSnapshot:!1,hotMode:!0,preload:!0,muted:!1,backchannelDisabled:!1}],interfaceSettings:{streamingMode:`auto`,streamingSource:`high-resolution`,playbackSource:`auto`,activityMode:`always-on`,aspectRatio:`16:9`},plugins:[],assignments:{}},sn={class:`card-title`},cn={class:`card-title`},ln={class:`w-full flex items-center justify-center mt-4`},un=K({__name:`AddCamera`,props:{camera:{default:()=>on}},setup(e,{expose:n}){let r=new l,o=e,s=_(),{t:c}=i(),{mutateAsync:u,isPending:d}=r.createCameraQuery(),{camera:f}=re(o),p=D(`formRef`),m=D(`sourcesRef`),h=F(v(f.value)),g=U(()=>d.value);async function y(){if(!(await p.value?.validate())?.valid)return s.add({severity:`error`,detail:c(`components.toast.validation_failed`),life:3e3}),null;let e=v(h.value),t={...ue(),...e,sources:e.sources.map(e=>({...e,muted:e.muted??!1,backchannelDisabled:e.backchannelDisabled??!1,urls:e.urls.map(Pe).filter(Boolean)}))};await u({cameraData:t})}return n({isLoading:g,onSave:y,onConfirm:y}),(e,n)=>{let r=an,i=a,o=Ht,s=De,c=t;return E(),P(`div`,null,[L(J(S),{ref_key:`formRef`,ref:p,class:`flex flex-col w-full gap-6`,"validation-schema":J(Ne)},{default:x(()=>[N(`div`,null,[N(`span`,sn,w(e.$t(`components.dialog.components.new_camera.camera`)),1),L(i,{class:`cui-card`},{content:x(()=>[L(r,{form:J(h),"is-loading":J(g)},null,8,[`form`,`is-loading`])]),_:1})]),N(`div`,null,[N(`span`,cn,w(e.$t(`components.form.label.sources`)),1),L(i,{class:`cui-card border-color-inner`,pt:{body:{class:`pb-0`}}},{content:x(()=>[L(o,{ref_key:`sourcesRef`,ref:m,sources:J(h).sources,"is-loading":J(g),"allow-add-remove-sources":!0},null,8,[`sources`,`is-loading`])]),_:1}),N(`div`,ln,[L(c,{text:``,rounded:``,loading:J(g),class:`cui-icon-2xl`,onClick:n[0]||=e=>J(m)?.newSource()},{icon:x(()=>[L(s,{width:`100%`,height:`100%`})]),_:1},8,[`loading`])])])]),_:1},8,[`validation-schema`])])}}}),dn={class:`card-title`},fn={key:0,class:`flex flex-col gap-6`},pn={class:`cui-label`},mn={class:`card-title`},hn=K({__name:`ConfirmCamera`,props:{draft:{},onConfirm:{type:Function}},setup(e,{expose:t}){let n=le({name:ce().trim().min(1)}).passthrough(),r=e,s=_(),{t:c}=i(),l=D(`formRef`),u=F(v(r.draft)),d=F({name:u.value.name,type:u.value.type,room:u.value.room,roomId:u.value.roomId,info:u.value.info,sources:u.value.sources.map(e=>({...e,urls:[...e.urls]}))}),f=F(!1),p=U(()=>{let e=[];return u.value.pluginInfo?.name&&e.push({label:c(`views.devices.plugin`),value:u.value.pluginInfo.name}),u.value.nativeId&&e.push({label:c(`views.devices.native_id`),value:u.value.nativeId}),e}),m=U(()=>f.value);async function h(){if(!(await l.value?.validate())?.valid)return s.add({severity:`error`,detail:c(`components.toast.validation_failed`),life:3e3}),null;f.value=!0;try{let e={...u.value,name:d.value.name,type:d.value.type,room:d.value.room,roomId:d.value.roomId,info:d.value.info,sources:d.value.sources.map(e=>({...e,urls:e.urls.map(Pe).filter(Boolean)}))};await r.onConfirm(e)}catch(e){return s.add({severity:`error`,summary:c(`views.devices.confirm_title`),detail:e,life:3e3}),null}finally{f.value=!1}}return t({isLoading:m,onConfirm:h}),(e,t)=>{let r=o,i=xe,s=an,c=a,u=Ht;return E(),P(`div`,null,[L(J(S),{ref_key:`formRef`,ref:l,class:`flex flex-col w-full gap-6`,"validation-schema":J(n)},{default:x(()=>[N(`div`,null,[N(`span`,dn,w(e.$t(`components.dialog.components.new_camera.camera`)),1),L(c,{class:`cui-card`},{content:x(()=>[L(s,{form:J(d),"is-loading":J(m)},{default:x(()=>[J(p).length?(E(),P(`div`,fn,[(E(!0),P(H,null,O(J(p),e=>(E(),P(`div`,{key:e.label,class:`flex flex-col field-gap`},[N(`label`,pn,w(e.label),1),L(i,null,{default:x(()=>[L(r,{"model-value":e.value,readonly:``,type:`text`},null,8,[`model-value`])]),_:2},1024)]))),128))])):G(``,!0)]),_:1},8,[`form`,`is-loading`])]),_:1})]),N(`div`,null,[N(`span`,mn,w(e.$t(`components.form.label.sources`)),1),L(c,{class:`cui-card border-color-inner`,pt:{body:{class:`pb-0`}}},{content:x(()=>[L(u,{sources:J(d).sources,"is-loading":J(m),"allow-add-remove-sources":!0},null,8,[`sources`,`is-loading`])]),_:1})])]),_:1},8,[`validation-schema`])])}}}),gn={class:`flex flex-col gap-6`},_n={key:0,class:`flex flex-col field-gap`},vn={class:`cui-label`},yn={key:1,class:`text-center py-4`},bn={class:`text-muted`},xn=K({__name:`ConnectionSchema`,props:{camera:{},schema:{},onConnect:{type:Function}},setup(e,{expose:t}){let n=e,r=Y(),a=_(),{t:s}=i(),c=C(`dialogRefProps`),{schema:l}=re(n),u=D(`schemaFormRef`),d=F(!1),f=U(()=>({schema:l.value,config:{}})),p=U(()=>!!(c.loading?.value||d.value));async function m(){d.value=!0;try{let e={};if(l.value.length>0){let t=await u.value?.validate();if(!t?.valid)return r.error(`Validation failed`,t),a.add({severity:`error`,detail:s(`components.toast.validation_failed`),life:3e3}),null;e=t.values??{}}await n.onConnect(e)}catch(e){return a.add({severity:`error`,summary:s(`views.devices.connect`),detail:e,life:3e3}),null}finally{d.value=!1}}return t({isLoading:p,onConfirm:m}),(t,n)=>{let r=o,i=Oe;return E(),P(`div`,gn,[e.camera.address?(E(),P(`div`,_n,[N(`label`,vn,w(t.$t(`views.devices.address`)),1),L(r,{"model-value":e.camera.address,readonly:``},null,8,[`model-value`])])):G(``,!0),J(l).length===0?(E(),P(`div`,yn,[N(`p`,bn,w(t.$t(`views.devices.no_settings_required`)),1)])):(E(),z(i,{key:2,ref_key:`schemaFormRef`,ref:u,"schema-form":J(f),loading:J(p)},null,8,[`schema-form`,`loading`]))])}}}),Sn=5e3,X=ie({isLoading:!0,devices:[],isScanning:!1,hiddenDevices:[],showHidden:!1,error:null}),Cn=null,Z=null,Q=!1,$=0,wn=null;function Tn(){X.isLoading=!0,X.devices=[],X.isScanning=!1,X.hiddenDevices=[],X.showHidden=!1,X.error=null}function En(){return Z||(Cn=B(!0),Cn.run(()=>{let e=b(`/cameras`);Z=e,e.onReady(()=>{Dn()}),A(e.connected,(e,t)=>{!e&&t&&(Q=!1)}),e.on(`cameras:discovered`,e=>{for(let t of e.devices){let e=X.devices.findIndex(e=>e.id===t.id);e>=0?X.devices[e]=t:X.devices.push(t)}}),e.on(`cameras:scanning`,e=>{X.isScanning=e.isScanning}),e.on(`cameras:connection-status`,e=>{let t=X.devices.find(t=>t.discoveredId===e.discoveredId);t&&(e.status===`connecting`?t.status=`adopting`:e.status===`error`?(t.status=`error`,t.errorMessage=e.errorMessage):e.status===`connected`&&(X.devices=X.devices.filter(t=>t.discoveredId!==e.discoveredId)))}),e.on(`cameras:camera-connected`,e=>{X.devices=X.devices.filter(t=>t.discoveredId!==e.discoveredId)}),e.on(`cameras:deleted`,e=>{X.devices=X.devices.filter(t=>t.cameraId!==e.cameraId)})}),Z)}async function Dn(){if(!Z||Q)return{success:Q,devices:X.devices,isScanning:X.isScanning,hiddenDevices:X.hiddenDevices};try{let e=await Z.request(`cameras:subscribe`,{});return Q=e.success,e.devices&&(X.devices=e.devices),e.isScanning!==void 0&&(X.isScanning=e.isScanning),e.hiddenDevices&&(X.hiddenDevices=e.hiddenDevices),X.isLoading=!1,e}catch(e){return X.isLoading=!1,X.error=e instanceof Error?e.message:`subscribe failed`,{success:!1}}}async function On(){if(!Z||!Q)return{success:!0};try{let e=await Z.request(`cameras:unsubscribe`,{});return Q=!e.success,e}catch{return{success:!1}}}function kn(){Q&&On(),Cn?.stop(),Cn=null,Z=null,Q=!1,Tn()}function An(){wn&&=(clearTimeout(wn),null),$++;function t(){En(),Z?.connected.value&&!Q&&Dn()}function n(){Q&&On()}async function r(){if(!Z?.ready.value)return{success:!1,error:`Not connected`};X.devices=[],X.isScanning=!0;try{let e=await Z.request(`cameras:rescan`,{});return e.success||(X.isScanning=!1),e}catch(e){return X.isScanning=!1,{success:!1,error:e instanceof Error?e.message:`rescan failed`}}}async function i(e){if(!Z?.ready.value)return{success:!1,error:`Not connected`};try{return await Z.request(`cameras:get-schema`,{discoveredId:e})}catch(e){return{success:!1,error:e instanceof Error?e.message:`get-schema failed`}}}async function a(e,t){if(!Z?.ready.value)return{success:!1,error:`Not connected`};try{return await Z.request(`cameras:connect`,{discoveredId:e,credentials:t})}catch(e){return{success:!1,error:e instanceof Error?e.message:`connect failed`}}}async function o(e,t){if(!Z?.ready.value)throw Error(`Not connected`);let n=await Z.request(`cameras:prepare`,{discoveredId:e,credentials:t});if(!n.success||!n.draft)throw Error(n.error??`prepare failed`);return n.draft}async function s(e,t){if(!Z?.ready.value)throw Error(`Not connected`);let n=await Z.request(`cameras:confirm`,{draft:e,discoveredId:t});if(!n.success||!n.cameraId||!n.cameraName)throw Error(n.error??`confirm failed`);return{cameraId:n.cameraId,cameraName:n.cameraName}}async function c(e){if(!Z?.ready.value)return{success:!1,error:`Not connected`};let t={id:e.discoveredId,name:e.name,model:e.model};try{let e=await Z.request(`cameras:hide-device`,{device:t});return e.success&&e.hiddenDevices&&(X.hiddenDevices=e.hiddenDevices),e}catch(e){return{success:!1,error:e instanceof Error?e.message:`hide-device failed`}}}async function l(e){if(!Z?.ready.value)return{success:!1,error:`Not connected`};try{let t=await Z.request(`cameras:unhide-device`,{deviceId:e});return t.success&&t.hiddenDevices&&(X.hiddenDevices=t.hiddenDevices),t}catch(e){return{success:!1,error:e instanceof Error?e.message:`unhide-device failed`}}}function u(){X.showHidden=!X.showHidden}function d(e){return e.type!==`discovered`||!e.discoveredId?!1:X.hiddenDevices.some(t=>t.id===e.discoveredId)}let f=U(()=>{let e=new Set(X.hiddenDevices.map(e=>e.id)),t=(e,t)=>e.name.localeCompare(t.name),n=X.devices.filter(e=>e.type===`camera`).sort(t),r=X.devices.filter(t=>t.type===`discovered`&&!e.has(t.discoveredId)).sort(t),i=X.showHidden?X.devices.filter(t=>t.type===`discovered`&&e.has(t.discoveredId)).sort(t):[];return[...n,...r,...i]});return e(()=>{$--,!($>0)&&($=0,wn=setTimeout(()=>{$<=0&&(kn(),wn=null)},Sn))}),{state:oe(X),isConnected:U(()=>Z?.connected.value??!1),isLoading:U(()=>X.isLoading),devices:U(()=>X.devices),isScanning:U(()=>X.isScanning),hiddenDevices:U(()=>X.hiddenDevices),showHidden:U(()=>X.showHidden),error:U(()=>X.error),sortedDevices:f,connect:t,disconnect:n,subscribe:Dn,unsubscribe:On,forceRescan:r,getConnectionSchema:i,connectDevice:a,prepareDevice:o,confirmDevice:s,hideDevice:c,unhideDevice:l,toggleShowHidden:u,isHidden:d}}var jn={class:`flex flex-col`},Mn={key:0,class:`page-title`},Nn={key:1,class:`flex min-h-0 flex-col`},Pn={key:0,class:`flex flex-1 min-h-0 flex-col items-center justify-center w-full gap-4`},Fn={key:1,class:`flex flex-1 min-h-0 flex-col items-center justify-center w-full gap-4 py-16`},In={class:`w-16 h-16 rounded-full bg-primary-500/10 flex items-center justify-center`},Ln={class:`flex flex-col items-center gap-1 max-w-[400px] text-center`},Rn={class:`text-color font-semibold text-base`},zn={class:`text-muted text-sm`},Bn={key:2,class:`flex min-h-0 flex-col`},Vn={class:`card-title`},Hn={class:`flex items-center justify-center`},Un={class:`font-bold text-color truncate`},Wn={class:`text-xs text-muted truncate`},Gn={key:0,class:`text-xs text-red-500 truncate`},Kn={class:`card-title`},qn={key:0,class:`flex flex-col gap-6`},Jn={class:`flex items-center justify-center`},Yn={class:`flex items-center justify-center`},Xn={key:1,class:`flex flex-col items-center justify-center py-6 gap-2`},Zn={class:`text-muted text-sm`},Qn={class:`flex flex-wrap items-center gap-2 mt-4`},$n=u(K({__name:`Cameras`,setup(e){let{t:o}=i(),l=_(),u=m(),g=h(),{smBreakpoint:v}=c(),b=An(),S={bodyRow:{class:`text-sm text-secondary`},column:{columnTitle:{class:`text-sm`}},datatable:{class:`z-0`}},C=U(()=>f(void 0,`admin`)),T=U(()=>b.sortedDevices.value),D=U(()=>T.value.filter(e=>e.type===`camera`)),O=U(()=>T.value.filter(e=>e.type===`discovered`)),k=U(()=>b.isLoading.value),A=U(()=>b.isScanning.value),j=U(()=>b.hiddenDevices.value),re=U(()=>b.showHidden.value),F=U(()=>j.value.length);function R(e){switch(e){case`added`:return`green`;case`discovered`:return`orange`;case`adopting`:return`orange`;case`error`:return`red`;default:return`gray`}}function ie(e){switch(e){case`added`:return o(`views.devices.status_added`);case`discovered`:return o(`views.devices.status_discovered`);case`adopting`:return o(`views.devices.status_adopting`);case`error`:return o(`views.devices.status_error`);default:return o(`views.devices.status_unknown`)}}function ae(e){return b.isHidden(e)}async function B(e){if(!ae(e)){if(e.type===`camera`){g.open({cameraName:e.name});return}if(e.type===`discovered`&&e.discoveredId){if(e.status===`adopting`)return;try{let t=await b.getConnectionSchema(e.discoveredId);if(!t.success){l.add({severity:`error`,summary:o(`views.devices.connect`),detail:t.error,life:3e3});return}u.openComponentDialog(xn,{data:{title:`${o(`views.devices.connect`)}: ${e.name}`,confirmText:o(`views.devices.connect`),contentProps:{camera:{id:e.discoveredId,name:e.name,model:e.model,address:e.address,provider:e.provider,connectionStatus:`idle`},schema:t.schema??[],onConnect:async t=>{V(await b.prepareDevice(e.discoveredId,t),e.discoveredId)}}}})}catch(e){l.add({severity:`error`,summary:o(`views.devices.connect`),detail:e,life:3e3})}}}}function V(e,t){u.openComponentDialog(hn,{data:{title:o(`views.devices.confirm_title`),confirmText:o(`views.devices.confirm`),fullscreen:!0,contentProps:{draft:e,onConfirm:async e=>{await b.confirmDevice(e,t),l.add({severity:`success`,summary:o(`views.devices.connect`),detail:o(`components.toast.camera_added`),life:3e3})}}}})}async function W(){try{let e=await b.forceRescan();e.success?l.add({severity:`success`,summary:o(`views.devices.rescan`),detail:o(`views.devices.rescan_success`),life:3e3}):l.add({severity:`error`,summary:o(`views.devices.rescan`),detail:e.error,life:3e3})}catch(e){l.add({severity:`error`,summary:o(`views.devices.rescan`),detail:e,life:3e3})}}function oe(){u.openComponentDialog(un,{data:{title:o(`components.dialog.components.new_camera.add_camera`),fullscreen:!0,contentProps:{}}})}async function K(e,t){e.stopPropagation();try{let e=await b.hideDevice(t);e.success?l.add({severity:`success`,summary:o(`views.devices.hide`),detail:o(`views.devices.device_hidden`),life:3e3}):l.add({severity:`error`,summary:o(`views.devices.hide`),detail:e.error,life:3e3})}catch(e){l.add({severity:`error`,summary:o(`views.devices.hide`),detail:e,life:3e3})}}async function q(e,t){e.stopPropagation();try{let e=await b.unhideDevice(t.discoveredId);e.success?l.add({severity:`success`,summary:o(`views.devices.unhide`),detail:o(`views.devices.device_unhidden`),life:3e3}):l.add({severity:`error`,summary:o(`views.devices.unhide`),detail:e.error,life:3e3})}catch(e){l.add({severity:`error`,summary:o(`views.devices.unhide`),detail:e,life:3e3})}}function se(){b.toggleShowHidden()}function Y(e){return ae(e)?`opacity-50 cursor-not-allowed`:``}return te(()=>{C.value&&b.connect()}),ee(()=>{C.value&&b.unsubscribe()}),(e,i)=>{let o=Le,c=a,l=s,u=y,m=t,h=n,g=pe,_=he,b=Ie,ee=p,te=ze,j=d,V=r;return E(),P(`div`,jn,[J(v)?G(``,!0):(E(),P(`h1`,Mn,w(e.$t(`views.${String(e.$route.name).toLowerCase()}.title`)),1)),J(C)?(E(),P(H,{key:2},[J(k)?(E(),P(`div`,Pn,[L(l,{"stroke-width":`5`,class:`w-[30px] h-[30px]`})])):G(``,!0),!J(k)&&!J(T).length?(E(),P(`div`,Fn,[N(`div`,In,[L(u,{class:`w-8 h-8 text-primary-500`})]),N(`div`,Ln,[N(`span`,Rn,w(J(A)?e.$t(`views.devices.scanning`):e.$t(`views.devices.no_devices`)),1),N(`span`,zn,w(J(A)?e.$t(`views.devices.scanning_hint`):e.$t(`views.devices.no_devices_hint`)),1)]),L(m,{class:`cui-button-medium mt-2`,severity:`secondary`,label:e.$t(`views.devices.rescan`),loading:J(A),onClick:W},null,8,[`label`,`loading`])])):G(``,!0),!J(k)&&J(D).length?(E(),P(`div`,Bn,[N(`span`,Vn,w(e.$t(`views.devices.status_adopted_cameras`)),1),L(c,{class:`cui-card`},{content:x(()=>[L(b,{value:J(D),"striped-rows":``,pt:S,class:`w-full`,onRowClick:i[0]||=e=>B(e.data)},{default:x(()=>[L(g,{header:``,"header-class":`p-2 pl-4 w-5 max-w-5`,class:`p-2 pl-4 w-5 max-w-5`},{body:x(({data:e})=>[N(`div`,Hn,[I(L(h,{style:ne({background:R(e.status)})},null,8,[`style`]),[[V,{value:ie(e.status)}]])])]),_:1}),L(g,{field:`name`,header:e.$t(`views.devices.name`),"header-class":`p-2`,class:`p-2 w-full min-w-[200px] max-w-0`},{body:x(({data:t})=>[N(`div`,Un,w(t.name),1),N(`div`,Wn,w(t.manufacturer||e.$t(`views.devices.unknown`))+` · `+w(t.model||e.$t(`views.devices.unknown`)),1),t.errorMessage?(E(),P(`div`,Gn,w(t.errorMessage),1)):G(``,!0)]),_:1},8,[`header`]),L(g,{field:`room`,header:e.$t(`components.form.label.room`),"header-class":`p-2 whitespace-nowrap`,class:`p-2 whitespace-nowrap`},{body:x(({data:t})=>[t.room?(E(),z(_,{key:0,label:t.room===`Default`?e.$t(`components.form.label.room_default`):t.room,class:`text-xs whitespace-nowrap`},null,8,[`label`])):G(``,!0)]),_:1},8,[`header`]),L(g,{field:`provider`,header:e.$t(`views.devices.provider`),"header-class":`p-2 pr-4 whitespace-nowrap`,class:`p-2 pr-4 whitespace-nowrap`},{body:x(({data:e})=>[L(_,{label:e.provider,class:`text-xs whitespace-nowrap`},null,8,[`label`])]),_:1},8,[`header`])]),_:1},8,[`value`])]),_:1})])):G(``,!0),!J(k)&&J(T).length?(E(),P(`div`,{key:3,class:M([`flex min-h-0 flex-col`,{"mt-6":J(D).length}])},[N(`span`,Kn,w(e.$t(`views.devices.status_discovered`)),1),L(c,{class:`cui-card`},{content:x(()=>[J(O).length?(E(),P(`div`,qn,[L(b,{value:J(O),"striped-rows":``,pt:S,class:`w-full`,onRowClick:i[1]||=e=>B(e.data)},{default:x(()=>[L(g,{header:``,"header-class":`p-2 pl-4 w-5 max-w-5`,class:`p-2 pl-4 w-5 max-w-5`},{body:x(({data:e})=>[N(`div`,Jn,[I(L(h,{style:ne({background:R(e.status)})},null,8,[`style`]),[[V,{value:ie(e.status)}]])])]),_:1}),L(g,{field:`name`,header:e.$t(`views.devices.name`),"header-class":`p-2`,class:`p-2 w-full min-w-[200px] max-w-0`},{body:x(({data:t})=>[N(`div`,{class:M([`font-bold text-color truncate`,Y(t)])},w(t.name),3),N(`div`,{class:M([`text-xs text-muted truncate`,Y(t)])},w(t.manufacturer||e.$t(`views.devices.unknown`))+` · `+w(t.model||e.$t(`views.devices.unknown`)),3)]),_:1},8,[`header`]),L(g,{field:`address`,header:e.$t(`views.devices.address`),"header-class":`p-2 whitespace-nowrap`,class:`p-2 whitespace-nowrap`},{body:x(({data:e})=>[e.address?(E(),P(`span`,{key:0,class:M([`text-xs text-muted whitespace-nowrap`,Y(e)])},w(e.address),3)):G(``,!0)]),_:1},8,[`header`]),L(g,{field:`provider`,header:e.$t(`views.devices.provider`),"header-class":`p-2 whitespace-nowrap`,class:`p-2 whitespace-nowrap`},{body:x(({data:e})=>[L(_,{label:e.provider,class:M([`text-xs whitespace-nowrap`,Y(e)])},null,8,[`label`,`class`])]),_:1},8,[`header`]),L(g,{header:``,"header-class":`p-2 pr-4 w-12`,class:`p-2 pr-4 w-12`},{body:x(({data:t})=>[N(`div`,Yn,[ae(t)?I((E(),z(m,{key:1,text:``,rounded:``,class:`cui-icon-md`,onClick:e=>q(e,t)},{icon:x(()=>[L(J(Ce),{width:`100%`,height:`100%`,class:`text-muted`})]),_:1},8,[`onClick`])),[[V,{value:e.$t(`views.devices.unhide`)},void 0,{left:!0}]]):I((E(),z(m,{key:0,severity:`secondary`,text:``,rounded:``,class:`cui-icon-md`,onClick:e=>K(e,t)},{icon:x(()=>[L(J(we),{width:`100%`,height:`100%`,class:`text-muted`})]),_:1},8,[`onClick`])),[[V,{value:e.$t(`views.devices.hide`)},void 0,{left:!0}]])])]),_:1})]),_:1},8,[`value`])])):(E(),P(`div`,Xn,[J(A)?(E(),z(ee,{key:0,width:`24px`,height:`24px`,class:`text-muted`})):(E(),z(te,{key:1,width:`32px`,height:`32px`,class:`text-muted`})),N(`span`,Zn,w(J(A)?e.$t(`views.devices.scanning`):e.$t(`views.devices.no_discovered`)),1)])),N(`div`,Qn,[i[2]||=N(`div`,{class:`ml-auto`},null,-1),J(F)>0?(E(),z(m,{key:0,severity:`secondary`,class:`cui-button-medium`,label:J(re)?e.$t(`views.devices.hide_hidden`):`${e.$t(`views.devices.show_hidden`)} (${J(F)})`,onClick:se},null,8,[`label`])):G(``,!0),L(m,{severity:`secondary`,class:`cui-button-medium`,label:e.$t(`views.devices.rescan`),loading:J(A),onClick:W},null,8,[`label`,`loading`])])]),_:1})],2)):G(``,!0)],64)):(E(),P(`div`,Nn,[L(c,{class:`cui-card`},{content:x(()=>[L(o)]),_:1})])),(`hasPermission`in e?e.hasPermission:J(f))(void 0,`admin`)?(E(),z(j,{key:3,"tooltip-props":{value:e.$t(`views.cameras.add_camera`)},"button-props":{class:`text-white`},icon:J(Re),"icon-props":{width:`30px`,height:`30px`},onClick:oe},null,8,[`tooltip-props`,`icon`])):G(``,!0)])}}}),[[`__scopeId`,`data-v-e79311c0`]]);export{$n as default};
651
+ `,_t={class:`flex flex-col gap-6`},vt={class:`flex gap-2 items-center w-full`},yt={class:`flex gap-2 items-center w-full`},bt={class:`text-color text-sm`},xt={class:`flex flex-col gap-6`},St=[`for`],Ct=[`for`],wt={class:`w-full flex flex-col gap-2`},Tt={class:`flex items-center gap-4`},Et={class:`flex flex-col field-switch-gap`},Dt=[`for`],Ot={class:`flex items-center gap-4`},kt={class:`flex flex-col field-switch-gap`},At=[`for`],jt={class:`flex items-center gap-4`},Mt={class:`flex flex-col field-switch-gap`},Nt=[`for`],Pt={class:`flex items-center gap-4`},Ft={class:`flex flex-col field-switch-gap`},It=[`for`],Lt={class:`flex flex-col gap-6`},Rt={class:`flex flex-col field-gap`},zt=[`for`],Bt={key:0,class:`w-full flex flex-row gap-2`},Vt=`rtsp://user:pass@192.168.1.50:554/stream`,Ht=K({__name:`CuiCameraSources`,props:{sources:{},isLoading:{type:Boolean},allowAddRemoveSources:{type:Boolean,default:!1}},setup(t,{expose:n}){let i=new u,o=t,c=h(),{t:l}=r(),{mutateAsync:d,isPending:f}=i.previewCameraQuery(),p=Object.assign({"../../markdowns/bubble.md":Ue,"../../markdowns/cui.md":We,"../../markdowns/doorbird.md":Ge,"../../markdowns/dvrip.md":Ke,"../../markdowns/echo.md":qe,"../../markdowns/exec.md":Je,"../../markdowns/expr.md":Ye,"../../markdowns/ffmpeg.md":Xe,"../../markdowns/gopro.md":Ze,"../../markdowns/hass.md":Qe,"../../markdowns/homekit.md":$e,"../../markdowns/http.md":et,"../../markdowns/isapi.md":tt,"../../markdowns/ivideon.md":nt,"../../markdowns/kasa.md":rt,"../../markdowns/nest.md":it,"../../markdowns/onvif.md":at,"../../markdowns/ring.md":ot,"../../markdowns/roborock.md":st,"../../markdowns/rtmp.md":ct,"../../markdowns/rtsp.md":lt,"../../markdowns/tapo.md":ut,"../../markdowns/tuya.md":dt,"../../markdowns/webrtc.md":ft,"../../markdowns/webtorrent.md":pt,"../../markdowns/wyze.md":mt,"../../markdowns/xiaomi.md":ht,"../../markdowns/yandex.md":gt}),m=I([`high-resolution`,`mid-resolution`,`low-resolution`,`snapshot`]),g=I(o.sources.map((e,t)=>t)),_=U(()=>o.isLoading||f.value);function y(e){return e.urls.some(Me)}function b(e){let t=Fe(e);if(!t)return;let n=t.replace(/[:/]+$/,``);return p[`../../markdowns/${n}.md`]}function S(e){return!!b(e)}function C(e){o.sources[e].urls.push(``)}function ee(e,t){o.sources[e].urls.splice(t,1)}function D(e,t,n){o.sources[e].urls[t]=n}function te(e,t){e.role=t,t===`snapshot`&&(e.useForSnapshot=!1,e.hotMode=!1,e.preload=!1)}function ne(){o.sources.push({_id:v(8),name:``,role:null,urls:[``],useForSnapshot:!1,hotMode:!0,preload:!0,muted:!1}),g.value=[o.sources.length]}function A(e){o.sources.splice(e,1)}function M(e){let t=b(e);t&&c.openTextDialog({data:{title:l(`components.dialog.title.information`),hideConfirmButton:!0,contentText:t,markdown:!0}})}async function re(e){let t=Pe(e);if(t)try{let e=await d({cameraData:{url:t}});c.openImageDialog({data:{title:l(`components.dialog.title.preview`),src:`data:image/jpeg;base64,${e}`,hideConfirmButton:!0}})}catch{}}return n({newSource:ne}),(n,r)=>{let i=he,o=Se,c=a,l=ye,u=e,d=xe,f=fe,p=ge,h=be,v=Ee,b=He,ne=ve,I=de,ae=_e,U=me,W=s;return E(),F(`div`,_t,[R(U,{value:J(g),"onUpdate:value":r[0]||=e=>V(g)?g.value=e:null,multiple:``},{default:x(()=>[(E(!0),F(H,null,O(t.sources,(e,r)=>(E(),B(ae,{key:e._id,value:r,class:N({"border-b-0":r===t.sources.length-1})},{default:x(()=>[R(l,{class:N({"px-0 pt-0":r===0,"px-0":r!==0,"pb-5":r===t.sources.length-1})},{default:x(()=>[P(`div`,vt,[P(`div`,yt,[P(`span`,bt,w(n.$t(`components.dialog.components.new_camera.source`)+`: `),1),R(i,{class:`text-color text-xs border-[1px] bg-primary-500/20 border-primary-500/30 py-2 px-3 rounded-full overflow-hidden`,label:e.name===``?n.$t(`components.dialog.components.new_camera.unknown`):e.name},null,8,[`label`])]),t.allowAddRemoveSources&&t.sources.length>1?(E(),B(c,{key:0,text:``,rounded:``,severity:`danger`,class:`cui-icon-md ml-auto mr-2`,loading:J(_),onClick:e=>A(r)},{icon:x(()=>[R(o,{width:`100%`,height:`100%`})]),_:1},8,[`loading`,`onClick`])):G(``,!0)])]),_:2},1032,[`class`]),R(I,{pt:{content:{class:{"px-0":!0,"pb-5":r===t.sources.length-1}}}},{default:x(()=>[P(`div`,xt,[R(J(k),{modelValue:e.name,"onUpdate:modelValue":t=>e.name=t,modelModifiers:{trim:!0},name:`sources[${r}].name`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:e,errors:t})=>[P(`label`,{for:`sources[${r}].name`,class:`cui-label`},w(n.$t(`components.form.label.source_name`)),9,St),R(d,null,{default:x(()=>[R(u,T({ref_for:!0},e,{invalid:t.length>0,loading:J(_),type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`sources[${r}].name`,class:`cui-input-error`},null,8,[`name`])]),_:2},1024),t.length?G(``,!0):(E(),B(f,{key:0,severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[z(w(n.$t(`components.form.hint.source_name`)),1)]),_:1}))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`name`]),R(J(k),{"model-value":e.role,name:`sources[${r}].role`,as:`div`,class:`flex flex-col field-gap`},{default:x(({errors:i})=>[P(`label`,{for:`sources[${r}].role`,class:`cui-label`},w(n.$t(`components.form.label.source_role`)),9,Ct),R(d,null,{default:x(()=>[R(p,{"model-value":e.role,options:J(m).filter(n=>!t.sources.some(t=>t.role===n&&t._id!==e._id)),invalid:i.length>0,loading:J(_),onValueChange:t=>te(e,t)},null,8,[`model-value`,`options`,`invalid`,`loading`,`onValueChange`])]),_:2},1024),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`sources[${r}].role`,class:`cui-input-error`},null,8,[`name`])]),_:2},1024),i.length?G(``,!0):(E(),B(f,{key:0,severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[z(w(n.$t(`components.form.hint.source_role`)),1)]),_:1}))]),_:2},1032,[`model-value`,`name`]),P(`div`,wt,[e.role!==`snapshot`&&t.sources.length>1?(E(),B(J(k),{key:0,"model-value":e.useForSnapshot,value:!0,"unchecked-value":!1,type:`checkbox`,name:`sources[${r}].useForSnapshot`,as:`div`,class:`flex flex-col field-gap cui-toggle-switch`},{default:x(({field:i,errors:a})=>[P(`div`,Tt,[P(`div`,Et,[P(`label`,{for:`sources[${r}].useForSnapshot`,class:`cui-label-switch`},w(n.$t(`components.form.label.use_for_snapshot`)),9,Dt),R(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:x(()=>[z(w(n.$t(`components.form.hint.use_for_snapshot`)),1)]),_:1}),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`sources[${r}].useForSnapshot`,class:`cui-input-switch-error`},null,8,[`name`])]),_:2},1024)]),R(h,T({"model-value":e.useForSnapshot},{ref_for:!0},i,{invalid:a.length>0,loading:J(_),disabled:t.sources.some(t=>(t.useForSnapshot||t.role===`snapshot`)&&t._id!==e._id),class:`ml-auto shrink-0`,onValueChange:t=>e.useForSnapshot=t}),null,16,[`model-value`,`invalid`,`loading`,`disabled`,`onValueChange`])])]),_:2},1032,[`model-value`,`name`])):G(``,!0),e.role===`snapshot`?G(``,!0):(E(),B(J(k),{key:1,"model-value":e.hotMode,value:!0,"unchecked-value":!1,type:`checkbox`,name:`sources[${r}].hotMode`,as:`div`,class:`flex flex-col field-gap cui-toggle-switch`},{default:x(({field:t,errors:i})=>[P(`div`,Ot,[P(`div`,kt,[P(`label`,{for:`sources[${r}].hotMode`,class:`cui-label-switch`},w(n.$t(`components.form.label.hot_mode`)),9,At),R(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:x(()=>[z(w(n.$t(`components.form.hint.hot_mode`)),1)]),_:1}),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`sources[${r}].hotMode`,class:`cui-input-switch-error`},null,8,[`name`])]),_:2},1024)]),R(h,T({"model-value":e.hotMode},{ref_for:!0},t,{invalid:i.length>0,loading:J(_),class:`ml-auto shrink-0`,onValueChange:t=>e.hotMode=t}),null,16,[`model-value`,`invalid`,`loading`,`onValueChange`])])]),_:2},1032,[`model-value`,`name`])),e.role===`snapshot`?G(``,!0):(E(),B(J(k),{key:2,"model-value":e.preload,value:!0,"unchecked-value":!1,type:`checkbox`,name:`sources[${r}].preload`,as:`div`,class:`flex flex-col field-gap cui-toggle-switch`},{default:x(({field:t,errors:i})=>[P(`div`,jt,[P(`div`,Mt,[P(`label`,{for:`sources[${r}].preload`,class:`cui-label-switch`},w(n.$t(`components.form.label.preload`)),9,Nt),R(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:x(()=>[z(w(n.$t(`components.form.hint.preload`)),1)]),_:1}),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`sources[${r}].preload`,class:`cui-input-switch-error`},null,8,[`name`])]),_:2},1024)]),R(h,T({"model-value":e.preload},{ref_for:!0},t,{invalid:i.length>0,loading:J(_),class:`ml-auto shrink-0`,onValueChange:t=>e.preload=t}),null,16,[`model-value`,`invalid`,`loading`,`onValueChange`])])]),_:2},1032,[`model-value`,`name`])),e.role===`snapshot`?G(``,!0):(E(),B(J(k),{key:3,"model-value":e.muted,value:!0,"unchecked-value":!1,type:`checkbox`,name:`sources[${r}].muted`,as:`div`,class:`flex flex-col field-gap cui-toggle-switch`},{default:x(({field:t,errors:i})=>[P(`div`,Pt,[P(`div`,Ft,[P(`label`,{for:`sources[${r}].muted`,class:`cui-label-switch`},w(n.$t(`components.form.label.muted`)),9,It),R(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:x(()=>[z(w(n.$t(`components.form.hint.muted`)),1)]),_:1}),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`sources[${r}].muted`,class:`cui-input-switch-error`},null,8,[`name`])]),_:2},1024)]),R(h,T({"model-value":e.muted},{ref_for:!0},t,{invalid:i.length>0,loading:J(_),class:`ml-auto shrink-0`,onValueChange:t=>e.muted=t}),null,16,[`model-value`,`invalid`,`loading`,`onValueChange`])])]),_:2},1032,[`model-value`,`name`]))]),P(`div`,Lt,[P(`div`,Rt,[P(`label`,{for:`sources[${r}].urls[]`,class:`cui-label`},w(n.$t(`components.form.label.sources`)),9,zt),R(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[z(w(y(e)?n.$t(`views.devices.managed_source_hint`):n.$t(`components.form.hint.source_urls`)),1)]),_:2},1024)]),(E(!0),F(H,null,O(e.urls,(t,i)=>(E(),F(H,{key:i},[J(Me)(t)?(E(),F(`div`,Bt,[R(d,null,{default:x(()=>[R(u,{"model-value":t,readonly:``,loading:J(_),type:`text`},null,8,[`model-value`,`loading`])]),_:2},1024)])):(E(),B(J(k),{key:1,"model-value":t,name:`sources[${r}].urls[${i}]`,as:`div`,class:`flex flex-col field-gap w-full`},{default:x(({errors:a})=>[R(d,null,{default:x(()=>[R(u,{"model-value":t,invalid:a.length>0,loading:J(_),type:`text`,placeholder:Vt,"onUpdate:modelValue":e=>D(r,i,e??``)},null,8,[`model-value`,`invalid`,`loading`,`onUpdate:modelValue`]),R(ne,null,{default:x(()=>[L((E(),B(c,{text:``,rounded:``,severity:`secondary`,disabled:J(_)||!S(t),class:`border-right-color`,onClick:e=>M(t)},{icon:x(()=>[R(v,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`,`onClick`])),[[W,{value:n.$t(`components.dialog.components.new_camera.protocol_info`)},void 0,{top:!0}]]),L((E(),B(c,{text:``,rounded:``,severity:`secondary`,disabled:J(_)||!J(Fe)(t),class:`border-right-color`,onClick:e=>re(t)},{icon:x(()=>[R(b,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`,`onClick`])),[[W,{value:n.$t(`components.dialog.components.new_camera.test_source`)},void 0,{top:!0}]]),e.urls.length>1?(E(),B(c,{key:0,text:``,rounded:``,severity:`danger`,disabled:J(_),onClick:ie(e=>ee(r,i),[`prevent`])},{icon:x(()=>[R(o,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`,`onClick`])):G(``,!0)]),_:2},1024)]),_:2},1024),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`sources[${r}].urls[${i}]`,class:`cui-input-error`},null,8,[`name`])]),_:2},1024),R(f,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[z(w(J(Fe)(t)?n.$t(`components.form.hint.source_detected_protocol`,{protocol:J(Fe)(t)}):n.$t(`components.form.hint.source_url`)),1)]),_:2},1024)]),_:2},1032,[`model-value`,`name`]))],64))),128)),y(e)?G(``,!0):(E(),B(c,{key:0,loading:J(_),label:n.$t(`components.form.button.add_source`),class:`ml-auto cui-button-medium`,onClick:e=>C(r)},null,8,[`loading`,`label`,`onClick`]))])])]),_:2},1032,[`pt`])]),_:2},1032,[`value`,`class`]))),128))]),_:1},8,[`value`])])}}}),Ut={class:`flex flex-col gap-6`},Wt={for:`name`,class:`cui-label`},Gt={class:`flex flex-col field-gap`},Kt={for:`type`,class:`cui-label`},qt={class:`flex flex-col field-gap`},Jt={for:`room`,class:`cui-label`},Yt={class:`flex gap-2`},Xt={class:`text-color font-normal`},Zt={class:`flex flex-col gap-6`},Qt={for:`info.manufacturer`,class:`cui-label`},$t={for:`info.model`,class:`cui-label`},en={for:`info.hardware`,class:`cui-label`},tn={for:`info.serialNumber`,class:`cui-label`},nn={for:`info.firmwareVersion`,class:`cui-label`},rn={for:`info.supportUrl`,class:`cui-label`},an=K({__name:`CuiCameraDetailsFields`,props:{form:{},isLoading:{type:Boolean}},setup(t){let n=new ke,i=t,o=h(),{t:c}=r(),{data:l,isBusy:u}=n.getRoomsQuery(),{mutateAsync:d}=n.createRoomMutation(),f=I([`camera`,`doorbell`]),p=U(()=>(l.value?.levels.length??0)>0),m=U(()=>je(l.value,c));function g(e){i.form.roomId=e}function _(){o.openComponentDialog(Ae,{data:{title:c(`components.dialog.title.create_room`),confirmText:c(`components.form.button.add`),contentProps:{}},onConfirm:async e=>{e&&g((await d({name:e,levelId:null,outdoor:!1,publicSpace:!1,note:``})).id)}})}return(n,r)=>{let i=e,o=xe,c=fe,l=ge,d=Te,h=a,v=ye,y=de,b=_e,S=me,C=s;return E(),F(`div`,Ut,[R(J(k),{modelValue:t.form.name,"onUpdate:modelValue":r[0]||=e=>t.form.name=e,modelModifiers:{trim:!0},name:`name`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:e,errors:r})=>[P(`label`,Wt,w(n.$t(`components.form.label.name`)),1),R(o,null,{default:x(()=>[R(i,T(e,{invalid:r.length>0,loading:t.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`name`,class:`cui-input-error`})]),_:1}),r.length?G(``,!0):(E(),B(c,{key:0,severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[z(w(n.$t(`components.form.hint.camera_name`)),1)]),_:1}))]),_:1},8,[`modelValue`]),P(`div`,Gt,[P(`label`,Kt,w(n.$t(`components.form.label.type`)),1),R(o,null,{default:x(()=>[R(l,{"model-value":t.form.type,options:J(f),loading:t.isLoading,type:`text`,onValueChange:r[1]||=e=>t.form.type=e},null,8,[`model-value`,`options`,`loading`])]),_:1})]),P(`div`,qt,[P(`label`,Jt,w(n.$t(`components.form.label.room`)),1),P(`div`,Yt,[R(l,{"model-value":t.form.roomId,options:J(m),"option-label":`label`,"option-value":`value`,"option-group-label":J(p)?`label`:void 0,"option-group-children":J(p)?`items`:void 0,loading:J(u),class:`w-full`,"onUpdate:modelValue":r[2]||=e=>g(e)},null,8,[`model-value`,`options`,`option-group-label`,`option-group-children`,`loading`]),L((E(),B(h,{severity:`secondary`,outlined:``,class:`shrink-0 h-[42px] w-[42px] p-0`,onClick:_},{icon:x(()=>[R(d,{class:`w-4 h-4`})]),_:1})),[[C,n.$t(`components.form.button.create_room`),void 0,{top:!0}]])]),R(c,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:x(()=>[z(w(n.$t(`components.form.hint.room`)),1)]),_:1})]),se(n.$slots,`default`),R(S,null,{default:x(()=>[R(b,{value:`branding`},{default:x(()=>[R(v,{class:`px-0 pt-0`},{default:x(()=>[P(`span`,Xt,w(n.$t(`components.camera_options.branding`)),1)]),_:1}),R(y,{pt:{content:{class:`px-0`}}},{default:x(()=>[P(`div`,Zt,[R(J(k),{modelValue:t.form.info.manufacturer,"onUpdate:modelValue":r[3]||=e=>t.form.info.manufacturer=e,modelModifiers:{trim:!0},name:`info.manufacturer`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:e,errors:r})=>[P(`label`,Qt,w(n.$t(`components.form.label.manufacturer`)),1),R(o,null,{default:x(()=>[R(i,T(e,{invalid:r.length>0,loading:t.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`info.manufacturer`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),R(J(k),{modelValue:t.form.info.model,"onUpdate:modelValue":r[4]||=e=>t.form.info.model=e,modelModifiers:{trim:!0},name:`info.model`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:e,errors:r})=>[P(`label`,$t,w(n.$t(`components.form.label.model`)),1),R(o,null,{default:x(()=>[R(i,T(e,{invalid:r.length>0,loading:t.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`info.model`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),R(J(k),{modelValue:t.form.info.hardware,"onUpdate:modelValue":r[5]||=e=>t.form.info.hardware=e,modelModifiers:{trim:!0},name:`info.hardware`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:e,errors:r})=>[P(`label`,en,w(n.$t(`components.form.label.hardware_version`)),1),R(o,null,{default:x(()=>[R(i,T(e,{invalid:r.length>0,loading:t.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`info.hardware`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),R(J(k),{modelValue:t.form.info.serialNumber,"onUpdate:modelValue":r[6]||=e=>t.form.info.serialNumber=e,modelModifiers:{trim:!0},name:`info.serialNumber`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:e,errors:r})=>[P(`label`,tn,w(n.$t(`components.form.label.serial_number`)),1),R(o,null,{default:x(()=>[R(i,T(e,{invalid:r.length>0,loading:t.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`info.serialNumber`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),R(J(k),{modelValue:t.form.info.firmwareVersion,"onUpdate:modelValue":r[7]||=e=>t.form.info.firmwareVersion=e,modelModifiers:{trim:!0},name:`info.firmwareVersion`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:e,errors:r})=>[P(`label`,nn,w(n.$t(`components.form.label.firmware_version`)),1),R(o,null,{default:x(()=>[R(i,T(e,{invalid:r.length>0,loading:t.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`info.firmwareVersion`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),R(J(k),{modelValue:t.form.info.supportUrl,"onUpdate:modelValue":r[8]||=e=>t.form.info.supportUrl=e,modelModifiers:{trim:!0},name:`info.supportUrl`,as:`div`,class:`flex flex-col field-gap`},{default:x(({field:e,errors:r})=>[P(`label`,rn,w(n.$t(`components.form.label.support_url`)),1),R(o,null,{default:x(()=>[R(i,T(e,{invalid:r.length>0,loading:t.isLoading,type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),R(j,{name:`fade`},{default:x(()=>[R(J(q),{name:`info.supportUrl`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`])])]),_:1})]),_:1})]),_:1})])}}}),on={disabled:!1,name:``,type:`camera`,room:`Default`,roomId:null,info:{manufacturer:``,model:``,hardware:``,serialNumber:``,firmwareVersion:``,supportUrl:``},sources:[{_id:v(8),name:``,role:`high-resolution`,urls:[``],useForSnapshot:!1,hotMode:!0,preload:!0,muted:!1,backchannelDisabled:!1}],interfaceSettings:{streamingMode:`auto`,streamingSource:`high-resolution`,playbackSource:`auto`,activityMode:`always-on`,aspectRatio:`16:9`},plugins:[],assignments:{}},sn={class:`card-title`},cn={class:`card-title`},ln={class:`w-full flex items-center justify-center mt-4`},un=K({__name:`AddCamera`,props:{camera:{default:()=>on}},setup(e,{expose:t}){let n=new u,i=e,s=c(),{t:l}=r(),{mutateAsync:d,isPending:f}=n.createCameraQuery(),{camera:p}=M(i),m=D(`formRef`),h=D(`sourcesRef`),g=I(y(p.value)),_=U(()=>f.value);async function v(){if(!(await m.value?.validate())?.valid)return s.add({severity:`error`,detail:l(`components.toast.validation_failed`),life:3e3}),null;let e=y(g.value),t={...ue(),...e,sources:e.sources.map(e=>({...e,muted:e.muted??!1,backchannelDisabled:e.backchannelDisabled??!1,urls:e.urls.map(Pe).filter(Boolean)}))};await d({cameraData:t})}return t({isLoading:_,onSave:v,onConfirm:v}),(e,t)=>{let n=an,r=o,i=Ht,s=De,c=a;return E(),F(`div`,null,[R(J(S),{ref_key:`formRef`,ref:m,class:`flex flex-col w-full gap-6`,"validation-schema":J(Ne)},{default:x(()=>[P(`div`,null,[P(`span`,sn,w(e.$t(`components.dialog.components.new_camera.camera`)),1),R(r,{class:`cui-card`},{content:x(()=>[R(n,{form:J(g),"is-loading":J(_)},null,8,[`form`,`is-loading`])]),_:1})]),P(`div`,null,[P(`span`,cn,w(e.$t(`components.form.label.sources`)),1),R(r,{class:`cui-card border-color-inner`,pt:{body:{class:`pb-0`}}},{content:x(()=>[R(i,{ref_key:`sourcesRef`,ref:h,sources:J(g).sources,"is-loading":J(_),"allow-add-remove-sources":!0},null,8,[`sources`,`is-loading`])]),_:1}),P(`div`,ln,[R(c,{text:``,rounded:``,loading:J(_),class:`cui-icon-2xl`,onClick:t[0]||=e=>J(h)?.newSource()},{icon:x(()=>[R(s,{width:`100%`,height:`100%`})]),_:1},8,[`loading`])])])]),_:1},8,[`validation-schema`])])}}}),dn={class:`card-title`},fn={key:0,class:`flex flex-col gap-6`},pn={class:`cui-label`},mn={class:`card-title`},hn=K({__name:`ConfirmCamera`,props:{draft:{},onConfirm:{type:Function}},setup(t,{expose:n}){let i=le({name:ce().trim().min(1)}).passthrough(),a=t,s=c(),{t:l}=r(),u=D(`formRef`),d=I(y(a.draft)),f=I({name:d.value.name,type:d.value.type,room:d.value.room,roomId:d.value.roomId,info:d.value.info,sources:d.value.sources.map(e=>({...e,urls:[...e.urls]}))}),p=I(!1),m=U(()=>{let e=[];return d.value.pluginInfo?.name&&e.push({label:l(`views.devices.plugin`),value:d.value.pluginInfo.name}),d.value.nativeId&&e.push({label:l(`views.devices.native_id`),value:d.value.nativeId}),e}),h=U(()=>p.value);async function g(){if(!(await u.value?.validate())?.valid)return s.add({severity:`error`,detail:l(`components.toast.validation_failed`),life:3e3}),null;p.value=!0;try{let e={...d.value,name:f.value.name,type:f.value.type,room:f.value.room,roomId:f.value.roomId,info:f.value.info,sources:f.value.sources.map(e=>({...e,urls:e.urls.map(Pe).filter(Boolean)}))};await a.onConfirm(e)}catch(e){return s.add({severity:`error`,summary:l(`views.devices.confirm_title`),detail:e,life:3e3}),null}finally{p.value=!1}}return n({isLoading:h,onConfirm:g}),(t,n)=>{let r=e,a=xe,s=an,c=o,l=Ht;return E(),F(`div`,null,[R(J(S),{ref_key:`formRef`,ref:u,class:`flex flex-col w-full gap-6`,"validation-schema":J(i)},{default:x(()=>[P(`div`,null,[P(`span`,dn,w(t.$t(`components.dialog.components.new_camera.camera`)),1),R(c,{class:`cui-card`},{content:x(()=>[R(s,{form:J(f),"is-loading":J(h)},{default:x(()=>[J(m).length?(E(),F(`div`,fn,[(E(!0),F(H,null,O(J(m),e=>(E(),F(`div`,{key:e.label,class:`flex flex-col field-gap`},[P(`label`,pn,w(e.label),1),R(a,null,{default:x(()=>[R(r,{"model-value":e.value,readonly:``,type:`text`},null,8,[`model-value`])]),_:2},1024)]))),128))])):G(``,!0)]),_:1},8,[`form`,`is-loading`])]),_:1})]),P(`div`,null,[P(`span`,mn,w(t.$t(`components.form.label.sources`)),1),R(c,{class:`cui-card border-color-inner`,pt:{body:{class:`pb-0`}}},{content:x(()=>[R(l,{sources:J(f).sources,"is-loading":J(h),"allow-add-remove-sources":!0},null,8,[`sources`,`is-loading`])]),_:1})])]),_:1},8,[`validation-schema`])])}}}),gn={class:`flex flex-col gap-6`},_n={key:0,class:`flex flex-col field-gap`},vn={class:`cui-label`},yn={key:1,class:`text-center py-4`},bn={class:`text-muted`},xn=K({__name:`ConnectionSchema`,props:{camera:{},schema:{},onConnect:{type:Function}},setup(t,{expose:n}){let i=t,a=Y(),o=c(),{t:s}=r(),l=C(`dialogRefProps`),{schema:u}=M(i),d=D(`schemaFormRef`),f=I(!1),p=U(()=>({schema:u.value,config:{}})),m=U(()=>!!(l.loading?.value||f.value));async function h(){f.value=!0;try{let e={};if(u.value.length>0){let t=await d.value?.validate();if(!t?.valid)return a.error(`Validation failed`,t),o.add({severity:`error`,detail:s(`components.toast.validation_failed`),life:3e3}),null;e=t.values??{}}await i.onConnect(e)}catch(e){return o.add({severity:`error`,summary:s(`views.devices.connect`),detail:e,life:3e3}),null}finally{f.value=!1}}return n({isLoading:m,onConfirm:h}),(n,r)=>{let i=e,a=Oe;return E(),F(`div`,gn,[t.camera.address?(E(),F(`div`,_n,[P(`label`,vn,w(n.$t(`views.devices.address`)),1),R(i,{"model-value":t.camera.address,readonly:``},null,8,[`model-value`])])):G(``,!0),J(u).length===0?(E(),F(`div`,yn,[P(`p`,bn,w(n.$t(`views.devices.no_settings_required`)),1)])):(E(),B(a,{key:2,ref_key:`schemaFormRef`,ref:d,"schema-form":J(p),loading:J(m)},null,8,[`schema-form`,`loading`]))])}}}),Sn=5e3,X=re({isLoading:!0,devices:[],isScanning:!1,hiddenDevices:[],showHidden:!1,error:null}),Cn=null,Z=null,Q=!1,$=0,wn=null;function Tn(){X.isLoading=!0,X.devices=[],X.isScanning=!1,X.hiddenDevices=[],X.showHidden=!1,X.error=null}function En(){return Z||(Cn=ae(!0),Cn.run(()=>{let e=b(`/cameras`);Z=e,e.onReady(()=>{Dn()}),A(e.connected,(e,t)=>{!e&&t&&(Q=!1)}),e.on(`cameras:discovered`,e=>{for(let t of e.devices){let e=X.devices.findIndex(e=>e.id===t.id);e>=0?X.devices[e]=t:X.devices.push(t)}}),e.on(`cameras:scanning`,e=>{X.isScanning=e.isScanning}),e.on(`cameras:connection-status`,e=>{let t=X.devices.find(t=>t.discoveredId===e.discoveredId);t&&(e.status===`connecting`?t.status=`adopting`:e.status===`error`?(t.status=`error`,t.errorMessage=e.errorMessage):e.status===`connected`&&(X.devices=X.devices.filter(t=>t.discoveredId!==e.discoveredId)))}),e.on(`cameras:camera-connected`,e=>{X.devices=X.devices.filter(t=>t.discoveredId!==e.discoveredId)}),e.on(`cameras:deleted`,e=>{X.devices=X.devices.filter(t=>t.cameraId!==e.cameraId)})}),Z)}async function Dn(){if(!Z||Q)return{success:Q,devices:X.devices,isScanning:X.isScanning,hiddenDevices:X.hiddenDevices};try{let e=await Z.request(`cameras:subscribe`,{});return Q=e.success,e.devices&&(X.devices=e.devices),e.isScanning!==void 0&&(X.isScanning=e.isScanning),e.hiddenDevices&&(X.hiddenDevices=e.hiddenDevices),X.isLoading=!1,e}catch(e){return X.isLoading=!1,X.error=e instanceof Error?e.message:`subscribe failed`,{success:!1}}}async function On(){if(!Z||!Q)return{success:!0};try{let e=await Z.request(`cameras:unsubscribe`,{});return Q=!e.success,e}catch{return{success:!1}}}function kn(){Q&&On(),Cn?.stop(),Cn=null,Z=null,Q=!1,Tn()}function An(){wn&&=(clearTimeout(wn),null),$++;function e(){En(),Z?.connected.value&&!Q&&Dn()}function t(){Q&&On()}async function r(){if(!Z?.ready.value)return{success:!1,error:`Not connected`};X.devices=[],X.isScanning=!0;try{let e=await Z.request(`cameras:rescan`,{});return e.success||(X.isScanning=!1),e}catch(e){return X.isScanning=!1,{success:!1,error:e instanceof Error?e.message:`rescan failed`}}}async function i(e){if(!Z?.ready.value)return{success:!1,error:`Not connected`};try{return await Z.request(`cameras:get-schema`,{discoveredId:e})}catch(e){return{success:!1,error:e instanceof Error?e.message:`get-schema failed`}}}async function a(e,t){if(!Z?.ready.value)return{success:!1,error:`Not connected`};try{return await Z.request(`cameras:connect`,{discoveredId:e,credentials:t})}catch(e){return{success:!1,error:e instanceof Error?e.message:`connect failed`}}}async function o(e,t){if(!Z?.ready.value)throw Error(`Not connected`);let n=await Z.request(`cameras:prepare`,{discoveredId:e,credentials:t});if(!n.success||!n.draft)throw Error(n.error??`prepare failed`);return n.draft}async function s(e,t){if(!Z?.ready.value)throw Error(`Not connected`);let n=await Z.request(`cameras:confirm`,{draft:e,discoveredId:t});if(!n.success||!n.cameraId||!n.cameraName)throw Error(n.error??`confirm failed`);return{cameraId:n.cameraId,cameraName:n.cameraName}}async function c(e){if(!Z?.ready.value)return{success:!1,error:`Not connected`};let t={id:e.discoveredId,name:e.name,model:e.model};try{let e=await Z.request(`cameras:hide-device`,{device:t});return e.success&&e.hiddenDevices&&(X.hiddenDevices=e.hiddenDevices),e}catch(e){return{success:!1,error:e instanceof Error?e.message:`hide-device failed`}}}async function l(e){if(!Z?.ready.value)return{success:!1,error:`Not connected`};try{let t=await Z.request(`cameras:unhide-device`,{deviceId:e});return t.success&&t.hiddenDevices&&(X.hiddenDevices=t.hiddenDevices),t}catch(e){return{success:!1,error:e instanceof Error?e.message:`unhide-device failed`}}}function u(){X.showHidden=!X.showHidden}function d(e){return e.type!==`discovered`||!e.discoveredId?!1:X.hiddenDevices.some(t=>t.id===e.discoveredId)}let f=U(()=>{let e=new Set(X.hiddenDevices.map(e=>e.id)),t=(e,t)=>e.name.localeCompare(t.name),n=X.devices.filter(e=>e.type===`camera`).sort(t),r=X.devices.filter(t=>t.type===`discovered`&&!e.has(t.discoveredId)).sort(t),i=X.showHidden?X.devices.filter(t=>t.type===`discovered`&&e.has(t.discoveredId)).sort(t):[];return[...n,...r,...i]});return n(()=>{$--,!($>0)&&($=0,wn=setTimeout(()=>{$<=0&&(kn(),wn=null)},Sn))}),{state:oe(X),isConnected:U(()=>Z?.connected.value??!1),isLoading:U(()=>X.isLoading),devices:U(()=>X.devices),isScanning:U(()=>X.isScanning),hiddenDevices:U(()=>X.hiddenDevices),showHidden:U(()=>X.showHidden),error:U(()=>X.error),sortedDevices:f,connect:e,disconnect:t,subscribe:Dn,unsubscribe:On,forceRescan:r,getConnectionSchema:i,connectDevice:a,prepareDevice:o,confirmDevice:s,hideDevice:c,unhideDevice:l,toggleShowHidden:u,isHidden:d}}var jn={class:`flex flex-col`},Mn={key:0,class:`page-title`},Nn={key:1,class:`flex min-h-0 flex-col`},Pn={key:0,class:`flex flex-1 min-h-0 flex-col items-center justify-center w-full gap-4`},Fn={key:1,class:`flex flex-1 min-h-0 flex-col items-center justify-center w-full gap-4 py-16`},In={class:`w-16 h-16 rounded-full bg-primary-500/10 flex items-center justify-center`},Ln={class:`flex flex-col items-center gap-1 max-w-[400px] text-center`},Rn={class:`text-color font-semibold text-base`},zn={class:`text-muted text-sm`},Bn={key:2,class:`flex min-h-0 flex-col`},Vn={class:`card-title`},Hn={class:`flex items-center justify-center`},Un={class:`font-bold text-color truncate`},Wn={class:`text-xs text-muted truncate`},Gn={key:0,class:`text-xs text-red-500 truncate`},Kn={class:`card-title`},qn={key:0,class:`flex flex-col gap-6`},Jn={class:`flex items-center justify-center`},Yn={class:`flex items-center justify-center`},Xn={key:1,class:`flex flex-col items-center justify-center py-6 gap-2`},Zn={class:`text-muted text-sm`},Qn={class:`flex flex-wrap items-center gap-2 mt-4`},$n=f(K({__name:`Cameras`,setup(e){let{t:n}=r(),u=c(),f=h(),v=_(),{smBreakpoint:y}=d(),b=An(),S={bodyRow:{class:`text-sm text-secondary`},column:{columnTitle:{class:`text-sm`}},datatable:{class:`z-0`}},C=U(()=>l(void 0,`admin`)),T=U(()=>b.sortedDevices.value),D=U(()=>T.value.filter(e=>e.type===`camera`)),O=U(()=>T.value.filter(e=>e.type===`discovered`)),k=U(()=>b.isLoading.value),A=U(()=>b.isScanning.value),j=U(()=>b.hiddenDevices.value),M=U(()=>b.showHidden.value),I=U(()=>j.value.length);function z(e){switch(e){case`added`:return`green`;case`discovered`:return`orange`;case`adopting`:return`orange`;case`error`:return`red`;default:return`gray`}}function re(e){switch(e){case`added`:return n(`views.devices.status_added`);case`discovered`:return n(`views.devices.status_discovered`);case`adopting`:return n(`views.devices.status_adopting`);case`error`:return n(`views.devices.status_error`);default:return n(`views.devices.status_unknown`)}}function ie(e){return b.isHidden(e)}async function ae(e){if(!ie(e)){if(e.type===`camera`){v.open({cameraName:e.name});return}if(e.type===`discovered`&&e.discoveredId){if(e.status===`adopting`)return;try{let t=await b.getConnectionSchema(e.discoveredId);if(!t.success){u.add({severity:`error`,summary:n(`views.devices.connect`),detail:t.error,life:3e3});return}f.openComponentDialog(xn,{data:{title:`${n(`views.devices.connect`)}: ${e.name}`,confirmText:n(`views.devices.connect`),contentProps:{camera:{id:e.discoveredId,name:e.name,model:e.model,address:e.address,provider:e.provider,connectionStatus:`idle`},schema:t.schema??[],onConnect:async t=>{V(await b.prepareDevice(e.discoveredId,t),e.discoveredId)}}}})}catch(e){u.add({severity:`error`,summary:n(`views.devices.connect`),detail:e,life:3e3})}}}}function V(e,t){f.openComponentDialog(hn,{data:{title:n(`views.devices.confirm_title`),confirmText:n(`views.devices.confirm`),fullscreen:!0,contentProps:{draft:e,onConfirm:async e=>{await b.confirmDevice(e,t),u.add({severity:`success`,summary:n(`views.devices.connect`),detail:n(`components.toast.camera_added`),life:3e3})}}}})}async function W(){try{let e=await b.forceRescan();e.success?u.add({severity:`success`,summary:n(`views.devices.rescan`),detail:n(`views.devices.rescan_success`),life:3e3}):u.add({severity:`error`,summary:n(`views.devices.rescan`),detail:e.error,life:3e3})}catch(e){u.add({severity:`error`,summary:n(`views.devices.rescan`),detail:e,life:3e3})}}function oe(){f.openComponentDialog(un,{data:{title:n(`components.dialog.components.new_camera.add_camera`),fullscreen:!0,contentProps:{}}})}async function K(e,t){e.stopPropagation();try{let e=await b.hideDevice(t);e.success?u.add({severity:`success`,summary:n(`views.devices.hide`),detail:n(`views.devices.device_hidden`),life:3e3}):u.add({severity:`error`,summary:n(`views.devices.hide`),detail:e.error,life:3e3})}catch(e){u.add({severity:`error`,summary:n(`views.devices.hide`),detail:e,life:3e3})}}async function q(e,t){e.stopPropagation();try{let e=await b.unhideDevice(t.discoveredId);e.success?u.add({severity:`success`,summary:n(`views.devices.unhide`),detail:n(`views.devices.device_unhidden`),life:3e3}):u.add({severity:`error`,summary:n(`views.devices.unhide`),detail:e.error,life:3e3})}catch(e){u.add({severity:`error`,summary:n(`views.devices.unhide`),detail:e,life:3e3})}}function se(){b.toggleShowHidden()}function Y(e){return ie(e)?`opacity-50 cursor-not-allowed`:``}return te(()=>{C.value&&b.connect()}),ee(()=>{C.value&&b.unsubscribe()}),(e,n)=>{let r=Le,c=o,u=t,d=g,f=a,h=i,_=pe,v=he,b=Ie,ee=m,te=ze,j=p,V=s;return E(),F(`div`,jn,[J(y)?G(``,!0):(E(),F(`h1`,Mn,w(e.$t(`views.${String(e.$route.name).toLowerCase()}.title`)),1)),J(C)?(E(),F(H,{key:2},[J(k)?(E(),F(`div`,Pn,[R(u,{"stroke-width":`5`,class:`w-[30px] h-[30px]`})])):G(``,!0),!J(k)&&!J(T).length?(E(),F(`div`,Fn,[P(`div`,In,[R(d,{class:`w-8 h-8 text-primary-500`})]),P(`div`,Ln,[P(`span`,Rn,w(J(A)?e.$t(`views.devices.scanning`):e.$t(`views.devices.no_devices`)),1),P(`span`,zn,w(J(A)?e.$t(`views.devices.scanning_hint`):e.$t(`views.devices.no_devices_hint`)),1)]),R(f,{class:`cui-button-medium mt-2`,severity:`secondary`,label:e.$t(`views.devices.rescan`),loading:J(A),onClick:W},null,8,[`label`,`loading`])])):G(``,!0),!J(k)&&J(D).length?(E(),F(`div`,Bn,[P(`span`,Vn,w(e.$t(`views.devices.status_adopted_cameras`)),1),R(c,{class:`cui-card`},{content:x(()=>[R(b,{value:J(D),"striped-rows":``,pt:S,class:`w-full`,onRowClick:n[0]||=e=>ae(e.data)},{default:x(()=>[R(_,{header:``,"header-class":`p-2 pl-4 w-5 max-w-5`,class:`p-2 pl-4 w-5 max-w-5`},{body:x(({data:e})=>[P(`div`,Hn,[L(R(h,{style:ne({background:z(e.status)})},null,8,[`style`]),[[V,{value:re(e.status)}]])])]),_:1}),R(_,{field:`name`,header:e.$t(`views.devices.name`),"header-class":`p-2`,class:`p-2 w-full min-w-[200px] max-w-0`},{body:x(({data:t})=>[P(`div`,Un,w(t.name),1),P(`div`,Wn,w(t.manufacturer||e.$t(`views.devices.unknown`))+` · `+w(t.model||e.$t(`views.devices.unknown`)),1),t.errorMessage?(E(),F(`div`,Gn,w(t.errorMessage),1)):G(``,!0)]),_:1},8,[`header`]),R(_,{field:`room`,header:e.$t(`components.form.label.room`),"header-class":`p-2 whitespace-nowrap`,class:`p-2 whitespace-nowrap`},{body:x(({data:t})=>[t.room?(E(),B(v,{key:0,label:t.room===`Default`?e.$t(`components.form.label.room_default`):t.room,class:`text-xs whitespace-nowrap`},null,8,[`label`])):G(``,!0)]),_:1},8,[`header`]),R(_,{field:`provider`,header:e.$t(`views.devices.provider`),"header-class":`p-2 pr-4 whitespace-nowrap`,class:`p-2 pr-4 whitespace-nowrap`},{body:x(({data:e})=>[R(v,{label:e.provider,class:`text-xs whitespace-nowrap`},null,8,[`label`])]),_:1},8,[`header`])]),_:1},8,[`value`])]),_:1})])):G(``,!0),!J(k)&&J(T).length?(E(),F(`div`,{key:3,class:N([`flex min-h-0 flex-col`,{"mt-6":J(D).length}])},[P(`span`,Kn,w(e.$t(`views.devices.status_discovered`)),1),R(c,{class:`cui-card`},{content:x(()=>[J(O).length?(E(),F(`div`,qn,[R(b,{value:J(O),"striped-rows":``,pt:S,class:`w-full`,onRowClick:n[1]||=e=>ae(e.data)},{default:x(()=>[R(_,{header:``,"header-class":`p-2 pl-4 w-5 max-w-5`,class:`p-2 pl-4 w-5 max-w-5`},{body:x(({data:e})=>[P(`div`,Jn,[L(R(h,{style:ne({background:z(e.status)})},null,8,[`style`]),[[V,{value:re(e.status)}]])])]),_:1}),R(_,{field:`name`,header:e.$t(`views.devices.name`),"header-class":`p-2`,class:`p-2 w-full min-w-[200px] max-w-0`},{body:x(({data:t})=>[P(`div`,{class:N([`font-bold text-color truncate`,Y(t)])},w(t.name),3),P(`div`,{class:N([`text-xs text-muted truncate`,Y(t)])},w(t.manufacturer||e.$t(`views.devices.unknown`))+` · `+w(t.model||e.$t(`views.devices.unknown`)),3)]),_:1},8,[`header`]),R(_,{field:`address`,header:e.$t(`views.devices.address`),"header-class":`p-2 whitespace-nowrap`,class:`p-2 whitespace-nowrap`},{body:x(({data:e})=>[e.address?(E(),F(`span`,{key:0,class:N([`text-xs text-muted whitespace-nowrap`,Y(e)])},w(e.address),3)):G(``,!0)]),_:1},8,[`header`]),R(_,{field:`provider`,header:e.$t(`views.devices.provider`),"header-class":`p-2 whitespace-nowrap`,class:`p-2 whitespace-nowrap`},{body:x(({data:e})=>[R(v,{label:e.provider,class:N([`text-xs whitespace-nowrap`,Y(e)])},null,8,[`label`,`class`])]),_:1},8,[`header`]),R(_,{header:``,"header-class":`p-2 pr-4 w-12`,class:`p-2 pr-4 w-12`},{body:x(({data:t})=>[P(`div`,Yn,[ie(t)?L((E(),B(f,{key:1,text:``,rounded:``,class:`cui-icon-md`,onClick:e=>q(e,t)},{icon:x(()=>[R(J(Ce),{width:`100%`,height:`100%`,class:`text-muted`})]),_:1},8,[`onClick`])),[[V,{value:e.$t(`views.devices.unhide`)},void 0,{left:!0}]]):L((E(),B(f,{key:0,severity:`secondary`,text:``,rounded:``,class:`cui-icon-md`,onClick:e=>K(e,t)},{icon:x(()=>[R(J(we),{width:`100%`,height:`100%`,class:`text-muted`})]),_:1},8,[`onClick`])),[[V,{value:e.$t(`views.devices.hide`)},void 0,{left:!0}]])])]),_:1})]),_:1},8,[`value`])])):(E(),F(`div`,Xn,[J(A)?(E(),B(ee,{key:0,width:`24px`,height:`24px`,class:`text-muted`})):(E(),B(te,{key:1,width:`32px`,height:`32px`,class:`text-muted`})),P(`span`,Zn,w(J(A)?e.$t(`views.devices.scanning`):e.$t(`views.devices.no_discovered`)),1)])),P(`div`,Qn,[n[2]||=P(`div`,{class:`ml-auto`},null,-1),J(I)>0?(E(),B(f,{key:0,severity:`secondary`,class:`cui-button-medium`,label:J(M)?e.$t(`views.devices.hide_hidden`):`${e.$t(`views.devices.show_hidden`)} (${J(I)})`,onClick:se},null,8,[`label`])):G(``,!0),R(f,{severity:`secondary`,class:`cui-button-medium`,label:e.$t(`views.devices.rescan`),loading:J(A),onClick:W},null,8,[`label`,`loading`])])]),_:1})],2)):G(``,!0)],64)):(E(),F(`div`,Nn,[R(c,{class:`cui-card`},{content:x(()=>[R(r)]),_:1})])),(`hasPermission`in e?e.hasPermission:J(l))(void 0,`admin`)?(E(),B(j,{key:3,"tooltip-props":{value:e.$t(`views.cameras.add_camera`)},"button-props":{class:`text-white`},icon:J(Re),"icon-props":{width:`30px`,height:`30px`},onClick:oe},null,8,[`tooltip-props`,`icon`])):G(``,!0)])}}}),[[`__scopeId`,`data-v-e79311c0`]]);export{$n as default};
@@ -0,0 +1 @@
1
+ import{B as e,Bt as t,Et as n,O as r,Ur as i,Vt as a,g as o,ii as s,qt as c,x as l}from"./vendor-cameraui-CK4yHsJi.js";import{A as u,Ar as d,Bn as f,Dr as p,Gn as m,It as h,Ln as g,Nn as _,On as ee,Rn as v,Tn as y,Zn as te,_ as ne,cn as re,ct as b,hn as x,in as S,jt as C,ln as w,mn as T,o as ie,pn as E,vn as ae,w as D,zn as oe}from"./api-C1mraOYr.js";import{$n as O,C as se,Cn as ce,Cr as k,Dn as le,Fn as ue,Hn as de,In as A,Jn as j,On as M,Pn as fe,Rn as pe,S as N,Sr as P,Tn as me,Xn as he,Xt as ge,_r as F,br as I,cn as L,dn as R,dr as z,en as _e,er as B,gn as V,hr as ve,jn as ye,ln as H,lr as be,mr as xe,nn as Se,rn as Ce,sn as U,sr as W,un as G,vn as K,x as we,yr as q}from"./vendor-gFkr2qsZ.js";import{a as Te}from"./intercomService-CjoJaOZ7.js";import{f as Ee}from"./eventIcons-UQutPG3p.js";import{p as De}from"./vendor-core-B-Q4es-f.js";import{a as Oe,i as ke,n as J,r as Y,t as X}from"./vendor-dnd-DGQLvX6Y.js";import{S as Ae,W as je,o as Me,q as Z,z as Q}from"./vendor-primevue-Cmp3VjIC.js";import{t as Ne}from"./close-CMxyM4v9.js";import{t as Pe}from"./microphone-BB2pATI_.js";import{t as Fe}from"./plus-CySoovdr.js";import{t as Ie}from"./pencil-CDsNnEXi.js";import{t as Le}from"./delete-Btu-UVx9.js";import{t as Re}from"./CuiCameraPipCard-Cb_Qbly6.js";import{n as ze,t as Be}from"./CuiTopNavbarItem-ve-3Dsc3.js";import{t as Ve}from"./vendor-gridstack-DtDG3os6.js";var He={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Ue(e,t){return A(),R(`svg`,He,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`m9.5 13.09l1.41 1.41l-4.5 4.5H10v2H3v-7h2v3.59zm1.41-3.59L9.5 10.91L5 6.41V10H3V3h7v2H6.41zm3.59 3.59l4.5 4.5V14h2v7h-7v-2h3.59l-4.5-4.5zM13.09 9.5l4.5-4.5H14V3h7v7h-2V6.41l-4.5 4.5z`},null,-1)]])}var We=W({name:`mdi-arrow-expand-all`,render:Ue}),Ge={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Ke(e,t){return A(),R(`svg`,Ge,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M7.5 5.6L5 7l1.4-2.5L5 2l2.5 1.4L10 2L8.6 4.5L10 7zm12 9.8L22 14l-1.4 2.5L22 19l-2.5-1.4L17 19l1.4-2.5L17 14zM22 2l-1.4 2.5L22 7l-2.5-1.4L17 7l1.4-2.5L17 2l2.5 1.4zm-8.66 10.78l2.44-2.44l-2.12-2.12l-2.44 2.44zm1.03-5.49l2.34 2.34c.39.37.39 1.02 0 1.41L5.04 22.71c-.39.39-1.04.39-1.41 0l-2.34-2.34c-.39-.37-.39-1.02 0-1.41L12.96 7.29c.39-.39 1.04-.39 1.41 0`},null,-1)]])}var qe=W({name:`mdi-auto-fix`,render:Ke}),Je={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Ye(e,t){return A(),R(`svg`,Je,[...t[0]||=[L(`path`,{fill:`currentColor`,"fill-rule":`evenodd`,d:`M9 3a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2zm10 0a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2h-4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2zm2 10a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2zM9 15a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-2a2 2 0 0 1 2-2z`,"clip-rule":`evenodd`},null,-1)]])}var Xe=W({name:`mingcute-grid2-fill`,render:Ye}),Ze={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Qe(e,t){return A(),R(`svg`,Ze,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M13 6v5h5V7.75L22.25 12L18 16.25V13h-5v5h3.25L12 22.25L7.75 18H11v-5H6v3.25L1.75 12L6 7.75V11h5V6H7.75L12 1.75L16.25 6z`},null,-1)]])}var $e=W({name:`mdi-cursor-move`,render:Qe}),et={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function tt(e,t){return A(),R(`svg`,et,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M17.41 2H6.59A4.58 4.58 0 0 0 2 6.59v10.82A4.58 4.58 0 0 0 6.59 22h10.82A4.58 4.58 0 0 0 22 17.41V6.59A4.58 4.58 0 0 0 17.41 2m-2.653 12.447a1.924 1.924 0 0 1-1.924 1.923h-5.86a1.924 1.924 0 0 1-1.923-1.923v-4.87a1.923 1.923 0 0 1 1.927-1.924h5.856a1.925 1.925 0 0 1 1.924 1.924Zm4.2.74a.771.771 0 0 1-1.266.59l-2.211-1.854a.85.85 0 0 1-.3-.653v-2.52a.85.85 0 0 1 .31-.657l2.206-1.82a.769.769 0 0 1 1.26.594Z`},null,-1)]])}var nt=W({name:`cbi-iosfacetime`,render:tt}),rt={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function it(e,t){return A(),R(`svg`,rt,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`m8.471 7.237l3.056 12.992c.233.993 1.63 1.04 1.929.065l2.945-9.58l.384 1.527a1 1 0 0 0 .97.756H21a1 1 0 1 0 0-2h-2.466l-1.069-4.241c-.247-.981-1.628-1.017-1.925-.05l-2.912 9.472L9.475 2.771c-.24-1.02-1.688-1.03-1.943-.014l-2.065 8.24H3a1 1 0 0 0 0 2h3.247a1 1 0 0 0 .97-.757z`},null,-1)]])}var at=W({name:`fluent-pulse-24-filled`,render:it}),ot={viewBox:`0 0 16 16`,width:`1.2em`,height:`1.2em`};function st(e,t){return A(),R(`svg`,ot,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M7.557 2.066A.75.75 0 0 1 8 2.75v10.5a.75.75 0 0 1-1.248.56L3.59 11H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h1.59l3.162-2.81a.75.75 0 0 1 .805-.124m5.393.984a.75.75 0 1 0-1.06 1.06a5.5 5.5 0 0 1 0 7.78a.75.75 0 1 0 1.06 1.06a7 7 0 0 0 0-9.9`},null,-1),L(`path`,{fill:`currentColor`,d:`M10.828 5.172a.75.75 0 1 0-1.06 1.06a2.5 2.5 0 0 1 0 3.536a.75.75 0 1 0 1.06 1.06a4 4 0 0 0 0-5.656`},null,-1)]])}var ct=W({name:`heroicons-speaker-wave-16-solid`,render:st}),lt={viewBox:`0 0 16 16`,width:`1.2em`,height:`1.2em`};function ut(e,t){return A(),R(`svg`,lt,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M7.557 2.066A.75.75 0 0 1 8 2.75v10.5a.75.75 0 0 1-1.248.56L3.59 11H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h1.59l3.162-2.81a.75.75 0 0 1 .805-.124M11.28 5.72a.75.75 0 1 0-1.06 1.06L11.44 8l-1.22 1.22a.75.75 0 1 0 1.06 1.06l1.22-1.22l1.22 1.22a.75.75 0 1 0 1.06-1.06L13.56 8l1.22-1.22a.75.75 0 0 0-1.06-1.06L12.5 6.94z`},null,-1)]])}var dt=W({name:`heroicons-speaker-x-mark-16-solid`,render:ut}),ft={viewBox:`0 0 48 48`,width:`1.2em`,height:`1.2em`};function pt(e,t){return A(),R(`svg`,ft,[...t[0]||=[L(`g`,{fill:`none`,stroke:`currentColor`,"stroke-linejoin":`round`,"stroke-width":`4`},[L(`path`,{fill:`currentColor`,d:`M16.866 7.47A18 18 0 0 0 16 13c0 9.941 8.059 18 18 18a17.9 17.9 0 0 0 7.134-1.47C38.801 36.767 32.012 42 24 42c-9.941 0-18-8.059-18-18c0-7.407 4.473-13.768 10.866-16.53Z`}),L(`path`,{"stroke-linecap":`round`,d:`M31.66 10H41l-10 8h10`})],-1)]])}var mt=W({name:`icon-park-solid-sleep`,render:pt}),$={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function ht(e,t){return A(),R(`svg`,$,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M10.4 13.45h3.2l.6 1.625q.075.2.238.313t.362.112q.35 0 .538-.275t.062-.6l-2.55-6.7q-.075-.2-.237-.312T12.25 7.5h-.5q-.2 0-.363.113t-.237.312L8.625 14.65q-.125.3.05.575t.525.275q.2 0 .363-.112t.237-.313zm.4-1.15L11.95 9h.1l1.15 3.3zM12 22q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12q0-.8.125-1.6T2.5 8.825q.125-.4.513-.537t.737.062q.375.2.538.588t.037.812q-.15.55-.238 1.113T4 12q0 3.35 2.325 5.675T12 20t5.675-2.325T20 12t-2.325-5.675T12 4q-.6 0-1.187.087T9.65 4.35q-.425.125-.8-.025T8.3 3.8t-.013-.762t.563-.513q.75-.275 1.55-.4T12 2q2.075 0 3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22M4.438 6.563Q4 6.125 4 5.5t.438-1.062T5.5 4t1.063.438T7 5.5t-.437 1.063T5.5 7t-1.062-.437M12 12`},null,-1)]])}var gt=W({name:`material-symbols-motion-photos-auto-outline-rounded`,render:ht}),_t={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function vt(e,t){return A(),R(`svg`,_t,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M21 15v3h3v2h-3v3h-2v-3h-3v-2h3v-3zm-7 3H3V6h16v7h2V6c0-1.11-.89-2-2-2H3a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h11z`},null,-1)]])}var yt=W({name:`mdi-card-plus-outline`,render:vt}),bt={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function xt(e,t){return A(),R(`svg`,bt,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M12 2a7 7 0 0 1 7 7a7 7 0 0 1-7 7a7 7 0 0 1-7-7a7 7 0 0 1 7-7m0 2a5 5 0 0 0-5 5a5 5 0 0 0 5 5a5 5 0 0 0 5-5a5 5 0 0 0-5-5m0 2a3 3 0 0 1 3 3a3 3 0 0 1-3 3a3 3 0 0 1-3-3a3 3 0 0 1 3-3M6 22a2 2 0 0 1-2-2c0-.38.1-.73.29-1.03l1.82-3.16A9 9 0 0 0 12 18c2.25 0 4.31-.83 5.89-2.19l1.82 3.16c.19.3.29.65.29 1.03a2 2 0 0 1-2 2z`},null,-1)]])}var St=W({name:`mdi-webcam`,render:xt}),Ct={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function wt(e,t){return A(),R(`svg`,Ct,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M9.367 2.25h5.266c1.092 0 1.958 0 2.655.057c.714.058 1.317.18 1.869.46a4.75 4.75 0 0 1 2.075 2.077c.281.55.403 1.154.461 1.868c.057.697.057 1.563.057 2.655v5.266c0 1.092 0 1.958-.057 2.655c-.058.714-.18 1.317-.46 1.869a4.75 4.75 0 0 1-2.076 2.075c-.552.281-1.155.403-1.869.461c-.697.057-1.563.057-2.655.057H9.367c-1.092 0-1.958 0-2.655-.057c-.714-.058-1.317-.18-1.868-.46a4.75 4.75 0 0 1-2.076-2.076c-.281-.552-.403-1.155-.461-1.869c-.057-.697-.057-1.563-.057-2.655V9.367c0-1.092 0-1.958.057-2.655c.058-.714.18-1.317.46-1.868a4.75 4.75 0 0 1 2.077-2.076c.55-.281 1.154-.403 1.868-.461c.697-.057 1.563-.057 2.655-.057M10.25 8a.75.75 0 0 0-1.5 0v8a.75.75 0 0 0 1.5 0v-3.25h3.5V16a.75.75 0 0 0 1.5 0V8a.75.75 0 0 0-1.5 0v3.25h-3.5z`},null,-1)]])}var Tt=W({name:`mynaui-letter-h-square-solid`,render:wt}),Et={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Dt(e,t){return A(),R(`svg`,Et,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M9.367 2.25h5.266c1.092 0 1.958 0 2.655.057c.714.058 1.317.18 1.869.46a4.75 4.75 0 0 1 2.075 2.077c.281.55.403 1.154.461 1.868c.057.697.057 1.563.057 2.655v5.266c0 1.092 0 1.958-.057 2.655c-.058.714-.18 1.317-.46 1.869a4.75 4.75 0 0 1-2.076 2.075c-.552.281-1.155.403-1.869.461c-.697.057-1.563.057-2.655.057H9.367c-1.092 0-1.958 0-2.655-.057c-.714-.058-1.317-.18-1.868-.46a4.75 4.75 0 0 1-2.076-2.076c-.281-.552-.403-1.155-.461-1.869c-.057-.697-.057-1.563-.057-2.655V9.367c0-1.092 0-1.958.057-2.655c.058-.714.18-1.317.46-1.868a4.75 4.75 0 0 1 2.077-2.076c.55-.281 1.154-.403 1.868-.461c.697-.057 1.563-.057 2.655-.057M10.25 8a.75.75 0 0 0-1.5 0v7.5c0 .414.336.75.75.75H15a.75.75 0 0 0 0-1.5h-4.75z`},null,-1)]])}var Ot=W({name:`mynaui-letter-l-square-solid`,render:Dt}),kt={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function At(e,t){return A(),R(`svg`,kt,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M9.367 2.25h5.266c1.092 0 1.958 0 2.655.057c.714.058 1.317.18 1.869.46a4.75 4.75 0 0 1 2.075 2.077c.281.55.403 1.154.461 1.868c.057.697.057 1.563.057 2.655v5.266c0 1.092 0 1.958-.057 2.655c-.058.714-.18 1.317-.46 1.869a4.75 4.75 0 0 1-2.076 2.075c-.552.281-1.155.403-1.869.461c-.697.057-1.563.057-2.655.057H9.367c-1.092 0-1.958 0-2.655-.057c-.714-.058-1.317-.18-1.868-.46a4.75 4.75 0 0 1-2.076-2.076c-.281-.552-.403-1.155-.461-1.869c-.057-.697-.057-1.563-.057-2.655V9.367c0-1.092 0-1.958.057-2.655c.058-.714.18-1.317.46-1.868a4.75 4.75 0 0 1 2.077-2.076c.55-.281 1.154-.403 1.868-.461c.697-.057 1.563-.057 2.655-.057m.233 5.3A.75.75 0 0 0 8.25 8v8a.75.75 0 0 0 1.5 0v-5.75l1.65 2.2a.75.75 0 0 0 1.2 0l1.65-2.2V16a.75.75 0 0 0 1.5 0V8a.75.75 0 0 0-1.35-.45l-2.4 3.2z`},null,-1)]])}var jt=W({name:`mynaui-letter-m-square-solid`,render:At}),Mt={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Nt(e,t){return A(),R(`svg`,Mt,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M12 .36A5.4 5.4 0 0 0 6.62 5.3a5.4 5.4 0 0 0-1.22-.14a5.4 5.4 0 0 0-2.143 10.357a5.4 5.4 0 0 0-.737 2.723a5.4 5.4 0 0 0 9.54 3.466a5.4 5.4 0 0 0 8.833-6.137a5.4 5.4 0 0 0-3.505-10.152A5.4 5.4 0 0 0 12 .36M6.283 7.228h10.592c.746 0 1.352.605 1.352 1.349v7.646a1.35 1.35 0 0 1-1.352 1.348h-3.608l-7.24 3.55l1.1-3.55h-.844a1.35 1.35 0 0 1-1.352-1.348V8.577c0-.744.606-1.349 1.352-1.349`},null,-1)]])}var Pt=W({name:`simple-icons-webrtc`,render:Nt}),Ft={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function It(e,t){return A(),R(`svg`,Ft,[...t[0]||=[L(`path`,{fill:`currentColor`,d:`M9 3h2v2H9zm4 0h2v2h-2zM9 7h2v2H9zm4 0h2v2h-2zm-4 4h2v2H9zm4 0h2v2h-2zm-4 4h2v2H9zm4 0h2v2h-2zm-4 4h2v2H9zm4 0h2v2h-2z`},null,-1)]])}var Lt=W({name:`mdi-drag-vertical`,render:It}),Rt={class:`text-sm text-muted truncate`},zt=_(K({__name:`ViewDnDDrag`,props:{camera:{},isDropped:{type:Boolean},canDrag:{type:Boolean}},setup(e){let{camera:t,canDrag:n}=F(e),r=j(`boxRef`),i=xe(null),o=z(0),s=z(0),c=z(!1),{x:l,y:u}=f(),{isTouch:d}=oe(),[p,m]=ke(()=>({type:`camera-sidebar`,options:{dropEffect:`copy`},item:t.value,canDrag:n.value,collect:e=>({style:{opacity:e.isDragging()?.4:1},isDragging:e.isDragging()})})),h=U(()=>p.value.isDragging),g=U(()=>h.value&&d.value);function _(e){d.value&&e.preventDefault()}function v(){i.value&&document.body.contains(i.value)&&document.body.removeChild(i.value),i.value=null}function y(){if(v(),!r.value)return;let e=r.value.cloneNode(!0),t=r.value.getBoundingClientRect();e.style.width=`${t.width}px`,e.style.height=`${t.height}px`,e.classList.add(`drag-preview`),e.style.position=`fixed`,e.style.left=`${l.value-o.value}px`,e.style.top=`${u.value-s.value}px`,document.body.appendChild(e),i.value=e}function te(){c.value=!1,v()}function ne(){te(),c.value=!0;let e=r.value?.getBoundingClientRect();e&&(o.value=l.value-e.left,s.value=u.value-e.top,y())}function re(){i.value&&c.value&&requestAnimationFrame(()=>{i.value&&(i.value.style.left=`${l.value-o.value}px`,i.value.style.top=`${u.value-s.value}px`)})}return he(g,e=>e?ne():te()),he([l,u],()=>re(),{flush:`sync`}),ye(()=>te()),(n,i)=>{let o=Lt,s=ee,c=a;return A(),R(`div`,{ref_key:`boxRef`,ref:r,onDragstart:_},[L(`div`,{ref:q(m),style:P(q(p).style)},[V(c,{disabled:e.isDropped,fluid:``,severity:`secondary`,class:`cui-rounded-corner dark-mode shadow-sm items-center justify-normal`,style:P({cursor:e.isDropped?`not-allowed`:`grab`})},{default:O(()=>[V(o,{size:`20`,class:`text-muted mr-2`}),V(s,{camera:q(t),width:`110px`,class:I([`cui-rounded-corner shadow-md overflow-hidden`,{"opacity-30":e.isDropped}])},null,8,[`camera`,`class`]),L(`span`,Rt,k(q(t).name),1)]),_:1},8,[`disabled`,`style`])],4)],544)}}}),[[`__scopeId`,`data-v-5498a5c0`]]),Bt={editMode:!1,rearrangeMode:!1,viewSize:1},Vt=Object.fromEntries(Object.entries({1:{cols:1,rows:1},4:{cols:2,rows:2},6:{cols:3,rows:3},7:{cols:4,rows:4},9:{cols:3,rows:3},10:{cols:4,rows:4},12:{cols:6,rows:6},13:{cols:4,rows:4},15:{cols:12,rows:12},16:{cols:4,rows:4},20:{cols:6,rows:6},26:{cols:12,rows:12}}).map(([e,t])=>[e,{cols:t.cols*16,rows:t.rows*16}])),Ht=e=>e.map(e=>({x:e.x*16,y:e.y*16,w:e.w*16,h:e.h*16})),Ut=Object.fromEntries(Object.entries({1:[{x:0,y:0,w:1,h:1}],4:[{x:0,y:0,w:1,h:1},{x:1,y:0,w:1,h:1},{x:0,y:1,w:1,h:1},{x:1,y:1,w:1,h:1}],6:[{x:0,y:0,w:2,h:2},{x:2,y:0,w:1,h:1},{x:2,y:1,w:1,h:1},{x:0,y:2,w:1,h:1},{x:1,y:2,w:1,h:1},{x:2,y:2,w:1,h:1}],7:[{x:0,y:0,w:2,h:2},{x:2,y:0,w:2,h:2},{x:0,y:2,w:2,h:2},{x:2,y:2,w:1,h:1},{x:3,y:2,w:1,h:1},{x:2,y:3,w:1,h:1},{x:3,y:3,w:1,h:1}],9:[{x:0,y:0,w:1,h:1},{x:1,y:0,w:1,h:1},{x:2,y:0,w:1,h:1},{x:0,y:1,w:1,h:1},{x:1,y:1,w:1,h:1},{x:2,y:1,w:1,h:1},{x:0,y:2,w:1,h:1},{x:1,y:2,w:1,h:1},{x:2,y:2,w:1,h:1}],10:[{x:0,y:0,w:2,h:2},{x:0,y:2,w:2,h:2},{x:2,y:0,w:1,h:1},{x:3,y:0,w:1,h:1},{x:2,y:1,w:1,h:1},{x:3,y:1,w:1,h:1},{x:2,y:2,w:1,h:1},{x:3,y:2,w:1,h:1},{x:2,y:3,w:1,h:1},{x:3,y:3,w:1,h:1}],12:[{x:0,y:0,w:3,h:3},{x:3,y:0,w:3,h:3},{x:0,y:3,w:3,h:3},{x:3,y:3,w:1,h:1},{x:4,y:3,w:1,h:1},{x:5,y:3,w:1,h:1},{x:3,y:4,w:1,h:1},{x:4,y:4,w:1,h:1},{x:5,y:4,w:1,h:1},{x:3,y:5,w:1,h:1},{x:4,y:5,w:1,h:1},{x:5,y:5,w:1,h:1}],13:[{x:0,y:0,w:2,h:2},{x:2,y:0,w:1,h:1},{x:3,y:0,w:1,h:1},{x:2,y:1,w:1,h:1},{x:3,y:1,w:1,h:1},{x:0,y:2,w:1,h:1},{x:1,y:2,w:1,h:1},{x:2,y:2,w:1,h:1},{x:3,y:2,w:1,h:1},{x:0,y:3,w:1,h:1},{x:1,y:3,w:1,h:1},{x:2,y:3,w:1,h:1},{x:3,y:3,w:1,h:1}],15:[{x:0,y:0,w:6,h:6},{x:6,y:0,w:6,h:6},{x:0,y:6,w:3,h:3},{x:3,y:6,w:3,h:3},{x:0,y:9,w:3,h:3},{x:3,y:9,w:3,h:3},{x:6,y:6,w:2,h:2},{x:8,y:6,w:2,h:2},{x:10,y:6,w:2,h:2},{x:6,y:8,w:2,h:2},{x:8,y:8,w:2,h:2},{x:10,y:8,w:2,h:2},{x:6,y:10,w:2,h:2},{x:8,y:10,w:2,h:2},{x:10,y:10,w:2,h:2}],16:[{x:0,y:0,w:1,h:1},{x:1,y:0,w:1,h:1},{x:2,y:0,w:1,h:1},{x:3,y:0,w:1,h:1},{x:0,y:1,w:1,h:1},{x:1,y:1,w:1,h:1},{x:2,y:1,w:1,h:1},{x:3,y:1,w:1,h:1},{x:0,y:2,w:1,h:1},{x:1,y:2,w:1,h:1},{x:2,y:2,w:1,h:1},{x:3,y:2,w:1,h:1},{x:0,y:3,w:1,h:1},{x:1,y:3,w:1,h:1},{x:2,y:3,w:1,h:1},{x:3,y:3,w:1,h:1}],20:[{x:0,y:0,w:3,h:3},{x:0,y:3,w:3,h:3},{x:3,y:0,w:1,h:1},{x:4,y:0,w:1,h:1},{x:5,y:0,w:1,h:1},{x:3,y:1,w:1,h:1},{x:4,y:1,w:1,h:1},{x:5,y:1,w:1,h:1},{x:3,y:2,w:1,h:1},{x:4,y:2,w:1,h:1},{x:5,y:2,w:1,h:1},{x:3,y:3,w:1,h:1},{x:4,y:3,w:1,h:1},{x:5,y:3,w:1,h:1},{x:3,y:4,w:1,h:1},{x:4,y:4,w:1,h:1},{x:5,y:4,w:1,h:1},{x:3,y:5,w:1,h:1},{x:4,y:5,w:1,h:1},{x:5,y:5,w:1,h:1}],26:[{x:0,y:0,w:3,h:3},{x:3,y:0,w:3,h:3},{x:0,y:3,w:3,h:3},{x:3,y:3,w:3,h:3},{x:6,y:0,w:2,h:2},{x:8,y:0,w:2,h:2},{x:10,y:0,w:2,h:2},{x:6,y:2,w:2,h:2},{x:8,y:2,w:2,h:2},{x:10,y:2,w:2,h:2},{x:6,y:4,w:2,h:2},{x:8,y:4,w:2,h:2},{x:10,y:4,w:2,h:2},{x:0,y:6,w:2,h:2},{x:2,y:6,w:2,h:2},{x:4,y:6,w:2,h:2},{x:0,y:8,w:2,h:2},{x:2,y:8,w:2,h:2},{x:4,y:8,w:2,h:2},{x:0,y:10,w:2,h:2},{x:2,y:10,w:2,h:2},{x:4,y:10,w:2,h:2},{x:6,y:6,w:3,h:3},{x:9,y:6,w:3,h:3},{x:6,y:9,w:3,h:3},{x:9,y:9,w:3,h:3}]}).map(([e,t])=>[e,Ht(t)])),Wt={class:`text-lg font-semibold text-white`},Gt={class:`flex flex-col gap-3 w-full h-full overflow-y-auto`},Kt={class:`cui-label`},qt={key:0,class:`text-muted text-sm`},Jt=K({__name:`ViewDnDSidebar`,props:{cameras:{},droppedCameras:{},title:{}},emits:[`changeViewSize`],setup(e,{emit:t}){let n=e,r=t,{droppedCameras:i}=F(n);function o(e){return i.value.some(t=>t.name===e.name)}return(t,n)=>{let i=a,s=zt;return A(),R(`div`,{class:`sidebar-view-background flex flex-col p-2 border-[1px] border-color gap-2 rounded-xl`,style:P({width:`${q(400)}px`})},[L(`span`,Wt,k(e.title),1),L(`div`,Gt,[V(i,{fluid:``,label:`Change grid size`,class:`cui-button-small dark-mode shrink-0 my-4`,onClick:n[0]||=e=>r(`changeViewSize`)}),L(`label`,Kt,k(t.$t(`components.view_box.available_streams`)),1),(A(!0),R(Ce,null,pe(e.cameras,(e,t)=>(A(),R(`div`,{key:t},[V(s,{camera:e,"is-dropped":o(e),"can-drag":!o(e)},null,8,[`camera`,`is-dropped`,`can-drag`])]))),128)),e.cameras.length?G(``,!0):(A(),R(`span`,qt,k(t.$t(`components.view_box.no_cameras`)),1))])],4)}}}),Yt={key:1,class:`w-full h-full bg-[#1a1a1a] flex items-center justify-center`},Xt={key:2,class:`w-full h-full bg-[#111]`},Zt={key:1,class:`w-full h-full flex items-center justify-center`},Qt={key:0},$t=_(K({__name:`ViewDnDCard`,props:{camera:{},cameras:{},droppedCameras:{},mode:{},index:{},cameraCardProps:{},cameraCardModels:{},onDrop:{type:Function}},emits:[`drop`,`remove`,`expand`],setup(e,{expose:t,emit:n}){let r=e,i=n,{lgBreakpoint:o}=g(),{camera:l,mode:u,cameras:d,droppedCameras:f}=F(r),p=j(`boxRef`),m=j(`containerRef`),h=j(`playerRef`),_=j(`menuRef`),{width:v}=s(m),[y,te]=Y({accept:`camera-sidebar`,drop:r.onDrop,collect:e=>({isOver:e.isOver(),canDrop:e.canDrop()&&!l.value}),canDrop:()=>u.value===`edit`&&!l.value}),ne=U(()=>y.value.canDrop&&y.value.isOver),re=U(()=>u.value===`edit`?ne.value?`#171717`:`#202020`:`#000`),b=U(()=>v.value<=200),S=U(()=>d.value.filter(e=>!f.value.some(t=>t.name===e.name))),C=U(()=>S.value.map(e=>({label:e.name,onClick:()=>i(`drop`,e)})));function w(e){h.value?.toggleMute(e)}async function T(e,t){await h.value?.toggleMicrophone(e,t)}function ie(e){h.value?.toggleActivityMode(e)}async function E(e){await h.value?.toggleSourceRole(e)}async function ae(e){await h.value?.toggleStreamingMode(e)}function D(e){h.value?.toggleBbox(e)}function oe(e){h.value?.togglePip(e)}return t({togglePlayerMute:w,toggleMicrophone:T,togglePlayerActivityMode:ie,togglePlayerSourceRole:E,togglePlayerStreamingMode:ae,togglePlayerBbox:D,togglePip:oe}),(t,n)=>{let r=Re,s=Fe,f=Ne,g=a,v=ee,y=x,ne=c;return A(),R(`div`,{ref_key:`boxRef`,ref:p,class:`view-dnd-card`},[q(u)===`normal`||q(u)===`rearrange`?(A(),R(Ce,{key:0},[q(l)?(A(),H(r,le({key:0,ref_key:`playerRef`,ref:h},e.cameraCardProps,{"activity-mode":e.cameraCardModels?.activityMode,"source-role":e.cameraCardModels?.sourceRole,"streaming-mode":e.cameraCardModels?.streamingMode,"camera-info":q(l),class:`w-full h-full`,onExpand:n[0]||=e=>i(`expand`,q(l),e)}),null,16,[`activity-mode`,`source-role`,`streaming-mode`,`camera-info`])):q(u)===`rearrange`?(A(),R(`div`,Yt,[V(s,{class:`w-6 h-6 text-white/20`})])):(A(),R(`div`,Xt))],64)):q(u)===`edit`?(A(),R(Ce,{key:1},[L(`div`,{ref:q(te),style:P({backgroundColor:q(re)}),class:`w-full h-full`},[q(l)?(A(),R(`div`,{key:0,ref_key:`containerRef`,ref:m,class:`w-full h-full flex items-center justify-center relative min-w-0`},[V(g,{class:I([`z-1`,{"cui-icon-lg":q(b),"cui-button-small max-w-[85%]":!q(b)}]),label:q(b)?void 0:q(l).name,onClick:n[1]||=Se(e=>i(`remove`,q(l)),[`prevent`])},{icon:O(()=>[V(f)]),_:1},8,[`class`,`label`]),V(v,{camera:q(l),class:`absolute w-full h-full top-0 left-0 bg-black/50 opacity-20`},null,8,[`camera`])],512)):q(o)?G(``,!0):(A(),R(`div`,Zt,[q(d).length?(A(),H(g,{key:1,text:``,rounded:``,class:`cui-icon-md`,onClick:q(_)?.toggleMenu},{icon:O(()=>[V(s,{width:`100%`,height:`100%`})]),_:1},8,[`onClick`])):B((A(),R(`div`,Qt,[V(g,{text:``,rounded:``,disabled:``,class:`cui-icon-md`},{icon:O(()=>[V(s,{width:`100%`,height:`100%`})]),_:1})])),[[ne,{value:t.$t(`views.camview.no_cameras`)},void 0,{top:!0}]])]))],4),V(y,{ref_key:`menuRef`,ref:_,items:q(C),popover:{pt:{content:{class:`p-0! rounded-xl! overflow-hidden!`}}}},null,8,[`items`])],64)):G(``,!0)],512)}}}),[[`__scopeId`,`data-v-ca177470`]]),en={class:`w-full h-full flex flex-row`},tn=[`gs-id`,`gs-x`,`gs-y`,`gs-w`,`gs-h`],nn={class:`grid-stack-item-content`},rn={key:0,class:`absolute top-2 left-2 z-20 px-2 py-1 rounded-md bg-black/75 text-white text-xs tabular-nums pointer-events-none select-none`},an=_(K({__name:`CuiCameraViewDnD`,props:me({cameras:{},viewSize:{},cards:{},title:{},editMode:{type:Boolean},rearrangeMode:{type:Boolean},cameraCardProps:{},cameraCardModels:{}},Bt),emits:[`drop`,`remove`,`changeViewSize`,`expand`,`rearrange`],setup(e,{expose:t,emit:i}){let o=e,c=i,{isTouch:l}=oe(),{smBreakpoint:u,lgBreakpoint:d}=g(),f=ce(r,void 0),p=D(),{routeFrom:m,routeTo:h}=De(p),{editMode:_,rearrangeMode:ee,viewSize:v,cards:y,cameraCardProps:te}=F(o),ne=j(`viewRef`),re=j(`wrapperRef`),b=j(`gridRef`),x=j(`cardRefs`),S=z(),C=z(),T=null,ie=z(),E=z({w:0,h:0}),{isFullscreen:ae,toggle:se}=n(ne,{mode:`scroll`}),le=s(ne),ue=s(re),de=U(()=>_.value?`edit`:ee.value?`rearrange`:`normal`),N=U(()=>y.value.map((e,t)=>({card:e,index:t})).filter(({card:e})=>de.value===`edit`||e.lastDroppedCamera!==void 0)),me=U(()=>S.value??C.value),ge=U(()=>e=>{let t={...ve(te.value)};if(e){let n=m.value?.includes(`/cameras/${e.name}`)??!1,r=h.value?.includes(`/cameras/${e.name}`)??!1,i=t.viewTransition&&(n||r),a=`/cameras/${e.name}`;t.routerLink=f?.isActive.value?`${a}?startTs=${Math.floor(f.currentTimestamp.value/1e3)}`:a,t.viewTransition=i}return t}),be=U(()=>(le.height.value-16)*(16/9)),xe=U(()=>y.value.filter(e=>e.lastDroppedCamera).map(e=>e.lastDroppedCamera));function Se(e){let t=y.value[e];if(u.value)return{x:0,y:t?.y??e,w:1,h:1};let n=Ut[v.value]?.[e];return{x:t?.x??n?.x??0,y:t?.y??n?.y??0,w:t?.colSpan??n?.w??1,h:t?.rowSpan??n?.h??1}}function W(){if(!T)return;let e=[];for(let t of T.getGridItems()){let n=t.gridstackNode;if(!n)continue;let r=parseInt(n.id),i=y.value[r];i?.lastDroppedCamera&&e.push({index:r,cameraId:i.lastDroppedCamera._id,colSpan:n.w,rowSpan:n.h,x:n.x,y:n.y})}c(`rearrange`,e)}function K(){de.value===`rearrange`&&W()}function we(e){let t=parseInt(e.gridstackNode?.id??``);if(Number.isNaN(t))return;let n=e.getBoundingClientRect();ie.value=t,E.value={w:Math.round(n.width),h:Math.round(n.height)}}function Te(){if(!b.value)return;let e=Vt[v.value];if(!e)return;let t=u.value,n=t?1:e.cols,r=t?N.value.length:e.rows,i=re.value?.clientWidth??0,a=t?i*9/16:i>0?i*9/16/e.rows:60,o=de.value===`rearrange`;T=Ve.init({column:n,minRow:r,cellHeight:a,margin:o?3:1,mode:t?`top`:`float`,animate:!1,staticGrid:!o,resizable:t?{handles:``}:{handles:`se`},disableResize:t,alwaysShowResizeHandle:!t},b.value),T&&(T.on(`change`,K),T.on(`resizestart`,(e,t)=>we(t)),T.on(`resize`,(e,t)=>we(t)),T.on(`resizestop`,()=>{ie.value=void 0}),requestAnimationFrame(()=>T?.setAnimation(!0)))}function Ee(){T&&=(ie.value=void 0,T.offAll(),T.destroy(!1),null)}function ke(e){let t=y.value.findIndex(t=>t.lastDroppedCamera?._id===e);if(t===-1||S.value===t)return;let n=y.value[t].lastDroppedCamera;C.value=void 0,S.value=t,c(`expand`,n,!0)}function Y(e,t,n){n?S.value=t:(C.value=t,S.value=void 0,setTimeout(()=>{C.value=void 0},250)),c(`expand`,e,n)}async function Ae(){await se()}function je(e){for(let t of x.value||[])t.togglePlayerMute(e)}async function Me(e,t){await Promise.allSettled((x.value||[]).map(n=>n.toggleMicrophone(e,t)))}function Z(e){for(let t of x.value||[])t.togglePlayerActivityMode(e)}async function Q(e){await Promise.allSettled((x.value||[]).map(t=>t.togglePlayerSourceRole(e)))}async function Ne(e){await Promise.allSettled((x.value||[]).map(t=>t.togglePlayerStreamingMode(e)))}function Pe(e){for(let t of x.value||[])t.togglePlayerBbox(e)}function Fe(e){for(let t of x.value||[])t.togglePip(e)}function Ie(){T&&(T.compact(),W())}function Le(){if(!T)return;let e=Vt[v.value];if(!e)return;let t=e.cols,n=[];for(let e of T.getGridItems()){let t=e.gridstackNode;if(!t)continue;let r=parseInt(t.id),[i,a]=((y.value[r]?.lastDroppedCamera)?.interfaceSettings?.aspectRatio||`16:9`).split(`:`).map(Number);n.push({idx:r,el:e,cellRatio:i/a*(9/16)})}if(!n.length)return;let r=e.rows;function i(e){let r=[],i=0,a=0;for(;a<n.length;){let o=[],s=0,c=!1;for(;a<n.length;){let r=n[a].cellRatio;if(e*(s+r)>t&&o.length>0){c=!0;break}o.push(n[a]),s+=r,a++}let l=c?t/s:e;r.push({row:o,ratioSum:s,rowH:l,filled:c}),i+=l}return{rows:r,totalH:i}}let a=.25,o=r,s=a;for(let e=0;e<40;e++){let e=(a+o)/2;i(e).totalH<=r?(s=e,a=e):o=e}let{rows:c}=i(s),l=c.reduce((e,t)=>e+t.rowH,0)||1,u=l>r?r/l:1,d=c.map(e=>e.rowH*u),f=d.reduce((e,t)=>e+t,0),p=new Map,m=Math.max(0,Math.round((r-f)/2)),h=m;for(let e=0;e<c.length;e++){h+=d[e];let n=Math.min(r,Math.round(h)),i=Math.max(1,n-m),{row:a,ratioSum:o,filled:s}=c[e];if(s){let e=0;for(let n=0;n<a.length;n++){let r=n===a.length-1?Math.max(1,t-e):Math.max(1,Math.round(a[n].cellRatio/o*t));p.set(a[n].idx,{x:e,y:m,w:r,h:i}),e+=r}}else{let e=a.map(e=>Math.max(1,Math.round(e.cellRatio*i))),n=e.reduce((e,t)=>e+t,0),r=Math.max(0,Math.round((t-n)/2));for(let t=0;t<a.length;t++)p.set(a[t].idx,{x:r,y:m,w:e[t],h:i}),r+=e[t]}m=n}T.batchUpdate();for(let[e,t]of p){let r=n.find(t=>t.idx===e);r&&T.update(r.el,t)}T.batchUpdate(!1),W()}return he([v,()=>N.value.length,u],()=>{Ee(),M(()=>Te())},{immediate:!1}),he(de,e=>{if(!T)return;let t=e===`rearrange`;T.setStatic(!t),T.margin(t?3:1)}),he(()=>ue.width.value,e=>{if(!(!T||e<=0)){if(T.setAnimation(!1),u.value)T.cellHeight(e*9/16);else{let t=Vt[v.value]?.rows??1;T.cellHeight(e*9/16/t)}requestAnimationFrame(()=>T?.setAnimation(!0))}}),fe(()=>{M(()=>Te())}),ye(()=>{Ee()}),t({expandCameraById:ke,toggleFullscreen:Ae,toggleAllPlayerMute:je,toggleAllPlayerMicrophone:Me,toggleAllPlayerActivityMode:Z,toggleAllPlayerSourceRole:Q,toggleAllPlayerStreamingMode:Ne,toggleAllPlayerBbox:Pe,toggleAllPip:Fe,compactGrid:Ie,fitAspectRatios:Le,isFullscreen:ae}),(t,n)=>{let r=w,i=a,o=$t,s=Jt;return A(),H(q(Oe),{backend:q(l)?q(X):q(J),options:q(l)?{enableMouseEvents:!0}:void 0},{default:O(()=>[L(`div`,en,[L(`div`,{ref_key:`viewRef`,ref:ne,class:I([`view-container w-full flex flex-col min-w-0 overflow-y-auto items-center`,{"px-2":q(_)&&q(d)}])},[q(ae)?(A(),H(i,{key:0,severity:`secondary`,rounded:``,class:`cui-fs-exit`,"aria-label":t.$t(`components.form.tooltip.fullscreen_off`),onClick:q(se)},{icon:O(()=>[V(r,{class:`w-5 h-5`})]),_:1},8,[`aria-label`,`onClick`])):G(``,!0),q(me)===void 0?G(``,!0):(A(),R(`div`,{key:1,class:`w-full aspect-video relative my-auto`,style:P({maxWidth:`${q(be)}px`})},[V(o,{ref:`fsCardRef`,class:I([`w-full h-full`,{"card-expanded":q(S)!==void 0,"card-collapsing":q(C)!==void 0}]),camera:q(y)[q(me)]?.lastDroppedCamera,cameras:e.cameras,"dropped-cameras":q(xe),mode:`normal`,index:q(me),"camera-card-props":{...q(ge)(q(y)[q(me)]?.lastDroppedCamera),expanded:!0},"camera-card-models":e.cameraCardModels,onExpand:n[0]||=(e,t)=>Y(e,q(me),t)},null,8,[`class`,`camera`,`cameras`,`dropped-cameras`,`index`,`camera-card-props`,`camera-card-models`])],4)),B(L(`div`,{ref_key:`wrapperRef`,ref:re,class:I([`w-full relative my-auto`,q(u)?`h-auto`:`aspect-video`]),style:P(q(u)?void 0:{maxWidth:`${q(be)}px`})},[L(`div`,{ref_key:`gridRef`,ref:b,class:`grid-stack w-full h-full`},[(A(!0),R(Ce,null,pe(q(N),({card:t,index:r})=>(A(),R(`div`,{key:r,class:`grid-stack-item`,"gs-id":String(r),"gs-x":Se(r).x,"gs-y":Se(r).y,"gs-w":Se(r).w,"gs-h":Se(r).h},[L(`div`,nn,[V(o,{ref_for:!0,ref_key:`cardRefs`,ref:x,camera:t.lastDroppedCamera,cameras:e.cameras,"dropped-cameras":q(xe),mode:q(de),index:r,"camera-card-props":{...q(ge)(t.lastDroppedCamera),expanded:q(me)===r},"camera-card-models":e.cameraCardModels,"on-drop":e=>c(`drop`,r,e),onExpand:(e,t)=>Y(e,r,t),onDrop:e=>c(`drop`,r,e),onRemove:n[1]||=e=>c(`remove`,e)},null,8,[`camera`,`cameras`,`dropped-cameras`,`mode`,`index`,`camera-card-props`,`camera-card-models`,`on-drop`,`onExpand`,`onDrop`]),q(ie)===r?(A(),R(`div`,rn,k(q(E).w)+` × `+k(q(E).h),1)):G(``,!0)])],8,tn))),128))],512)],6),[[_e,q(me)===void 0]])],2),q(_)&&q(d)?(A(),H(s,{key:0,cameras:e.cameras,"dropped-cameras":q(xe),title:e.title,class:`view-box shadow-xl`,style:P({"margin-right":q(_)?`0px`:`-${q(400)}px`}),onChangeViewSize:n[2]||=e=>c(`changeViewSize`)},null,8,[`cameras`,`dropped-cameras`,`title`,`style`])):G(``,!0)])]),_:1},8,[`backend`,`options`])}}}),[[`__scopeId`,`data-v-f0d1c866`]]),on={class:`flex flex-col gap-3`},sn={class:`text-wrap`},cn={class:`w-full h-full flex items-center justify-center relative`},ln=K({__name:`AudioVisualizer`,emits:[`listening`],setup(e,{expose:t,emit:n}){let r=n,i=Te(),o=d(),s=ce(`dialogRefProps`),c=j(`canvasRef`),l=xe(),u=xe(),f=z(!1),p=U(()=>!!s.loading?.value);async function m(){if(f.value)g();else try{l.value&&g();let e;try{e=await navigator.mediaDevices.getUserMedia({audio:!0})}catch(e){o.add({severity:`warn`,detail:`Can not enable AudioVisualizer, see console.`,life:3e3}),i.warn(`Can not enable AudioVisualizer`,e);return}f.value=!0,r(`listening`,!0),l.value=new AudioContext;let t=l.value.createAnalyser();t.fftSize=1024,u.value=e.getTracks(),l.value.createMediaStreamSource(e).connect(t);let n,a=c.value?.getContext(`2d`),s=()=>{if(c.value&&a){let e=[],r=[];a.clearRect(0,0,c.value.width,c.value.height),requestAnimationFrame(s);let i=t.frequencyBinCount,o=new Uint8Array(i);t.getByteFrequencyData(o),e.push(o);for(let t=0;t<e[0].length;t++)r.push(0),e.forEach(e=>{r[t]+=e[t]});let l=c.value.width/2,u=c.value.height/2;a.beginPath(),a.arc(l,u,30,0,2*Math.PI),a.lineWidth=1,a.stroke(),a.closePath();for(let e=0;e<90;e++){n=r[e]*.4;let t=Math.PI*2/90,i=l+Math.cos(t*e)*30,o=u+Math.sin(t*e)*30,s=l+Math.cos(t*e)*(30+n),c=u+Math.sin(t*e)*(30+n);h(a,i,o,s,c,3)}f.value||a.clearRect(0,0,c.value.width,c.value.height)}};s()}catch(e){g(),i.error(e)}}function h(e,t,n,r,i,a){let o=e.createLinearGradient(t,n,r,i);o.addColorStop(0,`#5b040f`),o.addColorStop(.5,`#b50b21`),o.addColorStop(.9,`#df2a4c`),o.addColorStop(1,`#df6380`),e.lineWidth=a,e.strokeStyle=o,e.beginPath(),e.moveTo(t,n),e.lineTo(r,i),e.stroke(),e.closePath()}function g(){l.value?.close(),l.value=void 0,u.value?.forEach(e=>e.stop()),u.value=void 0,f.value=!1,r(`listening`,!1)}return ue(()=>{g()}),t({isLoading:p}),(e,t)=>{let n=Pe,r=a;return A(),R(`div`,on,[L(`span`,sn,k(e.$t(`components.dialog.message.intercom_info`)),1),L(`div`,cn,[V(r,{rounded:``,class:`w-[60px] h-[60px] absolute z-1`,onClick:m},{icon:O(()=>[V(n,{width:`100%`,height:`100%`})]),_:1}),L(`canvas`,{ref_key:`canvasRef`,ref:c,height:`300`,width:`300`},null,512)])])}}}),un=[`fill`],dn=K({__name:`CuiCameraGridIcon1`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M9 1a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h952a8 8 0 0 0 8-8V9a8 8 0 0 0-8-8H9Zm0 8h952v532H9V9Z`},null,-1)]],8,un))}}),fn=[`fill`],pn=K({__name:`CuiCameraGridIcon10`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M9 1a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h952a8 8 0 0 0 8-8V9a8 8 0 0 0-8-8H9Zm726 275h226v130H735V276Zm-242 0h234v130H493V276Zm0 265V414h234v127H493ZM9 541V276h476v265H9Zm726 0V414h226v127H735ZM961 9v121H735V9h226ZM735 138h226v130H735V138ZM727 9v121H493V9h234ZM493 138h234v130H493V138ZM485 9v259H9V9h476Z`},null,-1)]],8,fn))}}),mn=[`fill`],hn=K({__name:`CuiCameraGridIcon12`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M9 1a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h952a8 8 0 0 0 8-8V9a8 8 0 0 0-8-8H9Zm952 275v129H810.5V276H961Zm-158.5 0v129h-152V276h152Zm-152 265V413h152v128h-152Zm-8-265v129H493V276h149.5ZM493 541V413h149.5v128H493ZM9 276h476v265H9V276Zm801.5 265V413H961v128H810.5ZM961 9v259H493V9h468ZM9 268V9h476v259H9Z`},null,-1)]],8,mn))}}),gn=[`fill`],_n=K({__name:`CuiCameraGridIcon13`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M250 549.5h.5v-.5H961a8 8 0 0 0 8-8V9a8 8 0 0 0-8-8H9a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h233.5v.5h7.5Zm.5-273.5H485v129.5H250.5V276Zm-8 0v129.5H9V276h233.5ZM961 9v121H735V9h226ZM727 9v121H493V9h234ZM493 138h234v130H493V138ZM485 9v259H9V9h476Zm250 129h226v130H735V138Zm0 267.5V276h226v129.5H735ZM493 276h234v129.5H493V276Zm0 265V413.5h234V541H493Zm-242.5 0V413.5H485V541H250.5ZM9 541V413.5h233.5V541H9Zm726 0V413.5h226V541H735Z`},null,-1)]],8,gn))}}),vn=[`fill`],yn=K({__name:`CuiCameraGridIcon15`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M250 549.5h.5v-.5H961a8 8 0 0 0 8-8V9a8 8 0 0 0-8-8H9a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h233.5v.5h7.5Zm.5-144V276H485v129.5H250.5Zm-8-129.5v129.5H9V276h233.5Zm570 90H961v82H812.5v-82Zm-160 0h152v82h-152v-82ZM961 276v82H812.5v-82H961Zm-308.5 0h152v82h-152v-82Zm0 180h152v85h-152v-85ZM961 541H812.5v-85H961v85Zm-316.5-93H493v-82h151.5v82Zm0-172v82H493v-82h151.5Zm0 180v85H493v-85h151.5ZM485 413.5V541H250.5V413.5H485Zm-242.5 0V541H9V413.5h233.5ZM961 9v259H493V9h468ZM9 9h476v259H9V9Z`},null,-1)]],8,vn))}}),bn=[`fill`],xn=K({__name:`CuiCameraGridIcon16`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M9 1a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h952a8 8 0 0 0 8-8V9a8 8 0 0 0-8-8H9Zm952 8v121.5H732.5V9H961ZM724.5 9v121.5H493V9h231.5ZM493 268V138.5h231.5V268H493Zm0 137.5V276h231.5v129.5H493Zm468 0H732.5V276H961v129.5ZM493 541V413.5h231.5V541H493Zm468 0H732.5V413.5H961V541Zm0-273H732.5V138.5H961V268ZM485 9v121.5H250.5V9H485ZM250.5 138.5H485V268H250.5V138.5ZM242.5 9v121.5H9V9h233.5ZM9 138.5h233.5V268H9V138.5ZM250.5 276H485v129.5H250.5V276Zm0 137.5H485V541H250.5V413.5Zm-8-137.5v129.5H9V276h233.5ZM9 541V413.5h233.5V541H9Z`},null,-1)]],8,bn))}}),Sn=[`fill`],Cn=K({__name:`CuiCameraGridIcon20`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M9 1a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h952a8 8 0 0 0 8-8V9a8 8 0 0 0-8-8H9Zm952 94v82H812.5V95H961Zm-156.5 82h-152V95h152v82ZM961 9v78H812.5V9H961ZM652.5 9h152v78h-152V9Zm0 176h152v83h-152v-83ZM961 268H812.5v-83H961v83Zm-308.5 8h152v82h-152v-82Zm160 0H961v82H812.5v-82Zm-168-181v82H493V95h151.5Zm0-86v78H493V9h151.5ZM493 268v-83h151.5v83H493Zm0 90v-82h151.5v82H493ZM9 9h476v259H9V9Zm952 357v82H812.5v-82H961Zm-156.5 0v82h-152v-82h152Zm-152 90h152v85h-152v-85ZM961 541H812.5v-85H961v85ZM644.5 366v82H493v-82h151.5ZM493 541v-85h151.5v85H493ZM9 276h476v265H9V276Z`},null,-1)]],8,Sn))}}),wn=[`fill`],Tn=K({__name:`CuiCameraGridIcon26`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{"fill-rule":`evenodd`,d:`M1.5 9A7.5 7.5 0 0 1 9 1.5h952a7.5 7.5 0 0 1 7.5 7.5v532a7.5 7.5 0 0 1-7.5 7.5H9a7.5 7.5 0 0 1-7.5-7.5V9Zm960 168V94h-153v83h153Zm-160 0h-153V94h153v83Zm7-90h153V9a.5.5 0 0 0-.5-.5H808.5V87Zm-7-78.5V87h-153V8.5h153Zm0 175.5v84.5h-153V184h153Zm7 84.5V184h153v84.5h-153Zm-167-91.5V94h-149v83h149Zm0-90V8.5h-149V87h149Zm-149 97h149v84.5h-149V184Zm0 91.5H719V402H492.5V275.5Zm0 133.5v132.5H719V409H492.5Zm233.5 0v132.5h235a.5.5 0 0 0 .5-.5V409H726Zm235.5-7V275.5H726V402h235.5Zm-476-270V8.5H252V132h233.5ZM245 139H8.5v129.5H245V139Zm0-7V8.5H9a.5.5 0 0 0-.5.5v123H245Zm240.5 136.5V139H252v129.5h233.5Zm-477 7h157v81H8.5v-81Zm164 81v-81h153v81h-153Zm153 7h-153v83h153v-83Zm7 83v-83h153v83h-153Zm-7 7h-153v88h153v-88Zm7 88v-88h153v88h-153Zm0-185v-81h153v81h-153Zm-324 7h157v83H8.5v-83Zm0 90h157v88H9a.5.5 0 0 1-.5-.5v-87.5Z`},null,-1)]],8,wn))}}),En=[`fill`],Dn=K({__name:`CuiCameraGridIcon4`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M9 1a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h952a8 8 0 0 0 8-8V9a8 8 0 0 0-8-8H9Zm952 8v259H493V9h468ZM493 541V276h468v265H493ZM485 9v259H9V9h476ZM9 541V276h476v265H9Z`},null,-1)]],8,En))}}),On=[`fill`],kn=K({__name:`CuiCameraGridIcon6`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M9 1a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h952a8 8 0 0 0 8-8V9a8 8 0 0 0-8-8H9Zm641.5 187.5H961v171H650.5v-171ZM961 9v171.5H650.5V9H961ZM642.5 9v350.5H9V9h633.5ZM9 541V367.5h315.5V541H9Zm323.5-173.5h310V541h-310V367.5Zm318 0H961V541H650.5V367.5Z`},null,-1)]],8,On))}}),An=[`fill`],jn=K({__name:`CuiCameraGridIcon7`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M9 1a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h952a8 8 0 0 0 8-8V9a8 8 0 0 0-8-8H9Zm725.5 275H961v130H734.5V276Zm0 265V414H961v127H734.5Zm-8-265v130H493V276h233.5ZM493 541V414h233.5v127H493ZM9 276h476v265H9V276ZM961 9v259H493V9h468ZM9 268V9h476v259H9Z`},null,-1)]],8,An))}}),Mn=[`fill`],Nn=K({__name:`CuiCameraGridIcon9`,props:{color:{default:`currentColor`}},setup(e){let{color:t}=F(e);return(e,n)=>(A(),R(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 970 550`,role:`img`,"area-hidden":`true`,fill:q(t)},[...n[0]||=[L(`path`,{d:`M969.5 359v-.5h-.5V9a8 8 0 0 0-8-8H9a8 8 0 0 0-8 8v532a8 8 0 0 0 8 8h952a8 8 0 0 0 8-8V366.5h.5V359ZM961 187v171.5H651V187h310ZM651 541V366.5h310V541H651Zm-8-354v171.5H330V187h313ZM330 541V366.5h313V541H330Zm-8-354v171.5H9V187h313ZM9 541V366.5h313V541H9ZM961 9v170H651V9h310ZM643 9v170H330V9h313ZM322 9v170H9V9h313Z`},null,-1)]],8,Mn))}}),Pn={for:`name`,class:`cui-label`},Fn={key:0,class:`flex flex-col gap-6 justify-center`},In={key:0,class:`text-red-500 text-center mb-5`},Ln={class:`md:max-h-[350px] overflow-y-auto`},Rn={class:`block cui-label mb-3`},zn={key:1,class:`flex flex-col gap-6 justify-center`},Bn={key:0,class:`text-red-500 text-center mb-5`},Vn={class:`md:max-h-[450px] overflow-y-auto`},Hn={class:`block cui-label mb-3`},Un={class:`view-select-container`},Wn=[`onClick`],Gn=_(K({__name:`CamviewForm`,props:{form:{},type:{},cameras:{},views:{}},setup(t,{expose:n}){let r=new p,a=t,o=Te(),s=d(),{t:c}=i(),l=ce(`dialogRefProps`),f=ne(),{user:m}=De(f),{mutateAsync:h,isPending:g}=r.createViewQuery(),{mutateAsync:_,isPending:ee}=r.patchViewQuery(),{form:v,type:y,cameras:te,views:re}=F(a),b=j(`formRef`),x=z([1,4,6,7,9,10,12,13,15,16,20,26]),S=z(!0),C=z(!0),w=z([]),T=z(!!v.value),E=z(v.value?ie(v.value):{});!T.value&&y.value===`view`&&(E.value.viewSize=x.value[0]);let D=U(()=>!!(l.loading?.value||g.value||ee.value));function oe(e){let t=w.value.findIndex(t=>t.name===e.name);t===-1?w.value.push(e):w.value.splice(t,1)}function ue(e){switch(e){case 1:return dn;case 4:return Dn;case 6:return kn;case 7:return jn;case 9:return Nn;case 10:return pn;case 12:return hn;case 13:return _n;case 15:return yn;case 16:return xn;case 20:return Cn;case 26:return Tn;default:return dn}}async function M(){if(!b.value||!m.value)return;let e=re.value.find(e=>e.name===E.value.name);if(e&&!T.value)return o.error(`View already exists`,e),s.add({severity:`error`,detail:c(`components.toast.validation_failed`),life:3e3}),null;if(y.value===`dnd`){if(C.value)return o.error(`No cameras selected`),s.add({severity:`error`,detail:c(`components.toast.validation_failed`),life:3e3}),null;let e=w.value.map((e,t)=>({cameraId:e._id,index:t}));E.value.cameras=e,E.value.type=`dnd`,E.value.viewSize=1,b.value.setFieldValue(`type`,`dnd`),b.value.setFieldValue(`viewSize`,1),b.value.setFieldValue(`cameras`,e);let t=await b.value.validate();return t?.valid?T.value?await _({username:m.value.username,viewid:E.value._id,viewData:E.value}):await h({username:m.value.username,viewData:E.value}):(o.error(`Validation failed`,t),s.add({severity:`error`,detail:c(`components.toast.validation_failed`),life:3e3}),null)}{if(S.value)return o.error(`No view selected`),s.add({severity:`error`,detail:c(`components.toast.validation_failed`),life:3e3}),null;E.value.cameras=[],E.value.type=`view`,b.value.setFieldValue(`type`,`view`),b.value.setFieldValue(`cameras`,[]);let e=await b.value.validate();return e?.valid?ie(E.value):(o.error(`Validation failed`,e),s.add({severity:`error`,detail:c(`components.toast.validation_failed`),life:3e3}),null)}}return he(E,e=>{for(let[t,n]of Object.entries(e))b.value?.setFieldValue(t,n);e.viewSize&&(S.value=!1),e.cameras?.length&&(C.value=!1)},{deep:!0,immediate:!0}),he(w,e=>{C.value=e.length===0},{deep:!0}),fe(()=>{w.value=te.value?.filter(e=>E.value?.cameras?.some(t=>t.cameraId===e._id))||[]}),n({isLoading:D,onConfirm:M}),(t,n)=>{let r=e,i=Q,a=je,o=Z,s=ae;return A(),H(q(se),{ref_key:`formRef`,ref:b,class:`flex flex-col gap-6`,"validation-schema":q(u),"initial-values":q(E)},{default:O(()=>[V(q(N),{modelValue:q(E).name,"onUpdate:modelValue":n[0]||=e=>q(E).name=e,modelModifiers:{trim:!0},name:`name`,as:`div`,class:`flex flex-col field-gap`},{default:O(({field:e,errors:n})=>[L(`label`,Pn,k(t.$t(`components.form.label.name`)),1),V(i,null,{default:O(()=>[V(r,le(e,{invalid:n.length>0,loading:q(D),type:`text`}),null,16,[`invalid`,`loading`])]),_:2},1024),V(ge,{name:`fade`},{default:O(()=>[V(q(we),{name:`name`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),V(a,{class:`m-0 py-3`}),q(y)===`dnd`?(A(),R(`div`,Fn,[V(ge,{name:`fade`},{default:O(()=>[q(C)?(A(),R(`span`,In,k(t.$t(`components.form.error.no_cameras_selected`)),1)):G(``,!0)]),_:1}),L(`div`,Ln,[L(`label`,Rn,k(t.$t(`components.form.label.cameras`)),1),(A(!0),R(Ce,null,pe(q(te),(e,t)=>(A(),R(`div`,{key:t,class:`cui-list-item`},[V(s,{class:`h-14`,active:q(w).some(t=>t.name===e.name),onClick:t=>oe(e)},{append:O(()=>[V(o,{"model-value":q(w).some(t=>t.name===e.name),"onUpdate:modelValue":t=>oe(e)},null,8,[`model-value`,`onUpdate:modelValue`])]),default:O(()=>[L(`span`,null,k(e.name),1)]),_:2},1032,[`active`,`onClick`])]))),128))])])):(A(),R(`div`,zn,[V(ge,{name:`fade`},{default:O(()=>[q(S)?(A(),R(`span`,Bn,k(t.$t(`components.form.error.no_view_selected`)),1)):G(``,!0)]),_:1}),L(`div`,Vn,[L(`label`,Hn,k(t.$t(`components.form.label.views`)),1),L(`div`,Un,[(A(!0),R(Ce,null,pe(q(x),e=>(A(),R(`div`,{key:e,class:`view-select-item w-full`,onClick:t=>q(E).viewSize=e},[L(`div`,{class:I([`view-select-item-icon w-full p-3`,{"selected-view":q(E).viewSize===e}])},[(A(),H(de(ue(e)),{style:{width:`100%`,height:`100%`}}))],2),L(`span`,{class:I([`view-select-item-label text-muted mt-3 px-2 py-1 cui-rounded-corners`,{"selected-view-label":q(E).viewSize===e}])},k(e)+` `+k(t.$t(`views.camview.cameras`)),3)],8,Wn))),128))])])]))]),_:1},8,[`validation-schema`,`initial-values`])}}}),[[`__scopeId`,`data-v-641aac54`]]),Kn={class:`h-full w-full dark-mode relative`},qn={key:0,class:`flex flex-col w-full h-full items-center justify-center`},Jn={key:1,class:`flex flex-col w-full h-full`},Yn={class:`flex flex-1 min-h-0 flex-col items-center justify-center w-full gap-4`},Xn={class:`text-muted text-sm`},Zn={class:`relative w-6 h-6`},Qn=_(K({__name:`Camview`,props:{navbarWidth:{default:0},navbarLeft:{default:0}},setup(e){let n=new p,r=new h,s=e,u=i(),{t:d}=u,f=Ae(),_=b(),{bottombarHeight:ee}=v(),{smBreakpoint:ae,lgBreakpoint:D,mdBreakpoint:oe}=g(),se=ne(),{user:ce}=De(se),ue=m(),{uiSettings:M}=De(ue),{data:fe,isLoading:pe}=r.getCamerasQuery({page:1,pageSize:-1}),{data:N,isLoading:me}=n.getViewsQuery(ce.value?.username??``,{page:1,pageSize:-1}),{mutate:_e,isPending:ve}=n.removeViewQuery(),{mutateAsync:ye,isPending:xe}=n.createViewQuery(),{mutateAsync:Se,isPending:Ce}=n.patchViewQuery(),{mutateAsync:W}=n.patchViewQuerySilent(),{navbarWidth:K,navbarLeft:we}=F(s),Te=j(`menuRef`),Oe=j(`newViewMenuRef`),ke=j(`cardFitMenuRef`),J=j(`viewDndRef`),Y=z({}),X=z(!1),Z=z(!1),Q=z(!1),Ne=z(!1),Pe=z(!1),Re=z(!1),Ve=z(!0),He=z(`always-on`),Ue=z(`low-resolution`),Ge=z(`auto`),Ke=z([]),Je=z(),Ye=z(null),Ze=be({sourceRole:Ue.value,activityMode:He.value,streamingMode:Ge.value}),Qe=U(()=>pe.value||me.value||ve.value||xe.value||Ce.value),et=U(()=>K.value+we.value),tt=U(()=>({locale:u.locale.value,dayNames:f.config.locale?.dayNames,dayNamesShort:f.config.locale?.dayNamesShort,monthNames:f.config.locale?.monthNames,monthNamesShort:f.config.locale?.monthNamesShort})),rt=U(()=>Je.value??$.value?.cardFit??`aspect`),it=U(()=>[`aspect`,`contain`,`fill`,`cover`].map(e=>({label:d(`views.camview.card_fit_${e}`),description:d(`views.camview.card_fit_${e}_info`),active:rt.value===e,onClick:()=>Vt(e)}))),ot=U(()=>({doubleClickZoom:!1,flatCard:!0,cardFit:rt.value,cameraNameOverlay:!0,control:!0,toolbar:!1,expandableCard:($.value?.cameras?.length??0)>1,detectionIndicatorOverlay:!Q.value&&ft.value,detectionIconsOverlay:!Q.value&&ft.value,boundingBoxOverlay:!1,cardClickAction:`expand`,viewTransition:!0,cardProps:{pt:{root:{style:`background: #000`}}}})),st=U(()=>N.value?.result.length?D.value?{width:Pe.value?`calc(100% - 400px)`:`100%`,height:`100%`,overflowY:`scroll`}:{height:`100%`,paddingBottom:Pe.value?ee.value>0?`200px`:`192px`:`0px`,overflowY:`scroll`}:{width:`100%`,height:`100%`,overflowY:`scroll`}),lt=U(()=>X.value||Z.value),ut=U(()=>!!J.value?.isFullscreen),ft=U(()=>M.value.camview.detections!==!1),pt=U(()=>[{label:ut.value?d(`components.form.tooltip.fullscreen_off`):d(`components.form.tooltip.fullscreen_on`),icon:ut.value?w:re,command:Ht},{label:Ve.value?d(`components.form.tooltip.unmute`):d(`components.form.tooltip.mute`),icon:Ve.value?dt:ct,command:Ut},{label:d(`components.form.tooltip.intercom`),icon:S,command:()=>Dt(`intercom`)},{label:Ge.value===`auto`?`${d(`components.form.tooltip.mode`)}: ${d(`components.form.tooltip.streaming_mode_auto`)}`:Ge.value===`webrtc`?`${d(`components.form.tooltip.mode`)}: ${d(`components.form.tooltip.streaming_mode_webrtc`)}`:`${d(`components.form.tooltip.mode`)}: ${d(`components.form.tooltip.streaming_mode_mse`)}`,icon:Ge.value===`auto`?gt:Ge.value===`webrtc`?Pt:nt,command:()=>Kt()},{label:He.value===`always-on`?d(`components.form.tooltip.activity_mode_always_on`):He.value===`standby`?d(`components.form.tooltip.activity_mode_standby`):d(`components.form.tooltip.activity_mode_activity`),icon:He.value===`always-on`?St:He.value===`standby`?mt:at,command:()=>Wt()},{label:Ue.value===`low-resolution`?`${d(`components.form.tooltip.resolution`)}: ${d(`components.form.tooltip.source_role_low`)}`:Ue.value===`mid-resolution`?`${d(`components.form.tooltip.resolution`)}: ${d(`components.form.tooltip.source_role_mid`)}`:`${d(`components.form.tooltip.resolution`)}: ${d(`components.form.tooltip.source_role_high`)}`,icon:Ue.value===`low-resolution`?Ot:Ue.value===`mid-resolution`?jt:Tt,command:()=>Gt()},{label:`${d(`components.form.tooltip.detections`)}: ${ft.value?d(`components.form.tooltip.detections_on`):d(`components.form.tooltip.detections_off`)}`,icon:ft.value?Ee:C,command:()=>M.value.camview.detections=!ft.value}]),$=U(()=>{let e=N.value?.result.find(e=>e._id===M.value.camview.viewid)||N.value?.result[0];return e?(Y.value=e,M.value.camview.viewid=e._id):Y.value={},e}),ht=U(()=>$.value?.cameras?.map(e=>e.cameraId)??[]),_t=U(()=>{let e=Ye.value;return e&&ht.value.includes(e)?[e]:ht.value}),vt=U(()=>{let e={};for(let t of fe.value?.result??[])e[t._id]=t.name;return e}),{master:bt}=l(ht,{sourceRole:`low`,activeIds:_t}),xt=U(()=>bt.mode.value!==`idle`&&bt.currentTimestamp.value>0?Math.floor(bt.currentTimestamp.value/1e3):void 0),Ct=U(()=>lt.value&&Y.value.viewSize>0?Y.value.viewSize:$.value?$.value.viewSize:1),wt=U(()=>{let e=[];for(let t of N.value?.result||[])e.push({label:t.name,active:t._id===$.value?._id,onClick:()=>kt(t)});return e}),Et=U(()=>[{label:d(`views.camview.new_view`),icon:yt,onClick:()=>Dt(`newView`)}]);function Dt(e){switch(e){case`newView`:case`editView`:{let t=e===`editView`,n=d(t?`components.dialog.title.edit_view`:`components.dialog.title.new_view`);t?X.value=!0:Z.value=!0,_.openComponentDialog(Gn,{data:{title:n,loading:Qe,confirmText:d(`components.form.button.next`),contentProps:{form:t?Y.value:void 0,type:`view`,cameras:fe.value?.result||[],views:N.value?.result||[]}},onConfirm:e=>{e&&(Y.value=e)},onCancel:()=>{Z.value=!1}});break}case`intercom`:_.openComponentDialog(ln,{data:{title:d(`components.dialog.title.intercom`),hideConfirmButton:!0,loading:Qe,contentProps:{}},events:{listening:qt}});break;case`removeView`:_.openTextDialog({data:{title:d(`components.dialog.title.confirm`),confirmText:d(`components.form.button.remove`),contentText:d(`components.dialog.message.confirm_remove_layout`),confirmButtonProps:{severity:`danger`}},onConfirm:At})}}function kt(e){M.value.camview.viewid=e._id}function At(){$.value&&ce.value&&_e({username:ce.value.username,viewid:$.value._id},{onSuccess:e=>{e.length?M.value.camview.viewid=e[0]._id:M.value.camview.viewid=void 0}})}async function Mt(){if(!ce.value||Object.keys(Y.value).length===0)return;let e=Ke.value.filter(e=>e.lastDroppedCamera).map(e=>({cameraId:e.lastDroppedCamera._id,index:e.index,colSpan:e.colSpan,rowSpan:e.rowSpan})).sort((e,t)=>e.index-t.index);if(!e.length)return;let t=ie(Y.value);t.cameras=e,t._id?Bt(await Se({username:ce.value.username,viewid:t._id,viewData:t})):Bt(await ye({username:ce.value.username,viewData:t}))}function Nt(e,t){Ke.value[e].lastDroppedCamera=t}function Ft(e){Ke.value=Ke.value.map(t=>(t.lastDroppedCamera?.name===e.name&&(t.lastDroppedCamera=void 0),t))}function It(e){return`${ae.value?`mobile`:`desktop`}:${e}`}function Lt(e){let t=$.value?._id;t&&(M.value.camview.layouts||(M.value.camview.layouts={}),M.value.camview.layouts[It(t)]=e.map(e=>({index:e.index,cameraId:e.cameraId,x:e.x??0,y:e.y??0,w:e.colSpan??1,h:e.rowSpan??1})))}function Rt(e,t){Ye.value=t?e._id:null}function zt(e){let t=Ye.value;t&&e.cameraId&&e.cameraId!==t&&ht.value.includes(e.cameraId)&&J.value?.expandCameraById(e.cameraId)}function Bt(e){M.value.camview.viewid=e._id,Z.value=!1,X.value=!1}async function Vt(e){let t=$.value,n=ce.value?.username;if(t&&n&&rt.value!==e){Je.value=e;try{await W({username:n,viewid:t._id,viewData:{cardFit:e}})}catch{Je.value=void 0}}}function Ht(){J.value?.toggleFullscreen()}function Ut(){Ve.value=!Ve.value,J.value?.toggleAllPlayerMute(Ve.value)}function Wt(e){let t=He.value;t=e||(t===`always-on`?`standby`:t===`standby`?`activity`:`always-on`),J.value?.toggleAllPlayerActivityMode(t),He.value=t}async function Gt(e){let t=Ue.value;t=e||(t===`low-resolution`?`mid-resolution`:t===`mid-resolution`?`high-resolution`:`low-resolution`),await J.value?.toggleAllPlayerSourceRole(t),Ue.value=t}async function Kt(e){let t=Ge.value;t===`auto`&&(t=`webrtc`);let n=e||(t===`mse`?`webrtc`:`mse`);await J.value?.toggleAllPlayerStreamingMode(n),Ge.value=n}async function qt(e){await J.value?.toggleAllPlayerMicrophone(e)}return he(Ne,e=>{e&&(Re.value=!0)}),he(()=>$.value?._id,()=>{Je.value=void 0}),he([Ct,$,fe,lt,M,ae],()=>{let e=Array.from({length:Ct.value}).map((e,t)=>({accept:`camera`,index:t,lastDroppedCamera:void 0}));if(!Z.value){let t=$.value?._id,n=t?It(t):void 0,r=n?M.value.camview.layouts?.[n]:void 0,i=new Set(fe.value?.result.map(e=>e._id)??[]),a=!1;for(let t of $.value?.cameras||[]){if(!e[t.index])continue;let n=fe.value?.result.find(e=>e._id===t.cameraId);e[t.index].lastDroppedCamera=n;let o=r?.find(e=>e.index===t.index);o&&(!o.cameraId||i.has(o.cameraId)?(e[t.index].x=o.x,e[t.index].y=o.y,e[t.index].colSpan=o.w,e[t.index].rowSpan=o.h):a=!0)}a&&n&&M.value.camview.layouts?.[n]&&(M.value.camview.layouts[n]=M.value.camview.layouts[n].filter(e=>!e.cameraId||i.has(e.cameraId)))}Ke.value=e},{deep:!0,immediate:!0}),(e,n)=>{let r=Be,i=$e,s=y,l=Xe,u=qe,d=We,f=E,p=T,m=je,h=Le,g=Ie,_=Fe,v=ze,ne=t,re=te,b=a,S=Me,C=x,w=c;return A(),R(`div`,Kn,[V(v,{"left-offset":q(et),animate:``},{left:O(()=>[!q(Z)&&q($)?(A(),H(r,{key:0,type:`dropdown`,label:q($).name,"menu-open":q(Te)?.isOpen,disabled:q(Qe)||q(X),onClick:n[0]||=e=>q(Te)?.toggleMenu(e)},null,8,[`label`,`menu-open`,`disabled`])):q(Z)&&q(Y).name?(A(),H(r,{key:1,label:q(Y).name,disabled:q(Qe)},null,8,[`label`,`disabled`])):G(``,!0)]),right:O(()=>[!q(lt)&&q($)?B((A(),H(r,{key:0,active:q(Q),onClick:n[1]||=e=>Q.value=!q(Q)},{icon:O(()=>[q(Q)?(A(),H(s,{key:1,width:`100%`,height:`100%`})):(A(),H(i,{key:0,width:`100%`,height:`100%`}))]),_:1},8,[`active`])),[[w,{value:q(Q)?e.$t(`views.camview.rearrange_done`):e.$t(`views.camview.rearrange`)},void 0,{bottom:!0}]]):G(``,!0),!q(lt)&&q($)&&q(Q)&&!q(ae)?B((A(),H(r,{key:1,onClick:n[2]||=e=>q(J)?.fitAspectRatios()},{icon:O(()=>[V(l,{width:`100%`,height:`100%`})]),_:1})),[[w,{value:e.$t(`views.camview.rearrange_fit_aspect`)},void 0,{bottom:!0}]]):G(``,!0),!q(lt)&&q($)&&q(Q)&&!q(ae)?B((A(),H(r,{key:2,onClick:n[3]||=e=>q(J)?.compactGrid()},{icon:O(()=>[V(u,{width:`100%`,height:`100%`})]),_:1})),[[w,{value:e.$t(`views.camview.rearrange_auto`)},void 0,{bottom:!0}]]):G(``,!0),!q(lt)&&q($)?B((A(),H(r,{key:3,active:q(rt)!==`aspect`,"menu-open":q(ke)?.isOpen,onClick:n[4]||=e=>q(ke)?.toggleMenu(e)},{icon:O(()=>[V(d,{width:`100%`,height:`100%`})]),_:1},8,[`active`,`menu-open`])),[[w,{value:e.$t(`views.camview.card_fit`)},void 0,{bottom:!0}]]):G(``,!0),!q(lt)&&q($)?B((A(),H(r,{key:4,active:q(Ne),onClick:n[5]||=e=>Ne.value=!q(Ne)},{icon:O(()=>[q(Ne)?(A(),H(p,{key:1,width:`100%`,height:`100%`})):(A(),H(f,{key:0,width:`100%`,height:`100%`}))]),_:1},8,[`active`])),[[w,{value:q(Ne)?e.$t(`components.form.tooltip.hide_timeline`):e.$t(`components.form.tooltip.show_timeline`)},void 0,{bottom:!0}]]):G(``,!0),!q(lt)&&q($)?(A(),H(m,{key:5,layout:`vertical`})):G(``,!0),!q(lt)&&q($)?B((A(),H(r,{key:6,disabled:q(Q),onClick:n[6]||=e=>Dt(`removeView`)},{icon:O(()=>[V(h,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`])),[[w,{value:e.$t(`components.form.tooltip.delete`)},void 0,{bottom:!0}]]):G(``,!0),!q(X)&&!q(Z)&&q($)?B((A(),H(r,{key:7,disabled:q(Q),onClick:n[7]||=e=>X.value=!0},{icon:O(()=>[V(g,{width:`100%`,height:`100%`})]),_:1},8,[`disabled`])),[[w,{value:e.$t(`components.form.tooltip.edit`)},void 0,{bottom:!0}]]):G(``,!0),!q(X)&&!q(Z)?B((A(),H(r,{key:8,disabled:q(Q),onClick:q(Oe)?.toggleMenu},{icon:O(()=>[V(_,{class:I([`transform transition-transform duration-300`,{"rotate-45":q(Oe)?.isOpen}]),width:`100%`,height:`100%`},null,8,[`class`])]),_:1},8,[`disabled`,`onClick`])),[[w,{value:e.$t(`components.form.tooltip.new`)},void 0,{bottom:!0}]]):G(``,!0),q(X)||q(Z)?(A(),H(r,{key:9,label:e.$t(`components.form.button.cancel`),onClick:n[8]||=e=>q(X)?X.value=!1:Z.value=!1},null,8,[`label`])):G(``,!0),q(X)||q(Z)?(A(),H(r,{key:10,label:e.$t(`components.form.button.save`),disabled:q(Ke).every(e=>e.lastDroppedCamera===void 0),primary:``,onClick:Mt},null,8,[`label`,`disabled`])):G(``,!0)]),_:1},8,[`left-offset`]),L(`div`,{class:I([`w-full h-full flex relative`,{"flex-row":q(D),"flex-col":!q(D)}]),style:P({paddingTop:`${q(55)}px`})},[L(`div`,{class:I([`flex relative z-1 camview-content-transition`,{"h-full items-center justify-center":q(D)||!q(N)?.result.length,"w-full items-start justify-start":!q(D)&&q(N)?.result.length}]),style:P(q(st))},[q(Qe)?(A(),R(`div`,qn,[(A(),H(ne,{key:0,class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`}))])):!q($)&&!q(Z)?(A(),R(`div`,Jn,[L(`div`,Yn,[V(re,{class:`w-12 h-12 text-muted`}),L(`span`,Xn,k(e.$t(`views.camview.no_views_configured`)),1)])])):q($)||q(Z)?(A(),R(`div`,{key:2,class:I([`w-full h-full`,{"p-2 pb-0":!q(ae)}])},[(A(),H(an,{ref_key:`viewDndRef`,ref:J,key:q(M).camview.viewid+(q(Z)?`-new`:q(X)?`-edit`:`-view`),cameras:q(fe)?.result||[],"edit-mode":q(Z)||q(X),"rearrange-mode":q(Q),"view-size":q(Z)?q(Y).viewSize:q(Ct),title:q(Y).name,cards:q(Ke),"camera-card-props":q(ot),"camera-card-models":q(Ze),onDrop:Nt,onRemove:Ft,onChangeViewSize:n[9]||=e=>Dt(`editView`),onExpand:Rt,onRearrange:Lt},null,8,[`cameras`,`edit-mode`,`rearrange-mode`,`view-size`,`title`,`cards`,`camera-card-props`,`camera-card-models`]))],2)):G(``,!0)],6),V(ge,{name:q(D)?`slide-left`:`slide-up`,onBeforeEnter:n[10]||=e=>Pe.value=!0,onAfterEnter:n[11]||=e=>Re.value=!1,onBeforeLeave:n[12]||=e=>Pe.value=!1},{default:O(()=>[q(Ne)?(A(),H(q(o),{key:0,"camera-ids":q(_t),"event-camera-ids":q(ht),"camera-names":q(vt),"initial-timestamp":q(xt),onEventSelect:zt,loading:q(Re),type:q(D)?`vertical`:`horizontal`,"dark-mode":``,"md-breakpoint":q(oe),class:I([`shrink-0 transition-[left] duration-200`,{"h-full w-[400px] pt-2 pr-2":q(D),"h-[200px] pt-2 px-2 pb-2 pb-safe-offset fixed right-safe-offset-0 z-10":!q(D),"p-0! pt-2! border-color":q(ae)}]),"card-class":{"!shadow-xl":!0,"!rounded-none border-l-0! border-r-0!":q(ae)},style:P(q(D)?void 0:{left:`${q(et)}px`,bottom:`calc(${q(ee)}px + var(--safe-area-inset-bottom))`}),"locale-settings":q(tt)},null,8,[`camera-ids`,`event-camera-ids`,`camera-names`,`initial-timestamp`,`loading`,`type`,`md-breakpoint`,`class`,`card-class`,`style`,`locale-settings`])):G(``,!0)]),_:1},8,[`name`])],6),!q(lt)&&q($)?(A(),H(S,{key:0,model:q(pt),direction:`up`,"transition-delay":80,"tooltip-options":{position:`left`,event:void 0},class:`absolute right-2 z-11 dark-mode`,pt:{root:{style:`pointer-events: none`}},style:P({bottom:q(D)?`0`:`calc(${q(Pe)?192:0}px + ${q(ee)>0?`0.5rem`:`0px`})`,right:q(D)?`calc(${q(Pe)?400:0}px + 0.5rem)`:`0.5rem`,transition:`bottom 0.25s ease-out, right 0.25s ease-out`})},{button:O(({visible:e,toggleCallback:t})=>[V(b,{severity:`secondary`,class:I([`dark-mode opacity-40 hover:opacity-100 active:opacity-100 focus:opacity-100 transition pointer-events-auto`,{"opacity-100":e}]),rounded:``,loading:q(Qe),onClick:t},{icon:O(()=>[L(`div`,Zn,[L(`div`,{class:I([`bg-white absolute top-0.5 left-1/2 -translate-x-1/2 w-1.5 h-1.5 rounded-full transform transition-all duration-100 origin-center`,{"w-4 h-[2px] rotate-45 top-1/2 -translate-y-1/2 rounded-none":e}])},null,2),L(`div`,{class:I([`bg-white absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-1.5 h-1.5 rounded-full transition-all duration-100`,{"opacity-0 scale-0":e}])},null,2),L(`div`,{class:I([`bg-white absolute bottom-0.5 left-1/2 -translate-x-1/2 w-1.5 h-1.5 rounded-full transform transition-all duration-100 origin-center`,{"w-4 h-[2px] -rotate-45 bottom-1/2 translate-y-1/2 rounded-none":e}])},null,2)])]),_:2},1032,[`class`,`loading`,`onClick`])]),item:O(({item:e,toggleCallback:t})=>[B((A(),H(b,le({loading:q(Qe),severity:`secondary`},e.buttonProps,{rounded:``,onClick:t}),{icon:O(()=>[(A(),H(de(e.icon)))]),_:2},1040,[`loading`,`onClick`])),[[w,{value:e.label}]])]),_:1},8,[`model`,`style`])):G(``,!0),V(C,{ref_key:`menuRef`,ref:Te,items:q(wt),popover:{pt:{content:{class:`p-0! rounded-xl! overflow-hidden!`}}}},null,8,[`items`]),V(C,{ref_key:`cardFitMenuRef`,ref:ke,items:q(it),popover:{pt:{content:{class:`p-0! rounded-xl! overflow-hidden!`}}}},null,8,[`items`]),V(C,{ref_key:`newViewMenuRef`,ref:Oe,items:q(Et),popover:{pt:{content:{class:`p-0! rounded-xl! overflow-hidden!`}}}},null,8,[`items`])])}}}),[[`__scopeId`,`data-v-1f0bed85`]]);export{Qn as default};
@@ -1 +1 @@
1
- .drag-preview[data-v-5498a5c0]{pointer-events:none!important;z-index:9999!important;opacity:.8!important;will-change:left, top!important;cursor:grabbing!important;border-radius:.75rem!important;transition:none!important;position:fixed!important;overflow:hidden!important;transform:none!important}.view-dnd-card[data-v-ca177470]{background:#000;width:100%;height:100%;position:relative;overflow:hidden}.view-dnd-card[data-v-ca177470] .p-button-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.view-container[data-v-052a3b2e]{width:100%;height:100%;transition:padding .2s ease-in-out}.cui-fs-exit[data-v-052a3b2e]{top:calc(var(--safe-area-inset-top) + 12px);right:calc(var(--safe-area-inset-right) + 12px);z-index:2147483647;-webkit-backdrop-filter:blur(8px);opacity:.85;width:40px;height:40px;transition:opacity .15s;position:fixed;color:#fff!important;background:#0000008c!important;border:1px solid #ffffff26!important}.cui-fs-exit[data-v-052a3b2e]:hover,.cui-fs-exit[data-v-052a3b2e]:focus{opacity:1}.view-box[data-v-052a3b2e]{margin-right:-400px;transition:all .2s ease-in-out}.card-expanded[data-v-052a3b2e]{animation:.25s ease-out card-expand-052a3b2e}@keyframes card-expand-052a3b2e{0%{opacity:.8;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.card-collapsing[data-v-052a3b2e]{animation:.25s ease-out forwards card-collapse-052a3b2e}@keyframes card-collapse-052a3b2e{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.grid-stack>.grid-stack-item>.grid-stack-item-content{background:#000;border:2px solid #0000;transition:top .25s,right .25s,bottom .25s,left .25s,border-radius .25s;overflow:hidden}.grid-stack>.grid-stack-placeholder>.placeholder-content{border-radius:8px;background:#df2a4c14!important;border:2px dashed #df2a4c99!important}.grid-stack:not(.grid-stack-static)>.grid-stack-item:not(.ui-resizable-disabled)>.ui-resizable-se{opacity:0;z-index:10;border-radius:0 0 8px;transition:opacity .15s;background:linear-gradient(135deg,#0000 50%,#df2a4c99 50%)!important;width:24px!important;height:24px!important;display:block!important;transform:none!important}.grid-stack:not(.grid-stack-static)>.grid-stack-item:hover>.ui-resizable-se{opacity:1}.grid-stack:not(.grid-stack-static)>.grid-stack-item>.grid-stack-item-content{border:2px solid #fff3;border-radius:12px;transition:top .25s,right .25s,bottom .25s,left .25s,border-radius .25s,border-color .15s;animation:.5s ease-out rearrange-border-pulse}@keyframes rearrange-border-pulse{0%{border-color:#0000}35%{border-color:#df2a4cb3}to{border-color:#fff3}}.grid-stack:not(.grid-stack-static)>.grid-stack-item:hover>.grid-stack-item-content{border-color:#df2a4c80}.grid-stack>.grid-stack-item.ui-draggable-dragging>.grid-stack-item-content{border-color:#df2a4ccc;box-shadow:0 8px 32px #0006}.view-select-container[data-v-641aac54]{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.view-select-item[data-v-641aac54]{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;display:flex}.view-select-item-icon[data-v-641aac54]{background:var(--border-color);border-radius:10px;transition:box-shadow .2s}.view-select-item-label[data-v-641aac54]{border-radius:4px;font-size:14px}.view-select-item:hover .view-select-item-icon[data-v-641aac54],.selected-view[data-v-641aac54]{box-shadow:inset 0px 0px 0px 1px var(--text-primary-color)}.view-select-item:hover .view-select-item-label[data-v-641aac54],.selected-view-label[data-v-641aac54]{background:var(--text-primary-color);transition:background .2s;color:#fff!important}.camview-content-transition[data-v-1f0bed85]{transition:width .3s ease-out,height .3s ease-out,padding-bottom .3s ease-out}.slide-left-enter-active[data-v-1f0bed85],.slide-left-leave-active[data-v-1f0bed85]{transition:transform .3s ease-out,opacity .3s ease-out;position:absolute;top:55px;bottom:0;right:0}.slide-left-enter-from[data-v-1f0bed85],.slide-left-leave-to[data-v-1f0bed85]{opacity:0;transform:translate(100%)}.slide-up-enter-active[data-v-1f0bed85],.slide-up-leave-active[data-v-1f0bed85]{transition:transform .3s ease-out,opacity .3s ease-out}.slide-up-enter-from[data-v-1f0bed85],.slide-up-leave-to[data-v-1f0bed85]{opacity:0;transform:translateY(100%)}.p-divider-vertical[data-v-1f0bed85]:before{border-inline-start:1px solid #2d2d2d}[data-v-1f0bed85] .p-speeddial-open .p-speeddial-list{pointer-events:auto}
1
+ .drag-preview[data-v-5498a5c0]{pointer-events:none!important;z-index:9999!important;opacity:.8!important;will-change:left, top!important;cursor:grabbing!important;border-radius:.75rem!important;transition:none!important;position:fixed!important;overflow:hidden!important;transform:none!important}.view-dnd-card[data-v-ca177470]{background:#000;width:100%;height:100%;position:relative;overflow:hidden}.view-dnd-card[data-v-ca177470] .p-button-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.view-container[data-v-f0d1c866]{width:100%;height:100%;transition:padding .2s ease-in-out}.cui-fs-exit[data-v-f0d1c866]{top:calc(var(--safe-area-inset-top) + 12px);right:calc(var(--safe-area-inset-right) + 12px);z-index:2147483647;-webkit-backdrop-filter:blur(8px);opacity:.85;width:40px;height:40px;transition:opacity .15s;position:fixed;color:#fff!important;background:#0000008c!important;border:1px solid #ffffff26!important}.cui-fs-exit[data-v-f0d1c866]:hover,.cui-fs-exit[data-v-f0d1c866]:focus{opacity:1}.view-box[data-v-f0d1c866]{margin-right:-400px;transition:all .2s ease-in-out}.card-expanded[data-v-f0d1c866]{animation:.25s ease-out card-expand-f0d1c866}@keyframes card-expand-f0d1c866{0%{opacity:.8;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.card-collapsing[data-v-f0d1c866]{animation:.25s ease-out forwards card-collapse-f0d1c866}@keyframes card-collapse-f0d1c866{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.grid-stack>.grid-stack-item>.grid-stack-item-content{background:#000;border:2px solid #0000;transition:top .25s,right .25s,bottom .25s,left .25s,border-radius .25s;overflow:hidden}.grid-stack>.grid-stack-placeholder>.placeholder-content{border-radius:8px;background:#df2a4c14!important;border:2px dashed #df2a4c99!important}.grid-stack:not(.grid-stack-static)>.grid-stack-item:not(.ui-resizable-disabled)>.ui-resizable-se{opacity:0;z-index:10;border-radius:0 0 8px;transition:opacity .15s;background:linear-gradient(135deg,#0000 50%,#df2a4c99 50%)!important;width:24px!important;height:24px!important;display:block!important;transform:none!important}.grid-stack:not(.grid-stack-static)>.grid-stack-item:hover>.ui-resizable-se{opacity:1}.grid-stack:not(.grid-stack-static)>.grid-stack-item>.grid-stack-item-content{border:2px solid #fff3;border-radius:12px;transition:top .25s,right .25s,bottom .25s,left .25s,border-radius .25s,border-color .15s;animation:.5s ease-out rearrange-border-pulse}@keyframes rearrange-border-pulse{0%{border-color:#0000}35%{border-color:#df2a4cb3}to{border-color:#fff3}}.grid-stack:not(.grid-stack-static)>.grid-stack-item:hover>.grid-stack-item-content{border-color:#df2a4c80}.grid-stack>.grid-stack-item.ui-draggable-dragging>.grid-stack-item-content{border-color:#df2a4ccc;box-shadow:0 8px 32px #0006}.view-select-container[data-v-641aac54]{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.view-select-item[data-v-641aac54]{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;display:flex}.view-select-item-icon[data-v-641aac54]{background:var(--border-color);border-radius:10px;transition:box-shadow .2s}.view-select-item-label[data-v-641aac54]{border-radius:4px;font-size:14px}.view-select-item:hover .view-select-item-icon[data-v-641aac54],.selected-view[data-v-641aac54]{box-shadow:inset 0px 0px 0px 1px var(--text-primary-color)}.view-select-item:hover .view-select-item-label[data-v-641aac54],.selected-view-label[data-v-641aac54]{background:var(--text-primary-color);transition:background .2s;color:#fff!important}.camview-content-transition[data-v-1f0bed85]{transition:width .3s ease-out,height .3s ease-out,padding-bottom .3s ease-out}.slide-left-enter-active[data-v-1f0bed85],.slide-left-leave-active[data-v-1f0bed85]{transition:transform .3s ease-out,opacity .3s ease-out;position:absolute;top:55px;bottom:0;right:0}.slide-left-enter-from[data-v-1f0bed85],.slide-left-leave-to[data-v-1f0bed85]{opacity:0;transform:translate(100%)}.slide-up-enter-active[data-v-1f0bed85],.slide-up-leave-active[data-v-1f0bed85]{transition:transform .3s ease-out,opacity .3s ease-out}.slide-up-enter-from[data-v-1f0bed85],.slide-up-leave-to[data-v-1f0bed85]{opacity:0;transform:translateY(100%)}.p-divider-vertical[data-v-1f0bed85]:before{border-inline-start:1px solid #2d2d2d}[data-v-1f0bed85] .p-speeddial-open .p-speeddial-list{pointer-events:auto}
@@ -1 +1 @@
1
- import{Vr as e}from"./vendor-cameraui-QXD8jkcj.js";import{$n as t,Cr as n,In as r,Jn as i,Rn as a,cn as o,dn as s,dr as c,gn as l,hn as u,ln as d,mn as f,nn as p,rn as m,sn as h,sr as g,un as _,vn as v,yr as y}from"./vendor-DGke_6M4.js";import{B as b}from"./vendor-primevue-CCUqY55W.js";import{t as x}from"./upload-nnbfDypK.js";var S={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function C(e,t){return r(),s(`svg`,S,[...t[0]||=[f(`<g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M5 8V5a2 2 0 0 1 2-2h7l5 5v11a2 2 0 0 1-2 2h-5"></path><path d="M3 14a3 3 0 1 0 6 0a3 3 0 1 0-6 0"></path><path d="M4.5 17L3 22l3-1.5L9 22l-1.5-5"></path></g>`,1)]])}var w=g({name:`tabler-file-certificate`,render:C}),T={class:`flex flex-col gap-6`},E={class:`text-sm text-muted`},D={class:`cui-label mb-1`},O=[`onClick`,`onDrop`],k={key:0,class:`flex items-center justify-center gap-2 text-sm text-muted`},A={key:1,class:`flex items-center justify-center gap-2 text-sm`},j={class:`truncate`},M={key:0,class:`text-xs text-muted`},N=524288,P=v({__name:`CertificateUpload`,setup(f,{expose:g}){let{t:v}=e(),S=i(`fileInput`),C=c({cert:null,key:null,chain:null}),P=c(``),F=`cert`,I=h(()=>[{key:`cert`,label:v(`views.settings.certificate_file`),hint:v(`views.settings.certificate_file_hint`),optional:!1},{key:`key`,label:v(`views.settings.certificate_key_file`),hint:v(`views.settings.certificate_key_file_hint`),optional:!1},{key:`chain`,label:v(`views.settings.certificate_chain_file`),hint:v(`views.settings.certificate_chain_file_hint`),optional:!0}]);function L(e){F=e,S.value&&(S.value.value=``),S.value?.click()}function R(e){let t=e.target.files?.[0];t&&B(F,t)}function z(e,t){let n=t.dataTransfer?.files[0];n&&B(e,n)}function B(e,t){if(t.size>N){P.value=v(`views.settings.certificate_file_too_large`);return}P.value=``,C.value={...C.value,[e]:t}}return g({onConfirm:async()=>{let{cert:e,key:t,chain:n}=C.value;return!e||!t?(P.value=v(`views.settings.certificate_missing_files`),null):{cert:e,key:t,chain:n??void 0}}}),(e,i)=>{let c=x,f=w,h=b;return r(),s(`div`,T,[o(`span`,E,n(e.$t(`views.settings.certificate_upload_info`)),1),(r(!0),s(m,null,a(y(I),t=>(r(),s(`div`,{key:t.key},[o(`label`,D,n(t.label),1),o(`div`,{class:`border-2 border-dashed border-surface-300 dark:border-surface-600 rounded-lg p-4 text-center cursor-pointer hover:border-primary transition-colors`,onClick:e=>L(t.key),onDragover:i[0]||=p(()=>{},[`prevent`]),onDrop:p(e=>z(t.key,e),[`prevent`])},[y(C)[t.key]?(r(),s(`div`,A,[l(f,{class:`w-4 h-4 shrink-0 text-success`}),o(`span`,j,n(y(C)[t.key].name),1)])):(r(),s(`div`,k,[l(c,{class:`w-4 h-4 shrink-0`}),o(`span`,null,n(t.hint),1)]))],40,O),t.optional?(r(),s(`span`,M,n(e.$t(`views.settings.certificate_chain_hint`)),1)):_(``,!0)]))),128)),o(`input`,{ref_key:`fileInput`,ref:S,type:`file`,accept:`.pem,.crt,.cer,.key`,class:`hidden`,onChange:R},null,544),y(P)?(r(),d(h,{key:0,severity:`error`,closable:!1},{default:t(()=>[u(n(y(P)),1)]),_:1})):_(``,!0)])}}});export{P as default};
1
+ import{Ur as e}from"./vendor-cameraui-CK4yHsJi.js";import{$n as t,Cr as n,In as r,Jn as i,Rn as a,cn as o,dn as s,dr as c,gn as l,hn as u,ln as d,mn as f,nn as p,rn as m,sn as h,sr as g,un as _,vn as v,yr as y}from"./vendor-gFkr2qsZ.js";import{B as b}from"./vendor-primevue-Cmp3VjIC.js";import{t as x}from"./upload-C3w1XH-o.js";var S={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function C(e,t){return r(),s(`svg`,S,[...t[0]||=[f(`<g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M5 8V5a2 2 0 0 1 2-2h7l5 5v11a2 2 0 0 1-2 2h-5"></path><path d="M3 14a3 3 0 1 0 6 0a3 3 0 1 0-6 0"></path><path d="M4.5 17L3 22l3-1.5L9 22l-1.5-5"></path></g>`,1)]])}var w=g({name:`tabler-file-certificate`,render:C}),T={class:`flex flex-col gap-6`},E={class:`text-sm text-muted`},D={class:`cui-label mb-1`},O=[`onClick`,`onDrop`],k={key:0,class:`flex items-center justify-center gap-2 text-sm text-muted`},A={key:1,class:`flex items-center justify-center gap-2 text-sm`},j={class:`truncate`},M={key:0,class:`text-xs text-muted`},N=524288,P=v({__name:`CertificateUpload`,setup(f,{expose:g}){let{t:v}=e(),S=i(`fileInput`),C=c({cert:null,key:null,chain:null}),P=c(``),F=`cert`,I=h(()=>[{key:`cert`,label:v(`views.settings.certificate_file`),hint:v(`views.settings.certificate_file_hint`),optional:!1},{key:`key`,label:v(`views.settings.certificate_key_file`),hint:v(`views.settings.certificate_key_file_hint`),optional:!1},{key:`chain`,label:v(`views.settings.certificate_chain_file`),hint:v(`views.settings.certificate_chain_file_hint`),optional:!0}]);function L(e){F=e,S.value&&(S.value.value=``),S.value?.click()}function R(e){let t=e.target.files?.[0];t&&B(F,t)}function z(e,t){let n=t.dataTransfer?.files[0];n&&B(e,n)}function B(e,t){if(t.size>N){P.value=v(`views.settings.certificate_file_too_large`);return}P.value=``,C.value={...C.value,[e]:t}}return g({onConfirm:async()=>{let{cert:e,key:t,chain:n}=C.value;return!e||!t?(P.value=v(`views.settings.certificate_missing_files`),null):{cert:e,key:t,chain:n??void 0}}}),(e,i)=>{let c=x,f=w,h=b;return r(),s(`div`,T,[o(`span`,E,n(e.$t(`views.settings.certificate_upload_info`)),1),(r(!0),s(m,null,a(y(I),t=>(r(),s(`div`,{key:t.key},[o(`label`,D,n(t.label),1),o(`div`,{class:`border-2 border-dashed border-surface-300 dark:border-surface-600 rounded-lg p-4 text-center cursor-pointer hover:border-primary transition-colors`,onClick:e=>L(t.key),onDragover:i[0]||=p(()=>{},[`prevent`]),onDrop:p(e=>z(t.key,e),[`prevent`])},[y(C)[t.key]?(r(),s(`div`,A,[l(f,{class:`w-4 h-4 shrink-0 text-success`}),o(`span`,j,n(y(C)[t.key].name),1)])):(r(),s(`div`,k,[l(c,{class:`w-4 h-4 shrink-0`}),o(`span`,null,n(t.hint),1)]))],40,O),t.optional?(r(),s(`span`,M,n(e.$t(`views.settings.certificate_chain_hint`)),1)):_(``,!0)]))),128)),o(`input`,{ref_key:`fileInput`,ref:S,type:`file`,accept:`.pem,.crt,.cer,.key`,class:`hidden`,onChange:R},null,544),y(P)?(r(),d(h,{key:0,severity:`error`,closable:!1},{default:t(()=>[u(n(y(P)),1)]),_:1})):_(``,!0)])}}});export{P as default};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./ace.config-CCyX_Ohk.js","./rolldown-runtime-C0FnF6B9.js","./vendor-ace-CvEoip98.js","./ace-DzzM-RlW.js"])))=>i.map(i=>d[i]);
2
+ import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{Bt as t,Ur as n,Vt as r,_i as i,qt as a,rr as o}from"./vendor-cameraui-CK4yHsJi.js";import{Gn as s,Ln as c,U as l,ct as u}from"./api-C1mraOYr.js";import{$n as d,$t as f,Dn as p,En as m,Fn as h,Hn as g,Ht as _,In as v,Jn as y,Kn as b,Pn as x,Qn as S,Sr as C,Tn as w,Xn as T,_r as E,br as D,cn as O,dn as k,dr as A,en as j,er as M,gn as N,in as P,ln as F,mr as I,or as L,sn as R,sr as z,vn as B,yr as V}from"./vendor-gFkr2qsZ.js";import{a as ee}from"./intercomService-CjoJaOZ7.js";import{p as te}from"./vendor-core-B-Q4es-f.js";import{o as ne}from"./vendor-primevue-Cmp3VjIC.js";import{t as re}from"./server-Btp5KILd.js";import{n as ie}from"./useServerRestart-CxJGxAcU.js";import{n as H}from"./theme-GhzGwpqd.js";import{t as ae}from"./config-CVqy37fG.js";import{t as oe}from"./back-filled-D-X19YMO.js";import{n as se,t as ce}from"./zoom-in-CHkXAWHy.js";import{n as le,t as ue}from"./CuiTopNavbarItem-ve-3Dsc3.js";var U={lang:`yaml`,readOnly:!1,printMargin:!1,borderRadius:!1,border:!0},W={useWorker:!0,wrap:!0,showPrintMargin:!1,tabSize:2,highlightGutterLine:!0,useSoftTabs:!0,dragEnabled:!1,showGutter:!0,scrollPastEnd:.1},de=B({__name:`CuiEditor`,props:m(w({lang:{},readOnly:{type:Boolean},printMargin:{type:[Number,Boolean]},options:{},placeholder:{},borderRadius:{type:Boolean},borderTopRightRadius:{type:Boolean},borderBottomRightRadius:{type:Boolean},borderBottomLeftRadius:{type:Boolean},borderTopLeftRadius:{type:Boolean},border:{type:Boolean}},U),{modelValue:{required:!0},modelModifiers:{}}),emits:m([`init`,`blur`,`input`,`change`,`changeSelectionStyle`,`changeSession`,`copy`,`focus`,`paste`,`update:value`],[`update:modelValue`]),async setup(t,{emit:n}){let r,a;f(e=>({v3cc736da:V(ae),v66726fab:V(re),v58e243dc:V(ne),v527a6c67:V(ie),v244c42c0:V(ee)})),[r,a]=S(()=>_(()=>import(`./ace.config-CCyX_Ohk.js`),__vite__mapDeps([0,1,2]),import.meta.url)),await r,a();let o=([r,a]=S(()=>_(()=>import(`./ace-DzzM-RlW.js`).then(t=>e(t.default,1)),__vite__mapDeps([3,2,1]),import.meta.url)),r=await r,a(),r),s=t,c=n,l=b(t,`modelValue`),u=H(),{theme:d}=te(u),{readOnly:p,options:m,lang:g,printMargin:C,placeholder:w,borderRadius:D,borderBottomLeftRadius:O,borderTopLeftRadius:j,borderTopRightRadius:M,borderBottomRightRadius:N,border:P}=E(s),F=y(`editorRef`),L=I(),z=A(!1),B=A(``),ee=R(()=>D.value||M.value?`10px`:`0px`),ne=R(()=>D.value||N.value?`10px`:`0px`),re=R(()=>D.value||O.value?`10px`:`0px`),ie=R(()=>D.value||j.value?`10px`:`0px`),ae=R(()=>P.value?`1px solid var(--border-color)`:`none`);return i(F,()=>{L.value&&L.value.resize(!0)}),T(l,e=>{if(B.value!==e){try{z.value=!0,L.value?.setValue(e,1)}finally{z.value=!1}B.value=e}}),T(g,e=>{L.value?.setOption(`mode`,`ace/mode/`+e)}),T(m,e=>{e&&L.value?.setOptions(e)}),T(w,e=>{e!==void 0&&L.value?.setOption(`placeholder`,e)}),T(p,e=>{L.value?.setReadOnly(e)}),T(C,e=>{L.value?.setOption(`printMargin`,e)}),T(d,e=>{if(L.value){let t=e===`dark`?`twilight`:`github`;L.value.setOption(`theme`,`ace/theme/`+t)}}),x(()=>{F.value&&(L.value=o.edit(F.value,{placeholder:w.value,readOnly:p.value,value:l.value,mode:`ace/mode/`+g.value,theme:d.value===`dark`?`ace/theme/twilight`:`ace/theme/github`,printMargin:C.value,fadeFoldWidgets:!0,...W,...m.value}),L.value.on(`change`,()=>{if(z.value)return;let e=L.value.getValue();B.value=e,l.value=e}),L.value.on(`blur`,e=>{c(`blur`,e)}),L.value.on(`input`,()=>{c(`input`)}),L.value.on(`change`,e=>{c(`change`,e)}),L.value.on(`changeSelectionStyle`,e=>{c(`changeSelectionStyle`,e)}),L.value.on(`changeSession`,e=>{c(`changeSession`,e)}),L.value.on(`copy`,e=>{c(`copy`,e)}),L.value.on(`focus`,e=>{c(`focus`,e)}),L.value.on(`paste`,e=>{c(`paste`,e.text)}),c(`init`,L.value))}),h(()=>{L.value?.removeAllListeners(),L.value?.destroy()}),(e,t)=>(v(),k(`div`,{ref_key:`editorRef`,ref:F,class:`h-full bg-none`},null,512))}}),G={viewBox:`0 0 20 20`,width:`1.2em`,height:`1.2em`};function K(e,t){return v(),k(`svg`,G,[...t[0]||=[O(`path`,{fill:`currentColor`,d:`m15.3 5.3l-6.8 6.8l-2.8-2.8l-1.4 1.4l4.2 4.2l8.2-8.2z`},null,-1)]])}var fe=z({name:`dashicons-saved`,render:K}),pe={class:`relative w-6 h-6`},me={class:`w-full h-full flex items-center justify-center`},q=B({__name:`Config`,props:{navbarWidth:{default:0},navbarLeft:{default:0}},setup(e){let i=new ae,f=new re,m=e,h=ee(),_=u(),{t:y}=n(),{smBreakpoint:b}=c(),{beginServerRestart:S}=ie(),w=s(),{uiSettings:I}=te(w),{navbarWidth:z,navbarLeft:B}=E(m),H=R(()=>z.value+B.value),U=A(!1),{data:W,isBusy:G}=i.getConfigQuery(U),{data:K,isBusy:q}=i.getGo2RtcConfigQuery(U),{mutateAsync:he,isPending:ge}=i.patchConfigQuery(),{mutateAsync:_e,isPending:ve}=i.patchGo2RtcConfigQuery(),{mutateAsync:ye,isPending:be}=f.restartServerQuery(),{mutateAsync:xe,isPending:Se}=f.restartGo2RtcQuery(),J=A(`camera.ui`),Y=A(``),X=A(``),Z=A(!1),Ce=A([{label:y(`components.dialog.title.confirm`),icon:fe,buttonProps:{severity:`success`},command:()=>{_.openTextDialog({data:{title:y(`components.dialog.title.confirm`),contentText:y(`components.dialog.message.confirm_restart_server`),confirmText:y(`components.form.button.save_and_restart`),confirmButtonProps:{loading:Q.value},cancelButtonProps:{loading:Q.value}},onConfirm:we})}},{label:y(`components.form.tooltip.zoom_out`),icon:se,command:()=>{Ee()}},{label:y(`components.form.tooltip.zoom_in`),icon:ce,command:()=>{Te()}}]),Q=R(()=>G.value||q.value||ge.value||ve.value||be.value||Se.value),$=R(()=>({fontSize:I.value.config.zoom}));async function we(){try{J.value===`camera.ui`?(await he({configData:Y.value}),await o(500),S(),await ye()):(await _e({configData:X.value}),await o(500),await xe())}catch(e){h.error(e)}}function Te(){I.value.config.zoom!==20&&I.value.config.zoom++}function Ee(){I.value.config.zoom!==8&&I.value.config.zoom--}return T(W,()=>{Y.value=W.value||``},{deep:!0,immediate:!0}),T(K,()=>{X.value=K.value||``},{deep:!0,immediate:!0}),x(async()=>{await o(100),Z.value=!0}),(e,n)=>{let i=oe,o=r,s=l,c=ue,u=le,f=ne,m=de,h=t,_=a;return v(),k(`div`,null,[N(s,{position:`left`},{default:d(()=>[N(o,{severity:`secondary`,text:``,class:`cui-button p-2 text-color non-draggable-region`,onClick:n[0]||=t=>e.$router.push(`/menu`)},{icon:d(()=>[N(i,{class:`w-6 h-6`})]),_:1})]),_:1}),N(u,{"left-offset":V(H),animate:``},{left:d(()=>[N(c,{type:`button`,label:`camera.ui`,active:V(J)===`camera.ui`,onClick:n[1]||=e=>J.value=`camera.ui`},null,8,[`active`]),N(c,{type:`button`,label:`go2rtc`,active:V(J)===`go2rtc`,onClick:n[2]||=e=>J.value=`go2rtc`},null,8,[`active`])]),_:1},8,[`left-offset`]),N(f,{model:V(Ce),direction:`up`,"transition-delay":80,"tooltip-options":{position:`left`,event:void 0},class:`absolute right-3 bottom-3 z-2`,pt:{root:{style:`pointer-events: none`}}},{button:d(({visible:e,toggleCallback:t})=>[N(o,{severity:`secondary`,class:D([`opacity-40 hover:opacity-100 active:opacity-100 focus:opacity-100 transition pointer-events-auto`,{"opacity-100":e}]),rounded:``,loading:V(Q),onClick:t},{icon:d(()=>[O(`div`,pe,[O(`div`,{class:D([`absolute top-0.5 left-1/2 -translate-x-1/2 w-1.5 h-1.5 rounded-full transform transition-all duration-100 origin-center`,{"w-4 h-[2px] rotate-45 top-1/2 -translate-y-1/2 rounded-none":e}]),style:{backgroundColor:`var(--text-color)`}},null,2),O(`div`,{class:D([`absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-1.5 h-1.5 rounded-full transition-all duration-100`,{"opacity-0 scale-0":e}]),style:{backgroundColor:`var(--text-color)`}},null,2),O(`div`,{class:D([`absolute bottom-0.5 left-1/2 -translate-x-1/2 w-1.5 h-1.5 rounded-full transform transition-all duration-100 origin-center`,{"w-4 h-[2px] -rotate-45 bottom-1/2 translate-y-1/2 rounded-none":e}]),style:{backgroundColor:`var(--text-color)`}},null,2)])]),_:2},1032,[`class`,`loading`,`onClick`])]),item:d(({item:e,toggleCallback:t})=>[M((v(),F(o,p({loading:V(Q),severity:`secondary`},e.buttonProps,{rounded:``,onClick:t}),{icon:d(()=>[(v(),F(g(e.icon)))]),_:2},1040,[`loading`,`onClick`])),[[_,{value:e.label}]])]),_:1},8,[`model`]),O(`div`,{class:`w-full h-full`,style:C({paddingTop:`${V(55)}px`})},[(v(),F(P,null,{fallback:d(()=>[O(`div`,me,[N(h,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})])]),default:d(()=>[V(J)===`camera.ui`?M((v(),F(m,{key:0,modelValue:V(Y),"onUpdate:modelValue":n[3]||=e=>L(Y)?Y.value=e:null,lang:`yaml`,options:V($),"read-only":V(Q),border:!V(b),"border-bottom-left-radius":!V(b),"border-bottom-right-radius":!V(b),"border-top-right-radius":!1,"border-top-left-radius":!1},null,8,[`modelValue`,`options`,`read-only`,`border`,`border-bottom-left-radius`,`border-bottom-right-radius`])),[[j,V(Z)]]):M((v(),F(m,{key:1,modelValue:V(X),"onUpdate:modelValue":n[4]||=e=>L(X)?X.value=e:null,lang:`yaml`,options:V($),"read-only":V(Q),border:!V(b),"border-bottom-left-radius":!V(b),"border-bottom-right-radius":!V(b),"border-top-right-radius":!1,"border-top-left-radius":!1},null,8,[`modelValue`,`options`,`read-only`,`border`,`border-bottom-left-radius`,`border-bottom-right-radius`])),[[j,V(Z)]])]),_:1}))],4)])}}});export{q as default};
@@ -1 +1 @@
1
- import{Vr as e,z as t}from"./vendor-cameraui-QXD8jkcj.js";import{$n as n,Cr as r,In as i,cn as a,dn as o,gn as s,hn as c,ln as l,sn as u,un as d,vn as f,yr as p}from"./vendor-DGke_6M4.js";import{B as m,M as h,i as g}from"./vendor-primevue-CCUqY55W.js";import{t as _}from"./assistant-BJ6xKcw_.js";import{i as v}from"./flowSchema-BRTZHQ1w.js";import{t as y}from"./useUserOptions-BTRBUuE2.js";import{t as b}from"./VariableInput-BxPj5wo6.js";import{t as x}from"./VariableSuggestions-CbizvAkz.js";var S={class:`flex flex-col gap-4`},C={class:`flex flex-col field-gap`},w={class:`cui-label`},T={class:`flex flex-col field-gap`},E={class:`cui-label`},D={class:`flex flex-col field-gap`},O={class:`cui-label`},k={class:`flex flex-col field-gap`},A={class:`cui-label`},j={class:`flex flex-col field-gap`},M={class:`cui-label`},N={key:0,class:`flex flex-col field-gap`},P={class:`cui-label`},F=f({__name:`ConfigActionAssistant`,props:{data:{},nodeId:{}},emits:[`update:data`],setup(f,{emit:F}){let I=new _,L=f,R=F,{t:z}=e(),{userOptions:B}=y(),{data:V,isFetched:H}=I.listProfilesOfQuery(u(()=>L.data.user||void 0)),U=[{label:z(`components.automation_nodes.assistant_deliver_push`),value:`push`},{label:z(`components.automation_nodes.assistant_deliver_thread`),value:`thread`},{label:z(`components.automation_nodes.assistant_deliver_both`),value:`both`},{label:z(`components.automation_nodes.assistant_deliver_none`),value:`none`}],{options:W}=v(()=>L.nodeId),G=u(()=>!!L.data.profileId&&H.value&&!V.value?.some(e=>e._id===L.data.profileId));function K(e,t){let n=L.data[e]??``;R(`update:data`,{[e]:n+t})}function q(e){R(`update:data`,{user:e,profileId:void 0})}function J(e,t){R(`update:data`,{[e]:t})}return(e,u)=>{let _=h,v=m,y=g,F=t;return i(),o(`div`,S,[a(`div`,C,[a(`label`,w,r(p(z)(`components.automation_nodes.assistant_user`)),1),s(_,{"model-value":f.data.user,options:p(B),"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":q},null,8,[`model-value`,`options`]),s(v,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:n(()=>[c(r(p(z)(`components.automation_nodes.assistant_user_hint`)),1)]),_:1})]),a(`div`,T,[a(`label`,E,r(p(z)(`components.automation_nodes.assistant_profile`)),1),s(_,{"model-value":f.data.profileId??null,options:p(V)??[],"option-label":`name`,"option-value":`_id`,"show-clear":``,class:`w-full`,disabled:!f.data.user,placeholder:p(z)(`components.automation_nodes.assistant_profile_none`),"onUpdate:modelValue":u[0]||=e=>J(`profileId`,e??void 0)},null,8,[`model-value`,`options`,`disabled`,`placeholder`]),p(G)?(i(),l(v,{key:0,severity:`warn`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:n(()=>[c(r(p(z)(`components.automation_nodes.assistant_profile_missing`)),1)]),_:1})):(i(),l(v,{key:1,severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:n(()=>[c(r(p(z)(`components.automation_nodes.assistant_profile_hint`)),1)]),_:1}))]),a(`div`,D,[a(`label`,O,r(p(z)(`components.automation_nodes.assistant_prompt`)),1),s(y,{"model-value":f.data.prompt,placeholder:p(z)(`components.automation_nodes.assistant_prompt_placeholder`),rows:`4`,class:`w-full`,"onUpdate:modelValue":u[1]||=e=>J(`prompt`,e)},null,8,[`model-value`,`placeholder`]),s(x,{variables:p(W),onSelect:u[2]||=e=>K(`prompt`,e)},null,8,[`variables`]),s(v,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:n(()=>[c(r(p(z)(`components.automation_nodes.assistant_prompt_hint`)),1)]),_:1})]),a(`div`,k,[a(`label`,A,r(p(z)(`components.automation_nodes.assistant_image`)),1),s(b,{"model-value":f.data.image??``,"node-id":f.nodeId,placeholder:`{{snapshot.base64}}`,"onUpdate:modelValue":u[3]||=e=>J(`image`,e)},null,8,[`model-value`,`node-id`]),s(v,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:n(()=>[c(r(p(z)(`components.automation_nodes.assistant_image_hint`)),1)]),_:1})]),a(`div`,j,[a(`label`,M,r(p(z)(`components.automation_nodes.assistant_deliver`)),1),s(_,{"model-value":f.data.deliver??`push`,options:U,"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":u[4]||=e=>J(`deliver`,e)},null,8,[`model-value`])]),f.data.deliver===`none`?d(``,!0):(i(),o(`div`,N,[a(`label`,P,r(p(z)(`components.automation_nodes.assistant_title`)),1),s(F,{"model-value":f.data.title,placeholder:p(z)(`components.automation_nodes.assistant_title_placeholder`),"onUpdate:modelValue":u[5]||=e=>J(`title`,e)},null,8,[`model-value`,`placeholder`]),s(x,{variables:p(W),onSelect:u[6]||=e=>K(`title`,e)},null,8,[`variables`])]))])}}});export{F as default};
1
+ import{B as e,Ur as t}from"./vendor-cameraui-CK4yHsJi.js";import{$n as n,Cr as r,In as i,cn as a,dn as o,gn as s,hn as c,ln as l,sn as u,un as d,vn as f,yr as p}from"./vendor-gFkr2qsZ.js";import{B as m,M as h,i as g}from"./vendor-primevue-Cmp3VjIC.js";import{t as _}from"./assistant-Lz3mFLDo.js";import{i as v}from"./flowSchema-CppNBDy1.js";import{t as y}from"./useUserOptions-lyc4WJ4L.js";import{t as b}from"./VariableInput-PVsqGYW0.js";import{t as x}from"./VariableSuggestions-DwLtlzVz.js";var S={class:`flex flex-col gap-4`},C={class:`flex flex-col field-gap`},w={class:`cui-label`},T={class:`flex flex-col field-gap`},E={class:`cui-label`},D={class:`flex flex-col field-gap`},O={class:`cui-label`},k={class:`flex flex-col field-gap`},A={class:`cui-label`},j={class:`flex flex-col field-gap`},M={class:`cui-label`},N={key:0,class:`flex flex-col field-gap`},P={class:`cui-label`},F=f({__name:`ConfigActionAssistant`,props:{data:{},nodeId:{}},emits:[`update:data`],setup(f,{emit:F}){let I=new _,L=f,R=F,{t:z}=t(),{userOptions:B}=y(),{data:V,isFetched:H}=I.listProfilesOfQuery(u(()=>L.data.user||void 0)),U=[{label:z(`components.automation_nodes.assistant_deliver_push`),value:`push`},{label:z(`components.automation_nodes.assistant_deliver_thread`),value:`thread`},{label:z(`components.automation_nodes.assistant_deliver_both`),value:`both`},{label:z(`components.automation_nodes.assistant_deliver_none`),value:`none`}],{options:W}=v(()=>L.nodeId),G=u(()=>!!L.data.profileId&&H.value&&!V.value?.some(e=>e._id===L.data.profileId));function K(e,t){let n=L.data[e]??``;R(`update:data`,{[e]:n+t})}function q(e){R(`update:data`,{user:e,profileId:void 0})}function J(e,t){R(`update:data`,{[e]:t})}return(t,u)=>{let _=h,v=m,y=g,F=e;return i(),o(`div`,S,[a(`div`,C,[a(`label`,w,r(p(z)(`components.automation_nodes.assistant_user`)),1),s(_,{"model-value":f.data.user,options:p(B),"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":q},null,8,[`model-value`,`options`]),s(v,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:n(()=>[c(r(p(z)(`components.automation_nodes.assistant_user_hint`)),1)]),_:1})]),a(`div`,T,[a(`label`,E,r(p(z)(`components.automation_nodes.assistant_profile`)),1),s(_,{"model-value":f.data.profileId??null,options:p(V)??[],"option-label":`name`,"option-value":`_id`,"show-clear":``,class:`w-full`,disabled:!f.data.user,placeholder:p(z)(`components.automation_nodes.assistant_profile_none`),"onUpdate:modelValue":u[0]||=e=>J(`profileId`,e??void 0)},null,8,[`model-value`,`options`,`disabled`,`placeholder`]),p(G)?(i(),l(v,{key:0,severity:`warn`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:n(()=>[c(r(p(z)(`components.automation_nodes.assistant_profile_missing`)),1)]),_:1})):(i(),l(v,{key:1,severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:n(()=>[c(r(p(z)(`components.automation_nodes.assistant_profile_hint`)),1)]),_:1}))]),a(`div`,D,[a(`label`,O,r(p(z)(`components.automation_nodes.assistant_prompt`)),1),s(y,{"model-value":f.data.prompt,placeholder:p(z)(`components.automation_nodes.assistant_prompt_placeholder`),rows:`4`,class:`w-full`,"onUpdate:modelValue":u[1]||=e=>J(`prompt`,e)},null,8,[`model-value`,`placeholder`]),s(x,{variables:p(W),onSelect:u[2]||=e=>K(`prompt`,e)},null,8,[`variables`]),s(v,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:n(()=>[c(r(p(z)(`components.automation_nodes.assistant_prompt_hint`)),1)]),_:1})]),a(`div`,k,[a(`label`,A,r(p(z)(`components.automation_nodes.assistant_image`)),1),s(b,{"model-value":f.data.image??``,"node-id":f.nodeId,placeholder:`{{snapshot.base64}}`,"onUpdate:modelValue":u[3]||=e=>J(`image`,e)},null,8,[`model-value`,`node-id`]),s(v,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:n(()=>[c(r(p(z)(`components.automation_nodes.assistant_image_hint`)),1)]),_:1})]),a(`div`,j,[a(`label`,M,r(p(z)(`components.automation_nodes.assistant_deliver`)),1),s(_,{"model-value":f.data.deliver??`push`,options:U,"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":u[4]||=e=>J(`deliver`,e)},null,8,[`model-value`])]),f.data.deliver===`none`?d(``,!0):(i(),o(`div`,N,[a(`label`,P,r(p(z)(`components.automation_nodes.assistant_title`)),1),s(F,{"model-value":f.data.title,placeholder:p(z)(`components.automation_nodes.assistant_title_placeholder`),"onUpdate:modelValue":u[5]||=e=>J(`title`,e)},null,8,[`model-value`,`placeholder`]),s(x,{variables:p(W),onSelect:u[6]||=e=>K(`title`,e)},null,8,[`variables`])]))])}}});export{F as default};
@@ -1 +1 @@
1
- import{G as e,Vr as t}from"./vendor-cameraui-QXD8jkcj.js";import{Cr as n,In as r,Rn as i,cn as a,dn as o,gn as s,ln as c,rn as l,un as u,vn as d,yr as f}from"./vendor-DGke_6M4.js";import{M as p,l as m,q as h,v as g}from"./vendor-primevue-CCUqY55W.js";import{n as _}from"./useCameraOptions-A97teAIr.js";import{t as v}from"./types-DWTSNJ79.js";var y={class:`flex flex-col gap-4`},b={class:`flex flex-col field-gap`},x={class:`cui-label`},S={class:`flex flex-col field-gap`},C={class:`cui-label`},w={class:`text-xs text-muted`},T={class:`flex items-center gap-2`},E=[`onClick`],D={key:0,class:`pl-7`},O=d({__name:`ConfigActionCameraControl`,props:{data:{}},emits:[`update:data`],setup(d,{emit:O}){let k=d,A=O,{t:j}=t();function M(e){return(e.options??[]).map(e=>({label:j(e.labelKey),value:e.value}))}let{cameraOptions:N}=_();function P(e){return k.data.properties.some(t=>t.property===e)}function F(e){return k.data.properties.find(t=>t.property===e)?.value??``}function I(e){try{let t=JSON.parse(F(e)||`[]`);return Array.isArray(t)?t:[]}catch{return[]}}function L(e,t){let n=[...k.data.properties];if(t){if(!n.some(t=>t.property===e)){let t=v.find(t=>t.key===e);n.push({property:e,value:t?.defaultValue??``})}}else{let t=n.findIndex(t=>t.property===e);t>=0&&n.splice(t,1)}A(`update:data`,{properties:n})}function R(e,t){let n=k.data.properties.map(n=>n.property===e?{...n,value:t}:n);A(`update:data`,{properties:n})}function z(e,t){A(`update:data`,{[e]:t})}return(t,_)=>{let O=p,k=e,A=h,B=m,V=g;return r(),o(`div`,y,[a(`div`,b,[a(`label`,x,n(f(j)(`components.automation_nodes.camera`)),1),s(O,{"model-value":d.data.cameraId,options:f(N),"option-label":`label`,"option-value":`value`,placeholder:f(j)(`components.automation_nodes.camera_select`),class:`w-full`,"onUpdate:modelValue":_[0]||=e=>z(`cameraId`,e)},null,8,[`model-value`,`options`,`placeholder`])]),a(`div`,S,[a(`label`,C,n(f(j)(`components.automation_nodes.camera_control_properties`)),1),a(`span`,w,n(f(j)(`components.automation_nodes.camera_control_properties_hint`)),1)]),(r(!0),o(l,null,i(f(v),e=>(r(),o(`div`,{key:e.key,class:`flex flex-col gap-2`},[a(`div`,T,[s(k,{"model-value":P(e.key),binary:``,"onUpdate:modelValue":t=>L(e.key,t)},null,8,[`model-value`,`onUpdate:modelValue`]),a(`label`,{class:`cui-label-switch cursor-pointer flex-1 min-w-0 truncate`,onClick:t=>L(e.key,!P(e.key))},n(f(j)(e.labelKey)),9,E),P(e.key)&&e.inputType===`boolean`?(r(),c(A,{key:0,"model-value":F(e.key)===`true`,class:`shrink-0`,"onUpdate:modelValue":t=>R(e.key,String(t))},null,8,[`model-value`,`onUpdate:modelValue`])):u(``,!0)]),P(e.key)&&e.inputType!==`boolean`?(r(),o(`div`,D,[e.inputType===`select`?(r(),c(O,{key:0,"model-value":F(e.key),options:M(e),"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":t=>R(e.key,t)},null,8,[`model-value`,`options`,`onUpdate:modelValue`])):e.inputType===`multiselect`?(r(),c(B,{key:1,"model-value":I(e.key),options:M(e),"option-label":`label`,"option-value":`value`,"show-toggle-all":!1,class:`w-full`,"onUpdate:modelValue":t=>R(e.key,JSON.stringify(t))},null,8,[`model-value`,`options`,`onUpdate:modelValue`])):e.inputType===`number`?(r(),c(V,{key:2,"model-value":Number(F(e.key))||e.min,min:e.min,max:e.max,step:e.step??1,"min-fraction-digits":e.step&&e.step<1?2:0,"max-fraction-digits":e.step&&e.step<1?2:0,class:`w-full`,"onUpdate:modelValue":t=>R(e.key,String(t))},null,8,[`model-value`,`min`,`max`,`step`,`min-fraction-digits`,`max-fraction-digits`,`onUpdate:modelValue`])):u(``,!0)])):u(``,!0)]))),128))])}}});export{O as default};
1
+ import{K as e,Ur as t}from"./vendor-cameraui-CK4yHsJi.js";import{Cr as n,In as r,Rn as i,cn as a,dn as o,gn as s,ln as c,rn as l,un as u,vn as d,yr as f}from"./vendor-gFkr2qsZ.js";import{M as p,l as m,q as h,v as g}from"./vendor-primevue-Cmp3VjIC.js";import{n as _}from"./useCameraOptions-CFISVNgk.js";import{t as v}from"./types-CklFkUXk.js";var y={class:`flex flex-col gap-4`},b={class:`flex flex-col field-gap`},x={class:`cui-label`},S={class:`flex flex-col field-gap`},C={class:`cui-label`},w={class:`text-xs text-muted`},T={class:`flex items-center gap-2`},E=[`onClick`],D={key:0,class:`pl-7`},O=d({__name:`ConfigActionCameraControl`,props:{data:{}},emits:[`update:data`],setup(d,{emit:O}){let k=d,A=O,{t:j}=t();function M(e){return(e.options??[]).map(e=>({label:j(e.labelKey),value:e.value}))}let{cameraOptions:N}=_();function P(e){return k.data.properties.some(t=>t.property===e)}function F(e){return k.data.properties.find(t=>t.property===e)?.value??``}function I(e){try{let t=JSON.parse(F(e)||`[]`);return Array.isArray(t)?t:[]}catch{return[]}}function L(e,t){let n=[...k.data.properties];if(t){if(!n.some(t=>t.property===e)){let t=v.find(t=>t.key===e);n.push({property:e,value:t?.defaultValue??``})}}else{let t=n.findIndex(t=>t.property===e);t>=0&&n.splice(t,1)}A(`update:data`,{properties:n})}function R(e,t){let n=k.data.properties.map(n=>n.property===e?{...n,value:t}:n);A(`update:data`,{properties:n})}function z(e,t){A(`update:data`,{[e]:t})}return(t,_)=>{let O=p,k=e,A=h,B=m,V=g;return r(),o(`div`,y,[a(`div`,b,[a(`label`,x,n(f(j)(`components.automation_nodes.camera`)),1),s(O,{"model-value":d.data.cameraId,options:f(N),"option-label":`label`,"option-value":`value`,placeholder:f(j)(`components.automation_nodes.camera_select`),class:`w-full`,"onUpdate:modelValue":_[0]||=e=>z(`cameraId`,e)},null,8,[`model-value`,`options`,`placeholder`])]),a(`div`,S,[a(`label`,C,n(f(j)(`components.automation_nodes.camera_control_properties`)),1),a(`span`,w,n(f(j)(`components.automation_nodes.camera_control_properties_hint`)),1)]),(r(!0),o(l,null,i(f(v),e=>(r(),o(`div`,{key:e.key,class:`flex flex-col gap-2`},[a(`div`,T,[s(k,{"model-value":P(e.key),binary:``,"onUpdate:modelValue":t=>L(e.key,t)},null,8,[`model-value`,`onUpdate:modelValue`]),a(`label`,{class:`cui-label-switch cursor-pointer flex-1 min-w-0 truncate`,onClick:t=>L(e.key,!P(e.key))},n(f(j)(e.labelKey)),9,E),P(e.key)&&e.inputType===`boolean`?(r(),c(A,{key:0,"model-value":F(e.key)===`true`,class:`shrink-0`,"onUpdate:modelValue":t=>R(e.key,String(t))},null,8,[`model-value`,`onUpdate:modelValue`])):u(``,!0)]),P(e.key)&&e.inputType!==`boolean`?(r(),o(`div`,D,[e.inputType===`select`?(r(),c(O,{key:0,"model-value":F(e.key),options:M(e),"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":t=>R(e.key,t)},null,8,[`model-value`,`options`,`onUpdate:modelValue`])):e.inputType===`multiselect`?(r(),c(B,{key:1,"model-value":I(e.key),options:M(e),"option-label":`label`,"option-value":`value`,"show-toggle-all":!1,class:`w-full`,"onUpdate:modelValue":t=>R(e.key,JSON.stringify(t))},null,8,[`model-value`,`options`,`onUpdate:modelValue`])):e.inputType===`number`?(r(),c(V,{key:2,"model-value":Number(F(e.key))||e.min,min:e.min,max:e.max,step:e.step??1,"min-fraction-digits":e.step&&e.step<1?2:0,"max-fraction-digits":e.step&&e.step<1?2:0,class:`w-full`,"onUpdate:modelValue":t=>R(e.key,String(t))},null,8,[`model-value`,`min`,`max`,`step`,`min-fraction-digits`,`max-fraction-digits`,`onUpdate:modelValue`])):u(``,!0)])):u(``,!0)]))),128))])}}});export{O as default};
@@ -1 +1 @@
1
- import{Vr as e}from"./vendor-cameraui-QXD8jkcj.js";import{$n as t,Cr as n,In as r,cn as i,dn as a,gn as o,hn as s,vn as c,yr as l}from"./vendor-DGke_6M4.js";import{B as u,M as d,v as f}from"./vendor-primevue-CCUqY55W.js";var p={class:`flex flex-col gap-4`},m={class:`flex flex-col field-gap`},h={class:`cui-label`},g={class:`flex flex-col field-gap`},_={class:`cui-label`},v=c({__name:`ConfigActionDelay`,props:{data:{}},emits:[`update:data`],setup(c,{emit:v}){let y=v,{t:b}=e(),x=[{label:b(`components.automation_nodes.unit_seconds`),value:`seconds`},{label:b(`components.automation_nodes.unit_minutes`),value:`minutes`},{label:b(`components.automation_nodes.unit_hours`),value:`hours`}];function S(e,t){y(`update:data`,{[e]:t})}return(e,v)=>{let y=f,C=d,w=u;return r(),a(`div`,p,[i(`div`,m,[i(`label`,h,n(l(b)(`components.automation_nodes.delay_duration`)),1),o(y,{"model-value":c.data.duration,min:1,max:9999,class:`w-full`,"onUpdate:modelValue":v[0]||=e=>S(`duration`,e)},null,8,[`model-value`])]),i(`div`,g,[i(`label`,_,n(l(b)(`components.automation_nodes.delay_unit`)),1),o(C,{"model-value":c.data.unit,options:x,"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":v[1]||=e=>S(`unit`,e)},null,8,[`model-value`]),o(w,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:t(()=>[s(n(l(b)(`components.automation_nodes.action_delay_desc`)),1)]),_:1})])])}}});export{v as default};
1
+ import{Ur as e}from"./vendor-cameraui-CK4yHsJi.js";import{$n as t,Cr as n,In as r,cn as i,dn as a,gn as o,hn as s,vn as c,yr as l}from"./vendor-gFkr2qsZ.js";import{B as u,M as d,v as f}from"./vendor-primevue-Cmp3VjIC.js";var p={class:`flex flex-col gap-4`},m={class:`flex flex-col field-gap`},h={class:`cui-label`},g={class:`flex flex-col field-gap`},_={class:`cui-label`},v=c({__name:`ConfigActionDelay`,props:{data:{}},emits:[`update:data`],setup(c,{emit:v}){let y=v,{t:b}=e(),x=[{label:b(`components.automation_nodes.unit_seconds`),value:`seconds`},{label:b(`components.automation_nodes.unit_minutes`),value:`minutes`},{label:b(`components.automation_nodes.unit_hours`),value:`hours`}];function S(e,t){y(`update:data`,{[e]:t})}return(e,v)=>{let y=f,C=d,w=u;return r(),a(`div`,p,[i(`div`,m,[i(`label`,h,n(l(b)(`components.automation_nodes.delay_duration`)),1),o(y,{"model-value":c.data.duration,min:1,max:9999,class:`w-full`,"onUpdate:modelValue":v[0]||=e=>S(`duration`,e)},null,8,[`model-value`])]),i(`div`,g,[i(`label`,_,n(l(b)(`components.automation_nodes.delay_unit`)),1),o(C,{"model-value":c.data.unit,options:x,"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":v[1]||=e=>S(`unit`,e)},null,8,[`model-value`]),o(w,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:t(()=>[s(n(l(b)(`components.automation_nodes.action_delay_desc`)),1)]),_:1})])])}}});export{v as default};
@@ -1 +1 @@
1
- import{Bt as e,Vr as t,z as n}from"./vendor-cameraui-QXD8jkcj.js";import{$n as r,Cr as i,In as a,Rn as o,cn as s,dn as c,dr as l,gn as u,rn as d,vn as f,yr as p}from"./vendor-DGke_6M4.js";import{M as m,i as h}from"./vendor-primevue-CCUqY55W.js";import{t as g}from"./delete-CY8fsIW6.js";import{i as _}from"./flowSchema-BRTZHQ1w.js";import{t as v}from"./VariableInput-BxPj5wo6.js";import{t as y}from"./VariableSuggestions-CbizvAkz.js";var b={class:`flex flex-col gap-4`},x={class:`flex flex-col field-gap`},S={class:`cui-label`},C={class:`flex flex-col field-gap`},w={class:`cui-label`},T={class:`flex flex-col field-gap`},E={class:`cui-label`},D={class:`flex flex-col field-gap`},O={class:`cui-label`},k=f({__name:`ConfigActionHttp`,props:{data:{},nodeId:{}},emits:[`update:data`],setup(f,{emit:k}){let A=f,j=k,{t:M}=t(),N=[`GET`,`POST`,`PUT`,`DELETE`,`PATCH`],{options:P}=_(()=>A.nodeId),F=l(Object.entries(A.data.headers??{}).map(([e,t])=>({name:e,value:t})));function I(){F.value.push({name:``,value:``})}function L(e,t,n){let r=F.value[e];r&&(r[t]=n,z())}function R(e){F.value.splice(e,1),z()}function z(){let e={};for(let t of F.value)t.name.trim()&&(e[t.name.trim()]=t.value);j(`update:data`,{headers:e})}function B(e){let t=A.data.body??``;j(`update:data`,{body:t+e})}function V(e,t){j(`update:data`,{[e]:t})}return(t,l)=>{let _=m,k=n,A=g,j=e,z=h;return a(),c(`div`,b,[s(`div`,x,[s(`label`,S,i(p(M)(`components.automation_nodes.http_url`)),1),u(v,{"model-value":f.data.url,"node-id":f.nodeId,placeholder:`https://example.com/webhook`,"onUpdate:modelValue":l[0]||=e=>V(`url`,e)},null,8,[`model-value`,`node-id`])]),s(`div`,C,[s(`label`,w,i(p(M)(`components.automation_nodes.http_method`)),1),u(_,{"model-value":f.data.method,options:N,class:`w-full`,"onUpdate:modelValue":l[1]||=e=>V(`method`,e)},null,8,[`model-value`])]),s(`div`,T,[s(`label`,E,i(p(M)(`components.automation_nodes.http_headers`)),1),(a(!0),c(d,null,o(p(F),(e,t)=>(a(),c(`div`,{key:t,class:`flex items-center gap-2`},[u(k,{"model-value":e.name,placeholder:p(M)(`components.automation_nodes.http_header_name`),class:`flex-1 min-w-0`,"onUpdate:modelValue":e=>L(t,`name`,e??``)},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`]),u(k,{"model-value":e.value,placeholder:p(M)(`components.automation_nodes.http_header_value`),class:`flex-1 min-w-0`,"onUpdate:modelValue":e=>L(t,`value`,e??``)},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`]),u(j,{text:``,severity:`danger`,size:`small`,onClick:e=>R(t)},{default:r(()=>[u(A,{class:`w-4 h-4`})]),_:1},8,[`onClick`])]))),128)),u(j,{severity:`secondary`,outlined:``,size:`small`,class:`self-start`,label:p(M)(`components.automation_nodes.http_add_header`),onClick:I},null,8,[`label`])]),s(`div`,D,[s(`label`,O,i(p(M)(`components.automation_nodes.http_body`)),1),u(z,{"model-value":f.data.body,placeholder:`{"key": "value"}`,rows:`4`,class:`w-full font-mono text-xs`,"onUpdate:modelValue":l[2]||=e=>V(`body`,e)},null,8,[`model-value`]),u(y,{variables:p(P),onSelect:l[3]||=e=>B(e)},null,8,[`variables`])])])}}});export{k as default};
1
+ import{B as e,Ur as t,Vt as n}from"./vendor-cameraui-CK4yHsJi.js";import{$n as r,Cr as i,In as a,Rn as o,cn as s,dn as c,dr as l,gn as u,rn as d,vn as f,yr as p}from"./vendor-gFkr2qsZ.js";import{M as m,i as h}from"./vendor-primevue-Cmp3VjIC.js";import{t as g}from"./delete-Btu-UVx9.js";import{i as _}from"./flowSchema-CppNBDy1.js";import{t as v}from"./VariableInput-PVsqGYW0.js";import{t as y}from"./VariableSuggestions-DwLtlzVz.js";var b={class:`flex flex-col gap-4`},x={class:`flex flex-col field-gap`},S={class:`cui-label`},C={class:`flex flex-col field-gap`},w={class:`cui-label`},T={class:`flex flex-col field-gap`},E={class:`cui-label`},D={class:`flex flex-col field-gap`},O={class:`cui-label`},k=f({__name:`ConfigActionHttp`,props:{data:{},nodeId:{}},emits:[`update:data`],setup(f,{emit:k}){let A=f,j=k,{t:M}=t(),N=[`GET`,`POST`,`PUT`,`DELETE`,`PATCH`],{options:P}=_(()=>A.nodeId),F=l(Object.entries(A.data.headers??{}).map(([e,t])=>({name:e,value:t})));function I(){F.value.push({name:``,value:``})}function L(e,t,n){let r=F.value[e];r&&(r[t]=n,z())}function R(e){F.value.splice(e,1),z()}function z(){let e={};for(let t of F.value)t.name.trim()&&(e[t.name.trim()]=t.value);j(`update:data`,{headers:e})}function B(e){let t=A.data.body??``;j(`update:data`,{body:t+e})}function V(e,t){j(`update:data`,{[e]:t})}return(t,l)=>{let _=m,k=e,A=g,j=n,z=h;return a(),c(`div`,b,[s(`div`,x,[s(`label`,S,i(p(M)(`components.automation_nodes.http_url`)),1),u(v,{"model-value":f.data.url,"node-id":f.nodeId,placeholder:`https://example.com/webhook`,"onUpdate:modelValue":l[0]||=e=>V(`url`,e)},null,8,[`model-value`,`node-id`])]),s(`div`,C,[s(`label`,w,i(p(M)(`components.automation_nodes.http_method`)),1),u(_,{"model-value":f.data.method,options:N,class:`w-full`,"onUpdate:modelValue":l[1]||=e=>V(`method`,e)},null,8,[`model-value`])]),s(`div`,T,[s(`label`,E,i(p(M)(`components.automation_nodes.http_headers`)),1),(a(!0),c(d,null,o(p(F),(e,t)=>(a(),c(`div`,{key:t,class:`flex items-center gap-2`},[u(k,{"model-value":e.name,placeholder:p(M)(`components.automation_nodes.http_header_name`),class:`flex-1 min-w-0`,"onUpdate:modelValue":e=>L(t,`name`,e??``)},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`]),u(k,{"model-value":e.value,placeholder:p(M)(`components.automation_nodes.http_header_value`),class:`flex-1 min-w-0`,"onUpdate:modelValue":e=>L(t,`value`,e??``)},null,8,[`model-value`,`placeholder`,`onUpdate:modelValue`]),u(j,{text:``,severity:`danger`,size:`small`,onClick:e=>R(t)},{default:r(()=>[u(A,{class:`w-4 h-4`})]),_:1},8,[`onClick`])]))),128)),u(j,{severity:`secondary`,outlined:``,size:`small`,class:`self-start`,label:p(M)(`components.automation_nodes.http_add_header`),onClick:I},null,8,[`label`])]),s(`div`,D,[s(`label`,O,i(p(M)(`components.automation_nodes.http_body`)),1),u(z,{"model-value":f.data.body,placeholder:`{"key": "value"}`,rows:`4`,class:`w-full font-mono text-xs`,"onUpdate:modelValue":l[2]||=e=>V(`body`,e)},null,8,[`model-value`]),u(y,{variables:p(P),onSelect:l[3]||=e=>B(e)},null,8,[`variables`])])])}}});export{k as default};
@@ -1 +1 @@
1
- import{Bt as e,Kt as t,Vr as n,z as r}from"./vendor-cameraui-QXD8jkcj.js";import{$n as i,Cr as a,In as o,Jn as s,cn as c,dn as l,er as u,gn as d,hn as f,ln as p,sn as m,un as h,vn as g,yr as _}from"./vendor-DGke_6M4.js";import{B as v,M as y,W as b,v as x}from"./vendor-primevue-CCUqY55W.js";import{t as S}from"./VariableInput-BxPj5wo6.js";import{t as C}from"./upload-B-ZYPekV.js";var w={class:`flex flex-col gap-4`},T={class:`flex flex-col field-gap`},E={class:`cui-label`},D={class:`flex gap-2`},O={key:0,class:`rounded-lg overflow-hidden border-[1px] border-color bg-black`},k=[`src`],A={class:`flex flex-col field-gap`},j={class:`cui-label`},M={class:`flex flex-col field-gap`},N={class:`cui-label`},P={class:`flex flex-col field-gap`},F={class:`cui-label`},I={class:`flex flex-col field-gap`},L={class:`cui-label`},R=g({__name:`ConfigActionImageInput`,props:{data:{},nodeId:{}},emits:[`update:data`],setup(g,{emit:R}){let z=g,B=R,{t:V}=n(),H=[{label:`JPEG`,value:`jpeg`},{label:`Raw RGB`,value:`raw-rgb`},{label:`Raw RGBA`,value:`raw-rgba`},{label:`Raw Grayscale`,value:`raw-gray`}],U=s(`fileInput`),W=m(()=>{let e=z.data.source;if(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`data:`))return e;if(e.length>100&&!e.startsWith(`{{`))return`data:image/jpeg;base64,${e}`}});function G(){U.value?.click()}function K(e){let t=e.target.files?.[0];if(!t)return;let n=new FileReader;n.onload=()=>{let e=n.result.split(`,`)[1];e&&B(`update:data`,{source:e})},n.readAsDataURL(t)}function q(e,t){B(`update:data`,{[e]:t})}return(n,s)=>{let m=C,R=e,z=v,B=r,J=b,Y=x,X=y,Z=t;return o(),l(`div`,w,[c(`div`,T,[c(`label`,E,a(_(V)(`components.automation_nodes.image_source`)),1),c(`div`,D,[d(S,{"model-value":g.data.source,"node-id":g.nodeId,placeholder:_(V)(`components.automation_nodes.image_source_placeholder`),class:`flex-1`,"onUpdate:modelValue":s[0]||=e=>q(`source`,e)},null,8,[`model-value`,`node-id`,`placeholder`]),u((o(),p(R,{severity:`secondary`,outlined:``,class:`shrink-0 h-[42px] w-[42px] p-0`,onClick:G},{icon:i(()=>[d(m,{class:`w-4 h-4`})]),_:1})),[[Z,_(V)(`components.automation_nodes.image_upload`),void 0,{top:!0}]]),c(`input`,{ref_key:`fileInput`,ref:U,type:`file`,accept:`image/*`,class:`hidden`,onChange:K},null,544)]),d(z,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:i(()=>[f(a(_(V)(`components.automation_nodes.image_source_hint`)),1)]),_:1})]),_(W)?(o(),l(`div`,O,[c(`img`,{src:_(W),class:`w-full max-h-32 object-cover`},null,8,k)])):h(``,!0),c(`div`,A,[c(`label`,j,a(_(V)(`components.automation_nodes.variable_name`)),1),d(B,{"model-value":g.data.variableName,placeholder:`image`,"onUpdate:modelValue":s[1]||=e=>q(`variableName`,e)},null,8,[`model-value`]),d(z,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:i(()=>[f(a(_(V)(`components.automation_nodes.image_variable_hint`)),1)]),_:1})]),d(J),c(`div`,M,[c(`label`,N,a(_(V)(`components.automation_nodes.image_width`)),1),d(Y,{"model-value":g.data.resizeWidth??0,min:0,max:7680,class:`w-full`,"onUpdate:modelValue":s[2]||=e=>q(`resizeWidth`,e)},null,8,[`model-value`])]),c(`div`,P,[c(`label`,F,a(_(V)(`components.automation_nodes.image_height`)),1),d(Y,{"model-value":g.data.resizeHeight??0,min:0,max:4320,class:`w-full`,"onUpdate:modelValue":s[3]||=e=>q(`resizeHeight`,e)},null,8,[`model-value`])]),d(z,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:i(()=>[f(a(_(V)(`components.automation_nodes.image_resize_hint`)),1)]),_:1}),c(`div`,I,[c(`label`,L,a(_(V)(`components.automation_nodes.image_output_format`)),1),d(X,{"model-value":g.data.outputFormat??`jpeg`,options:H,"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":s[4]||=e=>q(`outputFormat`,e)},null,8,[`model-value`])])])}}});export{R as default};
1
+ import{B as e,Ur as t,Vt as n,qt as r}from"./vendor-cameraui-CK4yHsJi.js";import{$n as i,Cr as a,In as o,Jn as s,cn as c,dn as l,er as u,gn as d,hn as f,ln as p,sn as m,un as h,vn as g,yr as _}from"./vendor-gFkr2qsZ.js";import{B as v,M as y,W as b,v as x}from"./vendor-primevue-Cmp3VjIC.js";import{t as S}from"./VariableInput-PVsqGYW0.js";import{t as C}from"./upload-DtIcwiNC.js";var w={class:`flex flex-col gap-4`},T={class:`flex flex-col field-gap`},E={class:`cui-label`},D={class:`flex gap-2`},O={key:0,class:`rounded-lg overflow-hidden border-[1px] border-color bg-black`},k=[`src`],A={class:`flex flex-col field-gap`},j={class:`cui-label`},M={class:`flex flex-col field-gap`},N={class:`cui-label`},P={class:`flex flex-col field-gap`},F={class:`cui-label`},I={class:`flex flex-col field-gap`},L={class:`cui-label`},R=g({__name:`ConfigActionImageInput`,props:{data:{},nodeId:{}},emits:[`update:data`],setup(g,{emit:R}){let z=g,B=R,{t:V}=t(),H=[{label:`JPEG`,value:`jpeg`},{label:`Raw RGB`,value:`raw-rgb`},{label:`Raw RGBA`,value:`raw-rgba`},{label:`Raw Grayscale`,value:`raw-gray`}],U=s(`fileInput`),W=m(()=>{let e=z.data.source;if(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`data:`))return e;if(e.length>100&&!e.startsWith(`{{`))return`data:image/jpeg;base64,${e}`}});function G(){U.value?.click()}function K(e){let t=e.target.files?.[0];if(!t)return;let n=new FileReader;n.onload=()=>{let e=n.result.split(`,`)[1];e&&B(`update:data`,{source:e})},n.readAsDataURL(t)}function q(e,t){B(`update:data`,{[e]:t})}return(t,s)=>{let m=C,R=n,z=v,B=e,J=b,Y=x,X=y,Z=r;return o(),l(`div`,w,[c(`div`,T,[c(`label`,E,a(_(V)(`components.automation_nodes.image_source`)),1),c(`div`,D,[d(S,{"model-value":g.data.source,"node-id":g.nodeId,placeholder:_(V)(`components.automation_nodes.image_source_placeholder`),class:`flex-1`,"onUpdate:modelValue":s[0]||=e=>q(`source`,e)},null,8,[`model-value`,`node-id`,`placeholder`]),u((o(),p(R,{severity:`secondary`,outlined:``,class:`shrink-0 h-[42px] w-[42px] p-0`,onClick:G},{icon:i(()=>[d(m,{class:`w-4 h-4`})]),_:1})),[[Z,_(V)(`components.automation_nodes.image_upload`),void 0,{top:!0}]]),c(`input`,{ref_key:`fileInput`,ref:U,type:`file`,accept:`image/*`,class:`hidden`,onChange:K},null,544)]),d(z,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:i(()=>[f(a(_(V)(`components.automation_nodes.image_source_hint`)),1)]),_:1})]),_(W)?(o(),l(`div`,O,[c(`img`,{src:_(W),class:`w-full max-h-32 object-cover`},null,8,k)])):h(``,!0),c(`div`,A,[c(`label`,j,a(_(V)(`components.automation_nodes.variable_name`)),1),d(B,{"model-value":g.data.variableName,placeholder:`image`,"onUpdate:modelValue":s[1]||=e=>q(`variableName`,e)},null,8,[`model-value`]),d(z,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:i(()=>[f(a(_(V)(`components.automation_nodes.image_variable_hint`)),1)]),_:1})]),d(J),c(`div`,M,[c(`label`,N,a(_(V)(`components.automation_nodes.image_width`)),1),d(Y,{"model-value":g.data.resizeWidth??0,min:0,max:7680,class:`w-full`,"onUpdate:modelValue":s[2]||=e=>q(`resizeWidth`,e)},null,8,[`model-value`])]),c(`div`,P,[c(`label`,F,a(_(V)(`components.automation_nodes.image_height`)),1),d(Y,{"model-value":g.data.resizeHeight??0,min:0,max:4320,class:`w-full`,"onUpdate:modelValue":s[3]||=e=>q(`resizeHeight`,e)},null,8,[`model-value`])]),d(z,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:i(()=>[f(a(_(V)(`components.automation_nodes.image_resize_hint`)),1)]),_:1}),c(`div`,I,[c(`label`,L,a(_(V)(`components.automation_nodes.image_output_format`)),1),d(X,{"model-value":g.data.outputFormat??`jpeg`,options:H,"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":s[4]||=e=>q(`outputFormat`,e)},null,8,[`model-value`])])])}}});export{R as default};
@@ -1 +1 @@
1
- import{Bt as e,Vr as t}from"./vendor-cameraui-QXD8jkcj.js";import{$n as n,Cr as r,In as i,Rn as a,cn as o,dn as s,gn as c,hn as l,ln as u,rn as d,sn as f,un as p,vn as m,yr as h}from"./vendor-DGke_6M4.js";import{B as g,i as _,q as v}from"./vendor-primevue-CCUqY55W.js";import{i as y}from"./flowSchema-BRTZHQ1w.js";import{t as b}from"./VariableInput-BxPj5wo6.js";import{t as x}from"./VariableSuggestions-CbizvAkz.js";import{t as S}from"./mqtt-iD9XHYO_.js";var C={class:`flex flex-col gap-4`},w={class:`flex flex-col field-gap`},T={class:`cui-label`},E={key:0,class:`flex flex-col field-gap`},D={class:`cui-label`},O={class:`flex flex-wrap gap-1.5`},k={class:`flex flex-col field-gap`},A={class:`cui-label`},j={class:`flex items-center gap-4 cui-toggle-switch`},M={class:`flex flex-col field-switch-gap`},N={class:`cui-label-switch`},P=m({__name:`ConfigActionMqtt`,props:{data:{},nodeId:{}},emits:[`update:data`],setup(m,{emit:P}){let F=new S,I=m,L=P,{t:R}=t(),{options:z}=y(()=>I.nodeId),{data:B}=F.getMqttTopicsQuery(),V=f(()=>(B.value??[]).slice(0,15));function H(e){let t=I.data.payload??``;L(`update:data`,{payload:t+e})}function U(e,t){L(`update:data`,{[e]:t})}return(t,f)=>{let y=e,S=_,P=g,F=v;return i(),s(`div`,C,[o(`div`,w,[o(`label`,T,r(h(R)(`components.automation_nodes.mqtt_topic`)),1),c(b,{"model-value":m.data.topic,"node-id":m.nodeId,placeholder:`home/notify/doorbell`,"onUpdate:modelValue":f[0]||=e=>U(`topic`,e)},null,8,[`model-value`,`node-id`])]),h(V).length?(i(),s(`div`,E,[o(`label`,D,r(h(R)(`components.automation_nodes.mqtt_recent_topics`)),1),o(`div`,O,[(i(!0),s(d,null,a(h(V),e=>(i(),u(y,{key:e,severity:`secondary`,outlined:``,size:`small`,label:e,class:`font-mono`,onClick:t=>U(`topic`,e)},null,8,[`label`,`onClick`]))),128))])])):p(``,!0),o(`div`,k,[o(`label`,A,r(h(R)(`components.automation_nodes.mqtt_payload`)),1),c(S,{"model-value":m.data.payload,placeholder:`{"event": "{{event.label}}"}`,rows:`4`,class:`w-full font-mono text-xs`,"onUpdate:modelValue":f[1]||=e=>U(`payload`,e)},null,8,[`model-value`]),c(x,{variables:h(z),onSelect:f[2]||=e=>H(e)},null,8,[`variables`])]),o(`div`,j,[o(`div`,M,[o(`label`,N,r(h(R)(`components.automation_nodes.mqtt_retain`)),1),c(P,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:n(()=>[l(r(h(R)(`components.automation_nodes.mqtt_retain_hint`)),1)]),_:1})]),c(F,{"model-value":m.data.retain,class:`ml-auto shrink-0`,"onUpdate:modelValue":f[3]||=e=>U(`retain`,e)},null,8,[`model-value`])])])}}});export{P as default};
1
+ import{Ur as e,Vt as t}from"./vendor-cameraui-CK4yHsJi.js";import{$n as n,Cr as r,In as i,Rn as a,cn as o,dn as s,gn as c,hn as l,ln as u,rn as d,sn as f,un as p,vn as m,yr as h}from"./vendor-gFkr2qsZ.js";import{B as g,i as _,q as v}from"./vendor-primevue-Cmp3VjIC.js";import{i as y}from"./flowSchema-CppNBDy1.js";import{t as b}from"./VariableInput-PVsqGYW0.js";import{t as x}from"./VariableSuggestions-DwLtlzVz.js";import{t as S}from"./mqtt-BENV9Fx4.js";var C={class:`flex flex-col gap-4`},w={class:`flex flex-col field-gap`},T={class:`cui-label`},E={key:0,class:`flex flex-col field-gap`},D={class:`cui-label`},O={class:`flex flex-wrap gap-1.5`},k={class:`flex flex-col field-gap`},A={class:`cui-label`},j={class:`flex items-center gap-4 cui-toggle-switch`},M={class:`flex flex-col field-switch-gap`},N={class:`cui-label-switch`},P=m({__name:`ConfigActionMqtt`,props:{data:{},nodeId:{}},emits:[`update:data`],setup(m,{emit:P}){let F=new S,I=m,L=P,{t:R}=e(),{options:z}=y(()=>I.nodeId),{data:B}=F.getMqttTopicsQuery(),V=f(()=>(B.value??[]).slice(0,15));function H(e){let t=I.data.payload??``;L(`update:data`,{payload:t+e})}function U(e,t){L(`update:data`,{[e]:t})}return(e,f)=>{let y=t,S=_,P=g,F=v;return i(),s(`div`,C,[o(`div`,w,[o(`label`,T,r(h(R)(`components.automation_nodes.mqtt_topic`)),1),c(b,{"model-value":m.data.topic,"node-id":m.nodeId,placeholder:`home/notify/doorbell`,"onUpdate:modelValue":f[0]||=e=>U(`topic`,e)},null,8,[`model-value`,`node-id`])]),h(V).length?(i(),s(`div`,E,[o(`label`,D,r(h(R)(`components.automation_nodes.mqtt_recent_topics`)),1),o(`div`,O,[(i(!0),s(d,null,a(h(V),e=>(i(),u(y,{key:e,severity:`secondary`,outlined:``,size:`small`,label:e,class:`font-mono`,onClick:t=>U(`topic`,e)},null,8,[`label`,`onClick`]))),128))])])):p(``,!0),o(`div`,k,[o(`label`,A,r(h(R)(`components.automation_nodes.mqtt_payload`)),1),c(S,{"model-value":m.data.payload,placeholder:`{"event": "{{event.label}}"}`,rows:`4`,class:`w-full font-mono text-xs`,"onUpdate:modelValue":f[1]||=e=>U(`payload`,e)},null,8,[`model-value`]),c(x,{variables:h(z),onSelect:f[2]||=e=>H(e)},null,8,[`variables`])]),o(`div`,j,[o(`div`,M,[o(`label`,N,r(h(R)(`components.automation_nodes.mqtt_retain`)),1),c(P,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-switch-hint`},{default:n(()=>[l(r(h(R)(`components.automation_nodes.mqtt_retain_hint`)),1)]),_:1})]),c(F,{"model-value":m.data.retain,class:`ml-auto shrink-0`,"onUpdate:modelValue":f[3]||=e=>U(`retain`,e)},null,8,[`model-value`])])])}}});export{P as default};
@@ -1 +1 @@
1
- import{Bt as e,Kt as t,Vr as n,z as r}from"./vendor-cameraui-QXD8jkcj.js";import{$n as i,Cr as a,In as o,Jn as s,cn as c,dn as l,er as ee,gn as u,hn as d,ln as f,sn as p,un as m,vn as h,yr as g}from"./vendor-DGke_6M4.js";import{B as te,M as ne,i as _,l as v}from"./vendor-primevue-CCUqY55W.js";import{t as y}from"./notifications-CbAJX7RF.js";import{i as b}from"./flowSchema-BRTZHQ1w.js";import{t as x}from"./VariableInput-BxPj5wo6.js";import{t as S}from"./VariableSuggestions-CbizvAkz.js";import{t as C}from"./upload-B-ZYPekV.js";var w={class:`flex flex-col gap-4`},re={class:`flex flex-col field-gap`},T={class:`cui-label`},E={class:`flex flex-col field-gap`},D={class:`cui-label`},O={class:`flex flex-col field-gap`},k={class:`cui-label`},A={class:`flex flex-col field-gap`},j={class:`cui-label`},M={class:`flex gap-2`},N={key:0,class:`rounded-lg overflow-hidden border-[1px] border-color bg-black`},P=[`src`],F={class:`flex flex-col field-gap`},I={class:`cui-label`},L={class:`flex flex-col field-gap`},R={class:`cui-label`},z={class:`text-xs text-muted-color`},B=h({__name:`ConfigActionNotification`,props:{data:{},nodeId:{}},emits:[`update:data`],setup(h,{emit:B}){let V=new y,H=h,U=B,{t:W}=n(),{data:G,isLoading:K}=V.listDevicesQuery(),q=[{label:W(`components.automation_nodes.severity_info`),value:`info`},{label:W(`components.automation_nodes.severity_warning`),value:`warn`},{label:W(`components.automation_nodes.severity_error`),value:`error`},{label:W(`components.automation_nodes.severity_critical`),value:`critical`}],J=s(`fileInput`),Y=p(()=>(G.value??[]).map(e=>({id:e.id,label:e.name}))),{options:X}=b(()=>H.nodeId),Z=p(()=>{let e=H.data.image;if(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`data:`))return e;if(e.length>100&&!e.startsWith(`{{`))return`data:image/jpeg;base64,${e}`}});function Q(e,t){let n=H.data[e]??``;U(`update:data`,{[e]:n+t})}function $(e,t){U(`update:data`,{[e]:t})}function ie(){J.value?.click()}function ae(e){let t=e.target.files?.[0];if(!t)return;let n=new FileReader;n.onload=()=>{let e=n.result.split(`,`)[1];e&&U(`update:data`,{image:e})},n.readAsDataURL(t)}return(n,s)=>{let p=r,y=_,b=ne,B=C,V=e,H=te,U=v,G=t;return o(),l(`div`,w,[c(`div`,re,[c(`label`,T,a(g(W)(`components.automation_nodes.notification_title`)),1),u(p,{"model-value":h.data.title,placeholder:g(W)(`components.automation_nodes.notification_title_placeholder`),"onUpdate:modelValue":s[0]||=e=>$(`title`,e)},null,8,[`model-value`,`placeholder`]),u(S,{variables:g(X),onSelect:s[1]||=e=>Q(`title`,e)},null,8,[`variables`])]),c(`div`,E,[c(`label`,D,a(g(W)(`components.automation_nodes.notification_body`)),1),u(y,{"model-value":h.data.body,placeholder:g(W)(`components.automation_nodes.notification_body_placeholder`),rows:`3`,class:`w-full`,"onUpdate:modelValue":s[2]||=e=>$(`body`,e)},null,8,[`model-value`,`placeholder`]),u(S,{variables:g(X),onSelect:s[3]||=e=>Q(`body`,e)},null,8,[`variables`])]),c(`div`,O,[c(`label`,k,a(g(W)(`components.automation_nodes.notification_severity`)),1),u(b,{"model-value":h.data.severity??`info`,options:q,"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":s[4]||=e=>$(`severity`,e)},null,8,[`model-value`])]),c(`div`,A,[c(`label`,j,a(g(W)(`components.automation_nodes.notification_image`)),1),c(`div`,M,[u(x,{"model-value":h.data.image??``,"node-id":h.nodeId,placeholder:g(W)(`components.automation_nodes.notification_image_placeholder`),class:`flex-1`,"onUpdate:modelValue":s[5]||=e=>$(`image`,e)},null,8,[`model-value`,`node-id`,`placeholder`]),ee((o(),f(V,{severity:`secondary`,outlined:``,class:`shrink-0 h-[42px] w-[42px] p-0`,onClick:ie},{icon:i(()=>[u(B,{class:`w-4 h-4`})]),_:1})),[[G,g(W)(`components.automation_nodes.image_upload`),void 0,{top:!0}]]),c(`input`,{ref_key:`fileInput`,ref:J,type:`file`,accept:`image/*`,class:`hidden`,onChange:ae},null,544)]),u(H,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:i(()=>[d(a(g(W)(`components.automation_nodes.notification_image_hint`)),1)]),_:1}),g(Z)?(o(),l(`div`,N,[c(`img`,{src:g(Z),class:`w-full max-h-32 object-cover`},null,8,P)])):m(``,!0)]),c(`div`,F,[c(`label`,I,a(g(W)(`components.automation_nodes.notification_deep_link`)),1),u(p,{"model-value":h.data.deepLink,placeholder:`/cameras/cam-1`,"onUpdate:modelValue":s[6]||=e=>$(`deepLink`,e)},null,8,[`model-value`]),u(S,{variables:g(X),onSelect:s[7]||=e=>Q(`deepLink`,e)},null,8,[`variables`])]),c(`div`,L,[c(`label`,R,a(g(W)(`components.automation_nodes.notification_targets`)),1),c(`span`,z,a(g(W)(`components.automation_nodes.notification_targets_hint`)),1),u(U,{"model-value":h.data.targets??[],options:g(Y),"option-label":`label`,"option-value":`id`,loading:g(K),placeholder:g(W)(`components.automation_nodes.notification_targets_placeholder`),display:`chip`,filter:``,class:`w-full`,"onUpdate:modelValue":s[8]||=e=>$(`targets`,e)},null,8,[`model-value`,`options`,`loading`,`placeholder`])])])}}});export{B as default};
1
+ import{B as e,Ur as t,Vt as n,qt as r}from"./vendor-cameraui-CK4yHsJi.js";import{$n as i,Cr as a,In as o,Jn as s,cn as c,dn as l,er as ee,gn as u,hn as d,ln as f,sn as p,un as m,vn as h,yr as g}from"./vendor-gFkr2qsZ.js";import{B as te,M as ne,i as _,l as v}from"./vendor-primevue-Cmp3VjIC.js";import{t as y}from"./notifications-By40oPng.js";import{i as b}from"./flowSchema-CppNBDy1.js";import{t as x}from"./VariableInput-PVsqGYW0.js";import{t as S}from"./VariableSuggestions-DwLtlzVz.js";import{t as C}from"./upload-DtIcwiNC.js";var w={class:`flex flex-col gap-4`},re={class:`flex flex-col field-gap`},T={class:`cui-label`},E={class:`flex flex-col field-gap`},D={class:`cui-label`},O={class:`flex flex-col field-gap`},k={class:`cui-label`},A={class:`flex flex-col field-gap`},j={class:`cui-label`},M={class:`flex gap-2`},N={key:0,class:`rounded-lg overflow-hidden border-[1px] border-color bg-black`},P=[`src`],F={class:`flex flex-col field-gap`},I={class:`cui-label`},L={class:`flex flex-col field-gap`},R={class:`cui-label`},z={class:`text-xs text-muted-color`},B=h({__name:`ConfigActionNotification`,props:{data:{},nodeId:{}},emits:[`update:data`],setup(h,{emit:B}){let V=new y,H=h,U=B,{t:W}=t(),{data:G,isLoading:K}=V.listDevicesQuery(),q=[{label:W(`components.automation_nodes.severity_info`),value:`info`},{label:W(`components.automation_nodes.severity_warning`),value:`warn`},{label:W(`components.automation_nodes.severity_error`),value:`error`},{label:W(`components.automation_nodes.severity_critical`),value:`critical`}],J=s(`fileInput`),Y=p(()=>(G.value??[]).map(e=>({id:e.id,label:e.name}))),{options:X}=b(()=>H.nodeId),Z=p(()=>{let e=H.data.image;if(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`data:`))return e;if(e.length>100&&!e.startsWith(`{{`))return`data:image/jpeg;base64,${e}`}});function Q(e,t){let n=H.data[e]??``;U(`update:data`,{[e]:n+t})}function $(e,t){U(`update:data`,{[e]:t})}function ie(){J.value?.click()}function ae(e){let t=e.target.files?.[0];if(!t)return;let n=new FileReader;n.onload=()=>{let e=n.result.split(`,`)[1];e&&U(`update:data`,{image:e})},n.readAsDataURL(t)}return(t,s)=>{let p=e,y=_,b=ne,B=C,V=n,H=te,U=v,G=r;return o(),l(`div`,w,[c(`div`,re,[c(`label`,T,a(g(W)(`components.automation_nodes.notification_title`)),1),u(p,{"model-value":h.data.title,placeholder:g(W)(`components.automation_nodes.notification_title_placeholder`),"onUpdate:modelValue":s[0]||=e=>$(`title`,e)},null,8,[`model-value`,`placeholder`]),u(S,{variables:g(X),onSelect:s[1]||=e=>Q(`title`,e)},null,8,[`variables`])]),c(`div`,E,[c(`label`,D,a(g(W)(`components.automation_nodes.notification_body`)),1),u(y,{"model-value":h.data.body,placeholder:g(W)(`components.automation_nodes.notification_body_placeholder`),rows:`3`,class:`w-full`,"onUpdate:modelValue":s[2]||=e=>$(`body`,e)},null,8,[`model-value`,`placeholder`]),u(S,{variables:g(X),onSelect:s[3]||=e=>Q(`body`,e)},null,8,[`variables`])]),c(`div`,O,[c(`label`,k,a(g(W)(`components.automation_nodes.notification_severity`)),1),u(b,{"model-value":h.data.severity??`info`,options:q,"option-label":`label`,"option-value":`value`,class:`w-full`,"onUpdate:modelValue":s[4]||=e=>$(`severity`,e)},null,8,[`model-value`])]),c(`div`,A,[c(`label`,j,a(g(W)(`components.automation_nodes.notification_image`)),1),c(`div`,M,[u(x,{"model-value":h.data.image??``,"node-id":h.nodeId,placeholder:g(W)(`components.automation_nodes.notification_image_placeholder`),class:`flex-1`,"onUpdate:modelValue":s[5]||=e=>$(`image`,e)},null,8,[`model-value`,`node-id`,`placeholder`]),ee((o(),f(V,{severity:`secondary`,outlined:``,class:`shrink-0 h-[42px] w-[42px] p-0`,onClick:ie},{icon:i(()=>[u(B,{class:`w-4 h-4`})]),_:1})),[[G,g(W)(`components.automation_nodes.image_upload`),void 0,{top:!0}]]),c(`input`,{ref_key:`fileInput`,ref:J,type:`file`,accept:`image/*`,class:`hidden`,onChange:ae},null,544)]),u(H,{severity:`secondary`,variant:`simple`,size:`small`,class:`cui-input-hint`},{default:i(()=>[d(a(g(W)(`components.automation_nodes.notification_image_hint`)),1)]),_:1}),g(Z)?(o(),l(`div`,N,[c(`img`,{src:g(Z),class:`w-full max-h-32 object-cover`},null,8,P)])):m(``,!0)]),c(`div`,F,[c(`label`,I,a(g(W)(`components.automation_nodes.notification_deep_link`)),1),u(p,{"model-value":h.data.deepLink,placeholder:`/cameras/cam-1`,"onUpdate:modelValue":s[6]||=e=>$(`deepLink`,e)},null,8,[`model-value`]),u(S,{variables:g(X),onSelect:s[7]||=e=>Q(`deepLink`,e)},null,8,[`variables`])]),c(`div`,L,[c(`label`,R,a(g(W)(`components.automation_nodes.notification_targets`)),1),c(`span`,z,a(g(W)(`components.automation_nodes.notification_targets_hint`)),1),u(U,{"model-value":h.data.targets??[],options:g(Y),"option-label":`label`,"option-value":`id`,loading:g(K),placeholder:g(W)(`components.automation_nodes.notification_targets_placeholder`),display:`chip`,filter:``,class:`w-full`,"onUpdate:modelValue":s[8]||=e=>$(`targets`,e)},null,8,[`model-value`,`options`,`loading`,`placeholder`])])])}}});export{B as default};