@camera.ui/server 0.0.76 → 0.0.78
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.
- package/dist/interface/assets/{404-BvkajsAN.js → 404-v5as29bN.js} +1 -1
- package/dist/interface/assets/{About-D3w6wB-C.js → About-C98439I4.js} +1 -1
- package/dist/interface/assets/{Adminpanel-Dl6CGett.js → Adminpanel-D9308sB0.js} +1 -1
- package/dist/interface/assets/{Automation-CsQomMnQ.js → Automation-BPOqYi_7.js} +2 -2
- package/dist/interface/assets/{Automations-ZmPzbYRc.js → Automations-B2WSo6cc.js} +1 -1
- package/dist/interface/assets/{Camera-BD89WTrM.js → Camera-C_33nFP2.js} +2 -2
- package/dist/interface/assets/{CameraConsole-CDFo09ch.js → CameraConsole-Dp7Mgugu.js} +1 -1
- package/dist/interface/assets/{Cameras-C5MLRlQt.js → Cameras-Yaug0yrP.js} +1 -1
- package/dist/interface/assets/{Camview-BXwTF330.js → Camview-On97Lml0.js} +1 -1
- package/dist/interface/assets/{Config-Bcs8TK2T.js → Config-BZ-qo4Yn.js} +1 -1
- package/dist/interface/assets/{ConfigActionCameraControl-DoIIrBay.js → ConfigActionCameraControl-Dw-NcFFP.js} +1 -1
- package/dist/interface/assets/{ConfigActionDelay-BQ6T2dIQ.js → ConfigActionDelay-pAWIJ-4v.js} +1 -1
- package/dist/interface/assets/{ConfigActionHttp-3piUQ_xd.js → ConfigActionHttp-DsUnm6fz.js} +1 -1
- package/dist/interface/assets/{ConfigActionImageInput-DNtCNXJv.js → ConfigActionImageInput-DvHnZPlc.js} +1 -1
- package/dist/interface/assets/{ConfigActionNotification-Brn8klrZ.js → ConfigActionNotification-CRFywIqy.js} +1 -1
- package/dist/interface/assets/{ConfigActionOutput-B1vavdKH.js → ConfigActionOutput-BaUXR2P8.js} +1 -1
- package/dist/interface/assets/{ConfigActionPlugin-DALhMneh.js → ConfigActionPlugin-DB7_qKnI.js} +1 -1
- package/dist/interface/assets/{ConfigActionSensor-D4YSq2b7.js → ConfigActionSensor-BylRv6HP.js} +1 -1
- package/dist/interface/assets/{ConfigActionSnapshot-wqE9-Yza.js → ConfigActionSnapshot-DlL2H8O7.js} +1 -1
- package/dist/interface/assets/{ConfigActionVariable-_qOTtJaU.js → ConfigActionVariable-CrTklOPb.js} +1 -1
- package/dist/interface/assets/{ConfigConditionIfElse-Qh_TSsp6.js → ConfigConditionIfElse-CMVwFS0B.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSensorState-DY3qC-jV.js → ConfigConditionSensorState-PpCM0BhY.js} +1 -1
- package/dist/interface/assets/{ConfigConditionSwitch-CO6GugGi.js → ConfigConditionSwitch-BPZHUjQq.js} +1 -1
- package/dist/interface/assets/{ConfigConditionTime-Bis881x9.js → ConfigConditionTime-BGpd11U7.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerDetection-78FurfGv.js → ConfigTriggerDetection-bt_19BcB.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerGeofence-Csm9Krfq.js → ConfigTriggerGeofence-CJd2RI08.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerManual-mtAOiU-R.js → ConfigTriggerManual-BaVkgZIY.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSchedule-m2Q0vw3t.js → ConfigTriggerSchedule-DkFw3-m5.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSensor-BH8UrMLq.js → ConfigTriggerSensor-D1OEaBTZ.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerSystem-CuqiTtf5.js → ConfigTriggerSystem-CFbrPFDV.js} +1 -1
- package/dist/interface/assets/{ConfigTriggerWebhook-ByNdWu_n.js → ConfigTriggerWebhook-tZohuF4o.js} +1 -1
- package/dist/interface/assets/{Console-DBXu0iKa.js → Console-DoN0meid.js} +1 -1
- package/dist/interface/assets/{CuiActionButton-BIR2fQ-I.js → CuiActionButton-BF1An_rl.js} +1 -1
- package/dist/interface/assets/{CuiAvatar-CqKr0qrz.js → CuiAvatar-DT205oI6.js} +1 -1
- package/dist/interface/assets/{CuiBBoxPlayground-BEYO128c.js → CuiBBoxPlayground-BVK7ZJ7M.js} +1 -1
- package/dist/interface/assets/{CuiBottomSheet-PBDYQFLH.js → CuiBottomSheet-Cl0hr1-B.js} +1 -1
- package/dist/interface/assets/CuiBottomSheet-X5ouxxuG.js +1 -0
- package/dist/interface/assets/{CuiCameraCard-CH8wRfqD.js → CuiCameraCard-Dg_senYR.js} +1 -1
- package/dist/interface/assets/{CuiCameraPipCard-DLhWqYGR.js → CuiCameraPipCard-G2-5iN-s.js} +1 -1
- package/dist/interface/assets/{CuiCameraRecordings-CALgktei.js → CuiCameraRecordings-D4vDfkQ6.js} +1 -1
- package/dist/interface/assets/{CuiCameraShares-B9jYiJ9p.js → CuiCameraShares-D9EnoU3g.js} +1 -1
- package/dist/interface/assets/{CuiCameraSnapshot-DBlooBWY.js → CuiCameraSnapshot-DRu0hF3z.js} +1 -1
- package/dist/interface/assets/{CuiCameraTable-BAdLq5hy.js → CuiCameraTable-B1JQ1UgC.js} +1 -1
- package/dist/interface/assets/{CuiFloatingButton-CYP3wZAj.js → CuiFloatingButton-CXLHlbnk.js} +1 -1
- package/dist/interface/assets/{CuiImage-BR35PcJ-.js → CuiImage-Dkb0xMtM.js} +1 -1
- package/dist/interface/assets/{CuiMenu-DwGJrz2-.js → CuiMenu-EoB3gkMJ.js} +1 -1
- package/dist/interface/assets/{CuiPluginCard-CMxEkiWE.js → CuiPluginCard-86liZjK4.js} +2 -2
- package/dist/interface/assets/{CuiPluginOAuthButton-ClmuZ91f.js → CuiPluginOAuthButton-DaOHuN78.js} +2 -2
- package/dist/interface/assets/{CuiQRCode-V_yG_KUN.js → CuiQRCode-BVOIi8VD.js} +1 -1
- package/dist/interface/assets/{CuiRecordingsGrid-BaGvFhVs.js → CuiRecordingsGrid-Bxmlizts.js} +1 -1
- package/dist/interface/assets/{CuiSchema-CbMtJJnY.js → CuiSchema-Cfc1vzp6.js} +1 -1
- package/dist/interface/assets/{CuiTopNavbarItem-CXmxI8Wn.js → CuiTopNavbarItem-MJr5l6Aq.js} +1 -1
- package/dist/interface/assets/{CuiTopbarSlot-Bo2vH_kI.js → CuiTopbarSlot-DTNeuYvo.js} +1 -1
- package/dist/interface/assets/{Faces-pLWD7GFV.js → Faces-CxSpBJx5.js} +1 -1
- package/dist/interface/assets/{FirstSteps-Cowo-kpk.js → FirstSteps-B8SHK9dj.js} +1 -1
- package/dist/interface/assets/{Instances-CJSxOTS5.js → Instances-Kx6sSCDX.js} +1 -1
- package/dist/interface/assets/{Menu-BV2Npq07.js → Menu-bxyy0M9l.js} +1 -1
- package/dist/interface/assets/{OAuthDeviceFlow-C2_Rpjxt.js → OAuthDeviceFlow-Bnm4w-pk.js} +1 -1
- package/dist/interface/assets/{Plugin-C8KnaxI5.js → Plugin-CXq6VmFm.js} +1 -1
- package/dist/interface/assets/{PluginConsole-DPQFT6GB.js → PluginConsole-3BaS6Z25.js} +1 -1
- package/dist/interface/assets/{PluginSchema-BVZcuMh7.js → PluginSchema-Xd9otIzG.js} +1 -1
- package/dist/interface/assets/{Plugins-tauNbtus.js → Plugins-BBYkp0Lq.js} +2 -2
- package/dist/interface/assets/{Recordings-BxczmYsS.js → Recordings-k8LBscvM.js} +1 -1
- package/dist/interface/assets/{Settings-B22NP1uX.js → Settings-DfwGoK3K.js} +1 -1
- package/dist/interface/assets/{SettingsAccount-Dm4MKhXA.js → SettingsAccount-Detq2ves.js} +1 -1
- package/dist/interface/assets/SettingsAccount-Do1kFf9T.js +1 -0
- package/dist/interface/assets/SettingsAppearance-Cf-c_lny.js +1 -0
- package/dist/interface/assets/{SettingsAppearance-BRzzO7Tp.js → SettingsAppearance-DffpVG5f.js} +1 -1
- package/dist/interface/assets/{SettingsBackup-B9L8WRBn.js → SettingsBackup-DS3mOZTd.js} +1 -1
- package/dist/interface/assets/{SettingsNotifications-CYFuyAb8.js → SettingsNotifications-ClYHH53Q.js} +1 -1
- package/dist/interface/assets/{SettingsRecordings-C2BVYt_b.js → SettingsRecordings-BW1_cnvh.js} +1 -1
- package/dist/interface/assets/{SettingsRemote-14DByUYb.js → SettingsRemote-DeCCrkpB.js} +1 -1
- package/dist/interface/assets/SettingsSystem-C7R6m_Ep.js +2 -0
- package/dist/interface/assets/{SettingsUsers-BunfJfFX.js → SettingsUsers-DRNl2lpx.js} +1 -1
- package/dist/interface/assets/{Terminal-B62d7hZL.js → Terminal-oFHYhs5G.js} +1 -1
- package/dist/interface/assets/{VariableInput-6KBjycfw.js → VariableInput-DkFR7QdD.js} +1 -1
- package/dist/interface/assets/{VariableSuggestions-BCUwMbk2.js → VariableSuggestions-Ceb5nNVA.js} +1 -1
- package/dist/interface/assets/VersionsHandler-Bhk8BMHL.js +7 -0
- package/dist/interface/assets/{Workers-DouAZ6IN.js → Workers-CjwdsG_Q.js} +1 -1
- package/dist/interface/assets/api-DG-9_slP.js +2 -0
- package/dist/interface/assets/{api-e-E4EslC.js → api-D_KNNgZ1.js} +1 -1
- package/dist/interface/assets/{auth-DaVXT_yR.js → auth-DOMDhkS8.js} +1 -1
- package/dist/interface/assets/{automations-D-pcb6DP.js → automations-D8y64IMA.js} +1 -1
- package/dist/interface/assets/{automations-Dcjr9n0g.js → automations-DetVBJsj.js} +1 -1
- package/dist/interface/assets/{backup-DxSE0DNH.js → backup-4XfddN8z.js} +1 -1
- package/dist/interface/assets/{cameras-CKYu9vm7.js → cameras-CuAJzX9E.js} +1 -1
- package/dist/interface/assets/{cameras.schema-MCmXBV5E.js → cameras.schema-B93btXUO.js} +1 -1
- package/dist/interface/assets/cloudHandoff-jiSQUTbC.js +1 -0
- package/dist/interface/assets/{hasPermission-rf-FHUEM.js → hasPermission-BTRA5070.js} +1 -1
- package/dist/interface/assets/{instances-IBssFzSt.js → instances-C9noeaJ-.js} +1 -1
- package/dist/interface/assets/{locale-Ddd4TTHX.js → locale-BJ2C57Gq.js} +1 -1
- package/dist/interface/assets/main-B7bTtuPz.js +3 -0
- package/dist/interface/assets/{main-BqVSZVz1.css → main-OhiFNSpg.css} +1 -1
- package/dist/interface/assets/{notifications-iSDZTfsc.js → notifications-C1aijpt-.js} +1 -1
- package/dist/interface/assets/{plugins-BSosZ7mD.js → plugins--S_Q7XSz.js} +1 -1
- package/dist/interface/assets/{round-restart-alt-CRIrMOlo.js → round-restart-alt-D3mETXCy.js} +1 -1
- package/dist/interface/assets/{router-t0j7Kqm7.js → router-CAPegw-8.js} +2 -2
- package/dist/interface/assets/{routerState-Buu48zeq.js → routerState-C_8KP3kD.js} +1 -1
- package/dist/interface/assets/{server-DIS79xtm.js → server-DAHar4Ts.js} +1 -1
- package/dist/interface/assets/{shares-bO9z1yJK.js → shares-DHjtR1MT.js} +1 -1
- package/dist/interface/assets/{theme-C4hbpNuJ.js → theme-LZAl6ikG.js} +1 -1
- package/dist/interface/assets/{types-Wl5Ty2yP.js → types-QvsYiGdQ.js} +1 -1
- package/dist/interface/assets/{ui-CBRpDu-c.js → ui-q3Xp2p6M.js} +1 -1
- package/dist/interface/assets/{useBiometricCredentials-DnB31QCq.js → useBiometricCredentials-CwpN9ZTB.js} +1 -1
- package/dist/interface/assets/{useCameraOptions-CZUtka_F.js → useCameraOptions-Jllb4jNr.js} +1 -1
- package/dist/interface/assets/{useCuiCameraDrawer-DW9-Cdys.js → useCuiCameraDrawer-zbw8XiW5.js} +1 -1
- package/dist/interface/assets/{useCuiDialog-DrBTif-3.js → useCuiDialog-C7VXcZOW.js} +1 -1
- package/dist/interface/assets/{useFileDownload-DksvUFZ8.js → useFileDownload-Et7NRBap.js} +1 -1
- package/dist/interface/assets/{useLogsSocket-HNen2ftk.js → useLogsSocket-BJLXRz8a.js} +2 -2
- package/dist/interface/assets/useLogsSocket-DZ93-C8L.css +1 -0
- package/dist/interface/assets/{useSharedComposables-DUNE9Fjf.js → useSharedComposables-CTXKSCVm.js} +1 -1
- package/dist/interface/assets/{useStreamStatus-BXUMDut2.js → useStreamStatus-D3b5-kAN.js} +1 -1
- package/dist/interface/assets/{users.schema-B7Gwrqjw.js → users.schema-nZK4wXvw.js} +1 -1
- package/dist/interface/assets/{vendor-cameraui-DpqS51DT.js → vendor-cameraui-tvNekvZ-.js} +46 -46
- package/dist/interface/assets/{vendor-core-DAinYQ9K.js → vendor-core-DinQdIbm.js} +1 -1
- package/dist/interface/assets/{vendor-primevue-CG0iLCzA.js → vendor-primevue-D0-7UQst.js} +1 -1
- package/dist/interface/assets/{view-grid-DQkfCMI_.js → view-grid-B5oq2YBJ.js} +1 -1
- package/dist/interface/index.html +38 -37
- package/dist/interface/sw.js +1 -1
- package/dist/server/package.json +3 -3
- package/dist/server/src/api/controllers/api.controller.js +9 -1
- package/dist/server/src/api/controllers/api.controller.js.map +1 -1
- package/dist/server/src/camera/decoder/detection-coordinator.js +15 -5
- package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
- package/dist/server/src/camera/sensors/controller.d.ts +1 -0
- package/dist/server/src/camera/sensors/controller.js +9 -4
- package/dist/server/src/camera/sensors/controller.js.map +1 -1
- package/dist/server/src/services/config/index.d.ts +1 -0
- package/dist/server/src/services/config/index.js +1 -0
- package/dist/server/src/services/config/index.js.map +1 -1
- package/dist/server/src/utils/pythonInstaller.d.ts +2 -0
- package/dist/server/src/utils/pythonInstaller.js +28 -4
- package/dist/server/src/utils/pythonInstaller.js.map +1 -1
- package/package.json +3 -3
- package/dist/interface/assets/CuiBottomSheet-CeCMvh1K.js +0 -1
- package/dist/interface/assets/SettingsAccount-D9YRXC2V.js +0 -1
- package/dist/interface/assets/SettingsAppearance-BICuFMxO.js +0 -1
- package/dist/interface/assets/SettingsSystem-DGjWaU3j.js +0 -2
- package/dist/interface/assets/VersionsHandler-Cb6WnQiP.js +0 -7
- package/dist/interface/assets/api-NtCA6-OA.js +0 -2
- package/dist/interface/assets/cloudHandoff-DoUXb29N.js +0 -1
- package/dist/interface/assets/main-9TGn6n93.js +0 -3
- package/dist/interface/assets/useLogsSocket-Ce1ISNIw.css +0 -1
- /package/dist/interface/assets/{logo-512-DLKVOU2S.png → error-256-DLKVOU2S.png} +0 -0
- /package/dist/interface/assets/{esm-C9lo7BUF.js → esm-C9lo7BUF2.js} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CameraConsole-
|
|
2
|
-
import{D as e,S as t,T as n,a as r,d as i,o as a,r as o}from"./api-NtCA6-OA.js";import{$n as s,$t as c,An as l,C as u,Cn as d,Dn as f,En as p,Gt as m,Hn as h,Ht as g,In as _,Jn as v,M as y,P as b,Qt as x,Rn as S,Rt as C,Sn as w,T,Tn as E,Vn as D,Wt as O,Xt as k,Yn as A,Yt as j,Zt as M,ar as N,cr as P,dn as F,dr as I,gn as L,hn as R,in as z,kt as B,nn as V,nr as H,on as U,rn as W,sr as G,tn as ee,ur as K,w as q,wn as J,yn as te,z as ne,zt as re}from"./vendor-CF-D4B9g.js";import{Bn as Y,Ei as ie,Fi as ae,Fn as oe,Gi as se,H as ce,Ji as le,K as ue,Mi as de,P as fe,Qt as pe,Ti as me,V as he,Vn as X,ct as ge,di as _e,et as ve,k as ye,wi as be,xi as xe}from"./vendor-cameraui-DpqS51DT.js";import{f as Se,i as Ce,o as we}from"./vendor-core-DAinYQ9K.js";import{I as Te,L as Ee,R as De,z as Oe}from"./CuiCameraCard-CH8wRfqD.js";import{t as ke}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{a as Ae,i as je,n as Me,r as Ne,t as Pe}from"./useSharedComposables-DUNE9Fjf.js";import{n as Fe}from"./ui-CBRpDu-c.js";import{t as Ie}from"./cloud-outline-BrU3S7IS.js";import{C as Le,J as Re,U as ze,c as Be,d as Ve}from"./vendor-primevue-CG0iLCzA.js";import{t as He}from"./CuiImage-BR35PcJ-.js";import{a as Ue,i as We,t as Ge}from"./instances-IBssFzSt.js";import{t as Ke}from"./cctv-BK9p1URj.js";import{t as qe}from"./terminal-DNYYAFl5.js";import{t as Je}from"./circular-connection-BTgxVifK.js";import{t as Ye}from"./automation-1ZEEkuHf.js";import{n as Xe,t as Ze}from"./cloud-outline-BuQTDaKh.js";import{t as Qe}from"./bell-outline-XAqc3I7S.js";import{t as $e}from"./cog-DiL--KjL.js";import{n as et}from"./lightbulb-outline-DnqcItJU.js";import{t as Z}from"./face-recognition-vNgsuvZQ.js";import{t as tt}from"./grid-fill-BmsHxwDf.js";import{n as nt,r as rt,t as it}from"./view-grid-DQkfCMI_.js";import{n as at,r as ot,t as st}from"./eventIcons-BPti5ma5.js";import{n as ct,r as lt,t as ut}from"./github-3U8UNWEo.js";import{t as dt}from"./CuiFloatingButton-CYP3wZAj.js";import{t as ft}from"./CuiCameraSnapshot-DBlooBWY.js";import{t as pt}from"./hasPermission-rf-FHUEM.js";import{a as mt,i as ht,n as gt,r as _t,t as vt}from"./vendor-dnd-BuMMZfLh.js";import{n as yt}from"./types-DllqnzAz.js";import{t as bt}from"./cameras-CKYu9vm7.js";import{n as xt}from"./useCuiCameraDrawer-DW9-Cdys.js";import{n as St,t as Ct}from"./useCuiDialog-DrBTif-3.js";import{t as wt}from"./CuiTopbarSlot-Bo2vH_kI.js";import{a as Tt,n as Et}from"./useBiometricCredentials-DnB31QCq.js";import{t as Dt}from"./users.schema-B7Gwrqjw.js";import{t as Ot}from"./routerState-Buu48zeq.js";var kt={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function At(e,t){return J(),c(`svg`,kt,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M20 3H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2M4 9V5h16v4zm16 4H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2M4 19v-4h16v4z`},null,-1),k(`path`,{fill:`currentColor`,d:`M17 6h2v2h-2zm-3 0h2v2h-2zm3 10h2v2h-2zm-3 0h2v2h-2z`},null,-1)]])}var jt=A({name:`bx-server`,render:At}),Mt={viewBox:`0 0 36 36`,width:`1.2em`,height:`1.2em`};function Nt(e,t){return J(),c(`svg`,Mt,[...t[0]||=[V(`<path fill="currentColor" d="M6 22h24v2H6z" class="clr-i-outline clr-i-outline-path-1"></path><path fill="currentColor" d="M26 26h4v2h-4z" class="clr-i-outline clr-i-outline-path-2"></path><path fill="currentColor" d="M13 9.92L17 6v13a1 1 0 1 0 2 0V6l4 3.95a1 1 0 1 0 1.38-1.45L18 2.16L11.61 8.5A1 1 0 0 0 13 9.92" class="clr-i-outline clr-i-outline-path-3"></path><path fill="currentColor" d="M30.84 13.37A1.94 1.94 0 0 0 28.93 12H21v2h7.95c1.05 2.94 2.77 7.65 3.05 8.48V30H4v-7.52C4.28 21.65 7.05 14 7.05 14H15v-2H7.07a1.92 1.92 0 0 0-1.9 1.32C2 22 2 22.1 2 22.33V30a2 2 0 0 0 2 2h28a2 2 0 0 0 2-2v-7.67c0-.23 0-.33-3.16-8.96" class="clr-i-outline clr-i-outline-path-4"></path><path fill="none" d="M0 0h36v36H0z"></path>`,5)]])}var Pt=A({name:`clarity-backup-restore-line`,render:Nt}),Ft={viewBox:`0 0 36 36`,width:`1.2em`,height:`1.2em`};function It(e,t){return J(),c(`svg`,Ft,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M2 24v6a2 2 0 0 0 2 2h28a2 2 0 0 0 2-2v-6Zm28 5h-4v-2h4Z`,class:`clr-i-solid clr-i-solid-path-1`},null,-1),k(`path`,{fill:`currentColor`,d:`M30.84 13.37A1.94 1.94 0 0 0 28.93 12H21v6a3 3 0 1 1-6 0v-6H7.07a1.92 1.92 0 0 0-1.9 1.32c-2.31 6.36-2.93 8.11-3.1 8.68h31.86c-.16-.57-.79-2.31-3.09-8.63`,class:`clr-i-solid clr-i-solid-path-2`},null,-1),k(`path`,{fill:`currentColor`,d:`M13 9.92L17 6v12a1 1 0 1 0 2 0V6l4 3.95a1 1 0 1 0 1.38-1.45L18 2.16L11.61 8.5A1 1 0 0 0 13 9.92`,class:`clr-i-solid clr-i-solid-path-3`},null,-1),k(`path`,{fill:`none`,d:`M0 0h36v36H0z`},null,-1)]])}var Lt=A({name:`clarity-backup-restore-solid`,render:It}),Rt={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function zt(e,t){return J(),c(`svg`,Rt,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M20.97 7.27a.996.996 0 0 0 0-1.41l-2.83-2.83a.996.996 0 0 0-1.41 0l-4.49 4.49l-3.89-3.89c-.78-.78-2.05-.78-2.83 0l-1.9 1.9c-.78.78-.78 2.05 0 2.83l3.89 3.89L3 16.76V21h4.24l4.52-4.52l3.89 3.89c.95.95 2.23.6 2.83 0l1.9-1.9c.78-.78.78-2.05 0-2.83l-3.89-3.89zM5.04 6.94l1.89-1.9L8.2 6.31L7.02 7.5l1.41 1.41l1.19-1.19l1.2 1.2l-1.9 1.9zm11.23 7.44l-1.19 1.19l1.41 1.41l1.19-1.19l1.27 1.27l-1.9 1.9l-3.89-3.89l1.9-1.9zM6.41 19H5v-1.41l9.61-9.61l1.3 1.3l.11.11zm9.61-12.44l1.41-1.41l1.41 1.41l-1.41 1.41z`},null,-1)]])}var Bt=A({name:`ic-outline-design-services`,render:zt}),Vt={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Ht(e,t){return J(),c(`svg`,Vt,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`m16.24 11.51l1.57-1.57l-3.75-3.75l-1.57 1.57l-4.14-4.13c-.78-.78-2.05-.78-2.83 0l-1.9 1.9c-.78.78-.78 2.05 0 2.83l4.13 4.13l-4.6 4.61q-.15.15-.15.36v3.04c0 .28.22.5.5.5h3.04c.13 0 .26-.05.35-.15l4.62-4.62l4.13 4.13c1.32 1.32 2.76.07 2.83 0l1.9-1.9c.78-.78.78-2.05 0-2.83zm-7.06-.44L5.04 6.94l1.89-1.9L8.2 6.31l-.47.49a.996.996 0 1 0 1.41 1.41l.48-.48l1.45 1.45zm7.88 7.89l-4.13-4.13l1.9-1.9l1.45 1.45l-.48.48a.996.996 0 1 0 1.41 1.41l.48-.48l1.27 1.27zm3.65-11.92a.996.996 0 0 0 0-1.41l-2.34-2.34c-.47-.47-1.12-.29-1.41 0l-1.83 1.83l3.75 3.75z`},null,-1)]])}var Ut=A({name:`ic-round-design-services`,render:Ht}),Wt={viewBox:`0 0 48 48`,width:`1.2em`,height:`1.2em`};function Gt(e,t){return J(),c(`svg`,Wt,[...t[0]||=[k(`g`,{fill:`none`,stroke:`currentColor`,"stroke-width":`4`},[k(`path`,{d:`M13.5 39.37A16.93 16.93 0 0 0 24 43c3.963 0 7.61-1.356 10.5-3.63M19 9.747C12.051 11.882 7 18.351 7 26c0 1.925.32 3.775.91 5.5M29 9.747C35.949 11.882 41 18.351 41 26c0 1.925-.32 3.775-.91 5.5`}),k(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M43 36c0 1.342-.528 2.56-1.388 3.458A5 5 0 1 1 43 36m-28 0c0 1.342-.528 2.56-1.388 3.458A5 5 0 1 1 15 36M29 9c0 1.342-.528 2.56-1.388 3.458A5 5 0 1 1 29 9`})],-1)]])}var Kt=A({name:`icon-park-outline-circular-connection`,render:Gt}),qt={viewBox:`0 0 48 48`,width:`1.2em`,height:`1.2em`};function Jt(e,t){return J(),c(`svg`,qt,[...t[0]||=[k(`g`,{fill:`none`,stroke:`currentColor`,"stroke-linejoin":`round`,"stroke-width":`4`},[k(`path`,{d:`M13 10h28v34H13z`}),k(`path`,{"stroke-linecap":`round`,d:`M35 10V4H8a1 1 0 0 0-1 1v33h6m8-16h12m-12 8h12`})],-1)]])}var Yt=A({name:`icon-park-outline-log`,render:Jt}),Xt={viewBox:`0 0 48 48`,width:`1.2em`,height:`1.2em`},Zt=[`id`],Qt=[`mask`];function $t(e,t){return J(),c(`svg`,Xt,[k(`defs`,null,[k(`mask`,{id:e.idMap.SVGzmZ6hexT},[...t[0]||=[k(`g`,{fill:`none`,"stroke-linejoin":`round`,"stroke-width":`4`},[k(`path`,{fill:`#fff`,stroke:`#fff`,d:`M13 10h28v34H13z`}),k(`path`,{stroke:`#fff`,"stroke-linecap":`round`,d:`M35 10V4H8a1 1 0 0 0-1 1v33h6`}),k(`path`,{stroke:`#000`,"stroke-linecap":`round`,d:`M21 22h12m-12 8h12`})],-1)]],8,Zt)]),k(`path`,{fill:`currentColor`,d:`M0 0h48v48H0z`,mask:`url(#`+e.idMap.SVGzmZ6hexT+`)`},null,8,Qt)])}var en=A({name:`icon-park-solid-log`,render:$t,setup(){return{idMap:{SVGzmZ6hexT:`uicons-`+Math.random().toString(36).substr(2,10)}}}}),tn={viewBox:`0 0 48 48`,width:`1.2em`,height:`1.2em`},nn=[`id`],rn=[`mask`];function an(e,t){return J(),c(`svg`,tn,[k(`defs`,null,[k(`mask`,{id:e.idMap.SVGXE6zpcEE},[...t[0]||=[k(`g`,{fill:`none`,"stroke-linejoin":`round`,"stroke-width":`4`},[k(`rect`,{width:`40`,height:`32`,x:`4`,y:`8`,fill:`#fff`,stroke:`#fff`,rx:`2`}),k(`path`,{stroke:`#000`,"stroke-linecap":`round`,d:`m12 18l7 6l-7 6m11 2h13`})],-1)]],8,nn)]),k(`path`,{fill:`currentColor`,d:`M0 0h48v48H0z`,mask:`url(#`+e.idMap.SVGXE6zpcEE+`)`},null,8,rn)])}var on=A({name:`icon-park-solid-terminal`,render:an,setup(){return{idMap:{SVGXE6zpcEE:`uicons-`+Math.random().toString(36).substr(2,10)}}}}),sn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function cn(e,t){return J(),c(`svg`,sn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M7.4 17.25q-1.05.875-2.187.8t-1.988-.775t-1.162-1.837t.412-2.338L4.35 10q-.625-.55-.987-1.325T3 7q0-1.65 1.175-2.825T7 3t2.825 1.175T11 7T9.825 9.825T7 11q-.225 0-.45-.025t-.425-.075L4.2 14.15q-.275.45-.175.888t.425.712t.775.313t.875-.313l10.5-9.025q1.05-.875 2.2-.788t2 .788t1.15 1.838t-.425 2.337L19.65 14q.625.55.988 1.325T21 17q0 1.65-1.175 2.825T17 21t-2.825-1.175T13 17t1.175-2.825T17 13q.225 0 .438.025t.412.075l1.95-3.25q.275-.45.175-.888t-.425-.712t-.775-.312t-.875.312zm1.013-8.837Q9 7.825 9 7t-.587-1.412T7 5t-1.412.588T5 7t.588 1.413T7 9t1.413-.587m10 10Q19 17.825 19 17t-.587-1.412T17 15t-1.412.588T15 17t.588 1.413T17 19t1.413-.587M17 17`},null,-1)]])}var ln=A({name:`material-symbols-automation-outline`,render:cn}),un={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function dn(e,t){return J(),c(`svg`,un,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M6 19h3v-5q0-.425.288-.712T10 13h4q.425 0 .713.288T15 14v5h3v-9l-6-4.5L6 10zm-2 0v-9q0-.475.213-.9t.587-.7l6-4.5q.525-.4 1.2-.4t1.2.4l6 4.5q.375.275.588.7T20 10v9q0 .825-.588 1.413T18 21h-4q-.425 0-.712-.288T13 20v-5h-2v5q0 .425-.288.713T10 21H6q-.825 0-1.412-.587T4 19m8-6.75`},null,-1)]])}var fn=A({name:`material-symbols-home-outline-rounded`,render:dn}),pn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function mn(e,t){return J(),c(`svg`,pn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M12 19.2c-2.5 0-4.71-1.28-6-3.2c.03-2 4-3.1 6-3.1s5.97 1.1 6 3.1a7.23 7.23 0 0 1-6 3.2M12 5a3 3 0 0 1 3 3a3 3 0 0 1-3 3a3 3 0 0 1-3-3a3 3 0 0 1 3-3m0-3A10 10 0 0 0 2 12a10 10 0 0 0 10 10a10 10 0 0 0 10-10c0-5.53-4.5-10-10-10`},null,-1)]])}var hn=A({name:`mdi-account-circle`,render:mn}),gn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function _n(e,t){return J(),c(`svg`,gn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M12 2A10 10 0 0 0 2 12a10 10 0 0 0 10 10a10 10 0 0 0 10-10A10 10 0 0 0 12 2M7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.5.88 4.93 1.78A7.9 7.9 0 0 1 12 20c-1.86 0-3.57-.64-4.93-1.72m11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33A7.93 7.93 0 0 1 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.5-1.64 4.83M12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6m0 5a1.5 1.5 0 0 1-1.5-1.5A1.5 1.5 0 0 1 12 8a1.5 1.5 0 0 1 1.5 1.5A1.5 1.5 0 0 1 12 11`},null,-1)]])}var vn=A({name:`mdi-account-circle-outline`,render:_n}),yn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function bn(e,t){return J(),c(`svg`,yn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M21 19v1H3v-1l2-2v-6c0-3.1 2.03-5.83 5-6.71V4a2 2 0 0 1 2-2a2 2 0 0 1 2 2v.29c2.97.88 5 3.61 5 6.71v6zm-7 2a2 2 0 0 1-2 2a2 2 0 0 1-2-2`},null,-1)]])}var xn=A({name:`mdi-bell`,render:bn}),Sn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Cn(e,t){return J(),c(`svg`,Sn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M21 10V9l-6-6H5c-1.11 0-2 .89-2 2v14a2 2 0 0 0 2 2h6v-1.87l8.39-8.39c.44-.44 1-.68 1.61-.74m-7-5.5l5.5 5.5H14zm8.85 9.69l-.98.98l-2.04-2.04l.98-.98c.19-.2.52-.2.72 0l1.32 1.32c.2.2.2.53 0 .72m-3.72-.36l2.04 2.04L15.04 22H13v-2.04z`},null,-1)]])}var wn=A({name:`mdi-note-edit`,render:Cn}),Tn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function En(e,t){return J(),c(`svg`,Tn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`m18.13 12l1.26-1.26c.44-.44 1-.68 1.61-.74V9l-6-6H5c-1.11 0-2 .89-2 2v14a2 2 0 0 0 2 2h6v-1.87l.13-.13H5V5h7v7zM14 4.5l5.5 5.5H14zm5.13 9.33l2.04 2.04L15.04 22H13v-2.04zm3.72.36l-.98.98l-2.04-2.04l.98-.98c.19-.2.52-.2.72 0l1.32 1.32c.2.2.2.53 0 .72`},null,-1)]])}var Dn=A({name:`mdi-note-edit-outline`,render:En}),On={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function kn(e,t){return J(),c(`svg`,On,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M16 17v2H2v-2s0-4 7-4s7 4 7 4m-3.5-9.5A3.5 3.5 0 1 0 9 11a3.5 3.5 0 0 0 3.5-3.5m3.44 5.5A5.32 5.32 0 0 1 18 17v2h4v-2s0-3.63-6.06-4M15 4a3.4 3.4 0 0 0-1.93.59a5 5 0 0 1 0 5.82A3.4 3.4 0 0 0 15 11a3.5 3.5 0 0 0 0-7`},null,-1)]])}var An=A({name:`mdi-users`,render:kn}),jn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Mn(e,t){return J(),c(`svg`,jn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M13.07 10.41a5 5 0 0 0 0-5.82A3.4 3.4 0 0 1 15 4a3.5 3.5 0 0 1 0 7a3.4 3.4 0 0 1-1.93-.59M5.5 7.5A3.5 3.5 0 1 1 9 11a3.5 3.5 0 0 1-3.5-3.5m2 0A1.5 1.5 0 1 0 9 6a1.5 1.5 0 0 0-1.5 1.5M16 17v2H2v-2s0-4 7-4s7 4 7 4m-2 0c-.14-.78-1.33-2-5-2s-4.93 1.31-5 2m11.95-4A5.32 5.32 0 0 1 18 17v2h4v-2s0-3.63-6.06-4Z`},null,-1)]])}var Nn=A({name:`mdi-users-outline`,render:Mn}),Pn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Fn(e,t){return J(),c(`svg`,Pn,[...t[0]||=[k(`g`,{fill:`none`,"fill-rule":`evenodd`},[k(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),k(`path`,{fill:`currentColor`,d:`M9 13a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4a2 2 0 0 1 2-2zm10 0a2 2 0 0 1 1.995 1.85L21 15v4a2 2 0 0 1-1.85 1.995L19 21h-4a2 2 0 0 1-1.995-1.85L13 19v-4a2 2 0 0 1 1.85-1.995L15 13zM9 15H5v4h4zm10 0h-4v4h4zm0-12a2 2 0 0 1 1.995 1.85L21 5v4a2 2 0 0 1-1.85 1.995L19 11h-4a2 2 0 0 1-1.995-1.85L13 9V5a2 2 0 0 1 1.85-1.995L15 3zM9 3a2 2 0 0 1 1.995 1.85L11 5v4a2 2 0 0 1-1.85 1.995L9 11H5a2 2 0 0 1-1.995-1.85L3 9V5a2 2 0 0 1 1.85-1.995L5 3zm10 2h-4v4h4zM9 5H5v4h4z`})],-1)]])}var In=A({name:`mingcute-grid-line`,render:Fn}),Ln={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Rn(e,t){return J(),c(`svg`,Ln,[...t[0]||=[k(`g`,{fill:`none`},[k(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),k(`path`,{fill:`currentColor`,d:`M20 6a2 2 0 0 1 2 2v11.333a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2zm-8.268 7.944L7.136 18.54l-.066.06l-.07.054v.68h13v-.68l-.07-.053l-.066-.06l-2.24-2.24l-.353.354l.055.055a1 1 0 0 1-1.32 1.497l-.094-.083zM17 3a2 2 0 0 1 1.995 1.85L19 5H5a1 1 0 0 0-.993.883L4 6v12a2 2 0 0 1-1.995-1.85L2 16V6a3 3 0 0 1 2.824-2.995L5 3zm3 5H7v7.848L10.848 12a1.25 1.25 0 0 1 1.768 0l3.241 3.24l.884-.883a1.25 1.25 0 0 1 1.768 0L20 15.848zm-3.5 1.5a1.5 1.5 0 1 1 0 3a1.5 1.5 0 0 1 0-3`})],-1)]])}var zn=A({name:`mingcute-photo-album-line`,render:Rn}),Bn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Vn(e,t){return J(),c(`svg`,Bn,[...t[0]||=[k(`g`,{fill:`none`,"fill-rule":`evenodd`},[k(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),k(`path`,{fill:`currentColor`,d:`M18.5 4a1.5 1.5 0 0 0-3 0v.5H4a1.5 1.5 0 1 0 0 3h11.5V8a1.5 1.5 0 0 0 3 0v-.5H20a1.5 1.5 0 0 0 0-3h-1.5zM4 10.5a1.5 1.5 0 0 0 0 3h1.5v.5a1.5 1.5 0 0 0 3 0v-.5H20a1.5 1.5 0 0 0 0-3H8.5V10a1.5 1.5 0 1 0-3 0v.5zM2.5 18A1.5 1.5 0 0 1 4 16.5h11.5V16a1.5 1.5 0 0 1 3 0v.5H20a1.5 1.5 0 0 1 0 3h-1.5v.5a1.5 1.5 0 0 1-3 0v-.5H4A1.5 1.5 0 0 1 2.5 18`})],-1)]])}var Hn=A({name:`mingcute-settings-2-fill`,render:Vn}),Un={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Wn(e,t){return J(),c(`svg`,Un,[...t[0]||=[k(`g`,{fill:`none`,"fill-rule":`evenodd`},[k(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),k(`path`,{fill:`currentColor`,d:`M18 4a1 1 0 1 0-2 0v1H4a1 1 0 0 0 0 2h12v1a1 1 0 1 0 2 0V7h2a1 1 0 1 0 0-2h-2zM4 11a1 1 0 1 0 0 2h2v1a1 1 0 1 0 2 0v-1h12a1 1 0 1 0 0-2H8v-1a1 1 0 0 0-2 0v1zm-1 7a1 1 0 0 1 1-1h12v-1a1 1 0 1 1 2 0v1h2a1 1 0 1 1 0 2h-2v1a1 1 0 1 1-2 0v-1H4a1 1 0 0 1-1-1`})],-1)]])}var Gn=A({name:`mingcute-settings-2-line`,render:Wn}),Kn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function qn(e,t){return J(),c(`svg`,Kn,[...t[0]||=[V(`<g fill="currentColor"><circle cx="5" cy="5" r="1.5"></circle><circle cx="12" cy="5" r="1.5"></circle><circle cx="19" cy="5" r="1.5"></circle><circle cx="5" cy="12" r="1.5"></circle><circle cx="12" cy="12" r="1.5"></circle><circle cx="19" cy="12" r="1.5"></circle><circle cx="5" cy="19" r="1.5"></circle><circle cx="12" cy="19" r="1.5"></circle><circle cx="19" cy="19" r="1.5"></circle></g>`,1)]])}var Jn=A({name:`proicons-grid-dots`,render:qn}),Yn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Xn(e,t){return J(),c(`svg`,Yn,[...t[0]||=[k(`path`,{fill:`currentColor`,"fill-rule":`evenodd`,d:`M3.464 3.464C2 4.93 2 7.286 2 12s0 7.071 1.464 8.535C4.93 22 7.286 22 12 22s7.071 0 8.535-1.465C22 19.072 22 16.714 22 12s0-7.071-1.465-8.536C19.072 2 16.714 2 12 2S4.929 2 3.464 3.464m14.112 7.016a.75.75 0 0 0-1.152-.96l-1.797 2.156c-.37.445-.599.716-.786.885a.8.8 0 0 1-.163.122l-.011.005l-.008-.004l-.003-.001a.8.8 0 0 1-.164-.122c-.187-.17-.415-.44-.786-.885l-.292-.35c-.328-.395-.625-.75-.901-1c-.301-.272-.68-.514-1.18-.514s-.878.242-1.18.514c-.276.25-.572.605-.9 1l-1.83 2.194a.75.75 0 1 0 1.153.96l1.797-2.156c.37-.445.599-.716.786-.885a.8.8 0 0 1 .163-.122l.007-.003l.004-.002l.011.005a.8.8 0 0 1 .164.122c.187.17.415.44.786.885l.292.35c.329.395.625.75.901 1c.301.272.68.514 1.18.514s.878-.242 1.18-.514c.276-.25.572-.605.9-1z`,"clip-rule":`evenodd`},null,-1)]])}var Zn=A({name:`solar-graph-bold`,render:Xn}),Qn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function $n(e,t){return J(),c(`svg`,Qn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M17.576 10.48a.75.75 0 0 0-1.152-.96l-1.797 2.156c-.37.445-.599.716-.786.885a.8.8 0 0 1-.163.122l-.011.005l-.011-.005a.8.8 0 0 1-.164-.122c-.187-.17-.415-.44-.786-.885l-.292-.35c-.328-.395-.625-.75-.901-1c-.301-.272-.68-.514-1.18-.514s-.878.242-1.18.514c-.276.25-.572.605-.9 1l-1.83 2.194a.75.75 0 1 0 1.153.96l1.797-2.156c.37-.445.599-.716.786-.885a.8.8 0 0 1 .163-.122l.011-.005l.011.005a.8.8 0 0 1 .164.122c.187.17.415.44.786.885l.292.35c.329.395.625.75.901 1c.301.272.68.514 1.18.514s.878-.242 1.18-.514c.276-.25.572-.605.9-1z`},null,-1),k(`path`,{fill:`currentColor`,"fill-rule":`evenodd`,d:`M11.943 1.25c-2.309 0-4.118 0-5.53.19c-1.444.194-2.584.6-3.479 1.494c-.895.895-1.3 2.035-1.494 3.48c-.19 1.411-.19 3.22-.19 5.529v.114c0 2.309 0 4.118.19 5.53c.194 1.444.6 2.584 1.494 3.479c.895.895 2.035 1.3 3.48 1.494c1.411.19 3.22.19 5.529.19h.114c2.309 0 4.118 0 5.53-.19c1.444-.194 2.584-.6 3.479-1.494c.895-.895 1.3-2.035 1.494-3.48c.19-1.411.19-3.22.19-5.529v-.114c0-2.309 0-4.118-.19-5.53c-.194-1.444-.6-2.584-1.494-3.479c-.895-.895-2.035-1.3-3.48-1.494c-1.411-.19-3.22-.19-5.529-.19zM3.995 3.995c.57-.57 1.34-.897 2.619-1.069c1.3-.174 3.008-.176 5.386-.176s4.086.002 5.386.176c1.279.172 2.05.5 2.62 1.069c.569.57.896 1.34 1.068 2.619c.174 1.3.176 3.008.176 5.386s-.002 4.086-.176 5.386c-.172 1.279-.5 2.05-1.069 2.62c-.57.569-1.34.896-2.619 1.068c-1.3.174-3.008.176-5.386.176s-4.086-.002-5.386-.176c-1.279-.172-2.05-.5-2.62-1.069c-.569-.57-.896-1.34-1.068-2.619c-.174-1.3-.176-3.008-.176-5.386s.002-4.086.176-5.386c.172-1.279.5-2.05 1.069-2.62`,"clip-rule":`evenodd`},null,-1)]])}var er=A({name:`solar-graph-outline`,render:$n}),tr=U({__name:`CuiFloatingButtonGroup`,props:{direction:{default:`vertical`},right:{}},setup(e){let t=e,{bottombarHeight:n}=Me(),{direction:r}=N(t),{y:i}=ae(window,{throttle:100});return(t,a)=>(J(),c(`div`,{class:P([`fixed z-10 flex transition-all duration-200 ease-in-out`,{"right-safe-offset-5":!e.right,"flex-col":G(r)===`vertical`,"flex-row":G(r)===`horizontal`,"scale-0 opacity-0":G(i)>10,"scale-100 opacity-100":G(i)<=10}]),style:K({bottom:`calc(${G(n)}px + 1.25rem + env(safe-area-inset-bottom, 0px))`,right:e.right||void 0})},[f(t.$slots,`default`)],6))}}),nr=[`draggable`],rr={key:0,class:`absolute inset-0 z-2 flex items-center justify-center bg-black/80 pointer-events-none`},ir={class:`w-full h-[60px] p-4 absolute bottom-0 z-3 flex items-center gap-1 justify-between pointer-events-none`},ar={class:`text-xs font-semibold p-2 bg-black/60 rounded-full text-white flex items-center gap-1`},or=300,sr=ke(U({__name:`CuiDraggableCameraCard`,props:{camera:{},noDrag:{type:Boolean},viewTransition:{type:Boolean},findCard:{type:Function},moveCard:{type:Function},snapshotRef:{type:Function}},emits:[`refresh-snapshot`,`open-console`,`open-settings`,`click`],setup(e){let t=e,{x:n,y:r,sourceType:i}=je(),{camera:a,noDrag:o,viewTransition:l}=N(t),u=_(`boxRef`),d=H(),f=H(null),p=s(0),g=s(0),v=s(!1),y=null,b=0,C=j(()=>!o.value),w=j(()=>t.findCard(a.value._id).index),[T,E]=ht(()=>({type:`camera-card`,canDrag(){return C.value},item:()=>(y=null,b=0,{id:a.value._id,originalIndex:w.value}),collect:e=>({isDragging:e.isDragging()}),end:(e,n)=>{let{id:r,originalIndex:i}=e;n.didDrop()||t.moveCard(r,i)}})),[,A]=_t(()=>({accept:`camera-card`,hover({id:e}){if(e!==a.value._id){let n=Date.now();if(y===a.value._id&&n-b<or)return;let{index:r}=t.findCard(a.value._id),{index:i}=t.findCard(e);i!==r&&(y=a.value._id,b=n,t.moveCard(e,r))}}})),F=j(()=>T.value.isDragging),L=j(()=>F.value&&i.value===`touch`);function R(){B(),v.value=!0;let e=u.value?.getBoundingClientRect();e&&(p.value=n.value-e.left,g.value=r.value-e.top,V())}function B(){v.value=!1,U(),p.value=0,g.value=0}function V(){if(U(),!u.value)return;let e=u.value.cloneNode(!0),t=u.value.getBoundingClientRect();e.style.width=`${t.width}px`,e.style.height=`${t.height}px`,e.classList.add(`drag-preview`),document.body.appendChild(e),f.value=e}function U(){f.value&&document.body.contains(f.value)&&document.body.removeChild(f.value),f.value=null}function ee(){!f.value||!v.value||requestAnimationFrame(()=>{if(!f.value)return;let e=n.value-p.value,t=r.value-g.value;f.value.style.left=`${e}px`,f.value.style.top=`${t}px`})}function q(e){d.value=E(A(e))}return S(L,e=>{e?R():B()}),S([n,r],()=>{ee()},{flush:`sync`}),te(()=>{B()}),(t,n)=>{let r=Te,i=Ee,o=ct,s=X,d=qe,f=$e,p=ft,g=Re;return J(),c(`div`,{ref_key:`boxRef`,ref:u,class:`camera-wrapper`},[k(`div`,{ref:q,class:P([`rounded-xl overflow-hidden border-[1px] border-color relative`,{"cursor-move":G(C)&&!G(F)}]),style:K({opacity:+!G(F),viewTransitionName:G(l)?`camera-card-${G(a).name.replace(/[^a-zA-Z0-9-_]/g,`-`)}`:void 0}),draggable:G(C)},[G(a).disabled?(J(),c(`div`,rr,[z(r,{class:`w-8 h-8 text-white/60`})])):x(``,!0),k(`div`,ir,[k(`span`,ar,[W(I(G(a).name)+` `,1),G(a).disabled?(J(),M(r,{key:0,class:`w-3 h-3 text-red-400`})):G(a).detectionSettings?.snooze?(J(),M(i,{key:1,class:`w-3 h-3 text-amber-400`})):x(``,!0)]),G(a).disabled?x(``,!0):(J(),c(m,{key:0},[h((J(),M(s,{severity:`secondary`,rounded:``,class:`dark-mode cui-icon-md pointer-events-auto ml-auto`,onClick:n[0]||=O(e=>t.$emit(`refresh-snapshot`),[`stop`])},{icon:D(()=>[z(o,{width:`100%`,height:`100%`})]),_:1})),[[g,{value:t.$t(`components.player.refresh_snapshot`)},void 0,{top:!0}]]),(`hasPermission`in t?t.hasPermission:G(pt))(void 0,`admin`)?h((J(),M(s,{key:0,severity:`secondary`,rounded:``,class:`dark-mode cui-icon-md pointer-events-auto`,onClick:n[1]||=O(e=>t.$emit(`open-console`),[`stop`])},{icon:D(()=>[z(d,{width:`100%`,height:`100%`})]),_:1})),[[g,{value:t.$t(`components.player.log`)},void 0,{top:!0}]]):x(``,!0)],64)),(`hasPermission`in t?t.hasPermission:G(pt))(void 0,`admin`)?h((J(),M(s,{key:1,rounded:``,severity:`secondary`,class:P([`dark-mode cui-icon-md pointer-events-auto`,{"ml-auto":G(a).disabled}]),onClick:n[2]||=O(e=>t.$emit(`open-settings`),[`stop`])},{icon:D(()=>[z(f,{width:`100%`,height:`100%`})]),_:1},8,[`class`])),[[g,{value:t.$t(`components.player.settings`)},void 0,{top:!0}]]):x(``,!0)]),z(p,{ref:e.snapshotRef,camera:G(a),class:`cursor-pointer`,onClick:n[3]||=e=>t.$emit(`click`)},null,8,[`camera`])],14,nr)],512)}}}),[[`__scopeId`,`data-v-b7360c58`]]),cr={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function lr(e,t){return J(),c(`svg`,cr,[...t[0]||=[k(`path`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M12 5v14m-7-7h14`},null,-1)]])}var ur=A({name:`tabler-plus`,render:lr}),dr={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function fr(e,t){return J(),c(`svg`,dr,[...t[0]||=[k(`path`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`m15 6l-6 6l6 6`},null,-1)]])}var pr=A({name:`tabler-chevron-left`,render:fr}),mr={class:`bg-neutral-900 w-[140px] h-[140px] rounded-xl overflow-hidden relative`},hr={key:2,class:`w-full h-full flex items-center justify-center bg-neutral-800/80`},gr={key:4,class:`absolute inset-0 z-[3] flex items-center justify-center pointer-events-none`},_r={key:5,class:`absolute top-1.5 left-1.5 z-[3] flex items-center gap-1`},vr={key:6,class:`absolute inset-0 bg-black/0 group-hover:bg-black/30 transition-colors duration-200 flex flex-col items-center justify-end pb-2 gap-1 z-[2] pointer-events-none`},yr={class:`flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200`},br={key:0,class:`text-[10px] text-white/50 font-medium truncate max-w-[100px]`},xr={class:`text-xs text-white font-medium opacity-0 group-hover:opacity-100 transition-opacity duration-200 truncate max-w-[130px] px-1`},Sr={class:`mt-2 text-center`},Cr={class:`text-xs text-muted`},wr=1e4,Tr=ke(U({__name:`CameraEvent`,props:{event:{},cameraName:{},camera:{},loadThumbnails:{type:Function},clickDisabled:{type:Boolean}},setup(e){let t=e,n=Ct(),r=F(ye,void 0),i=_(`previewCanvasRef`),a=_(`cardRef`),o=s(!1),u=s(void 0),f=s(void 0),p=s(ue(t.event)),m=s(`loading`),v,y=!1,{icons:b,generic:C}=st(),T=j(()=>b[p.value]??C),E=j(()=>new Date(t.event.startTime).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`})),D=j(()=>t.event.state===`active`),O=j(()=>!D.value&&t.event.segments?.some(e=>e?.description)),A=j(()=>t.event.segments?.find(e=>e?.description)?.description?.title);function N(){if(!r||!t.event.endTime)return;let e=i.value;e&&(o.value=!0,r.onHoverStart(e,t.event.cameraId,t.event.id,t.event.startTime,t.event.endTime))}function P(){r&&(o.value=!1,r.onHoverEnd())}async function L(e=2){let n=await t.loadThumbnails(t.event.id,t.event.startTime);if(n){let e=fe(n,t.event);if(e.url){u.value=e.url,f.value=e.label,p.value=e.type,m.value=`loaded`;return}}if(e>0)return await new Promise(e=>setTimeout(e,500)),L(e-1);m.value=`empty`}function R(){if(t.clickDisabled||!t.camera)return;let e=D.value&&Date.now()-t.event.startTime<wr,r=t.event.segments?.find(e=>e?.description)?.description,i=[{icon:yt,toggle:!0,onClick:()=>{}}];v=n.openComponentDialog(nt,{data:{title:t.camera.name,stayActive:!0,hideCancelButton:!0,hideConfirmButton:!0,contentProps:{camera:t.camera,eventTimestamp:e?void 0:t.event.startTime},headerActions:r?i:void 0,draggable:!0,blockDragOnSelectors:[`.p-dialog-body`],dismissableMask:!1,modal:!1,dialogContentClass:`!px-0 h-full`,goTo:`/cameras/${t.camera.name}${e?``:`?startTs=${t.event.startTime}`}`},dialogSize:{desktop:{maxWidth:`800px`,maxHeight:`calc(100vh - max(1rem, env(safe-area-inset-top, 0px)) - max(1rem, env(safe-area-inset-bottom, 0px)))`,width:`50vw`}}})}let{stop:B}=ie(a,([e])=>{e.isIntersecting&&!y&&(y=!0,B(),L())},{threshold:.1});return S(()=>t.event.state,(e,t)=>{t===`active`&&e===`ended`&&L()}),S(()=>t.event.lastUpdate,()=>{D.value&&y&&L()}),w(()=>{requestAnimationFrame(()=>{if(!y&&a.value){let e=a.value.getBoundingClientRect();e.right>0&&e.left<window.innerWidth&&e.bottom>0&&e.top<window.innerHeight&&(y=!0,B(),L())}})}),d(()=>{B(),v?.close()}),(e,n)=>{let s=at,d=ge,p=He,_=Y;return J(),c(`div`,{ref_key:`cardRef`,ref:a,class:`camera-event-card relative group cursor-pointer`,onClick:R,onMouseenter:N,onMouseleave:P},[G(A)?(J(),M(s,{key:0})):x(``,!0),k(`div`,mr,[G(m)===`loading`?(J(),M(d,{key:0,class:`w-full h-full rounded-xl`,width:`140px`,height:`140px`})):G(u)?(J(),M(p,{key:1,src:G(u),alt:t.cameraName,class:`pointer-events-none w-full h-full transition-transform duration-300 group-hover:scale-105`,"image-style":{objectFit:`cover`},width:`140px`,height:`140px`,"image-container-class":`w-full h-full`},null,8,[`src`,`alt`])):(J(),c(`div`,hr,[(J(),M(l(G(T)),{class:`w-8 h-8 text-white/20`}))])),G(r)?h((J(),c(`canvas`,{key:3,ref_key:`previewCanvasRef`,ref:i,class:`absolute inset-0 w-full h-full object-cover pointer-events-none z-[1]`},null,512)),[[g,G(o)]]):x(``,!0),G(r)&&G(o)&&G(r).isLoading.value&&!G(O)?(J(),c(`div`,gr,[z(_,{class:`w-[24px] h-[24px] m-0`,"stroke-width":`3`})])):x(``,!0),G(D)?(J(),c(`div`,_r,[...n[0]||=[k(`span`,{class:`relative flex h-2.5 w-2.5`},[k(`span`,{class:`animate-ping absolute inline-flex h-full w-full rounded-full bg-green-400 opacity-75`}),k(`span`,{class:`relative inline-flex rounded-full h-2.5 w-2.5 bg-green-500`})],-1)]])):x(``,!0),G(u)?(J(),c(`div`,vr,[k(`div`,yr,[(J(),M(l(G(T)),{class:`w-3.5 h-3.5 text-white/50`})),G(f)?(J(),c(`span`,br,I(G(f)),1)):x(``,!0)]),k(`span`,xr,I(t.cameraName),1)])):x(``,!0)]),k(`div`,Sr,[k(`p`,Cr,I(G(E)),1)])],544)}}}),[[`__scopeId`,`data-v-9b0b497e`]]),Er={key:0,class:`absolute top-[50px] left-[50%] translate-x-[-50%] z-2 px-3 py-2 text-shadow-md`},Dr={class:`text-sm text-color font-medium`},Q=152,Or=172,kr=5,Ar=U({__name:`CuiCameraEvents`,props:{cameras:{}},setup(e){let t=e,{isTouch:n}=Ne();if(!n.value&&typeof VideoDecoder<`u`){let e=ce({cacheSize:20});E(ye,e),se(()=>e.dispose())}let r,{cameras:i}=N(t),a=_(`containerRef`),o=_(`scrollContainerRef`),l=s(!0),u=s(!1),d=s({left:0,right:0}),f=s(0),{width:h}=xe(a),g=j(()=>{let e=new Map;if(i.value)for(let t of i.value)e.set(t._id,t.name);return e}),v=j(()=>{let e=new Map;if(i.value)for(let t of i.value)e.set(t._id,t);return e}),{events:y,isLoading:b,hasMore:T,loadMore:O,loadThumbnails:A}=he({availableCameraIds:j(()=>i.value?.map(e=>e._id)??[]),realtime:!0,pageSize:j(()=>{let e=h.value||800;return Math.ceil(e/Q)+10}).value,filter:{hasDetections:!0}}),{start:F}=le(()=>{u.value=!1},100,{immediate:!1}),R=j(()=>y.value),B=j(()=>Math.ceil((h.value||800)/Q)),V=j(()=>R.value.length<B.value&&T.value),H=j(()=>!b.value&&R.value.length===0&&!T.value),U=j(()=>R.value.length===0?15:5),W=j(()=>{let{left:e}=d.value;return{left:`${-e}px`,width:`100dvw`,paddingLeft:`${e}px`}}),ee=j(()=>{let e=d.value.left+50,t=Math.min(Math.round(45/e*100),100),n=Math.min(Math.round(58/e*100),100);return{top:`-10px`,height:`calc(100% + 20px)`,left:`${-d.value.left}px`,width:`${e}px`,background:`linear-gradient(270deg, transparent 0%, rgba(var(--ground-background-val), 0.8) ${t}%, rgba(var(--ground-background-val), 0.9) ${n}%, rgba(var(--ground-background-val), 0.95) 100%)`}}),q=j(()=>Math.max(0,Math.floor(f.value/Q)-kr)),te=j(()=>{let e=B.value;return Math.min(R.value.length,Math.ceil(f.value/Q)+e+kr)}),ne=j(()=>R.value.slice(q.value,te.value)),re=j(()=>q.value*Q);function Y(){let e=a.value;if(!e)return;let t=e.getBoundingClientRect();d.value={left:t.left,right:window.innerWidth-t.right}}function ie(){let e=o.value;e&&(f.value=0,L(()=>{e.scrollTo({left:0,behavior:`smooth`})}))}function ae(){let e=o.value;e&&(f.value=e.scrollLeft,l.value=e.scrollLeft<5)}function oe(){de(o,{disableTextSelect:!0,threshold:10,onSwipe:e=>{R.value.length===0&&(b.value||V.value||H.value)||(u.value=!0,o.value?.classList.add(`cursor-grabbing`),o.value?.scrollBy({left:-e.movementX,behavior:`smooth`}))},onSwipeEnd:()=>{o.value?.classList.remove(`cursor-grabbing`),F()}})}return be(window,`resize`,Y),be(o,`scroll`,ae,{passive:!0}),be(o,`wheel`,e=>{R.value.length===0&&(b.value||V.value||H.value)||Math.abs(e.deltaY)>Math.abs(e.deltaX)&&(e.preventDefault(),o.value?.scrollBy({left:e.deltaY}))},{passive:!1}),me(o,O,{distance:300,direction:`right`,canLoadMore:()=>T.value}),S(h,()=>Y()),S(()=>R.value[0]?.id,e=>{if(!e||e===r)return;let t=r===void 0;if(r=e,t)return;let n=o.value,i=n?.scrollLeft||0;L(i<5?()=>{o.value?.scrollTo({left:0,behavior:`smooth`})}:()=>{n&&(n.scrollLeft=i+Q)})}),S([V,()=>b.value],([e,t])=>{e&&!t&&O()}),w(()=>{Y();let e=document.getElementById(`container`);e&&be(e,`transitionend`,Y),n.value||oe()}),(e,t)=>{let n=ge,r=Tr,i=pr,s=X;return J(),c(`div`,{ref_key:`containerRef`,ref:a,class:`relative min-w-0`,style:K({height:`${Or}px`})},[k(`div`,{ref_key:`scrollContainerRef`,ref:o,class:P([`absolute top-0 overflow-x-auto overflow-y-hidden hide-scrollbar overscroll-x-contain`,{"overflow-x-hidden!":G(R).length===0&&(G(b)||G(V)||G(H))}]),style:K(G(W))},[k(`div`,{class:`relative`,style:K({width:`${G(R).length*Q}px`,height:`${Or}px`})},[k(`div`,{class:`absolute top-0 left-0 flex`,style:K({transform:`translateX(${G(re)}px)`})},[G(R).length===0&&(G(b)||G(V)||G(H))?(J(!0),c(m,{key:0},p(G(U),e=>(J(),c(`div`,{key:`skeleton-${e}`,class:`event-card flex flex-col items-center justify-center w-[140px] mr-3`},[z(n,{class:`rounded-xl`,width:`140px`,height:`140px`,animation:G(H)?`none`:`wave`},null,8,[`animation`]),z(n,{class:`mt-2`,width:`50px`,height:`16px`,animation:G(H)?`none`:`wave`},null,8,[`animation`])]))),128)):(J(!0),c(m,{key:1},p(G(ne),e=>(J(),c(`div`,{key:e.id,class:`event-card flex-none w-[140px] mr-3`},[z(r,{event:e,"camera-name":G(g).get(e.cameraId),camera:G(v).get(e.cameraId),"load-thumbnails":G(A),"click-disabled":G(u)},null,8,[`event`,`camera-name`,`camera`,`load-thumbnails`,`click-disabled`])]))),128))],4)],4)],6),G(H)&&!G(b)&&!G(V)?(J(),c(`div`,Er,[k(`span`,Dr,I(e.$t(`components.camera_events.no_events`)),1)])):x(``,!0),!G(l)&&G(d).left>0?(J(),c(`div`,{key:1,class:`absolute pointer-events-none z-1`,style:K(G(ee))},null,4)):x(``,!0),z(C,{name:`fade-2`},{default:D(()=>[!G(l)&&G(R).length>0?(J(),M(s,{key:0,rounded:``,severity:`secondary`,class:`absolute left-1 cui-icon-md shadow-md z-2 opacity-70 hover:opacity-100 transition-opacity`,style:{top:`70px`,transform:`translateY(-50%)`},onClick:ie},{icon:D(()=>[z(i,{width:`100%`,height:`100%`})]),_:1})):x(``,!0)]),_:1})],4)}}}),jr={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Mr(e,t){return J(),c(`svg`,jr,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M18 8a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V10a2 2 0 0 1 2-2h9V6a3 3 0 0 0-3-3a3 3 0 0 0-3 3H7a5 5 0 0 1 5-5a5 5 0 0 1 5 5v2zm-6 9a2 2 0 0 0 2-2a2 2 0 0 0-2-2a2 2 0 0 0-2 2a2 2 0 0 0 2 2`},null,-1)]])}var Nr=A({name:`mdi-lock-open`,render:Mr}),Pr={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Fr(e,t){return J(),c(`svg`,Pr,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M21 3H3c-.6 0-1 .4-1 1v6c0 .6.4 1 1 1h18c.6 0 1-.4 1-1V4c0-.6-.4-1-1-1m0 10H3c-.6 0-1 .4-1 1v6c0 .6.4 1 1 1h18c.6 0 1-.4 1-1v-6c0-.6-.4-1-1-1`},null,-1)]])}var Ir=A({name:`mdi-view-agenda`,render:Fr}),Lr={class:`flex flex-col`},Rr={class:`flex flex-row items-center justify-center gap-2`},zr={key:0,class:`events-section mb-4`},Br={key:0,class:`page-title mb-2`},Vr={class:`flex flex-col flex-1 overflow-x-hidden`},Hr={key:0,class:`page-title`},Ur={class:`flex flex-1 min-h-0 flex-col items-center justify-center w-full gap-4 py-16`,key:`no-cameras`},Wr={class:`w-16 h-16 rounded-full bg-primary-500/10 flex items-center justify-center`},Gr={class:`flex flex-col items-center gap-1 max-w-[400px] text-center`},Kr={class:`text-color font-semibold text-base`},qr={class:`text-muted text-sm`},Jr={key:`defaultView`},Yr={key:`groupedView`,class:`flex flex-col gap-6`},Xr={class:`text-sm font-semibold text-muted uppercase tracking-wide mb-2`},Zr=ke(U({__name:`Home`,setup(e){let t=St(()=>B(()=>import(`./CameraConsole-CDFo09ch.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]))),n=new bt,r=xt(),i=Ct(),{t:o}=_e(),{smBreakpoint:s}=Pe(),{isTouch:l}=Ne(),{width:u,height:d}=Ae(),{uiSettings:f}=Se(Fe()),{data:h,isLoading:g}=n.getCamerasQuery({page:1,pageSize:-1}),_=H({}),v=j(()=>g.value),y=j(()=>pt(void 0,`admin`)),S=j(()=>l.value?vt:gt),w=j(()=>f.value.cameras.viewMode??`default`),T=j(()=>`repeat(auto-fill, minmax(${s.value?`100%`:`300px`}, 1fr))`),E=j(()=>{let e=T.value;return A.value.length<2?`${e} 50%`:e}),O=j(()=>{let e=s.value?1:Math.max(1,Math.floor(u.value/300)),t=u.value/e*9/16+8;return e*Math.max(1,Math.ceil(d.value/t))}),A=j(()=>h.value?.result?P(h.value.result,f.value.cameras.order||[]):[]),N=j(()=>{if(!h.value?.result)return[];let e=f.value.cameras.groupOrder||{},t=new Map;for(let e of h.value.result){let n=e.room||`Default`;t.has(n)||t.set(n,[]),t.get(n).push(e)}let n=[];for(let[r,i]of t){let t=e[r]||[];n.push({room:r,cameras:P(i,t)})}return n.sort((e,t)=>e.room===`Default`?-1:t.room===`Default`?1:e.room.localeCompare(t.room)),n});function P(e,t){return[...e].sort((e,n)=>{let r=t.indexOf(e._id),i=t.indexOf(n._id);return r!==-1&&i!==-1?r-i:r===-1?i===-1?e.name.localeCompare(n.name):1:-1})}function F(){f.value.cameras.viewMode=w.value==="default"?`grouped`:`default`}function L(e){let t=A.value.find(t=>t._id===e);return{camera:t,index:t?A.value.indexOf(t):-1}}function R(e,t){let{index:n}=L(e);if(n===-1||n===t)return;let r=A.value.map(e=>e._id),[i]=r.splice(n,1);r.splice(t,0,i),f.value.cameras.order=r}function V(e,t){let n=N.value.find(t=>t.room===e);if(!n)return{camera:void 0,index:-1};let r=n.cameras.find(e=>e._id===t);return{camera:r,index:r?n.cameras.indexOf(r):-1}}function U(e,t,n){let{index:r}=V(e,t);if(r===-1||r===n)return;let i=N.value.find(t=>t.room===e);if(!i)return;let a=i.cameras.map(e=>e._id),[o]=a.splice(r,1);a.splice(n,0,o);let s={...f.value.cameras.groupOrder||{}};s[e]=a,f.value.cameras.groupOrder=s}function W(e){i.openComponentDialog(t,{data:{title:o(`components.dialog.title.log`),confirmText:o(`components.form.button.download`),loading:v,stayActive:!0,contentProps:{cameraName:e},dialogContentClass:`not-md:px-0 h-full md:h-[50vh]`}})}return(e,t)=>{let n=wt,i=Ar,o=ge,l=Ke,u=ur,d=X,g=sr,j=dt,P=tr;return J(),c(`div`,Lr,[z(n,{position:`center`},{default:D(()=>[k(`div`,Rr,[z(G(b),{src:G(a)(`logo_animated.svg`),width:`18px`,height:`18px`,title:`camera.ui`,"aria-label":`camera.ui`},null,8,[`src`]),t[2]||=k(`span`,{class:`font-semibold text-xl truncate`},`camera.ui`,-1)])]),_:1}),G(f).cameras.showEvents&&(G(v)||G(A).length)?(J(),c(`div`,zr,[G(s)?x(``,!0):(J(),c(`h1`,Br,I(e.$t(`components.camera_events.title`)),1)),z(i,{cameras:G(h)?.result},null,8,[`cameras`])])):x(``,!0),k(`div`,Vr,[G(v)||G(A).length?(J(),c(`h1`,Hr,I(e.$t(`views.cameras.title`)),1)):x(``,!0),z(C,{name:`fade-2`,mode:`out-in`},{default:D(()=>[G(v)?(J(),c(`div`,{key:`loading`,class:`grid w-full gap-2`,style:K({gridTemplateColumns:G(T)})},[(J(!0),c(m,null,p(G(O),e=>(J(),M(o,{key:e,class:`aspect-video !h-auto cui-card`}))),128))],4)):G(A).length?G(w)==="default"?(J(),c(`div`,Jr,[k(`div`,{class:`grid w-full gap-1`,style:K({gridTemplateColumns:G(E)})},[z(G(mt),{backend:G(S)},{default:D(()=>[z(re,{name:`list`},{default:D(()=>[(J(!0),c(m,null,p(G(A),t=>(J(),M(g,{key:t._id,camera:t,"find-card":L,"move-card":R,"no-drag":G(f).cameras.dragDisabled,"snapshot-ref":e=>G(_)[t.name]=e,class:`shadow-lg rounded-xl transition-transform`,"view-transition":``,onRefreshSnapshot:e=>G(_)[t.name]?.refresh(),onOpenConsole:e=>W(t.name),onOpenSettings:e=>G(r).open({cameraName:t.name}),onClick:n=>e.$router.push(`/cameras/${t.name}`)},null,8,[`camera`,`no-drag`,`snapshot-ref`,`onRefreshSnapshot`,`onOpenConsole`,`onOpenSettings`,`onClick`]))),128))]),_:1})]),_:1},8,[`backend`])],4)])):(J(),c(`div`,Yr,[(J(!0),c(m,null,p(G(N),t=>(J(),c(`div`,{key:t.room},[k(`h2`,Xr,I(t.room===`Default`?e.$t(`components.form.label.room_default`):t.room),1),k(`div`,{class:`grid w-full gap-1`,style:K({gridTemplateColumns:G(E)})},[z(G(mt),{backend:G(S)},{default:D(()=>[z(re,{name:`list`},{default:D(()=>[(J(!0),c(m,null,p(t.cameras,n=>(J(),M(g,{key:n._id,camera:n,"find-card":e=>V(t.room,e),"move-card":(e,n)=>U(t.room,e,n),"no-drag":G(f).cameras.dragDisabled,"snapshot-ref":e=>G(_)[n.name]=e,class:`shadow-lg rounded-xl transition-transform`,"view-transition":``,onRefreshSnapshot:e=>G(_)[n.name]?.refresh(),onOpenConsole:e=>W(n.name),onOpenSettings:e=>G(r).open({cameraName:n.name}),onClick:t=>e.$router.push(`/cameras/${n.name}`)},null,8,[`camera`,`find-card`,`move-card`,`no-drag`,`snapshot-ref`,`onRefreshSnapshot`,`onOpenConsole`,`onOpenSettings`,`onClick`]))),128))]),_:2},1024)]),_:2},1032,[`backend`])],4)]))),128))])):(J(),c(`div`,Ur,[k(`div`,Wr,[z(l,{class:`w-8 h-8 text-primary-500`})]),k(`div`,Gr,[k(`span`,Kr,I(e.$t(`views.cameras.no_cameras`)),1),k(`span`,qr,I(e.$t(`views.cameras.no_cameras_hint`)),1)]),G(y)?(J(),M(d,{key:0,class:`cui-button-medium mt-2`,label:e.$t(`views.cameras.get_started`),onClick:t[0]||=t=>e.$router.push(`/cameras`)},{icon:D(()=>[z(u,{class:`w-4 h-4`})]),_:1},8,[`label`])):x(``,!0)]))]),_:1})]),G(A).length>1?(J(),M(P,{key:1},{default:D(()=>[z(j,{grouped:``,"tooltip-props":{value:G(w)==="default"?e.$t(`components.form.tooltip.view_grouped`):e.$t(`components.form.tooltip.view_default`)},"button-props":{severity:G(w)==="default"?`secondary`:`primary`},icon:G(w)==="default"?G(it):G(Ir),"icon-props":{width:`100%`,height:`100%`},onClick:F},null,8,[`tooltip-props`,`button-props`,`icon`]),z(j,{grouped:``,"tooltip-props":{value:G(f).cameras.dragDisabled?e.$t(`components.form.tooltip.enable_drag`):e.$t(`components.form.tooltip.disable_drag`)},"button-props":{severity:G(f).cameras.dragDisabled?`secondary`:`success`},icon:G(f).cameras.dragDisabled?G(Oe):G(Nr),"icon-props":{width:`100%`,height:`100%`},onClick:t[1]||=e=>G(f).cameras.dragDisabled=!G(f).cameras.dragDisabled},null,8,[`tooltip-props`,`button-props`,`icon`])]),_:1})):x(``,!0)])}}}),[[`__scopeId`,`data-v-6e795f3f`]]),Qr={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function $r(e,t){return J(),c(`svg`,Qr,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M20 11v2H8l5.5 5.5l-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5L8 11z`},null,-1)]])}var ei=A({name:`mdi-arrow-left`,render:$r}),ti={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function ni(e,t){return J(),c(`svg`,ti,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M19.27 5.33C17.94 4.71 16.5 4.26 15 4a.1.1 0 0 0-.07.03c-.18.33-.39.76-.53 1.09a16.1 16.1 0 0 0-4.8 0c-.14-.34-.35-.76-.54-1.09c-.01-.02-.04-.03-.07-.03c-1.5.26-2.93.71-4.27 1.33c-.01 0-.02.01-.03.02c-2.72 4.07-3.47 8.03-3.1 11.95c0 .02.01.04.03.05c1.8 1.32 3.53 2.12 5.24 2.65c.03.01.06 0 .07-.02c.4-.55.76-1.13 1.07-1.74c.02-.04 0-.08-.04-.09c-.57-.22-1.11-.48-1.64-.78c-.04-.02-.04-.08-.01-.11c.11-.08.22-.17.33-.25c.02-.02.05-.02.07-.01c3.44 1.57 7.15 1.57 10.55 0c.02-.01.05-.01.07.01c.11.09.22.17.33.26c.04.03.04.09-.01.11c-.52.31-1.07.56-1.64.78c-.04.01-.05.06-.04.09c.32.61.68 1.19 1.07 1.74c.03.01.06.02.09.01c1.72-.53 3.45-1.33 5.25-2.65c.02-.01.03-.03.03-.05c.44-4.53-.73-8.46-3.1-11.95c-.01-.01-.02-.02-.04-.02M8.52 14.91c-1.03 0-1.89-.95-1.89-2.12s.84-2.12 1.89-2.12c1.06 0 1.9.96 1.89 2.12c0 1.17-.84 2.12-1.89 2.12m6.97 0c-1.03 0-1.89-.95-1.89-2.12s.84-2.12 1.89-2.12c1.06 0 1.9.96 1.89 2.12c0 1.17-.83 2.12-1.89 2.12`},null,-1)]])}var ri=A({name:`ic-baseline-discord`,render:ni}),ii={class:`flex justify-center items-center draggable-region`},ai={class:`card-background border-color relative w-full sm:w-[400px] sm:rounded-2xl sm:border-[1px] shadow-none sm:shadow-xl h-full sm:h-auto sm:my-4`},oi={class:`flex flex-col h-full p-10 non-draggable-region`},si={class:`flex flex-col items-center justify-center mb-10`},ci={class:`flex justify-between items-center`},li={class:`flex items-center gap-1 ml-auto`},ui=U({__name:`CuiAuthCard`,props:{logoUrl:{}},setup(e){return(t,n)=>{let r=ze,i=ut,a=X,o=ri;return J(),c(`div`,ii,[k(`div`,ai,[k(`div`,oi,[k(`div`,si,[z(G(b),{src:e.logoUrl,height:`60px`,title:`camera.ui`,"aria-label":`camera.ui`,class:`hover:scale-105 active:scale-105 focus:scale-105 transition-all`},null,8,[`src`]),n[2]||=k(`span`,{class:`text-2xl ml-3 mt-2 font-bold text-color`},`camera.ui`,-1)]),f(t.$slots,`default`),z(r,{class:`mt-15`}),k(`div`,ci,[f(t.$slots,`footer-left`),k(`div`,li,[z(a,{severity:`secondary`,class:`cui-icon-md`,text:``,rounded:``,onClick:n[0]||=e=>t.$router.absUrl(`https://github.com/seydx/camera.ui`,!0)},{icon:D(()=>[z(i,{class:`text-muted`,width:`100%`,height:`100%`})]),_:1}),z(a,{severity:`secondary`,class:`cui-icon-md`,text:``,rounded:``,onClick:n[1]||=e=>t.$router.absUrl(`https://discord.gg/camera.ui`,!0)},{icon:D(()=>[z(o,{class:`text-muted`,width:`100%`,height:`100%`})]),_:1})])])]),n[3]||=k(`div`,{class:`bg-primary-500 opacity-0 sm:opacity-100 absolute blur-[20px] w-[200px] h-[30px] left-[50%] -translate-x-[50%] bottom-[25px] -z-1`},null,-1)])])}}}),di=`cui_device_id`,fi=null,pi=null;async function mi(){if(fi)return fi;let e=localStorage.getItem(di);if(e)return fi=e,e;let t=crypto.randomUUID();return localStorage.setItem(di,t),fi=t,t}async function hi(){return pi||(pi=gi(navigator.userAgent),pi)}function gi(e){let t=/Edg\//.test(e)?`Edge`:/OPR\//.test(e)||/Opera/.test(e)?`Opera`:/Firefox\//.test(e)?`Firefox`:/Chrome\//.test(e)&&!/Chromium/.test(e)?`Chrome`:/Safari\//.test(e)&&!/Chrome\//.test(e)?`Safari`:`Browser`,n=/Windows NT/.test(e)?`Windows`:/Mac OS X/.test(e)?`macOS`:/Android/.test(e)?`Android`:/iPhone|iPad|iPod/.test(e)?`iOS`:/Linux/.test(e)?`Linux`:``;return n?`${t} on ${n}`:t}var _i={key:`connecting`,class:`flex flex-col items-center justify-center h-full gap-4`},vi={class:`text-muted text-sm text-center`},yi={class:`flex flex-col gap-10 sm:gap-6 w-full mt-10 sm:mt-0`},bi={for:`username`,class:`cui-label`},xi={for:`password`,class:`cui-label`},Si={class:`flex flex-col gap-6 mt-10`},Ci={class:`flex items-center field-checkbox-gap`},wi={for:`rememberMe`,class:`cui-label-checkbox`},Ti={key:`2fa`,class:`flex flex-col h-full`},Ei={class:`flex flex-col items-center text-center mt-10 sm:mt-0`},Di={class:`text-lg font-semibold mb-2`},Oi={class:`text-muted text-sm`},ki={class:`flex flex-col items-center mt-10`},Ai={class:`mt-4 text-xs text-muted text-center`},ji={class:`flex flex-col gap-3 mt-auto pt-10`},Mi=ke(U({__name:`Login`,setup(l){let d=t();Ct();let{t:f}=_e(),p=o(),m=n(),{isNeedsAuth:g,isOnline:y,inTrouble:b}=m,S=i(),{loginLoading:E,requires2FA:O}=Se(S),A=Ge(),N=_(`formRef`),P=s(``),F=s(``),L=s(!1),B=s(``),V=s(!1),H=s(!1);s(!1);let U=j(()=>!A.isHomeActive||A.redirectInfo!==null),K=j(()=>p===`cloud`&&A.isHomeActive),te=j(()=>!y.value&&!g.value&&!E.value&&!O.value),ne=j(()=>b.value?f(`connection.unreachable`):f(`connection.connecting_remote`)),re=j(()=>!1);function ie(){m.retry()}function ae(){if(A.redirectInfo){let e=A.redirectInfo.sourceUrl;A.redirectInfo=null,window.location.href=e;return}A.switchInstance(null)}async function se(e){try{let[t,n]=await Promise.all([mi(),hi()]);return await S.login({username:e.username,password:e.password,kind:`web`,persistent:L.value,device:{id:t,name:n}}),!0}catch(e){return d.add({severity:`error`,detail:e,life:3e3}),!1}}async function ce(){await se({username:P.value,password:F.value})&&await de({username:P.value,password:F.value})}async function le(){let e=await ue();if(e){V.value=!0;try{let t=await Tt(e,f(`views.login.biometric_reason`));if(!t)return;P.value=t.username,F.value=t.password,await se(t)||(await Et(e),H.value=!1)}finally{V.value=!1}}}async function ue(){return null}async function de(e){}async function fe(){window.location.href=e}async function pe(){if(!(B.value.length<6))try{await S.verify2FA(B.value)}catch(e){d.add({severity:`error`,detail:r(e)??f(`views.login.2fa_invalid_code`),life:3e3}),B.value=``}}function me(){S.cancel2FA(),B.value=``}return w(async()=>{}),(e,t)=>{let n=ei,r=X,i=Ie,o=Y,s=ve,l=Be,d=Le,f=Z,p=Ve,m=oe;return J(),M(ui,{"logo-url":G(a)(`logo_animated.svg`)},ee({default:D(()=>[z(C,{name:`slide-fade`,mode:`out-in`},{default:D(()=>[G(te)?(J(),c(`div`,_i,[z(o,{"stroke-width":`4`,class:`!w-12 !h-12`}),k(`p`,vi,I(G(ne)),1),G(b)?(J(),M(r,{key:0,size:`small`,severity:`secondary`,label:e.$t(`connection.retry`),onClick:ie},null,8,[`label`])):x(``,!0)])):G(O)?h((J(),c(`div`,Ti,[k(`div`,Ei,[k(`h2`,Di,I(e.$t(`views.login.2fa_title`)),1),k(`p`,Oi,I(e.$t(`views.login.2fa_description`)),1)]),k(`div`,ki,[z(p,{modelValue:G(B),"onUpdate:modelValue":t[3]||=e=>v(B)?B.value=e:null,length:6,"integer-only":``,size:`large`,onComplete:pe},null,8,[`modelValue`]),k(`p`,Ai,I(e.$t(`views.login.2fa_backup_hint`)),1)]),k(`div`,ji,[z(r,{class:`text-white font-semibold cui-button-large`,loading:G(E),disabled:G(B).length<6,label:e.$t(`views.login.2fa_verify`),fluid:``,onClick:pe},null,8,[`loading`,`disabled`,`label`]),z(r,{severity:`secondary`,class:`cui-button-large`,text:``,label:e.$t(`components.form.button.cancel`),fluid:``,onClick:me},null,8,[`label`])])])),[[m]]):(J(),M(G(T),{key:`login`,ref_key:`formRef`,ref:N,"validation-schema":G(Dt),class:`flex flex-col h-full`,onSubmit:ce},{default:D(()=>[k(`div`,yi,[z(G(q),{modelValue:G(P),"onUpdate:modelValue":t[0]||=e=>v(P)?P.value=e:null,modelModifiers:{trim:!0},name:`username`,as:`div`,class:`flex flex-col field-gap`},{default:D(({field:t,errors:n})=>[k(`label`,bi,I(e.$t(`components.form.label.username`)),1),z(s,R({invalid:n.length>0,type:`text`,size:`large`,loading:G(E),fluid:``},t),null,16,[`invalid`,`loading`]),z(C,{name:`fade`},{default:D(()=>[z(G(u),{name:`username`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),z(G(q),{modelValue:G(F),"onUpdate:modelValue":t[1]||=e=>v(F)?F.value=e:null,name:`password`,as:`div`,class:`flex flex-col field-gap`},{default:D(({field:t,errors:n})=>[k(`label`,xi,I(e.$t(`components.form.label.password`)),1),z(l,R({invalid:n.length>0,size:`large`,loading:G(E),feedback:!1,"toggle-mask":``,fluid:``},t),null,16,[`invalid`,`loading`]),z(C,{name:`fade`},{default:D(()=>[z(G(u),{name:`password`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`])]),k(`div`,Si,[G(!1)?x(``,!0):(J(),M(G(q),{key:0,"model-value":G(L),name:`rememberMe`,type:`checkbox`,"checked-value":!0,"unchecked-value":!1,as:`div`,class:`flex flex-col field-gap`},{default:D(({field:n,errors:r})=>[k(`div`,Ci,[z(d,R({"model-value":G(L)},n,{invalid:r.length>0,class:`mr-2`,binary:``,loading:G(E),onValueChange:t[2]||=e=>L.value=e}),null,16,[`model-value`,`invalid`,`loading`]),k(`label`,wi,I(e.$t(`components.form.label.remember_me`)),1)]),z(C,{name:`fade`},{default:D(()=>[z(G(u),{name:`rememberMe`,class:`cui-input-checkbox-error`})]),_:1})]),_:1},8,[`model-value`])),z(r,{type:`submit`,class:`text-white font-semibold cui-button-large`,loading:G(E),label:e.$t(`components.form.button.login`),fluid:``},null,8,[`loading`,`label`]),G(re)?(J(),M(r,{key:1,type:`button`,severity:`secondary`,class:`cui-button-large`,text:``,loading:G(V),label:e.$t(`components.form.button.biometric_login`),fluid:``,onClick:le},{icon:D(()=>[z(f,{class:`w-5 h-5 mr-2`})]),_:1},8,[`loading`,`label`])):x(``,!0)])]),_:1},8,[`validation-schema`]))]),_:1})]),_:2},[G(U)||G(K)?{name:`footer-left`,fn:D(()=>[G(U)?(J(),M(r,{key:0,severity:`secondary`,text:``,size:`small`,class:`text-muted`,onClick:ae},{default:D(()=>[z(n,{class:`w-4 h-4 mr-1`}),W(` `+I(e.$t(`components.instance_switcher.go_back`)),1)]),_:1})):(J(),M(r,{key:1,severity:`secondary`,text:``,size:`small`,class:`text-muted`,onClick:fe},{default:D(()=>[z(i,{class:`w-4 h-4 mr-1`}),W(` `+I(e.$t(`views.login.pick_server`)),1)]),_:1}))]),key:`0`}:void 0]),1032,[`logo-url`])}}}),[[`__scopeId`,`data-v-7c2b2a03`]]),Ni=()=>B(()=>import(`./404-BvkajsAN.js`),__vite__mapDeps([15,8,2,1,4,5,9,16])),Pi=()=>B(()=>import(`./FirstSteps-Cowo-kpk.js`),__vite__mapDeps([17,8,2,1,4,5,9,18,19,20,3,6,21,11,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44])),Fi=()=>B(()=>import(`./Cameras-C5MLRlQt.js`),__vite__mapDeps([45,8,2,1,4,5,9,11,3,6,46,18,47,48,19,7,49,20,21,22,23,35,33,50,37,51,52,53,54,55,56,57])),Ii=()=>B(()=>import(`./Camera-BD89WTrM.js`),__vite__mapDeps([58,1,2,4,5,59,8,9,11,3,6,18,60,61,62,21,22,19,63,64,26,27,65,66,67,28,68,29,69,7,30,31,70,49,20,23,71,72,73,74,75,76,77,78])),Li=()=>B(()=>import(`./Camview-BXwTF330.js`),__vite__mapDeps([79,8,2,1,4,5,9,59,11,3,6,18,60,61,62,21,22,19,63,64,26,27,65,66,67,28,68,29,69,7,30,31,70,49,20,23,71,72,46,80,81,34,33,35,74,82,51,53,76,77,83,84,85,55,86,87,88,89,90])),Ri=()=>B(()=>import(`./Recordings-BxczmYsS.js`),__vite__mapDeps([91,1,2,4,59,8,5,9,11,3,6,18,60,61,62,21,22,19,63,64,26,27,65,66,67,28,68,29,69,7,30,31,70,49,20,23,71,72,92,73,93,94,95,96,55,97,98,99,100])),zi=()=>B(()=>import(`./Faces-pLWD7GFV.js`),__vite__mapDeps([101,8,2,1,4,5,9,3,6,46,18,28,48,20,21,11,22,23,96,102,103,56,87])),Bi=()=>B(()=>import(`./Plugins-tauNbtus.js`),__vite__mapDeps([104,1,2,4,11,3,5,6,46,18,105,48,19,8,9,20,21,22,23,96,102,103,56,106,107,108,60,64,26,27,65,35,33,109,110,111,112,113,114])),Vi=()=>B(()=>import(`./Plugin-C8KnaxI5.js`),__vite__mapDeps([115,8,2,1,4,5,9,11,3,6,18,47,60,64,26,21,22,27,65,67,28,68,7,49,20,23,96,35,33,50,46,37,51,52,102,116,117,118,119,103,107,108,109,110,111,112,113,120])),Hi=()=>B(()=>import(`./Adminpanel-Dl6CGett.js`),__vite__mapDeps([121,8,2,1,4,5,9,3,6,96,35,33,102,24,39,103,122,11,18,37,123,124,125])),Ui=()=>B(()=>import(`./Config-Bcs8TK2T.js`),__vite__mapDeps([126,2,8,1,4,5,9,3,6,18,20,21,11,22,23,96,37,24,103,75,127])),Wi=()=>B(()=>import(`./Console-DBXu0iKa.js`),__vite__mapDeps([128,1,2,4,5,6,18,20,8,9,3,21,11,22,23,96,10,12,13,14,24,103,106,75,83,84,85,55,86,129])),Gi=()=>B(()=>import(`./Terminal-B62d7hZL.js`),__vite__mapDeps([130,8,2,1,4,5,9,11,3,6,18,96,12,13,103,131,75,83,84,85,55,86,129,132])),Ki=()=>B(()=>import(`./Automations-ZmPzbYRc.js`),__vite__mapDeps([133,8,2,1,4,5,9,3,6,18,134,48,20,21,11,22,23,96,135,136,137,138,61,103,139,56,106])),qi=()=>B(()=>import(`./Automation-CsQomMnQ.js`),__vite__mapDeps([140,8,2,1,4,5,9,11,3,6,18,64,26,21,22,27,65,66,20,23,96,135,141,136,137,138,61,85,142,143,103,139,56,144,131,145])),Ji=()=>B(()=>import(`./Instances-CJSxOTS5.js`),__vite__mapDeps([146,8,2,1,4,5,9,3,6,18,147,19,20,21,11,22,23,48,64,26,27,65,96,112,103,56,106])),Yi=()=>B(()=>import(`./Workers-DouAZ6IN.js`),__vite__mapDeps([148,8,2,1,4,5,9,3,6,18,149,7,30,31,96,103,122,11,37,123,124,125])),Xi=()=>B(()=>import(`./Settings-B22NP1uX.js`),__vite__mapDeps([150,1,2,4,5,11,3,6,19,8,9,96,74,99,151])),Zi=()=>B(()=>import(`./Menu-BV2Npq07.js`),__vite__mapDeps([152,8,2,1,4,5,9,153,26,11,21,18,22,27,19,64,65,154,124])),Qi=()=>B(()=>import(`./About-D3w6wB-C.js`),__vite__mapDeps([155,8,2,1,4,5,9,3,6,43,18,96,156,103])),$i=()=>B(()=>import(`./SettingsAccount-D9YRXC2V.js`),__vite__mapDeps([157,25,8,2,1,4,5,9,11,18,26,21,22,27,28,29,30,31,20,3,6,23,32,33,34,35,36,37,38,39,40])),ea=()=>B(()=>import(`./SettingsAppearance-BICuFMxO.js`),__vite__mapDeps([158,41,1,2,4,5,6,18,19,8,9,37,42,43])),ta=()=>B(()=>import(`./SettingsBackup-B9L8WRBn.js`),__vite__mapDeps([159,8,2,1,4,5,9,18,20,3,6,21,11,22,23,24,119,44,160])),na=()=>B(()=>import(`./SettingsRecordings-C2BVYt_b.js`),__vite__mapDeps([161,8,2,1,4,5,9,18,7,50,11,46,21,22,35,33,37,51,52,162,123,109,110,20,3,6,23,111])),ra=()=>B(()=>import(`./SettingsRemote-14DByUYb.js`),__vite__mapDeps([163,8,2,1,4,5,9,11,18,164,30,31,23,20,3,6,21,22,35,33,36,37,38,24,165])),ia=()=>B(()=>import(`./SettingsSystem-DGjWaU3j.js`),__vite__mapDeps([166,8,2,1,4,5,9,43,19,20,3,6,18,21,11,22,23,71,24,156])),aa=()=>B(()=>import(`./SettingsUsers-BunfJfFX.js`),__vite__mapDeps([167,8,2,1,4,5,9,3,6,18,26,11,21,22,27,64,65,20,23,34,33,35,112])),oa=()=>B(()=>import(`./SettingsNotifications-CYFuyAb8.js`),__vite__mapDeps([168,8,2,1,4,5,9,18,19,169])),{smBreakpoint:$}=Pe(),sa=[{name:`NotFound`,path:`/:pathMatch(.*)*`,component:Ni,meta:{name:`notfound`,auth:{requiresAuth:!1,role:`none`}}},{name:`Login`,path:`/login`,alias:`/`,component:Mi,meta:{name:`login`,auth:{requiresAuth:!1,role:`none`},ui:{background:j(()=>$.value?`var(--card-background)`:void 0)}}},{name:`FirstSteps`,path:`/first-steps`,component:Pi,meta:{name:`firststeps`,auth:{requiresAuth:!0,role:`user`}}},{name:`Home`,path:`/home`,component:Zr,meta:{name:`home`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{showTitle:!0,padding:!0,allowOverflowX:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`top`,icon:{default:fn,active:De}},bottombar:{icon:{default:fn,active:De}}}},{name:`Cameras`,path:`/cameras`,component:Fi,meta:{name:`cameras`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`top`,icon:{default:Ue,active:Ke}},bottombar:{icon:{default:Ue,active:Ke}}}},{name:`Camera`,path:`/cameras/:cameraname`,component:Ii,meta:{name:`camera`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{disableScroll:!0,ignoreSafeAreaBottom:j(()=>$.value),noExtraPadding:j(()=>$.value)},showNavbar:!0,showTopbar:j(()=>!$.value),showBottombar:j(()=>!$.value),showRouterLoading:!0}}},{name:`Camview`,path:`/camview`,component:Li,meta:{name:`camview`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{disableScroll:!0},background:`#000000`,showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`top`,icon:{default:In,active:tt}},bottombar:{icon:{default:In,active:tt}}}},{name:`Recordings`,path:`/recordings`,component:Ri,meta:{name:`recordings`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{showTitle:!1,padding:!1},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`top`,icon:{default:zn,active:rt}},bottombar:{icon:{default:zn,active:rt}}}},{name:`About`,path:`/about`,component:Qi,meta:{name:`about`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0}}},{name:`Faces`,path:`/faces`,component:zi,meta:{name:`faces`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},profileMenu:{icon:{default:Z,active:Z}},navbar:{position:`top`,icon:{default:Z,active:Z}}}},{name:`Plugins`,path:`/plugins`,component:Bi,meta:{name:`plugins`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`top`,icon:{default:ot,active:lt}},profileMenu:{icon:{default:ot,active:lt}}}},{name:`ScopedPlugin`,path:`/plugins/:scope/:pluginname`,component:Vi,meta:{name:`plugin`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0}}},{name:`Plugin`,path:`/plugins/:pluginname`,component:Vi,meta:{name:`plugin`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0}}},{name:`Adminpanel`,path:`/admin`,component:Hi,meta:{name:`adminpanel`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:er,active:Zn}},profileMenu:{icon:{default:er,active:Zn}}}},{name:`Config`,path:`/config`,component:Ui,meta:{name:`config`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{disableScroll:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:Dn,active:wn}},profileMenu:{icon:{default:Dn,active:wn}}}},{name:`Console`,path:`/console`,component:Wi,meta:{name:`console`,auth:{requiresAuth:!0,role:`admin`},ui:{background:`#000000`,containerSettings:{disableScroll:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:Yt,active:en}},profileMenu:{icon:{default:Yt,active:en}}}},{name:`Terminal`,path:`/terminal`,component:Gi,meta:{name:`terminal`,auth:{requiresAuth:!0,role:`admin`},ui:{background:`#000000`,containerSettings:{disableScroll:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:qe,active:on}},profileMenu:{icon:{default:qe,active:on}}}},{name:`Automations`,path:`/automations`,component:Ki,meta:{name:`automations`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:ln,active:Ye}},profileMenu:{icon:{default:ln,active:Ye}}}},{name:`Automation`,path:`/automations/:id`,component:qi,meta:{name:`automation`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{disableScroll:!0,paddingBottom:!1},showNavbar:!0,showTopbar:!0,showBottombar:!0}}},{name:`Instances`,path:`/instances`,component:Ji,meta:{name:`instances`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:jt,active:We}},profileMenu:{icon:{default:jt,active:We}}}},{name:`Workers`,path:`/workers`,component:Yi,meta:{name:`workers`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:Kt,active:Je}},profileMenu:{icon:{default:Kt,active:Je}}}},{name:`Settings`,path:`/settings`,component:Xi,meta:{name:`settings`,path:`/settings/account`,auth:{requiresAuth:!0,role:`user`},navbar:{position:`bottom`,icon:{default:et,active:$e}},profileMenu:{icon:{default:et,active:$e}}},children:[{name:`SettingsAccount`,path:`account`,component:$i,meta:{name:`account`,description:`account_description`,auth:{requiresAuth:!0,role:`user`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:vn,active:hn}}}},{name:`SettingsAppearance`,path:`appearance`,component:ea,meta:{name:`appearance`,description:`appearance_description`,auth:{requiresAuth:!0,role:`user`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Bt,active:Ut}}}},{name:`SettingsUsers`,path:`user`,component:aa,meta:{name:`user`,description:`user_description`,auth:{requiresAuth:!0,role:`admin`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Nn,active:An}}}},{name:`SettingsNotifications`,path:`notifications`,component:oa,meta:{name:`notifications`,description:`notifications_description`,auth:{requiresAuth:!0,role:`user`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Qe,active:xn}}}},{name:`SettingsRecordings`,path:`recordings`,component:na,meta:{name:`recordings`,description:`recordings_description`,auth:{requiresAuth:!0,role:`admin`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:zn,active:rt}}}},{name:`SettingsRemote`,path:`remote`,component:ra,meta:{name:`remote`,description:`remote_access_description`,auth:{requiresAuth:!0,role:`admin`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Ze,active:Xe}}}},{name:`SettingsBackup`,path:`backup`,component:ta,meta:{name:`backup`,description:`backup_description`,auth:{requiresAuth:!0,role:`admin`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Pt,active:Lt}}}},{name:`SettingsSystem`,path:`system`,component:ia,meta:{name:`system`,description:`system_description`,auth:{requiresAuth:!0,role:`admin`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Gn,active:Hn}}}}]},{name:`Menu`,path:`/menu`,component:Zi,meta:{name:`menu`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{padding:!1},showNavbar:!1,showTopbar:!0,showBottombar:!0,showRouterLoading:!0,minifiedTopbar:!0},bottombar:{icon:{default:Jn,active:Jn}}}}];function ca(e){let t=e.toLowerCase();return t===`/home`?{group:`main`,key:`home`,ignore:`camview`}:t===`/camview`?{group:`main`,key:`camview`,ignore:`home`}:t.startsWith(`/cameras/`)?{group:`main`,key:`cameras`}:t===`/menu`?{group:`menu`,key:`menu`,depth:0}:t===`/faces`?{group:`menu`,key:`faces`,depth:1}:t===`/plugins`?{group:`menu`,key:`plugins`,depth:1}:t.startsWith(`/plugins/`)?{group:`menu`,key:`plugin-detail`,depth:2}:t.startsWith(`/settings`)?{group:`menu`,key:`settings`,depth:1}:t===`/admin`?{group:`menu`,key:`admin`,depth:1}:t===`/config`?{group:`menu`,key:`config`,depth:1}:t===`/console`?{group:`menu`,key:`console`,depth:1}:t===`/terminal`?{group:`menu`,key:`terminal`,depth:1}:t===`/instances`?{group:`menu`,key:`instances`,depth:1}:t===`/workers`?{group:`menu`,key:`workers`,depth:1}:t===`/automations`?{group:`menu`,key:`automations`,depth:1}:t===`/about`?{group:`menu`,key:`about`,depth:1}:t.startsWith(`/automations/`)?{group:`menu`,key:`automation-detail`,depth:2}:null}var la=new Map,ua=Ce({history:we(`/`),routes:sa,scrollBehavior:async(e,t,n)=>{if(n)return n;if(t.path===e.path||e.path===`/`)return{top:0,left:0};await pe(10);let r=la.get(e.path);return r===void 0?{top:0,left:0,behavior:`smooth`}:(la.delete(e.path),{top:r,left:0})}});ua.absUrl=(e=`#`,t=!0)=>{let n=document.createElement(`a`);n.href=e,n.target=t&&e!==`#`?`_blank`:``,t&&(n.rel=`noopener noreferrer`),n.click()},ua.beforeEach(async(e,t)=>{let n=ne(),r=i(),a=Ot(),o=e.name.toLowerCase();if(a.routerLoading=!0,a.setRoutes(t.fullPath,e.fullPath),la.set(t.path,window.scrollY),r.user){if(n.cancelQueries(void 0,{revert:!1}),r.user.firstLogin&&e.path!==`/first-steps`)return`/first-steps`;if(!r.user.firstLogin&&e.path===`/first-steps`||e.meta.auth?.requiresAuth&&e.meta.auth.role&&r.user.role!==e.meta.auth.role&&r.user.role!==`admin`&&r.user.role!==`master`||o===`login`)return`/home`;if(e.path===`/settings`)return`/settings/account`}else if(o!==`login`)return`/`}),ua.beforeResolve(async(e,t)=>{let n=ca(t.path),r=ca(e.path);if(!n||!r||n.group!==r.group||n.key===r.key||n.ignore===r.key||r.ignore===n.key)return;if(n.group===`menu`&&n.depth!==void 0&&r.depth!==void 0){if(window.innerWidth>640||n.depth===r.depth)return;let e=r.depth>n.depth?`forward`:`back`;document.documentElement.dataset.menuDirection=e}if(e.path===`/home`&&!ne().getQueriesData({queryKey:[`camerasList`]}).some(([,e])=>e!=null))return;let i=!!document.documentElement.dataset.menuDirection,a=Ot();a.isTransitioning=!0;let o=y();await o.captured,o.finished.finally(()=>{a.isTransitioning=!1,i&&delete document.documentElement.dataset.menuDirection})}),ua.afterEach(()=>{let e=Ot();e.routerLoading=!1});export{jt as i,sa as n,ei as r,ua as t};
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CameraConsole-Dp7Mgugu.js","assets/vendor-CF-D4B9g.js","assets/rolldown-runtime-DAXXjFlN.js","assets/useSharedComposables-CTXKSCVm.js","assets/vendor-cameraui-tvNekvZ-.js","assets/vendor-core-DinQdIbm.js","assets/ui-q3Xp2p6M.js","assets/cameras-CuAJzX9E.js","assets/api-DG-9_slP.js","assets/api-Cna9Poda.css","assets/useLogsSocket-BJLXRz8a.js","assets/_plugin-vue_export-helper-BDNMzG2s.js","assets/vendor-xterm-BRN-hOYD.js","assets/vendor-xterm-BrP-ENHg.css","assets/useLogsSocket-DZ93-C8L.css","assets/404-v5as29bN.js","assets/home-QHsGVBGd.js","assets/FirstSteps-B8SHK9dj.js","assets/vendor-primevue-D0-7UQst.js","assets/hasPermission-BTRA5070.js","assets/useCuiDialog-C7VXcZOW.js","assets/CuiImage-Dkb0xMtM.js","assets/CuiImage-Bxf7z2N4.css","assets/close-rounded-BhUZzZeA.js","assets/server-DAHar4Ts.js","assets/SettingsAccount-Detq2ves.js","assets/CuiAvatar-DT205oI6.js","assets/CuiAvatar-BtMXnhxd.css","assets/face-recognition-vNgsuvZQ.js","assets/shield-check-D55EbdY5.js","assets/CuiActionButton-BF1An_rl.js","assets/copy-16-filled-UD4hjH-4.js","assets/useBiometricCredentials-CwpN9ZTB.js","assets/vendor-zod-V2qTUMVc.js","assets/users.schema-nZK4wXvw.js","assets/types-QvsYiGdQ.js","assets/CuiQRCode-BVOIi8VD.js","assets/theme-LZAl6ikG.js","assets/CuiQRCode-DfUba6JB.css","assets/auth-DOMDhkS8.js","assets/SettingsAccount-C-LQ3hWW.css","assets/SettingsAppearance-DffpVG5f.js","assets/locale-BJ2C57Gq.js","assets/useElectron-mh8HQUAI.js","assets/backup-4XfddN8z.js","assets/Cameras-Yaug0yrP.js","assets/close-BvciW6Wg.js","assets/cctv-BK9p1URj.js","assets/CuiFloatingButton-CXLHlbnk.js","assets/useCuiCameraDrawer-zbw8XiW5.js","assets/CuiSchema-Cfc1vzp6.js","assets/check-C8Q3pZRh.js","assets/CuiSchema--yMBD996.css","assets/plus-DO_I5Ekc.js","assets/cameras.schema-B93btXUO.js","assets/ring-resize-DX9lIn8S.js","assets/plus-B5POQ2Ue.js","assets/Cameras-807mspcl.css","assets/Camera-C_33nFP2.js","assets/CuiCameraCard-Dg_senYR.js","assets/cog-DiL--KjL.js","assets/lightbulb-outline-DnqcItJU.js","assets/CuiCameraSnapshot-DRu0hF3z.js","assets/types-DllqnzAz.js","assets/CuiMenu-EoB3gkMJ.js","assets/CuiMenu-BWUfWLQP.css","assets/play-solid-BgmJ89Sh.js","assets/CuiBBoxPlayground-BVK7ZJ7M.js","assets/CuiBBoxPlayground-EFkdOBvq.css","assets/vendor-draggabilly-DCZR9BMa.js","assets/shares-DHjtR1MT.js","assets/useFileDownload-Et7NRBap.js","assets/CuiCameraCard-dNsAwlKS.css","assets/download-Dvs3QCvp.js","assets/routerState-C_8KP3kD.js","assets/zoom-in-BfBU52rQ.js","assets/CuiCameraPipCard-G2-5iN-s.js","assets/CuiCameraPipCard-D3o29_wc.css","assets/Camera-BhCDJE7I.css","assets/Camview-On97Lml0.js","assets/grid-fill-BmsHxwDf.js","assets/vendor-dnd-BuMMZfLh.js","assets/microphone-Ctgn-sl1.js","assets/CuiTopNavbarItem-MJr5l6Aq.js","assets/chevron-down-DY3yQG2A.js","assets/close-BVMcLU5Z.js","assets/CuiTopNavbarItem-w54CrODK.css","assets/delete-BzeGTp2V.js","assets/vendor-gridstack-DD5uGA3X.js","assets/vendor-gridstack-Rg2RhwAc.css","assets/Camview-Dd7DwMHG.css","assets/Recordings-k8LBscvM.js","assets/view-grid-B5oq2YBJ.js","assets/view-grid-SdzaC3O_.css","assets/eventIcons-BPti5ma5.js","assets/eventIcons-2hVCNchU.css","assets/CuiTopbarSlot-DTNeuYvo.js","assets/CuiRecordingsGrid-Bxmlizts.js","assets/CuiRecordingsGrid-CZIZiEuT.css","assets/round-alt-arrow-left-bold-CLoPDaOh.js","assets/Recordings-Bt_GlPOK.css","assets/Faces-CxSpBJx5.js","assets/plugins--S_Q7XSz.js","assets/back-filled-D7yFvzR6.js","assets/Plugins-BBYkp0Lq.js","assets/github-3U8UNWEo.js","assets/search-DZ9xVXRP.js","assets/CuiPluginCard-86liZjK4.js","assets/terminal-DNYYAFl5.js","assets/CuiPluginOAuthButton-DaOHuN78.js","assets/cloud-outline-BrU3S7IS.js","assets/cloud-check-E6wIIVuz.js","assets/trash-fill-f4lTEnbR.js","assets/CuiPluginCard-C0B7I34l.css","assets/Plugins-BPt1RSKT.css","assets/Plugin-CXq6VmFm.js","assets/PluginSchema-Xd9otIzG.js","assets/vendor-markdown-BZSidpyh.js","assets/vendor-markdown-DtOhvyRx.css","assets/close-circle-B_OAX5Zy.js","assets/Plugin-DoxdkvWR.css","assets/Adminpanel-D9308sB0.js","assets/round-restart-alt-D3mETXCy.js","assets/vendor-chart-CYhHo97f.js","assets/chevron-right--xa71qcO.js","assets/round-restart-alt-CJgRaJjF.css","assets/Config-BZ-qo4Yn.js","assets/Config-JgftUZFe.css","assets/Console-DoN0meid.js","assets/trash-2-Cq12InWC.js","assets/Terminal-oFHYhs5G.js","assets/settings-NKsXc7ux.js","assets/Terminal-CrOfQJ-O.css","assets/Automations-B2WSo6cc.js","assets/automation-1ZEEkuHf.js","assets/types-BxFyoO54.js","assets/automations-D8y64IMA.js","assets/nodeDefinitions-D0AwVtA3.js","assets/bell-outline-XAqc3I7S.js","assets/trash-can-BFdf_rAq.js","assets/Automation-BPOqYi_7.js","assets/automations-DetVBJsj.js","assets/CuiBottomSheet-Cl0hr1-B.js","assets/CuiBottomSheet-DxQ6D_RM.css","assets/vendor-vueflow--Q_FmuVt.js","assets/Automation-Csu8t0D7.css","assets/Instances-Kx6sSCDX.js","assets/instances-C9noeaJ-.js","assets/Workers-CjwdsG_Q.js","assets/circular-connection-BTgxVifK.js","assets/Settings-DfwGoK3K.js","assets/Settings-bwLTNAxX.css","assets/Menu-bxyy0M9l.js","assets/power-2WnCmUq_.js","assets/information-outline-C1VdAtHq.js","assets/About-C98439I4.js","assets/api-D_KNNgZ1.js","assets/SettingsAccount-Do1kFf9T.js","assets/SettingsAppearance-Cf-c_lny.js","assets/SettingsBackup-DS3mOZTd.js","assets/SettingsBackup-CX0rT0QJ.css","assets/SettingsRecordings-BW1_cnvh.js","assets/alert-outline-C4DaI8XN.js","assets/SettingsRemote-DeCCrkpB.js","assets/cloud-outline-BuQTDaKh.js","assets/SettingsRemote-CjVK9pGg.css","assets/SettingsSystem-C7R6m_Ep.js","assets/SettingsUsers-DRNl2lpx.js","assets/SettingsNotifications-ClYHH53Q.js","assets/notifications-C1aijpt-.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{D as e,S as t,T as n,a as r,d as i,o as a,r as o}from"./api-DG-9_slP.js";import{$n as s,$t as c,An as l,C as u,Cn as d,Dn as f,En as p,Gt as m,Hn as h,Ht as g,In as _,Jn as v,M as y,P as b,Qt as x,Rn as S,Rt as C,Sn as w,T,Tn as E,Vn as D,Wt as O,Xt as k,Yn as A,Yt as j,Zt as M,ar as N,cr as P,dn as F,dr as I,gn as L,hn as R,in as z,kt as B,nn as V,nr as H,on as U,rn as W,sr as G,tn as ee,ur as K,w as q,wn as J,yn as te,z as ne,zt as re}from"./vendor-CF-D4B9g.js";import{Bn as Y,Ei as ie,Fi as ae,Fn as oe,Gi as se,H as ce,Ji as le,K as ue,Mi as de,P as fe,Qt as pe,Ti as me,V as he,Vn as X,ct as ge,di as _e,et as ve,k as ye,wi as be,xi as xe}from"./vendor-cameraui-tvNekvZ-.js";import{f as Se,i as Ce,o as we}from"./vendor-core-DinQdIbm.js";import{I as Te,L as Ee,R as De,z as Oe}from"./CuiCameraCard-Dg_senYR.js";import{t as ke}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{a as Ae,i as je,n as Me,r as Ne,t as Pe}from"./useSharedComposables-CTXKSCVm.js";import{n as Fe}from"./ui-q3Xp2p6M.js";import{t as Ie}from"./cloud-outline-BrU3S7IS.js";import{C as Le,J as Re,U as ze,c as Be,d as Ve}from"./vendor-primevue-D0-7UQst.js";import{t as He}from"./CuiImage-Dkb0xMtM.js";import{a as Ue,i as We,t as Ge}from"./instances-C9noeaJ-.js";import{t as Ke}from"./cctv-BK9p1URj.js";import{t as qe}from"./terminal-DNYYAFl5.js";import{t as Je}from"./circular-connection-BTgxVifK.js";import{t as Ye}from"./automation-1ZEEkuHf.js";import{n as Xe,t as Ze}from"./cloud-outline-BuQTDaKh.js";import{t as Qe}from"./bell-outline-XAqc3I7S.js";import{t as $e}from"./cog-DiL--KjL.js";import{n as et}from"./lightbulb-outline-DnqcItJU.js";import{t as Z}from"./face-recognition-vNgsuvZQ.js";import{t as tt}from"./grid-fill-BmsHxwDf.js";import{n as nt,r as rt,t as it}from"./view-grid-B5oq2YBJ.js";import{n as at,r as ot,t as st}from"./eventIcons-BPti5ma5.js";import{n as ct,r as lt,t as ut}from"./github-3U8UNWEo.js";import{t as dt}from"./CuiFloatingButton-CXLHlbnk.js";import{t as ft}from"./CuiCameraSnapshot-DRu0hF3z.js";import{t as pt}from"./hasPermission-BTRA5070.js";import{a as mt,i as ht,n as gt,r as _t,t as vt}from"./vendor-dnd-BuMMZfLh.js";import{n as yt}from"./types-DllqnzAz.js";import{t as bt}from"./cameras-CuAJzX9E.js";import{n as xt}from"./useCuiCameraDrawer-zbw8XiW5.js";import{n as St,t as Ct}from"./useCuiDialog-C7VXcZOW.js";import{t as wt}from"./CuiTopbarSlot-DTNeuYvo.js";import{a as Tt,n as Et}from"./useBiometricCredentials-CwpN9ZTB.js";import{t as Dt}from"./users.schema-nZK4wXvw.js";import{t as Ot}from"./routerState-C_8KP3kD.js";var kt={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function At(e,t){return J(),c(`svg`,kt,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M20 3H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2M4 9V5h16v4zm16 4H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2M4 19v-4h16v4z`},null,-1),k(`path`,{fill:`currentColor`,d:`M17 6h2v2h-2zm-3 0h2v2h-2zm3 10h2v2h-2zm-3 0h2v2h-2z`},null,-1)]])}var jt=A({name:`bx-server`,render:At}),Mt={viewBox:`0 0 36 36`,width:`1.2em`,height:`1.2em`};function Nt(e,t){return J(),c(`svg`,Mt,[...t[0]||=[V(`<path fill="currentColor" d="M6 22h24v2H6z" class="clr-i-outline clr-i-outline-path-1"></path><path fill="currentColor" d="M26 26h4v2h-4z" class="clr-i-outline clr-i-outline-path-2"></path><path fill="currentColor" d="M13 9.92L17 6v13a1 1 0 1 0 2 0V6l4 3.95a1 1 0 1 0 1.38-1.45L18 2.16L11.61 8.5A1 1 0 0 0 13 9.92" class="clr-i-outline clr-i-outline-path-3"></path><path fill="currentColor" d="M30.84 13.37A1.94 1.94 0 0 0 28.93 12H21v2h7.95c1.05 2.94 2.77 7.65 3.05 8.48V30H4v-7.52C4.28 21.65 7.05 14 7.05 14H15v-2H7.07a1.92 1.92 0 0 0-1.9 1.32C2 22 2 22.1 2 22.33V30a2 2 0 0 0 2 2h28a2 2 0 0 0 2-2v-7.67c0-.23 0-.33-3.16-8.96" class="clr-i-outline clr-i-outline-path-4"></path><path fill="none" d="M0 0h36v36H0z"></path>`,5)]])}var Pt=A({name:`clarity-backup-restore-line`,render:Nt}),Ft={viewBox:`0 0 36 36`,width:`1.2em`,height:`1.2em`};function It(e,t){return J(),c(`svg`,Ft,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M2 24v6a2 2 0 0 0 2 2h28a2 2 0 0 0 2-2v-6Zm28 5h-4v-2h4Z`,class:`clr-i-solid clr-i-solid-path-1`},null,-1),k(`path`,{fill:`currentColor`,d:`M30.84 13.37A1.94 1.94 0 0 0 28.93 12H21v6a3 3 0 1 1-6 0v-6H7.07a1.92 1.92 0 0 0-1.9 1.32c-2.31 6.36-2.93 8.11-3.1 8.68h31.86c-.16-.57-.79-2.31-3.09-8.63`,class:`clr-i-solid clr-i-solid-path-2`},null,-1),k(`path`,{fill:`currentColor`,d:`M13 9.92L17 6v12a1 1 0 1 0 2 0V6l4 3.95a1 1 0 1 0 1.38-1.45L18 2.16L11.61 8.5A1 1 0 0 0 13 9.92`,class:`clr-i-solid clr-i-solid-path-3`},null,-1),k(`path`,{fill:`none`,d:`M0 0h36v36H0z`},null,-1)]])}var Lt=A({name:`clarity-backup-restore-solid`,render:It}),Rt={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function zt(e,t){return J(),c(`svg`,Rt,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M20.97 7.27a.996.996 0 0 0 0-1.41l-2.83-2.83a.996.996 0 0 0-1.41 0l-4.49 4.49l-3.89-3.89c-.78-.78-2.05-.78-2.83 0l-1.9 1.9c-.78.78-.78 2.05 0 2.83l3.89 3.89L3 16.76V21h4.24l4.52-4.52l3.89 3.89c.95.95 2.23.6 2.83 0l1.9-1.9c.78-.78.78-2.05 0-2.83l-3.89-3.89zM5.04 6.94l1.89-1.9L8.2 6.31L7.02 7.5l1.41 1.41l1.19-1.19l1.2 1.2l-1.9 1.9zm11.23 7.44l-1.19 1.19l1.41 1.41l1.19-1.19l1.27 1.27l-1.9 1.9l-3.89-3.89l1.9-1.9zM6.41 19H5v-1.41l9.61-9.61l1.3 1.3l.11.11zm9.61-12.44l1.41-1.41l1.41 1.41l-1.41 1.41z`},null,-1)]])}var Bt=A({name:`ic-outline-design-services`,render:zt}),Vt={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Ht(e,t){return J(),c(`svg`,Vt,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`m16.24 11.51l1.57-1.57l-3.75-3.75l-1.57 1.57l-4.14-4.13c-.78-.78-2.05-.78-2.83 0l-1.9 1.9c-.78.78-.78 2.05 0 2.83l4.13 4.13l-4.6 4.61q-.15.15-.15.36v3.04c0 .28.22.5.5.5h3.04c.13 0 .26-.05.35-.15l4.62-4.62l4.13 4.13c1.32 1.32 2.76.07 2.83 0l1.9-1.9c.78-.78.78-2.05 0-2.83zm-7.06-.44L5.04 6.94l1.89-1.9L8.2 6.31l-.47.49a.996.996 0 1 0 1.41 1.41l.48-.48l1.45 1.45zm7.88 7.89l-4.13-4.13l1.9-1.9l1.45 1.45l-.48.48a.996.996 0 1 0 1.41 1.41l.48-.48l1.27 1.27zm3.65-11.92a.996.996 0 0 0 0-1.41l-2.34-2.34c-.47-.47-1.12-.29-1.41 0l-1.83 1.83l3.75 3.75z`},null,-1)]])}var Ut=A({name:`ic-round-design-services`,render:Ht}),Wt={viewBox:`0 0 48 48`,width:`1.2em`,height:`1.2em`};function Gt(e,t){return J(),c(`svg`,Wt,[...t[0]||=[k(`g`,{fill:`none`,stroke:`currentColor`,"stroke-width":`4`},[k(`path`,{d:`M13.5 39.37A16.93 16.93 0 0 0 24 43c3.963 0 7.61-1.356 10.5-3.63M19 9.747C12.051 11.882 7 18.351 7 26c0 1.925.32 3.775.91 5.5M29 9.747C35.949 11.882 41 18.351 41 26c0 1.925-.32 3.775-.91 5.5`}),k(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,d:`M43 36c0 1.342-.528 2.56-1.388 3.458A5 5 0 1 1 43 36m-28 0c0 1.342-.528 2.56-1.388 3.458A5 5 0 1 1 15 36M29 9c0 1.342-.528 2.56-1.388 3.458A5 5 0 1 1 29 9`})],-1)]])}var Kt=A({name:`icon-park-outline-circular-connection`,render:Gt}),qt={viewBox:`0 0 48 48`,width:`1.2em`,height:`1.2em`};function Jt(e,t){return J(),c(`svg`,qt,[...t[0]||=[k(`g`,{fill:`none`,stroke:`currentColor`,"stroke-linejoin":`round`,"stroke-width":`4`},[k(`path`,{d:`M13 10h28v34H13z`}),k(`path`,{"stroke-linecap":`round`,d:`M35 10V4H8a1 1 0 0 0-1 1v33h6m8-16h12m-12 8h12`})],-1)]])}var Yt=A({name:`icon-park-outline-log`,render:Jt}),Xt={viewBox:`0 0 48 48`,width:`1.2em`,height:`1.2em`},Zt=[`id`],Qt=[`mask`];function $t(e,t){return J(),c(`svg`,Xt,[k(`defs`,null,[k(`mask`,{id:e.idMap.SVGzmZ6hexT},[...t[0]||=[k(`g`,{fill:`none`,"stroke-linejoin":`round`,"stroke-width":`4`},[k(`path`,{fill:`#fff`,stroke:`#fff`,d:`M13 10h28v34H13z`}),k(`path`,{stroke:`#fff`,"stroke-linecap":`round`,d:`M35 10V4H8a1 1 0 0 0-1 1v33h6`}),k(`path`,{stroke:`#000`,"stroke-linecap":`round`,d:`M21 22h12m-12 8h12`})],-1)]],8,Zt)]),k(`path`,{fill:`currentColor`,d:`M0 0h48v48H0z`,mask:`url(#`+e.idMap.SVGzmZ6hexT+`)`},null,8,Qt)])}var en=A({name:`icon-park-solid-log`,render:$t,setup(){return{idMap:{SVGzmZ6hexT:`uicons-`+Math.random().toString(36).substr(2,10)}}}}),tn={viewBox:`0 0 48 48`,width:`1.2em`,height:`1.2em`},nn=[`id`],rn=[`mask`];function an(e,t){return J(),c(`svg`,tn,[k(`defs`,null,[k(`mask`,{id:e.idMap.SVGXE6zpcEE},[...t[0]||=[k(`g`,{fill:`none`,"stroke-linejoin":`round`,"stroke-width":`4`},[k(`rect`,{width:`40`,height:`32`,x:`4`,y:`8`,fill:`#fff`,stroke:`#fff`,rx:`2`}),k(`path`,{stroke:`#000`,"stroke-linecap":`round`,d:`m12 18l7 6l-7 6m11 2h13`})],-1)]],8,nn)]),k(`path`,{fill:`currentColor`,d:`M0 0h48v48H0z`,mask:`url(#`+e.idMap.SVGXE6zpcEE+`)`},null,8,rn)])}var on=A({name:`icon-park-solid-terminal`,render:an,setup(){return{idMap:{SVGXE6zpcEE:`uicons-`+Math.random().toString(36).substr(2,10)}}}}),sn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function cn(e,t){return J(),c(`svg`,sn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M7.4 17.25q-1.05.875-2.187.8t-1.988-.775t-1.162-1.837t.412-2.338L4.35 10q-.625-.55-.987-1.325T3 7q0-1.65 1.175-2.825T7 3t2.825 1.175T11 7T9.825 9.825T7 11q-.225 0-.45-.025t-.425-.075L4.2 14.15q-.275.45-.175.888t.425.712t.775.313t.875-.313l10.5-9.025q1.05-.875 2.2-.788t2 .788t1.15 1.838t-.425 2.337L19.65 14q.625.55.988 1.325T21 17q0 1.65-1.175 2.825T17 21t-2.825-1.175T13 17t1.175-2.825T17 13q.225 0 .438.025t.412.075l1.95-3.25q.275-.45.175-.888t-.425-.712t-.775-.312t-.875.312zm1.013-8.837Q9 7.825 9 7t-.587-1.412T7 5t-1.412.588T5 7t.588 1.413T7 9t1.413-.587m10 10Q19 17.825 19 17t-.587-1.412T17 15t-1.412.588T15 17t.588 1.413T17 19t1.413-.587M17 17`},null,-1)]])}var ln=A({name:`material-symbols-automation-outline`,render:cn}),un={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function dn(e,t){return J(),c(`svg`,un,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M6 19h3v-5q0-.425.288-.712T10 13h4q.425 0 .713.288T15 14v5h3v-9l-6-4.5L6 10zm-2 0v-9q0-.475.213-.9t.587-.7l6-4.5q.525-.4 1.2-.4t1.2.4l6 4.5q.375.275.588.7T20 10v9q0 .825-.588 1.413T18 21h-4q-.425 0-.712-.288T13 20v-5h-2v5q0 .425-.288.713T10 21H6q-.825 0-1.412-.587T4 19m8-6.75`},null,-1)]])}var fn=A({name:`material-symbols-home-outline-rounded`,render:dn}),pn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function mn(e,t){return J(),c(`svg`,pn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M12 19.2c-2.5 0-4.71-1.28-6-3.2c.03-2 4-3.1 6-3.1s5.97 1.1 6 3.1a7.23 7.23 0 0 1-6 3.2M12 5a3 3 0 0 1 3 3a3 3 0 0 1-3 3a3 3 0 0 1-3-3a3 3 0 0 1 3-3m0-3A10 10 0 0 0 2 12a10 10 0 0 0 10 10a10 10 0 0 0 10-10c0-5.53-4.5-10-10-10`},null,-1)]])}var hn=A({name:`mdi-account-circle`,render:mn}),gn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function _n(e,t){return J(),c(`svg`,gn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M12 2A10 10 0 0 0 2 12a10 10 0 0 0 10 10a10 10 0 0 0 10-10A10 10 0 0 0 12 2M7.07 18.28c.43-.9 3.05-1.78 4.93-1.78s4.5.88 4.93 1.78A7.9 7.9 0 0 1 12 20c-1.86 0-3.57-.64-4.93-1.72m11.29-1.45c-1.43-1.74-4.9-2.33-6.36-2.33s-4.93.59-6.36 2.33A7.93 7.93 0 0 1 4 12c0-4.41 3.59-8 8-8s8 3.59 8 8c0 1.82-.62 3.5-1.64 4.83M12 6c-1.94 0-3.5 1.56-3.5 3.5S10.06 13 12 13s3.5-1.56 3.5-3.5S13.94 6 12 6m0 5a1.5 1.5 0 0 1-1.5-1.5A1.5 1.5 0 0 1 12 8a1.5 1.5 0 0 1 1.5 1.5A1.5 1.5 0 0 1 12 11`},null,-1)]])}var vn=A({name:`mdi-account-circle-outline`,render:_n}),yn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function bn(e,t){return J(),c(`svg`,yn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M21 19v1H3v-1l2-2v-6c0-3.1 2.03-5.83 5-6.71V4a2 2 0 0 1 2-2a2 2 0 0 1 2 2v.29c2.97.88 5 3.61 5 6.71v6zm-7 2a2 2 0 0 1-2 2a2 2 0 0 1-2-2`},null,-1)]])}var xn=A({name:`mdi-bell`,render:bn}),Sn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Cn(e,t){return J(),c(`svg`,Sn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M21 10V9l-6-6H5c-1.11 0-2 .89-2 2v14a2 2 0 0 0 2 2h6v-1.87l8.39-8.39c.44-.44 1-.68 1.61-.74m-7-5.5l5.5 5.5H14zm8.85 9.69l-.98.98l-2.04-2.04l.98-.98c.19-.2.52-.2.72 0l1.32 1.32c.2.2.2.53 0 .72m-3.72-.36l2.04 2.04L15.04 22H13v-2.04z`},null,-1)]])}var wn=A({name:`mdi-note-edit`,render:Cn}),Tn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function En(e,t){return J(),c(`svg`,Tn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`m18.13 12l1.26-1.26c.44-.44 1-.68 1.61-.74V9l-6-6H5c-1.11 0-2 .89-2 2v14a2 2 0 0 0 2 2h6v-1.87l.13-.13H5V5h7v7zM14 4.5l5.5 5.5H14zm5.13 9.33l2.04 2.04L15.04 22H13v-2.04zm3.72.36l-.98.98l-2.04-2.04l.98-.98c.19-.2.52-.2.72 0l1.32 1.32c.2.2.2.53 0 .72`},null,-1)]])}var Dn=A({name:`mdi-note-edit-outline`,render:En}),On={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function kn(e,t){return J(),c(`svg`,On,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M16 17v2H2v-2s0-4 7-4s7 4 7 4m-3.5-9.5A3.5 3.5 0 1 0 9 11a3.5 3.5 0 0 0 3.5-3.5m3.44 5.5A5.32 5.32 0 0 1 18 17v2h4v-2s0-3.63-6.06-4M15 4a3.4 3.4 0 0 0-1.93.59a5 5 0 0 1 0 5.82A3.4 3.4 0 0 0 15 11a3.5 3.5 0 0 0 0-7`},null,-1)]])}var An=A({name:`mdi-users`,render:kn}),jn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Mn(e,t){return J(),c(`svg`,jn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M13.07 10.41a5 5 0 0 0 0-5.82A3.4 3.4 0 0 1 15 4a3.5 3.5 0 0 1 0 7a3.4 3.4 0 0 1-1.93-.59M5.5 7.5A3.5 3.5 0 1 1 9 11a3.5 3.5 0 0 1-3.5-3.5m2 0A1.5 1.5 0 1 0 9 6a1.5 1.5 0 0 0-1.5 1.5M16 17v2H2v-2s0-4 7-4s7 4 7 4m-2 0c-.14-.78-1.33-2-5-2s-4.93 1.31-5 2m11.95-4A5.32 5.32 0 0 1 18 17v2h4v-2s0-3.63-6.06-4Z`},null,-1)]])}var Nn=A({name:`mdi-users-outline`,render:Mn}),Pn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Fn(e,t){return J(),c(`svg`,Pn,[...t[0]||=[k(`g`,{fill:`none`,"fill-rule":`evenodd`},[k(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),k(`path`,{fill:`currentColor`,d:`M9 13a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4a2 2 0 0 1 2-2zm10 0a2 2 0 0 1 1.995 1.85L21 15v4a2 2 0 0 1-1.85 1.995L19 21h-4a2 2 0 0 1-1.995-1.85L13 19v-4a2 2 0 0 1 1.85-1.995L15 13zM9 15H5v4h4zm10 0h-4v4h4zm0-12a2 2 0 0 1 1.995 1.85L21 5v4a2 2 0 0 1-1.85 1.995L19 11h-4a2 2 0 0 1-1.995-1.85L13 9V5a2 2 0 0 1 1.85-1.995L15 3zM9 3a2 2 0 0 1 1.995 1.85L11 5v4a2 2 0 0 1-1.85 1.995L9 11H5a2 2 0 0 1-1.995-1.85L3 9V5a2 2 0 0 1 1.85-1.995L5 3zm10 2h-4v4h4zM9 5H5v4h4z`})],-1)]])}var In=A({name:`mingcute-grid-line`,render:Fn}),Ln={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Rn(e,t){return J(),c(`svg`,Ln,[...t[0]||=[k(`g`,{fill:`none`},[k(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),k(`path`,{fill:`currentColor`,d:`M20 6a2 2 0 0 1 2 2v11.333a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2zm-8.268 7.944L7.136 18.54l-.066.06l-.07.054v.68h13v-.68l-.07-.053l-.066-.06l-2.24-2.24l-.353.354l.055.055a1 1 0 0 1-1.32 1.497l-.094-.083zM17 3a2 2 0 0 1 1.995 1.85L19 5H5a1 1 0 0 0-.993.883L4 6v12a2 2 0 0 1-1.995-1.85L2 16V6a3 3 0 0 1 2.824-2.995L5 3zm3 5H7v7.848L10.848 12a1.25 1.25 0 0 1 1.768 0l3.241 3.24l.884-.883a1.25 1.25 0 0 1 1.768 0L20 15.848zm-3.5 1.5a1.5 1.5 0 1 1 0 3a1.5 1.5 0 0 1 0-3`})],-1)]])}var zn=A({name:`mingcute-photo-album-line`,render:Rn}),Bn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Vn(e,t){return J(),c(`svg`,Bn,[...t[0]||=[k(`g`,{fill:`none`,"fill-rule":`evenodd`},[k(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),k(`path`,{fill:`currentColor`,d:`M18.5 4a1.5 1.5 0 0 0-3 0v.5H4a1.5 1.5 0 1 0 0 3h11.5V8a1.5 1.5 0 0 0 3 0v-.5H20a1.5 1.5 0 0 0 0-3h-1.5zM4 10.5a1.5 1.5 0 0 0 0 3h1.5v.5a1.5 1.5 0 0 0 3 0v-.5H20a1.5 1.5 0 0 0 0-3H8.5V10a1.5 1.5 0 1 0-3 0v.5zM2.5 18A1.5 1.5 0 0 1 4 16.5h11.5V16a1.5 1.5 0 0 1 3 0v.5H20a1.5 1.5 0 0 1 0 3h-1.5v.5a1.5 1.5 0 0 1-3 0v-.5H4A1.5 1.5 0 0 1 2.5 18`})],-1)]])}var Hn=A({name:`mingcute-settings-2-fill`,render:Vn}),Un={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Wn(e,t){return J(),c(`svg`,Un,[...t[0]||=[k(`g`,{fill:`none`,"fill-rule":`evenodd`},[k(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),k(`path`,{fill:`currentColor`,d:`M18 4a1 1 0 1 0-2 0v1H4a1 1 0 0 0 0 2h12v1a1 1 0 1 0 2 0V7h2a1 1 0 1 0 0-2h-2zM4 11a1 1 0 1 0 0 2h2v1a1 1 0 1 0 2 0v-1h12a1 1 0 1 0 0-2H8v-1a1 1 0 0 0-2 0v1zm-1 7a1 1 0 0 1 1-1h12v-1a1 1 0 1 1 2 0v1h2a1 1 0 1 1 0 2h-2v1a1 1 0 1 1-2 0v-1H4a1 1 0 0 1-1-1`})],-1)]])}var Gn=A({name:`mingcute-settings-2-line`,render:Wn}),Kn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function qn(e,t){return J(),c(`svg`,Kn,[...t[0]||=[V(`<g fill="currentColor"><circle cx="5" cy="5" r="1.5"></circle><circle cx="12" cy="5" r="1.5"></circle><circle cx="19" cy="5" r="1.5"></circle><circle cx="5" cy="12" r="1.5"></circle><circle cx="12" cy="12" r="1.5"></circle><circle cx="19" cy="12" r="1.5"></circle><circle cx="5" cy="19" r="1.5"></circle><circle cx="12" cy="19" r="1.5"></circle><circle cx="19" cy="19" r="1.5"></circle></g>`,1)]])}var Jn=A({name:`proicons-grid-dots`,render:qn}),Yn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Xn(e,t){return J(),c(`svg`,Yn,[...t[0]||=[k(`path`,{fill:`currentColor`,"fill-rule":`evenodd`,d:`M3.464 3.464C2 4.93 2 7.286 2 12s0 7.071 1.464 8.535C4.93 22 7.286 22 12 22s7.071 0 8.535-1.465C22 19.072 22 16.714 22 12s0-7.071-1.465-8.536C19.072 2 16.714 2 12 2S4.929 2 3.464 3.464m14.112 7.016a.75.75 0 0 0-1.152-.96l-1.797 2.156c-.37.445-.599.716-.786.885a.8.8 0 0 1-.163.122l-.011.005l-.008-.004l-.003-.001a.8.8 0 0 1-.164-.122c-.187-.17-.415-.44-.786-.885l-.292-.35c-.328-.395-.625-.75-.901-1c-.301-.272-.68-.514-1.18-.514s-.878.242-1.18.514c-.276.25-.572.605-.9 1l-1.83 2.194a.75.75 0 1 0 1.153.96l1.797-2.156c.37-.445.599-.716.786-.885a.8.8 0 0 1 .163-.122l.007-.003l.004-.002l.011.005a.8.8 0 0 1 .164.122c.187.17.415.44.786.885l.292.35c.329.395.625.75.901 1c.301.272.68.514 1.18.514s.878-.242 1.18-.514c.276-.25.572-.605.9-1z`,"clip-rule":`evenodd`},null,-1)]])}var Zn=A({name:`solar-graph-bold`,render:Xn}),Qn={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function $n(e,t){return J(),c(`svg`,Qn,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M17.576 10.48a.75.75 0 0 0-1.152-.96l-1.797 2.156c-.37.445-.599.716-.786.885a.8.8 0 0 1-.163.122l-.011.005l-.011-.005a.8.8 0 0 1-.164-.122c-.187-.17-.415-.44-.786-.885l-.292-.35c-.328-.395-.625-.75-.901-1c-.301-.272-.68-.514-1.18-.514s-.878.242-1.18.514c-.276.25-.572.605-.9 1l-1.83 2.194a.75.75 0 1 0 1.153.96l1.797-2.156c.37-.445.599-.716.786-.885a.8.8 0 0 1 .163-.122l.011-.005l.011.005a.8.8 0 0 1 .164.122c.187.17.415.44.786.885l.292.35c.329.395.625.75.901 1c.301.272.68.514 1.18.514s.878-.242 1.18-.514c.276-.25.572-.605.9-1z`},null,-1),k(`path`,{fill:`currentColor`,"fill-rule":`evenodd`,d:`M11.943 1.25c-2.309 0-4.118 0-5.53.19c-1.444.194-2.584.6-3.479 1.494c-.895.895-1.3 2.035-1.494 3.48c-.19 1.411-.19 3.22-.19 5.529v.114c0 2.309 0 4.118.19 5.53c.194 1.444.6 2.584 1.494 3.479c.895.895 2.035 1.3 3.48 1.494c1.411.19 3.22.19 5.529.19h.114c2.309 0 4.118 0 5.53-.19c1.444-.194 2.584-.6 3.479-1.494c.895-.895 1.3-2.035 1.494-3.48c.19-1.411.19-3.22.19-5.529v-.114c0-2.309 0-4.118-.19-5.53c-.194-1.444-.6-2.584-1.494-3.479c-.895-.895-2.035-1.3-3.48-1.494c-1.411-.19-3.22-.19-5.529-.19zM3.995 3.995c.57-.57 1.34-.897 2.619-1.069c1.3-.174 3.008-.176 5.386-.176s4.086.002 5.386.176c1.279.172 2.05.5 2.62 1.069c.569.57.896 1.34 1.068 2.619c.174 1.3.176 3.008.176 5.386s-.002 4.086-.176 5.386c-.172 1.279-.5 2.05-1.069 2.62c-.57.569-1.34.896-2.619 1.068c-1.3.174-3.008.176-5.386.176s-4.086-.002-5.386-.176c-1.279-.172-2.05-.5-2.62-1.069c-.569-.57-.896-1.34-1.068-2.619c-.174-1.3-.176-3.008-.176-5.386s.002-4.086.176-5.386c.172-1.279.5-2.05 1.069-2.62`,"clip-rule":`evenodd`},null,-1)]])}var er=A({name:`solar-graph-outline`,render:$n}),tr=U({__name:`CuiFloatingButtonGroup`,props:{direction:{default:`vertical`},right:{}},setup(e){let t=e,{bottombarHeight:n}=Me(),{direction:r}=N(t),{y:i}=ae(window,{throttle:100});return(t,a)=>(J(),c(`div`,{class:P([`fixed z-10 flex transition-all duration-200 ease-in-out`,{"right-safe-offset-5":!e.right,"flex-col":G(r)===`vertical`,"flex-row":G(r)===`horizontal`,"scale-0 opacity-0":G(i)>10,"scale-100 opacity-100":G(i)<=10}]),style:K({bottom:`calc(${G(n)}px + 1.25rem + env(safe-area-inset-bottom, 0px))`,right:e.right||void 0})},[f(t.$slots,`default`)],6))}}),nr=[`draggable`],rr={key:0,class:`absolute inset-0 z-2 flex items-center justify-center bg-black/80 pointer-events-none`},ir={class:`w-full h-[60px] p-4 absolute bottom-0 z-3 flex items-center gap-1 justify-between pointer-events-none`},ar={class:`text-xs font-semibold p-2 bg-black/60 rounded-full text-white flex items-center gap-1`},or=300,sr=ke(U({__name:`CuiDraggableCameraCard`,props:{camera:{},noDrag:{type:Boolean},viewTransition:{type:Boolean},findCard:{type:Function},moveCard:{type:Function},snapshotRef:{type:Function}},emits:[`refresh-snapshot`,`open-console`,`open-settings`,`click`],setup(e){let t=e,{x:n,y:r,sourceType:i}=je(),{camera:a,noDrag:o,viewTransition:l}=N(t),u=_(`boxRef`),d=H(),f=H(null),p=s(0),g=s(0),v=s(!1),y=null,b=0,C=j(()=>!o.value),w=j(()=>t.findCard(a.value._id).index),[T,E]=ht(()=>({type:`camera-card`,canDrag(){return C.value},item:()=>(y=null,b=0,{id:a.value._id,originalIndex:w.value}),collect:e=>({isDragging:e.isDragging()}),end:(e,n)=>{let{id:r,originalIndex:i}=e;n.didDrop()||t.moveCard(r,i)}})),[,A]=_t(()=>({accept:`camera-card`,hover({id:e}){if(e!==a.value._id){let n=Date.now();if(y===a.value._id&&n-b<or)return;let{index:r}=t.findCard(a.value._id),{index:i}=t.findCard(e);i!==r&&(y=a.value._id,b=n,t.moveCard(e,r))}}})),F=j(()=>T.value.isDragging),L=j(()=>F.value&&i.value===`touch`);function R(){B(),v.value=!0;let e=u.value?.getBoundingClientRect();e&&(p.value=n.value-e.left,g.value=r.value-e.top,V())}function B(){v.value=!1,U(),p.value=0,g.value=0}function V(){if(U(),!u.value)return;let e=u.value.cloneNode(!0),t=u.value.getBoundingClientRect();e.style.width=`${t.width}px`,e.style.height=`${t.height}px`,e.classList.add(`drag-preview`),document.body.appendChild(e),f.value=e}function U(){f.value&&document.body.contains(f.value)&&document.body.removeChild(f.value),f.value=null}function ee(){!f.value||!v.value||requestAnimationFrame(()=>{if(!f.value)return;let e=n.value-p.value,t=r.value-g.value;f.value.style.left=`${e}px`,f.value.style.top=`${t}px`})}function q(e){d.value=E(A(e))}return S(L,e=>{e?R():B()}),S([n,r],()=>{ee()},{flush:`sync`}),te(()=>{B()}),(t,n)=>{let r=Te,i=Ee,o=ct,s=X,d=qe,f=$e,p=ft,g=Re;return J(),c(`div`,{ref_key:`boxRef`,ref:u,class:`camera-wrapper`},[k(`div`,{ref:q,class:P([`rounded-xl overflow-hidden border-[1px] border-color relative`,{"cursor-move":G(C)&&!G(F)}]),style:K({opacity:+!G(F),viewTransitionName:G(l)?`camera-card-${G(a).name.replace(/[^a-zA-Z0-9-_]/g,`-`)}`:void 0}),draggable:G(C)},[G(a).disabled?(J(),c(`div`,rr,[z(r,{class:`w-8 h-8 text-white/60`})])):x(``,!0),k(`div`,ir,[k(`span`,ar,[W(I(G(a).name)+` `,1),G(a).disabled?(J(),M(r,{key:0,class:`w-3 h-3 text-red-400`})):G(a).detectionSettings?.snooze?(J(),M(i,{key:1,class:`w-3 h-3 text-amber-400`})):x(``,!0)]),G(a).disabled?x(``,!0):(J(),c(m,{key:0},[h((J(),M(s,{severity:`secondary`,rounded:``,class:`dark-mode cui-icon-md pointer-events-auto ml-auto`,onClick:n[0]||=O(e=>t.$emit(`refresh-snapshot`),[`stop`])},{icon:D(()=>[z(o,{width:`100%`,height:`100%`})]),_:1})),[[g,{value:t.$t(`components.player.refresh_snapshot`)},void 0,{top:!0}]]),(`hasPermission`in t?t.hasPermission:G(pt))(void 0,`admin`)?h((J(),M(s,{key:0,severity:`secondary`,rounded:``,class:`dark-mode cui-icon-md pointer-events-auto`,onClick:n[1]||=O(e=>t.$emit(`open-console`),[`stop`])},{icon:D(()=>[z(d,{width:`100%`,height:`100%`})]),_:1})),[[g,{value:t.$t(`components.player.log`)},void 0,{top:!0}]]):x(``,!0)],64)),(`hasPermission`in t?t.hasPermission:G(pt))(void 0,`admin`)?h((J(),M(s,{key:1,rounded:``,severity:`secondary`,class:P([`dark-mode cui-icon-md pointer-events-auto`,{"ml-auto":G(a).disabled}]),onClick:n[2]||=O(e=>t.$emit(`open-settings`),[`stop`])},{icon:D(()=>[z(f,{width:`100%`,height:`100%`})]),_:1},8,[`class`])),[[g,{value:t.$t(`components.player.settings`)},void 0,{top:!0}]]):x(``,!0)]),z(p,{ref:e.snapshotRef,camera:G(a),class:`cursor-pointer`,onClick:n[3]||=e=>t.$emit(`click`)},null,8,[`camera`])],14,nr)],512)}}}),[[`__scopeId`,`data-v-b7360c58`]]),cr={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function lr(e,t){return J(),c(`svg`,cr,[...t[0]||=[k(`path`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M12 5v14m-7-7h14`},null,-1)]])}var ur=A({name:`tabler-plus`,render:lr}),dr={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function fr(e,t){return J(),c(`svg`,dr,[...t[0]||=[k(`path`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`m15 6l-6 6l6 6`},null,-1)]])}var pr=A({name:`tabler-chevron-left`,render:fr}),mr={class:`bg-neutral-900 w-[140px] h-[140px] rounded-xl overflow-hidden relative`},hr={key:2,class:`w-full h-full flex items-center justify-center bg-neutral-800/80`},gr={key:4,class:`absolute inset-0 z-[3] flex items-center justify-center pointer-events-none`},_r={key:5,class:`absolute top-1.5 left-1.5 z-[3] flex items-center gap-1`},vr={key:6,class:`absolute inset-0 bg-black/0 group-hover:bg-black/30 transition-colors duration-200 flex flex-col items-center justify-end pb-2 gap-1 z-[2] pointer-events-none`},yr={class:`flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200`},br={key:0,class:`text-[10px] text-white/50 font-medium truncate max-w-[100px]`},xr={class:`text-xs text-white font-medium opacity-0 group-hover:opacity-100 transition-opacity duration-200 truncate max-w-[130px] px-1`},Sr={class:`mt-2 text-center`},Cr={class:`text-xs text-muted`},wr=1e4,Tr=ke(U({__name:`CameraEvent`,props:{event:{},cameraName:{},camera:{},loadThumbnails:{type:Function},clickDisabled:{type:Boolean}},setup(e){let t=e,n=Ct(),r=F(ye,void 0),i=_(`previewCanvasRef`),a=_(`cardRef`),o=s(!1),u=s(void 0),f=s(void 0),p=s(ue(t.event)),m=s(`loading`),v,y=!1,{icons:b,generic:C}=st(),T=j(()=>b[p.value]??C),E=j(()=>new Date(t.event.startTime).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`})),D=j(()=>t.event.state===`active`),O=j(()=>!D.value&&t.event.segments?.some(e=>e?.description)),A=j(()=>t.event.segments?.find(e=>e?.description)?.description?.title);function N(){if(!r||!t.event.endTime)return;let e=i.value;e&&(o.value=!0,r.onHoverStart(e,t.event.cameraId,t.event.id,t.event.startTime,t.event.endTime))}function P(){r&&(o.value=!1,r.onHoverEnd())}async function L(e=2){let n=await t.loadThumbnails(t.event.id,t.event.startTime);if(n){let e=fe(n,t.event);if(e.url){u.value=e.url,f.value=e.label,p.value=e.type,m.value=`loaded`;return}}if(e>0)return await new Promise(e=>setTimeout(e,500)),L(e-1);m.value=`empty`}function R(){if(t.clickDisabled||!t.camera)return;let e=D.value&&Date.now()-t.event.startTime<wr,r=t.event.segments?.find(e=>e?.description)?.description,i=[{icon:yt,toggle:!0,onClick:()=>{}}];v=n.openComponentDialog(nt,{data:{title:t.camera.name,stayActive:!0,hideCancelButton:!0,hideConfirmButton:!0,contentProps:{camera:t.camera,eventTimestamp:e?void 0:t.event.startTime},headerActions:r?i:void 0,draggable:!0,blockDragOnSelectors:[`.p-dialog-body`],dismissableMask:!1,modal:!1,dialogContentClass:`!px-0 h-full`,goTo:`/cameras/${t.camera.name}${e?``:`?startTs=${t.event.startTime}`}`},dialogSize:{desktop:{maxWidth:`800px`,maxHeight:`calc(100vh - max(1rem, env(safe-area-inset-top, 0px)) - max(1rem, env(safe-area-inset-bottom, 0px)))`,width:`50vw`}}})}let{stop:B}=ie(a,([e])=>{e.isIntersecting&&!y&&(y=!0,B(),L())},{threshold:.1});return S(()=>t.event.state,(e,t)=>{t===`active`&&e===`ended`&&L()}),S(()=>t.event.lastUpdate,()=>{D.value&&y&&L()}),w(()=>{requestAnimationFrame(()=>{if(!y&&a.value){let e=a.value.getBoundingClientRect();e.right>0&&e.left<window.innerWidth&&e.bottom>0&&e.top<window.innerHeight&&(y=!0,B(),L())}})}),d(()=>{B(),v?.close()}),(e,n)=>{let s=at,d=ge,p=He,_=Y;return J(),c(`div`,{ref_key:`cardRef`,ref:a,class:`camera-event-card relative group cursor-pointer`,onClick:R,onMouseenter:N,onMouseleave:P},[G(A)?(J(),M(s,{key:0})):x(``,!0),k(`div`,mr,[G(m)===`loading`?(J(),M(d,{key:0,class:`w-full h-full rounded-xl`,width:`140px`,height:`140px`})):G(u)?(J(),M(p,{key:1,src:G(u),alt:t.cameraName,class:`pointer-events-none w-full h-full transition-transform duration-300 group-hover:scale-105`,"image-style":{objectFit:`cover`},width:`140px`,height:`140px`,"image-container-class":`w-full h-full`},null,8,[`src`,`alt`])):(J(),c(`div`,hr,[(J(),M(l(G(T)),{class:`w-8 h-8 text-white/20`}))])),G(r)?h((J(),c(`canvas`,{key:3,ref_key:`previewCanvasRef`,ref:i,class:`absolute inset-0 w-full h-full object-cover pointer-events-none z-[1]`},null,512)),[[g,G(o)]]):x(``,!0),G(r)&&G(o)&&G(r).isLoading.value&&!G(O)?(J(),c(`div`,gr,[z(_,{class:`w-[24px] h-[24px] m-0`,"stroke-width":`3`})])):x(``,!0),G(D)?(J(),c(`div`,_r,[...n[0]||=[k(`span`,{class:`relative flex h-2.5 w-2.5`},[k(`span`,{class:`animate-ping absolute inline-flex h-full w-full rounded-full bg-green-400 opacity-75`}),k(`span`,{class:`relative inline-flex rounded-full h-2.5 w-2.5 bg-green-500`})],-1)]])):x(``,!0),G(u)?(J(),c(`div`,vr,[k(`div`,yr,[(J(),M(l(G(T)),{class:`w-3.5 h-3.5 text-white/50`})),G(f)?(J(),c(`span`,br,I(G(f)),1)):x(``,!0)]),k(`span`,xr,I(t.cameraName),1)])):x(``,!0)]),k(`div`,Sr,[k(`p`,Cr,I(G(E)),1)])],544)}}}),[[`__scopeId`,`data-v-9b0b497e`]]),Er={key:0,class:`absolute top-[50px] left-[50%] translate-x-[-50%] z-2 px-3 py-2 text-shadow-md`},Dr={class:`text-sm text-color font-medium`},Q=152,Or=172,kr=5,Ar=U({__name:`CuiCameraEvents`,props:{cameras:{}},setup(e){let t=e,{isTouch:n}=Ne();if(!n.value&&typeof VideoDecoder<`u`){let e=ce({cacheSize:20});E(ye,e),se(()=>e.dispose())}let r,{cameras:i}=N(t),a=_(`containerRef`),o=_(`scrollContainerRef`),l=s(!0),u=s(!1),d=s({left:0,right:0}),f=s(0),{width:h}=xe(a),g=j(()=>{let e=new Map;if(i.value)for(let t of i.value)e.set(t._id,t.name);return e}),v=j(()=>{let e=new Map;if(i.value)for(let t of i.value)e.set(t._id,t);return e}),{events:y,isLoading:b,hasMore:T,loadMore:O,loadThumbnails:A}=he({availableCameraIds:j(()=>i.value?.map(e=>e._id)??[]),realtime:!0,pageSize:j(()=>{let e=h.value||800;return Math.ceil(e/Q)+10}).value,filter:{hasDetections:!0}}),{start:F}=le(()=>{u.value=!1},100,{immediate:!1}),R=j(()=>y.value),B=j(()=>Math.ceil((h.value||800)/Q)),V=j(()=>R.value.length<B.value&&T.value),H=j(()=>!b.value&&R.value.length===0&&!T.value),U=j(()=>R.value.length===0?15:5),W=j(()=>{let{left:e}=d.value;return{left:`${-e}px`,width:`100dvw`,paddingLeft:`${e}px`}}),ee=j(()=>{let e=d.value.left+50,t=Math.min(Math.round(45/e*100),100),n=Math.min(Math.round(58/e*100),100);return{top:`-10px`,height:`calc(100% + 20px)`,left:`${-d.value.left}px`,width:`${e}px`,background:`linear-gradient(270deg, transparent 0%, rgba(var(--ground-background-val), 0.8) ${t}%, rgba(var(--ground-background-val), 0.9) ${n}%, rgba(var(--ground-background-val), 0.95) 100%)`}}),q=j(()=>Math.max(0,Math.floor(f.value/Q)-kr)),te=j(()=>{let e=B.value;return Math.min(R.value.length,Math.ceil(f.value/Q)+e+kr)}),ne=j(()=>R.value.slice(q.value,te.value)),re=j(()=>q.value*Q);function Y(){let e=a.value;if(!e)return;let t=e.getBoundingClientRect();d.value={left:t.left,right:window.innerWidth-t.right}}function ie(){let e=o.value;e&&(f.value=0,L(()=>{e.scrollTo({left:0,behavior:`smooth`})}))}function ae(){let e=o.value;e&&(f.value=e.scrollLeft,l.value=e.scrollLeft<5)}function oe(){de(o,{disableTextSelect:!0,threshold:10,onSwipe:e=>{R.value.length===0&&(b.value||V.value||H.value)||(u.value=!0,o.value?.classList.add(`cursor-grabbing`),o.value?.scrollBy({left:-e.movementX,behavior:`smooth`}))},onSwipeEnd:()=>{o.value?.classList.remove(`cursor-grabbing`),F()}})}return be(window,`resize`,Y),be(o,`scroll`,ae,{passive:!0}),be(o,`wheel`,e=>{R.value.length===0&&(b.value||V.value||H.value)||Math.abs(e.deltaY)>Math.abs(e.deltaX)&&(e.preventDefault(),o.value?.scrollBy({left:e.deltaY}))},{passive:!1}),me(o,O,{distance:300,direction:`right`,canLoadMore:()=>T.value}),S(h,()=>Y()),S(()=>R.value[0]?.id,e=>{if(!e||e===r)return;let t=r===void 0;if(r=e,t)return;let n=o.value,i=n?.scrollLeft||0;L(i<5?()=>{o.value?.scrollTo({left:0,behavior:`smooth`})}:()=>{n&&(n.scrollLeft=i+Q)})}),S([V,()=>b.value],([e,t])=>{e&&!t&&O()}),w(()=>{Y();let e=document.getElementById(`container`);e&&be(e,`transitionend`,Y),n.value||oe()}),(e,t)=>{let n=ge,r=Tr,i=pr,s=X;return J(),c(`div`,{ref_key:`containerRef`,ref:a,class:`relative min-w-0`,style:K({height:`${Or}px`})},[k(`div`,{ref_key:`scrollContainerRef`,ref:o,class:P([`absolute top-0 overflow-x-auto overflow-y-hidden hide-scrollbar overscroll-x-contain`,{"overflow-x-hidden!":G(R).length===0&&(G(b)||G(V)||G(H))}]),style:K(G(W))},[k(`div`,{class:`relative`,style:K({width:`${G(R).length*Q}px`,height:`${Or}px`})},[k(`div`,{class:`absolute top-0 left-0 flex`,style:K({transform:`translateX(${G(re)}px)`})},[G(R).length===0&&(G(b)||G(V)||G(H))?(J(!0),c(m,{key:0},p(G(U),e=>(J(),c(`div`,{key:`skeleton-${e}`,class:`event-card flex flex-col items-center justify-center w-[140px] mr-3`},[z(n,{class:`rounded-xl`,width:`140px`,height:`140px`,animation:G(H)?`none`:`wave`},null,8,[`animation`]),z(n,{class:`mt-2`,width:`50px`,height:`16px`,animation:G(H)?`none`:`wave`},null,8,[`animation`])]))),128)):(J(!0),c(m,{key:1},p(G(ne),e=>(J(),c(`div`,{key:e.id,class:`event-card flex-none w-[140px] mr-3`},[z(r,{event:e,"camera-name":G(g).get(e.cameraId),camera:G(v).get(e.cameraId),"load-thumbnails":G(A),"click-disabled":G(u)},null,8,[`event`,`camera-name`,`camera`,`load-thumbnails`,`click-disabled`])]))),128))],4)],4)],6),G(H)&&!G(b)&&!G(V)?(J(),c(`div`,Er,[k(`span`,Dr,I(e.$t(`components.camera_events.no_events`)),1)])):x(``,!0),!G(l)&&G(d).left>0?(J(),c(`div`,{key:1,class:`absolute pointer-events-none z-1`,style:K(G(ee))},null,4)):x(``,!0),z(C,{name:`fade-2`},{default:D(()=>[!G(l)&&G(R).length>0?(J(),M(s,{key:0,rounded:``,severity:`secondary`,class:`absolute left-1 cui-icon-md shadow-md z-2 opacity-70 hover:opacity-100 transition-opacity`,style:{top:`70px`,transform:`translateY(-50%)`},onClick:ie},{icon:D(()=>[z(i,{width:`100%`,height:`100%`})]),_:1})):x(``,!0)]),_:1})],4)}}}),jr={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Mr(e,t){return J(),c(`svg`,jr,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M18 8a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V10a2 2 0 0 1 2-2h9V6a3 3 0 0 0-3-3a3 3 0 0 0-3 3H7a5 5 0 0 1 5-5a5 5 0 0 1 5 5v2zm-6 9a2 2 0 0 0 2-2a2 2 0 0 0-2-2a2 2 0 0 0-2 2a2 2 0 0 0 2 2`},null,-1)]])}var Nr=A({name:`mdi-lock-open`,render:Mr}),Pr={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function Fr(e,t){return J(),c(`svg`,Pr,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M21 3H3c-.6 0-1 .4-1 1v6c0 .6.4 1 1 1h18c.6 0 1-.4 1-1V4c0-.6-.4-1-1-1m0 10H3c-.6 0-1 .4-1 1v6c0 .6.4 1 1 1h18c.6 0 1-.4 1-1v-6c0-.6-.4-1-1-1`},null,-1)]])}var Ir=A({name:`mdi-view-agenda`,render:Fr}),Lr={class:`flex flex-col`},Rr={class:`flex flex-row items-center justify-center gap-2`},zr={key:0,class:`events-section mb-4`},Br={key:0,class:`page-title mb-2`},Vr={class:`flex flex-col flex-1 overflow-x-hidden`},Hr={key:0,class:`page-title`},Ur={class:`flex flex-1 min-h-0 flex-col items-center justify-center w-full gap-4 py-16`,key:`no-cameras`},Wr={class:`w-16 h-16 rounded-full bg-primary-500/10 flex items-center justify-center`},Gr={class:`flex flex-col items-center gap-1 max-w-[400px] text-center`},Kr={class:`text-color font-semibold text-base`},qr={class:`text-muted text-sm`},Jr={key:`defaultView`},Yr={key:`groupedView`,class:`flex flex-col gap-6`},Xr={class:`text-sm font-semibold text-muted uppercase tracking-wide mb-2`},Zr=ke(U({__name:`Home`,setup(e){let t=St(()=>B(()=>import(`./CameraConsole-Dp7Mgugu.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]))),n=new bt,r=xt(),i=Ct(),{t:o}=_e(),{smBreakpoint:s}=Pe(),{isTouch:l}=Ne(),{width:u,height:d}=Ae(),{uiSettings:f}=Se(Fe()),{data:h,isLoading:g}=n.getCamerasQuery({page:1,pageSize:-1}),_=H({}),v=j(()=>g.value),y=j(()=>pt(void 0,`admin`)),S=j(()=>l.value?vt:gt),w=j(()=>f.value.cameras.viewMode??`default`),T=j(()=>`repeat(auto-fill, minmax(${s.value?`100%`:`300px`}, 1fr))`),E=j(()=>{let e=T.value;return A.value.length<2?`${e} 50%`:e}),O=j(()=>{let e=s.value?1:Math.max(1,Math.floor(u.value/300)),t=u.value/e*9/16+8;return e*Math.max(1,Math.ceil(d.value/t))}),A=j(()=>h.value?.result?P(h.value.result,f.value.cameras.order||[]):[]),N=j(()=>{if(!h.value?.result)return[];let e=f.value.cameras.groupOrder||{},t=new Map;for(let e of h.value.result){let n=e.room||`Default`;t.has(n)||t.set(n,[]),t.get(n).push(e)}let n=[];for(let[r,i]of t){let t=e[r]||[];n.push({room:r,cameras:P(i,t)})}return n.sort((e,t)=>e.room===`Default`?-1:t.room===`Default`?1:e.room.localeCompare(t.room)),n});function P(e,t){return[...e].sort((e,n)=>{let r=t.indexOf(e._id),i=t.indexOf(n._id);return r!==-1&&i!==-1?r-i:r===-1?i===-1?e.name.localeCompare(n.name):1:-1})}function F(){f.value.cameras.viewMode=w.value==="default"?`grouped`:`default`}function L(e){let t=A.value.find(t=>t._id===e);return{camera:t,index:t?A.value.indexOf(t):-1}}function R(e,t){let{index:n}=L(e);if(n===-1||n===t)return;let r=A.value.map(e=>e._id),[i]=r.splice(n,1);r.splice(t,0,i),f.value.cameras.order=r}function V(e,t){let n=N.value.find(t=>t.room===e);if(!n)return{camera:void 0,index:-1};let r=n.cameras.find(e=>e._id===t);return{camera:r,index:r?n.cameras.indexOf(r):-1}}function U(e,t,n){let{index:r}=V(e,t);if(r===-1||r===n)return;let i=N.value.find(t=>t.room===e);if(!i)return;let a=i.cameras.map(e=>e._id),[o]=a.splice(r,1);a.splice(n,0,o);let s={...f.value.cameras.groupOrder||{}};s[e]=a,f.value.cameras.groupOrder=s}function W(e){i.openComponentDialog(t,{data:{title:o(`components.dialog.title.log`),confirmText:o(`components.form.button.download`),loading:v,stayActive:!0,contentProps:{cameraName:e},dialogContentClass:`not-md:px-0 h-full md:h-[50vh]`}})}return(e,t)=>{let n=wt,i=Ar,o=ge,l=Ke,u=ur,d=X,g=sr,j=dt,P=tr;return J(),c(`div`,Lr,[z(n,{position:`center`},{default:D(()=>[k(`div`,Rr,[z(G(b),{src:G(a)(`logo_animated.svg`),width:`18px`,height:`18px`,title:`camera.ui`,"aria-label":`camera.ui`},null,8,[`src`]),t[2]||=k(`span`,{class:`font-semibold text-xl truncate`},`camera.ui`,-1)])]),_:1}),G(f).cameras.showEvents&&(G(v)||G(A).length)?(J(),c(`div`,zr,[G(s)?x(``,!0):(J(),c(`h1`,Br,I(e.$t(`components.camera_events.title`)),1)),z(i,{cameras:G(h)?.result},null,8,[`cameras`])])):x(``,!0),k(`div`,Vr,[G(v)||G(A).length?(J(),c(`h1`,Hr,I(e.$t(`views.cameras.title`)),1)):x(``,!0),z(C,{name:`fade-2`,mode:`out-in`},{default:D(()=>[G(v)?(J(),c(`div`,{key:`loading`,class:`grid w-full gap-2`,style:K({gridTemplateColumns:G(T)})},[(J(!0),c(m,null,p(G(O),e=>(J(),M(o,{key:e,class:`aspect-video !h-auto cui-card`}))),128))],4)):G(A).length?G(w)==="default"?(J(),c(`div`,Jr,[k(`div`,{class:`grid w-full gap-1`,style:K({gridTemplateColumns:G(E)})},[z(G(mt),{backend:G(S)},{default:D(()=>[z(re,{name:`list`},{default:D(()=>[(J(!0),c(m,null,p(G(A),t=>(J(),M(g,{key:t._id,camera:t,"find-card":L,"move-card":R,"no-drag":G(f).cameras.dragDisabled,"snapshot-ref":e=>G(_)[t.name]=e,class:`shadow-lg rounded-xl transition-transform`,"view-transition":``,onRefreshSnapshot:e=>G(_)[t.name]?.refresh(),onOpenConsole:e=>W(t.name),onOpenSettings:e=>G(r).open({cameraName:t.name}),onClick:n=>e.$router.push(`/cameras/${t.name}`)},null,8,[`camera`,`no-drag`,`snapshot-ref`,`onRefreshSnapshot`,`onOpenConsole`,`onOpenSettings`,`onClick`]))),128))]),_:1})]),_:1},8,[`backend`])],4)])):(J(),c(`div`,Yr,[(J(!0),c(m,null,p(G(N),t=>(J(),c(`div`,{key:t.room},[k(`h2`,Xr,I(t.room===`Default`?e.$t(`components.form.label.room_default`):t.room),1),k(`div`,{class:`grid w-full gap-1`,style:K({gridTemplateColumns:G(E)})},[z(G(mt),{backend:G(S)},{default:D(()=>[z(re,{name:`list`},{default:D(()=>[(J(!0),c(m,null,p(t.cameras,n=>(J(),M(g,{key:n._id,camera:n,"find-card":e=>V(t.room,e),"move-card":(e,n)=>U(t.room,e,n),"no-drag":G(f).cameras.dragDisabled,"snapshot-ref":e=>G(_)[n.name]=e,class:`shadow-lg rounded-xl transition-transform`,"view-transition":``,onRefreshSnapshot:e=>G(_)[n.name]?.refresh(),onOpenConsole:e=>W(n.name),onOpenSettings:e=>G(r).open({cameraName:n.name}),onClick:t=>e.$router.push(`/cameras/${n.name}`)},null,8,[`camera`,`find-card`,`move-card`,`no-drag`,`snapshot-ref`,`onRefreshSnapshot`,`onOpenConsole`,`onOpenSettings`,`onClick`]))),128))]),_:2},1024)]),_:2},1032,[`backend`])],4)]))),128))])):(J(),c(`div`,Ur,[k(`div`,Wr,[z(l,{class:`w-8 h-8 text-primary-500`})]),k(`div`,Gr,[k(`span`,Kr,I(e.$t(`views.cameras.no_cameras`)),1),k(`span`,qr,I(e.$t(`views.cameras.no_cameras_hint`)),1)]),G(y)?(J(),M(d,{key:0,class:`cui-button-medium mt-2`,label:e.$t(`views.cameras.get_started`),onClick:t[0]||=t=>e.$router.push(`/cameras`)},{icon:D(()=>[z(u,{class:`w-4 h-4`})]),_:1},8,[`label`])):x(``,!0)]))]),_:1})]),G(A).length>1?(J(),M(P,{key:1},{default:D(()=>[z(j,{grouped:``,"tooltip-props":{value:G(w)==="default"?e.$t(`components.form.tooltip.view_grouped`):e.$t(`components.form.tooltip.view_default`)},"button-props":{severity:G(w)==="default"?`secondary`:`primary`},icon:G(w)==="default"?G(it):G(Ir),"icon-props":{width:`100%`,height:`100%`},onClick:F},null,8,[`tooltip-props`,`button-props`,`icon`]),z(j,{grouped:``,"tooltip-props":{value:G(f).cameras.dragDisabled?e.$t(`components.form.tooltip.enable_drag`):e.$t(`components.form.tooltip.disable_drag`)},"button-props":{severity:G(f).cameras.dragDisabled?`secondary`:`success`},icon:G(f).cameras.dragDisabled?G(Oe):G(Nr),"icon-props":{width:`100%`,height:`100%`},onClick:t[1]||=e=>G(f).cameras.dragDisabled=!G(f).cameras.dragDisabled},null,8,[`tooltip-props`,`button-props`,`icon`])]),_:1})):x(``,!0)])}}}),[[`__scopeId`,`data-v-6e795f3f`]]),Qr={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function $r(e,t){return J(),c(`svg`,Qr,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M20 11v2H8l5.5 5.5l-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5L8 11z`},null,-1)]])}var ei=A({name:`mdi-arrow-left`,render:$r}),ti={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function ni(e,t){return J(),c(`svg`,ti,[...t[0]||=[k(`path`,{fill:`currentColor`,d:`M19.27 5.33C17.94 4.71 16.5 4.26 15 4a.1.1 0 0 0-.07.03c-.18.33-.39.76-.53 1.09a16.1 16.1 0 0 0-4.8 0c-.14-.34-.35-.76-.54-1.09c-.01-.02-.04-.03-.07-.03c-1.5.26-2.93.71-4.27 1.33c-.01 0-.02.01-.03.02c-2.72 4.07-3.47 8.03-3.1 11.95c0 .02.01.04.03.05c1.8 1.32 3.53 2.12 5.24 2.65c.03.01.06 0 .07-.02c.4-.55.76-1.13 1.07-1.74c.02-.04 0-.08-.04-.09c-.57-.22-1.11-.48-1.64-.78c-.04-.02-.04-.08-.01-.11c.11-.08.22-.17.33-.25c.02-.02.05-.02.07-.01c3.44 1.57 7.15 1.57 10.55 0c.02-.01.05-.01.07.01c.11.09.22.17.33.26c.04.03.04.09-.01.11c-.52.31-1.07.56-1.64.78c-.04.01-.05.06-.04.09c.32.61.68 1.19 1.07 1.74c.03.01.06.02.09.01c1.72-.53 3.45-1.33 5.25-2.65c.02-.01.03-.03.03-.05c.44-4.53-.73-8.46-3.1-11.95c-.01-.01-.02-.02-.04-.02M8.52 14.91c-1.03 0-1.89-.95-1.89-2.12s.84-2.12 1.89-2.12c1.06 0 1.9.96 1.89 2.12c0 1.17-.84 2.12-1.89 2.12m6.97 0c-1.03 0-1.89-.95-1.89-2.12s.84-2.12 1.89-2.12c1.06 0 1.9.96 1.89 2.12c0 1.17-.83 2.12-1.89 2.12`},null,-1)]])}var ri=A({name:`ic-baseline-discord`,render:ni}),ii={class:`flex justify-center items-center draggable-region`},ai={class:`card-background border-color relative w-full sm:w-[400px] sm:rounded-2xl sm:border-[1px] shadow-none sm:shadow-xl h-full sm:h-auto sm:my-4`},oi={class:`flex flex-col h-full p-10 non-draggable-region`},si={class:`flex flex-col items-center justify-center mb-10`},ci={class:`flex justify-between items-center`},li={class:`flex items-center gap-1 ml-auto`},ui=U({__name:`CuiAuthCard`,props:{logoUrl:{}},setup(e){return(t,n)=>{let r=ze,i=ut,a=X,o=ri;return J(),c(`div`,ii,[k(`div`,ai,[k(`div`,oi,[k(`div`,si,[z(G(b),{src:e.logoUrl,height:`60px`,title:`camera.ui`,"aria-label":`camera.ui`,class:`hover:scale-105 active:scale-105 focus:scale-105 transition-all`},null,8,[`src`]),n[2]||=k(`span`,{class:`text-2xl ml-3 mt-2 font-bold text-color`},`camera.ui`,-1)]),f(t.$slots,`default`),z(r,{class:`mt-15`}),k(`div`,ci,[f(t.$slots,`footer-left`),k(`div`,li,[z(a,{severity:`secondary`,class:`cui-icon-md`,text:``,rounded:``,onClick:n[0]||=e=>t.$router.absUrl(`https://github.com/seydx/camera.ui`,!0)},{icon:D(()=>[z(i,{class:`text-muted`,width:`100%`,height:`100%`})]),_:1}),z(a,{severity:`secondary`,class:`cui-icon-md`,text:``,rounded:``,onClick:n[1]||=e=>t.$router.absUrl(`https://discord.gg/camera.ui`,!0)},{icon:D(()=>[z(o,{class:`text-muted`,width:`100%`,height:`100%`})]),_:1})])])]),n[3]||=k(`div`,{class:`bg-primary-500 opacity-0 sm:opacity-100 absolute blur-[20px] w-[200px] h-[30px] left-[50%] -translate-x-[50%] bottom-[25px] -z-1`},null,-1)])])}}}),di=`cui_device_id`,fi=null,pi=null;async function mi(){if(fi)return fi;let e=localStorage.getItem(di);if(e)return fi=e,e;let t=crypto.randomUUID();return localStorage.setItem(di,t),fi=t,t}async function hi(){return pi||(pi=gi(navigator.userAgent),pi)}function gi(e){let t=/Edg\//.test(e)?`Edge`:/OPR\//.test(e)||/Opera/.test(e)?`Opera`:/Firefox\//.test(e)?`Firefox`:/Chrome\//.test(e)&&!/Chromium/.test(e)?`Chrome`:/Safari\//.test(e)&&!/Chrome\//.test(e)?`Safari`:`Browser`,n=/Windows NT/.test(e)?`Windows`:/Mac OS X/.test(e)?`macOS`:/Android/.test(e)?`Android`:/iPhone|iPad|iPod/.test(e)?`iOS`:/Linux/.test(e)?`Linux`:``;return n?`${t} on ${n}`:t}var _i={key:`connecting`,class:`flex flex-col items-center justify-center h-full gap-4`},vi={class:`text-muted text-sm text-center`},yi={class:`flex flex-col gap-10 sm:gap-6 w-full mt-10 sm:mt-0`},bi={for:`username`,class:`cui-label`},xi={for:`password`,class:`cui-label`},Si={class:`flex flex-col gap-6 mt-10`},Ci={class:`flex items-center field-checkbox-gap`},wi={for:`rememberMe`,class:`cui-label-checkbox`},Ti={key:`2fa`,class:`flex flex-col h-full`},Ei={class:`flex flex-col items-center text-center mt-10 sm:mt-0`},Di={class:`text-lg font-semibold mb-2`},Oi={class:`text-muted text-sm`},ki={class:`flex flex-col items-center mt-10`},Ai={class:`mt-4 text-xs text-muted text-center`},ji={class:`flex flex-col gap-3 mt-auto pt-10`},Mi=ke(U({__name:`Login`,setup(l){let d=t();Ct();let{t:f}=_e(),p=o(),m=n(),{isNeedsAuth:g,isOnline:y,inTrouble:b}=m,S=i(),{loginLoading:E,requires2FA:O}=Se(S),A=Ge(),N=_(`formRef`),P=s(``),F=s(``),L=s(!1),B=s(``),V=s(!1),H=s(!1);s(!1);let U=j(()=>!A.isHomeActive||A.redirectInfo!==null),K=j(()=>p===`cloud`&&A.isHomeActive),te=j(()=>!y.value&&!g.value&&!E.value&&!O.value),ne=j(()=>b.value?f(`connection.unreachable`):f(`connection.connecting_remote`)),re=j(()=>!1);function ie(){m.retry()}function ae(){if(A.redirectInfo){let e=A.redirectInfo.sourceUrl;A.redirectInfo=null,window.location.href=e;return}A.switchInstance(null)}async function se(e){try{let[t,n]=await Promise.all([mi(),hi()]);return await S.login({username:e.username,password:e.password,kind:`web`,persistent:L.value,device:{id:t,name:n}}),!0}catch(e){return d.add({severity:`error`,detail:e,life:3e3}),!1}}async function ce(){await se({username:P.value,password:F.value})&&await de({username:P.value,password:F.value})}async function le(){let e=await ue();if(e){V.value=!0;try{let t=await Tt(e,f(`views.login.biometric_reason`));if(!t)return;P.value=t.username,F.value=t.password,await se(t)||(await Et(e),H.value=!1)}finally{V.value=!1}}}async function ue(){return null}async function de(e){}async function fe(){window.location.href=e}async function pe(){if(!(B.value.length<6))try{await S.verify2FA(B.value)}catch(e){d.add({severity:`error`,detail:r(e)??f(`views.login.2fa_invalid_code`),life:3e3}),B.value=``}}function me(){S.cancel2FA(),B.value=``}return w(async()=>{}),(e,t)=>{let n=ei,r=X,i=Ie,o=Y,s=ve,l=Be,d=Le,f=Z,p=Ve,m=oe;return J(),M(ui,{"logo-url":G(a)(`logo_animated.svg`)},ee({default:D(()=>[z(C,{name:`slide-fade`,mode:`out-in`},{default:D(()=>[G(te)?(J(),c(`div`,_i,[z(o,{"stroke-width":`4`,class:`!w-12 !h-12`}),k(`p`,vi,I(G(ne)),1),G(b)?(J(),M(r,{key:0,size:`small`,severity:`secondary`,label:e.$t(`connection.retry`),onClick:ie},null,8,[`label`])):x(``,!0)])):G(O)?h((J(),c(`div`,Ti,[k(`div`,Ei,[k(`h2`,Di,I(e.$t(`views.login.2fa_title`)),1),k(`p`,Oi,I(e.$t(`views.login.2fa_description`)),1)]),k(`div`,ki,[z(p,{modelValue:G(B),"onUpdate:modelValue":t[3]||=e=>v(B)?B.value=e:null,length:6,"integer-only":``,size:`large`,onComplete:pe},null,8,[`modelValue`]),k(`p`,Ai,I(e.$t(`views.login.2fa_backup_hint`)),1)]),k(`div`,ji,[z(r,{class:`text-white font-semibold cui-button-large`,loading:G(E),disabled:G(B).length<6,label:e.$t(`views.login.2fa_verify`),fluid:``,onClick:pe},null,8,[`loading`,`disabled`,`label`]),z(r,{severity:`secondary`,class:`cui-button-large`,text:``,label:e.$t(`components.form.button.cancel`),fluid:``,onClick:me},null,8,[`label`])])])),[[m]]):(J(),M(G(T),{key:`login`,ref_key:`formRef`,ref:N,"validation-schema":G(Dt),class:`flex flex-col h-full`,onSubmit:ce},{default:D(()=>[k(`div`,yi,[z(G(q),{modelValue:G(P),"onUpdate:modelValue":t[0]||=e=>v(P)?P.value=e:null,modelModifiers:{trim:!0},name:`username`,as:`div`,class:`flex flex-col field-gap`},{default:D(({field:t,errors:n})=>[k(`label`,bi,I(e.$t(`components.form.label.username`)),1),z(s,R({invalid:n.length>0,type:`text`,size:`large`,loading:G(E),fluid:``},t),null,16,[`invalid`,`loading`]),z(C,{name:`fade`},{default:D(()=>[z(G(u),{name:`username`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`]),z(G(q),{modelValue:G(F),"onUpdate:modelValue":t[1]||=e=>v(F)?F.value=e:null,name:`password`,as:`div`,class:`flex flex-col field-gap`},{default:D(({field:t,errors:n})=>[k(`label`,xi,I(e.$t(`components.form.label.password`)),1),z(l,R({invalid:n.length>0,size:`large`,loading:G(E),feedback:!1,"toggle-mask":``,fluid:``},t),null,16,[`invalid`,`loading`]),z(C,{name:`fade`},{default:D(()=>[z(G(u),{name:`password`,class:`cui-input-error`})]),_:1})]),_:1},8,[`modelValue`])]),k(`div`,Si,[G(!1)?x(``,!0):(J(),M(G(q),{key:0,"model-value":G(L),name:`rememberMe`,type:`checkbox`,"checked-value":!0,"unchecked-value":!1,as:`div`,class:`flex flex-col field-gap`},{default:D(({field:n,errors:r})=>[k(`div`,Ci,[z(d,R({"model-value":G(L)},n,{invalid:r.length>0,class:`mr-2`,binary:``,loading:G(E),onValueChange:t[2]||=e=>L.value=e}),null,16,[`model-value`,`invalid`,`loading`]),k(`label`,wi,I(e.$t(`components.form.label.remember_me`)),1)]),z(C,{name:`fade`},{default:D(()=>[z(G(u),{name:`rememberMe`,class:`cui-input-checkbox-error`})]),_:1})]),_:1},8,[`model-value`])),z(r,{type:`submit`,class:`text-white font-semibold cui-button-large`,loading:G(E),label:e.$t(`components.form.button.login`),fluid:``},null,8,[`loading`,`label`]),G(re)?(J(),M(r,{key:1,type:`button`,severity:`secondary`,class:`cui-button-large`,text:``,loading:G(V),label:e.$t(`components.form.button.biometric_login`),fluid:``,onClick:le},{icon:D(()=>[z(f,{class:`w-5 h-5 mr-2`})]),_:1},8,[`loading`,`label`])):x(``,!0)])]),_:1},8,[`validation-schema`]))]),_:1})]),_:2},[G(U)||G(K)?{name:`footer-left`,fn:D(()=>[G(U)?(J(),M(r,{key:0,severity:`secondary`,text:``,size:`small`,class:`text-muted`,onClick:ae},{default:D(()=>[z(n,{class:`w-4 h-4 mr-1`}),W(` `+I(e.$t(`components.instance_switcher.go_back`)),1)]),_:1})):(J(),M(r,{key:1,severity:`secondary`,text:``,size:`small`,class:`text-muted`,onClick:fe},{default:D(()=>[z(i,{class:`w-4 h-4 mr-1`}),W(` `+I(e.$t(`views.login.pick_server`)),1)]),_:1}))]),key:`0`}:void 0]),1032,[`logo-url`])}}}),[[`__scopeId`,`data-v-7c2b2a03`]]),Ni=()=>B(()=>import(`./404-v5as29bN.js`),__vite__mapDeps([15,8,2,1,4,5,9,16])),Pi=()=>B(()=>import(`./FirstSteps-B8SHK9dj.js`),__vite__mapDeps([17,8,2,1,4,5,9,18,19,20,3,6,21,11,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44])),Fi=()=>B(()=>import(`./Cameras-Yaug0yrP.js`),__vite__mapDeps([45,8,2,1,4,5,9,11,3,6,46,18,47,48,19,7,49,20,21,22,23,35,33,50,37,51,52,53,54,55,56,57])),Ii=()=>B(()=>import(`./Camera-C_33nFP2.js`),__vite__mapDeps([58,1,2,4,5,59,8,9,11,3,6,18,60,61,62,21,22,19,63,64,26,27,65,66,67,28,68,29,69,7,30,31,70,49,20,23,71,72,73,74,75,76,77,78])),Li=()=>B(()=>import(`./Camview-On97Lml0.js`),__vite__mapDeps([79,8,2,1,4,5,9,59,11,3,6,18,60,61,62,21,22,19,63,64,26,27,65,66,67,28,68,29,69,7,30,31,70,49,20,23,71,72,46,80,81,34,33,35,74,82,51,53,76,77,83,84,85,55,86,87,88,89,90])),Ri=()=>B(()=>import(`./Recordings-k8LBscvM.js`),__vite__mapDeps([91,1,2,4,59,8,5,9,11,3,6,18,60,61,62,21,22,19,63,64,26,27,65,66,67,28,68,29,69,7,30,31,70,49,20,23,71,72,92,73,93,94,95,96,55,97,98,99,100])),zi=()=>B(()=>import(`./Faces-CxSpBJx5.js`),__vite__mapDeps([101,8,2,1,4,5,9,3,6,46,18,28,48,20,21,11,22,23,96,102,103,56,87])),Bi=()=>B(()=>import(`./Plugins-BBYkp0Lq.js`),__vite__mapDeps([104,1,2,4,11,3,5,6,46,18,105,48,19,8,9,20,21,22,23,96,102,103,56,106,107,108,60,64,26,27,65,35,33,109,110,111,112,113,114])),Vi=()=>B(()=>import(`./Plugin-CXq6VmFm.js`),__vite__mapDeps([115,8,2,1,4,5,9,11,3,6,18,47,60,64,26,21,22,27,65,67,28,68,7,49,20,23,96,35,33,50,46,37,51,52,102,116,117,118,119,103,107,108,109,110,111,112,113,120])),Hi=()=>B(()=>import(`./Adminpanel-D9308sB0.js`),__vite__mapDeps([121,8,2,1,4,5,9,3,6,96,35,33,102,24,39,103,122,11,18,37,123,124,125])),Ui=()=>B(()=>import(`./Config-BZ-qo4Yn.js`),__vite__mapDeps([126,2,8,1,4,5,9,3,6,18,20,21,11,22,23,96,37,24,103,75,127])),Wi=()=>B(()=>import(`./Console-DoN0meid.js`),__vite__mapDeps([128,1,2,4,5,6,18,20,8,9,3,21,11,22,23,96,10,12,13,14,24,103,106,75,83,84,85,55,86,129])),Gi=()=>B(()=>import(`./Terminal-oFHYhs5G.js`),__vite__mapDeps([130,8,2,1,4,5,9,11,3,6,18,96,12,13,103,131,75,83,84,85,55,86,129,132])),Ki=()=>B(()=>import(`./Automations-B2WSo6cc.js`),__vite__mapDeps([133,8,2,1,4,5,9,3,6,18,134,48,20,21,11,22,23,96,135,136,137,138,61,103,139,56,106])),qi=()=>B(()=>import(`./Automation-BPOqYi_7.js`),__vite__mapDeps([140,8,2,1,4,5,9,11,3,6,18,64,26,21,22,27,65,66,20,23,96,135,141,136,137,138,61,85,142,143,103,139,56,144,131,145])),Ji=()=>B(()=>import(`./Instances-Kx6sSCDX.js`),__vite__mapDeps([146,8,2,1,4,5,9,3,6,18,147,19,20,21,11,22,23,48,64,26,27,65,96,112,103,56,106])),Yi=()=>B(()=>import(`./Workers-CjwdsG_Q.js`),__vite__mapDeps([148,8,2,1,4,5,9,3,6,18,149,7,30,31,96,103,122,11,37,123,124,125])),Xi=()=>B(()=>import(`./Settings-DfwGoK3K.js`),__vite__mapDeps([150,1,2,4,5,11,3,6,19,8,9,96,74,99,151])),Zi=()=>B(()=>import(`./Menu-bxyy0M9l.js`),__vite__mapDeps([152,8,2,1,4,5,9,153,26,11,21,18,22,27,19,64,65,154,124])),Qi=()=>B(()=>import(`./About-C98439I4.js`),__vite__mapDeps([155,8,2,1,4,5,9,3,6,43,18,156,96,103])),$i=()=>B(()=>import(`./SettingsAccount-Do1kFf9T.js`),__vite__mapDeps([157,25,8,2,1,4,5,9,11,18,26,21,22,27,28,29,30,31,20,3,6,23,32,33,34,35,36,37,38,39,40])),ea=()=>B(()=>import(`./SettingsAppearance-Cf-c_lny.js`),__vite__mapDeps([158,41,1,2,4,5,6,18,19,8,9,37,42,43])),ta=()=>B(()=>import(`./SettingsBackup-DS3mOZTd.js`),__vite__mapDeps([159,8,2,1,4,5,9,18,20,3,6,21,11,22,23,24,119,44,160])),na=()=>B(()=>import(`./SettingsRecordings-BW1_cnvh.js`),__vite__mapDeps([161,8,2,1,4,5,9,18,7,50,11,46,21,22,35,33,37,51,52,162,123,109,110,20,3,6,23,111])),ra=()=>B(()=>import(`./SettingsRemote-DeCCrkpB.js`),__vite__mapDeps([163,8,2,1,4,5,9,11,18,164,30,31,23,20,3,6,21,22,35,33,36,37,38,24,165])),ia=()=>B(()=>import(`./SettingsSystem-C7R6m_Ep.js`),__vite__mapDeps([166,8,2,1,4,5,9,43,156,19,20,3,6,18,21,11,22,23,71,24])),aa=()=>B(()=>import(`./SettingsUsers-DRNl2lpx.js`),__vite__mapDeps([167,8,2,1,4,5,9,3,6,18,26,11,21,22,27,64,65,20,23,34,33,35,112])),oa=()=>B(()=>import(`./SettingsNotifications-ClYHH53Q.js`),__vite__mapDeps([168,8,2,1,4,5,9,18,19,169])),{smBreakpoint:$}=Pe(),sa=[{name:`NotFound`,path:`/:pathMatch(.*)*`,component:Ni,meta:{name:`notfound`,auth:{requiresAuth:!1,role:`none`}}},{name:`Login`,path:`/login`,alias:`/`,component:Mi,meta:{name:`login`,auth:{requiresAuth:!1,role:`none`},ui:{background:j(()=>$.value?`var(--card-background)`:void 0)}}},{name:`FirstSteps`,path:`/first-steps`,component:Pi,meta:{name:`firststeps`,auth:{requiresAuth:!0,role:`user`}}},{name:`Home`,path:`/home`,component:Zr,meta:{name:`home`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{showTitle:!0,padding:!0,allowOverflowX:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`top`,icon:{default:fn,active:De}},bottombar:{icon:{default:fn,active:De}}}},{name:`Cameras`,path:`/cameras`,component:Fi,meta:{name:`cameras`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`top`,icon:{default:Ue,active:Ke}},bottombar:{icon:{default:Ue,active:Ke}}}},{name:`Camera`,path:`/cameras/:cameraname`,component:Ii,meta:{name:`camera`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{disableScroll:!0,ignoreSafeAreaBottom:j(()=>$.value),noExtraPadding:j(()=>$.value)},showNavbar:!0,showTopbar:j(()=>!$.value),showBottombar:j(()=>!$.value),showRouterLoading:!0}}},{name:`Camview`,path:`/camview`,component:Li,meta:{name:`camview`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{disableScroll:!0},background:`#000000`,showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`top`,icon:{default:In,active:tt}},bottombar:{icon:{default:In,active:tt}}}},{name:`Recordings`,path:`/recordings`,component:Ri,meta:{name:`recordings`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{showTitle:!1,padding:!1},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`top`,icon:{default:zn,active:rt}},bottombar:{icon:{default:zn,active:rt}}}},{name:`About`,path:`/about`,component:Qi,meta:{name:`about`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0}}},{name:`Faces`,path:`/faces`,component:zi,meta:{name:`faces`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},profileMenu:{icon:{default:Z,active:Z}},navbar:{position:`top`,icon:{default:Z,active:Z}}}},{name:`Plugins`,path:`/plugins`,component:Bi,meta:{name:`plugins`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`top`,icon:{default:ot,active:lt}},profileMenu:{icon:{default:ot,active:lt}}}},{name:`ScopedPlugin`,path:`/plugins/:scope/:pluginname`,component:Vi,meta:{name:`plugin`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0}}},{name:`Plugin`,path:`/plugins/:pluginname`,component:Vi,meta:{name:`plugin`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0}}},{name:`Adminpanel`,path:`/admin`,component:Hi,meta:{name:`adminpanel`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:er,active:Zn}},profileMenu:{icon:{default:er,active:Zn}}}},{name:`Config`,path:`/config`,component:Ui,meta:{name:`config`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{disableScroll:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:Dn,active:wn}},profileMenu:{icon:{default:Dn,active:wn}}}},{name:`Console`,path:`/console`,component:Wi,meta:{name:`console`,auth:{requiresAuth:!0,role:`admin`},ui:{background:`#000000`,containerSettings:{disableScroll:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:Yt,active:en}},profileMenu:{icon:{default:Yt,active:en}}}},{name:`Terminal`,path:`/terminal`,component:Gi,meta:{name:`terminal`,auth:{requiresAuth:!0,role:`admin`},ui:{background:`#000000`,containerSettings:{disableScroll:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:qe,active:on}},profileMenu:{icon:{default:qe,active:on}}}},{name:`Automations`,path:`/automations`,component:Ki,meta:{name:`automations`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:ln,active:Ye}},profileMenu:{icon:{default:ln,active:Ye}}}},{name:`Automation`,path:`/automations/:id`,component:qi,meta:{name:`automation`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{disableScroll:!0,paddingBottom:!1},showNavbar:!0,showTopbar:!0,showBottombar:!0}}},{name:`Instances`,path:`/instances`,component:Ji,meta:{name:`instances`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:jt,active:We}},profileMenu:{icon:{default:jt,active:We}}}},{name:`Workers`,path:`/workers`,component:Yi,meta:{name:`workers`,auth:{requiresAuth:!0,role:`admin`},ui:{containerSettings:{showTitle:!0,padding:!0},showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoading:!0},navbar:{position:`bottom`,group:`more`,icon:{default:Kt,active:Je}},profileMenu:{icon:{default:Kt,active:Je}}}},{name:`Settings`,path:`/settings`,component:Xi,meta:{name:`settings`,path:`/settings/account`,auth:{requiresAuth:!0,role:`user`},navbar:{position:`bottom`,icon:{default:et,active:$e}},profileMenu:{icon:{default:et,active:$e}}},children:[{name:`SettingsAccount`,path:`account`,component:$i,meta:{name:`account`,description:`account_description`,auth:{requiresAuth:!0,role:`user`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:vn,active:hn}}}},{name:`SettingsAppearance`,path:`appearance`,component:ea,meta:{name:`appearance`,description:`appearance_description`,auth:{requiresAuth:!0,role:`user`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Bt,active:Ut}}}},{name:`SettingsUsers`,path:`user`,component:aa,meta:{name:`user`,description:`user_description`,auth:{requiresAuth:!0,role:`admin`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Nn,active:An}}}},{name:`SettingsNotifications`,path:`notifications`,component:oa,meta:{name:`notifications`,description:`notifications_description`,auth:{requiresAuth:!0,role:`user`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Qe,active:xn}}}},{name:`SettingsRecordings`,path:`recordings`,component:na,meta:{name:`recordings`,description:`recordings_description`,auth:{requiresAuth:!0,role:`admin`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:zn,active:rt}}}},{name:`SettingsRemote`,path:`remote`,component:ra,meta:{name:`remote`,description:`remote_access_description`,auth:{requiresAuth:!0,role:`admin`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Ze,active:Xe}}}},{name:`SettingsBackup`,path:`backup`,component:ta,meta:{name:`backup`,description:`backup_description`,auth:{requiresAuth:!0,role:`admin`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Pt,active:Lt}}}},{name:`SettingsSystem`,path:`system`,component:ia,meta:{name:`system`,description:`system_description`,auth:{requiresAuth:!0,role:`admin`},ui:{showNavbar:!0,showTopbar:!0,showBottombar:!0,showRouterLoadingSub:!0},settingsBar:{icon:{default:Gn,active:Hn}}}}]},{name:`Menu`,path:`/menu`,component:Zi,meta:{name:`menu`,auth:{requiresAuth:!0,role:`user`},ui:{containerSettings:{padding:!1},showNavbar:!1,showTopbar:!0,showBottombar:!0,showRouterLoading:!0,minifiedTopbar:!0},bottombar:{icon:{default:Jn,active:Jn}}}}];function ca(e){let t=e.toLowerCase();return t===`/home`?{group:`main`,key:`home`,ignore:`camview`}:t===`/camview`?{group:`main`,key:`camview`,ignore:`home`}:t.startsWith(`/cameras/`)?{group:`main`,key:`cameras`}:t===`/menu`?{group:`menu`,key:`menu`,depth:0}:t===`/faces`?{group:`menu`,key:`faces`,depth:1}:t===`/plugins`?{group:`menu`,key:`plugins`,depth:1}:t.startsWith(`/plugins/`)?{group:`menu`,key:`plugin-detail`,depth:2}:t.startsWith(`/settings`)?{group:`menu`,key:`settings`,depth:1}:t===`/admin`?{group:`menu`,key:`admin`,depth:1}:t===`/config`?{group:`menu`,key:`config`,depth:1}:t===`/console`?{group:`menu`,key:`console`,depth:1}:t===`/terminal`?{group:`menu`,key:`terminal`,depth:1}:t===`/instances`?{group:`menu`,key:`instances`,depth:1}:t===`/workers`?{group:`menu`,key:`workers`,depth:1}:t===`/automations`?{group:`menu`,key:`automations`,depth:1}:t===`/about`?{group:`menu`,key:`about`,depth:1}:t.startsWith(`/automations/`)?{group:`menu`,key:`automation-detail`,depth:2}:null}var la=new Map,ua=Ce({history:we(`/`),routes:sa,scrollBehavior:async(e,t,n)=>{if(n)return n;if(t.path===e.path||e.path===`/`)return{top:0,left:0};await pe(10);let r=la.get(e.path);return r===void 0?{top:0,left:0,behavior:`smooth`}:(la.delete(e.path),{top:r,left:0})}});ua.absUrl=(e=`#`,t=!0)=>{let n=document.createElement(`a`);n.href=e,n.target=t&&e!==`#`?`_blank`:``,t&&(n.rel=`noopener noreferrer`),n.click()},ua.beforeEach(async(e,t)=>{let n=ne(),r=i(),a=Ot(),o=e.name.toLowerCase();if(a.routerLoading=!0,a.setRoutes(t.fullPath,e.fullPath),la.set(t.path,window.scrollY),r.user){if(n.cancelQueries(void 0,{revert:!1}),r.user.firstLogin&&e.path!==`/first-steps`)return`/first-steps`;if(!r.user.firstLogin&&e.path===`/first-steps`||e.meta.auth?.requiresAuth&&e.meta.auth.role&&r.user.role!==e.meta.auth.role&&r.user.role!==`admin`&&r.user.role!==`master`||o===`login`)return`/home`;if(e.path===`/settings`)return`/settings/account`}else if(o!==`login`)return`/`}),ua.beforeResolve(async(e,t)=>{let n=ca(t.path),r=ca(e.path);if(!n||!r||n.group!==r.group||n.key===r.key||n.ignore===r.key||r.ignore===n.key)return;if(n.group===`menu`&&n.depth!==void 0&&r.depth!==void 0){if(window.innerWidth>640||n.depth===r.depth)return;let e=r.depth>n.depth?`forward`:`back`;document.documentElement.dataset.menuDirection=e}if(e.path===`/home`&&!ne().getQueriesData({queryKey:[`camerasList`]}).some(([,e])=>e!=null))return;let i=!!document.documentElement.dataset.menuDirection,a=Ot();a.isTransitioning=!0;let o=y();await o.captured,o.finished.finally(()=>{a.isTransitioning=!1,i&&delete document.documentElement.dataset.menuDirection})}),ua.afterEach(()=>{let e=Ot();e.routerLoading=!1});export{jt as i,sa as n,ei as r,ua as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$n as e}from"./vendor-CF-D4B9g.js";import{d as t}from"./vendor-core-
|
|
1
|
+
import{$n as e}from"./vendor-CF-D4B9g.js";import{d as t}from"./vendor-core-DinQdIbm.js";var n=t(`routerState`,()=>{let t=e(!0),n=e(),r=e(),i=e(),a=e(),o=e(!1);function s(e,t){i.value=n.value,a.value=r.value,n.value=e,r.value=t}return{routerLoading:t,routeFrom:n,routeTo:r,previousRouteFrom:i,previousRouteTo:a,isTransitioning:o,setRoutes:s}});export{n as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as e,S as t,b as n,w as r}from"./api-
|
|
1
|
+
import{A as e,S as t,b as n,w as r}from"./api-DG-9_slP.js";import{$n as i,F as a,z as o}from"./vendor-CF-D4B9g.js";async function s(){return(await e.get(`/server`)).data}async function c(t){return(await e.patch(`/server`,t)).data}async function l({serverData:t}){return(await e.post(`/server/update`,t)).data}async function u({signal:t}){return(await e.get(`/server/version`,{signal:t})).data}async function d(){return(await e.delete(`/server/log`)).data}async function f({signal:t}){return(await e.get(`/server/log/download`,{signal:t})).data}async function p(){return(await e.post(`/server/cert`,{responseType:`arraybuffer`})).data}async function m({signal:t}){return(await e.get(`/server/go2rtc`,{signal:t})).data}async function h(){return(await e.put(`/server/restart`)).data}async function g(){return(await e.put(`/server/restart/go2rtc`)).data}async function _(){return(await e.put(`/server/reset`)).data}var v=class{_queryClient=o();t=r.global.t;toast=t();queryActivator=i([{name:`downloadLogQuery`,enabled:!0},{name:`getGo2RtcInfoQuery`,enabled:!0},{name:`checkVersionQuery`,enabled:!0},{name:`getServerInfoQuery`,enabled:!0}]);get queryClient(){return this._queryClient}getServerInfoQuery(){return n({queryKey:[`server`],queryFn:s})}patchSystemInfoQuery(){return a({mutationFn:c,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:[`server`],exact:!0}),this.toast.add({severity:`success`,detail:this.t(`components.toast.server_updated`),life:3e3})}})}updateServerQuery(){return a({mutationFn:l,onSuccess:async()=>{this.toast.add({severity:`success`,detail:this.t(`components.toast.server_updated`),life:3e3})}})}downloadLogQuery(){return n({queryKey:[`logs`,`server`],queryFn:({signal:e})=>f({signal:e}),enabled:()=>this.queryActivator.value.some(e=>e.name===`downloadLogQuery`&&e.enabled)})}downloadCertQuery(){return a({mutationFn:p})}clearLogQuery(){return a({mutationFn:d,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:[`logs`,`server`],exact:!0}),this.toast.add({severity:`success`,detail:this.t(`components.toast.log_cleared`),life:3e3})}})}checkVersionQuery(){return n({queryKey:[`version`],queryFn:({signal:e})=>u({signal:e}),enabled:()=>this.queryActivator.value.some(e=>e.name===`checkVersionQuery`&&e.enabled)})}getGo2RtcInfoQuery(){return n({queryKey:[`go2rtc`],queryFn:({signal:e})=>m({signal:e}),enabled:()=>this.queryActivator.value.some(e=>e.name===`getGo2RtcInfoQuery`&&e.enabled)})}restartGo2RtcQuery(){return a({mutationFn:g,onSuccess:async()=>{this.toast.add({severity:`success`,detail:this.t(`components.toast.go2rtc_restarted`),life:3e3})}})}restartServerQuery(){return a({mutationFn:h,onSuccess:async()=>{this.toast.add({severity:`success`,detail:this.t(`components.toast.server_restarted`),life:3e3})}})}resetServerQuery(){return a({mutationFn:_,onSuccess:async()=>{this.toast.add({severity:`success`,detail:this.t(`components.toast.server_resetted`),life:3e3})}})}toggleQueryActivator(e,t){let n=this.queryActivator.value.find(t=>t.name===e);return n&&(n.enabled=t),this}};export{p as n,h as r,v as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as e,S as t,b as n,w as r}from"./api-
|
|
1
|
+
import{A as e,S as t,b as n,w as r}from"./api-DG-9_slP.js";import{F as i,sr as a,z as o}from"./vendor-CF-D4B9g.js";async function s({shareData:t}){return(await e.post(`/shares`,t)).data}async function c({camera:t,signal:n}){return(await e.get(`/shares`,{params:{camera:t},signal:n})).data}async function l({token:t}){return(await e.delete(`/shares/${t}`)).data}var u=class{_queryClient=o();t=r.global.t;toast=t();get queryClient(){return this._queryClient}getSharesQuery(e){return n({queryKey:[`shares`,e],queryFn:({signal:t})=>c({camera:a(e),signal:t})})}createShareQuery(){return i({mutationFn:s,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:[`shares`]}),this.toast.add({severity:`success`,detail:this.t(`shares.share_created`),life:3e3})}})}revokeShareQuery(){return i({mutationFn:l,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:[`shares`]}),this.toast.add({severity:`success`,detail:this.t(`shares.share_revoked`),life:3e3})}})}};export{u as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./api-
|
|
1
|
+
import"./api-DG-9_slP.js";import{$n as e,Rn as t,Zn as n,gn as r}from"./vendor-CF-D4B9g.js";import{Oi as i,Wi as a}from"./vendor-cameraui-tvNekvZ-.js";import{d as o}from"./vendor-core-DinQdIbm.js";async function s(e){}var c=o(`theme`,()=>{let o=localStorage.getItem(`theme`),c=o?JSON.parse(o):{theme:`dark`,autoMode:!0},l=a(c.theme,{onBeforeChange(){if(!d.value)return!1},onChanged(e){c.theme=e,localStorage.setItem(`theme`,JSON.stringify(c))}}),u=a(c.autoMode,{onBeforeChange(e){if(e&&!d.value)return!1},onChanged(e){c.autoMode=e,localStorage.setItem(`theme`,JSON.stringify(c))}}),d=e(!0),f=n([`light`,`dark`]);function p(){return window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`}function m(){return u.value?p():l.value}function h(e){switch(document.documentElement.setAttribute(`data-mode`,e),e){case`light`:document.documentElement.classList.remove(`dark-mode`),document.documentElement.classList.add(`light-mode`);break;case`dark`:document.documentElement.classList.remove(`light-mode`),document.documentElement.classList.add(`dark-mode`);break}s(e)}function g(){u.value?(u.value=!1,l.value=`light`):l.value===`light`?l.value=`dark`:u.value=!0}let _=i(`(prefers-color-scheme: dark)`);return t(u,e=>{e&&(l.value=p())},{immediate:!0,deep:!0}),t(l,e=>{r(()=>{h(e),d.value=!0}),d.value=!1}),t(_,e=>{u.value&&(l.value=e?`dark`:`light`)}),h(m()),{colors:f,theme:l,autoMode:u,setAppTheme:h,getSystemMode:p,toggleTheme:g}});export{c as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as e}from"./vendor-CF-D4B9g.js";import{C as t,D as n,E as r,S as i,T as a,_ as ee,a as te,b as ne,c as re,d as ie,f as ae,g as oe,h as se,i as ce,l as le,m as o,n as ue,o as s,p as de,r as fe,s as pe,t as me,u as he,v as ge,w as c,x as _e,y as ve}from"./vendor-cameraui-DpqS51DT.js";import{_ as l,a as u,b as d,c as f,d as ye,f as be,g as xe,h as p,i as m,l as Se,m as h,n as g,o as _,p as v,r as y,s as b,t as x,u as Ce,v as S,x as C,y as we}from"./vendor-zod-V2qTUMVc.js";p({tempToken:S().trim().min(1,`Temporary token is required`),code:S().trim().min(1,`Code is required`)}).strict(),p({code:S().trim().length(6,`Code must be 6 digits`)}).strict(),p({code:S().trim().min(1,`Code is required`)}).strict(),p({code:S().trim().min(1,`Code is required`)}).strict(),p({grant_type:S().optional(),username:S().trim().min(1,`Username is required`),password:S().min(1,`Password is required`),scope:S().optional(),client_id:S().optional(),client_secret:S().optional()}),p({refresh_token:S().min(1,`Refresh token is required`)}),p({id:S()});function Te(e){let t=[`kasa://`,`nest:`,`ring:`,`tapo://`];return e.some(e=>t.some(t=>e.startsWith(t)))}var Ee=[`#df2a4c`,`#2a7fdf`,`#2adf7f`,`#df7f2a`,`#7f2adf`,`#2adfdf`,`#df2adf`,`#7fdf2a`];function De(){return Ee[Math.floor(Math.random()*Ee.length)]}function Oe(){return{name:`Default Zone`,points:[[0,0],[100,0],[100,100],[0,100]],type:`contain`,filter:`include`,labels:[`motion`,`person`,`vehicle`,`animal`],isPrivacyMask:!1,color:De()}}p({enabled:b().default(!1)}).strict();var ke=S().trim().min(1,`Detection label is required`),w=we([h(),h()]),T=p({name:S().trim().min(1,`Zone Name is required`),points:w.array().min(3,`At least 3 points are required`),type:d([v(`intersect`),v(`contain`)]),filter:d([v(`include`),v(`exclude`)]),labels:ke.array(),isPrivacyMask:b(),color:S().trim().regex(/^#([0-9A-Fa-f]{3}){1,2}$/,`Must be a valid hex color (e.g. #FF0000 or #F00)`).default(`#df2a4c`)}).array(),E=p({name:S().trim().min(1,`Line Name is required`),points:we([w,w]),direction:d([v(`both`),v(`a-to-b`),v(`b-to-a`)]),labels:ke.array(),color:S().trim().regex(/^#([0-9A-Fa-f]{3}){1,2}$/,`Must be a valid hex color (e.g. #FF0000 or #F00)`).default(`#df2a4c`)}).array(),D=p({motion:p({resolution:d([v(`low`),v(`medium`),v(`high`)]),timeout:h().min(10,`Minimum 10 seconds`)}),object:p({confidence:h().min(.3,`Minimum 0.3`).max(1,`Maximum 1`)}),audio:p({minDecibels:h().min(-100,`Minimum -100 dBFS`).max(0,`Maximum 0 dBFS`),timeout:h().min(10,`Minimum 10 seconds`)}),sensor:p({timeout:h().min(10,`Minimum 10 seconds`),triggers:_(p({sensorType:S().trim().min(1,`Sensor type is required`),sensorName:S().trim().min(1,`Sensor name is required`),pluginId:S().trim().min(1,`Plugin ID is required`)})).default([])}),cascadeDetection:b().default(!0),cascadeTimeout:h().min(1,`Minimum 1 second`).max(300,`Maximum 300 seconds`).default(10),snooze:b().default(!1)}),Ae={enabled:!1,targetLabels:[`person`],minConfidence:.5,triggerDeadZone:.05,returnToHome:!1,homeWaitMs:1e4},je=p({enabled:b().default(!1),targetLabels:S().trim().min(1,`Target label is required`).array().default([`person`]),minConfidence:h().min(.3,`Minimum 0.3`).max(1,`Maximum 1`).default(.5),triggerDeadZone:h().min(0,`Minimum 0`).max(.3,`Maximum 0.3`).default(.05),returnToHome:b().default(!1),homeWaitMs:h().min(1e3,`Minimum 1000 ms`).max(6e4,`Maximum 60000 ms`).default(1e4)}),O=d([v(`high-resolution`),v(`mid-resolution`),v(`low-resolution`),v(`snapshot`)]),Me=d([v(`high-resolution`),v(`mid-resolution`),v(`low-resolution`)]),k=d([v(`bubble://`),v(`cui://`),v(`doorbird://`),v(`dvrip://`),v(`eseecloud://`),v(`ffmpeg:`),v(`flussonic://`),v(`gopro://`),v(`hass:`),v(`homekit://`),v(`http://`),v(`https://`),v(`httpx://`),v(`isapi://`),v(`ivideon:`),v(`kasa://`),v(`nest:`),v(`onvif://`),v(`ring:`),v(`roborock://`),v(`rtmp://`),v(`rtsp://`),v(`rtspx://`),v(`tapo://`),v(`tcp://`),v(`tuya://`),v(`xiaomi://`),v(`yandex:`),v(`webrtc:`),v(`webtorrent:`),v(`wyze://`)]),Ne=k.options.map(e=>e.value),Pe=RegExp(`^(${Ne.join(`|`)})`),Fe=S().refine(e=>{if(!Pe.test(e))return!1;try{return new URL(e),!0}catch{return!1}},{message:`Invalid URL format or unsupported protocol`}),Ie=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:O,useForSnapshot:b().default(!1),hotMode:b().default(!0),preload:b().default(!0),prebuffer:b().default(!1),urls:Fe.array().min(1,`At least one valid URL is required`),childSourceId:S().trim().min(1,`Child Source ID is required`).optional()}).strict(),Le=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:O,useForSnapshot:b().default(!1),hotMode:b().default(!0),preload:b().default(!0),prebuffer:b().default(!1),urls:Fe.array().min(1,`At least one valid URL is required`),childSourceId:S().trim().min(1,`Child Source ID is required`).optional()}).strict(),A=p({id:S(),name:S().trim()}),Re=p({motion:A.optional(),object:A.optional(),audio:A.optional(),face:A.optional(),licensePlate:A.optional(),ptz:A.optional(),battery:A.optional(),cameraController:A.optional(),classifier:A.array().optional(),light:A.array().optional(),siren:A.array().optional(),switch:A.array().optional(),securitySystem:A.array().optional(),contact:A.array().optional(),doorbell:A.array().optional(),hub:A.array().optional()}).strict(),ze=d([v(`auto`),v(`mse`),v(`webrtc`),v(`webrtc/tcp`)]),Be=d([v(`16:9`),v(`9:16`),v(`8:3`),v(`4:3`),v(`1:1`)]),Ve=p({fps:h().min(0,`Minimum 0 fps`).max(30,`Maximum 30 fps`)}),He=d([v(`camera`),v(`doorbell`)]),j=p({streamingMode:ze,streamingSource:Me,aspectRatio:Be}),M=p({model:S().trim().optional(),manufacturer:S().trim().optional(),hardware:S().trim().optional(),serialNumber:S().trim().optional(),firmwareVersion:S().trim().optional(),supportUrl:S().trim().optional()});p({name:S().trim().min(1,`Camera name is required`),url:C(`Must be a valid URL`).trim().min(1,`Camera URL is required`),type:d([v(`Google`),v(`Ring`),v(`HomeKit`),v(`Onvif`),v(`Hass`),v(`GoPro`),v(`Roborock`),v(`FFmpeg`),v(`DVRip`),v(`Webtorrent`)]),username:S().trim().optional(),email:Ce(`Must be a valid email`).trim().optional(),password:S().trim().optional(),pin:S().trim().length(8,`PIN must be 8 characters long`).optional(),clientId:S().trim().optional(),clientSecret:S().trim().optional(),refreshToken:S().trim().optional(),projectId:S().trim().optional()}).strict().refine(e=>e.type===`HomeKit`?!!e.pin:!0,{message:`PIN is required for HomeKit cameras`,path:[`pin`]}).refine(e=>e.type===`Google`?!!e.clientId:!0,{message:`Client ID is required for Google cameras`,path:[`clientId`]}).refine(e=>e.type===`Google`?!!e.clientSecret:!0,{message:`Client Secret is required for Google cameras`,path:[`clientSecret`]}).refine(e=>e.type===`Google`?!!e.projectId:!0,{message:`Project ID is required for Google cameras`,path:[`projectId`]}).refine(e=>e.type===`Google`?!!e.refreshToken:!0,{message:`Refresh Token is required for Google cameras`,path:[`refreshToken`]}).refine(e=>e.type===`Ring`?!!e.email:!0,{message:`Email is required`,path:[`email`]}).refine(e=>e.type===`Roborock`?!!e.username:!0,{message:`Username is required`,path:[`username`]}).refine(e=>e.type===`Roborock`||e.type===`Ring`?!!e.password:!0,{message:`Password is required`,path:[`password`]});var Ue=p({id:S(),name:S().trim()}).strict(),N=p({autoRefresh:b().default(!1),ttl:h().min(10,`Minimum 10 seconds`).max(60,`Maximum 60 seconds`).default(50),interval:h().min(10,`Minimum 10 seconds`).max(60,`Maximum 60 seconds`).default(60)}).strict(),P=p({_id:S().default(e()).transform(()=>e()),nativeId:S().trim().optional(),pluginInfo:Ue.optional(),disabled:b().default(!1),name:S().trim().min(1,`Camera name is required`),room:S().trim().min(1,`Room is required`).default(`Default`),type:He.default(`camera`),isCloud:b().default(!1),snapshotSettings:N.default({autoRefresh:!1,ttl:50,interval:60}),info:M.default({model:`IP Camera`,manufacturer:`camera.ui`,hardware:`Camera`,serialNumber:`Unknown`,firmwareVersion:`Unknown`,supportUrl:`Unknown`}),sources:Ie.array().refine(e=>e.some(e=>e.role===`high-resolution`||e.role===`mid-resolution`||e.role===`low-resolution`),{path:[`sources[].role`],message:`One of the roles "high-resolution", "mid-resolution" or "low-resolution" is required`}).refine(e=>e.filter(e=>e.useForSnapshot).length<=1,{message:`Only one source can be used for snapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.useForSnapshot),{message:`Snapshot source can not be used with useForSnapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.hotMode),{message:`Snapshot source can not be used with hotMode`}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.preload),{message:`Snapshot source can not be used with preload`}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.prebuffer),{message:`Snapshot source can not be used with prebuffer`}),plugins:A.array().default([]),assignments:Re.default({}),interfaceSettings:j.default({streamingMode:`webrtc`,streamingSource:`high-resolution`,aspectRatio:`16:9`}),detectionZones:T.default([]),detectionLines:E.default([]),detectionSettings:D.default({motion:{resolution:`low`,timeout:30},object:{confidence:.5},audio:{minDecibels:-40,timeout:30},sensor:{timeout:30,triggers:[]},cascadeDetection:!0,cascadeTimeout:10,snooze:!1}),ptzAutotrack:je.default(Ae),frameWorkerSettings:Ve.default({fps:10})}).strict();P.transform(e=>{let t=e.sources.flatMap(e=>e.urls),n=e.detectionZones.length===0?[Oe()]:e.detectionZones;return e.isCloud||Te(t)?{...e,isCloud:!0,detectionZones:n}:{...e,detectionZones:n}});var We=p({disabled:b().optional(),type:He.optional(),name:S().trim().min(1,`Camera name is required`).optional(),room:S().trim().min(1,`Room is required`).optional(),isCloud:b().optional(),snapshotSettings:N.partial().optional(),info:M.partial().optional(),sources:Le.array().refine(e=>e.some(e=>e.role===`high-resolution`||e.role===`mid-resolution`||e.role===`low-resolution`),{path:[`sources[].role`],message:`One of the roles "high-resolution", "mid-resolution" or "low-resolution" is required`}).refine(e=>e.filter(e=>e.useForSnapshot).length<=1,{message:`Only one source can be used for snapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.useForSnapshot),{message:`Snapshot source can not be used with useForSnapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.hotMode),{message:`Snapshot source can not be used with hotMode`}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.preload),{message:`Snapshot source can not be used with preload`}).optional(),plugins:A.array().optional(),assignments:Re.partial().optional(),interfaceSettings:j.partial().optional(),detectionZones:T.optional(),detectionLines:E.optional(),detectionSettings:D.partial().optional(),ptzAutotrack:je.partial().optional(),frameWorkerSettings:Ve.partial().optional()}).strict().transform(e=>{if(e.sources){let t=e.sources.flatMap(e=>e.urls);if(e.isCloud===!0||Te(t))return{...e,isCloud:!0}}return e});p({url:S().trim().refine(e=>!/^\s*(exec|echo|expr):/i.test(e),`Command-execution stream sources are not allowed`)}).strict(),p({cameraname:S()}),p({cameraname:S(),sourcename:S()}),p({cameraid:S(),sourcename:S()}),p({cameraname:S(),pluginname:S()}),p({cameraname:S(),scope:S(),pluginname:S()}),p({cameraname:S(),pluginname:S(),sensorId:S()}),p({cameraname:S(),scope:S(),pluginname:S(),sensorId:S()}),p({type:S().optional()}),p({video:x().optional(),audio:x().optional(),microphone:x().optional()}),p({forceNew:x().optional()}),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`),url:C(`Must be a valid URL`).trim(),credentials:p({username:S().trim().min(1,`Username is required`),password:S().min(1,`Password is required`)})}),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional(),url:C(`Must be a valid URL`).trim().optional(),credentials:p({username:S().trim().min(1,`Username is required`),password:S().min(1,`Password is required`)}).nullable().optional()}),p({id:S().min(1,`ID is required`)});var Ge=/^((@[\w-.]*)\/)?(camera-ui-[\w-]*)$/,Ke=function(e){return e.READY=`ready`,e.STARTING=`starting`,e.STARTED=`started`,e.STOPPING=`stopping`,e.STOPPED=`stopped`,e.ERROR=`error`,e.UNKNOWN=`unknown`,e.DISABLED=`disabled`,e}({});function F(e){return e.mimetype!==void 0}function qe(e){return F(e)?Buffer.byteLength(e._buf):e.size}function Je(e){return F(e)?e.mimetype:e.type}function I(e,t,n,r){return f().refine(t=>qe(t)<=e,n).refine(e=>t.includes(Je(e)),r)}var Ye=p({start:g().optional(),page:g().optional(),pageSize:g().optional()}),L=[`image/jpeg`,`image/png`],Xe=1024*1024*2,R=[`video/mp4`,`video/quicktime`],z=1024*1024*10,B=[`audio/mpeg`,`audio/wav`,`audio/ogg`],V=1024*1024*2,H=()=>I(Xe,L,`Max file size is 2 MB`,`.jpeg and .png files are accepted`),U=f().transform(e=>JSON.parse(e.value)),W=f().transform(e=>JSON.parse(e.value)),Ze=f().transform(e=>JSON.parse(e.value));p({pluginname:S().trim().refine(e=>Ge.test(e),`Not a valid plugin name`),pluginversion:S().trim().optional().default(`latest`)}).strict(),p({actionId:S(),payload:u()}).strict(),l(u(),u()),p({upload:H(),metadata:W,config:U}),p({upload:I(V,B,`Max file size is 2 MB`,`.mp3, .wav and .ogg files are accepted`),metadata:Ze,config:U}),p({upload:I(z,R,`Max file size is 5 MB`,`.mp4 files are accepted`),config:U}),p({upload:H(),metadata:W,config:U}),p({upload:H(),metadata:W,config:U}),p({upload:H(),metadata:W,config:U}),p({pluginname:S()}),p({scope:S(),pluginname:S()}),Ye.extend({pluginname:S().trim().optional()}),p({removeStorage:x().optional()});var Qe=p({enabled:b().optional(),directEnabled:b().optional(),directMode:m([`cloudflare`,`customDomain`]).optional(),customDomain:p({url:C(`Must be a valid URL`).trim().nullable()}).strict().optional(),cloudflare:p({mode:m([`quick`,`token`,`managed`]).optional(),hostname:S().trim().min(1,`Hostname is required`).max(253,`Hostname cannot be more than 253 characters`).nullable().optional(),token:S().trim().min(1,`Token is required`).nullable().optional()}).strict().optional()}).strict().refine(e=>!(e.directMode===`customDomain`&&!e.customDomain?.url),{message:`Custom domain URL is required when directMode is "customDomain"`,path:[`customDomain`,`url`]}).refine(e=>!(e.cloudflare?.mode===`token`&&!e.cloudflare?.token),{message:`Token is required when cloudflare.mode is "token"`,path:[`cloudflare`,`token`]}).refine(e=>!(e.cloudflare?.mode&&e.cloudflare.mode!==`quick`&&!e.cloudflare?.hostname),{message:`Hostname is required when cloudflare.mode is "token" or "managed"`,path:[`cloudflare`,`hostname`]});p({mode:m([`cloudflare`,`customDomain`])}).strict(),p({hostname:S().trim().min(1,`Hostname is required`).max(253,`Hostname cannot be more than 253 characters`).regex(/^[a-z0-9.-]+\.[a-z]{2,}$/i,`Invalid hostname`)}).strict(),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional()}).strict(),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional()}).strict(),p({name:S().trim().min(1,`Server name is required`).max(100,`Server name cannot be more than 100 characters`)}).strict(),p({version:S().trim().optional().default(`latest`)}).strict();var $e=p({serverAddresses:d([ye().trim(),be().trim()]).array().default([])}).strict();l(S(),u()),p({key:S()}).strict(),p({key:S(),payload:u()}).strict();var et=[`image/jpeg`,`image/jpg`,`image/png`],tt=1024*1024*5,nt=p({index:h(),cameraId:S(),colSpan:h().optional(),rowSpan:h().optional(),x:h().optional(),y:h().optional()}),rt=d([v(1),v(4),v(6),v(7),v(9),v(10),v(12),v(13),v(15),v(16),v(20),v(26)]),it=d([v(`dnd`),v(`view`)]),at=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Layout name is required`),viewSize:rt,cameras:nt.array(),type:it});p({name:S().trim().min(1,`Layout name is required`),viewSize:rt,cameras:nt.array()}).partial().optional();var ot=p({views:at.array()}),st=m([`contact`,`temperature`,`humidity`,`occupancy`,`smoke`,`leak`,`light`,`siren`,`switch`,`lock`,`garage`,`doorbell`,`securitySystem`,`battery`]),ct=Se(`type`,[p({_id:S().default(e()).transform(()=>e()),type:v(`camera`),cameraId:S(),points:w}),p({_id:S().default(e()).transform(()=>e()),type:v(`sensor`),sensorType:st,sensorName:S(),sensorPluginId:S(),sensorCameraId:S(),points:w})]);d([p({type:v(`camera`),cameraId:S(),points:w}).partial(),p({type:v(`sensor`),sensorType:st,sensorName:S(),sensorPluginId:S(),sensorCameraId:S(),points:w}).partial()]).optional();var lt=p({shortcuts:ct.array()}),ut=p({camview:ot,cameras:l(S().trim(),lt)}),G=S().trim().min(10,`Password must be at least 10 characters long`).regex(/[A-Z]/,`Password must contain at least one uppercase letter`).regex(/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/,`Password must contain at least one special character (!@#$%^&*()_+-=[]{};:'"\\|,.<>/?)`).max(32,`Password cannot be more than 32 characters`),dt=p({_id:S().default(e()).transform(()=>e()),username:S().trim().min(1,`Username is required`),password:G,passwordConfirm:S().trim().min(1,`Please confirm your password`),role:d([v(`admin`),v(`user`)]),firstLogin:b().default(!0),preferences:ut.default({camview:{views:[]},cameras:{}})}).strict().refine(e=>e.password===e.passwordConfirm,{path:[`passwordConfirm`],message:`Passwords do not match`});p({username:S().trim().min(1,`Username is required`),password:S().trim().min(1,`Password is required`),kind:m([`native`,`web`]),persistent:b().default(!1),device:p({id:S().min(1,`Device id is required`).max(128,`Device id cannot be more than 128 characters`),name:S().trim().min(1,`Device name is required`).max(100,`Device name cannot be more than 100 characters`)})}).strict();var ft=p({username:S().trim().min(1,`Username is required`).optional(),password:G.optional(),passwordConfirm:S().trim().optional(),role:d([v(`admin`),v(`user`)]).optional(),upload:xe(I(tt,et,`Max file size is 5MB.`,`.jpg, .jpeg, .png files are accepted.`)),firstLogin:b().optional(),preferences:ut.partial().optional()}).strict().refine(e=>e.password===e.passwordConfirm,{path:[`passwordConfirm`],message:`Passwords do not match`});p({username:S()}),p({username:S(),cameraname:S()}),p({username:S(),cameraname:S(),shortcutid:S()}),p({username:S(),viewid:S()}),p({username:S()});var K={[n.Motion]:{category:r.Sensor,assignmentKey:`motion`,multiProvider:!1,isDetectionType:!0},[n.Object]:{category:r.Sensor,assignmentKey:`object`,multiProvider:!1,isDetectionType:!0},[n.Audio]:{category:r.Sensor,assignmentKey:`audio`,multiProvider:!1,isDetectionType:!0},[n.Face]:{category:r.Sensor,assignmentKey:`face`,multiProvider:!1,isDetectionType:!0},[n.LicensePlate]:{category:r.Sensor,assignmentKey:`licensePlate`,multiProvider:!1,isDetectionType:!0},[n.Classifier]:{category:r.Sensor,assignmentKey:`classifier`,multiProvider:!0,isDetectionType:!0},[n.Clip]:{category:r.Sensor,assignmentKey:`clip`,multiProvider:!1,isDetectionType:!0},[n.Contact]:{category:r.Sensor,assignmentKey:`contact`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Light]:{category:r.Control,assignmentKey:`light`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`on`,value:!0,sustained:!0}},[n.Siren]:{category:r.Control,assignmentKey:`siren`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`active`,value:!0,sustained:!0}},[n.Switch]:{category:r.Control,assignmentKey:`switch`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`on`,value:!0,sustained:!0}},[n.PTZ]:{category:r.Control,assignmentKey:`ptz`,multiProvider:!1,isDetectionType:!1},[n.Lock]:{category:r.Control,assignmentKey:`lock`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`currentState`,value:1,sustained:!0}},[n.SecuritySystem]:{category:r.Control,assignmentKey:`securitySystem`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`currentState`,value:4,sustained:!0}},[n.Doorbell]:{category:r.Trigger,assignmentKey:`doorbell`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`ring`,value:!0,sustained:!1}},[n.Temperature]:{category:r.Info,assignmentKey:`temperature`,multiProvider:!0,isDetectionType:!1},[n.Humidity]:{category:r.Info,assignmentKey:`humidity`,multiProvider:!0,isDetectionType:!1},[n.Occupancy]:{category:r.Sensor,assignmentKey:`occupancy`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Smoke]:{category:r.Sensor,assignmentKey:`smoke`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Leak]:{category:r.Sensor,assignmentKey:`leak`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Garage]:{category:r.Control,assignmentKey:`garage`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`currentState`,value:0,sustained:!0}},[n.Battery]:{category:r.Info,assignmentKey:`battery`,multiProvider:!1,isDetectionType:!1}};n.Battery,c.Charging,t.Charging,c.Low,t.LowBattery,n.Light,o.Brightness,de.Brightness,n.Siren,s.Volume,te.Volume;function pt(){return Object.entries(K).filter(([,e])=>e.multiProvider).map(([e])=>e)}function mt(){return Object.entries(K).filter(([,e])=>e.isDetectionType).map(([e])=>e)}function ht(e){return K[e].assignmentKey}function gt(){return Object.entries(K).filter(([,e])=>e.category===r.Sensor&&!e.multiProvider).map(([e])=>e)}function _t(){return Object.entries(K).filter(([,e])=>!e.multiProvider&&e.category!==r.Sensor).map(([e])=>e)}function vt(){return Object.entries(K).filter(([,e])=>e.multiProvider).map(([e])=>e)}function yt(e){return!K[e].multiProvider}var bt={[n.Motion]:Object.values(ie),[n.Object]:Object.values(he),[n.Audio]:Object.values(a),[n.Face]:Object.values(ve),[n.LicensePlate]:Object.values(se),[n.Classifier]:Object.values(i),[n.Clip]:[],[n.Contact]:Object.values(_e),[n.Temperature]:Object.values(ue),[n.Humidity]:Object.values(ee),[n.Occupancy]:Object.values(le),[n.Smoke]:Object.values(ce),[n.Leak]:Object.values(oe),[n.Light]:Object.values(o),[n.Siren]:Object.values(s),[n.Switch]:Object.values(fe),[n.Lock]:Object.values(ae),[n.Garage]:Object.values(ge),[n.PTZ]:Object.values(re),[n.SecuritySystem]:Object.values(pe),[n.Doorbell]:Object.values(ne),[n.Battery]:Object.values(c)};function xt(e){return bt[e]??[]}new Set(pt()),new Set(mt());var St=`bubble://.cui://.doorbird://.dvrip://.echo:.eseecloud://.exec:.expr:.ffmpeg:.flussonic://.gopro://.hass:.homekit://.http://.https://.httpx://.isapi://.ivideon:.kasa://.nest:.onvif://.ring:.roborock://.rtmp://.rtsp://.rtspx://.tapo://.tcp://.tuya://.xiaomi://.yandex:.webrtc:.webtorrent:.wyze://`.split(`.`),Ct=[`#backchannel=`,`#header=`,`#media=audio`,`#media=video`,`#timeout=10`,`#timeout=20`,`#timeout=30`,`#transport=`],wt=`#audio=aac.#audio=aac/16000.#audio=mp3.#audio=opus.#audio=pcm.#audio=pcm/8000.#audio=pcm/16000.#audio=pcm/48000.#audio=pcma.#audio=pcma/8000.#audio=pcma/16000.#audio=pcma/48000.#audio=pcml.#audio=pcml/8000.#audio=pcml/44100.#audio=pcmu.#audio=pcmu/8000.#audio=pcmu/16000.#audio=pcmu/48000.#drawtext.#hardware.#hardware=cuda.#hardware=dxva2.#hardware=rkmpp.#hardware=v4l2m2m.#hardware=vaapi.#hardware=videotoolbox.#height=.#raw=.#rotate=-90.#rotate=90.#rotate=180.#rotate=270.#video=copy.#video=h264.#video=h265.#video=mjpeg.#width=`.split(`.`),Tt=[`client_id=`,`client_private=`,`device_id=`,`device_public=`],Et=[`#header=`],Dt=[`client_id=`,`client_secret=`,`refresh_token=`,`project_id=`,`device_id=`],Ot=[`device_id=`,`refresh_token=`],kt=[`#client_id=`,`#format=openipc`,`#format=wyze`,`#format=kinesis`,`#ice_servers=`];function At(e){return e.type===`string`&&!(`enum`in e)}function jt(e){return e.type===`number`}function Mt(e){return e.type===`boolean`}function q(e){return e.type===`string`&&`enum`in e}function Nt(e){return e.type===`array`}function J(e){return e.type===`button`}function Y(e){return e.type===`submit`}function Pt(e){return At(e)&&(!e.format||e.format!==`qrCode`&&e.format!==`image`)}var Ft=(e,t)=>{let n=Q(t,e.key),r=e.value;switch(e.operator??`eq`){case`eq`:return n===r;case`neq`:return n==null||n===``?!1:n!==r;case`gt`:return typeof n==`number`&&typeof r==`number`&&n>r;case`lt`:return typeof n==`number`&&typeof r==`number`&&n<r;case`in`:return(Array.isArray(r)?r:[r]).includes(n);case`nin`:return n==null||n===``?!1:!(Array.isArray(r)?r:[r]).includes(n);default:return!0}};function X(e,t){return Array.isArray(e)?e.every(e=>Ft(e,t)):Ft(e,t)}function It(e,t){if(!e||Object.keys(e).length===0)return!0;let n=t.filter(e=>!J(e)&&!Y(e));for(let t of n){let n=Q(e,t.key),r=Z(t);if(n!==void 0&&!me(n,r,!0))return!1}return!0}function Z(e){if(`defaultValue`in e&&e.defaultValue!==void 0)return e.defaultValue;switch(e.type){case`string`:return q(e)?e.multiple?[]:e.required?e.enum[0]:``:``;case`number`:return 0;case`boolean`:return!1;case`array`:return[];default:return}}function Lt(e){let t={};for(let n of e)J(n)||Y(n)||(t[n.key]=Z(n));return t}function Q(e={},t){if(!t.includes(`.`)&&!t.includes(`[`))return e[t];let n=t.split(`.`).reduce((e,t)=>{if(t.includes(`[`)){let[n,r]=t.split(`[`);e.push(n,r.slice(0,-1))}else e.push(t);return e},[]),r=e;for(let e of n){if(r==null)return;r=r[e]}return r}function Rt(e,t,n){if(!t.includes(`.`)&&!t.includes(`[`)){e[t]=n;return}let r=t.split(`.`).reduce((e,t)=>{if(t.includes(`[`)){let[n,r]=t.split(`[`);e.push(n,r.slice(0,-1))}else e.push(t);return e},[]),i=r.pop();if(!i)return;let a=e;for(let e of r){if(a[e]===void 0||a[e]===null){let t=r[r.indexOf(e)+1];a[e]=isNaN(Number(t))?{}:[]}a=a[e]}a[i]=n}function zt(e,t){let n={};for(let r of e)if(`store`in r&&r.store&&!J(r)&&!Y(r)){let e=Q(t,r.key);e!==void 0&&(n[r.key]=e)}return n}function Bt(e,t){return t?e.filter(e=>`group`in e&&e.group===t):e}function Vt(e,t){let n=Bt(e,t);return n.length>0&&n.every(e=>`readonly`in e&&e.readonly)}function Ht(e,t){let n=Bt(e,t);return n.length>0&&n.some(e=>`store`in e&&e.store)}function Ut(e,t){if(!t)return!0;let n={"date-time":e=>/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(.\d+)?(Z|[+-]\d{2}:\d{2})?$/.test(e),date:e=>/^\d{4}-\d{2}-\d{2}$/.test(e),time:e=>/^([01]?[0-9]|2[0-3]):([0-5][0-9])(:([0-5][0-9]))?$/.test(e),email:e=>/^\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,7}\b$/.test(e),uuid:e=>/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/.test(e),ipv4:e=>/^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/.test(e),ipv6:e=>/^\s*([0-9a-fA-F]{1,4}:){7}([0-9a-fA-F]{1,4})\s*$/.test(e)};return t in n?n[t](e):!0}function $(e){if(J(e)||Y(e))return u();switch(e.type){case`string`:if(q(e))if(e.multiple){let t=_(S().trim().refine(t=>e.enum.includes(t),{error:`Invalid selection`}));return e.required&&(t=t.min(1,{error:`Required`})),e.required?t:t.optional()}else{let t=m(e.enum);return e.required?t:t.optional()}let t=S().trim();return e.required&&(t=t.nonempty(`Required`)),e.minLength!==void 0&&(t=t.min(e.minLength)),e.maxLength!==void 0&&(t=t.max(e.maxLength)),e.format&&(t=t.refine(t=>!t||t.trim()===``||Ut(t,e.format),{message:`Invalid ${e.format} format`})),e.required?t:t.optional();case`number`:let n=h();return e.minimum!==void 0&&(n=n.min(e.minimum)),e.maximum!==void 0&&(n=n.max(e.maximum)),e.required&&(n=n.refine(e=>e!=null,{error:`Required`})),e.required?n:n.optional();case`boolean`:return e.required?b():b().optional();case`array`:let r=_($(e.items));return e.required?r:r.optional();default:return e.required?u():u().optional()}}var Wt=(e,t,n)=>t.filter(e=>`group`in e&&e.group===n).some(t=>{let n=e[t.key];return n!=null&&n!==``});function Gt(e){let t={},n=new Set;e.forEach(e=>{`group`in e&&e.group&&n.add(e.group)}),e.forEach(e=>{if(!J(e)&&!Y(e)){let n=`group`in e&&e.group,r=`condition`in e&&e.condition;(n||r)&&e.required?t[e.key]=$({...e,required:!1}):t[e.key]=$(e)}});let r=p(t),i=e.filter(e=>`condition`in e&&e.condition&&`required`in e&&e.required&&!J(e)&&!Y(e));return(n.size>0||i.length>0)&&(r=r.superRefine((t,r)=>{for(let i of n)if(Wt(t,e,i)){let n=e.filter(e=>`group`in e&&e.group===i);for(let e of n)if(`required`in e&&e.required){if(`condition`in e&&e.condition&&!X(e.condition,t))continue;let n=t[e.key];(n==null||n===``)&&r.addIssue({code:y.custom,message:`Required`,path:[e.key]})}}for(let e of i)if(!(`group`in e&&e.group)&&`condition`in e&&e.condition&&X(e.condition,t)){let n=t[e.key];(n==null||n===``)&&r.addIssue({code:y.custom,message:`Required`,path:[e.key]})}})),r}var Kt=function(e){return e.READY=`ready`,e.RESTARTING=`restarting`,e.STARTING=`starting`,e.STARTED=`started`,e.STOPPED=`stopped`,e.ERROR=`error`,e.UNKNOWN=`unknown`,e}({});export{ht as A,$e as B,Dt as C,kt as D,St as E,tt as F,V as G,B as H,dt as I,P as J,z as K,G as L,gt as M,xt as N,K as O,yt as P,ft as R,Et as S,Ct as T,R as U,Qe as V,L as W,O as X,k as Y,We as Z,Vt as _,zt as a,wt as b,Nt as c,It as d,q as f,Pt as g,Y as h,Z as i,_t as j,vt as k,Mt as l,At as m,X as n,Gt as o,jt as p,Ke as q,Lt as r,Q as s,Kt as t,J as u,Ht as v,Ot as w,Tt as x,Rt as y,at as z};
|
|
1
|
+
import{S as e}from"./vendor-CF-D4B9g.js";import{C as t,D as n,E as r,S as i,T as a,_ as ee,a as te,b as ne,c as re,d as ie,f as ae,g as oe,h as se,i as ce,l as le,m as o,n as ue,o as s,p as de,r as fe,s as pe,t as me,u as he,v as ge,w as c,x as _e,y as ve}from"./vendor-cameraui-tvNekvZ-.js";import{_ as l,a as u,b as d,c as f,d as ye,f as be,g as xe,h as p,i as m,l as Se,m as h,n as g,o as _,p as v,r as y,s as b,t as x,u as Ce,v as S,x as C,y as we}from"./vendor-zod-V2qTUMVc.js";p({tempToken:S().trim().min(1,`Temporary token is required`),code:S().trim().min(1,`Code is required`)}).strict(),p({code:S().trim().length(6,`Code must be 6 digits`)}).strict(),p({code:S().trim().min(1,`Code is required`)}).strict(),p({code:S().trim().min(1,`Code is required`)}).strict(),p({grant_type:S().optional(),username:S().trim().min(1,`Username is required`),password:S().min(1,`Password is required`),scope:S().optional(),client_id:S().optional(),client_secret:S().optional()}),p({refresh_token:S().min(1,`Refresh token is required`)}),p({id:S()});function Te(e){let t=[`kasa://`,`nest:`,`ring:`,`tapo://`];return e.some(e=>t.some(t=>e.startsWith(t)))}var Ee=[`#df2a4c`,`#2a7fdf`,`#2adf7f`,`#df7f2a`,`#7f2adf`,`#2adfdf`,`#df2adf`,`#7fdf2a`];function De(){return Ee[Math.floor(Math.random()*Ee.length)]}function Oe(){return{name:`Default Zone`,points:[[0,0],[100,0],[100,100],[0,100]],type:`contain`,filter:`include`,labels:[`motion`,`person`,`vehicle`,`animal`],isPrivacyMask:!1,color:De()}}p({enabled:b().default(!1)}).strict();var ke=S().trim().min(1,`Detection label is required`),w=we([h(),h()]),T=p({name:S().trim().min(1,`Zone Name is required`),points:w.array().min(3,`At least 3 points are required`),type:d([v(`intersect`),v(`contain`)]),filter:d([v(`include`),v(`exclude`)]),labels:ke.array(),isPrivacyMask:b(),color:S().trim().regex(/^#([0-9A-Fa-f]{3}){1,2}$/,`Must be a valid hex color (e.g. #FF0000 or #F00)`).default(`#df2a4c`)}).array(),E=p({name:S().trim().min(1,`Line Name is required`),points:we([w,w]),direction:d([v(`both`),v(`a-to-b`),v(`b-to-a`)]),labels:ke.array(),color:S().trim().regex(/^#([0-9A-Fa-f]{3}){1,2}$/,`Must be a valid hex color (e.g. #FF0000 or #F00)`).default(`#df2a4c`)}).array(),D=p({motion:p({resolution:d([v(`low`),v(`medium`),v(`high`)]),timeout:h().min(10,`Minimum 10 seconds`)}),object:p({confidence:h().min(.3,`Minimum 0.3`).max(1,`Maximum 1`)}),audio:p({minDecibels:h().min(-100,`Minimum -100 dBFS`).max(0,`Maximum 0 dBFS`),timeout:h().min(10,`Minimum 10 seconds`)}),sensor:p({timeout:h().min(10,`Minimum 10 seconds`),triggers:_(p({sensorType:S().trim().min(1,`Sensor type is required`),sensorName:S().trim().min(1,`Sensor name is required`),pluginId:S().trim().min(1,`Plugin ID is required`)})).default([])}),cascadeDetection:b().default(!0),cascadeTimeout:h().min(1,`Minimum 1 second`).max(300,`Maximum 300 seconds`).default(10),snooze:b().default(!1)}),Ae={enabled:!1,targetLabels:[`person`],minConfidence:.5,triggerDeadZone:.05,returnToHome:!1,homeWaitMs:1e4},je=p({enabled:b().default(!1),targetLabels:S().trim().min(1,`Target label is required`).array().default([`person`]),minConfidence:h().min(.3,`Minimum 0.3`).max(1,`Maximum 1`).default(.5),triggerDeadZone:h().min(0,`Minimum 0`).max(.3,`Maximum 0.3`).default(.05),returnToHome:b().default(!1),homeWaitMs:h().min(1e3,`Minimum 1000 ms`).max(6e4,`Maximum 60000 ms`).default(1e4)}),O=d([v(`high-resolution`),v(`mid-resolution`),v(`low-resolution`),v(`snapshot`)]),Me=d([v(`high-resolution`),v(`mid-resolution`),v(`low-resolution`)]),k=d([v(`bubble://`),v(`cui://`),v(`doorbird://`),v(`dvrip://`),v(`eseecloud://`),v(`ffmpeg:`),v(`flussonic://`),v(`gopro://`),v(`hass:`),v(`homekit://`),v(`http://`),v(`https://`),v(`httpx://`),v(`isapi://`),v(`ivideon:`),v(`kasa://`),v(`nest:`),v(`onvif://`),v(`ring:`),v(`roborock://`),v(`rtmp://`),v(`rtsp://`),v(`rtspx://`),v(`tapo://`),v(`tcp://`),v(`tuya://`),v(`xiaomi://`),v(`yandex:`),v(`webrtc:`),v(`webtorrent:`),v(`wyze://`)]),Ne=k.options.map(e=>e.value),Pe=RegExp(`^(${Ne.join(`|`)})`),Fe=S().refine(e=>{if(!Pe.test(e))return!1;try{return new URL(e),!0}catch{return!1}},{message:`Invalid URL format or unsupported protocol`}),Ie=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:O,useForSnapshot:b().default(!1),hotMode:b().default(!0),preload:b().default(!0),prebuffer:b().default(!1),urls:Fe.array().min(1,`At least one valid URL is required`),childSourceId:S().trim().min(1,`Child Source ID is required`).optional()}).strict(),Le=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Camera Source Name is required`).transform(e=>e.replace(/ /g,`_`).toLowerCase()),role:O,useForSnapshot:b().default(!1),hotMode:b().default(!0),preload:b().default(!0),prebuffer:b().default(!1),urls:Fe.array().min(1,`At least one valid URL is required`),childSourceId:S().trim().min(1,`Child Source ID is required`).optional()}).strict(),A=p({id:S(),name:S().trim()}),Re=p({motion:A.optional(),object:A.optional(),audio:A.optional(),face:A.optional(),licensePlate:A.optional(),ptz:A.optional(),battery:A.optional(),cameraController:A.optional(),classifier:A.array().optional(),light:A.array().optional(),siren:A.array().optional(),switch:A.array().optional(),securitySystem:A.array().optional(),contact:A.array().optional(),doorbell:A.array().optional(),hub:A.array().optional()}).strict(),ze=d([v(`auto`),v(`mse`),v(`webrtc`),v(`webrtc/tcp`)]),Be=d([v(`16:9`),v(`9:16`),v(`8:3`),v(`4:3`),v(`1:1`)]),Ve=p({fps:h().min(0,`Minimum 0 fps`).max(30,`Maximum 30 fps`)}),He=d([v(`camera`),v(`doorbell`)]),j=p({streamingMode:ze,streamingSource:Me,aspectRatio:Be}),M=p({model:S().trim().optional(),manufacturer:S().trim().optional(),hardware:S().trim().optional(),serialNumber:S().trim().optional(),firmwareVersion:S().trim().optional(),supportUrl:S().trim().optional()});p({name:S().trim().min(1,`Camera name is required`),url:C(`Must be a valid URL`).trim().min(1,`Camera URL is required`),type:d([v(`Google`),v(`Ring`),v(`HomeKit`),v(`Onvif`),v(`Hass`),v(`GoPro`),v(`Roborock`),v(`FFmpeg`),v(`DVRip`),v(`Webtorrent`)]),username:S().trim().optional(),email:Ce(`Must be a valid email`).trim().optional(),password:S().trim().optional(),pin:S().trim().length(8,`PIN must be 8 characters long`).optional(),clientId:S().trim().optional(),clientSecret:S().trim().optional(),refreshToken:S().trim().optional(),projectId:S().trim().optional()}).strict().refine(e=>e.type===`HomeKit`?!!e.pin:!0,{message:`PIN is required for HomeKit cameras`,path:[`pin`]}).refine(e=>e.type===`Google`?!!e.clientId:!0,{message:`Client ID is required for Google cameras`,path:[`clientId`]}).refine(e=>e.type===`Google`?!!e.clientSecret:!0,{message:`Client Secret is required for Google cameras`,path:[`clientSecret`]}).refine(e=>e.type===`Google`?!!e.projectId:!0,{message:`Project ID is required for Google cameras`,path:[`projectId`]}).refine(e=>e.type===`Google`?!!e.refreshToken:!0,{message:`Refresh Token is required for Google cameras`,path:[`refreshToken`]}).refine(e=>e.type===`Ring`?!!e.email:!0,{message:`Email is required`,path:[`email`]}).refine(e=>e.type===`Roborock`?!!e.username:!0,{message:`Username is required`,path:[`username`]}).refine(e=>e.type===`Roborock`||e.type===`Ring`?!!e.password:!0,{message:`Password is required`,path:[`password`]});var Ue=p({id:S(),name:S().trim()}).strict(),N=p({autoRefresh:b().default(!1),ttl:h().min(10,`Minimum 10 seconds`).max(60,`Maximum 60 seconds`).default(50),interval:h().min(10,`Minimum 10 seconds`).max(60,`Maximum 60 seconds`).default(60)}).strict(),P=p({_id:S().default(e()).transform(()=>e()),nativeId:S().trim().optional(),pluginInfo:Ue.optional(),disabled:b().default(!1),name:S().trim().min(1,`Camera name is required`),room:S().trim().min(1,`Room is required`).default(`Default`),type:He.default(`camera`),isCloud:b().default(!1),snapshotSettings:N.default({autoRefresh:!1,ttl:50,interval:60}),info:M.default({model:`IP Camera`,manufacturer:`camera.ui`,hardware:`Camera`,serialNumber:`Unknown`,firmwareVersion:`Unknown`,supportUrl:`Unknown`}),sources:Ie.array().refine(e=>e.some(e=>e.role===`high-resolution`||e.role===`mid-resolution`||e.role===`low-resolution`),{path:[`sources[].role`],message:`One of the roles "high-resolution", "mid-resolution" or "low-resolution" is required`}).refine(e=>e.filter(e=>e.useForSnapshot).length<=1,{message:`Only one source can be used for snapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.useForSnapshot),{message:`Snapshot source can not be used with useForSnapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.hotMode),{message:`Snapshot source can not be used with hotMode`}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.preload),{message:`Snapshot source can not be used with preload`}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.prebuffer),{message:`Snapshot source can not be used with prebuffer`}),plugins:A.array().default([]),assignments:Re.default({}),interfaceSettings:j.default({streamingMode:`webrtc`,streamingSource:`high-resolution`,aspectRatio:`16:9`}),detectionZones:T.default([]),detectionLines:E.default([]),detectionSettings:D.default({motion:{resolution:`low`,timeout:30},object:{confidence:.5},audio:{minDecibels:-40,timeout:30},sensor:{timeout:30,triggers:[]},cascadeDetection:!0,cascadeTimeout:10,snooze:!1}),ptzAutotrack:je.default(Ae),frameWorkerSettings:Ve.default({fps:10})}).strict();P.transform(e=>{let t=e.sources.flatMap(e=>e.urls),n=e.detectionZones.length===0?[Oe()]:e.detectionZones;return e.isCloud||Te(t)?{...e,isCloud:!0,detectionZones:n}:{...e,detectionZones:n}});var We=p({disabled:b().optional(),type:He.optional(),name:S().trim().min(1,`Camera name is required`).optional(),room:S().trim().min(1,`Room is required`).optional(),isCloud:b().optional(),snapshotSettings:N.partial().optional(),info:M.partial().optional(),sources:Le.array().refine(e=>e.some(e=>e.role===`high-resolution`||e.role===`mid-resolution`||e.role===`low-resolution`),{path:[`sources[].role`],message:`One of the roles "high-resolution", "mid-resolution" or "low-resolution" is required`}).refine(e=>e.filter(e=>e.useForSnapshot).length<=1,{message:`Only one source can be used for snapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.useForSnapshot),{message:`Snapshot source can not be used with useForSnapshot`,path:[`sources`]}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.hotMode),{message:`Snapshot source can not be used with hotMode`}).refine(e=>e.filter(e=>e.role===`snapshot`).every(e=>!e.preload),{message:`Snapshot source can not be used with preload`}).optional(),plugins:A.array().optional(),assignments:Re.partial().optional(),interfaceSettings:j.partial().optional(),detectionZones:T.optional(),detectionLines:E.optional(),detectionSettings:D.partial().optional(),ptzAutotrack:je.partial().optional(),frameWorkerSettings:Ve.partial().optional()}).strict().transform(e=>{if(e.sources){let t=e.sources.flatMap(e=>e.urls);if(e.isCloud===!0||Te(t))return{...e,isCloud:!0}}return e});p({url:S().trim().refine(e=>!/^\s*(exec|echo|expr):/i.test(e),`Command-execution stream sources are not allowed`)}).strict(),p({cameraname:S()}),p({cameraname:S(),sourcename:S()}),p({cameraid:S(),sourcename:S()}),p({cameraname:S(),pluginname:S()}),p({cameraname:S(),scope:S(),pluginname:S()}),p({cameraname:S(),pluginname:S(),sensorId:S()}),p({cameraname:S(),scope:S(),pluginname:S(),sensorId:S()}),p({type:S().optional()}),p({video:x().optional(),audio:x().optional(),microphone:x().optional()}),p({forceNew:x().optional()}),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`),url:C(`Must be a valid URL`).trim(),credentials:p({username:S().trim().min(1,`Username is required`),password:S().min(1,`Password is required`)})}),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional(),url:C(`Must be a valid URL`).trim().optional(),credentials:p({username:S().trim().min(1,`Username is required`),password:S().min(1,`Password is required`)}).nullable().optional()}),p({id:S().min(1,`ID is required`)});var Ge=/^((@[\w-.]*)\/)?(camera-ui-[\w-]*)$/,Ke=function(e){return e.READY=`ready`,e.STARTING=`starting`,e.STARTED=`started`,e.STOPPING=`stopping`,e.STOPPED=`stopped`,e.ERROR=`error`,e.UNKNOWN=`unknown`,e.DISABLED=`disabled`,e}({});function F(e){return e.mimetype!==void 0}function qe(e){return F(e)?Buffer.byteLength(e._buf):e.size}function Je(e){return F(e)?e.mimetype:e.type}function I(e,t,n,r){return f().refine(t=>qe(t)<=e,n).refine(e=>t.includes(Je(e)),r)}var Ye=p({start:g().optional(),page:g().optional(),pageSize:g().optional()}),L=[`image/jpeg`,`image/png`],Xe=1024*1024*2,R=[`video/mp4`,`video/quicktime`],z=1024*1024*10,B=[`audio/mpeg`,`audio/wav`,`audio/ogg`],V=1024*1024*2,H=()=>I(Xe,L,`Max file size is 2 MB`,`.jpeg and .png files are accepted`),U=f().transform(e=>JSON.parse(e.value)),W=f().transform(e=>JSON.parse(e.value)),Ze=f().transform(e=>JSON.parse(e.value));p({pluginname:S().trim().refine(e=>Ge.test(e),`Not a valid plugin name`),pluginversion:S().trim().optional().default(`latest`)}).strict(),p({actionId:S(),payload:u()}).strict(),l(u(),u()),p({upload:H(),metadata:W,config:U}),p({upload:I(V,B,`Max file size is 2 MB`,`.mp3, .wav and .ogg files are accepted`),metadata:Ze,config:U}),p({upload:I(z,R,`Max file size is 5 MB`,`.mp4 files are accepted`),config:U}),p({upload:H(),metadata:W,config:U}),p({upload:H(),metadata:W,config:U}),p({upload:H(),metadata:W,config:U}),p({pluginname:S()}),p({scope:S(),pluginname:S()}),Ye.extend({pluginname:S().trim().optional()}),p({removeStorage:x().optional()});var Qe=p({enabled:b().optional(),directEnabled:b().optional(),directMode:m([`cloudflare`,`customDomain`]).optional(),customDomain:p({url:C(`Must be a valid URL`).trim().nullable()}).strict().optional(),cloudflare:p({mode:m([`quick`,`token`,`managed`]).optional(),hostname:S().trim().min(1,`Hostname is required`).max(253,`Hostname cannot be more than 253 characters`).nullable().optional(),token:S().trim().min(1,`Token is required`).nullable().optional()}).strict().optional()}).strict().refine(e=>!(e.directMode===`customDomain`&&!e.customDomain?.url),{message:`Custom domain URL is required when directMode is "customDomain"`,path:[`customDomain`,`url`]}).refine(e=>!(e.cloudflare?.mode===`token`&&!e.cloudflare?.token),{message:`Token is required when cloudflare.mode is "token"`,path:[`cloudflare`,`token`]}).refine(e=>!(e.cloudflare?.mode&&e.cloudflare.mode!==`quick`&&!e.cloudflare?.hostname),{message:`Hostname is required when cloudflare.mode is "token" or "managed"`,path:[`cloudflare`,`hostname`]});p({mode:m([`cloudflare`,`customDomain`])}).strict(),p({hostname:S().trim().min(1,`Hostname is required`).max(253,`Hostname cannot be more than 253 characters`).regex(/^[a-z0-9.-]+\.[a-z]{2,}$/i,`Invalid hostname`)}).strict(),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional()}).strict(),p({name:S().trim().min(1,`Name is required`).max(100,`Name cannot be more than 100 characters`).optional()}).strict(),p({name:S().trim().min(1,`Server name is required`).max(100,`Server name cannot be more than 100 characters`)}).strict(),p({version:S().trim().optional().default(`latest`)}).strict();var $e=p({serverAddresses:d([ye().trim(),be().trim()]).array().default([])}).strict();l(S(),u()),p({key:S()}).strict(),p({key:S(),payload:u()}).strict();var et=[`image/jpeg`,`image/jpg`,`image/png`],tt=1024*1024*5,nt=p({index:h(),cameraId:S(),colSpan:h().optional(),rowSpan:h().optional(),x:h().optional(),y:h().optional()}),rt=d([v(1),v(4),v(6),v(7),v(9),v(10),v(12),v(13),v(15),v(16),v(20),v(26)]),it=d([v(`dnd`),v(`view`)]),at=p({_id:S().default(e()).transform(()=>e()),name:S().trim().min(1,`Layout name is required`),viewSize:rt,cameras:nt.array(),type:it});p({name:S().trim().min(1,`Layout name is required`),viewSize:rt,cameras:nt.array()}).partial().optional();var ot=p({views:at.array()}),st=m([`contact`,`temperature`,`humidity`,`occupancy`,`smoke`,`leak`,`light`,`siren`,`switch`,`lock`,`garage`,`doorbell`,`securitySystem`,`battery`]),ct=Se(`type`,[p({_id:S().default(e()).transform(()=>e()),type:v(`camera`),cameraId:S(),points:w}),p({_id:S().default(e()).transform(()=>e()),type:v(`sensor`),sensorType:st,sensorName:S(),sensorPluginId:S(),sensorCameraId:S(),points:w})]);d([p({type:v(`camera`),cameraId:S(),points:w}).partial(),p({type:v(`sensor`),sensorType:st,sensorName:S(),sensorPluginId:S(),sensorCameraId:S(),points:w}).partial()]).optional();var lt=p({shortcuts:ct.array()}),ut=p({camview:ot,cameras:l(S().trim(),lt)}),G=S().trim().min(10,`Password must be at least 10 characters long`).regex(/[A-Z]/,`Password must contain at least one uppercase letter`).regex(/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/,`Password must contain at least one special character (!@#$%^&*()_+-=[]{};:'"\\|,.<>/?)`).max(32,`Password cannot be more than 32 characters`),dt=p({_id:S().default(e()).transform(()=>e()),username:S().trim().min(1,`Username is required`),password:G,passwordConfirm:S().trim().min(1,`Please confirm your password`),role:d([v(`admin`),v(`user`)]),firstLogin:b().default(!0),preferences:ut.default({camview:{views:[]},cameras:{}})}).strict().refine(e=>e.password===e.passwordConfirm,{path:[`passwordConfirm`],message:`Passwords do not match`});p({username:S().trim().min(1,`Username is required`),password:S().trim().min(1,`Password is required`),kind:m([`native`,`web`]),persistent:b().default(!1),device:p({id:S().min(1,`Device id is required`).max(128,`Device id cannot be more than 128 characters`),name:S().trim().min(1,`Device name is required`).max(100,`Device name cannot be more than 100 characters`)})}).strict();var ft=p({username:S().trim().min(1,`Username is required`).optional(),password:G.optional(),passwordConfirm:S().trim().optional(),role:d([v(`admin`),v(`user`)]).optional(),upload:xe(I(tt,et,`Max file size is 5MB.`,`.jpg, .jpeg, .png files are accepted.`)),firstLogin:b().optional(),preferences:ut.partial().optional()}).strict().refine(e=>e.password===e.passwordConfirm,{path:[`passwordConfirm`],message:`Passwords do not match`});p({username:S()}),p({username:S(),cameraname:S()}),p({username:S(),cameraname:S(),shortcutid:S()}),p({username:S(),viewid:S()}),p({username:S()});var K={[n.Motion]:{category:r.Sensor,assignmentKey:`motion`,multiProvider:!1,isDetectionType:!0},[n.Object]:{category:r.Sensor,assignmentKey:`object`,multiProvider:!1,isDetectionType:!0},[n.Audio]:{category:r.Sensor,assignmentKey:`audio`,multiProvider:!1,isDetectionType:!0},[n.Face]:{category:r.Sensor,assignmentKey:`face`,multiProvider:!1,isDetectionType:!0},[n.LicensePlate]:{category:r.Sensor,assignmentKey:`licensePlate`,multiProvider:!1,isDetectionType:!0},[n.Classifier]:{category:r.Sensor,assignmentKey:`classifier`,multiProvider:!0,isDetectionType:!0},[n.Clip]:{category:r.Sensor,assignmentKey:`clip`,multiProvider:!1,isDetectionType:!0},[n.Contact]:{category:r.Sensor,assignmentKey:`contact`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Light]:{category:r.Control,assignmentKey:`light`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`on`,value:!0,sustained:!0}},[n.Siren]:{category:r.Control,assignmentKey:`siren`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`active`,value:!0,sustained:!0}},[n.Switch]:{category:r.Control,assignmentKey:`switch`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`on`,value:!0,sustained:!0}},[n.PTZ]:{category:r.Control,assignmentKey:`ptz`,multiProvider:!1,isDetectionType:!1},[n.Lock]:{category:r.Control,assignmentKey:`lock`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`currentState`,value:1,sustained:!0}},[n.SecuritySystem]:{category:r.Control,assignmentKey:`securitySystem`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`currentState`,value:4,sustained:!0}},[n.Doorbell]:{category:r.Trigger,assignmentKey:`doorbell`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`ring`,value:!0,sustained:!1}},[n.Temperature]:{category:r.Info,assignmentKey:`temperature`,multiProvider:!0,isDetectionType:!1},[n.Humidity]:{category:r.Info,assignmentKey:`humidity`,multiProvider:!0,isDetectionType:!1},[n.Occupancy]:{category:r.Sensor,assignmentKey:`occupancy`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Smoke]:{category:r.Sensor,assignmentKey:`smoke`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Leak]:{category:r.Sensor,assignmentKey:`leak`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`detected`,value:!0,sustained:!0}},[n.Garage]:{category:r.Control,assignmentKey:`garage`,multiProvider:!0,isDetectionType:!1,cascadeTrigger:{property:`currentState`,value:0,sustained:!0}},[n.Battery]:{category:r.Info,assignmentKey:`battery`,multiProvider:!1,isDetectionType:!1}};n.Battery,c.Charging,t.Charging,c.Low,t.LowBattery,n.Light,o.Brightness,de.Brightness,n.Siren,s.Volume,te.Volume;function pt(){return Object.entries(K).filter(([,e])=>e.multiProvider).map(([e])=>e)}function mt(){return Object.entries(K).filter(([,e])=>e.isDetectionType).map(([e])=>e)}function ht(e){return K[e].assignmentKey}function gt(){return Object.entries(K).filter(([,e])=>e.category===r.Sensor&&!e.multiProvider).map(([e])=>e)}function _t(){return Object.entries(K).filter(([,e])=>!e.multiProvider&&e.category!==r.Sensor).map(([e])=>e)}function vt(){return Object.entries(K).filter(([,e])=>e.multiProvider).map(([e])=>e)}function yt(e){return!K[e].multiProvider}var bt={[n.Motion]:Object.values(ie),[n.Object]:Object.values(he),[n.Audio]:Object.values(a),[n.Face]:Object.values(ve),[n.LicensePlate]:Object.values(se),[n.Classifier]:Object.values(i),[n.Clip]:[],[n.Contact]:Object.values(_e),[n.Temperature]:Object.values(ue),[n.Humidity]:Object.values(ee),[n.Occupancy]:Object.values(le),[n.Smoke]:Object.values(ce),[n.Leak]:Object.values(oe),[n.Light]:Object.values(o),[n.Siren]:Object.values(s),[n.Switch]:Object.values(fe),[n.Lock]:Object.values(ae),[n.Garage]:Object.values(ge),[n.PTZ]:Object.values(re),[n.SecuritySystem]:Object.values(pe),[n.Doorbell]:Object.values(ne),[n.Battery]:Object.values(c)};function xt(e){return bt[e]??[]}new Set(pt()),new Set(mt());var St=`bubble://.cui://.doorbird://.dvrip://.echo:.eseecloud://.exec:.expr:.ffmpeg:.flussonic://.gopro://.hass:.homekit://.http://.https://.httpx://.isapi://.ivideon:.kasa://.nest:.onvif://.ring:.roborock://.rtmp://.rtsp://.rtspx://.tapo://.tcp://.tuya://.xiaomi://.yandex:.webrtc:.webtorrent:.wyze://`.split(`.`),Ct=[`#backchannel=`,`#header=`,`#media=audio`,`#media=video`,`#timeout=10`,`#timeout=20`,`#timeout=30`,`#transport=`],wt=`#audio=aac.#audio=aac/16000.#audio=mp3.#audio=opus.#audio=pcm.#audio=pcm/8000.#audio=pcm/16000.#audio=pcm/48000.#audio=pcma.#audio=pcma/8000.#audio=pcma/16000.#audio=pcma/48000.#audio=pcml.#audio=pcml/8000.#audio=pcml/44100.#audio=pcmu.#audio=pcmu/8000.#audio=pcmu/16000.#audio=pcmu/48000.#drawtext.#hardware.#hardware=cuda.#hardware=dxva2.#hardware=rkmpp.#hardware=v4l2m2m.#hardware=vaapi.#hardware=videotoolbox.#height=.#raw=.#rotate=-90.#rotate=90.#rotate=180.#rotate=270.#video=copy.#video=h264.#video=h265.#video=mjpeg.#width=`.split(`.`),Tt=[`client_id=`,`client_private=`,`device_id=`,`device_public=`],Et=[`#header=`],Dt=[`client_id=`,`client_secret=`,`refresh_token=`,`project_id=`,`device_id=`],Ot=[`device_id=`,`refresh_token=`],kt=[`#client_id=`,`#format=openipc`,`#format=wyze`,`#format=kinesis`,`#ice_servers=`];function At(e){return e.type===`string`&&!(`enum`in e)}function jt(e){return e.type===`number`}function Mt(e){return e.type===`boolean`}function q(e){return e.type===`string`&&`enum`in e}function Nt(e){return e.type===`array`}function J(e){return e.type===`button`}function Y(e){return e.type===`submit`}function Pt(e){return At(e)&&(!e.format||e.format!==`qrCode`&&e.format!==`image`)}var Ft=(e,t)=>{let n=Q(t,e.key),r=e.value;switch(e.operator??`eq`){case`eq`:return n===r;case`neq`:return n==null||n===``?!1:n!==r;case`gt`:return typeof n==`number`&&typeof r==`number`&&n>r;case`lt`:return typeof n==`number`&&typeof r==`number`&&n<r;case`in`:return(Array.isArray(r)?r:[r]).includes(n);case`nin`:return n==null||n===``?!1:!(Array.isArray(r)?r:[r]).includes(n);default:return!0}};function X(e,t){return Array.isArray(e)?e.every(e=>Ft(e,t)):Ft(e,t)}function It(e,t){if(!e||Object.keys(e).length===0)return!0;let n=t.filter(e=>!J(e)&&!Y(e));for(let t of n){let n=Q(e,t.key),r=Z(t);if(n!==void 0&&!me(n,r,!0))return!1}return!0}function Z(e){if(`defaultValue`in e&&e.defaultValue!==void 0)return e.defaultValue;switch(e.type){case`string`:return q(e)?e.multiple?[]:e.required?e.enum[0]:``:``;case`number`:return 0;case`boolean`:return!1;case`array`:return[];default:return}}function Lt(e){let t={};for(let n of e)J(n)||Y(n)||(t[n.key]=Z(n));return t}function Q(e={},t){if(!t.includes(`.`)&&!t.includes(`[`))return e[t];let n=t.split(`.`).reduce((e,t)=>{if(t.includes(`[`)){let[n,r]=t.split(`[`);e.push(n,r.slice(0,-1))}else e.push(t);return e},[]),r=e;for(let e of n){if(r==null)return;r=r[e]}return r}function Rt(e,t,n){if(!t.includes(`.`)&&!t.includes(`[`)){e[t]=n;return}let r=t.split(`.`).reduce((e,t)=>{if(t.includes(`[`)){let[n,r]=t.split(`[`);e.push(n,r.slice(0,-1))}else e.push(t);return e},[]),i=r.pop();if(!i)return;let a=e;for(let e of r){if(a[e]===void 0||a[e]===null){let t=r[r.indexOf(e)+1];a[e]=isNaN(Number(t))?{}:[]}a=a[e]}a[i]=n}function zt(e,t){let n={};for(let r of e)if(`store`in r&&r.store&&!J(r)&&!Y(r)){let e=Q(t,r.key);e!==void 0&&(n[r.key]=e)}return n}function Bt(e,t){return t?e.filter(e=>`group`in e&&e.group===t):e}function Vt(e,t){let n=Bt(e,t);return n.length>0&&n.every(e=>`readonly`in e&&e.readonly)}function Ht(e,t){let n=Bt(e,t);return n.length>0&&n.some(e=>`store`in e&&e.store)}function Ut(e,t){if(!t)return!0;let n={"date-time":e=>/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(.\d+)?(Z|[+-]\d{2}:\d{2})?$/.test(e),date:e=>/^\d{4}-\d{2}-\d{2}$/.test(e),time:e=>/^([01]?[0-9]|2[0-3]):([0-5][0-9])(:([0-5][0-9]))?$/.test(e),email:e=>/^\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,7}\b$/.test(e),uuid:e=>/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/.test(e),ipv4:e=>/^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/.test(e),ipv6:e=>/^\s*([0-9a-fA-F]{1,4}:){7}([0-9a-fA-F]{1,4})\s*$/.test(e)};return t in n?n[t](e):!0}function $(e){if(J(e)||Y(e))return u();switch(e.type){case`string`:if(q(e))if(e.multiple){let t=_(S().trim().refine(t=>e.enum.includes(t),{error:`Invalid selection`}));return e.required&&(t=t.min(1,{error:`Required`})),e.required?t:t.optional()}else{let t=m(e.enum);return e.required?t:t.optional()}let t=S().trim();return e.required&&(t=t.nonempty(`Required`)),e.minLength!==void 0&&(t=t.min(e.minLength)),e.maxLength!==void 0&&(t=t.max(e.maxLength)),e.format&&(t=t.refine(t=>!t||t.trim()===``||Ut(t,e.format),{message:`Invalid ${e.format} format`})),e.required?t:t.optional();case`number`:let n=h();return e.minimum!==void 0&&(n=n.min(e.minimum)),e.maximum!==void 0&&(n=n.max(e.maximum)),e.required&&(n=n.refine(e=>e!=null,{error:`Required`})),e.required?n:n.optional();case`boolean`:return e.required?b():b().optional();case`array`:let r=_($(e.items));return e.required?r:r.optional();default:return e.required?u():u().optional()}}var Wt=(e,t,n)=>t.filter(e=>`group`in e&&e.group===n).some(t=>{let n=e[t.key];return n!=null&&n!==``});function Gt(e){let t={},n=new Set;e.forEach(e=>{`group`in e&&e.group&&n.add(e.group)}),e.forEach(e=>{if(!J(e)&&!Y(e)){let n=`group`in e&&e.group,r=`condition`in e&&e.condition;(n||r)&&e.required?t[e.key]=$({...e,required:!1}):t[e.key]=$(e)}});let r=p(t),i=e.filter(e=>`condition`in e&&e.condition&&`required`in e&&e.required&&!J(e)&&!Y(e));return(n.size>0||i.length>0)&&(r=r.superRefine((t,r)=>{for(let i of n)if(Wt(t,e,i)){let n=e.filter(e=>`group`in e&&e.group===i);for(let e of n)if(`required`in e&&e.required){if(`condition`in e&&e.condition&&!X(e.condition,t))continue;let n=t[e.key];(n==null||n===``)&&r.addIssue({code:y.custom,message:`Required`,path:[e.key]})}}for(let e of i)if(!(`group`in e&&e.group)&&`condition`in e&&e.condition&&X(e.condition,t)){let n=t[e.key];(n==null||n===``)&&r.addIssue({code:y.custom,message:`Required`,path:[e.key]})}})),r}var Kt=function(e){return e.READY=`ready`,e.RESTARTING=`restarting`,e.STARTING=`starting`,e.STARTED=`started`,e.STOPPED=`stopped`,e.ERROR=`error`,e.UNKNOWN=`unknown`,e}({});export{ht as A,$e as B,Dt as C,kt as D,St as E,tt as F,V as G,B as H,dt as I,P as J,z as K,G as L,gt as M,xt as N,K as O,yt as P,ft as R,Et as S,Ct as T,R as U,Qe as V,L as W,O as X,k as Y,We as Z,Vt as _,zt as a,wt as b,Nt as c,It as d,q as f,Pt as g,Y as h,Z as i,_t as j,vt as k,Mt as l,At as m,X as n,Gt as o,jt as p,Ke as q,Lt as r,Q as s,Kt as t,J as u,Ht as v,Ot as w,Tt as x,Rt as y,at as z};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Di as e}from"./vendor-cameraui-
|
|
1
|
+
import{Di as e}from"./vendor-cameraui-tvNekvZ-.js";import{d as t}from"./vendor-core-DinQdIbm.js";var n=[`account`,`appearance`,`user`,`recordings`,`instances`,`remote`,`backup`,`system`],r={cameras:{showEvents:!0,order:[],groupOrder:{},viewMode:`default`,dragDisabled:!0},camview:{dragDisabled:!1},config:{zoom:12},console:{zoom:12},interface:{showBottomBarOnMobile:!0,selectedSettingsView:`account`,navbarStayCollapsed:!0}},i=t(`ui`,()=>({uiSettings:e(`ui`,r,{mergeDefaults:!0})}));export{i as n,n as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./api-
|
|
1
|
+
import"./api-DG-9_slP.js";import"./vendor-CF-D4B9g.js";async function e(){return{available:!1,enrolled:!1}}async function t(e){return!1}async function n(e,t){}async function r(e){}async function i(e,t){return null}export{i as a,n as i,r as n,t as r,e as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Yt as e}from"./vendor-CF-D4B9g.js";import{En as t,Kt as n}from"./vendor-cameraui-
|
|
1
|
+
import{Yt as e}from"./vendor-CF-D4B9g.js";import{En as t,Kt as n}from"./vendor-cameraui-tvNekvZ-.js";import{t as r}from"./cameras-CuAJzX9E.js";import{A as i,N as a,O as o}from"./types-QvsYiGdQ.js";function s(){let{data:s}=new r().getCamerasQuery({page:1,pageSize:-1}),c=e(()=>s.value?.result??[]),l=e(()=>c.value.map(e=>({label:e.name,value:e._id})));function u(e){let n=c.value.find(t=>t._id===e);return n?.assignments?Object.values(t).filter(e=>{let t=i(e),r=n.assignments[t];return r?Array.isArray(r)?r.length>0:!0:!1}).map(e=>({label:e,value:e,meta:o[e]})):[]}function d(t,r){let{sensors:i,isLoading:a}=n(t,r);return{instanceOptions:e(()=>i.value.map(e=>({label:e.displayName.value||e.name,sensorName:e.name,pluginId:e.pluginId}))),isLoading:a}}function f(e){return a(e).map(e=>({label:e,value:e}))}return{cameras:c,cameraOptions:l,getSensorTypes:u,useSensorInstances:d,getPropertiesForSensor:f}}export{s as t};
|
package/dist/interface/assets/{useCuiCameraDrawer-DW9-Cdys.js → useCuiCameraDrawer-zbw8XiW5.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$n as e,Yt as t}from"./vendor-CF-D4B9g.js";import{Ci as n}from"./vendor-cameraui-
|
|
1
|
+
import{$n as e,Yt as t}from"./vendor-CF-D4B9g.js";import{Ci as n}from"./vendor-cameraui-tvNekvZ-.js";var r=n(Symbol(`cui-camera-drawer`)),i={position:`right`,showCloseIcon:!1,modal:!0,dismissable:!0,baseZIndex:1e3,blockScroll:!0,pt:{root:{class:`w-full sm:w-[400px]`}}};function a(){let n=e(!1),a=t(()=>n.value);return r.on(e=>{switch(e.type){case`close`:n.value=!1;break;case`open`:n.value=!0;break}}),{open:(e,t)=>{r.emit({type:`open`,options:e,props:{...i,...t}}),n.value=!0},close:()=>{r.emit({type:`close`}),n.value=!1},isOpen:a,getEventBus:()=>r}}export{a as n,i as t};
|