@camera.ui/server 0.0.46 → 0.0.47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/interface/{@tanstack.DpCjjLhb.0.0.46.js → @tanstack.KC2ukFKU.0.0.47.js} +1 -1
  2. package/dist/interface/{@vee-validate.Bs1leH4B.0.0.46.js → @vee-validate.C4VrKMip.0.0.47.js} +1 -1
  3. package/dist/interface/{@vue.YfIN5b-F.0.0.46.js → @vue.DezVlW9X.0.0.47.js} +1 -1
  4. package/dist/interface/{@vueform.BJR4IpsZ.0.0.46.js → @vueform.kIP7DPry.0.0.47.js} +1 -1
  5. package/dist/interface/{@vueuse.CaSJn4a8.0.0.46.js → @vueuse.BFkHh2LU.0.0.47.js} +1 -1
  6. package/dist/interface/{Account.Dc4r6VZb.0.0.46.js → Account.BvORV_W3.0.0.47.js} +1 -1
  7. package/dist/interface/{Adminpanel.DpslhzP8.0.0.46.js → Adminpanel.CzvPVNEX.0.0.47.js} +2 -2
  8. package/dist/interface/{Appearance.2hNmUdvZ.0.0.46.js → Appearance.ooMNV38-.0.0.47.js} +1 -1
  9. package/dist/interface/{Backup.Cgx3NOgu.0.0.46.js → Backup.D_oksJXL.0.0.47.js} +1 -1
  10. package/dist/interface/{Camera.3YFilISm.0.0.46.js → Camera.BFP0My0E.0.0.47.js} +1 -1
  11. package/dist/interface/{Cameras.D_qN-YP9.0.0.46.js → Cameras.5lGQjZFV.0.0.47.js} +1 -1
  12. package/dist/interface/{Camview.BcBI0FdV.0.0.46.js → Camview.CVVuW2UX.0.0.47.js} +1 -1
  13. package/dist/interface/{Config.DyReTfde.0.0.46.js → Config.BnZg5sa1.0.0.47.js} +1 -1
  14. package/dist/interface/{Console.CGFpSWqs.0.0.46.js → Console.CWj0630W.0.0.47.js} +1 -1
  15. package/dist/interface/{FirstSteps.DMrosuCb.0.0.46.js → FirstSteps.CoCP8OIO.0.0.47.js} +1 -1
  16. package/dist/interface/{NewCamera.B-OnBuJr.0.0.46.js → NewCamera.8LEgH_Pw.0.0.47.js} +1 -1
  17. package/dist/interface/{Plugin.CkU9vKuL.0.0.46.js → Plugin.PZzEqise.0.0.47.js} +1 -1
  18. package/dist/interface/{Plugins.ySDRgHss.0.0.46.js → Plugins.BIjJXJhA.0.0.47.js} +1 -1
  19. package/dist/interface/Recordings.8bUr1vxF.0.0.47.js +1 -0
  20. package/dist/interface/Recordings.D0GEfVMo.0.0.47.js +1 -0
  21. package/dist/interface/{Settings.q3mC5O2X.0.0.46.js → Settings.B0qx_T7U.0.0.47.js} +1 -1
  22. package/dist/interface/{System.DAwAIoTW.0.0.46.js → System.D3F3CdCL.0.0.47.js} +1 -1
  23. package/dist/interface/{User.3iXc8BwJ.0.0.46.js → User.XfwMHLYl.0.0.47.js} +1 -1
  24. package/dist/interface/{VConfigEditor.vue_vue_type_script_setup_true_lang.ChUNu--D.0.0.46.js → VConfigEditor.vue_vue_type_script_setup_true_lang.BPIo5y6p.0.0.47.js} +2 -2
  25. package/dist/interface/{VConsole.DT3e4YM-.0.0.46.js → VConsole.B8Ak4KkT.0.0.47.js} +1 -1
  26. package/dist/interface/{VPlayer.D0E5Lw70.0.0.46.js → VPlayer.ulAyWO5W.0.0.47.js} +1 -1
  27. package/dist/interface/{VPluginCard.DrTI-x6r.0.0.46.js → VPluginCard.DOqzU8PY.0.0.47.js} +1 -1
  28. package/dist/interface/{ace-builds.iNjWqSW3.0.0.46.js → ace-builds.DWuy9izs.0.0.47.js} +1 -1
  29. package/dist/interface/{apexcharts.Cp5axPS1.0.0.46.js → apexcharts.C1BRlqdn.0.0.47.js} +1 -1
  30. package/dist/interface/{backup.DHvUA-qh.0.0.46.js → backup.Dnt3gIB0.0.0.47.js} +1 -1
  31. package/dist/interface/{dnd-core.B4lLH3kr.0.0.46.js → dnd-core.B4Gd4Sv9.0.0.47.js} +1 -1
  32. package/dist/interface/{draggabilly.CTmmLEk2.0.0.46.js → draggabilly.CGqgfnLL.0.0.47.js} +1 -1
  33. package/dist/interface/{engine.io-client.BAIdff8t.0.0.46.js → engine.io-client.BtPIzVR8.0.0.47.js} +1 -1
  34. package/dist/interface/{fast-deep-equal.DIpi-R9G.0.0.46.js → fast-deep-equal.VKaZmkSo.0.0.47.js} +1 -1
  35. package/dist/interface/{highlight.js.BdZCfgsO.0.0.46.js → highlight.js.CTJMcRfp.0.0.47.js} +1 -1
  36. package/dist/interface/index.html +32 -32
  37. package/dist/interface/{linkify-it.CFjEs7Ib.0.0.46.js → linkify-it.N9RKNnnU.0.0.47.js} +1 -1
  38. package/dist/interface/{main.BAJ_SBax.0.0.46.js → main.Bfi54mpo.0.0.47.js} +3 -3
  39. package/dist/interface/{markdown-it.BjTkcooo.0.0.46.js → markdown-it.C27EwwXC.0.0.47.js} +1 -1
  40. package/dist/interface/{nprogress.Dxe0bwSt.0.0.46.js → nprogress.C_XP7ay3.0.0.47.js} +1 -1
  41. package/dist/interface/{pinia.D5BiAQDi.0.0.46.js → pinia.D5t8ANVz.0.0.47.js} +1 -1
  42. package/dist/interface/{plugins.C5ClAgpW.0.0.46.js → plugins.BmJmeob8.0.0.47.js} +1 -1
  43. package/dist/interface/{qrcode.BdkYO5nc.0.0.46.js → qrcode.Ds9-9D0-.0.0.47.js} +1 -1
  44. package/dist/interface/{react-dnd-touch-backend.nZGaXD9C.0.0.46.js → react-dnd-touch-backend.5fkNczuN.0.0.47.js} +1 -1
  45. package/dist/interface/{rxjs.mfVNcnDG.0.0.46.js → rxjs.DP8rFqfy.0.0.47.js} +1 -1
  46. package/dist/interface/{socket.io-client.DQuzwRyg.0.0.46.js → socket.io-client.BoG4x2cn.0.0.47.js} +1 -1
  47. package/dist/interface/{socket.io-parser.Bcxk4LCf.0.0.46.js → socket.io-parser.ISF4MRnx.0.0.47.js} +1 -1
  48. package/dist/interface/sw.js +1 -1
  49. package/dist/interface/{system.gZMLRtGG.0.0.46.js → system.BajOLXmr.0.0.47.js} +1 -1
  50. package/dist/interface/{unidragger.Dn3KP50T.0.0.46.js → unidragger.DrJaOPBW.0.0.47.js} +1 -1
  51. package/dist/interface/{vee-validate.7Af0cEu8.0.0.46.js → vee-validate.BKNBGBG7.0.0.47.js} +1 -1
  52. package/dist/interface/{vue-i18n.T2yW9_E4.0.0.46.js → vue-i18n.DlLclLdQ.0.0.47.js} +1 -1
  53. package/dist/interface/{vue-inline-svg.CZF3xeGC.0.0.46.js → vue-inline-svg.CuWcYp59.0.0.47.js} +1 -1
  54. package/dist/interface/{vue-router.BUv32z-J.0.0.46.js → vue-router.L-Fx2Wkc.0.0.47.js} +1 -1
  55. package/dist/interface/{vue3-apexcharts.DFi4koaq.0.0.46.js → vue3-apexcharts.CyfS1FwU.0.0.47.js} +1 -1
  56. package/dist/interface/{vue3-dnd.DZ4V2dzk.0.0.46.js → vue3-dnd.OfyEv4CN.0.0.47.js} +1 -1
  57. package/dist/interface/{vue3-toastify.CFDXIP-M.0.0.46.js → vue3-toastify.C8OkAkuT.0.0.47.js} +1 -1
  58. package/dist/interface/{vuetify.C_-bCfce.0.0.46.js → vuetify.CE708yL5.0.0.47.js} +1 -1
  59. package/dist/server/package.json +5 -5
  60. package/dist/server/src/api/services/cameras.service.js +9 -9
  61. package/dist/server/src/api/services/cameras.service.js.map +1 -1
  62. package/package.json +5 -5
  63. package/dist/interface/Recordings.COHp32zT.0.0.46.js +0 -1
  64. package/dist/interface/Recordings.CjfNumxB.0.0.46.js +0 -1
  65. /package/dist/interface/{@babel.l0sNRNKZ.0.0.46.js → @babel.l0sNRNKZ.0.0.47.js} +0 -0
  66. /package/dist/interface/{@intlify.Do1-T-x0.0.0.46.js → @intlify.Do1-T-x0.0.0.47.js} +0 -0
  67. /package/dist/interface/{@mdi.CbjpODVZ.0.0.46.js → @mdi.CbjpODVZ.0.0.47.js} +0 -0
  68. /package/dist/interface/{@react-dnd.CcwRs9xb.0.0.46.js → @react-dnd.CcwRs9xb.0.0.47.js} +0 -0
  69. /package/dist/interface/{@socket.io.Dkula2eQ.0.0.46.js → @socket.io.Dkula2eQ.0.0.47.js} +0 -0
  70. /package/dist/interface/{@xterm.qzCwKTgt.0.0.46.js → @xterm.jEC87poY.0.0.47.js} +0 -0
  71. /package/dist/interface/assets/{@vueform.0.0.46.CroAHJs8.css → @vueform.0.0.47.CroAHJs8.css} +0 -0
  72. /package/dist/interface/assets/{@xterm.0.0.46.CFbL2ovg.css → @xterm.0.0.47.CFbL2ovg.css} +0 -0
  73. /package/dist/interface/assets/{Account.0.0.46.Bnw6Lbtd.css → Account.0.0.47.Bnw6Lbtd.css} +0 -0
  74. /package/dist/interface/assets/{Adminpanel.0.0.46.a3t1v3MB.css → Adminpanel.0.0.47.a3t1v3MB.css} +0 -0
  75. /package/dist/interface/assets/{Backup.0.0.46.CX0rT0QJ.css → Backup.0.0.47.CX0rT0QJ.css} +0 -0
  76. /package/dist/interface/assets/{Camera.0.0.46.Br9s6-lM.css → Camera.0.0.47.Br9s6-lM.css} +0 -0
  77. /package/dist/interface/assets/{Cameras.0.0.46.Buf1Dgce.css → Cameras.0.0.47.Buf1Dgce.css} +0 -0
  78. /package/dist/interface/assets/{Camview.0.0.46.B7Cja2ry.css → Camview.0.0.47.B7Cja2ry.css} +0 -0
  79. /package/dist/interface/assets/{Config.0.0.46.DNGo2krN.css → Config.0.0.47.DNGo2krN.css} +0 -0
  80. /package/dist/interface/assets/{Console.0.0.46.Bh8l9QnM.css → Console.0.0.47.Bh8l9QnM.css} +0 -0
  81. /package/dist/interface/assets/{FirstSteps.0.0.46.Mu8VPl13.css → FirstSteps.0.0.47.Mu8VPl13.css} +0 -0
  82. /package/dist/interface/assets/{NewCamera.0.0.46.C7CL-ujd.css → NewCamera.0.0.47.C7CL-ujd.css} +0 -0
  83. /package/dist/interface/assets/{Plugin.0.0.46.YIpAU1_n.css → Plugin.0.0.47.YIpAU1_n.css} +0 -0
  84. /package/dist/interface/assets/{Plugins.0.0.46.DXSoO9M1.css → Plugins.0.0.47.DXSoO9M1.css} +0 -0
  85. /package/dist/interface/assets/{Settings.0.0.46.CVmui2kE.css → Settings.0.0.47.CVmui2kE.css} +0 -0
  86. /package/dist/interface/assets/{User.0.0.46.BiGtIFqt.css → User.0.0.47.BiGtIFqt.css} +0 -0
  87. /package/dist/interface/assets/{VConsole.0.0.46.BCqKHpmJ.css → VConsole.0.0.47.BCqKHpmJ.css} +0 -0
  88. /package/dist/interface/assets/{VPlayer.0.0.46.C4lm2rVR.css → VPlayer.0.0.47.C4lm2rVR.css} +0 -0
  89. /package/dist/interface/assets/{VPluginCard.0.0.46.C8Lj6X-J.css → VPluginCard.0.0.47.C8Lj6X-J.css} +0 -0
  90. /package/dist/interface/assets/{highlight.0.0.46.Ch2EwETz.css → highlight.0.0.47.Ch2EwETz.css} +0 -0
  91. /package/dist/interface/assets/{logo-256.0.0.46.BCQk9H1-.png → logo-256.0.0.47.BCQk9H1-.png} +0 -0
  92. /package/dist/interface/assets/{logo-512.0.0.46.DLKVOU2S.png → logo-512.0.0.47.DLKVOU2S.png} +0 -0
  93. /package/dist/interface/assets/{logo.0.0.46.DmEiRk0z.png → logo.0.0.47.DmEiRk0z.png} +0 -0
  94. /package/dist/interface/assets/{main.0.0.46.OJngntGT.css → main.0.0.47.OJngntGT.css} +0 -0
  95. /package/dist/interface/assets/{mode-json.0.0.46.Br7xisR1.js → mode-json.0.0.47.Br7xisR1.js} +0 -0
  96. /package/dist/interface/assets/{mode-yaml.0.0.46.CIYL8U3d.js → mode-yaml.0.0.47.CIYL8U3d.js} +0 -0
  97. /package/dist/interface/assets/{vue3-toastify.0.0.46.DHXAGmwn.css → vue3-toastify.0.0.47.DHXAGmwn.css} +0 -0
  98. /package/dist/interface/assets/{vuetify.0.0.46.Dua9WSqa.css → vuetify.0.0.47.Dua9WSqa.css} +0 -0
  99. /package/dist/interface/{axios.DIsA03vz.0.0.46.js → axios.DIsA03vz.0.0.47.js} +0 -0
  100. /package/dist/interface/{birpc.l0sNRNKZ.0.0.46.js → birpc.l0sNRNKZ.0.0.47.js} +0 -0
  101. /package/dist/interface/{compare-versions.DqEOhma6.0.0.46.js → compare-versions.DqEOhma6.0.0.47.js} +0 -0
  102. /package/dist/interface/{dijkstrajs.C00ieaqj.0.0.46.js → dijkstrajs.C00ieaqj.0.0.47.js} +0 -0
  103. /package/dist/interface/{engine.io-parser.BiEtp6m2.0.0.46.js → engine.io-parser.BiEtp6m2.0.0.47.js} +0 -0
  104. /package/dist/interface/{entities.C20TfXL6.0.0.46.js → entities.C20TfXL6.0.0.47.js} +0 -0
  105. /package/dist/interface/{ev-emitter.X5f1qa-c.0.0.46.js → ev-emitter.X5f1qa-c.0.0.47.js} +0 -0
  106. /package/dist/interface/{get-size.D1dS-IaP.0.0.46.js → get-size.D1dS-IaP.0.0.47.js} +0 -0
  107. /package/dist/interface/{hookable.B8xFkYCm.0.0.46.js → hookable.B8xFkYCm.0.0.47.js} +0 -0
  108. /package/dist/interface/{mdurl.k9Sl0PQj.0.0.46.js → mdurl.k9Sl0PQj.0.0.47.js} +0 -0
  109. /package/dist/interface/{perfect-debounce.Cp2ysxOb.0.0.46.js → perfect-debounce.Cp2ysxOb.0.0.47.js} +0 -0
  110. /package/dist/interface/{punycode.js.Dj65hjkv.0.0.46.js → punycode.js.Dj65hjkv.0.0.47.js} +0 -0
  111. /package/dist/interface/{react-dnd-html5-backend.1HQjlkwI.0.0.46.js → react-dnd-html5-backend.1HQjlkwI.0.0.47.js} +0 -0
  112. /package/dist/interface/{redux.BFxtlG_c.0.0.46.js → redux.BFxtlG_c.0.0.47.js} +0 -0
  113. /package/dist/interface/{tslib.9k7AwCpt.0.0.46.js → tslib.9k7AwCpt.0.0.47.js} +0 -0
  114. /package/dist/interface/{types.Cz9TaZAP.0.0.46.js → types.Cz9TaZAP.0.0.47.js} +0 -0
  115. /package/dist/interface/{uc.micro.kMc2yuuw.0.0.46.js → uc.micro.kMc2yuuw.0.0.47.js} +0 -0
  116. /package/dist/interface/{utils.mAKpSMLY.0.0.46.js → utils.mAKpSMLY.0.0.47.js} +0 -0
  117. /package/dist/interface/{uuid.Ch9TGLTe.0.0.46.js → uuid.Ch9TGLTe.0.0.47.js} +0 -0
  118. /package/dist/interface/{vue.l0sNRNKZ.0.0.46.js → vue.l0sNRNKZ.0.0.47.js} +0 -0
  119. /package/dist/interface/{zod.bkdEMpUp.0.0.46.js → zod.bkdEMpUp.0.0.47.js} +0 -0
@@ -1,4 +1,4 @@
1
- var co=Object.defineProperty;var mo=(t,n,s)=>n in t?co(t,n,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[n]=s;var Kt=(t,n,s)=>mo(t,typeof n!="symbol"?n+"":n,s);import{i as ft,x as Be,G as po,H as vo,I as fo,J as go,K as yo,e as Nt,f as nt,a as ho,h as Va,v as za,t as Rt,L as Pa,s as Dt,c as fa,u as bo,U as _o,j as Ta,F as wo,y as $o}from"./main.BAJ_SBax.0.0.46.js";import{r as g,u as e,G as Ne,t as Ke,c as oe,w as ve,C as Mt,b as i,aa as M,ab as a,d as y,P as r,f as m,n as pt,g as Tt,Q as Se,ad as Te,p as J,a9 as c,a7 as E,k as N,m as ze,i as Me,ah as ko,j as qt,$ as Ea,ae as Ma,a5 as Ht,am as It,e as Ze,v as Et,ac as ot,af as Yt,S as Ba,L as Da,I as Co,a8 as xo,R as So}from"./@vue.YfIN5b-F.0.0.46.js";import{L as Vo,_ as zo,U as La,a2 as Po,a3 as To,a4 as Eo,a5 as Mo,c as Wt,a6 as ga,a7 as Bo,a8 as Do,a9 as ya,s as xt,aa as ea,m as Lo,a as Fo,E as Fa,M as Ia,X as ha,e as qa,ab as Io,ac as qo,ad as Qo,ae as Oo,i as Ao,Y as No,af as Ro,ag as Uo,ah as Zo,ai as jo,aj as Ko,ak as Ho,al as Yo,am as Wo,an as Xo,h as Jo,ao as Go,ap as en,aq as tn,ar as an,P as on,Q as nn,I as sn,as as ln,at as rn,au as un,av as cn,R as dn,S as mn}from"./@mdi.CbjpODVZ.0.0.46.js";import{D as Qa}from"./draggabilly.CTmmLEk2.0.0.46.js";import{F as Pe,a as Qt}from"./vee-validate.7Af0cEu8.0.0.46.js";import{i as rt}from"./vue3-toastify.CFDXIP-M.0.0.46.js";import{u as pn,b as Xe,a as gt}from"./@tanstack.DpCjjLhb.0.0.46.js";import{t as Ut}from"./@vee-validate.Bs1leH4B.0.0.46.js";import{z as tt,c as Pt}from"./zod.bkdEMpUp.0.0.46.js";import{j as Ft,o as ta,v as vn,w as fn,x as gn,s as Oa,p as Lt,y as yn}from"./@vueuse.CaSJn4a8.0.0.46.js";import{a as je,l as Je,f as Aa,J as Na,m as Ye,z as mt,b as ie,p as lt,e as G,X as ba,W as hn,U as bn,x as aa,y as oa,c as He,d as Ra,M as yt,N as ht,L as bt,K as _t,Y as $t,D as _n,T as it,G as wn,I as $n,Z as kn,o as _a}from"./vuetify.C_-bCfce.0.0.46.js";import{q as Cn}from"./qrcode.BdkYO5nc.0.0.46.js";import{s as Ua}from"./pinia.D5BiAQDi.0.0.46.js";import{P as na}from"./plugins.C5ClAgpW.0.0.46.js";import{u as xn,a as Za}from"./vue-router.BUv32z-J.0.0.46.js";import{V as Sn}from"./VConsole.DT3e4YM-.0.0.46.js";const Vn=t=>{const n={};return Object.entries(t.schema).forEach(([s,v])=>{n[s]=Ot(v)}),n},Ot=t=>{switch(t.type){case"string":case"number":case"boolean":return Xt(t)?t.multiple?t.defaultValue!==void 0?[t.defaultValue]:void 0:t.defaultValue!==void 0?t.defaultValue:t.required?t.enum[0]:void 0:t.defaultValue;case"object":return t.properties?Object.entries(t.properties).reduce((n,[s,v])=>(n[s]=Ot(v),n),{}):{};case"array":return t.items?[Ot(t.items)].filter(Boolean):[];default:return}},zn=(t={},n)=>{const s=n.split(".").reduce((S,w)=>{if(w.includes("[")){const[Z,p]=w.split("[");S.push(Z,p.slice(0,-1))}else S.push(w);return S},[]);let v=t;for(const S of s){if(v===void 0)return;v=v[S]}return v},ut=t=>t.type==="string"&&!("enum"in t),wa=t=>t.type==="number"&&!("enum"in t),$a=t=>t.type==="boolean"&&!("enum"in t),Xt=t=>"enum"in t,ja=t=>t.type==="object",ka=t=>ja(t)&&"buttons"in t,Ca=t=>t.type==="array",Jt=t=>t.type==="button",Pn=t=>ut(t)&&t.format!=="qrCode"&&t.format!=="image",Tn=t=>t.type==="string"&&!("enum"in t),En=t=>t.type==="number"&&!("enum"in t),Mn=t=>"enum"in t,St=t=>t.type==="object",Vt=t=>t.type==="array",Gt=t=>/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(.\d+)?(Z|[+-]\d{2}:\d{2})?)?$/.test(t),Ka=(t,n)=>(n.mode==="withSeconds"?/^([01]?[0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/:/^([01]?[0-9]|2[0-3]):([0-5][0-9])$/).test(t),Ha=t=>/^\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,7}\b$/.test(t),Ya=t=>/^[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(t),At=(t,n)=>(n===4?/^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/:/^\s*([0-9a-fA-F]{1,4}:){7}([0-9a-fA-F]{1,4})\s*$/).test(t),sa=t=>{switch(!0){case t===void 0:case typeof t>"u":case typeof t=="function":case typeof t=="symbol":case t instanceof Date:throw new TypeError(`Invalid JSON value: ${String(t)}`);case typeof t=="number":return Ln();case typeof t=="boolean":return Fn();case typeof t=="string":return In(t);case Array.isArray(t):return t.every(s=>typeof s=="string"||typeof s=="number"||typeof s=="boolean")?qn(t):On(t);case t instanceof Object:return Qn(t);default:throw new TypeError(`Invalid JSON value: ${t}`)}},Bn=t=>{const n={};return Object.entries(t).forEach(([s,v])=>{n[s]=sa(v)}),{schema:n}},Xu=(t,n)=>{const s={},v=(S,w)=>{if(St(S)&&S.properties){const Z={};return Object.entries(S.properties).forEach(([p,B])=>{const q=v(B,w==null?void 0:w[p]);q!==void 0&&(Z[p]=q)}),Object.keys(Z).length>0?Z:void 0}else if(Vt(S)&&S.items&&Array.isArray(w)){const Z=w.map(p=>v(S.items,p)).filter(p=>p!==void 0);return Z.length>0?Z:void 0}else if(S.store)return w};return Object.entries(t).forEach(([S,w])=>{const Z=v(w,n[S]);Z!==void 0&&(s[S]=Z)}),s},kt=(t,n)=>n?!t.group||t.group!==n?!0:t.group===n?St(t)&&t.properties?Object.values(t.properties).every(v=>kt(v)):Vt(t)&&t.items?kt(t.items,n):t.readonly??!1:St(t)&&t.properties?Object.values(t.properties).filter(v=>v.group===n).every(v=>kt(v,n)):Vt(t)&&t.items?kt(t.items,n):!1:t.readonly!==void 0?t.readonly:St(t)&&t.properties?Object.values(t.properties).some(s=>kt(s)):Vt(t)&&t.items?kt(t.items):!1,Ct=(t,n)=>n?!t.group||t.group!==n?!1:t.group===n?St(t)&&t.properties?Object.values(t.properties).some(v=>Ct(v)):Vt(t)&&t.items?Ct(t.items,n):t.store??!1:St(t)&&t.properties?Object.values(t.properties).filter(v=>v.group===n).some(v=>Ct(v)):Vt(t)&&t.items?Ct(t.items,n):!1:t.store!==void 0?t.store:St(t)&&t.properties?Object.values(t.properties).some(s=>Ct(s)):Vt(t)&&t.items?Ct(t.items):!1,Dn=t=>{const n={};return Object.entries(t.schema).forEach(([s,v])=>{n[s]=la(v)}),tt.object(n).strict()},la=t=>{switch(t.type){case"string":case"number":case"boolean":return Mn(t)?Un(t):Tn(t)?An(t):En(t)?Nn(t):Rn(t);case"object":return Zn(t);case"array":return jn(t);case"button":return tt.any()}},Ln=()=>({type:"number"}),Fn=()=>({type:"boolean"}),In=t=>{const n={type:"string"};return Gt(t)&&(n.format=t.includes("T")?"date-time":"date"),Ka(t.split("+")[0],{mode:"withSeconds"})&&(n.format="time"),Ha(t)&&(n.format="email"),Ya(t)&&(n.format="uuid"),At(t,4)&&(n.format="ipv4"),At(t,6)&&(n.format="ipv6"),n},qn=t=>({type:"string",enum:t.map(n=>n.toString())}),Qn=t=>{if(!Object.keys(t).length)return{type:"object"};const n={};return Object.entries(t).forEach(([s,v])=>{const S=sa(v);S.key=s,S.description=S.description??`Description for ${s}`,S.required=S.required??!0,S.readonly=S.readonly??!1,n[s]=S}),{type:"object",properties:n}},On=t=>{if(t.length===0)return{type:"array"};const n=t.every(S=>typeof S=="object"&&S!==null&&!Array.isArray(S)),s=t.every(S=>typeof S=="string"),v=t.every(S=>typeof S=="number");if(n){const S={},w={};return t.forEach(Z=>{Object.keys(Z).forEach(p=>{w[p]=(w[p]||0)+1})}),t.forEach(Z=>{Object.entries(Z).forEach(([p,B])=>{if(!S[p]){const q=w[p]===t.length;S[p]={...sa(B),required:q,title:p,description:`Description for ${p}`,readonly:!1}}})}),{type:"array",items:{type:"object",properties:S}}}else return s?{type:"array",items:{type:"string"}}:v?{type:"array",items:{type:"number"}}:{type:"array",items:{type:"boolean"}}},An=t=>{let n=tt.string();if(t.required&&(n=n.nonempty("Required")),t.minLength!==void 0&&(n=n.min(t.minLength)),t.maxLength!==void 0&&(n=n.max(t.maxLength)),t.format)switch(t.format){case"date-time":n=n.refine(s=>Gt(s)&&s.includes("T"),{message:"Invalid date-time"});break;case"date":n=n.refine(s=>Gt(s),{message:"Invalid date"});break;case"time":n=n.refine(s=>Ka(s.split("+")[0],{mode:"withSeconds"}),{message:"Invalid time"});break;case"email":n=n.refine(s=>Ha(s),{message:"Invalid email"});break;case"uuid":n=n.refine(s=>Ya(s),{message:"Invalid uuid"});break;case"ipv4":n=n.refine(s=>At(s,4),{message:"Invalid ipv4"});break;case"ipv6":n=n.refine(s=>At(s,6),{message:"Invalid ipv6"});break}return t.required?n:n.optional()},Nn=t=>{let n=tt.number();return t.minimum!==void 0&&(n=n.min(t.minimum)),t.maximum!==void 0&&(n=n.max(t.maximum)),t.required&&(n=n.refine(s=>s!==void 0&&typeof s=="number",{message:"Required"})),t.required?n:n.optional()},Rn=t=>{const n=tt.boolean();return t.required?n:n.optional()},Un=t=>{const n=t.enum.map(v=>t.required?tt.literal(v):tt.literal(v).optional()),s=t.required?tt.union(n):tt.any().transform(v=>!v||v===""||!t.enum.some(S=>S===v)?void 0:v);return t.multiple?t.required?s.array():s.array().optional():t.required?s:s.optional()},Zn=t=>{let n;if(t.properties){const s=Object.entries(t.properties).reduce((v,[S,w])=>(v[S]=la(w),v),{});n=tt.object(s).strict()}else n=tt.record(tt.any());return t.required?n:n.optional()},jn=t=>{let n;return t.items?n=la(t.items).array():n=tt.any().array(),t.required?n:n.optional()},Kn=async({cameraData:t})=>(await Be.post("/cameras",t)).data,Hn=async({cameraData:t})=>(await Be.post("/cameras/preview",t)).data,Wa=async({cameraname:t,signal:n})=>(await Be.get(`/cameras/${t}`,{signal:n})).data,Yn=async({cameraname:t})=>(await Be.delete(`/cameras/${t}/log`)).data,Wn=async({cameraname:t,signal:n})=>(await Be.get(`/cameras/${t}/log/download`,{signal:n})).data,Xn=async({cameraname:t,sourcename:n,signal:s})=>(await Be.get(`/cameras/${t}/probe/${n}`,{signal:s})).data,Jn=async({cameraname:t,forceNew:n,signal:s})=>(await Be.get(`/cameras/${t}/snapshot`,{signal:s,params:{forceNew:n}})).data,Gn=async({parameter:t,signal:n})=>(await Be.get("/cameras",{params:t,signal:n})).data,es=async({cameraname:t,cameraData:n})=>(await Be.patch(`/cameras/${t}`,n)).data,ts=async({cameraname:t,signal:n})=>(await Be.get(`/cameras/${t}/extensions`,{signal:n})).data,as=async({cameraname:t,pluginname:n,signal:s})=>(await Be.get(`/cameras/${t}/${n}`,{signal:s})).data,os=async({cameraname:t,pluginname:n,configData:s})=>(await Be.patch(`/cameras/${t}/${n}`,s)).data,ns=async({cameraname:t,pluginname:n,configPath:s})=>(await Be.post(`/cameras/${t}/${n}/submit`,{configPath:s})).data,ss=async({cameraname:t,pluginname:n,type:s})=>(await Be.put(`/cameras/${t}/${n}/enable`,null,{params:{type:s}})).data,ls=async({cameraname:t,pluginname:n,type:s})=>(await Be.put(`/cameras/${t}/${n}/disable`,null,{params:{type:s}})).data,rs=async({cameraname:t,pluginname:n})=>(await Be.post(`/cameras/${t}/${n}`)).data,is=async({cameraname:t,pluginname:n})=>(await Be.delete(`/cameras/${t}/${n}`)).data,us=async({cameraname:t,zonename:n,signal:s})=>(await Be.get(`/cameras/${t}/zones/${n}`,{signal:s})).data,cs=async({cameraname:t,zoneData:n})=>(await Be.post(`/cameras/${t}/zones`,n)).data,ds=async({cameraname:t,zonename:n,zoneData:s})=>(await Be.patch(`/cameras/${t}/zones/${n}`,s)).data,ms=async({cameraname:t,zonename:n})=>(await Be.delete(`/cameras/${t}/zones/${n}`)).data,ps=async({cameraname:t})=>(await Be.delete(`/cameras/${t}`)).data,vs=async()=>(await Be.delete("/cameras")).data;class vt{constructor(){Kt(this,"_queryClient",pn());Kt(this,"queryActivator",g([{name:"getCameraQuery",enabled:!0},{name:"getCamerasQuery",enabled:!0},{name:"getCameraSnapshotQuery",enabled:!0},{name:"getCameraExtensionsQuery",enabled:!0},{name:"getCameraExtensionConfigQuery",enabled:!0},{name:"getZoneQuery",enabled:!0},{name:"probeCameraSourceQuery",enabled:!0},{name:"downloadLogQuery",enabled:!0}]))}get queryClient(){return this._queryClient}createCameraQuery(){return Xe({mutationFn:Kn,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),rt.success(ft.global.t("components.toast.camera_added"))}})}previewCameraQuery(){return Xe({mutationFn:Hn})}getCameraQuery(n){return gt({queryKey:["cameras",n],queryFn:({signal:s})=>Wa({cameraname:e(n),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="getCameraQuery"&&s.enabled)})}getCameraExtensionsQuery(n){return gt({queryKey:["camerasExtensions",n],queryFn:({signal:s})=>ts({cameraname:e(n),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="getCameraExtensionsQuery"&&s.enabled)})}probeCameraSourceQuery(n,s){return gt({queryKey:["cameras",n,"probe",s],queryFn:({signal:v})=>Xn({cameraname:e(n),sourcename:e(s),signal:v}),enabled:()=>this.queryActivator.value.some(v=>v.name==="probeCameraSourceQuery"&&v.enabled)})}getCameraSnapshotQuery(n,s){return gt({queryKey:["camerasSnapshot",n],queryFn:({signal:v})=>Jn({cameraname:e(n),forceNew:e(s),signal:v}),enabled:()=>this.queryActivator.value.some(v=>v.name==="getCameraSnapshotQuery"&&v.enabled),retry:!1})}getCamerasQuery(n){return gt({queryKey:["camerasList",n],queryFn:({signal:s})=>Gn({parameter:e(n),signal:s}),placeholderData:s=>s,enabled:()=>this.queryActivator.value.some(s=>s.name==="getCamerasQuery"&&s.enabled)})}patchCameraQuery(){return Xe({mutationFn:es,onSuccess:async(n,s)=>{if(s.cameraData.name&&s.cameraData.name!==s.cameraname){const S=s.cameraname;await this._queryClient.invalidateQueries({queryKey:[S]}),await this._queryClient.refetchQueries({queryKey:["camerasList"]})}else await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",s.cameraname]});rt.success(ft.global.t("components.toast.camera_updated"))}})}getCameraExtensionConfigQuery(n,s,v){return gt({staleTime:0,queryKey:["cameras","extensions",n,s],queryFn:({signal:S})=>as({cameraname:e(n),pluginname:e(s),signal:S}),enabled:()=>this.queryActivator.value.some(S=>S.name==="getCameraExtensionConfigQuery"&&S.enabled),refetchInterval(){if(v.value)return 5e3}})}patchCameraExtensionConfigQuery(){return Xe({mutationFn:os,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}submitCameraExtensionConfigQuery(){return Xe({mutationFn:ns,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}enableCameraExtensionQuery(){return Xe({mutationFn:ss,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}disableCameraExtensionQuery(){return Xe({mutationFn:ls,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}addCameraExtensionQuery(){return Xe({mutationFn:rs,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}getZoneQuery(n,s){return gt({queryKey:["cameras",n,"zones",s],queryFn:({signal:v})=>us({cameraname:e(n),zonename:e(s),signal:v}),enabled:()=>this.queryActivator.value.some(v=>v.name==="getZoneQuery"&&v.enabled)})}addCameraZoneQuery(){return Xe({mutationFn:cs,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),rt.success(ft.global.t("components.toast.zone_added"))}})}patchCameraZoneQuery(){return Xe({mutationFn:ds,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),rt.success(ft.global.t("components.toast.zone_updated"))}})}removeCameraZoneQuery(){return Xe({mutationFn:ms,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),rt.success(ft.global.t("components.toast.zone_removed"))}})}removeCameraExtensionQuery(){return Xe({mutationFn:is,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}removeCameraQuery(){return Xe({mutationFn:ps,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),rt.success(ft.global.t("components.toast.camera_removed"))}})}removeCamerasQuery(){return Xe({mutationFn:vs,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),rt.success(ft.global.t("components.toast.cameras_removed"))}})}downloadLogQuery(n){return gt({queryKey:["logs",n],queryFn:({signal:s})=>Wn({cameraname:e(n),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="downloadLogQuery"&&s.enabled)})}clearLogQuery(){return Xe({mutationFn:Yn,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["logs",s.cameraname],exact:!0}),rt.success(ft.global.t("components.toast.log_cleared"))}})}toggleQueryActivator(n,s){const v=this.queryActivator.value.find(S=>S.name===n);v&&(v.enabled=s)}}const fs=Pt.object({protocol:fo,url:Pt.string().min(1,"Camera Source is required").array().nonempty("Camera Source is required")}).strict(),gs=Pt.object({name:Pt.string().min(1,"Camera Source Name is required"),roles:go.array().nonempty("Minimum one role is required"),urls:fs.array(),internal:Pt.boolean().default(!1)}).strict(),ys=gs.array(),hs=Pt.object({...yo.shape,sources:ys}).strict(),Ju=Ut(hs),xa=Ut(po),Xa=Ut(vo),bs={0:"person",1:"bicycle",2:"car",3:"motorcycle",4:"airplane",5:"bus",6:"train",7:"truck",8:"boat",9:"traffic light",10:"fire hydrant",11:"stop sign",12:"parking meter",13:"bench",14:"bird",15:"cat",16:"dog",17:"horse",18:"sheep",19:"cow",20:"elephant",21:"bear",22:"zebra",23:"giraffe",24:"backpack",25:"umbrella",26:"handbag",27:"tie",28:"suitcase",29:"frisbee",30:"skis",31:"snowboard",32:"sports ball",33:"kite",34:"baseball bat",35:"baseball glove",36:"skateboard",37:"surfboard",38:"tennis racket",39:"bottle",40:"wine glass",41:"cup",42:"fork",43:"knife",44:"spoon",45:"bowl",46:"banana",47:"apple",48:"sandwich",49:"orange",50:"broccoli",51:"carrot",52:"hot dog",53:"pizza",54:"donut",55:"cake",56:"chair",57:"couch",58:"potted plant",59:"bed",60:"dining table",61:"toilet",62:"tv",63:"laptop",64:"mouse",65:"remote",66:"keyboard",67:"cell phone",68:"microwave",69:"oven",70:"toaster",71:"sink",72:"refrigerator",73:"book",74:"clock",75:"vase",76:"scissors",77:"teddy bear",78:"hair drier",79:"toothbrush",100:"motion"},_s={key:0},ws={key:1,class:"flex flex-col justify-center items-center"},$s={class:"relative w-full"},ks={class:"w-full flex flex-col items-center justify-center"},Cs={class:"relative w-full flex flex-col items-center justify-center"},xs={class:"absolute top-0 left-0 right-0 bottom-0"},Ss={class:"playground-container flex w-full h-full"},Vs={class:"sandbox w-full h-full"},zs={class:"handles"},Ps=["data-id","data-coord","data-region","onDblclick"],Ts={class:"clipboard"},Es={width:"100%",height:"100%",class:"polygon-container"},Ms=["d","onClick","onDblclick","onMousedown","onTouchstart"],Bs={class:"flex align-center flex-column pa-6 zone-buttons"},Ds={class:"w-100"},Ls=["for"],Fs={key:1,class:"text-grey text-caption align-self-center"},Is={key:1,class:"w-100"},qs={class:"v-label"},Qs={key:0},Os={key:1},As={key:0},Ns={key:1},Rs={key:0},Us={key:1},Zs=Ne({__name:"VZoneEditor",props:{cameraName:{},zones:{},isNewZone:{type:Boolean}},emits:["show-modal"],setup(t,{emit:n}){const s=new vt,v=n,S=t,{cameraName:w,zones:Z,isNewZone:p}=Ke(S),B=g(!0),q=g(!1),b=g([]),k=g([]),K=g([]),D=g(null),u=g(),j=g(!1),P=g(0),h=g(-1),ae=g(null),re=g(-1),I=g(Object.values(bs).sort((l,o)=>l==="motion"?-1:o==="motion"?1:0));let te=!1;const le={x:0,y:0},de=Ft(D);ta(ae,l=>{const o=l.target,d=o.closest(".polygon"),C=o.closest(".edit-button"),U=o.closest(".remove-button"),Q=o.closest(".handle"),L=o.closest(".zone-buttons"),ge=o.closest(".coco-labels");!d&&!C&&!U&&!Q&&!q.value&&!L&&!ge&&(h.value=-1)});const{mutateAsync:fe,isPending:ne}=s.addCameraZoneQuery(),{mutateAsync:T,isPending:_}=s.patchCameraZoneQuery(),f=oe(()=>j.value||ne.value||_.value),x=oe(()=>{var l,o;return((o=(l=u.value)==null?void 0:l.regions[h.value])==null?void 0:o.classes.length)===I.value.length}),se=oe(()=>{var l,o;return(((o=(l=u.value)==null?void 0:l.regions[h.value])==null?void 0:o.classes.length)||0)>0}),V=oe(()=>{var o;const l=[];return q.value&&l.push("customizing"),(o=u.value)!=null&&o.regions.length||l.push("start"),l.join(" ")});ve(re,()=>{re.value=-1}),ve(Z,l=>{l&&(u.value=JSON.parse(JSON.stringify(l)))},{deep:!0,immediate:!0}),ve(u,l=>{l&&(b.value=l.regions.map((o,d)=>o.coords.map((C,U)=>({_id:C._id,regionIndex:d,coordIndex:U,coord:C.points}))).flat()||[])},{deep:!0,immediate:!0}),ve(B,l=>{l||setTimeout(()=>v("show-modal",!1),300)}),ve([de.width,de.height],()=>{z()});const Y=()=>{!u.value||!u.value.regions[h.value]||(x.value?u.value.regions[h.value].classes=[]:u.value.regions[h.value].classes=[...I.value])},ee=l=>{if("touches"in l){const o=l.touches[0];return{x:o.clientX,y:o.clientY}}return{x:l.clientX,y:l.clientY}},me=(l,o)=>{if(l.stopPropagation(),!D.value)return;he(q.value),te=!0,h.value=o;const d=D.value.getBoundingClientRect(),{x:C,y:U}=ee(l);le.x=(C-d.left)/d.width*100,le.y=(U-d.top)/d.height*100},ke=l=>{if(!te||!D.value||h.value===-1||!u.value)return;const o=D.value.getBoundingClientRect(),{x:d,y:C}=ee(l),U=(d-o.left)/o.width*100,Q=(C-o.top)/o.height*100,L=U-le.x,ge=Q-le.y,_e=u.value.regions[h.value].coords;let ce=!1;for(let A=0;A<_e.length;A++){const $e=_e[A].points[0]+L,We=_e[A].points[1]+ge;if($e<0||$e>100||We<0||We>100){ce=!0;break}}if(!ce)for(let A=0;A<_e.length;A++){_e[A].points[0]+=L,_e[A].points[1]+=ge,_e[A].points[0]=Math.max(0,Math.min(100,_e[A].points[0])),_e[A].points[1]=Math.max(0,Math.min(100,_e[A].points[1]));const $e=_e[A].points[0]/100*o.width,We=_e[A].points[1]/100*o.height,Ge=k.value.find(at=>at.id===_e[A]._id);Ge==null||Ge.setPosition($e,We)}le.x=U,le.y=Q},pe=()=>{setTimeout(()=>{te=!1},100)},ye=()=>{!u.value||h.value===-1||(u.value.regions[h.value].isPrivacyMask=!u.value.regions[h.value].isPrivacyMask)},H=()=>{!u.value||!u.value.regions[h.value]||(u.value.regions[h.value].filter=u.value.regions[h.value].filter==="include"?"exclude":"include")},we=()=>{!u.value||!u.value.regions[h.value]||(u.value.regions[h.value].type=u.value.regions[h.value].type==="intersect"?"contain":"intersect")},Ee=l=>{if(!q.value||!u.value||te)return;const o=P.value,d=Math.min(Math.max(Math.round((l.offsetX-10)/de.width.value*100),0),100),C=Math.min(Math.max(Math.round((l.offsetY-10)/de.height.value*100),0),100);u.value.regions[o]||u.value.regions.push({_id:Math.random().toString(36).substring(7),coords:[],filter:"include",type:"contain",classes:[],isPrivacyMask:!1});const U={_id:Math.random().toString(36).substring(7),points:[d,C]};u.value.regions[o].coords.push(U),pt(()=>{Qe({regionIndex:o,coordIndex:u.value.regions[o].coords.length-1,coord:[d,C]})})},Qe=l=>{var d;if(l.regionIndex===void 0||l.coordIndex===void 0)return;const o=(d=K.value)==null?void 0:d.filter(C=>C.dataset.coord===l.coordIndex.toString()&&C.dataset.region===l.regionIndex.toString());o.length!==0&&X(o[0],l.coord)},Oe=l=>{if(!u.value)return;const o=Math.round(l.coord[0]/de.width.value*100),d=Math.round(l.coord[1]/de.height.value*100),C={_id:l._id,points:[o,d]};u.value.regions[l.regionIndex].coords[l.coordIndex]=C},Ce=()=>{u.value&&(q.value=!0,P.value=u.value.regions.length||0)},he=l=>{var d;if(!u.value)return;q.value=l||!1;const o=P.value;!u.value.regions.length||!u.value.regions[o]||!u.value.regions[o].coords||(u.value.regions[o].coords.length<3?u.value.regions=u.value.regions.filter((C,U)=>U!==o):(d=K.value)==null||d.forEach(C=>be(C)))},Ae=()=>{q.value=!0,P.value=h.value},Fe=()=>{h.value===-1||!u.value||(u.value.regions=u.value.regions.filter((l,o)=>o!==h.value),h.value=-1)},Re=()=>{var d,C;if(!((d=u.value)!=null&&d.regions.length))return;const l=U=>{var Q,L,ge,_e,ce;(L=(Q=u.value)==null?void 0:Q.regions[U])!=null&&L.coords.length&&((_e=(ge=u.value.regions[U])==null?void 0:ge.coords)==null||_e.pop(),(ce=u.value.regions[U])!=null&&ce.coords.length||u.value.regions.pop())};let o=u.value.regions.length;(C=u.value.regions[o-1].coords)!=null&&C.length&&o--,!(o<0)&&l(o)},De=()=>{te=!1,q.value=!1,b.value=[],u.value&&(u.value.regions=[])},O=l=>{if(!l)return"";const o=l.map(C=>{const U=Math.round(C[0]/100*de.width.value),Q=Math.round(C[1]/100*de.height.value);return`${U+10},${Q+10}`});if(o.length===0)return"";let d=`M ${o[0]}`;for(let C=1;C<o.length;C++)d+=` L ${o[C]}`;return d+=" Z",d},R=l=>{q.value||(h.value=l)},z=()=>{$(),K.value.forEach(l=>{var d;if(!l.dataset.region||!l.dataset.coord||!u.value)return;const o=(d=u.value.regions[parseInt(l.dataset.region)])==null?void 0:d.coords[parseInt(l.dataset.coord)];X(l,o.points),be(l)})},$=()=>{k.value.forEach(l=>l.destroy()),k.value=[]},W=l=>{var o;!u.value||((o=u.value.regions[l.regionIndex])==null?void 0:o.coords.length)<4||u.value.regions[l.regionIndex].coords.splice(l.coordIndex,1)},X=(l,o)=>{Object.assign(l.style,xe(o))},xe=l=>({left:Math.round(l[0]/100*de.width.value)+"px",top:Math.round(l[1]/100*de.height.value)+"px"}),be=l=>{l.classList.add("draggable");const o=new Qa(l,{containment:!0,grid:[0,0]}).on("pointerDown",()=>{var d;(d=document.querySelectorAll('[data-point="'+l.dataset.region+"-"+l.dataset.coord+'"]')[0])==null||d.classList.add("changing")}).on("dragMove",()=>{if(!l.dataset.region||!l.dataset.coord||!l.dataset.id)return;const d=o.position.x,C=o.position.y;Oe({_id:l.dataset.id,coord:[d,C],coordIndex:parseInt(l.dataset.coord),regionIndex:parseInt(l.dataset.region)})}).on("pointerUp",()=>{document.querySelectorAll(".point").forEach(d=>d.classList.remove("changing"))});o.id=l.dataset.id,k.value.push(o)},Ue=async()=>{if(u.value)try{j.value=!0;const l=await Xa.parse(u.value);l.value?(p.value?await fe({cameraname:w.value,zoneData:u.value}):await T({cameraname:w.value,zonename:u.value.name,zoneData:u.value}),B.value=!1):rt.error(l.errors[0].errors[0])}catch(l){console.error(l)}finally{j.value=!1}};return Mt(async()=>{setTimeout(()=>{z()})}),(l,o)=>{const d=Ga,C=Nt;return i(),M(C,{modelValue:e(B),"onUpdate:modelValue":o[12]||(o[12]=U=>Me(B)?B.value=U:null),title:`${l.$t("components.zone_editor.zone")}: ${e(u)?e(u).name:l.$t("components.dialog.title.unknown")}`,loading:e(f),onConfirm:o[13]||(o[13]=U=>Ue())},{content:a(()=>{var U;return[e(u)?(i(),y("div",ws,[m("div",$s,[m("div",{ref_key:"outsideEl",ref:ae},null,512),m("div",ks,[m("div",Cs,[m("div",xs,[m("div",Ss,[m("section",{class:Tt(["playground w-full h-full",e(V)]),onClick:Ee},[m("div",Vs,[m("div",zs,[(i(!0),y(Se,null,Te(e(b),Q=>(i(),y("div",{key:Q._id,ref_for:!0,ref_key:"draggables",ref:K,class:"handle","data-id":Q._id,"data-coord":Q.coordIndex,"data-region":Q.regionIndex,onDblclick:J(L=>W(Q),["prevent"])},o[14]||(o[14]=[m("div",{class:"delete-point"},null,-1)]),40,Ps))),128)),m("div",Ts,[(i(),y("svg",Es,[(i(!0),y(Se,null,Te((U=e(u))==null?void 0:U.regions,(Q,L)=>(i(),y("path",{key:Q._id,d:O(Q.coords.map(ge=>ge.points)),class:Tt({polygon:Q.filter=="include"&&!Q.isPrivacyMask,"polygon-exclude":Q.filter=="exclude"&&!Q.isPrivacyMask,"polygon-privacy":Q.isPrivacyMask,dash:Q.type==="intersect"&&!Q.isPrivacyMask,selected:e(h)===L}),onClick:ge=>R(L),onDblclick:()=>Q.isPrivacyMask=!Q.isPrivacyMask,onMousedown:ge=>me(ge,L),onMousemove:ke,onMouseup:pe,onTouchstart:ge=>me(ge,L),onTouchmove:ke,onTouchend:pe},null,42,Ms))),128))]))])]),o[15]||(o[15]=m("div",{class:"shadowboard on"},null,-1))])],2)])]),m("div",{ref_key:"player",ref:D,class:"w-full h-full flex flex-col items-center justify-center",style:{width:"calc(100% - 20px)","margin-top":"10px","margin-bottom":"10px"}},[r(d,{mode:"webrtc",target:"stream","current-camera":e(w),"border-radius":0,border:"","source-role":"low-resolution"},null,8,["current-camera"])],512)]),m("div",Bs,[m("div",Ds,[e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]&&!e(u).regions[e(h)].isPrivacyMask?(i(),M(e(Pe),{key:0,modelValue:e(u).regions[e(h)].classes,"onUpdate:modelValue":o[0]||(o[0]=Q=>e(u).regions[e(h)].classes=Q),name:`regions[${e(h)}].classes`},{default:a(({field:Q,errorMessage:L,errors:ge})=>[m("label",{for:`regions[${e(h)}].classes`,class:"v-label"},c(l.$t("components.form.label.classes")),9,Ls),r(mt,ze({loading:e(f),items:e(I),class:"coco-labels w-100",variant:"outlined",name:`regions[${e(h)}].classes`,type:"text",density:"compact",chips:"",multiple:"",clearable:""},Q,{error:ge.length>0,"error-messages":L,"model-value":Q.value,"menu-props":{class:"coco-labels"},onKeydown:J(()=>null,["prevent"])}),{"prepend-item":a(()=>[r(Aa,{title:l.$t("components.form.label.select_all"),onClick:Y},{prepend:a(()=>[r(Na,{indeterminate:e(se)&&!e(x),"model-value":e(x)},null,8,["indeterminate","model-value"])]),_:1},8,["title"]),r(Ye,{class:"mt-2"})]),chip:a(({item:_e,index:ce})=>[ce<5?(i(),M(Je,{key:0,color:"#df2a4c"},{default:a(()=>[E(c(_e.title),1)]),_:2},1024)):N("",!0),ce===5?(i(),y("span",Fs," (+"+c(e(u).regions[e(h)].classes.length-2)+") ",1)):N("",!0)]),_:2},1040,["loading","items","name","error","error-messages","model-value"])]),_:1},8,["modelValue","name"])):(i(),y("div",Is,[m("label",qs,c(l.$t("components.form.label.classes")),1),r(mt,{disabled:"",class:"w-100",variant:"outlined",type:"text",density:"compact",onKeydown:J(()=>null,["prevent"])})]))]),r(ba,{modelValue:e(re),"onUpdate:modelValue":o[7]||(o[7]=Q=>Me(re)?re.value=Q:null),variant:"outlined",divided:"",rounded:"xl",class:"mt-5"},{default:a(()=>[e(q)?(i(),M(ie,{key:1,loading:e(f),onClick:o[2]||(o[2]=J(Q=>he(!1),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.finish")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(zo)),1)]),_:1})]),_:1},8,["loading"])):(i(),M(ie,{key:0,loading:e(f),onClick:o[1]||(o[1]=J(Q=>Ce(),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.new")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(Vo)),1)]),_:1})]),_:1},8,["loading"])),r(ie,{loading:e(f),disabled:!e(u).regions.length||e(h)<0||e(q),onClick:o[3]||(o[3]=J(Q=>Ae(),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.edit")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(La)),1)]),_:1})]),_:1},8,["loading","disabled"]),r(ie,{loading:e(f),disabled:!e(u).regions.length||e(h)<0,onClick:o[4]||(o[4]=J(Q=>Fe(),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.delete")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(Po)),1)]),_:1})]),_:1},8,["loading","disabled"]),r(ie,{loading:e(f),disabled:!e(u).regions.length,onClick:o[5]||(o[5]=J(Q=>Re(),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.undo")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(To)),1)]),_:1})]),_:1},8,["loading","disabled"]),r(ie,{loading:e(f),disabled:!e(u).regions.length,onClick:o[6]||(o[6]=J(Q=>De(),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.clear")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(Eo)),1)]),_:1})]),_:1},8,["loading","disabled"])]),_:1},8,["modelValue"]),r(ba,{modelValue:e(re),"onUpdate:modelValue":o[11]||(o[11]=Q=>Me(re)?re.value=Q:null),variant:"outlined",divided:"",rounded:"xl",class:"mt-5"},{default:a(()=>[r(ie,{disabled:!(e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]),loading:e(f),onClick:o[8]||(o[8]=J(Q=>ye(),["prevent"]))},{default:a(()=>[e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]?(i(),y("div",Qs,[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(e(u).regions[e(h)].isPrivacyMask?l.$t("components.form.tooltip.privacy_mask"):l.$t("components.form.tooltip.public_mask")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(u).regions[e(h)].isPrivacyMask?e(Mo):e(Wt)),1)]),_:1})])):(i(),y("div",Os,[r(G,{size:"20"},{default:a(()=>[E(c(e(Wt)),1)]),_:1})]))]),_:1},8,["disabled","loading"]),r(ie,{disabled:!(e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]&&!e(u).regions[e(h)].isPrivacyMask),loading:e(f),onClick:o[9]||(o[9]=J(Q=>H(),["prevent"]))},{default:a(()=>[e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]&&!e(u).regions[e(h)].isPrivacyMask?(i(),y("div",As,[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(e(u).regions[e(h)].filter==="include"?l.$t("components.form.tooltip.include"):l.$t("components.form.tooltip.exclude")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(u).regions[e(h)].filter==="include"?e(ga):e(Bo)),1)]),_:1})])):(i(),y("div",Ns,[r(G,{size:"20"},{default:a(()=>[E(c(e(ga)),1)]),_:1})]))]),_:1},8,["disabled","loading"]),r(ie,{disabled:!(e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]&&!e(u).regions[e(h)].isPrivacyMask),loading:e(f),onClick:o[10]||(o[10]=J(Q=>we(),["prevent"]))},{default:a(()=>[e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]&&!e(u).regions[e(h)].isPrivacyMask?(i(),y("div",Rs,[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(e(u).regions[e(h)].type==="intersect"?l.$t("components.form.tooltip.intersect"):l.$t("components.form.tooltip.contain")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(u).regions[e(h)].type==="intersect"?e(Do):e(ya)),1)]),_:1})])):(i(),y("div",Us,[r(G,{size:"20"},{default:a(()=>[E(c(e(ya)),1)]),_:1})]))]),_:1},8,["disabled","loading"])]),_:1},8,["modelValue"])])])])])):(i(),y("div",_s,[r(je,{indeterminate:"",color:"#df2a4c"})]))]}),_:1},8,["modelValue","title","loading"])}}}),js=nt(Zs,[["__scopeId","data-v-9f727bf9"]]),Ks={class:"flex flex-col w-full",style:{height:"calc(100% - 45px - env(safe-area-inset-bottom, 0px))"}},Hs={class:"flex w-full p-2 items-center"},Ys={key:0},Ws={class:"options-segments flex items-center justify-between"},Xs={class:"flex flex-col items-center justify-center"},Js={class:"options-segments-text"},Gs={key:0,class:"options-container flex justify-center items-center"},el={class:"mt-auto"},tl=Ne({__name:"VOptionsSidebar",props:{state:{type:Boolean,default:!1},title:{},segments:{default:()=>[{name:"default",eager:!0}]},selected:{},loading:{type:Boolean,default:!1},width:{default:400}},emits:["close","selected"],setup(t,{emit:n}){ko(u=>({"08bb651e":e(D)}));const s=t,v=n,{segments:S,state:w,title:Z,loading:p,width:B,selected:q}=Ke(s),b=g(null),k=g(q.value??S.value[0].name),K=g(!1),D=g(`${B.value}px`);return ve(w,()=>{K.value=w.value}),ve(K,()=>{K.value!==w.value&&setTimeout(()=>{v("close")},300)}),ve(k,u=>{v("selected",u)}),ta(b,u=>{const j=u.target,P=j.closest(".v-overlay-container"),h=j.closest(".Toastify");!P&&!h&&(K.value=!1)}),Mt(()=>{v("selected",k.value)}),(u,j)=>(i(),M(Ea,{name:"options-slide",mode:"out-in"},{default:a(()=>[e(K)?(i(),y("div",{key:0,ref_key:"optionsSidebar",ref:b,class:"options-sidebar"},[m("div",Ks,[m("div",Hs,[e(Z)?(i(),y("b",Ys,c(e(Z)),1)):N("",!0),r(ie,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:j[0]||(j[0]=J(P=>K.value=!1,["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1})]),m("div",Ws,[r(bn,{modelValue:e(k),"onUpdate:modelValue":j[1]||(j[1]=P=>Me(k)?k.value=P:null),height:"100%",grow:"","slider-color":"#df2a4c"},{default:a(()=>[(i(!0),y(Se,null,Te(e(S),(P,h)=>(i(),M(hn,{key:h,value:P.name,disabled:e(p),"min-width":"auto"},{default:a(()=>[m("div",Xs,[qt(u.$slots,`segmentIcon.${P}`,{},()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(ea)),1)]),_:1})],!0),m("span",Js,c(u.$t(`components.options_sidebar.segment_tab_${P.name.toLowerCase()}`)),1)])]),_:2},1032,["value","disabled"]))),128))]),_:3},8,["modelValue"])]),e(p)?(i(),y("div",Gs,[r(je,{color:"#df2a4c",indeterminate:""})])):(i(),M(aa,{key:1,modelValue:e(k),"onUpdate:modelValue":j[2]||(j[2]=P=>Me(k)?k.value=P:null),class:"options-container",continuous:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(S),(P,h)=>(i(),M(oa,{key:h,value:P.name,class:"h-full pb-safe overflow-y-scroll",eager:P.eager,continuous:""},{default:a(()=>[qt(u.$slots,`body.${P.name}`,{},void 0,!0)]),_:2},1032,["value","eager"]))),128))]),_:3},8,["modelValue"])),m("div",el,[qt(u.$slots,"footer",{},void 0,!0)])])],512)):N("",!0)]),_:3}))}}),al=nt(tl,[["__scopeId","data-v-236163da"]]),ol={class:"relative mt-2"},nl={class:"v-label"},sl={class:"v-label"},ll={class:"v-label"},rl={class:"relative mt-2"},il={class:"v-label"},ul=Ne({__name:"VCameraSourceInfo",props:{cameraName:{},sourceName:{}},setup(t){const n=new vt,s=t,{cameraName:v,sourceName:S}=Ke(s),{data:w,isLoading:Z}=n.probeCameraSourceQuery(v.value,S.value),p=oe(()=>{var b;return((b=w.value)==null?void 0:b.probe.consumers.filter(k=>k.format_name!=="probe").length)||0}),B=oe(()=>{var K,D;const b=(K=w.value)==null?void 0:K.probe.consumers.find(u=>u.format_name==="probe"),k=(D=b==null?void 0:b.senders)==null?void 0:D.filter(u=>u.codec.codec_type==="video");return(k==null?void 0:k.map(u=>u.codec.codec_name))||[]}),q=oe(()=>{var K,D;const b=(K=w.value)==null?void 0:K.probe.consumers.find(u=>u.format_name==="probe"),k=(D=b==null?void 0:b.senders)==null?void 0:D.filter(u=>u.codec.codec_type==="audio");return(k==null?void 0:k.map(u=>u.codec.codec_name))||[]});return(b,k)=>{var K;return i(),y("div",null,[m("div",ol,[m("label",nl,c(b.$t("components.form.label.connections")),1),r(He,{value:e(p),loading:e(Z),readonly:"",variant:"outlined",type:"text",density:"compact"},null,8,["value","loading"])]),(i(!0),y(Se,null,Te(e(B),D=>(i(),y("div",{key:D,class:"relative mt-2"},[m("label",sl,c(b.$t("components.form.label.video_codec")),1),r(He,{value:D,readonly:"",variant:"outlined",type:"text",density:"compact"},null,8,["value"])]))),128)),(i(!0),y(Se,null,Te(e(q),D=>(i(),y("div",{key:D,class:"relative mt-2"},[m("label",ll,c(b.$t("components.form.label.audio_codec")),1),r(He,{value:D,readonly:"",variant:"outlined",type:"text",density:"compact"},null,8,["value"])]))),128)),m("div",rl,[m("label",il,c(b.$t("components.form.label.rtsp_url")),1),r(He,{value:(K=e(w))==null?void 0:K.url,loading:e(Z),readonly:"",variant:"outlined",type:"text",density:"compact"},null,8,["value","loading"])])])}}}),cl={class:"w-full my-3"},dl=["for"],ml=["for"],pl=["for"],vl=["for"],fl=["for"],gl={class:"v-input__details",style:{"padding-inline":"16px"}},yl={class:"v-messages"},hl={key:0,class:"v-messages__message"},bl={class:"flex flex-row items-center justify-center ml-auto"},_l={key:0,class:"flex flex-col w-full items-center justify-center mt-3"},wl={class:"flex flex-row w-full items-center justify-center mt-3"},$l=Ne({__name:"VCustomField",props:Yt({schemaField:{},configKey:{},removable:{},loading:{type:Boolean,default:!1}},{modelValue:{type:Object,required:!0},modelModifiers:{}}),emits:Yt(["onChange","onSubmit","onAction","onTrigger"],["update:modelValue"]),setup(t,{emit:n}){const s=ho(),v=n,S=Ma(t,"modelValue"),w=t,{theme:Z}=Ua(s),{schemaField:p,configKey:B,removable:q,loading:b}=Ke(w),k=g(!1),K=g(0),D=g(0),u=g(p.value.opened===!0?[0]:[]);ve(S,()=>{K.value++},{deep:!0});const j=vn(async()=>{if(ut(p.value)&&p.value.format==="qrCode"){let T;return Z.value==="dark"?T={dark:"#FFFFFFFF",light:"#FF000000"}:T={dark:"#404040FF",light:"#FFFFFFFF"},await Cn.toDataURL(ne.value,{margin:.5,type:"image/png",color:T,scale:10})}},void 0,{lazy:!0}),P=oe(()=>{if(ut(p.value)&&p.value.format==="image")return ne.value}),h=(T,_,f)=>{const x=I(S.value,T);Array.isArray(x)&&x.splice(_,1),D.value++,v("onTrigger")},ae=T=>{let _=I(S.value,T);_||(te(S.value,T,[]),_=I(S.value,T));const f=p.value;if(Array.isArray(_)&&f&&Ca(f)&&f.items){const x=Ot(f.items);_.push(x)}D.value++},re=T=>{var _;return((_=T.match(/[^.[\]]+|\[\d+\]/g))==null?void 0:_.map(f=>f.startsWith("[")?parseInt(f.slice(1,-1)):f))||[]},I=(T,_)=>{const f=re(_);let x=T;for(const V of f){if(x==null)return;x=x[V]}if(!(x!=null)){const V=le(p.value,_);V&&"defaultValue"in V?x=V.defaultValue:x=void 0}return x},te=(T,_,f)=>{const x=re(_),se=x.pop(),V=x.reduce((Y,ee)=>(Y[ee]||(Y[ee]={}),Y[ee]),T);se!==void 0&&f!==void 0&&f!==null&&f!==""&&(V[se]=f)},le=(T,_)=>{const f=re(_);let x=T;for(const se of f)if(x.type==="object"&&x.properties)x=x.properties[se];else if(x.type==="array"&&x.items&&!("anyOf"in x.items))x=x.items;else return x;return x},de=T=>{const _=ut(T)&&T.format==="qrCode",f=ut(T)&&T.format==="image",x=Jt(T);return!_&&!f&&!x},fe=T=>!T.hidden||T.hidden&&de(T),ne=oe({get:()=>(K.value,I(S.value,B.value)),set:T=>{const _=p.value;let f=T;Xt(_)?_.multiple?f=Array.isArray(T)?T:[T]:f=T&&T.toString():ut(_)?f=T&&T.toString():wa(_)?f=parseFloat(T)||0:$a(_)?f=T==="true"||T===!0:f=T,te(S.value,B.value,f),K.value++}});return(T,_)=>{const f=Va,x=Ht("v-number-input"),se=Ht("VCustomField",!0);return i(),y("div",cl,[e(ut)(e(p))&&e(p).format==="qrCode"?(i(),y(Se,{key:0},[m("label",{for:e(B),class:"v-label"},c(e(p).title),9,dl),r(f,{src:e(j),class:"mb-3"},null,8,["src"])],64)):N("",!0),e(ut)(e(p))&&e(p).format==="image"?(i(),y(Se,{key:1},[m("label",{for:e(B),class:"v-label"},c(e(p).title),9,ml),r(f,{src:e(P),class:"mb-3"},null,8,["src"])],64)):e(Pn)(e(p))?(i(),M(e(Pe),{key:2,modelValue:e(ne),"onUpdate:modelValue":_[2]||(_[2]=V=>Me(ne)?ne.value=V:null),name:e(B)},{default:a(({field:V,errorMessage:Y,errors:ee})=>[m("label",{for:e(B),class:"v-label"},c(e(p).title),9,pl),r(He,ze({error:ee.length>0,"error-messages":Y,readonly:e(p).readonly,placeholder:e(p).placeholder,hint:e(p).description,"persistent-hint":""},V,{variant:"outlined",density:"compact",type:e(p).format==="password"?e(k)?"text":"password":"text","append-inner-icon":e(p).format==="password"?e(k)?e(Lo):e(Fo):void 0,"onClick:appendInner":_[1]||(_[1]=me=>k.value=!e(k))}),It({_:2},[e(q)?{name:"append-inner",fn:a(()=>[r(ie,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:_[0]||(_[0]=J(me=>h(e(q).path,e(q).index,!0),["stop"]))},{default:a(()=>[r(G,null,{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["error","error-messages","readonly","placeholder","hint","type","append-inner-icon"])]),_:1},8,["modelValue","name"])):e(wa)(e(p))?(i(),M(e(Pe),{key:3,modelValue:e(ne),"onUpdate:modelValue":_[4]||(_[4]=V=>Me(ne)?ne.value=V:null),name:e(B)},{default:a(({field:V,errorMessage:Y,errors:ee,value:me,setValue:ke})=>[m("label",{for:e(B),class:"v-label"},c(e(p).title),9,vl),r(x,ze({error:ee.length>0,"error-messages":Y,readonly:e(p).readonly,hint:e(p).description,step:e(p).step||1,min:e(p).minimum,max:e(p).maximum,"persistent-hint":""},V,{variant:"outlined",type:"number",density:"compact",onChange:()=>me===""?ke(e(p).defaultValue||e(p).minimum||0):void 0}),It({_:2},[e(q)?{name:"append-inner",fn:a(()=>[r(ie,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:_[3]||(_[3]=J(pe=>h(e(q).path,e(q).index,!0),["stop"]))},{default:a(()=>[r(G,null,{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["error","error-messages","readonly","hint","step","min","max","onChange"])]),_:1},8,["modelValue","name"])):e($a)(e(p))?(i(),M(e(Pe),{key:4,"model-value":e(ne),name:e(B),type:"checkbox","checked-value":!0,"unchecked-value":!1},{default:a(({field:V,errors:Y,errorMessage:ee})=>[r(Ra,ze({"model-value":e(ne),class:"w-full"},V,{color:"#df2a4c",type:"checkbox","persistent-hint":"",label:e(p).title,error:Y.length>0,"error-messages":ee,hint:e(p).description,onChange:_[6]||(_[6]=me=>ne.value=!e(ne))}),It({_:2},[e(q)?{name:"append",fn:a(()=>[r(ie,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:_[5]||(_[5]=J(me=>h(e(q).path,e(q).index,!0),["stop"]))},{default:a(()=>[r(G,null,{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","label","error","error-messages","hint"])]),_:1},8,["model-value","name"])):e(Xt)(e(p))?(i(),M(e(Pe),{key:5,modelValue:e(ne),"onUpdate:modelValue":_[8]||(_[8]=V=>Me(ne)?ne.value=V:null),name:e(B)},{default:a(({field:V,errorMessage:Y,errors:ee})=>[m("label",{for:e(B),class:"v-label"},c(e(p).title),9,fl),r(mt,ze({items:e(p).enum,error:ee.length>0,"error-messages":Y,readonly:e(p).readonly,hint:e(p).description,"model-value":V.value,"persistent-hint":""},V,{variant:"outlined",density:"compact",chips:"",multiple:e(p).multiple,clearable:!e(p).required&&!e(p).readonly,onKeydown:_[7]||(_[7]=J(()=>{},["prevent"]))}),{chip:a(({item:me})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(me.title),1)]),_:2},1024)]),_:2},1040,["items","error","error-messages","readonly","hint","model-value","multiple","clearable"])]),_:1},8,["modelValue","name"])):e(Jt)(e(p))?(i(),y(Se,{key:6},[r(ie,{width:"100%",color:e(p).color?e(p).color:"#df2a4c",variant:"flat",class:"mt-3",loading:e(b),onClick:_[9]||(_[9]=J(V=>v("onAction",{configPath:e(B)}),["prevent"]))},{default:a(()=>[E(c(e(p).title),1)]),_:1},8,["color","loading"]),m("div",gl,[m("div",yl,[e(p).description?(i(),y("div",hl,c(e(p).description),1)):N("",!0)])])],64)):e(ja)(e(p))||e(ka)(e(p))?(i(),M(_t,{key:7,"model-value":e(u),class:"inner-component-2 mt-0 mb-3"},{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px",width:"-webkit-fill-available"},class:"truncate"},It({default:a(()=>[e(p).description?(i(),M(lt,{key:0,text:e(p).description,location:"top"},{activator:a(({props:V})=>[r(G,ze({size:"20"},V,{class:"mr-3 text-passive"}),{default:a(()=>[E(c(e(ha)),1)]),_:2},1040)]),_:1},8,["text"])):N("",!0),E(" "+c(e(p).title||e(B))+" ",1)]),_:2},[e(q)?{name:"actions",fn:a(({expanded:V})=>[m("div",bl,[r(ie,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:_[10]||(_[10]=J(Y=>h(e(q).path,e(q).index,!0),["stop"]))},{default:a(()=>[r(G,null,{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1}),V?(i(),M(G,{key:0,size:"22.5"},{default:a(()=>[E(c(e(Fa)),1)]),_:1})):(i(),M(G,{key:1,size:"22.5"},{default:a(()=>[E(c(e(Ia)),1)]),_:1}))])]),key:"0"}:void 0]),1024),r(ht,{eager:""},{default:a(()=>{var V;return[(i(!0),y(Se,null,Te(e(p).properties,(Y,ee)=>(i(),y("div",{key:`${e(B)}.${ee}`},[fe(Y)?Ze((i(),M(se,{key:0,modelValue:S.value,"onUpdate:modelValue":_[11]||(_[11]=me=>S.value=me),"schema-field":Y,"config-key":`${e(B)}.${ee}`,loading:e(b),onOnSubmit:_[12]||(_[12]=me=>v("onSubmit",me)),onOnAction:_[13]||(_[13]=me=>v("onAction",me))},null,8,["modelValue","schema-field","config-key","loading"])),[[Et,!Y.hidden]]):N("",!0)]))),128)),e(ka)(e(p))&&((V=e(p).buttons)!=null&&V.length)?(i(),y("div",_l,[(i(!0),y(Se,null,Te(e(p).buttons,(Y,ee)=>(i(),M(ie,{key:`button-${ee}`,variant:"flat",loading:e(b),class:"px-0 w-100 my-2",style:ot({background:Y.color?Y.color:"rgba(141, 141, 141, 0.2)"}),onClick:J(()=>Y?v("onSubmit",{actionId:Y.onSubmit,payload:e(zn)(S.value,e(B))}):void 0,["prevent"])},{default:a(()=>[E(c(Y==null?void 0:Y.label),1)]),_:2},1032,["loading","style","onClick"]))),128))])):N("",!0)]}),_:1})]),_:1})]),_:1},8,["model-value"])):e(Ca)(e(p))&&e(p).items?(i(),M(_t,{key:8,"model-value":e(u),class:"inner-component-2 mt-0 mb-3"},{default:a(()=>[(i(),M(bt,{key:e(D),elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px",width:"-webkit-fill-available"},class:"truncate"},{default:a(()=>[e(p).description?(i(),M(lt,{key:0,text:e(p).description,location:"top"},{activator:a(({props:V})=>[r(G,ze({size:"20"},V,{class:"mr-3 text-passive"}),{default:a(()=>[E(c(e(ha)),1)]),_:2},1040)]),_:1},8,["text"])):N("",!0),E(" "+c(e(p).title||e(B)),1)]),_:1}),r(ht,{eager:""},{default:a(()=>[(i(!0),y(Se,null,Te(I(S.value,e(B)),(V,Y)=>(i(),y("div",{key:`item-${Y}-${(V==null?void 0:V.key)||V||Y}`,class:"w-full"},[fe(e(p))?Ze((i(),M(se,{key:0,modelValue:S.value,"onUpdate:modelValue":_[14]||(_[14]=ee=>S.value=ee),"schema-field":e(p).items,"config-key":`${e(B)}[${Y}]`,removable:{path:e(B),index:Y},loading:e(b),onOnSubmit:_[15]||(_[15]=ee=>v("onSubmit",ee)),onOnAction:_[16]||(_[16]=ee=>v("onAction",ee)),onOnTrigger:_[17]||(_[17]=()=>D.value++)},null,8,["modelValue","schema-field","config-key","removable","loading"])),[[Et,!e(p).hidden]]):N("",!0)]))),128)),m("div",wl,[r(ie,{variant:"text",color:"#df2a4c",icon:"",onClick:_[18]||(_[18]=J(V=>ae(e(B)),["prevent"]))},{default:a(()=>[r(G,{size:"30"},{default:a(()=>[E(c(e(qa)),1)]),_:1})]),_:1})])]),_:1})]),_:1}))]),_:1},8,["model-value"])):N("",!0)])}}}),kl=nt($l,[["__scopeId","data-v-a5e7123a"]]),Cl={key:0},xl={key:1},Ja=Ne({__name:"VJsonSchema",props:{config:{},uiSchema:{},loading:{type:Boolean,default:!1},disableButton:{type:Boolean},saveButton:{type:Boolean,default:!0},saveButtonLabel:{},saveButtonColor:{default:"green"},showButton:{type:Boolean,default:!1},buttonFullWidth:{type:Boolean,default:!0}},emits:["onSubmit","onAction","onFormSubmit","changeGroup"],setup(t,{emit:n}){const s=n,v=t,{uiSchema:S,config:w,loading:Z,saveButton:p,saveButtonLabel:B,showButton:q,disableButton:b,saveButtonColor:k,buttonFullWidth:K}=Ke(v),D=g(),u=g(),j=oe(()=>Object.keys(w.value).length?{...za(w.value)}:S.value?Vn(S.value):{}),P=oe(()=>S.value?S.value:Bn(w.value)),h=oe(()=>Dn(P.value)),ae=oe(()=>Ut(h.value)),re=oe(()=>Object.keys(P.value.schema).every(f=>kt(P.value.schema[f],u.value))),I=oe(()=>Object.keys(P.value.schema).some(f=>Ct(P.value.schema[f],u.value))),te=oe(()=>{const f=P.value,x=[];for(const[,se]of Object.entries(f.schema))se.group&&!se.hidden&&!x.includes(se.group)&&x.push(se.group);return x.length&&(u.value=x[0]),x});ve(u,f=>{f&&s("changeGroup",f)});const le=f=>{const x=ut(f)&&f.format==="qrCode",se=ut(f)&&f.format==="image",V=Jt(f);return!x&&!se&&!V},de=f=>!f.hidden||f.hidden&&le(f),fe=async()=>{var f;return await((f=D.value)==null?void 0:f.validate())},ne=async f=>{s("onAction",f)},T=async f=>{const x=await fe();x!=null&&x.valid?s("onSubmit",f):console.error("result",x)},_=async()=>{const f=await fe();f!=null&&f.valid&&(f!=null&&f.values)?s("onFormSubmit",f.values):console.error("result",f)};return(f,x)=>{const se=kl;return i(),y("div",null,[r(e(Qt),{ref_key:"formRef",ref:D,"validation-schema":e(ae),onSubmit:_},{default:a(()=>[e(te).length?(i(),y("div",Cl,[r($t,{modelValue:e(u),"onUpdate:modelValue":x[0]||(x[0]=V=>Me(u)?u.value=V:null),"selected-class":"primary-color",mandatory:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(te),V=>(i(),M(Je,{key:V,size:"small",value:V},{default:a(()=>[E(c(V),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"]),r(aa,{modelValue:e(u),"onUpdate:modelValue":x[2]||(x[2]=V=>Me(u)?u.value=V:null),mandatory:"",eager:"",class:"mt-3",touch:!1},{default:a(()=>[(i(!0),y(Se,null,Te(e(te),(V,Y)=>(i(),M(oa,{key:V,value:V,transition:"instant","reverse-transition":"instant"},{default:a(()=>[(i(!0),y(Se,null,Te(e(P).schema,(ee,me)=>(i(),y("div",{key:me},[de(ee)&&(ee.group===V||!ee.group&&Y===0)?Ze((i(),M(se,{key:0,modelValue:e(j),"onUpdate:modelValue":x[1]||(x[1]=ke=>Me(j)?j.value=ke:null),"schema-field":ee,"config-key":me.toString(),loading:e(Z),onOnSubmit:T,onOnAction:ne},null,8,["modelValue","schema-field","config-key","loading"])),[[Et,!ee.hidden]]):N("",!0)]))),128))]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])):(i(),y("div",xl,[(i(!0),y(Se,null,Te(e(P).schema,(V,Y)=>(i(),y("div",{key:Y},[de(V)?Ze((i(),M(se,{key:0,modelValue:e(j),"onUpdate:modelValue":x[3]||(x[3]=ee=>Me(j)?j.value=ee:null),"schema-field":V,"config-key":Y.toString(),loading:e(Z),onOnSubmit:T,onOnAction:ne},null,8,["modelValue","schema-field","config-key","loading"])),[[Et,!V.hidden]]):N("",!0)]))),128))])),e(I)&&!e(re)&&e(p)||e(q)?(i(),M(ie,{key:2,class:"mt-7",style:ot({width:e(K)?"100%":"calc(100% - 2rem)"}),color:e(k),variant:"flat",type:"submit",loading:e(Z),disabled:e(b)},{default:a(()=>[E(c(e(B)||f.$t("components.form.button.save")),1)]),_:1},8,["style","color","loading","disabled"])):N("",!0)]),_:1},8,["validation-schema"])])}}}),Sl=Ne({__name:"VJsonSchemaDialog",props:Yt({pluginConfig:{},uiSchema:{},pluginName:{}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const n=new na,s=Ma(t,"modelValue"),v=t,S=g(!1),w=g(),{uiSchema:Z,pluginConfig:p,pluginName:B}=Ke(v),{mutateAsync:q,isPending:b}=n.actionButtonQuery(),k=oe(()=>S.value||b.value);ve(Z,D=>{w.value=D},{deep:!0,immediate:!0});const K=async D=>{S.value=!0;const u={...p.value,...D.payload};await q({pluginName:B.value,actionId:D.actionId,payload:u},{onSuccess:j=>{j!=null&&j.toast&&rt[j.toast.type](j.toast.message),j!=null&&j.schema&&Object.keys(j.schema).length&&w.value?w.value.schema.config=j.schema.config:s.value=!1},onSettled:()=>{S.value=!1}})};return(D,u)=>{const j=Ja,P=Nt;return i(),M(P,{modelValue:s.value,"onUpdate:modelValue":u[0]||(u[0]=h=>s.value=h),title:D.$t("components.dialog.title.config"),loading:e(k),"hide-confirm-button":""},{content:a(()=>[r(j,{config:{},"ui-schema":e(w),loading:e(k),"save-button":!1,onOnSubmit:K},null,8,["ui-schema","loading"])]),_:1},8,["modelValue","title","loading"])}}}),Vl={class:"plugints-title p-2"},zl={class:"v-label"},Pl={key:0,class:"plugints-title p-2"},Tl={class:"v-label"},El={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Ml={class:"text-sm text-passive"},Bl={key:1,class:"plugints-title p-2"},Dl={class:"v-label"},Ll={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Fl={class:"text-sm text-passive"},Il={key:2,class:"plugints-title p-2"},ql={class:"v-label"},Ql={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Ol={class:"text-sm text-passive"},Al={key:3,class:"plugints-title p-2"},Nl={class:"v-label"},Rl={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Ul={class:"text-sm text-passive"},Zl={key:4,class:"plugints-title p-2"},jl={class:"v-label"},Kl={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Hl={class:"text-sm text-passive"},Yl={class:"p-2"},Wl={key:0,class:"mb-4"},Xl={class:"v-label"},Jl={key:0,class:"w-full flex items-center justify-center"},Gl={key:1,class:"flex w-full items-center justify-center"},er={class:"text-sm text-passive"},tr={key:1},ar={class:"v-label"},or={key:0,class:"w-full flex items-center justify-center my-5"},nr={key:1,class:"w-full flex items-center justify-center my-5"},sr={class:"text-sm text-passive"},lr=Ne({__name:"extensions",props:{cameraName:{}},setup(t){const n=new vt,s=new na,{isTouch:v}=Rt(),S=t,{cameraName:w}=Ke(S),Z=g(!1),p=g(!1),B=g(),q=g(),b=g(""),k=g("hub"),K=g(),D=g(),u=g(),j=g(),P=g(),h=g(!0),ae=g({page:1,pageSize:-1}),re=g(["hub","motionDetection","objectDetection","audioDetection","ptz","more"]);n.toggleQueryActivator("getCameraExtensionConfigQuery",!1);const{data:I}=n.getCameraQuery(w),{data:te}=s.getPluginsQuery(ae),{data:le,isLoading:de,suspense:fe}=n.getCameraExtensionsQuery(w),{data:ne,isLoading:T}=n.getCameraExtensionConfigQuery(w.value,b,h),{data:_,isLoading:f}=s.getPluginsExtensionsQuery(ae),{mutate:x,isPending:se}=s.actionButtonQuery(),{mutate:V,isPending:Y}=n.patchCameraExtensionConfigQuery(),{mutate:ee,isPending:me}=n.submitCameraExtensionConfigQuery(),{mutateAsync:ke,isPending:pe}=n.addCameraExtensionQuery(),{mutateAsync:ye,isPending:H}=n.removeCameraExtensionQuery(),{mutateAsync:we,isPending:Ee}=n.enableCameraExtensionQuery(),{mutateAsync:Qe,isPending:Oe}=n.disableCameraExtensionQuery(),Ce=oe(()=>de.value||f.value||pe.value||H.value||Ee.value||Oe.value),he=oe(()=>Ce.value||Z.value||se.value||Y.value||me.value),Ae=oe(()=>{var d;const o=((d=le.value)==null?void 0:d.filter(C=>C.type.includes("hub")))||[];return o.length&&te.value&&te.value.result.some(C=>C.pluginName===o[0].pluginName&&!C.disabled)?(K.value=o[0].pluginName,b.value=o[0].pluginName):K.value=void 0,W(o)}),Fe=oe(()=>{var d,C,U;const o=((d=le.value)==null?void 0:d.filter(Q=>Q.type.includes("motionDetection")))||[];return o.length&&X((C=I==null?void 0:I.value)==null?void 0:C.extensions.motionDetection)?D.value=(U=I==null?void 0:I.value)==null?void 0:U.extensions.motionDetection:D.value=void 0,W(o)}),Re=oe(()=>{var d,C,U;const o=((d=le.value)==null?void 0:d.filter(Q=>Q.type.includes("audioDetection")))||[];return o.length&&X((C=I==null?void 0:I.value)==null?void 0:C.extensions.audioDetection)?u.value=(U=I==null?void 0:I.value)==null?void 0:U.extensions.audioDetection:u.value=void 0,W(o)}),De=oe(()=>{var d,C,U;const o=((d=le.value)==null?void 0:d.filter(Q=>Q.type.includes("objectDetection")))||[];return o.length&&X((C=I==null?void 0:I.value)==null?void 0:C.extensions.objectDetection)?j.value=(U=I==null?void 0:I.value)==null?void 0:U.extensions.objectDetection:j.value=void 0,W(o)}),O=oe(()=>{var d,C,U;const o=((d=le.value)==null?void 0:d.filter(Q=>Q.type.includes("ptz")))||[];return o.length&&X((C=I==null?void 0:I.value)==null?void 0:C.extensions.ptz)?P.value=(U=I==null?void 0:I.value)==null?void 0:U.extensions.ptz:P.value=void 0,W(o)});ve(K,(o,d)=>{o&&o!==d&&xe(o)}),ve(D,(o,d)=>{o!==d&&(!o&&d?$(d,!1,"motionDetection"):o&&$(o,!0,"motionDetection"))}),ve(j,(o,d)=>{o!==d&&(!o&&d?$(d,!1,"objectDetection"):o&&$(o,!0,"objectDetection"))}),ve(P,(o,d)=>{o!==d&&(!o&&d?$(d,!1,"ptz"):o&&$(o,!0,"ptz"))}),ve(u,(o,d)=>{o!==d&&(!o&&d?$(d,!1,"audioDetection"):o&&$(o,!0,"audioDetection"))}),ve(k,(o,d)=>{o===void 0&&(k.value=d)}),ve(p,o=>{o||(B.value=void 0,q.value=void 0)});const R=async(o,d)=>{await n.queryClient.refetchQueries({queryKey:["cameras","extensions",o,d]})},z=async o=>{le.value&&(le.value.some(d=>d.pluginName===o.pluginName)?await ye({cameraname:w.value,pluginname:o.pluginName}):await ke({cameraname:w.value,pluginname:o.pluginName}))},$=async(o,d,C)=>{d?(!C||!I.value||I.value.extensions[C]!==o)&&(await we({cameraname:w.value,pluginname:o,type:C}),pt(()=>xe(o))):(!C||!I.value||I.value.extensions[C]===o)&&(await Qe({cameraname:w.value,pluginname:o,type:C}),pt(()=>xe()))},W=o=>o.sort((d,C)=>!X(d.pluginName)&&X(C.pluginName)?1:X(d.pluginName)&&!X(C.pluginName)?-1:d.displayName.localeCompare(C.displayName)),X=o=>{if(o&&te.value&&te.value.result.some(d=>d.pluginName===o&&!d.disabled))return o},xe=o=>{var d,C,U,Q,L;if(n.toggleQueryActivator("getCameraExtensionConfigQuery",!1),o!==void 0)b.value=o;else switch(k.value){case"hub":b.value=X((d=Ae.value[0])==null?void 0:d.pluginName)||"";break;case"motionDetection":b.value=X((C=I==null?void 0:I.value)==null?void 0:C.extensions.motionDetection)||"";break;case"audioDetection":b.value=X((U=I==null?void 0:I.value)==null?void 0:U.extensions.audioDetection)||"";break;case"objectDetection":b.value=X((Q=I==null?void 0:I.value)==null?void 0:Q.extensions.objectDetection)||"";break;case"ptz":b.value=X((L=I==null?void 0:I.value)==null?void 0:L.extensions.ptz)||"";break;default:b.value="";break}b.value&&b.value!==""&&n.toggleQueryActivator("getCameraExtensionConfigQuery",!0)},be=async(o,d)=>{Z.value=!0,ee({cameraname:w.value,pluginname:d,configPath:o.configPath},{onSettled:()=>{Z.value=!1}})},Ue=(o,d)=>{Z.value=!0,x({pluginName:d,actionId:o.actionId,payload:o.payload},{onSuccess:C=>{C!=null&&C.toast&&rt[C.toast.type](C.toast.message),C!=null&&C.schema&&Object.keys(C.schema).length&&(q.value=o.payload,B.value=C,p.value=!0)},onSettled:()=>{Z.value=!1}})},l=(o,d,C)=>{Z.value=!0,V({cameraname:o,pluginname:d,configData:C},{onSettled:()=>{Z.value=!1}})};return Mt(async()=>{}),Ba(async()=>{await fe(),xe()}),(o,d)=>{var Q;const C=Ja,U=Sl;return i(),y("div",null,[r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),m("div",Vl,[m("label",zl,c(o.$t("components.camera_options.categories")),1),r($t,{modelValue:e(k),"onUpdate:modelValue":[d[0]||(d[0]=L=>Me(k)?k.value=L:null),d[1]||(d[1]=L=>xe())],"selected-class":"primary-color",disabled:e(Ce),mandatory:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(re),L=>(i(),M(Je,{key:L,size:"small",disabled:e(he),value:L},{default:a(()=>[E(c(o.$t(`components.camera_options.chip_${L}`)),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])]),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),e(k)==="hub"?(i(),y("div",Pl,[m("label",Tl,c(o.$t("components.camera_options.chip_plugins")),1),e(Ae).length?(i(),M($t,{key:0,modelValue:e(K),"onUpdate:modelValue":d[2]||(d[2]=L=>Me(K)?K.value=L:null),"selected-class":"primary-color",disabled:e(Ce),mandatory:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(Ae),L=>(i(),M(Je,{key:L.pluginName,disabled:!X(L.pluginName)||e(he),size:"small",value:L.pluginName},{default:a(()=>[E(c(L.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(i(),y("div",El,[m("span",Ml,c(o.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(k)==="motionDetection"?(i(),y("div",Bl,[m("label",Dl,c(o.$t("components.camera_options.enabled_extension")),1),e(Fe).length?(i(),M($t,{key:0,modelValue:e(D),"onUpdate:modelValue":d[3]||(d[3]=L=>Me(D)?D.value=L:null),"selected-class":"primary-color",disabled:e(Ce),filter:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(Fe),L=>(i(),M(Je,{key:L.pluginName,disabled:!X(L.pluginName)||e(he),size:"small",value:L.pluginName},{default:a(()=>[E(c(L.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(i(),y("div",Ll,[m("span",Fl,c(o.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(k)==="objectDetection"?(i(),y("div",Il,[m("label",ql,c(o.$t("components.camera_options.enabled_extension")),1),e(De).length?(i(),M($t,{key:0,modelValue:e(j),"onUpdate:modelValue":d[4]||(d[4]=L=>Me(j)?j.value=L:null),"selected-class":"primary-color",disabled:e(Ce),filter:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(De),L=>(i(),M(Je,{key:L.pluginName,disabled:!X(L.pluginName)||e(he),size:"small",value:L.pluginName},{default:a(()=>[E(c(L.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(i(),y("div",Ql,[m("span",Ol,c(o.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(k)==="audioDetection"?(i(),y("div",Al,[m("label",Nl,c(o.$t("components.camera_options.enabled_extension")),1),e(Re).length?(i(),M($t,{key:0,modelValue:e(u),"onUpdate:modelValue":d[5]||(d[5]=L=>Me(u)?u.value=L:null),"selected-class":"primary-color",disabled:e(Ce),filter:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(Re),L=>(i(),M(Je,{key:L.pluginName,disabled:!X(L.pluginName)||e(he),size:"small",value:L.pluginName},{default:a(()=>[E(c(L.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(i(),y("div",Rl,[m("span",Ul,c(o.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(k)==="ptz"?(i(),y("div",Zl,[m("label",jl,c(o.$t("components.camera_options.enabled_extension")),1),e(O).length?(i(),M($t,{key:0,modelValue:e(P),"onUpdate:modelValue":d[6]||(d[6]=L=>Me(P)?P.value=L:null),"selected-class":"primary-color",disabled:e(Ce),filter:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(O),L=>(i(),M(Je,{key:L.pluginName,disabled:!X(L.pluginName)||e(he),size:"small",value:L.pluginName},{default:a(()=>[E(c(L.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(i(),y("div",Kl,[m("span",Hl,c(o.$t("components.camera_options.no_plugins_enabled")),1)]))])):N("",!0),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),e(Ce)?(i(),M(_n,{key:5,height:"2",color:"#df2a4c",indeterminate:"",style:{"margin-top":"-2px"}})):N("",!0),m("div",Yl,[r(aa,{modelValue:e(k),"onUpdate:modelValue":d[10]||(d[10]=L=>Me(k)?k.value=L:null),disabled:e(Ce),mandatory:"",eager:"",touch:!1},{default:a(()=>[(i(!0),y(Se,null,Te(e(re),L=>(i(),M(oa,{key:L,value:L,transition:"instant","reverse-transition":"instant"},{default:a(()=>{var ge,_e,ce;return[L==="more"?(i(),y("div",Wl,[m("div",null,[m("label",Xl,c(o.$t("components.camera_options.manage_plugins")),1),e(f)?(i(),y("div",Jl,[r(je,{color:"#df2a4c",indeterminate:"",size:"20",width:"3"})])):(ge=e(_))!=null&&ge.result.length?(i(!0),y(Se,{key:2},Te((_e=e(_))==null?void 0:_e.result,(A,$e)=>{var We,Ge;return Ze((i(),y("div",{key:A.pluginName},[r(wn,{"select-strategy":"classic",class:"py-0",disabled:e(Ce)||!X(A.pluginName),"onUpdate:selected":()=>z(A)},{default:a(()=>{var at;return[r(Aa,{value:A.pluginName,class:"px-2",active:(at=e(le))==null?void 0:at.some(et=>et.pluginName===A.pluginName)},{prepend:a(()=>[r($n,{start:""},{default:a(()=>{var et;return[r(Na,{"model-value":(et=e(le))==null?void 0:et.some(ct=>ct.pluginName===A.pluginName),color:"#df2a4c"},null,8,["model-value"])]}),_:2},1024)]),append:a(()=>[r(ie,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:J(()=>o.$router.push(`/plugins/${A.pluginName}`),["prevent"])},{default:a(()=>[r(G,{size:"18"},{default:a(()=>[E(c(e(Io)),1)]),_:1})]),_:2},1032,["onClick"])]),default:a(()=>[E(c(A.displayName)+" ",1)]),_:2},1032,["value","active"])]}),_:2},1032,["disabled","onUpdate:selected"]),(We=e(_))!=null&&We.result&&$e!==((Ge=e(_))==null?void 0:Ge.result.length)-1?(i(),M(Ye,{key:0,style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})):N("",!0)])),[[it,{disabled:X(A.pluginName)!==void 0||e(v),text:o.$t("components.form.tooltip.disabled")}]])}),128)):(i(),y("div",Gl,[m("span",er,c(o.$t("components.camera_options.no_plugins_found")),1)]))])])):(i(),y("div",tr,[m("label",ar,c(o.$t("components.camera_options.plugin_settings")),1),e(T)?(i(),y("div",or,[r(je,{color:"#df2a4c",indeterminate:""})])):!e(b)||!((ce=e(ne))!=null&&ce.rootSchema)?(i(),y("div",nr,[m("span",sr,c(o.$t("components.camera_options.no_config")),1)])):e(ne)?(i(),M(C,{key:L,config:e(ne).config||{},"ui-schema":e(ne).rootSchema,loading:e(he),onOnFormSubmit:d[7]||(d[7]=A=>l(e(w),e(b),A)),onOnSubmit:A=>Ue(A,L),onOnAction:d[8]||(d[8]=A=>be(A,e(b))),onChangeGroup:d[9]||(d[9]=()=>R(e(w),e(b)))},null,8,["config","ui-schema","loading","onOnSubmit"])):N("",!0)]))]}),_:2},1032,["value"]))),128))]),_:1},8,["modelValue","disabled"])]),(Q=e(B))!=null&&Q.schema?(i(),M(U,{key:6,modelValue:e(p),"onUpdate:modelValue":d[11]||(d[11]=L=>Me(p)?p.value=L:null),"ui-schema":{schema:e(B).schema},"plugin-config":e(q)||{},"plugin-name":e(b)},null,8,["modelValue","ui-schema","plugin-config","plugin-name"])):N("",!0)])}}}),rr={class:"flex flex-row items-center justify-center"},ir={class:"battery-body"},ur={key:0,class:"ml-2 text-sm"},cr=Ne({__name:"VBattery",props:{level:{default:0},showLevel:{type:Boolean,default:!0},size:{default:5}},setup(t){const n=t,{level:s,size:v,showLevel:S}=Ke(n),w=oe(()=>s.value<=20?"#FF3B30":s.value<=50?"#FFCC00":"#34C759"),Z=oe(()=>`${Math.min(100,Math.max(0,s.value))}%`),p=oe(()=>v.value/5),B=oe(()=>({"--scale-factor":p.value,"--battery-width":`${50*p.value}px`,"--battery-height":`${25*p.value}px`,"--border-width":`${2*p.value}px`,"--border-radius":`${3*p.value}px`,"--padding":"1px","--cap-width":`${3*p.value}px`,"--cap-height":`${10*p.value}px`,"--cap-margin":`${1*p.value}px`}));return(q,b)=>(i(),y("div",rr,[m("div",{class:"battery-container",style:ot(e(B))},[m("div",ir,[m("div",{class:"battery-level",style:ot({width:e(Z),backgroundColor:e(w)})},null,4)]),b[0]||(b[0]=m("div",{class:"battery-cap"},null,-1))],4),e(S)?(i(),y("span",ur,c(e(s))+"%",1)):N("",!0)]))}}),dr=nt(cr,[["__scopeId","data-v-cb5fbb52"]]),mr={class:"w-full h-full flex items-center justify-center bg-black aspect-video"},Zt=Ne({__name:"VCameraSnapshot",props:{cameraName:{},src:{},loading:{type:Boolean},showLoadingScreen:{type:Boolean,default:!0},width:{default:"100%"},height:{default:"100%"}},setup(t,{expose:n}){const s=new vt,v=t,{cameraName:S,loading:w,src:Z}=Ke(v),p=g(!1);Z.value&&s.toggleQueryActivator("getCameraSnapshotQuery",!1);const{data:B,isLoading:q,refetch:b,isRefetching:k}=s.getCameraSnapshotQuery(S,p),K=oe(()=>w.value||q.value||k.value),D=oe(()=>Z.value?Z.value:B.value?`data:image/jpeg;base64,${B.value}`:"");return n({download:()=>{if(D.value){const P=`${S.value.replace(/ /g,"_").toLowerCase()}_${new Date().toISOString()}.png`,h=document.createElement("a");h.setAttribute("download",P),h.href=D.value,document.body.appendChild(h),h.click(),h.remove()}},refresh:()=>{p.value=!0,b(),p.value=!1},isLoading:K,snapshotSrc:D}),(P,h)=>{const ae=Va;return i(),y("div",mr,[e(K)&&P.showLoadingScreen?(i(),M(je,{key:0,color:"#df2a4c",indeterminate:""})):(i(),M(ae,{key:1,src:e(D),width:"100%",height:"100%","aspect-ratio":"16/9","show-loading-screen":P.showLoadingScreen},null,8,["src","show-loading-screen"]))])}}}),pr={class:"text-sm"},vr={class:"flex items-center justify-end"},fr={class:"flex items-center justify-end"},gr={key:0},yr={key:0},hr={class:"flex items-center justify-end"},br={key:1},_r={class:"flex items-center justify-end"},wr={key:2},$r={class:"flex items-center justify-end"},kr={key:1},Cr={key:2},xr={key:3},Sr={class:"flex items-center justify-end"},Vr={key:1},zr={key:2},Pr={key:4},Tr={class:"flex items-center justify-end"},Er={key:1},Mr={key:2},Br={key:5},Dr={class:"flex items-center justify-end"},Lr={key:1},Fr={key:2},Ir={key:6},qr={class:"flex items-center justify-end"},Qr={key:1},Or={key:2},Ar=Ne({__name:"overview",props:{cameraName:{},latestSnapshotSrc:{}},setup(t){const n=new vt,s=new na,{api:v}=Pa(),S=t,{cameraName:w,latestSnapshotSrc:Z}=Ke(S),p=g(),B=g(),q=g(),b=g(),k=g(),K=g(),D=g(),u=g(),j=g({page:1,pageSize:-1}),{data:P,isLoading:h}=n.getCameraQuery(w),{data:ae,isLoading:re}=s.getPluginsQuery(j),I=oe(()=>h.value||re.value);return Mt(async()=>{var te,le,de,fe,ne,T,_,f;p.value=await v.deviceManager.getCameraByName(w.value),(te=p.value)==null||te.onMotionDetected.subscribe(x=>{B.value=x}),(le=p.value)==null||le.onBatteryChanged.subscribe(x=>{b.value=x}),(de=p.value)==null||de.onDoorbellPressed.subscribe(x=>{D.value=x}),(fe=p.value)==null||fe.onSirenDetected.subscribe(x=>{K.value=x}),(ne=p.value)==null||ne.onLightSwitched.subscribe(x=>{u.value=x}),(T=p.value)==null||T.onAudioDetected.subscribe(x=>{q.value=x}),(_=p.value)==null||_.onObjectDetected.subscribe(x=>{k.value=x}),await((f=p.value)==null?void 0:f.start())}),Da(()=>{var te;(te=p.value)==null||te.close()}),(te,le)=>{const de=Zt,fe=dr;return i(),y("div",null,[r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),r(de,{"camera-name":e(w),src:e(Z)},null,8,["camera-name","src"]),r(kn,{class:"table-fixed w-full p-2",style:{background:"none !important"}},{default:a(()=>{var ne,T,_,f,x,se,V,Y,ee,me,ke,pe,ye,H,we,Ee,Qe,Oe,Ce,he;return[m("tbody",pr,[m("tr",null,[m("td",null,c(te.$t("components.camera_options.name")),1),m("td",null,[m("div",vr,[m("span",null,c(e(w)),1),(ne=e(P))!=null&&ne.isCloud?(i(),M(G,{key:0,size:"20",class:"ml-2"},{default:a(()=>[E(c(e(qo)),1)]),_:1})):N("",!0)])])]),m("tr",null,[m("td",null,c(te.$t("components.camera_options.plugin")),1),m("td",null,[m("div",fr,[e(I)?(i(),y("span",gr,[r(je,{color:"#df2a4c",size:"20",indeterminate:""})])):N("",!0),m("span",null,c(((T=e(P))==null?void 0:T.pluginId)!=="native"?((f=(_=e(ae))==null?void 0:_.result.find(Ae=>{var Fe;return Ae.id===((Fe=e(P))==null?void 0:Fe.pluginId)}))==null?void 0:f.pluginName)||te.$t("components.camera_options.unknown"):te.$t("components.camera_options.native")),1)])])]),(x=e(P))!=null&&x.hasBattery?(i(),y("tr",yr,[m("td",null,c(te.$t("components.camera_options.battery_state")),1),m("td",null,[m("div",hr,[e(b)?(i(),M(fe,{key:1,level:e(b).level,size:3},null,8,["level"])):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(se=e(P))!=null&&se.hasLight?(i(),y("tr",br,[m("td",null,c(te.$t("components.camera_options.light_state")),1),m("td",null,[m("div",_r,[e(u)?e(u).state?(i(),M(G,{key:1,size:20,color:"#f6d800"},{default:a(()=>[E(c(e(Qo)),1)]),_:1})):(i(),M(G,{key:2,size:20,class:"text-disabled"},{default:a(()=>[E(c(e(Oo)),1)]),_:1})):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(V=e(P))!=null&&V.extensions.audioDetection?(i(),y("tr",wr,[m("td",null,c(te.$t("components.camera_options.audio_state")),1),m("td",null,[m("div",$r,[e(q)?e(q).state||(Y=e(q).lastEvent)!=null&&Y.state?(i(),y("span",kr,c(e(Dt)(e(q).state?e(q).timestamp:e(q).lastEvent.timestamp,"DD.MM.YYYY, HH:mm:ss")),1)):(i(),y("span",Cr,"-")):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(ee=e(P))!=null&&ee.hasBinarySensor?(i(),y("tr",xr,[m("td",null,c(te.$t("components.camera_options.doorbell_state")),1),m("td",null,[m("div",Sr,[e(D)?e(D).state||(me=e(D).lastEvent)!=null&&me.state?(i(),y("span",Vr,c(e(Dt)(e(D).state?e(D).timestamp:e(D).lastEvent.timestamp,"DD.MM.YYYY, HH:mm:ss")),1)):(i(),y("span",zr,"-")):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(ke=e(P))!=null&&ke.extensions.motionDetection?(i(),y("tr",Pr,[m("td",null,c(te.$t("components.camera_options.motion_state")),1),m("td",null,[m("div",Tr,[e(B)?e(B).state||(pe=e(B).detections)!=null&&pe.length||(ye=e(B).lastEvent)!=null&&ye.state||(we=(H=e(B).lastEvent)==null?void 0:H.detections)!=null&&we.length?(i(),y("span",Er,c(e(Dt)(e(B).state||(Ee=e(B).detections)!=null&&Ee.length?e(B).timestamp:e(B).lastEvent.timestamp,"DD.MM.YYYY, HH:mm:ss")),1)):(i(),y("span",Mr,"-")):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(Qe=e(P))!=null&&Qe.extensions.objectDetection?(i(),y("tr",Br,[m("td",null,c(te.$t("components.camera_options.object_state")),1),m("td",null,[m("div",Dr,[e(k)?e(k).detections.length||(Oe=e(k).lastEvent)!=null&&Oe.detections.length?(i(),y("span",Lr,c(e(Dt)(e(k).detections.length?e(k).timestamp:e(k).lastEvent.timestamp,"DD.MM.YYYY, HH:mm:ss")),1)):(i(),y("span",Fr,"-")):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(Ce=e(P))!=null&&Ce.hasSiren?(i(),y("tr",Ir,[m("td",null,c(te.$t("components.camera_options.siren_state")),1),m("td",null,[m("div",qr,[e(K)?e(K).state||(he=e(K).lastEvent)!=null&&he.state?(i(),y("span",Qr,c(e(Dt)(e(K).state?e(K).timestamp:e(K).lastEvent.timestamp,"DD.MM.YYYY, HH:mm:ss")),1)):(i(),y("span",Or,"-")):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0)])]}),_:1})])}}}),Nr={class:"relative"},Rr={for:"name",class:"v-label"},Ur={class:"relative"},Zr={for:"type",class:"v-label"},jr={class:"flex justify-start"},Kr={class:"v-label mb-0 ml-2",for:"disabled"},Hr={class:"relative"},Yr={for:"info.manufacturer",class:"v-label"},Wr={class:"relative"},Xr={for:"info.model",class:"v-label"},Jr={class:"relative"},Gr={for:"info.hardware",class:"v-label"},ei={class:"relative"},ti={for:"info.serialNumber",class:"v-label"},ai={class:"relative"},oi={for:"info.firmwareVersion",class:"v-label"},ni={class:"relative"},si={for:"info.supportUrl",class:"v-label"},li={class:"relative w-full"},ri={for:"interface.streamingMode",class:"v-label"},ii={class:"relative w-full"},ui={for:"interface.streamingSource",class:"v-label"},ci={class:"text-sm"},di={class:"w-full flex flex-col items-center justify-center mt-5"},mi={class:"relative w-full"},pi={for:"detectionSettings.motion.timeout",class:"v-label"},vi={class:"text-sm"},fi={class:"w-full flex flex-col items-center justify-center mt-5"},gi={class:"relative w-full"},yi={for:"detectionSettings.motion.confidence",class:"v-label"},hi={class:"text-sm"},bi={class:"w-full flex flex-col items-center justify-center mt-5"},_i={key:0,class:"text-sm text-passive mb-3"},wi={key:1,class:"w-full flex flex-row items-center"},$i={class:"text-sm"},ki={class:"w-full flex flex-col items-center justify-center mt-5"},Ci={class:"relative w-full"},xi={for:"snapshotTTL",class:"v-label"},Si={class:"text-sm"},Vi={class:"w-full flex flex-col items-center justify-center mt-5"},zi={class:"relative w-full"},Pi={for:"frameWorkerSettings.decoder",class:"v-label"},Ti={class:"relative w-full"},Ei={for:"frameWorkerSettings.resolution",class:"v-label"},Mi={class:"relative w-full"},Bi={for:"frameWorkerSettings.fps",class:"v-label"},Di={class:"flex flex-row items-center justify-center ml-auto"},Li={class:"relative mt-2"},Fi=["for"],Ii={class:"relative mt-2"},qi=["for"],Qi={class:"relative mt-2 flex flex-col w-full"},Oi=["for"],Ai={class:"w-full flex items-center justify-center my-3"},Ni={key:0,class:"p-2"},Ri={class:"v-label"},Ui=Ne({__name:"VCameraOptions",props:{cameraName:{},show:{type:Boolean,default:!1},latestSnapshotSrc:{}},emits:["close"],setup(t,{emit:n}){const s=new vt,v=xn(),S=Za(),w=t,Z=n,{cameraName:p,show:B,latestSnapshotSrc:q}=Ke(w),b=g(),k=g(),K=g(),D=g(),u=g(!1),j=g([{name:"overview",eager:!1},{name:"sources",eager:!0},{name:"settings",eager:!0},{name:"plugins",eager:!1}]),P=g(!1),h=g("overview"),ae=g(),re=g(!0),I=g(!1),te=g(!1),le=g(["high-resolution","mid-resolution","low-resolution","snapshot"]),de=g(["auto","mse","webrtc","webrtc/tcp"]),fe=g(["high-resolution","mid-resolution","low-resolution"]),ne=g(["camera","doorbell"]),T=g(["3840x2160","3072x1728","2560x1440","1920x1080","1440x1080","1280x720","960x540","640x480","640x360","320x240","320x180"]),_=g(["pillow","wasm","rust"]),f=g(!1),x=g({name:"",regions:[]}),{data:se,isLoading:V}=s.getCameraQuery(p),{mutate:Y,isPending:ee}=s.removeCameraQuery(),{mutate:me,isPending:ke}=s.patchCameraQuery(),{mutateAsync:pe,isPending:ye}=s.removeCameraZoneQuery(),H=oe(()=>V.value||ee.value),we=oe(()=>ye.value),Ee=oe(()=>we.value||ye.value||u.value||ke.value);ve(B,z=>{if(P.value){P.value=!1,Z("close");return}pt(()=>P.value=z)}),ve(se,z=>{z&&(b.value=za(z))},{deep:!0,immediate:!0}),ve(h,z=>{re.value=z!=="plugins"&&z!=="overview"});const Qe=z=>{var $;($=b.value)==null||$.sources[z].urls.push("")},Oe=(z,$)=>{var W;(W=b.value)==null||W.sources[z].urls.splice($,1)},Ce=()=>{Y({cameraname:p.value},{onSuccess:()=>{v.path.includes(p.value)&&S.push({path:"/cameras"}),I.value=!1}})},he=()=>{b.value&&b.value.sources.push({_id:"",name:"",roles:[],urls:[],internal:!1})},Ae=z=>{b.value&&b.value.sources.splice(z,1)},Fe=()=>{x.value={name:"",regions:[]},te.value=!0},Re=()=>{te.value=!1,ae.value=void 0,f.value=!1,x.value={name:"",regions:[]}},De=async(z,$)=>{var W;if($){const X=await((W=D.value)==null?void 0:W.validate());if(X!=null&&X.valid)console.error("result",X);else return}te.value=!1,$?f.value=!0:f.value=!1,ae.value=z},O=async z=>{await pe({cameraname:p.value,zonename:z})},R=async()=>{var W,X;u.value=!0;const z=await((W=k.value)==null?void 0:W.validate()),$=await((X=K.value)==null?void 0:X.validate());if(z!=null&&z.valid&&($!=null&&$.valid)){const xe={...z.values,...$.values};me({cameraname:p.value,cameraData:xe},{onSettled:()=>{u.value=!1},onError:be=>{console.error("Error saving camera",be)}})}else console.log("Save didnt pass validation",z,$),u.value=!1};return(z,$)=>{const W=Ht("v-number-input"),X=ul,xe=al,be=Nt,Ue=js;return i(),y(Se,null,[e(B)?(i(),M(xe,{key:0,state:e(P),title:e(p),segments:e(j),loading:e(H)||!e(b),selected:e(h),onClose:$[21]||($[21]=l=>Z("close")),onSelected:$[22]||($[22]=l=>h.value=l)},{"segmentIcon.overview":a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Ro)),1)]),_:1})]),"body.overview":a(()=>[e(h)==="overview"?(i(),M(Ar,{key:0,"camera-name":e(p),"latest-snapshot-src":e(q)},null,8,["camera-name","latest-snapshot-src"])):N("",!0)]),"segmentIcon.settings":a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(ea)),1)]),_:1})]),"body.settings":a(()=>[r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),r(e(Qt),{ref_key:"cameraVeeForm1",ref:k,class:"flex flex-col h-full w-full p-2","validation-schema":e(xa)},{default:a(()=>[r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{default:a(()=>[E(c(z.$t("components.camera_options.general")),1)]),_:1}),r(ht,{eager:""},{default:a(()=>[m("div",Nr,[r(e(Pe),{modelValue:e(b).name,"onUpdate:modelValue":$[0]||($[0]=l=>e(b).name=l),name:"name"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Rr,c(z.$t("components.form.label.name")),1),r(He,ze({loading:e(H),variant:"outlined",name:"name",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Ur,[r(e(Pe),{modelValue:e(b).type,"onUpdate:modelValue":$[1]||($[1]=l=>e(b).type=l),name:"type"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Zr,c(z.$t("components.form.label.type")),1),r(mt,ze({loading:e(H),items:e(ne),variant:"outlined",name:"type",type:"text",density:"compact",chips:""},l,{error:d.length>0,"error-messages":o,"model-value":l.value,onKeydown:J(()=>null,["prevent"])}),{chip:a(({item:C})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(C.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),m("div",jr,[r(e(Pe),{"model-value":e(b).disabled,name:"disabled",type:"checkbox","checked-value":!0,"unchecked-value":!1},{default:a(({field:l,errorMessage:o,errors:d})=>[r(Ra,ze({"model-value":e(b).disabled,loading:e(H),name:"disabled"},l,{color:"#df2a4c",type:"checkbox",error:d.length>0,"error-messages":o,"hide-details":"",style:{"max-width":"fit-content"},onChange:$[2]||($[2]=C=>e(b).disabled=!e(b).disabled)}),null,16,["model-value","loading","error","error-messages"]),m("label",Kr,c(z.$t("components.form.label.disabled")),1)]),_:1},8,["model-value"])]),r(ie,{width:"100%",color:"red",variant:"flat",class:"mt-3",loading:e(H)||e(Ee),onClick:$[3]||($[3]=J(l=>I.value=!0,["prevent"]))},{default:a(()=>[E(c(z.$t("components.form.button.remove")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1}),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{default:a(()=>[E(c(z.$t("components.camera_options.branding")),1)]),_:1}),r(ht,{eager:""},{default:a(()=>[m("div",Hr,[r(e(Pe),{modelValue:e(b).info.manufacturer,"onUpdate:modelValue":$[4]||($[4]=l=>e(b).info.manufacturer=l),name:"info.manufacturer"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Yr,c(z.$t("components.form.label.manufacturer")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.manufacturer",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Wr,[r(e(Pe),{modelValue:e(b).info.model,"onUpdate:modelValue":$[5]||($[5]=l=>e(b).info.model=l),name:"info.model"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Xr,c(z.$t("components.form.label.model")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.model",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Jr,[r(e(Pe),{modelValue:e(b).info.hardware,"onUpdate:modelValue":$[6]||($[6]=l=>e(b).info.hardware=l),name:"info.hardware"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Gr,c(z.$t("components.form.label.hardware_version")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.hardware",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",ei,[r(e(Pe),{modelValue:e(b).info.serialNumber,"onUpdate:modelValue":$[7]||($[7]=l=>e(b).info.serialNumber=l),name:"info.serialNumber"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",ti,c(z.$t("components.form.label.serial_number")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.serialNumber",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",ai,[r(e(Pe),{modelValue:e(b).info.firmwareVersion,"onUpdate:modelValue":$[8]||($[8]=l=>e(b).info.firmwareVersion=l),name:"info.firmwareVersion"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",oi,c(z.$t("components.form.label.firmware_version")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.firmwareVersion",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",ni,[r(e(Pe),{modelValue:e(b).info.supportUrl,"onUpdate:modelValue":$[9]||($[9]=l=>e(b).info.supportUrl=l),name:"info.supportUrl"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",si,c(z.$t("components.form.label.snapshot_url")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.supportUrl",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1}),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{default:a(()=>[E(c(z.$t("components.camera_options.interface")),1)]),_:1}),r(ht,{eager:""},{default:a(()=>[m("div",li,[r(e(Pe),{modelValue:e(b).interface.streamingMode,"onUpdate:modelValue":$[10]||($[10]=l=>e(b).interface.streamingMode=l),name:"interface.streamingMode"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",ri,c(z.$t("components.form.label.streaming_mode")),1),r(mt,ze({loading:e(H),items:e(de),variant:"outlined",name:"interface.streamingMode",type:"text",density:"compact",chips:""},l,{error:d.length>0,"error-messages":o,"model-value":l.value,onKeydown:J(()=>null,["prevent"])}),{chip:a(({item:C})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(C.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),m("div",ii,[r(e(Pe),{modelValue:e(b).interface.streamingSource,"onUpdate:modelValue":$[11]||($[11]=l=>e(b).interface.streamingSource=l),name:"interface.streamingSource"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",ui,c(z.$t("components.form.label.streaming_source")),1),r(mt,ze({loading:e(H),items:e(fe),variant:"outlined",name:"interface.streamingSource",type:"text",density:"compact",chips:""},l,{error:d.length>0,"error-messages":o,"model-value":l.value,onKeydown:J(()=>null,["prevent"])}),{chip:a(({item:C})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(C.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1}),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{default:a(()=>[E(c(z.$t("components.camera_options.detection")),1)]),_:1}),r(ht,{eager:""},{default:a(()=>{var l,o,d,C;return[m("span",ci,c(z.$t("components.camera_options.motion_detection")),1),m("div",di,[m("div",mi,[r(e(Pe),{modelValue:e(b).detectionSettings.motion.timeout,"onUpdate:modelValue":$[12]||($[12]=U=>e(b).detectionSettings.motion.timeout=U),name:"detectionSettings.motion.timeout"},{default:a(({field:U,errorMessage:Q,errors:L,value:ge,setValue:_e})=>[m("label",pi,c(z.$t("components.form.label.motion_duration")),1),r(W,ze({loading:e(H),variant:"outlined",name:"detectionSettings.motion.timeout",type:"number",density:"compact"},U,{error:L.length>0,"error-messages":Q,onChange:()=>ge===""?_e(20):void 0}),null,16,["loading","error","error-messages","onChange"])]),_:1},8,["modelValue"])])]),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-5"}),m("span",vi,c(z.$t("components.camera_options.object_detection")),1),m("div",fi,[m("div",gi,[r(e(Pe),{modelValue:e(b).detectionSettings.object.confidence,"onUpdate:modelValue":$[13]||($[13]=U=>e(b).detectionSettings.object.confidence=U),name:"detectionSettings.object.confidence"},{default:a(({field:U,errorMessage:Q,errors:L,value:ge,setValue:_e})=>[m("label",yi,c(z.$t("components.form.label.confidence")),1),r(W,ze({loading:e(H),variant:"outlined",name:"detectionSettings.object.confidence",type:"number",density:"compact"},U,{step:.01,error:L.length>0,"error-messages":Q,onChange:()=>ge===""?_e(.7):void 0}),null,16,["loading","error","error-messages","onChange"])]),_:1},8,["modelValue"])])]),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-5"}),m("span",hi,c(z.$t("components.camera_options.zones")),1),m("div",bi,[(o=(l=e(se))==null?void 0:l.detectionZone)!=null&&o.length?(i(),y("div",wi,[r(He,{class:"my-1","model-value":e(se).detectionZone[0].name,variant:"outlined",density:"compact",type:"text","hide-details":"",readonly:""},{"append-inner":a(()=>[r(ie,{class:"mr-2",size:"24",rounded:"",density:"compact",variant:"flat",color:"green",loading:e(we),onClick:$[14]||($[14]=J(U=>De(e(se).detectionZone[0],!1),["prevent"]))},{default:a(()=>[r(G,{size:"16"},{default:a(()=>[E(c(e(La)),1)]),_:1})]),_:1},8,["loading"]),r(ie,{size:"24",rounded:"",density:"compact",variant:"flat",color:"red",loading:e(we),onClick:$[15]||($[15]=J(U=>O(e(se).detectionZone[0].name),["prevent"]))},{default:a(()=>[r(G,{size:"16"},{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1},8,["loading"])]),_:1},8,["model-value"])])):(i(),y("span",_i,c(z.$t("components.camera_options.no_zones")),1))]),(C=(d=e(se))==null?void 0:d.detectionZone)!=null&&C.length?N("",!0):(i(),M(ie,{key:0,class:"mt-3 mb-5",block:"",color:"#df2a4c",loading:e(we),variant:"flat",onClick:$[16]||($[16]=J(U=>Fe(),["prevent"]))},{default:a(()=>[E(c(z.$t("components.form.button.new_zone")),1)]),_:1},8,["loading"]))]}),_:1})]),_:1})]),_:1}),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{default:a(()=>[E(c(z.$t("components.camera_options.advanced")),1)]),_:1}),r(ht,{eager:""},{default:a(()=>[m("span",$i,c(z.$t("components.camera_options.snapshot")),1),m("div",ki,[m("div",Ci,[r(e(Pe),{modelValue:e(b).snapshotTTL,"onUpdate:modelValue":$[17]||($[17]=l=>e(b).snapshotTTL=l),name:"snapshotTTL"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",xi,c(z.$t("components.form.label.cache_time")),1),r(W,ze({loading:e(H),variant:"outlined",name:"snapshotTTL",type:"number",density:"compact"},l,{step:1,min:30,error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])])]),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-5"}),m("span",Si,c(z.$t("components.camera_options.frame_worker")),1),m("div",Vi,[m("div",zi,[r(e(Pe),{modelValue:e(b).frameWorkerSettings.decoder,"onUpdate:modelValue":$[18]||($[18]=l=>e(b).frameWorkerSettings.decoder=l),name:"frameWorkerSettings.decoder"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Pi,c(z.$t("components.form.label.decoder")),1),r(mt,ze({loading:e(H),items:e(_),variant:"outlined",name:"frameWorkerSettings.decoder",type:"text",density:"compact",chips:""},l,{error:d.length>0,"error-messages":o,"model-value":l.value,onKeydown:J(()=>null,["prevent"])}),{chip:a(({item:C})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(C.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),m("div",Ti,[r(e(Pe),{modelValue:e(b).frameWorkerSettings.resolution,"onUpdate:modelValue":$[19]||($[19]=l=>e(b).frameWorkerSettings.resolution=l),name:"frameWorkerSettings.resolution"},{default:a(({field:l,errorMessage:o,errors:d,value:C,setValue:U})=>[m("label",Ei,c(z.$t("components.form.label.resolution")),1),r(mt,ze({loading:e(H),items:e(T),variant:"outlined",name:"frameWorkerSettings.resolution",type:"string",density:"compact",chips:""},l,{hint:"higher resolution = higher CPU usage",error:d.length>0,"error-messages":o,"model-value":l.value,onKeydown:J(()=>null,["prevent"]),onChange:()=>C===""?U(640):void 0}),{chip:a(({item:Q})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(Q.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value","onChange"])]),_:1},8,["modelValue"])]),m("div",Mi,[r(e(Pe),{modelValue:e(b).frameWorkerSettings.fps,"onUpdate:modelValue":$[20]||($[20]=l=>e(b).frameWorkerSettings.fps=l),name:"frameWorkerSettings.fps"},{default:a(({field:l,errorMessage:o,errors:d,value:C,setValue:U})=>[m("label",Bi,c(z.$t("components.form.label.fps")),1),r(W,ze({loading:e(H),variant:"outlined",name:"frameWorkerSettings.fps",type:"number",density:"compact"},l,{hint:"0 = native",step:1,min:0,max:30,error:d.length>0,"error-messages":o,onChange:()=>C===""?U(10):void 0}),null,16,["loading","error","error-messages","onChange"])]),_:1},8,["modelValue"])])])]),_:1})]),_:1})]),_:1})]),_:1},8,["validation-schema"])]),"segmentIcon.sources":a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Wt)),1)]),_:1})]),"body.sources":a(()=>[r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),r(e(Qt),{ref_key:"cameraVeeForm2",ref:K,class:"flex flex-col h-full w-full p-2","validation-schema":e(xa)},{default:a(()=>[(i(!0),y(Se,null,Te(e(b).sources,(l,o)=>(i(),y("div",{key:o},[Ze(m("div",null,[r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{actions:a(({expanded:d})=>{var C;return[m("div",Di,[r(ie,{loading:e(H),disabled:((C=e(b))==null?void 0:C.sources)!==void 0&&e(b).sources.length<2||l.internal,size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:J(U=>Ae(o),["prevent"])},{default:a(()=>[r(G,null,{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:2},1032,["loading","disabled","onClick"]),d?(i(),M(G,{key:0,size:"22.5"},{default:a(()=>[E(c(e(Fa)),1)]),_:1})):(i(),M(G,{key:1,size:"22.5"},{default:a(()=>[E(c(e(Ia)),1)]),_:1}))])]}),default:a(()=>[E(c(z.$t("components.camera_options.source")+": "+l.name.replace(/ /g,"_").toLowerCase())+" ",1)]),_:2},1024),r(ht,{eager:""},{default:a(()=>{var d;return[m("div",Li,[r(e(Pe),{modelValue:l.name,"onUpdate:modelValue":C=>l.name=C,name:`sources[${o}].name`},{default:a(({field:C,errorMessage:U,errors:Q})=>{var L;return[m("label",{for:`sources[${o}].name`,class:"v-label"},c(z.$t("components.form.label.source_name")),9,Fi),r(He,ze({loading:e(H),disabled:((L=e(se))==null?void 0:L.sources.some(ge=>ge.name===l.name))||l.internal,variant:"outlined",name:`sources[${o}].name`,type:"text",density:"compact",ref_for:!0},C,{error:Q.length>0,"error-messages":U}),null,16,["loading","disabled","name","error","error-messages"])]}),_:2},1032,["modelValue","onUpdate:modelValue","name"])]),(d=e(se))!=null&&d.sources.some(C=>C.name===l.name)&&!l.internal?(i(),M(X,{key:0,"camera-name":e(p),"source-name":("toRaw"in z?z.toRaw:e(Co))(l.name)},null,8,["camera-name","source-name"])):N("",!0),m("div",Ii,[r(e(Pe),{modelValue:l.roles,"onUpdate:modelValue":C=>l.roles=C,name:`sources[${o}].roles`},{default:a(({field:C,errorMessage:U,errors:Q})=>[m("label",{for:`sources[${o}].roles`,class:"v-label"},c(z.$t("components.form.label.source_role")),9,qi),r(mt,ze({loading:e(H),items:e(le).filter(L=>!e(b).sources.some((ge,_e)=>ge.roles.includes(L)&&_e!==o)),disabled:l.internal,variant:"outlined",name:`sources[${o}].roles`,type:"text",density:"compact",chips:"",multiple:"",ref_for:!0},C,{"model-value":C.value,error:Q.length>0,"error-messages":U,onKeydown:J(()=>null,["prevent"])}),{chip:a(({item:L})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(L.title),1)]),_:2},1024)]),_:2},1040,["loading","items","disabled","name","model-value","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"])]),m("div",Qi,[m("label",{for:`sources[${o}].urls[]`,class:"v-label"},c(z.$t("components.form.label.sources")),9,Oi),(i(!0),y(Se,null,Te(l.urls,(C,U)=>(i(),y("div",{key:U,class:"mb-3"},[r(e(Pe),{modelValue:l.urls[U],"onUpdate:modelValue":Q=>l.urls[U]=Q,name:`sources[${o}].urls[${U}]`,value:C},{default:a(({field:Q,errorMessage:L,errors:ge})=>[r(He,ze({loading:e(H),variant:"outlined",name:`sources[${o}].urls[${U}]`,disabled:l.internal,type:"text",density:"compact",ref_for:!0},Q,{error:ge.length>0,"error-messages":L}),{"append-inner":a(()=>[l.urls.length>1?(i(),M(ie,{key:0,loading:e(H),size:"28",variant:"text",rounded:"",density:"compact",color:"red",disabled:l.urls.length<2,onClick:J(_e=>Oe(o,U),["prevent"])},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(No)),1)]),_:1})]),_:2},1032,["loading","disabled","onClick"])):N("",!0)]),_:2},1040,["loading","name","disabled","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name","value"])]))),128)),r(ie,{loading:e(H),disabled:l.internal,color:"#df2a4c",variant:"flat",class:"ml-auto",onClick:J(C=>Qe(o),["prevent"])},{default:a(()=>[E(c(z.$t("components.form.button.add_source")),1)]),_:2},1032,["loading","disabled","onClick"])])]}),_:2},1024)]),_:2},1024)]),_:2},1024),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})],512),[[Et,!l.internal]])]))),128)),m("div",Ai,[r(ie,{loading:e(H),variant:"text",color:"#df2a4c",icon:"",onClick:J(he,["prevent"])},{default:a(()=>[r(G,{size:"30"},{default:a(()=>[E(c(e(qa)),1)]),_:1})]),_:1},8,["loading"])])]),_:1},8,["validation-schema"])]),"segmentIcon.plugins":a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Ao)),1)]),_:1})]),"body.plugins":a(()=>[e(h)==="plugins"?(i(),M(lr,{key:0,"camera-name":e(p)},null,8,["camera-name"])):N("",!0)]),footer:a(()=>[e(re)?(i(),y("div",Ni,[r(ie,{width:"100%",color:"green",variant:"flat",loading:e(H)||e(Ee),onClick:J(R,["prevent"])},{default:a(()=>[E(c(z.$t("components.form.button.save")),1)]),_:1},8,["loading"])])):N("",!0)]),_:1},8,["state","title","segments","loading","selected"])):N("",!0),r(be,{modelValue:e(I),"onUpdate:modelValue":$[23]||($[23]=l=>Me(I)?I.value=l:null),title:z.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.remove",loading:e(H)||e(Ee),onConfirm:$[24]||($[24]=l=>Ce())},{content:a(()=>[m("span",null,c(z.$t("components.dialog.message.confirm_remove")),1)]),_:1},8,["modelValue","title","loading"]),r(be,{modelValue:e(te),"onUpdate:modelValue":$[26]||($[26]=l=>Me(te)?te.value=l:null),title:z.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.open_editor",loading:e(H)||e(Ee),onConfirm:$[27]||($[27]=l=>De(e(x),!0))},{content:a(()=>[r(e(Qt),{ref_key:"cameraVeeForm3",ref:D,"validation-schema":e(Xa),"initial-values":e(x)},{default:a(()=>[r(e(Pe),{modelValue:e(x).name,"onUpdate:modelValue":$[25]||($[25]=l=>e(x).name=l),name:"name",type:"text"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Ri,c(z.$t("components.form.label.zone_name")),1),r(He,ze({class:"my-1",variant:"outlined",density:"compact",type:"text",name:"name"},l,{error:d.length>0,"error-messages":o}),null,16,["error","error-messages"])]),_:1},8,["modelValue"])]),_:1},8,["validation-schema","initial-values"])]),_:1},8,["modelValue","title","loading"]),e(ae)?(i(),M(Ue,{key:1,"camera-name":e(p),zones:e(ae),"is-new-zone":e(f),onShowModal:$[28]||($[28]=l=>l?null:Re())},null,8,["camera-name","zones","is-new-zone"])):N("",!0)],64)}}}),Zi=nt(Ui,[["__scopeId","data-v-c043564e"]]),ji={class:"flex items-center justify-between"},Ki={class:"leading-4 flex flex-col p-2"},Hi={key:0,class:"text-left"},Yi={key:0},Wi={class:"player-camera-subtitle ml-1"},Xi={key:1},Ji={class:"player-camera-subtitle ml-1"},Gi={class:"flex items-center ml-auto"},eu=Ne({__name:"VCameraControl",props:{currentCamera:{},absoluteTitle:{type:Boolean,default:!1},clickableTitle:{type:Boolean,default:!1},buttonElevation:{default:"0"},showTooltips:{type:Boolean,default:!0},showTitleIndicator:{type:Boolean,default:!1},motionDetectionsDisabled:{type:Boolean,default:!0},objectDetectionsDisabled:{type:Boolean,default:!0},settings:{type:Boolean,default:!1},share:{type:Boolean,default:!1},snapshot:{type:Boolean,default:!1},refreshSnapshot:{type:Boolean,default:!1},motions:{type:Boolean,default:!1},objects:{type:Boolean,default:!1},zones:{type:Boolean,default:!1},shortcuts:{type:Boolean,default:!1},logs:{type:Boolean,default:!1},streamLoading:{type:Boolean,default:!1}},emits:["share","snapshot","refresh-snapshot","settings","logs","adding-shortcuts","show-motion-detections","show-object-detections","show-zones"],setup(t,{emit:n}){const{isTouch:s}=Rt(),v=n,S=t,{absoluteTitle:w,clickableTitle:Z,buttonElevation:p,showTooltips:B,shortcuts:q,share:b,snapshot:k,refreshSnapshot:K,motions:D,objects:u,zones:j,settings:P,logs:h,streamLoading:ae,motionDetectionsDisabled:re,objectDetectionsDisabled:I,showTitleIndicator:te}=Ke(S),le=g(!1),de=g(!1),fe=g(!1),ne=g(!1);return ve(le,T=>{v("adding-shortcuts",T)}),ve(de,T=>{v("show-motion-detections",T)}),ve(fe,T=>{v("show-object-detections",T)}),ve(ne,T=>{v("show-zones",T)}),(T,_)=>(i(),y("div",{class:Tt(["p-2 px-3",{"player-header-absolute":e(w),"player-header-container":!e(w)}])},[m("div",ji,[r(ie,{class:Tt({"player-title-text":!e(w),"cursor-pointer":e(Z),"cursor-default":!e(Z)}),style:{padding:"0"},ripple:e(w),color:e(w)?"#212121":void 0,height:"100%",variant:e(w)?"elevated":"text",elevation:e(p),rounded:"",to:e(Z)?`/cameras/${T.currentCamera}`:void 0},{default:a(()=>[m("div",Ki,[m("h3",{class:"player-camera-title text-left truncate",style:ot({color:e(w)?"#ffffff":"color: var(--color)",maxWidth:"150px"})},c(T.currentCamera),5),e(te)?(i(),y("div",Hi,[e(ae)?(i(),y("div",Yi,[r(je,{size:"10",width:"2",indeterminate:"",color:"#0173ff"}),m("span",Wi,c(T.$t("general.loading")),1)])):(i(),y("div",Xi,[r(je,{size:"10",width:"1","model-value":100,color:"red"},{default:a(()=>_[9]||(_[9]=[m("div",{class:"circle-indicator",style:{"background-color":"red"}},null,-1)])),_:1}),m("span",Ji,c(T.$t("components.player.live")),1)]))])):N("",!0)])]),_:1},8,["class","ripple","color","variant","elevation","to"]),m("div",Gi,[e(b)?Ze((i(),M(ie,{key:0,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[0]||(_[0]=J(f=>v("share"),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Uo)),1)]),_:1})]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:T.$t("components.player.share_camera")}]]):N("",!0),e(k)?Ze((i(),M(ie,{key:1,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[1]||(_[1]=J(f=>v("snapshot"),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Zo)),1)]),_:1})]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:T.$t("components.player.capture_snapshot")}]]):N("",!0),e(D)&&!e(re)?Ze((i(),M(ie,{key:2,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[2]||(_[2]=J(f=>de.value=!e(de),["prevent"]))},{default:a(()=>[r(G,{size:"20",disabled:!e(de)},{default:a(()=>[E(c(e(jo)),1)]),_:1},8,["disabled"])]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:e(de)?T.$t("components.player.hide_motions"):T.$t("components.player.show_motions")}]]):N("",!0),e(u)&&!e(I)?Ze((i(),M(ie,{key:3,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[3]||(_[3]=J(f=>fe.value=!e(fe),["prevent"]))},{default:a(()=>[r(G,{size:"20",disabled:!e(fe)},{default:a(()=>[E(c(e(Ko)),1)]),_:1},8,["disabled"])]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:e(fe)?T.$t("components.player.hide_objects"):T.$t("components.player.show_objects")}]]):N("",!0),e(j)?Ze((i(),M(ie,{key:4,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[4]||(_[4]=J(f=>ne.value=!e(ne),["prevent"]))},{default:a(()=>[r(G,{size:"20",disabled:!e(ne)},{default:a(()=>[E(c(e(Ho)),1)]),_:1},8,["disabled"])]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:e(ne)?T.$t("components.player.hide_zones"):T.$t("components.player.show_zones")}]]):N("",!0),e(q)?Ze((i(),M(ie,{key:5,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[5]||(_[5]=J(f=>le.value=!e(le),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(le)?e(Yo):e(Wo)),1)]),_:1})]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:e(le)?T.$t("components.player.save_shortcuts"):T.$t("components.player.add_shortcuts")}]]):N("",!0),e(K)?Ze((i(),M(ie,{key:6,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[6]||(_[6]=J(f=>v("refresh-snapshot"),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Xo)),1)]),_:1})]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:T.$t("components.player.refresh_snapshot")}]]):N("",!0),e(h)&&e(fa)(void 0,"admin")?Ze((i(),M(ie,{key:7,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[7]||(_[7]=J(f=>v("logs"),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Jo)),1)]),_:1})]),_:1},8,["variant","icon","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:T.$t("components.player.log")}]]):N("",!0),e(P)&&e(fa)(void 0,"admin")?Ze((i(),M(ie,{key:8,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[8]||(_[8]=J(f=>v("settings"),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(ea)),1)]),_:1})]),_:1},8,["variant","icon","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:T.$t("components.player.settings")}]]):N("",!0)])])],2))}}),tu=nt(eu,[["__scopeId","data-v-a5980562"]]),au=Ne({__name:"VZoomable",setup(t){const n=g(null),s=g(1),v=g(0),S=g(0),w=g(0),Z=g(0);let p=0,B=!1,q=0,b=0;const k=oe(()=>({transform:`translate(${v.value}px, ${S.value}px) scale(${s.value})`,transformOrigin:"center"}));Mt(()=>{if(n.value){const{width:P,height:h}=n.value.getBoundingClientRect();w.value=P,Z.value=h}});const K=()=>{const P=w.value*(s.value-1)/2,h=Z.value*(s.value-1)/2;v.value=Math.max(Math.min(v.value,P),-P),S.value=Math.max(Math.min(S.value,h),-h)};ve(s,K);const D=P=>{if(P.touches.length===2){const h=P.touches[0],ae=P.touches[1];p=Math.hypot(h.clientX-ae.clientX,h.clientY-ae.clientY)}else P.touches.length===1&&(B=!0,q=P.touches[0].clientX-v.value,b=P.touches[0].clientY-S.value)},u=P=>{if(P.touches.length===2){const h=P.touches[0],ae=P.touches[1],re=Math.hypot(h.clientX-ae.clientX,h.clientY-ae.clientY),I=s.value*(re/p);s.value=Math.min(Math.max(I,1),5),p=re,K()}else P.touches.length===1&&B&&(v.value=P.touches[0].clientX-q,S.value=P.touches[0].clientY-b,K())},j=()=>{B=!1};return(P,h)=>(i(),y("div",{ref_key:"zoomableDiv",ref:n,class:"zoomable-container",style:ot(e(k)),onTouchstart:D,onTouchmove:u,onTouchend:j},[qt(P.$slots,"default",{},void 0,!0)],36))}}),ou=nt(au,[["__scopeId","data-v-f90e10cf"]]),nu=["data-ignore-id"],su={class:"snapshot-hover-container flex items-center justify-center elevation-3"},lu={key:0,style:{width:"100%","aspect-ratio":"16/9"}},ru={class:"shortcut-menu p-3 elevation-5"},iu=Ne({__name:"VCameraShortcuts",props:{currentCamera:{},clickInsideId:{},addingShortcuts:{type:Boolean}},setup(t){var De;const n=new vt,s=new _o,v=bo(),S=Za(),w=t,{clickInsideId:Z,currentCamera:p,addingShortcuts:B}=Ke(w),{loginState:q}=Ua(v),b=g(null),k=g(null),K=g({}),D=g({}),u=g({}),j=g(!1),P=g(),h=g({page:1,pageSize:-1}),ae=g(!1),re=g([]),I=g({}),te=Ft(k),{data:le,isLoading:de}=n.getCameraQuery(p),{data:fe,isLoading:ne}=n.getCamerasQuery(h),{data:T,isLoading:_}=s.getUserQuery(((De=q.value.user)==null?void 0:De.username)||""),{mutate:f,isPending:x}=s.patchShortcutQuery(),{mutateAsync:se,isPending:V}=s.createShortcutQuery(),{mutateAsync:Y,isPending:ee}=s.removeShortcutQuery(),me=oe(()=>de.value||_.value||x.value||ne.value||V.value||ee.value),ke=oe(()=>{var O;return(O=fe.value)!=null&&O.result?fe.value.result.filter(R=>R.name!==p.value):[]});ve([T,le],()=>{var O;T.value&&le.value&&(re.value=((O=T.value.preferences.cameras[le.value._id])==null?void 0:O.shortcuts)||[])},{immediate:!0,deep:!0}),ve([te.width,te.height],()=>{ae.value=!0,pt(()=>{Qe()})}),ve(re,()=>{pt(()=>{Oe()})},{deep:!0,immediate:!0}),ve(ae,O=>{O&&(P.value=void 0)});const pe=(O,R)=>{I.value[O]=j.value?!1:R,Object.entries(I.value).forEach(([z,$])=>{z!==O&&$&&(I.value[z]=!1)})},ye=O=>{j.value||Ae(O)},H=(O,R)=>{O||(I.value[R._id]?(pe(R._id,!1),Re(R.cameraId)):pe(R._id,!0))},we=()=>{Object.entries(D.value).forEach(([O,R])=>{const z=k.value;if(!z)return;const $=z.getBoundingClientRect(),W=R.element.getBoundingClientRect(),X=(W.left-$.left)/$.width*100,xe=(W.top-$.top)/$.height*100;u.value[O]={x:Math.max(0,Math.min(X,100)),y:Math.max(0,Math.min(xe,100))}})},Ee=()=>{Object.entries(D.value).forEach(([O,R])=>{const z=u.value[O];if(!z)return;const $=k.value;if(!$)return;const W=$.getBoundingClientRect(),X=R.element.getBoundingClientRect(),xe=W.width-X.width,be=W.height-X.height,Ue=Math.max(0,Math.min(z.x/100*W.width,xe)),l=Math.max(0,Math.min(z.y/100*W.height,be));R.setPosition(Ue,l)}),ae.value=!1},Qe=()=>{Object.entries(u.value).forEach(([O,R])=>{u.value[O]={x:Math.max(0,Math.min(R.x,100)),y:Math.max(0,Math.min(R.y,100))}}),Ee()},Oe=()=>{for(const[O,R]of Object.entries(D.value))re.value.find(z=>z._id===O)||(R.destroy(),delete D.value[O],delete u.value[O]);for(const[O]of Object.entries(u.value))re.value.find(R=>R._id===O)||delete u.value[O];for(const[O,R]of Object.entries(K.value)){const z=re.value.find($=>$._id===O);if(R&&z&&k.value){D.value[z._id]&&D.value[z._id].destroy();const $=new Qa(R,{containment:k.value});D.value[z._id]=$;const[W,X]=z.coords.points,xe=k.value.getBoundingClientRect(),be=W/100*xe.width,Ue=X/100*xe.height;$.setPosition(be,Ue),u.value[z._id]={x:W,y:X},$.on("dragMove",()=>{j.value=!0}),$.on("dragEnd",()=>{if(setTimeout(()=>{j.value=!1},50),we(),!T.value||!le.value)return;const l=u.value[z._id];f({username:T.value.username,cameraname:le.value.name,shortcutid:z._id,shortcutData:{coords:{_id:z.coords._id,points:[l.x,l.y]}}})})}}Ee()},Ce=O=>{if(!B.value||!k.value)return;const R=k.value.getBoundingClientRect(),z=35,$=35;P.value={x:Math.max(0,Math.min(O.clientX-R.left-z/2,R.width-z)),y:Math.max(0,Math.min(O.clientY-R.top-$/2,R.height-$))}},he=async O=>{if(!b.value||!T.value||!le.value||!k.value)return;const R=k.value,z=b.value,$=R.getBoundingClientRect(),W=z.getBoundingClientRect(),X=W.left-$.left,xe=W.top-$.top,be=X/$.width*100,Ue=xe/$.height*100;await se({username:T.value.username,cameraname:le.value.name,shortcutData:{_id:"",coords:{_id:"",points:[be,Ue]},cameraId:O._id}},{onSuccess:l=>{re.value=l}}),P.value=void 0},Ae=async O=>{!T.value||!le.value||await Y({username:T.value.username,cameraname:le.value.name,shortcutid:O._id},{onSuccess:R=>{re.value=R}})},Fe=(O,R)=>{K.value[R]=O},Re=async O=>{if(j.value)return;const R=new AbortController,$=(await Wa({cameraname:O,signal:R.signal})).name;$&&S.push(`/cameras/${$}`)};return xo(()=>{K.value={}}),Mt(()=>{pt(()=>{Oe()})}),So(()=>{Object.values(D.value).forEach(O=>O.destroy())}),(O,R)=>{const z=Ga,$=Zt;return i(),y("div",{ref_key:"shortcutContainer",ref:k,class:"shortcut-container relative",style:ot({cursor:e(B)?"pointer":"default"}),onClick:J(Ce,["self"])},[(i(!0),y(Se,null,Te(e(re),W=>Ze((i(),y("div",{ref_for:!0,ref:X=>Fe(X,W._id),key:W._id,class:"draggable absolute","data-ignore-id":e(Z),style:ot({background:e(I)[W._id]?"#545454":void 0})},[r(ie,{color:"#383838",size:"32",density:"compact",icon:"",variant:"elevated",active:e(I)[W._id]},{default:a(()=>[r(G,{size:"30",style:{"margin-top":"3px"}},{default:a(()=>R[1]||(R[1]=[E(c("$cuiCamera"))])),_:1})]),_:2},1032,["active"]),r(_a,{"model-value":e(j)?!1:e(I)[W._id]||void 0,target:"parent",offset:[10,20]},{default:a(()=>{var X;return[m("div",su,[(X=e(fe))!=null&&X.result.find(xe=>xe._id===W.cameraId)?(i(),M(z,{key:1,"current-camera":e(fe).result.find(xe=>xe._id===W.cameraId).name,"border-radius":0,target:"stream","source-role":"low-resolution","show-mode":!1,"show-live-indicator":""},null,8,["current-camera"])):(i(),y("div",lu,[r(je,{color:"#df2a4c",indeterminate:""})]))])]}),_:2},1032,["model-value"])],12,nu)),[[e(fn),X=>pe(W._id,X)],[e(gn),[()=>ye(W),{distanceThreshold:24,delay:1e3,onMouseUp:(X,xe,be)=>H(be,W)}]]])),128)),e(P)?(i(),y("div",{key:0,ref_key:"placeholderEl",ref:b,class:"draggable absolute",style:ot(`left: ${e(P).x}px; top: ${e(P).y}px;`)},[r(ie,{color:"#383838",size:"32",density:"compact",icon:"",variant:"elevated"},{default:a(()=>[r(G,{size:"30",style:{"margin-top":"3px"}},{default:a(()=>R[2]||(R[2]=[E(c("$cuiCamera"))])),_:1})]),_:1})],4)):N("",!0),e(B)&&!e(j)&&!e(ae)?(i(),M(_a,{key:1,offset:[30,0],activator:"parent",target:"cursor","onUpdate:modelValue":R[0]||(R[0]=W=>W?null:P.value=void 0)},{default:a(()=>[m("div",ru,[(i(!0),y(Se,null,Te(e(ke),W=>(i(),M($,{key:W._id,class:"shortcut-menu-item elevation-1","camera-name":W.name,width:"100%",loading:e(me),onClick:J(X=>he(W),["prevent"])},null,8,["camera-name","loading","onClick"]))),128))])]),_:1})):N("",!0)],4)}}}),uu=nt(iu,[["__scopeId","data-v-e9e8a575"]]),cu={class:"stream-control flex flex-row items-center justify-center elevation-2"},du=Ne({__name:"VPlayerController",props:{showVolume:{type:Boolean,default:!0},showRewind:{type:Boolean,default:!1},showFastForward:{type:Boolean,default:!1},showPlayPause:{type:Boolean,default:!0},showMicrophone:{type:Boolean,default:!1},showAirplay:{type:Boolean,default:!1},showPip:{type:Boolean,default:!1},showFs:{type:Boolean,default:!1},playing:{type:Boolean},muted:{type:Boolean},micActive:{type:Boolean},isFs:{type:Boolean},isPip:{type:Boolean},loading:{type:Boolean},collapsedControls:{default(){return[]}}},emits:["toggle-mute","toggle-play","toggle-microphone","toggle-airplay","toggle-picture-in-picture","toggle-fullscreen","toggle-rewind","toggle-fast-forward","toggle-playback-rate"],setup(t,{emit:n}){const s=n,v=t,{showAirplay:S,showFastForward:w,showMicrophone:Z,showPip:p,showPlayPause:B,showRewind:q,showVolume:b,playing:k,micActive:K,muted:D,loading:u,showFs:j,isFs:P,isPip:h,collapsedControls:ae}=Ke(v),re=oe(()=>ae.value.includes("airplay")),I=oe(()=>ae.value.includes("fast-forward")),te=oe(()=>ae.value.includes("microphone")),le=oe(()=>ae.value.includes("pip")),de=oe(()=>ae.value.includes("play-pause")),fe=oe(()=>ae.value.includes("rewind")),ne=oe(()=>ae.value.includes("volume")),T=oe(()=>ae.value.includes("fs"));return(_,f)=>(i(),y("div",cu,[e(fe)?N("",!0):(i(),M(ie,{key:0,disabled:!e(q)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[0]||(f[0]=J(x=>s("toggle-rewind"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(Go)),1)]),_:1})]),_:1},8,["disabled"])),e(de)?N("",!0):(i(),M(ie,{key:1,disabled:!e(B)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[1]||(f[1]=J(x=>s("toggle-play"),["prevent"]))},{default:a(()=>[e(de)?N("",!0):(i(),M(G,{key:0,color:"#fff",size:"18"},{default:a(()=>[E(c(e(k)?e(en):e(tn)),1)]),_:1}))]),_:1},8,["disabled"])),e(I)?N("",!0):(i(),M(ie,{key:2,disabled:!e(w)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[2]||(f[2]=J(x=>s("toggle-fast-forward"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(an)),1)]),_:1})]),_:1},8,["disabled"])),e(ne)?N("",!0):(i(),M(ie,{key:3,disabled:!e(b)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[3]||(f[3]=J(x=>s("toggle-mute"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(D)?e(on):e(nn)),1)]),_:1})]),_:1},8,["disabled"])),e(te)?N("",!0):(i(),M(ie,{key:4,disabled:!e(Z)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[4]||(f[4]=J(x=>s("toggle-microphone"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(K)?e(sn):e(ln)),1)]),_:1})]),_:1},8,["disabled"])),e(re)?N("",!0):(i(),M(ie,{key:5,disabled:!e(S)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[5]||(f[5]=J(x=>s("toggle-airplay"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(rn)),1)]),_:1})]),_:1},8,["disabled"])),e(le)?N("",!0):(i(),M(ie,{key:6,disabled:!e(p)||e(u)||e(P),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[6]||(f[6]=J(x=>s("toggle-picture-in-picture"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(h)?e(un):e(cn)),1)]),_:1})]),_:1},8,["disabled"])),e(T)?N("",!0):(i(),M(ie,{key:7,disabled:!e(j)||e(u)||e(h),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[7]||(f[7]=J(x=>s("toggle-fullscreen"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(P)?e(dn):e(mn)),1)]),_:1})]),_:1},8,["disabled"]))]))}}),mu=nt(du,[["__scopeId","data-v-b5e30f72"]]),pu=Ne({__name:"VBBoxPlayground",props:{color:{default:"#df2a4c"},detections:{default(){return[]}}},setup(t,{expose:n}){const s=t,{color:v,detections:S}=Ke(s),w=g(null),Z=Ft(w),p=q=>{if(!w.value)return;const k=w.value.getContext("2d");if(k&&(B(),q.length)){const K=q[0].origWidth,D=q[0].origHeight;w.value.width=Z.width.value,w.value.height=Z.height.value;const u=w.value.width/K,j=w.value.height/D;q.forEach(P=>{const{origHeight:h,origWidth:ae,inputWidth:re,inputHeight:I}=P,[te,le,de,fe]=P.boundingBox,ne=Math.round(te*ae/re),T=Math.round(le*h/I),_=Math.round(de*ae/re),f=Math.round(fe*h/I),x=ne*u,se=T*j,V=_*u,Y=f*j;k.strokeStyle=v.value,k.lineWidth=2,k.beginPath(),k.moveTo(x+5,se),k.lineTo(V-5,se),k.quadraticCurveTo(V,se,V,se+5),k.lineTo(V,Y-5),k.quadraticCurveTo(V,Y,V-5,Y),k.lineTo(x+5,Y),k.quadraticCurveTo(x,Y,x,Y-5),k.lineTo(x,se+5),k.quadraticCurveTo(x,se,x+5,se),k.closePath(),k.stroke();const ee=`${P.label} (${(P.confidence*100).toFixed(2)}%)`,me=k.measureText(ee).width+27,ke=20,pe=x;let ye=se-ke-5;ye<0&&(ye=se+5);const H=10,we=5;k.beginPath(),k.moveTo(pe+we,ye),k.lineTo(pe+me+H*2-we,ye),k.quadraticCurveTo(pe+me+H*2,ye,pe+me+H*2,ye+we),k.lineTo(pe+me+H*2,ye+ke-we),k.quadraticCurveTo(pe+me+H*2,ye+ke,pe+me+H*2-we,ye+ke),k.lineTo(pe+we,ye+ke),k.quadraticCurveTo(pe,ye+ke,pe,ye+ke-we),k.lineTo(pe,ye+we),k.quadraticCurveTo(pe,ye,pe+we,ye),k.closePath(),k.fillStyle="rgba(255, 255, 255, 0.7)",k.fill(),k.fillStyle="black",k.font="bold 13px sans-serif",k.textAlign="left",k.textBaseline="bottom",k.fillText(ee,pe+H,ye+ke-3)})}},B=()=>{if(!w.value)return;const q=w.value.getContext("2d");q&&q.clearRect(0,0,Z.width.value,Z.height.value)};return ve(S,q=>{pt(()=>{p(q)})},{deep:!0,immediate:!0}),n({draw:p,clear:B}),(q,b)=>(i(),y("canvas",{ref_key:"bboxCanvas",ref:w,class:"canvas-container"},null,512))}}),Sa=nt(pu,[["__scopeId","data-v-bdd3e850"]]),vu=["data-inside-id"],fu={key:1,class:"camera-name text-white"},gu={class:"video-extras flex items-center justify-center"},yu={key:0,class:"video-extras-bg text-white p-2"},hu={key:1,class:"mx-1"},bu={key:2,class:"absolute w-full h-full flex flex-col items-center justify-center z-5"},_u={key:0,class:"mt-3 text-white text-sm text-shadow"},wu={key:5,width:"100%",height:"100%",class:"zones-container polygon-container"},$u=["d"],ku=["muted"],Cu=5e3,xu=1e4,Su=1e3,Vu=Ne({__name:"VCameraStream",props:{currentCamera:{},showCameraName:{type:Boolean,default:!1},showLiveIndicator:{type:Boolean,default:!1},showMode:{type:Boolean,default:!0},autoHideControl:{type:Boolean,default:!0},enableControl:{type:Boolean,default:!1},allowStreamRunningInBg:{type:Boolean,default:!1},sourceRole:{default:"high-resolution"},mode:{},motions:{type:Boolean,default:!1},objects:{type:Boolean,default:!1},zones:{type:Boolean,default:!1},shortcuts:{type:Boolean,default:!1},addingShortcuts:{type:Boolean,default:!1}},emits:["streamFinishedLoading"],setup(t,{expose:n,emit:s}){var pa,va;const v=new vt,{mobileActive:S}=Ta(),{api:w}=Pa(),{fsSupported:Z,isIphone:p,isMobile:B}=Rt(),q=s,b=t,{showCameraName:k,showLiveIndicator:K,currentCamera:D,autoHideControl:u,enableControl:j,allowStreamRunningInBg:P,sourceRole:h,mode:ae,motions:re,objects:I,zones:te,shortcuts:le,addingShortcuts:de}=Ke(b),fe=g(null),ne=g(wo()),T=g(),_=g("loading"),f=g(),x=g(!1),se=g(!1),V=g(null),Y=g(),ee=g(!1),me=g(!1),ke=g(!1),pe=g(!0),ye=g(!1),H=g(!1),we=g(!1),Ee=g(!1),Qe=g(!0),Oe=g(!0),Ce=g(!1),he=g(!1),Ae=g(!1),Fe=g(),Re=g(),De=g([]),O=g(null),R=g();let z,$,W,X,xe;const be=v.getCameraQuery(D),Ue=Ft(V),{isFullscreen:l,toggle:o}=Oa(V),d=oe(()=>!!(be!=null&&be.isLoading.value||!H.value||ee.value)),C=oe(()=>_.value!=="mjpeg"&&_.value!=="mp4"&&se.value),U=oe(()=>navigator.mediaDevices&&x.value),Q=oe(()=>{var F,ue;return!!(_.value==="hls"&&((F=be==null?void 0:be.data.value)==null?void 0:F.interface.streamingMode)==="hls"&&((ue=V.value)!=null&&ue.canPlayType("application/vnd.apple.mpegurl"))&&Y.value!==void 0)}),L=oe(()=>document.pictureInPictureEnabled&&!p.value&&_.value!=="mp4"&&_.value!=="mjpeg"),ge=oe(()=>_.value!=="mjpeg"&&_.value!=="mp4");if(Lt(V,"pause",()=>{ye.value=!1}),Lt(V,"play",()=>{ye.value=!0}),Lt(V,"enterpictureinpicture",()=>ke.value=!0),Lt(V,"leavepictureinpicture",()=>ke.value=!1),j.value&&ta(fe,F=>{const ue=F.target,Ve=ue.closest(`[data-inside-id='${ne.value}']`),Ie=ue.closest(`[data-ignore-id='${ne.value}']`);Ve&&!Ie&&!de.value&&(u.value&&da(),Ee.value=!Ee.value)}),((pa=be==null?void 0:be.data.value)==null?void 0:pa.interface.streamingMode)==="hls"&&((va=V.value)!=null&&va.canPlayType("application/vnd.apple.mpegurl"))&&"WebKitPlaybackTargetAvailabilityEvent"in window&&Lt(V,"webkitplaybacktargetavailabilitychanged",F=>{switch(F.availability){case"available":Y.value=!0;break;case"not-available":Y.value=void 0;break}}),!P.value&&!B.value){const F=yn();ve(F,ue=>{var Ve;ue==="hidden"?me.value===!1&&(clearTimeout(X),X=setTimeout(()=>{ma()},xu)):(clearTimeout(X),me.value&&((Ve=O.value)==null||Ve.reconnect()))})}ve(ee,async F=>{F&&await jt(!1,!1)}),ve(H,F=>{F||(zt("motion"),zt("object")),q("streamFinishedLoading",F)}),ve(_,F=>{clearInterval(xe),F==="mse"&&(xe=setInterval(oo,Su))});const _e=async()=>{var st;if(j.value&&u.value&&Ee.value&&da(),await(be==null?void 0:be.suspense()),R.value=await w.deviceManager.getCameraByName(D.value),!R.value)throw new Error("Camera not found!");let F;const ue=R.value.streamSource,Ve=R.value.snapshotSource,Ie=R.value.highResolutionSource,qe=R.value.midResolutionSource,dt=R.value.lowResolutionSource;if(h.value==="high-resolution"?Ie?F=Ie:(console.warn("High resolution source not found, using stream source instead"),F=ue):h.value==="mid-resolution"?qe?F=qe:(console.warn("Mid resolution source not found, using stream source instead"),F=ue):h.value==="low-resolution"?dt?F=dt:(console.warn("Low resolution source not found, using stream source instead"),F=ue):h.value==="snapshot"?Ve?F=Ve:(console.warn("Snapshot source not found, using stream source instead"),F=ue):F=ue,T.value=`${D.value.replace(/ /g,"_").toLowerCase()}_${F.name}`,Qe.value=!R.value.hasMotionDetector,Oe.value=!R.value.hasObjectDetector,R.value.onPropertyChange("hasMotionDetector").subscribe(({newData:Bt})=>{Qe.value=!Bt}),R.value.onPropertyChange("hasObjectDetector").subscribe(({newData:Bt})=>{Oe.value=!Bt}),!V.value)throw new Error("Video player not found!");O.value=R.value.createWebRTCSession({mode:ae.value||((st=be==null?void 0:be.data.value)==null?void 0:st.interface.streamingMode)||"webrtc",sourceName:T.value,videoElement:V.value,wsReconnectTimeout:5e3,webrtcConnectTimeout:2e3}),O.value.addEventListener("error",ce),O.value.addEventListener("reconnect",A),O.value.addEventListener("onFinishLoading",We),O.value.addEventListener("onFirstFrame",Ge),O.value.connect()},ce=F=>{console.error(D.value,F),_.value="error",x.value=!1,H.value=!1,H.value=!1,ee.value=!1},A=()=>{_.value="reconnecting",x.value=!1,H.value=!1,H.value=!1,ee.value=!0},$e=()=>{x.value=O.value.hasBackchannel,se.value=O.value.hasAudio,_.value=O.value.mode,ee.value=!1,H.value=!1},We=()=>{x.value=O.value.hasBackchannel,se.value=O.value.hasAudio,_.value=O.value.mode,ee.value=!1},Ge=()=>{H.value=!0},at=()=>{var F;if(V.value){const ue=document.createElement("canvas");ue.width=V.value.videoWidth,ue.height=V.value.videoHeight,(F=ue.getContext("2d"))==null||F.drawImage(V.value,0,0,ue.width,ue.height);const Ve=ue.toDataURL("image/png"),Ie=`${D.value.replace(/ /g,"_").toLowerCase()}_${new Date().toISOString()}.png`,qe=document.createElement("a");qe.setAttribute("download",Ie),qe.href=Ve,document.body.appendChild(qe),qe.click(),qe.remove()}},et=()=>{var F;Ae.value||(Ae.value=!0,De.value=((F=R.value)==null?void 0:F.detectionZones)||[])},ct=()=>{Ae.value=!1,De.value=[]},Le=async()=>{var F,ue;Ce.value||(zt("motion"),Ce.value=!0,await((F=R.value)==null?void 0:F.start()),z=(ue=R.value)==null?void 0:ue.onMotionDetected.subscribe(Ve=>{ra("motion",Ve.detections??[])}))},wt=()=>{var F;zt("motion"),Ce.value=!1,he.value||(F=R.value)==null||F.stop(),z==null||z.unsubscribe()},eo=async()=>{var F,ue;he.value||(zt("object"),he.value=!0,await((F=R.value)==null?void 0:F.start()),$=(ue=R.value)==null?void 0:ue.onObjectDetected.subscribe(Ve=>{ra("object",Ve.detections)}))},to=()=>{var F;zt("object"),he.value=!1,Ce.value||(F=R.value)==null||F.stop(),$==null||$.unsubscribe()},zt=F=>{const ue=ia(F);ue==null||ue.clear()},ra=(F,ue)=>{if(!H.value)return;const Ve=ia(F);Ve==null||Ve.draw(ue)},ia=F=>F==="motion"?Fe.value:Re.value,ao=F=>{if(!F)return"";const ue=F.map(Ie=>{const qe=Math.round(Ie[0]/100*Ue.width.value),dt=Math.round(Ie[1]/100*Ue.height.value);return`${qe},${dt}`});if(ue.length===0)return"";let Ve=`M ${ue[0]}`;for(let Ie=1;Ie<ue.length;Ie++)Ve+=` L ${ue[Ie]}`;return Ve+=" Z",Ve},ua=async()=>{var F;if(V.value)try{await V.value.play()}catch(ue){if(!((F=V.value)!=null&&F.muted))return V.value.muted=!0,ua();console.warn(D.value,ue)}},oo=()=>{if(V.value&&_.value==="mse"&&!ee.value&&H.value&&V.value.buffered.length>0){const F=V.value.buffered.end(V.value.buffered.length-1);F-V.value.currentTime>1&&(V.value.currentTime=F)}},ca=F=>{pe.value=F!==void 0?F:!pe.value},jt=async(F,ue=!1)=>{var Ve,Ie;if((Ve=O.value)!=null&&Ve.mode.includes("webrtc"))if(we.value=F!==void 0?F:!we.value,we.value)try{f.value=await navigator.mediaDevices.getUserMedia({audio:!0});const qe=f.value.getAudioTracks()[0];pe.value=!ue,await O.value.toggleMicrophone(qe)}catch(qe){console.warn(D.value,qe)}else(Ie=f.value)==null||Ie.getTracks().forEach(qe=>qe.stop()),f.value=void 0,await O.value.toggleMicrophone(null)},no=()=>{var F;document.pictureInPictureElement?document.exitPictureInPicture():document.pictureInPictureEnabled&&((F=V.value)==null||F.requestPictureInPicture())},so=()=>{V.value&&(ye.value?V.value.pause():ua())},lo=()=>{var F;(F=V.value)==null||F.webkitShowPlaybackTargetPicker()},ro=()=>{Z.value?o():l.value=!l.value},da=()=>{clearTimeout(W),W=setTimeout(()=>{Ee.value=!1},Cu)},io=()=>{me.value=!0,H.value=!1,pe.value=!0},ma=()=>{var F;io(),(F=O.value)==null||F.close()};return Ba(async()=>{try{await _e()}catch(F){console.error(F)}}),Da(()=>{var F,ue,Ve,Ie,qe,dt;ma(),(F=O.value)==null||F.removeEventListener("error",ce),(ue=O.value)==null||ue.removeEventListener("reconnect",A),(Ve=O.value)==null||Ve.removeEventListener("onModeChange",$e),(Ie=O.value)==null||Ie.removeEventListener("onFinishLoading",We),(qe=O.value)==null||qe.removeEventListener("onFirstFrame",Ge),(dt=R.value)==null||dt.close(),R.value=void 0}),n({toggleMicrophone:jt,toggleMute:ca,captureScreenshot:at,onHideMotionDetections:wt,onShowMotionDetections:Le,onHideObjectDetections:to,onShowObjectDetections:eo,onHideZones:ct,onShowZones:et,motionDetectionsDisabled:Qe,objectDetectionsDisabled:Oe}),(F,ue)=>{const Ve=mu,Ie=uu,qe=Zt,dt=ou;return i(),y("div",{class:"relative w-full h-full","data-inside-id":e(ne)},[m("div",{ref_key:"fakeClick",ref:fe,class:"fake-click"},null,512),r(Ea,{name:"fade",mode:"out-in"},{default:a(()=>[e(Ee)&&e(j)?(i(),M(Ve,{key:0,"data-ignore-id":e(ne),loading:e(d),"show-rewind":"","show-fast-forward":"","show-volume":e(C),"show-play-pause":e(ge),"show-microphone":e(U),"show-airplay":e(Q)&&e(ge),"show-pip":e(L),"show-fs":e(Z),"is-fs":e(l),"is-pip":e(ke),muted:e(pe),playing:e(ye),"mic-active":e(we),"collapsed-controls":["airplay"],onToggleMute:ca,onTogglePlay:so,onToggleMicrophone:ue[0]||(ue[0]=()=>jt(void 0,!0)),onToggleAirplay:lo,onTogglePictureInPicture:no,onToggleFullscreen:ro},null,8,["data-ignore-id","loading","show-volume","show-play-pause","show-microphone","show-airplay","show-pip","show-fs","is-fs","is-pip","muted","playing","mic-active"])):N("",!0)]),_:1}),r(dt,null,{default:a(()=>[e(le)?(i(),M(Ie,{key:0,"current-camera":e(D),"adding-shortcuts":e(de),"click-inside-id":e(ne)},null,8,["current-camera","adding-shortcuts","click-inside-id"])):N("",!0),e(k)?(i(),y("div",fu,c(e(D)),1)):N("",!0),m("div",gu,[F.showMode&&!e(S)?(i(),y("div",yu,c(e(_).toUpperCase()),1)):N("",!0),F.showMode&&e(K)?(i(),y("div",hu)):N("",!0),e(K)?(i(),y("div",{key:2,class:"live-indicator elevation-3",style:ot({background:e(H)?"red":"gray"})},null,4)):N("",!0)]),e(d)?(i(),y("div",bu,[r(je,{color:"#df2a4c",class:"box-shadow",style:{"border-radius":"50%"},indeterminate:""}),e(ee)?(i(),y("span",_u,c(F.$t("components.player.reconnecting"))+"...",1)):N("",!0)])):N("",!0),e(re)&&!e(Qe)?(i(),M(Sa,{key:3,ref_key:"motionCanvas",ref:Fe},null,512)):N("",!0),e(I)&&!e(Oe)?(i(),M(Sa,{key:4,ref_key:"objectCanvas",ref:Re,color:"green"},null,512)):N("",!0),e(te)?(i(),y("svg",wu,[(i(!0),y(Se,null,Te(e(De),(st,Bt)=>(i(),y("path",{key:Bt,d:ao(st.points.map(uo=>uo)),class:Tt({polygon:st.filter=="include"&&!st.isPrivacyMask,"polygon-exclude":st.filter=="exclude"&&!st.isPrivacyMask,"polygon-privacy":st.isPrivacyMask,dash:st.type==="intersect"&&!st.isPrivacyMask})},null,10,$u))),128))])):N("",!0),e(H)?N("",!0):(i(),M(qe,{key:6,"camera-name":e(D),"show-loading-screen":!1,class:"object-contain"},null,8,["camera-name"])),Ze(m("video",{id:"videoPlayer",ref_key:"videoPlayer",ref:V,playsinline:"",autoplay:"",preload:"auto",muted:e(pe),class:"video-player"},null,8,ku),[[Et,e(H)]])]),_:1})],8,vu)}}}),zu=nt(Vu,[["__scopeId","data-v-2c38f293"]]),Pu={class:"relative player-container-main w-full",style:"background: var(--background-img);"},Tu={class:"relative w-full h-full flex items-center justify-center"},Eu={class:"relative w-full h-full"},Mu={key:2},Bu=Ne({__name:"VPlayer",props:{currentCamera:{},target:{},mode:{},previewSrc:{},showCameraName:{type:Boolean,default:!1},showMode:{type:Boolean,default:!0},showTitle:{type:Boolean,default:!1},showLiveIndicator:{type:Boolean,default:!1},absoluteTitle:{type:Boolean,default:!1},clickableTitle:{type:Boolean,default:!1},clickableContainer:{type:Boolean,default:!1},enableControl:{type:Boolean,default:!1},autoHideControl:{type:Boolean,default:!0},allowStreamRunningInBg:{type:Boolean,default:!1},showTooltips:{type:Boolean,default:!0},border:{type:Boolean,default:!1},borderRadius:{default:3},buttonElevation:{default:"0"},timelineScrolling:{type:Boolean,default:!1},shortcuts:{type:Boolean,default:!1},settings:{type:Boolean,default:!1},logs:{type:Boolean,default:!1},share:{type:Boolean,default:!1},snapshot:{type:Boolean,default:!1},refreshSnapshot:{type:Boolean,default:!1},motions:{type:Boolean,default:!1},objects:{type:Boolean,default:!1},zones:{type:Boolean,default:!1},sourceRole:{default:"high-resolution"}},emits:["resize"],setup(t,{expose:n,emit:s}){const v=new vt,{fsSupported:S}=Rt(),{smallMobileActive:w}=Ta(),Z=$o(),p=s,B=t,{absoluteTitle:q,allowStreamRunningInBg:b,autoHideControl:k,border:K,borderRadius:D,buttonElevation:u,clickableTitle:j,clickableContainer:P,currentCamera:h,enableControl:ae,target:re,mode:I,previewSrc:te,settings:le,logs:de,share:fe,showTitle:ne,snapshot:T,refreshSnapshot:_,timelineScrolling:f,objects:x,motions:se,zones:V,sourceRole:Y,showCameraName:ee,showMode:me,showLiveIndicator:ke,shortcuts:pe,showTooltips:ye}=Ke(B),H=g(!1),we=g(!1),Ee=g(null),Qe=g(!1),Oe=g(null),Ce=g(),he=g(),Ae=g(!1),Fe=g(!1),Re=g(null),De=g();v.toggleQueryActivator("downloadLogQuery",!1);const{data:O,isLoading:R,suspense:z}=v.downloadLogQuery(h),$=Ft(Ee),{isFullscreen:W}=Oa(Oe),X=oe(()=>({fontSize:w.value?12:14})),xe=oe(()=>(f.value||!Ae.value)&&re.value==="stream"),be=oe(()=>{var ce;return!!((ce=Ce.value)!=null&&ce.isLoading&&re.value!=="stream")});ve($.height,(ce,A)=>{p("resize",ce-A)},{deep:!0}),ve(Qe,ce=>{pt(()=>we.value=ce)}),ve(Fe,ce=>{ge(ce)}),ve(w,()=>{_e()});const Ue=()=>{var ce,A;re.value==="stream"?(ce=he.value)==null||ce.captureScreenshot():(A=Ce.value)==null||A.download()},l=()=>{var ce;(ce=Ce.value)==null||ce.refresh()},o=ce=>{var A,$e;ce?(A=he.value)==null||A.onShowZones():($e=he.value)==null||$e.onHideZones()},d=async ce=>{var A,$e;ce?await((A=he.value)==null?void 0:A.onShowMotionDetections()):($e=he.value)==null||$e.onHideMotionDetections()},C=async ce=>{var A,$e;ce?await((A=he.value)==null?void 0:A.onShowObjectDetections()):($e=he.value)==null||$e.onHideObjectDetections()},U=ce=>{var A;(A=he.value)==null||A.toggleMute(ce)},Q=async(ce,A=!1)=>{var $e;await(($e=he.value)==null?void 0:$e.toggleMicrophone(ce,A))},L=async()=>{try{if(v.toggleQueryActivator("downloadLogQuery",!0),await z(),O.value){const ce=O.value,A=window.URL.createObjectURL(new Blob([ce])),$e=document.createElement("a");$e.href=A,$e.setAttribute("download",`camera.ui.${h.value.replace(/ /g,"_")}.log.txt`),document.body.appendChild($e),$e.click(),$e.remove()}}finally{v.toggleQueryActivator("downloadLogQuery",!1)}},ge=ce=>{var A,$e,We,Ge,at,et,ct;ce?(De.value=Z.connectToNamespace("/logs"),(A=De.value)==null||A.socket.on(`stdout/${h.value}`,Le=>{var wt;(wt=Re.value)==null||wt.writeTerminal(Le)}),($e=De.value)==null||$e.socket.on("stdout",Le=>{var wt;(wt=Re.value)==null||wt.writeTerminal(Le)}),(We=De.value)==null||We.socket.on("disconnect",()=>{var Le;(Le=Re.value)==null||Le.writeTerminal(`\r
1
+ var co=Object.defineProperty;var mo=(t,n,s)=>n in t?co(t,n,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[n]=s;var Kt=(t,n,s)=>mo(t,typeof n!="symbol"?n+"":n,s);import{i as ft,x as Be,G as po,H as vo,I as fo,J as go,K as yo,e as Nt,f as nt,a as ho,h as Va,v as za,t as Rt,L as Pa,s as Dt,c as fa,u as bo,U as _o,j as Ta,F as wo,y as $o}from"./main.Bfi54mpo.0.0.47.js";import{r as g,u as e,G as Ne,t as Ke,c as oe,w as ve,C as Mt,b as i,aa as M,ab as a,d as y,P as r,f as m,n as pt,g as Tt,Q as Se,ad as Te,p as J,a9 as c,a7 as E,k as N,m as ze,i as Me,ah as ko,j as qt,$ as Ea,ae as Ma,a5 as Ht,am as It,e as Ze,v as Et,ac as ot,af as Yt,S as Ba,L as Da,I as Co,a8 as xo,R as So}from"./@vue.DezVlW9X.0.0.47.js";import{L as Vo,_ as zo,U as La,a2 as Po,a3 as To,a4 as Eo,a5 as Mo,c as Wt,a6 as ga,a7 as Bo,a8 as Do,a9 as ya,s as xt,aa as ea,m as Lo,a as Fo,E as Fa,M as Ia,X as ha,e as qa,ab as Io,ac as qo,ad as Qo,ae as Oo,i as Ao,Y as No,af as Ro,ag as Uo,ah as Zo,ai as jo,aj as Ko,ak as Ho,al as Yo,am as Wo,an as Xo,h as Jo,ao as Go,ap as en,aq as tn,ar as an,P as on,Q as nn,I as sn,as as ln,at as rn,au as un,av as cn,R as dn,S as mn}from"./@mdi.CbjpODVZ.0.0.47.js";import{D as Qa}from"./draggabilly.CGqgfnLL.0.0.47.js";import{F as Pe,a as Qt}from"./vee-validate.BKNBGBG7.0.0.47.js";import{i as rt}from"./vue3-toastify.C8OkAkuT.0.0.47.js";import{u as pn,b as Xe,a as gt}from"./@tanstack.KC2ukFKU.0.0.47.js";import{t as Ut}from"./@vee-validate.C4VrKMip.0.0.47.js";import{z as tt,c as Pt}from"./zod.bkdEMpUp.0.0.47.js";import{j as Ft,o as ta,v as vn,w as fn,x as gn,s as Oa,p as Lt,y as yn}from"./@vueuse.BFkHh2LU.0.0.47.js";import{a as je,l as Je,f as Aa,J as Na,m as Ye,z as mt,b as ie,p as lt,e as G,X as ba,W as hn,U as bn,x as aa,y as oa,c as He,d as Ra,M as yt,N as ht,L as bt,K as _t,Y as $t,D as _n,T as it,G as wn,I as $n,Z as kn,o as _a}from"./vuetify.CE708yL5.0.0.47.js";import{q as Cn}from"./qrcode.Ds9-9D0-.0.0.47.js";import{s as Ua}from"./pinia.D5t8ANVz.0.0.47.js";import{P as na}from"./plugins.BmJmeob8.0.0.47.js";import{u as xn,a as Za}from"./vue-router.L-Fx2Wkc.0.0.47.js";import{V as Sn}from"./VConsole.B8Ak4KkT.0.0.47.js";const Vn=t=>{const n={};return Object.entries(t.schema).forEach(([s,v])=>{n[s]=Ot(v)}),n},Ot=t=>{switch(t.type){case"string":case"number":case"boolean":return Xt(t)?t.multiple?t.defaultValue!==void 0?[t.defaultValue]:void 0:t.defaultValue!==void 0?t.defaultValue:t.required?t.enum[0]:void 0:t.defaultValue;case"object":return t.properties?Object.entries(t.properties).reduce((n,[s,v])=>(n[s]=Ot(v),n),{}):{};case"array":return t.items?[Ot(t.items)].filter(Boolean):[];default:return}},zn=(t={},n)=>{const s=n.split(".").reduce((S,w)=>{if(w.includes("[")){const[Z,p]=w.split("[");S.push(Z,p.slice(0,-1))}else S.push(w);return S},[]);let v=t;for(const S of s){if(v===void 0)return;v=v[S]}return v},ut=t=>t.type==="string"&&!("enum"in t),wa=t=>t.type==="number"&&!("enum"in t),$a=t=>t.type==="boolean"&&!("enum"in t),Xt=t=>"enum"in t,ja=t=>t.type==="object",ka=t=>ja(t)&&"buttons"in t,Ca=t=>t.type==="array",Jt=t=>t.type==="button",Pn=t=>ut(t)&&t.format!=="qrCode"&&t.format!=="image",Tn=t=>t.type==="string"&&!("enum"in t),En=t=>t.type==="number"&&!("enum"in t),Mn=t=>"enum"in t,St=t=>t.type==="object",Vt=t=>t.type==="array",Gt=t=>/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(.\d+)?(Z|[+-]\d{2}:\d{2})?)?$/.test(t),Ka=(t,n)=>(n.mode==="withSeconds"?/^([01]?[0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/:/^([01]?[0-9]|2[0-3]):([0-5][0-9])$/).test(t),Ha=t=>/^\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,7}\b$/.test(t),Ya=t=>/^[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(t),At=(t,n)=>(n===4?/^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/:/^\s*([0-9a-fA-F]{1,4}:){7}([0-9a-fA-F]{1,4})\s*$/).test(t),sa=t=>{switch(!0){case t===void 0:case typeof t>"u":case typeof t=="function":case typeof t=="symbol":case t instanceof Date:throw new TypeError(`Invalid JSON value: ${String(t)}`);case typeof t=="number":return Ln();case typeof t=="boolean":return Fn();case typeof t=="string":return In(t);case Array.isArray(t):return t.every(s=>typeof s=="string"||typeof s=="number"||typeof s=="boolean")?qn(t):On(t);case t instanceof Object:return Qn(t);default:throw new TypeError(`Invalid JSON value: ${t}`)}},Bn=t=>{const n={};return Object.entries(t).forEach(([s,v])=>{n[s]=sa(v)}),{schema:n}},Xu=(t,n)=>{const s={},v=(S,w)=>{if(St(S)&&S.properties){const Z={};return Object.entries(S.properties).forEach(([p,B])=>{const q=v(B,w==null?void 0:w[p]);q!==void 0&&(Z[p]=q)}),Object.keys(Z).length>0?Z:void 0}else if(Vt(S)&&S.items&&Array.isArray(w)){const Z=w.map(p=>v(S.items,p)).filter(p=>p!==void 0);return Z.length>0?Z:void 0}else if(S.store)return w};return Object.entries(t).forEach(([S,w])=>{const Z=v(w,n[S]);Z!==void 0&&(s[S]=Z)}),s},kt=(t,n)=>n?!t.group||t.group!==n?!0:t.group===n?St(t)&&t.properties?Object.values(t.properties).every(v=>kt(v)):Vt(t)&&t.items?kt(t.items,n):t.readonly??!1:St(t)&&t.properties?Object.values(t.properties).filter(v=>v.group===n).every(v=>kt(v,n)):Vt(t)&&t.items?kt(t.items,n):!1:t.readonly!==void 0?t.readonly:St(t)&&t.properties?Object.values(t.properties).some(s=>kt(s)):Vt(t)&&t.items?kt(t.items):!1,Ct=(t,n)=>n?!t.group||t.group!==n?!1:t.group===n?St(t)&&t.properties?Object.values(t.properties).some(v=>Ct(v)):Vt(t)&&t.items?Ct(t.items,n):t.store??!1:St(t)&&t.properties?Object.values(t.properties).filter(v=>v.group===n).some(v=>Ct(v)):Vt(t)&&t.items?Ct(t.items,n):!1:t.store!==void 0?t.store:St(t)&&t.properties?Object.values(t.properties).some(s=>Ct(s)):Vt(t)&&t.items?Ct(t.items):!1,Dn=t=>{const n={};return Object.entries(t.schema).forEach(([s,v])=>{n[s]=la(v)}),tt.object(n).strict()},la=t=>{switch(t.type){case"string":case"number":case"boolean":return Mn(t)?Un(t):Tn(t)?An(t):En(t)?Nn(t):Rn(t);case"object":return Zn(t);case"array":return jn(t);case"button":return tt.any()}},Ln=()=>({type:"number"}),Fn=()=>({type:"boolean"}),In=t=>{const n={type:"string"};return Gt(t)&&(n.format=t.includes("T")?"date-time":"date"),Ka(t.split("+")[0],{mode:"withSeconds"})&&(n.format="time"),Ha(t)&&(n.format="email"),Ya(t)&&(n.format="uuid"),At(t,4)&&(n.format="ipv4"),At(t,6)&&(n.format="ipv6"),n},qn=t=>({type:"string",enum:t.map(n=>n.toString())}),Qn=t=>{if(!Object.keys(t).length)return{type:"object"};const n={};return Object.entries(t).forEach(([s,v])=>{const S=sa(v);S.key=s,S.description=S.description??`Description for ${s}`,S.required=S.required??!0,S.readonly=S.readonly??!1,n[s]=S}),{type:"object",properties:n}},On=t=>{if(t.length===0)return{type:"array"};const n=t.every(S=>typeof S=="object"&&S!==null&&!Array.isArray(S)),s=t.every(S=>typeof S=="string"),v=t.every(S=>typeof S=="number");if(n){const S={},w={};return t.forEach(Z=>{Object.keys(Z).forEach(p=>{w[p]=(w[p]||0)+1})}),t.forEach(Z=>{Object.entries(Z).forEach(([p,B])=>{if(!S[p]){const q=w[p]===t.length;S[p]={...sa(B),required:q,title:p,description:`Description for ${p}`,readonly:!1}}})}),{type:"array",items:{type:"object",properties:S}}}else return s?{type:"array",items:{type:"string"}}:v?{type:"array",items:{type:"number"}}:{type:"array",items:{type:"boolean"}}},An=t=>{let n=tt.string();if(t.required&&(n=n.nonempty("Required")),t.minLength!==void 0&&(n=n.min(t.minLength)),t.maxLength!==void 0&&(n=n.max(t.maxLength)),t.format)switch(t.format){case"date-time":n=n.refine(s=>Gt(s)&&s.includes("T"),{message:"Invalid date-time"});break;case"date":n=n.refine(s=>Gt(s),{message:"Invalid date"});break;case"time":n=n.refine(s=>Ka(s.split("+")[0],{mode:"withSeconds"}),{message:"Invalid time"});break;case"email":n=n.refine(s=>Ha(s),{message:"Invalid email"});break;case"uuid":n=n.refine(s=>Ya(s),{message:"Invalid uuid"});break;case"ipv4":n=n.refine(s=>At(s,4),{message:"Invalid ipv4"});break;case"ipv6":n=n.refine(s=>At(s,6),{message:"Invalid ipv6"});break}return t.required?n:n.optional()},Nn=t=>{let n=tt.number();return t.minimum!==void 0&&(n=n.min(t.minimum)),t.maximum!==void 0&&(n=n.max(t.maximum)),t.required&&(n=n.refine(s=>s!==void 0&&typeof s=="number",{message:"Required"})),t.required?n:n.optional()},Rn=t=>{const n=tt.boolean();return t.required?n:n.optional()},Un=t=>{const n=t.enum.map(v=>t.required?tt.literal(v):tt.literal(v).optional()),s=t.required?tt.union(n):tt.any().transform(v=>!v||v===""||!t.enum.some(S=>S===v)?void 0:v);return t.multiple?t.required?s.array():s.array().optional():t.required?s:s.optional()},Zn=t=>{let n;if(t.properties){const s=Object.entries(t.properties).reduce((v,[S,w])=>(v[S]=la(w),v),{});n=tt.object(s).strict()}else n=tt.record(tt.any());return t.required?n:n.optional()},jn=t=>{let n;return t.items?n=la(t.items).array():n=tt.any().array(),t.required?n:n.optional()},Kn=async({cameraData:t})=>(await Be.post("/cameras",t)).data,Hn=async({cameraData:t})=>(await Be.post("/cameras/preview",t)).data,Wa=async({cameraname:t,signal:n})=>(await Be.get(`/cameras/${t}`,{signal:n})).data,Yn=async({cameraname:t})=>(await Be.delete(`/cameras/${t}/log`)).data,Wn=async({cameraname:t,signal:n})=>(await Be.get(`/cameras/${t}/log/download`,{signal:n})).data,Xn=async({cameraname:t,sourcename:n,signal:s})=>(await Be.get(`/cameras/${t}/probe/${n}`,{signal:s})).data,Jn=async({cameraname:t,forceNew:n,signal:s})=>(await Be.get(`/cameras/${t}/snapshot`,{signal:s,params:{forceNew:n}})).data,Gn=async({parameter:t,signal:n})=>(await Be.get("/cameras",{params:t,signal:n})).data,es=async({cameraname:t,cameraData:n})=>(await Be.patch(`/cameras/${t}`,n)).data,ts=async({cameraname:t,signal:n})=>(await Be.get(`/cameras/${t}/extensions`,{signal:n})).data,as=async({cameraname:t,pluginname:n,signal:s})=>(await Be.get(`/cameras/${t}/${n}`,{signal:s})).data,os=async({cameraname:t,pluginname:n,configData:s})=>(await Be.patch(`/cameras/${t}/${n}`,s)).data,ns=async({cameraname:t,pluginname:n,configPath:s})=>(await Be.post(`/cameras/${t}/${n}/submit`,{configPath:s})).data,ss=async({cameraname:t,pluginname:n,type:s})=>(await Be.put(`/cameras/${t}/${n}/enable`,null,{params:{type:s}})).data,ls=async({cameraname:t,pluginname:n,type:s})=>(await Be.put(`/cameras/${t}/${n}/disable`,null,{params:{type:s}})).data,rs=async({cameraname:t,pluginname:n})=>(await Be.post(`/cameras/${t}/${n}`)).data,is=async({cameraname:t,pluginname:n})=>(await Be.delete(`/cameras/${t}/${n}`)).data,us=async({cameraname:t,zonename:n,signal:s})=>(await Be.get(`/cameras/${t}/zones/${n}`,{signal:s})).data,cs=async({cameraname:t,zoneData:n})=>(await Be.post(`/cameras/${t}/zones`,n)).data,ds=async({cameraname:t,zonename:n,zoneData:s})=>(await Be.patch(`/cameras/${t}/zones/${n}`,s)).data,ms=async({cameraname:t,zonename:n})=>(await Be.delete(`/cameras/${t}/zones/${n}`)).data,ps=async({cameraname:t})=>(await Be.delete(`/cameras/${t}`)).data,vs=async()=>(await Be.delete("/cameras")).data;class vt{constructor(){Kt(this,"_queryClient",pn());Kt(this,"queryActivator",g([{name:"getCameraQuery",enabled:!0},{name:"getCamerasQuery",enabled:!0},{name:"getCameraSnapshotQuery",enabled:!0},{name:"getCameraExtensionsQuery",enabled:!0},{name:"getCameraExtensionConfigQuery",enabled:!0},{name:"getZoneQuery",enabled:!0},{name:"probeCameraSourceQuery",enabled:!0},{name:"downloadLogQuery",enabled:!0}]))}get queryClient(){return this._queryClient}createCameraQuery(){return Xe({mutationFn:Kn,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),rt.success(ft.global.t("components.toast.camera_added"))}})}previewCameraQuery(){return Xe({mutationFn:Hn})}getCameraQuery(n){return gt({queryKey:["cameras",n],queryFn:({signal:s})=>Wa({cameraname:e(n),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="getCameraQuery"&&s.enabled)})}getCameraExtensionsQuery(n){return gt({queryKey:["camerasExtensions",n],queryFn:({signal:s})=>ts({cameraname:e(n),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="getCameraExtensionsQuery"&&s.enabled)})}probeCameraSourceQuery(n,s){return gt({queryKey:["cameras",n,"probe",s],queryFn:({signal:v})=>Xn({cameraname:e(n),sourcename:e(s),signal:v}),enabled:()=>this.queryActivator.value.some(v=>v.name==="probeCameraSourceQuery"&&v.enabled)})}getCameraSnapshotQuery(n,s){return gt({queryKey:["camerasSnapshot",n],queryFn:({signal:v})=>Jn({cameraname:e(n),forceNew:e(s),signal:v}),enabled:()=>this.queryActivator.value.some(v=>v.name==="getCameraSnapshotQuery"&&v.enabled),retry:!1})}getCamerasQuery(n){return gt({queryKey:["camerasList",n],queryFn:({signal:s})=>Gn({parameter:e(n),signal:s}),placeholderData:s=>s,enabled:()=>this.queryActivator.value.some(s=>s.name==="getCamerasQuery"&&s.enabled)})}patchCameraQuery(){return Xe({mutationFn:es,onSuccess:async(n,s)=>{if(s.cameraData.name&&s.cameraData.name!==s.cameraname){const S=s.cameraname;await this._queryClient.invalidateQueries({queryKey:[S]}),await this._queryClient.refetchQueries({queryKey:["camerasList"]})}else await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",s.cameraname]});rt.success(ft.global.t("components.toast.camera_updated"))}})}getCameraExtensionConfigQuery(n,s,v){return gt({staleTime:0,queryKey:["cameras","extensions",n,s],queryFn:({signal:S})=>as({cameraname:e(n),pluginname:e(s),signal:S}),enabled:()=>this.queryActivator.value.some(S=>S.name==="getCameraExtensionConfigQuery"&&S.enabled),refetchInterval(){if(v.value)return 5e3}})}patchCameraExtensionConfigQuery(){return Xe({mutationFn:os,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}submitCameraExtensionConfigQuery(){return Xe({mutationFn:ns,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",s.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}enableCameraExtensionQuery(){return Xe({mutationFn:ss,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}disableCameraExtensionQuery(){return Xe({mutationFn:ls,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}addCameraExtensionQuery(){return Xe({mutationFn:rs,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}getZoneQuery(n,s){return gt({queryKey:["cameras",n,"zones",s],queryFn:({signal:v})=>us({cameraname:e(n),zonename:e(s),signal:v}),enabled:()=>this.queryActivator.value.some(v=>v.name==="getZoneQuery"&&v.enabled)})}addCameraZoneQuery(){return Xe({mutationFn:cs,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),rt.success(ft.global.t("components.toast.zone_added"))}})}patchCameraZoneQuery(){return Xe({mutationFn:ds,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),rt.success(ft.global.t("components.toast.zone_updated"))}})}removeCameraZoneQuery(){return Xe({mutationFn:ms,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),rt.success(ft.global.t("components.toast.zone_removed"))}})}removeCameraExtensionQuery(){return Xe({mutationFn:is,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["cameras",s.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",s.cameraname]})}})}removeCameraQuery(){return Xe({mutationFn:ps,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),rt.success(ft.global.t("components.toast.camera_removed"))}})}removeCamerasQuery(){return Xe({mutationFn:vs,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),rt.success(ft.global.t("components.toast.cameras_removed"))}})}downloadLogQuery(n){return gt({queryKey:["logs",n],queryFn:({signal:s})=>Wn({cameraname:e(n),signal:s}),enabled:()=>this.queryActivator.value.some(s=>s.name==="downloadLogQuery"&&s.enabled)})}clearLogQuery(){return Xe({mutationFn:Yn,onSuccess:async(n,s)=>{await this._queryClient.refetchQueries({queryKey:["logs",s.cameraname],exact:!0}),rt.success(ft.global.t("components.toast.log_cleared"))}})}toggleQueryActivator(n,s){const v=this.queryActivator.value.find(S=>S.name===n);v&&(v.enabled=s)}}const fs=Pt.object({protocol:fo,url:Pt.string().min(1,"Camera Source is required").array().nonempty("Camera Source is required")}).strict(),gs=Pt.object({name:Pt.string().min(1,"Camera Source Name is required"),roles:go.array().nonempty("Minimum one role is required"),urls:fs.array(),internal:Pt.boolean().default(!1)}).strict(),ys=gs.array(),hs=Pt.object({...yo.shape,sources:ys}).strict(),Ju=Ut(hs),xa=Ut(po),Xa=Ut(vo),bs={0:"person",1:"bicycle",2:"car",3:"motorcycle",4:"airplane",5:"bus",6:"train",7:"truck",8:"boat",9:"traffic light",10:"fire hydrant",11:"stop sign",12:"parking meter",13:"bench",14:"bird",15:"cat",16:"dog",17:"horse",18:"sheep",19:"cow",20:"elephant",21:"bear",22:"zebra",23:"giraffe",24:"backpack",25:"umbrella",26:"handbag",27:"tie",28:"suitcase",29:"frisbee",30:"skis",31:"snowboard",32:"sports ball",33:"kite",34:"baseball bat",35:"baseball glove",36:"skateboard",37:"surfboard",38:"tennis racket",39:"bottle",40:"wine glass",41:"cup",42:"fork",43:"knife",44:"spoon",45:"bowl",46:"banana",47:"apple",48:"sandwich",49:"orange",50:"broccoli",51:"carrot",52:"hot dog",53:"pizza",54:"donut",55:"cake",56:"chair",57:"couch",58:"potted plant",59:"bed",60:"dining table",61:"toilet",62:"tv",63:"laptop",64:"mouse",65:"remote",66:"keyboard",67:"cell phone",68:"microwave",69:"oven",70:"toaster",71:"sink",72:"refrigerator",73:"book",74:"clock",75:"vase",76:"scissors",77:"teddy bear",78:"hair drier",79:"toothbrush",100:"motion"},_s={key:0},ws={key:1,class:"flex flex-col justify-center items-center"},$s={class:"relative w-full"},ks={class:"w-full flex flex-col items-center justify-center"},Cs={class:"relative w-full flex flex-col items-center justify-center"},xs={class:"absolute top-0 left-0 right-0 bottom-0"},Ss={class:"playground-container flex w-full h-full"},Vs={class:"sandbox w-full h-full"},zs={class:"handles"},Ps=["data-id","data-coord","data-region","onDblclick"],Ts={class:"clipboard"},Es={width:"100%",height:"100%",class:"polygon-container"},Ms=["d","onClick","onDblclick","onMousedown","onTouchstart"],Bs={class:"flex align-center flex-column pa-6 zone-buttons"},Ds={class:"w-100"},Ls=["for"],Fs={key:1,class:"text-grey text-caption align-self-center"},Is={key:1,class:"w-100"},qs={class:"v-label"},Qs={key:0},Os={key:1},As={key:0},Ns={key:1},Rs={key:0},Us={key:1},Zs=Ne({__name:"VZoneEditor",props:{cameraName:{},zones:{},isNewZone:{type:Boolean}},emits:["show-modal"],setup(t,{emit:n}){const s=new vt,v=n,S=t,{cameraName:w,zones:Z,isNewZone:p}=Ke(S),B=g(!0),q=g(!1),b=g([]),k=g([]),K=g([]),D=g(null),u=g(),j=g(!1),P=g(0),h=g(-1),ae=g(null),re=g(-1),I=g(Object.values(bs).sort((l,o)=>l==="motion"?-1:o==="motion"?1:0));let te=!1;const le={x:0,y:0},de=Ft(D);ta(ae,l=>{const o=l.target,d=o.closest(".polygon"),C=o.closest(".edit-button"),U=o.closest(".remove-button"),Q=o.closest(".handle"),L=o.closest(".zone-buttons"),ge=o.closest(".coco-labels");!d&&!C&&!U&&!Q&&!q.value&&!L&&!ge&&(h.value=-1)});const{mutateAsync:fe,isPending:ne}=s.addCameraZoneQuery(),{mutateAsync:T,isPending:_}=s.patchCameraZoneQuery(),f=oe(()=>j.value||ne.value||_.value),x=oe(()=>{var l,o;return((o=(l=u.value)==null?void 0:l.regions[h.value])==null?void 0:o.classes.length)===I.value.length}),se=oe(()=>{var l,o;return(((o=(l=u.value)==null?void 0:l.regions[h.value])==null?void 0:o.classes.length)||0)>0}),V=oe(()=>{var o;const l=[];return q.value&&l.push("customizing"),(o=u.value)!=null&&o.regions.length||l.push("start"),l.join(" ")});ve(re,()=>{re.value=-1}),ve(Z,l=>{l&&(u.value=JSON.parse(JSON.stringify(l)))},{deep:!0,immediate:!0}),ve(u,l=>{l&&(b.value=l.regions.map((o,d)=>o.coords.map((C,U)=>({_id:C._id,regionIndex:d,coordIndex:U,coord:C.points}))).flat()||[])},{deep:!0,immediate:!0}),ve(B,l=>{l||setTimeout(()=>v("show-modal",!1),300)}),ve([de.width,de.height],()=>{z()});const Y=()=>{!u.value||!u.value.regions[h.value]||(x.value?u.value.regions[h.value].classes=[]:u.value.regions[h.value].classes=[...I.value])},ee=l=>{if("touches"in l){const o=l.touches[0];return{x:o.clientX,y:o.clientY}}return{x:l.clientX,y:l.clientY}},me=(l,o)=>{if(l.stopPropagation(),!D.value)return;he(q.value),te=!0,h.value=o;const d=D.value.getBoundingClientRect(),{x:C,y:U}=ee(l);le.x=(C-d.left)/d.width*100,le.y=(U-d.top)/d.height*100},ke=l=>{if(!te||!D.value||h.value===-1||!u.value)return;const o=D.value.getBoundingClientRect(),{x:d,y:C}=ee(l),U=(d-o.left)/o.width*100,Q=(C-o.top)/o.height*100,L=U-le.x,ge=Q-le.y,_e=u.value.regions[h.value].coords;let ce=!1;for(let A=0;A<_e.length;A++){const $e=_e[A].points[0]+L,We=_e[A].points[1]+ge;if($e<0||$e>100||We<0||We>100){ce=!0;break}}if(!ce)for(let A=0;A<_e.length;A++){_e[A].points[0]+=L,_e[A].points[1]+=ge,_e[A].points[0]=Math.max(0,Math.min(100,_e[A].points[0])),_e[A].points[1]=Math.max(0,Math.min(100,_e[A].points[1]));const $e=_e[A].points[0]/100*o.width,We=_e[A].points[1]/100*o.height,Ge=k.value.find(at=>at.id===_e[A]._id);Ge==null||Ge.setPosition($e,We)}le.x=U,le.y=Q},pe=()=>{setTimeout(()=>{te=!1},100)},ye=()=>{!u.value||h.value===-1||(u.value.regions[h.value].isPrivacyMask=!u.value.regions[h.value].isPrivacyMask)},H=()=>{!u.value||!u.value.regions[h.value]||(u.value.regions[h.value].filter=u.value.regions[h.value].filter==="include"?"exclude":"include")},we=()=>{!u.value||!u.value.regions[h.value]||(u.value.regions[h.value].type=u.value.regions[h.value].type==="intersect"?"contain":"intersect")},Ee=l=>{if(!q.value||!u.value||te)return;const o=P.value,d=Math.min(Math.max(Math.round((l.offsetX-10)/de.width.value*100),0),100),C=Math.min(Math.max(Math.round((l.offsetY-10)/de.height.value*100),0),100);u.value.regions[o]||u.value.regions.push({_id:Math.random().toString(36).substring(7),coords:[],filter:"include",type:"contain",classes:[],isPrivacyMask:!1});const U={_id:Math.random().toString(36).substring(7),points:[d,C]};u.value.regions[o].coords.push(U),pt(()=>{Qe({regionIndex:o,coordIndex:u.value.regions[o].coords.length-1,coord:[d,C]})})},Qe=l=>{var d;if(l.regionIndex===void 0||l.coordIndex===void 0)return;const o=(d=K.value)==null?void 0:d.filter(C=>C.dataset.coord===l.coordIndex.toString()&&C.dataset.region===l.regionIndex.toString());o.length!==0&&X(o[0],l.coord)},Oe=l=>{if(!u.value)return;const o=Math.round(l.coord[0]/de.width.value*100),d=Math.round(l.coord[1]/de.height.value*100),C={_id:l._id,points:[o,d]};u.value.regions[l.regionIndex].coords[l.coordIndex]=C},Ce=()=>{u.value&&(q.value=!0,P.value=u.value.regions.length||0)},he=l=>{var d;if(!u.value)return;q.value=l||!1;const o=P.value;!u.value.regions.length||!u.value.regions[o]||!u.value.regions[o].coords||(u.value.regions[o].coords.length<3?u.value.regions=u.value.regions.filter((C,U)=>U!==o):(d=K.value)==null||d.forEach(C=>be(C)))},Ae=()=>{q.value=!0,P.value=h.value},Fe=()=>{h.value===-1||!u.value||(u.value.regions=u.value.regions.filter((l,o)=>o!==h.value),h.value=-1)},Re=()=>{var d,C;if(!((d=u.value)!=null&&d.regions.length))return;const l=U=>{var Q,L,ge,_e,ce;(L=(Q=u.value)==null?void 0:Q.regions[U])!=null&&L.coords.length&&((_e=(ge=u.value.regions[U])==null?void 0:ge.coords)==null||_e.pop(),(ce=u.value.regions[U])!=null&&ce.coords.length||u.value.regions.pop())};let o=u.value.regions.length;(C=u.value.regions[o-1].coords)!=null&&C.length&&o--,!(o<0)&&l(o)},De=()=>{te=!1,q.value=!1,b.value=[],u.value&&(u.value.regions=[])},O=l=>{if(!l)return"";const o=l.map(C=>{const U=Math.round(C[0]/100*de.width.value),Q=Math.round(C[1]/100*de.height.value);return`${U+10},${Q+10}`});if(o.length===0)return"";let d=`M ${o[0]}`;for(let C=1;C<o.length;C++)d+=` L ${o[C]}`;return d+=" Z",d},R=l=>{q.value||(h.value=l)},z=()=>{$(),K.value.forEach(l=>{var d;if(!l.dataset.region||!l.dataset.coord||!u.value)return;const o=(d=u.value.regions[parseInt(l.dataset.region)])==null?void 0:d.coords[parseInt(l.dataset.coord)];X(l,o.points),be(l)})},$=()=>{k.value.forEach(l=>l.destroy()),k.value=[]},W=l=>{var o;!u.value||((o=u.value.regions[l.regionIndex])==null?void 0:o.coords.length)<4||u.value.regions[l.regionIndex].coords.splice(l.coordIndex,1)},X=(l,o)=>{Object.assign(l.style,xe(o))},xe=l=>({left:Math.round(l[0]/100*de.width.value)+"px",top:Math.round(l[1]/100*de.height.value)+"px"}),be=l=>{l.classList.add("draggable");const o=new Qa(l,{containment:!0,grid:[0,0]}).on("pointerDown",()=>{var d;(d=document.querySelectorAll('[data-point="'+l.dataset.region+"-"+l.dataset.coord+'"]')[0])==null||d.classList.add("changing")}).on("dragMove",()=>{if(!l.dataset.region||!l.dataset.coord||!l.dataset.id)return;const d=o.position.x,C=o.position.y;Oe({_id:l.dataset.id,coord:[d,C],coordIndex:parseInt(l.dataset.coord),regionIndex:parseInt(l.dataset.region)})}).on("pointerUp",()=>{document.querySelectorAll(".point").forEach(d=>d.classList.remove("changing"))});o.id=l.dataset.id,k.value.push(o)},Ue=async()=>{if(u.value)try{j.value=!0;const l=await Xa.parse(u.value);l.value?(p.value?await fe({cameraname:w.value,zoneData:u.value}):await T({cameraname:w.value,zonename:u.value.name,zoneData:u.value}),B.value=!1):rt.error(l.errors[0].errors[0])}catch(l){console.error(l)}finally{j.value=!1}};return Mt(async()=>{setTimeout(()=>{z()})}),(l,o)=>{const d=Ga,C=Nt;return i(),M(C,{modelValue:e(B),"onUpdate:modelValue":o[12]||(o[12]=U=>Me(B)?B.value=U:null),title:`${l.$t("components.zone_editor.zone")}: ${e(u)?e(u).name:l.$t("components.dialog.title.unknown")}`,loading:e(f),onConfirm:o[13]||(o[13]=U=>Ue())},{content:a(()=>{var U;return[e(u)?(i(),y("div",ws,[m("div",$s,[m("div",{ref_key:"outsideEl",ref:ae},null,512),m("div",ks,[m("div",Cs,[m("div",xs,[m("div",Ss,[m("section",{class:Tt(["playground w-full h-full",e(V)]),onClick:Ee},[m("div",Vs,[m("div",zs,[(i(!0),y(Se,null,Te(e(b),Q=>(i(),y("div",{key:Q._id,ref_for:!0,ref_key:"draggables",ref:K,class:"handle","data-id":Q._id,"data-coord":Q.coordIndex,"data-region":Q.regionIndex,onDblclick:J(L=>W(Q),["prevent"])},o[14]||(o[14]=[m("div",{class:"delete-point"},null,-1)]),40,Ps))),128)),m("div",Ts,[(i(),y("svg",Es,[(i(!0),y(Se,null,Te((U=e(u))==null?void 0:U.regions,(Q,L)=>(i(),y("path",{key:Q._id,d:O(Q.coords.map(ge=>ge.points)),class:Tt({polygon:Q.filter=="include"&&!Q.isPrivacyMask,"polygon-exclude":Q.filter=="exclude"&&!Q.isPrivacyMask,"polygon-privacy":Q.isPrivacyMask,dash:Q.type==="intersect"&&!Q.isPrivacyMask,selected:e(h)===L}),onClick:ge=>R(L),onDblclick:()=>Q.isPrivacyMask=!Q.isPrivacyMask,onMousedown:ge=>me(ge,L),onMousemove:ke,onMouseup:pe,onTouchstart:ge=>me(ge,L),onTouchmove:ke,onTouchend:pe},null,42,Ms))),128))]))])]),o[15]||(o[15]=m("div",{class:"shadowboard on"},null,-1))])],2)])]),m("div",{ref_key:"player",ref:D,class:"w-full h-full flex flex-col items-center justify-center",style:{width:"calc(100% - 20px)","margin-top":"10px","margin-bottom":"10px"}},[r(d,{mode:"webrtc",target:"stream","current-camera":e(w),"border-radius":0,border:"","source-role":"low-resolution"},null,8,["current-camera"])],512)]),m("div",Bs,[m("div",Ds,[e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]&&!e(u).regions[e(h)].isPrivacyMask?(i(),M(e(Pe),{key:0,modelValue:e(u).regions[e(h)].classes,"onUpdate:modelValue":o[0]||(o[0]=Q=>e(u).regions[e(h)].classes=Q),name:`regions[${e(h)}].classes`},{default:a(({field:Q,errorMessage:L,errors:ge})=>[m("label",{for:`regions[${e(h)}].classes`,class:"v-label"},c(l.$t("components.form.label.classes")),9,Ls),r(mt,ze({loading:e(f),items:e(I),class:"coco-labels w-100",variant:"outlined",name:`regions[${e(h)}].classes`,type:"text",density:"compact",chips:"",multiple:"",clearable:""},Q,{error:ge.length>0,"error-messages":L,"model-value":Q.value,"menu-props":{class:"coco-labels"},onKeydown:J(()=>null,["prevent"])}),{"prepend-item":a(()=>[r(Aa,{title:l.$t("components.form.label.select_all"),onClick:Y},{prepend:a(()=>[r(Na,{indeterminate:e(se)&&!e(x),"model-value":e(x)},null,8,["indeterminate","model-value"])]),_:1},8,["title"]),r(Ye,{class:"mt-2"})]),chip:a(({item:_e,index:ce})=>[ce<5?(i(),M(Je,{key:0,color:"#df2a4c"},{default:a(()=>[E(c(_e.title),1)]),_:2},1024)):N("",!0),ce===5?(i(),y("span",Fs," (+"+c(e(u).regions[e(h)].classes.length-2)+") ",1)):N("",!0)]),_:2},1040,["loading","items","name","error","error-messages","model-value"])]),_:1},8,["modelValue","name"])):(i(),y("div",Is,[m("label",qs,c(l.$t("components.form.label.classes")),1),r(mt,{disabled:"",class:"w-100",variant:"outlined",type:"text",density:"compact",onKeydown:J(()=>null,["prevent"])})]))]),r(ba,{modelValue:e(re),"onUpdate:modelValue":o[7]||(o[7]=Q=>Me(re)?re.value=Q:null),variant:"outlined",divided:"",rounded:"xl",class:"mt-5"},{default:a(()=>[e(q)?(i(),M(ie,{key:1,loading:e(f),onClick:o[2]||(o[2]=J(Q=>he(!1),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.finish")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(zo)),1)]),_:1})]),_:1},8,["loading"])):(i(),M(ie,{key:0,loading:e(f),onClick:o[1]||(o[1]=J(Q=>Ce(),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.new")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(Vo)),1)]),_:1})]),_:1},8,["loading"])),r(ie,{loading:e(f),disabled:!e(u).regions.length||e(h)<0||e(q),onClick:o[3]||(o[3]=J(Q=>Ae(),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.edit")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(La)),1)]),_:1})]),_:1},8,["loading","disabled"]),r(ie,{loading:e(f),disabled:!e(u).regions.length||e(h)<0,onClick:o[4]||(o[4]=J(Q=>Fe(),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.delete")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(Po)),1)]),_:1})]),_:1},8,["loading","disabled"]),r(ie,{loading:e(f),disabled:!e(u).regions.length,onClick:o[5]||(o[5]=J(Q=>Re(),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.undo")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(To)),1)]),_:1})]),_:1},8,["loading","disabled"]),r(ie,{loading:e(f),disabled:!e(u).regions.length,onClick:o[6]||(o[6]=J(Q=>De(),["prevent"]))},{default:a(()=>[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(l.$t("components.form.tooltip.clear")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(Eo)),1)]),_:1})]),_:1},8,["loading","disabled"])]),_:1},8,["modelValue"]),r(ba,{modelValue:e(re),"onUpdate:modelValue":o[11]||(o[11]=Q=>Me(re)?re.value=Q:null),variant:"outlined",divided:"",rounded:"xl",class:"mt-5"},{default:a(()=>[r(ie,{disabled:!(e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]),loading:e(f),onClick:o[8]||(o[8]=J(Q=>ye(),["prevent"]))},{default:a(()=>[e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]?(i(),y("div",Qs,[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(e(u).regions[e(h)].isPrivacyMask?l.$t("components.form.tooltip.privacy_mask"):l.$t("components.form.tooltip.public_mask")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(u).regions[e(h)].isPrivacyMask?e(Mo):e(Wt)),1)]),_:1})])):(i(),y("div",Os,[r(G,{size:"20"},{default:a(()=>[E(c(e(Wt)),1)]),_:1})]))]),_:1},8,["disabled","loading"]),r(ie,{disabled:!(e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]&&!e(u).regions[e(h)].isPrivacyMask),loading:e(f),onClick:o[9]||(o[9]=J(Q=>H(),["prevent"]))},{default:a(()=>[e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]&&!e(u).regions[e(h)].isPrivacyMask?(i(),y("div",As,[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(e(u).regions[e(h)].filter==="include"?l.$t("components.form.tooltip.include"):l.$t("components.form.tooltip.exclude")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(u).regions[e(h)].filter==="include"?e(ga):e(Bo)),1)]),_:1})])):(i(),y("div",Ns,[r(G,{size:"20"},{default:a(()=>[E(c(e(ga)),1)]),_:1})]))]),_:1},8,["disabled","loading"]),r(ie,{disabled:!(e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]&&!e(u).regions[e(h)].isPrivacyMask),loading:e(f),onClick:o[10]||(o[10]=J(Q=>we(),["prevent"]))},{default:a(()=>[e(u)&&e(u).regions&&e(h)>=0&&e(u).regions[e(h)]&&!e(u).regions[e(h)].isPrivacyMask?(i(),y("div",Rs,[r(lt,{activator:"parent",location:"top"},{default:a(()=>[E(c(e(u).regions[e(h)].type==="intersect"?l.$t("components.form.tooltip.intersect"):l.$t("components.form.tooltip.contain")),1)]),_:1}),r(G,{size:"20"},{default:a(()=>[E(c(e(u).regions[e(h)].type==="intersect"?e(Do):e(ya)),1)]),_:1})])):(i(),y("div",Us,[r(G,{size:"20"},{default:a(()=>[E(c(e(ya)),1)]),_:1})]))]),_:1},8,["disabled","loading"])]),_:1},8,["modelValue"])])])])])):(i(),y("div",_s,[r(je,{indeterminate:"",color:"#df2a4c"})]))]}),_:1},8,["modelValue","title","loading"])}}}),js=nt(Zs,[["__scopeId","data-v-9f727bf9"]]),Ks={class:"flex flex-col w-full",style:{height:"calc(100% - 45px - env(safe-area-inset-bottom, 0px))"}},Hs={class:"flex w-full p-2 items-center"},Ys={key:0},Ws={class:"options-segments flex items-center justify-between"},Xs={class:"flex flex-col items-center justify-center"},Js={class:"options-segments-text"},Gs={key:0,class:"options-container flex justify-center items-center"},el={class:"mt-auto"},tl=Ne({__name:"VOptionsSidebar",props:{state:{type:Boolean,default:!1},title:{},segments:{default:()=>[{name:"default",eager:!0}]},selected:{},loading:{type:Boolean,default:!1},width:{default:400}},emits:["close","selected"],setup(t,{emit:n}){ko(u=>({"08bb651e":e(D)}));const s=t,v=n,{segments:S,state:w,title:Z,loading:p,width:B,selected:q}=Ke(s),b=g(null),k=g(q.value??S.value[0].name),K=g(!1),D=g(`${B.value}px`);return ve(w,()=>{K.value=w.value}),ve(K,()=>{K.value!==w.value&&setTimeout(()=>{v("close")},300)}),ve(k,u=>{v("selected",u)}),ta(b,u=>{const j=u.target,P=j.closest(".v-overlay-container"),h=j.closest(".Toastify");!P&&!h&&(K.value=!1)}),Mt(()=>{v("selected",k.value)}),(u,j)=>(i(),M(Ea,{name:"options-slide",mode:"out-in"},{default:a(()=>[e(K)?(i(),y("div",{key:0,ref_key:"optionsSidebar",ref:b,class:"options-sidebar"},[m("div",Ks,[m("div",Hs,[e(Z)?(i(),y("b",Ys,c(e(Z)),1)):N("",!0),r(ie,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:j[0]||(j[0]=J(P=>K.value=!1,["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1})]),m("div",Ws,[r(bn,{modelValue:e(k),"onUpdate:modelValue":j[1]||(j[1]=P=>Me(k)?k.value=P:null),height:"100%",grow:"","slider-color":"#df2a4c"},{default:a(()=>[(i(!0),y(Se,null,Te(e(S),(P,h)=>(i(),M(hn,{key:h,value:P.name,disabled:e(p),"min-width":"auto"},{default:a(()=>[m("div",Xs,[qt(u.$slots,`segmentIcon.${P}`,{},()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(ea)),1)]),_:1})],!0),m("span",Js,c(u.$t(`components.options_sidebar.segment_tab_${P.name.toLowerCase()}`)),1)])]),_:2},1032,["value","disabled"]))),128))]),_:3},8,["modelValue"])]),e(p)?(i(),y("div",Gs,[r(je,{color:"#df2a4c",indeterminate:""})])):(i(),M(aa,{key:1,modelValue:e(k),"onUpdate:modelValue":j[2]||(j[2]=P=>Me(k)?k.value=P:null),class:"options-container",continuous:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(S),(P,h)=>(i(),M(oa,{key:h,value:P.name,class:"h-full pb-safe overflow-y-scroll",eager:P.eager,continuous:""},{default:a(()=>[qt(u.$slots,`body.${P.name}`,{},void 0,!0)]),_:2},1032,["value","eager"]))),128))]),_:3},8,["modelValue"])),m("div",el,[qt(u.$slots,"footer",{},void 0,!0)])])],512)):N("",!0)]),_:3}))}}),al=nt(tl,[["__scopeId","data-v-236163da"]]),ol={class:"relative mt-2"},nl={class:"v-label"},sl={class:"v-label"},ll={class:"v-label"},rl={class:"relative mt-2"},il={class:"v-label"},ul=Ne({__name:"VCameraSourceInfo",props:{cameraName:{},sourceName:{}},setup(t){const n=new vt,s=t,{cameraName:v,sourceName:S}=Ke(s),{data:w,isLoading:Z}=n.probeCameraSourceQuery(v.value,S.value),p=oe(()=>{var b;return((b=w.value)==null?void 0:b.probe.consumers.filter(k=>k.format_name!=="probe").length)||0}),B=oe(()=>{var K,D;const b=(K=w.value)==null?void 0:K.probe.consumers.find(u=>u.format_name==="probe"),k=(D=b==null?void 0:b.senders)==null?void 0:D.filter(u=>u.codec.codec_type==="video");return(k==null?void 0:k.map(u=>u.codec.codec_name))||[]}),q=oe(()=>{var K,D;const b=(K=w.value)==null?void 0:K.probe.consumers.find(u=>u.format_name==="probe"),k=(D=b==null?void 0:b.senders)==null?void 0:D.filter(u=>u.codec.codec_type==="audio");return(k==null?void 0:k.map(u=>u.codec.codec_name))||[]});return(b,k)=>{var K;return i(),y("div",null,[m("div",ol,[m("label",nl,c(b.$t("components.form.label.connections")),1),r(He,{value:e(p),loading:e(Z),readonly:"",variant:"outlined",type:"text",density:"compact"},null,8,["value","loading"])]),(i(!0),y(Se,null,Te(e(B),D=>(i(),y("div",{key:D,class:"relative mt-2"},[m("label",sl,c(b.$t("components.form.label.video_codec")),1),r(He,{value:D,readonly:"",variant:"outlined",type:"text",density:"compact"},null,8,["value"])]))),128)),(i(!0),y(Se,null,Te(e(q),D=>(i(),y("div",{key:D,class:"relative mt-2"},[m("label",ll,c(b.$t("components.form.label.audio_codec")),1),r(He,{value:D,readonly:"",variant:"outlined",type:"text",density:"compact"},null,8,["value"])]))),128)),m("div",rl,[m("label",il,c(b.$t("components.form.label.rtsp_url")),1),r(He,{value:(K=e(w))==null?void 0:K.url,loading:e(Z),readonly:"",variant:"outlined",type:"text",density:"compact"},null,8,["value","loading"])])])}}}),cl={class:"w-full my-3"},dl=["for"],ml=["for"],pl=["for"],vl=["for"],fl=["for"],gl={class:"v-input__details",style:{"padding-inline":"16px"}},yl={class:"v-messages"},hl={key:0,class:"v-messages__message"},bl={class:"flex flex-row items-center justify-center ml-auto"},_l={key:0,class:"flex flex-col w-full items-center justify-center mt-3"},wl={class:"flex flex-row w-full items-center justify-center mt-3"},$l=Ne({__name:"VCustomField",props:Yt({schemaField:{},configKey:{},removable:{},loading:{type:Boolean,default:!1}},{modelValue:{type:Object,required:!0},modelModifiers:{}}),emits:Yt(["onChange","onSubmit","onAction","onTrigger"],["update:modelValue"]),setup(t,{emit:n}){const s=ho(),v=n,S=Ma(t,"modelValue"),w=t,{theme:Z}=Ua(s),{schemaField:p,configKey:B,removable:q,loading:b}=Ke(w),k=g(!1),K=g(0),D=g(0),u=g(p.value.opened===!0?[0]:[]);ve(S,()=>{K.value++},{deep:!0});const j=vn(async()=>{if(ut(p.value)&&p.value.format==="qrCode"){let T;return Z.value==="dark"?T={dark:"#FFFFFFFF",light:"#FF000000"}:T={dark:"#404040FF",light:"#FFFFFFFF"},await Cn.toDataURL(ne.value,{margin:.5,type:"image/png",color:T,scale:10})}},void 0,{lazy:!0}),P=oe(()=>{if(ut(p.value)&&p.value.format==="image")return ne.value}),h=(T,_,f)=>{const x=I(S.value,T);Array.isArray(x)&&x.splice(_,1),D.value++,v("onTrigger")},ae=T=>{let _=I(S.value,T);_||(te(S.value,T,[]),_=I(S.value,T));const f=p.value;if(Array.isArray(_)&&f&&Ca(f)&&f.items){const x=Ot(f.items);_.push(x)}D.value++},re=T=>{var _;return((_=T.match(/[^.[\]]+|\[\d+\]/g))==null?void 0:_.map(f=>f.startsWith("[")?parseInt(f.slice(1,-1)):f))||[]},I=(T,_)=>{const f=re(_);let x=T;for(const V of f){if(x==null)return;x=x[V]}if(!(x!=null)){const V=le(p.value,_);V&&"defaultValue"in V?x=V.defaultValue:x=void 0}return x},te=(T,_,f)=>{const x=re(_),se=x.pop(),V=x.reduce((Y,ee)=>(Y[ee]||(Y[ee]={}),Y[ee]),T);se!==void 0&&f!==void 0&&f!==null&&f!==""&&(V[se]=f)},le=(T,_)=>{const f=re(_);let x=T;for(const se of f)if(x.type==="object"&&x.properties)x=x.properties[se];else if(x.type==="array"&&x.items&&!("anyOf"in x.items))x=x.items;else return x;return x},de=T=>{const _=ut(T)&&T.format==="qrCode",f=ut(T)&&T.format==="image",x=Jt(T);return!_&&!f&&!x},fe=T=>!T.hidden||T.hidden&&de(T),ne=oe({get:()=>(K.value,I(S.value,B.value)),set:T=>{const _=p.value;let f=T;Xt(_)?_.multiple?f=Array.isArray(T)?T:[T]:f=T&&T.toString():ut(_)?f=T&&T.toString():wa(_)?f=parseFloat(T)||0:$a(_)?f=T==="true"||T===!0:f=T,te(S.value,B.value,f),K.value++}});return(T,_)=>{const f=Va,x=Ht("v-number-input"),se=Ht("VCustomField",!0);return i(),y("div",cl,[e(ut)(e(p))&&e(p).format==="qrCode"?(i(),y(Se,{key:0},[m("label",{for:e(B),class:"v-label"},c(e(p).title),9,dl),r(f,{src:e(j),class:"mb-3"},null,8,["src"])],64)):N("",!0),e(ut)(e(p))&&e(p).format==="image"?(i(),y(Se,{key:1},[m("label",{for:e(B),class:"v-label"},c(e(p).title),9,ml),r(f,{src:e(P),class:"mb-3"},null,8,["src"])],64)):e(Pn)(e(p))?(i(),M(e(Pe),{key:2,modelValue:e(ne),"onUpdate:modelValue":_[2]||(_[2]=V=>Me(ne)?ne.value=V:null),name:e(B)},{default:a(({field:V,errorMessage:Y,errors:ee})=>[m("label",{for:e(B),class:"v-label"},c(e(p).title),9,pl),r(He,ze({error:ee.length>0,"error-messages":Y,readonly:e(p).readonly,placeholder:e(p).placeholder,hint:e(p).description,"persistent-hint":""},V,{variant:"outlined",density:"compact",type:e(p).format==="password"?e(k)?"text":"password":"text","append-inner-icon":e(p).format==="password"?e(k)?e(Lo):e(Fo):void 0,"onClick:appendInner":_[1]||(_[1]=me=>k.value=!e(k))}),It({_:2},[e(q)?{name:"append-inner",fn:a(()=>[r(ie,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:_[0]||(_[0]=J(me=>h(e(q).path,e(q).index,!0),["stop"]))},{default:a(()=>[r(G,null,{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["error","error-messages","readonly","placeholder","hint","type","append-inner-icon"])]),_:1},8,["modelValue","name"])):e(wa)(e(p))?(i(),M(e(Pe),{key:3,modelValue:e(ne),"onUpdate:modelValue":_[4]||(_[4]=V=>Me(ne)?ne.value=V:null),name:e(B)},{default:a(({field:V,errorMessage:Y,errors:ee,value:me,setValue:ke})=>[m("label",{for:e(B),class:"v-label"},c(e(p).title),9,vl),r(x,ze({error:ee.length>0,"error-messages":Y,readonly:e(p).readonly,hint:e(p).description,step:e(p).step||1,min:e(p).minimum,max:e(p).maximum,"persistent-hint":""},V,{variant:"outlined",type:"number",density:"compact",onChange:()=>me===""?ke(e(p).defaultValue||e(p).minimum||0):void 0}),It({_:2},[e(q)?{name:"append-inner",fn:a(()=>[r(ie,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:_[3]||(_[3]=J(pe=>h(e(q).path,e(q).index,!0),["stop"]))},{default:a(()=>[r(G,null,{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["error","error-messages","readonly","hint","step","min","max","onChange"])]),_:1},8,["modelValue","name"])):e($a)(e(p))?(i(),M(e(Pe),{key:4,"model-value":e(ne),name:e(B),type:"checkbox","checked-value":!0,"unchecked-value":!1},{default:a(({field:V,errors:Y,errorMessage:ee})=>[r(Ra,ze({"model-value":e(ne),class:"w-full"},V,{color:"#df2a4c",type:"checkbox","persistent-hint":"",label:e(p).title,error:Y.length>0,"error-messages":ee,hint:e(p).description,onChange:_[6]||(_[6]=me=>ne.value=!e(ne))}),It({_:2},[e(q)?{name:"append",fn:a(()=>[r(ie,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:_[5]||(_[5]=J(me=>h(e(q).path,e(q).index,!0),["stop"]))},{default:a(()=>[r(G,null,{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","label","error","error-messages","hint"])]),_:1},8,["model-value","name"])):e(Xt)(e(p))?(i(),M(e(Pe),{key:5,modelValue:e(ne),"onUpdate:modelValue":_[8]||(_[8]=V=>Me(ne)?ne.value=V:null),name:e(B)},{default:a(({field:V,errorMessage:Y,errors:ee})=>[m("label",{for:e(B),class:"v-label"},c(e(p).title),9,fl),r(mt,ze({items:e(p).enum,error:ee.length>0,"error-messages":Y,readonly:e(p).readonly,hint:e(p).description,"model-value":V.value,"persistent-hint":""},V,{variant:"outlined",density:"compact",chips:"",multiple:e(p).multiple,clearable:!e(p).required&&!e(p).readonly,onKeydown:_[7]||(_[7]=J(()=>{},["prevent"]))}),{chip:a(({item:me})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(me.title),1)]),_:2},1024)]),_:2},1040,["items","error","error-messages","readonly","hint","model-value","multiple","clearable"])]),_:1},8,["modelValue","name"])):e(Jt)(e(p))?(i(),y(Se,{key:6},[r(ie,{width:"100%",color:e(p).color?e(p).color:"#df2a4c",variant:"flat",class:"mt-3",loading:e(b),onClick:_[9]||(_[9]=J(V=>v("onAction",{configPath:e(B)}),["prevent"]))},{default:a(()=>[E(c(e(p).title),1)]),_:1},8,["color","loading"]),m("div",gl,[m("div",yl,[e(p).description?(i(),y("div",hl,c(e(p).description),1)):N("",!0)])])],64)):e(ja)(e(p))||e(ka)(e(p))?(i(),M(_t,{key:7,"model-value":e(u),class:"inner-component-2 mt-0 mb-3"},{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px",width:"-webkit-fill-available"},class:"truncate"},It({default:a(()=>[e(p).description?(i(),M(lt,{key:0,text:e(p).description,location:"top"},{activator:a(({props:V})=>[r(G,ze({size:"20"},V,{class:"mr-3 text-passive"}),{default:a(()=>[E(c(e(ha)),1)]),_:2},1040)]),_:1},8,["text"])):N("",!0),E(" "+c(e(p).title||e(B))+" ",1)]),_:2},[e(q)?{name:"actions",fn:a(({expanded:V})=>[m("div",bl,[r(ie,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:_[10]||(_[10]=J(Y=>h(e(q).path,e(q).index,!0),["stop"]))},{default:a(()=>[r(G,null,{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1}),V?(i(),M(G,{key:0,size:"22.5"},{default:a(()=>[E(c(e(Fa)),1)]),_:1})):(i(),M(G,{key:1,size:"22.5"},{default:a(()=>[E(c(e(Ia)),1)]),_:1}))])]),key:"0"}:void 0]),1024),r(ht,{eager:""},{default:a(()=>{var V;return[(i(!0),y(Se,null,Te(e(p).properties,(Y,ee)=>(i(),y("div",{key:`${e(B)}.${ee}`},[fe(Y)?Ze((i(),M(se,{key:0,modelValue:S.value,"onUpdate:modelValue":_[11]||(_[11]=me=>S.value=me),"schema-field":Y,"config-key":`${e(B)}.${ee}`,loading:e(b),onOnSubmit:_[12]||(_[12]=me=>v("onSubmit",me)),onOnAction:_[13]||(_[13]=me=>v("onAction",me))},null,8,["modelValue","schema-field","config-key","loading"])),[[Et,!Y.hidden]]):N("",!0)]))),128)),e(ka)(e(p))&&((V=e(p).buttons)!=null&&V.length)?(i(),y("div",_l,[(i(!0),y(Se,null,Te(e(p).buttons,(Y,ee)=>(i(),M(ie,{key:`button-${ee}`,variant:"flat",loading:e(b),class:"px-0 w-100 my-2",style:ot({background:Y.color?Y.color:"rgba(141, 141, 141, 0.2)"}),onClick:J(()=>Y?v("onSubmit",{actionId:Y.onSubmit,payload:e(zn)(S.value,e(B))}):void 0,["prevent"])},{default:a(()=>[E(c(Y==null?void 0:Y.label),1)]),_:2},1032,["loading","style","onClick"]))),128))])):N("",!0)]}),_:1})]),_:1})]),_:1},8,["model-value"])):e(Ca)(e(p))&&e(p).items?(i(),M(_t,{key:8,"model-value":e(u),class:"inner-component-2 mt-0 mb-3"},{default:a(()=>[(i(),M(bt,{key:e(D),elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px",width:"-webkit-fill-available"},class:"truncate"},{default:a(()=>[e(p).description?(i(),M(lt,{key:0,text:e(p).description,location:"top"},{activator:a(({props:V})=>[r(G,ze({size:"20"},V,{class:"mr-3 text-passive"}),{default:a(()=>[E(c(e(ha)),1)]),_:2},1040)]),_:1},8,["text"])):N("",!0),E(" "+c(e(p).title||e(B)),1)]),_:1}),r(ht,{eager:""},{default:a(()=>[(i(!0),y(Se,null,Te(I(S.value,e(B)),(V,Y)=>(i(),y("div",{key:`item-${Y}-${(V==null?void 0:V.key)||V||Y}`,class:"w-full"},[fe(e(p))?Ze((i(),M(se,{key:0,modelValue:S.value,"onUpdate:modelValue":_[14]||(_[14]=ee=>S.value=ee),"schema-field":e(p).items,"config-key":`${e(B)}[${Y}]`,removable:{path:e(B),index:Y},loading:e(b),onOnSubmit:_[15]||(_[15]=ee=>v("onSubmit",ee)),onOnAction:_[16]||(_[16]=ee=>v("onAction",ee)),onOnTrigger:_[17]||(_[17]=()=>D.value++)},null,8,["modelValue","schema-field","config-key","removable","loading"])),[[Et,!e(p).hidden]]):N("",!0)]))),128)),m("div",wl,[r(ie,{variant:"text",color:"#df2a4c",icon:"",onClick:_[18]||(_[18]=J(V=>ae(e(B)),["prevent"]))},{default:a(()=>[r(G,{size:"30"},{default:a(()=>[E(c(e(qa)),1)]),_:1})]),_:1})])]),_:1})]),_:1}))]),_:1},8,["model-value"])):N("",!0)])}}}),kl=nt($l,[["__scopeId","data-v-a5e7123a"]]),Cl={key:0},xl={key:1},Ja=Ne({__name:"VJsonSchema",props:{config:{},uiSchema:{},loading:{type:Boolean,default:!1},disableButton:{type:Boolean},saveButton:{type:Boolean,default:!0},saveButtonLabel:{},saveButtonColor:{default:"green"},showButton:{type:Boolean,default:!1},buttonFullWidth:{type:Boolean,default:!0}},emits:["onSubmit","onAction","onFormSubmit","changeGroup"],setup(t,{emit:n}){const s=n,v=t,{uiSchema:S,config:w,loading:Z,saveButton:p,saveButtonLabel:B,showButton:q,disableButton:b,saveButtonColor:k,buttonFullWidth:K}=Ke(v),D=g(),u=g(),j=oe(()=>Object.keys(w.value).length?{...za(w.value)}:S.value?Vn(S.value):{}),P=oe(()=>S.value?S.value:Bn(w.value)),h=oe(()=>Dn(P.value)),ae=oe(()=>Ut(h.value)),re=oe(()=>Object.keys(P.value.schema).every(f=>kt(P.value.schema[f],u.value))),I=oe(()=>Object.keys(P.value.schema).some(f=>Ct(P.value.schema[f],u.value))),te=oe(()=>{const f=P.value,x=[];for(const[,se]of Object.entries(f.schema))se.group&&!se.hidden&&!x.includes(se.group)&&x.push(se.group);return x.length&&(u.value=x[0]),x});ve(u,f=>{f&&s("changeGroup",f)});const le=f=>{const x=ut(f)&&f.format==="qrCode",se=ut(f)&&f.format==="image",V=Jt(f);return!x&&!se&&!V},de=f=>!f.hidden||f.hidden&&le(f),fe=async()=>{var f;return await((f=D.value)==null?void 0:f.validate())},ne=async f=>{s("onAction",f)},T=async f=>{const x=await fe();x!=null&&x.valid?s("onSubmit",f):console.error("result",x)},_=async()=>{const f=await fe();f!=null&&f.valid&&(f!=null&&f.values)?s("onFormSubmit",f.values):console.error("result",f)};return(f,x)=>{const se=kl;return i(),y("div",null,[r(e(Qt),{ref_key:"formRef",ref:D,"validation-schema":e(ae),onSubmit:_},{default:a(()=>[e(te).length?(i(),y("div",Cl,[r($t,{modelValue:e(u),"onUpdate:modelValue":x[0]||(x[0]=V=>Me(u)?u.value=V:null),"selected-class":"primary-color",mandatory:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(te),V=>(i(),M(Je,{key:V,size:"small",value:V},{default:a(()=>[E(c(V),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"]),r(aa,{modelValue:e(u),"onUpdate:modelValue":x[2]||(x[2]=V=>Me(u)?u.value=V:null),mandatory:"",eager:"",class:"mt-3",touch:!1},{default:a(()=>[(i(!0),y(Se,null,Te(e(te),(V,Y)=>(i(),M(oa,{key:V,value:V,transition:"instant","reverse-transition":"instant"},{default:a(()=>[(i(!0),y(Se,null,Te(e(P).schema,(ee,me)=>(i(),y("div",{key:me},[de(ee)&&(ee.group===V||!ee.group&&Y===0)?Ze((i(),M(se,{key:0,modelValue:e(j),"onUpdate:modelValue":x[1]||(x[1]=ke=>Me(j)?j.value=ke:null),"schema-field":ee,"config-key":me.toString(),loading:e(Z),onOnSubmit:T,onOnAction:ne},null,8,["modelValue","schema-field","config-key","loading"])),[[Et,!ee.hidden]]):N("",!0)]))),128))]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])):(i(),y("div",xl,[(i(!0),y(Se,null,Te(e(P).schema,(V,Y)=>(i(),y("div",{key:Y},[de(V)?Ze((i(),M(se,{key:0,modelValue:e(j),"onUpdate:modelValue":x[3]||(x[3]=ee=>Me(j)?j.value=ee:null),"schema-field":V,"config-key":Y.toString(),loading:e(Z),onOnSubmit:T,onOnAction:ne},null,8,["modelValue","schema-field","config-key","loading"])),[[Et,!V.hidden]]):N("",!0)]))),128))])),e(I)&&!e(re)&&e(p)||e(q)?(i(),M(ie,{key:2,class:"mt-7",style:ot({width:e(K)?"100%":"calc(100% - 2rem)"}),color:e(k),variant:"flat",type:"submit",loading:e(Z),disabled:e(b)},{default:a(()=>[E(c(e(B)||f.$t("components.form.button.save")),1)]),_:1},8,["style","color","loading","disabled"])):N("",!0)]),_:1},8,["validation-schema"])])}}}),Sl=Ne({__name:"VJsonSchemaDialog",props:Yt({pluginConfig:{},uiSchema:{},pluginName:{}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const n=new na,s=Ma(t,"modelValue"),v=t,S=g(!1),w=g(),{uiSchema:Z,pluginConfig:p,pluginName:B}=Ke(v),{mutateAsync:q,isPending:b}=n.actionButtonQuery(),k=oe(()=>S.value||b.value);ve(Z,D=>{w.value=D},{deep:!0,immediate:!0});const K=async D=>{S.value=!0;const u={...p.value,...D.payload};await q({pluginName:B.value,actionId:D.actionId,payload:u},{onSuccess:j=>{j!=null&&j.toast&&rt[j.toast.type](j.toast.message),j!=null&&j.schema&&Object.keys(j.schema).length&&w.value?w.value.schema.config=j.schema.config:s.value=!1},onSettled:()=>{S.value=!1}})};return(D,u)=>{const j=Ja,P=Nt;return i(),M(P,{modelValue:s.value,"onUpdate:modelValue":u[0]||(u[0]=h=>s.value=h),title:D.$t("components.dialog.title.config"),loading:e(k),"hide-confirm-button":""},{content:a(()=>[r(j,{config:{},"ui-schema":e(w),loading:e(k),"save-button":!1,onOnSubmit:K},null,8,["ui-schema","loading"])]),_:1},8,["modelValue","title","loading"])}}}),Vl={class:"plugints-title p-2"},zl={class:"v-label"},Pl={key:0,class:"plugints-title p-2"},Tl={class:"v-label"},El={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Ml={class:"text-sm text-passive"},Bl={key:1,class:"plugints-title p-2"},Dl={class:"v-label"},Ll={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Fl={class:"text-sm text-passive"},Il={key:2,class:"plugints-title p-2"},ql={class:"v-label"},Ql={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Ol={class:"text-sm text-passive"},Al={key:3,class:"plugints-title p-2"},Nl={class:"v-label"},Rl={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Ul={class:"text-sm text-passive"},Zl={key:4,class:"plugints-title p-2"},jl={class:"v-label"},Kl={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Hl={class:"text-sm text-passive"},Yl={class:"p-2"},Wl={key:0,class:"mb-4"},Xl={class:"v-label"},Jl={key:0,class:"w-full flex items-center justify-center"},Gl={key:1,class:"flex w-full items-center justify-center"},er={class:"text-sm text-passive"},tr={key:1},ar={class:"v-label"},or={key:0,class:"w-full flex items-center justify-center my-5"},nr={key:1,class:"w-full flex items-center justify-center my-5"},sr={class:"text-sm text-passive"},lr=Ne({__name:"extensions",props:{cameraName:{}},setup(t){const n=new vt,s=new na,{isTouch:v}=Rt(),S=t,{cameraName:w}=Ke(S),Z=g(!1),p=g(!1),B=g(),q=g(),b=g(""),k=g("hub"),K=g(),D=g(),u=g(),j=g(),P=g(),h=g(!0),ae=g({page:1,pageSize:-1}),re=g(["hub","motionDetection","objectDetection","audioDetection","ptz","more"]);n.toggleQueryActivator("getCameraExtensionConfigQuery",!1);const{data:I}=n.getCameraQuery(w),{data:te}=s.getPluginsQuery(ae),{data:le,isLoading:de,suspense:fe}=n.getCameraExtensionsQuery(w),{data:ne,isLoading:T}=n.getCameraExtensionConfigQuery(w.value,b,h),{data:_,isLoading:f}=s.getPluginsExtensionsQuery(ae),{mutate:x,isPending:se}=s.actionButtonQuery(),{mutate:V,isPending:Y}=n.patchCameraExtensionConfigQuery(),{mutate:ee,isPending:me}=n.submitCameraExtensionConfigQuery(),{mutateAsync:ke,isPending:pe}=n.addCameraExtensionQuery(),{mutateAsync:ye,isPending:H}=n.removeCameraExtensionQuery(),{mutateAsync:we,isPending:Ee}=n.enableCameraExtensionQuery(),{mutateAsync:Qe,isPending:Oe}=n.disableCameraExtensionQuery(),Ce=oe(()=>de.value||f.value||pe.value||H.value||Ee.value||Oe.value),he=oe(()=>Ce.value||Z.value||se.value||Y.value||me.value),Ae=oe(()=>{var d;const o=((d=le.value)==null?void 0:d.filter(C=>C.type.includes("hub")))||[];return o.length&&te.value&&te.value.result.some(C=>C.pluginName===o[0].pluginName&&!C.disabled)?(K.value=o[0].pluginName,b.value=o[0].pluginName):K.value=void 0,W(o)}),Fe=oe(()=>{var d,C,U;const o=((d=le.value)==null?void 0:d.filter(Q=>Q.type.includes("motionDetection")))||[];return o.length&&X((C=I==null?void 0:I.value)==null?void 0:C.extensions.motionDetection)?D.value=(U=I==null?void 0:I.value)==null?void 0:U.extensions.motionDetection:D.value=void 0,W(o)}),Re=oe(()=>{var d,C,U;const o=((d=le.value)==null?void 0:d.filter(Q=>Q.type.includes("audioDetection")))||[];return o.length&&X((C=I==null?void 0:I.value)==null?void 0:C.extensions.audioDetection)?u.value=(U=I==null?void 0:I.value)==null?void 0:U.extensions.audioDetection:u.value=void 0,W(o)}),De=oe(()=>{var d,C,U;const o=((d=le.value)==null?void 0:d.filter(Q=>Q.type.includes("objectDetection")))||[];return o.length&&X((C=I==null?void 0:I.value)==null?void 0:C.extensions.objectDetection)?j.value=(U=I==null?void 0:I.value)==null?void 0:U.extensions.objectDetection:j.value=void 0,W(o)}),O=oe(()=>{var d,C,U;const o=((d=le.value)==null?void 0:d.filter(Q=>Q.type.includes("ptz")))||[];return o.length&&X((C=I==null?void 0:I.value)==null?void 0:C.extensions.ptz)?P.value=(U=I==null?void 0:I.value)==null?void 0:U.extensions.ptz:P.value=void 0,W(o)});ve(K,(o,d)=>{o&&o!==d&&xe(o)}),ve(D,(o,d)=>{o!==d&&(!o&&d?$(d,!1,"motionDetection"):o&&$(o,!0,"motionDetection"))}),ve(j,(o,d)=>{o!==d&&(!o&&d?$(d,!1,"objectDetection"):o&&$(o,!0,"objectDetection"))}),ve(P,(o,d)=>{o!==d&&(!o&&d?$(d,!1,"ptz"):o&&$(o,!0,"ptz"))}),ve(u,(o,d)=>{o!==d&&(!o&&d?$(d,!1,"audioDetection"):o&&$(o,!0,"audioDetection"))}),ve(k,(o,d)=>{o===void 0&&(k.value=d)}),ve(p,o=>{o||(B.value=void 0,q.value=void 0)});const R=async(o,d)=>{await n.queryClient.refetchQueries({queryKey:["cameras","extensions",o,d]})},z=async o=>{le.value&&(le.value.some(d=>d.pluginName===o.pluginName)?await ye({cameraname:w.value,pluginname:o.pluginName}):await ke({cameraname:w.value,pluginname:o.pluginName}))},$=async(o,d,C)=>{d?(!C||!I.value||I.value.extensions[C]!==o)&&(await we({cameraname:w.value,pluginname:o,type:C}),pt(()=>xe(o))):(!C||!I.value||I.value.extensions[C]===o)&&(await Qe({cameraname:w.value,pluginname:o,type:C}),pt(()=>xe()))},W=o=>o.sort((d,C)=>!X(d.pluginName)&&X(C.pluginName)?1:X(d.pluginName)&&!X(C.pluginName)?-1:d.displayName.localeCompare(C.displayName)),X=o=>{if(o&&te.value&&te.value.result.some(d=>d.pluginName===o&&!d.disabled))return o},xe=o=>{var d,C,U,Q,L;if(n.toggleQueryActivator("getCameraExtensionConfigQuery",!1),o!==void 0)b.value=o;else switch(k.value){case"hub":b.value=X((d=Ae.value[0])==null?void 0:d.pluginName)||"";break;case"motionDetection":b.value=X((C=I==null?void 0:I.value)==null?void 0:C.extensions.motionDetection)||"";break;case"audioDetection":b.value=X((U=I==null?void 0:I.value)==null?void 0:U.extensions.audioDetection)||"";break;case"objectDetection":b.value=X((Q=I==null?void 0:I.value)==null?void 0:Q.extensions.objectDetection)||"";break;case"ptz":b.value=X((L=I==null?void 0:I.value)==null?void 0:L.extensions.ptz)||"";break;default:b.value="";break}b.value&&b.value!==""&&n.toggleQueryActivator("getCameraExtensionConfigQuery",!0)},be=async(o,d)=>{Z.value=!0,ee({cameraname:w.value,pluginname:d,configPath:o.configPath},{onSettled:()=>{Z.value=!1}})},Ue=(o,d)=>{Z.value=!0,x({pluginName:d,actionId:o.actionId,payload:o.payload},{onSuccess:C=>{C!=null&&C.toast&&rt[C.toast.type](C.toast.message),C!=null&&C.schema&&Object.keys(C.schema).length&&(q.value=o.payload,B.value=C,p.value=!0)},onSettled:()=>{Z.value=!1}})},l=(o,d,C)=>{Z.value=!0,V({cameraname:o,pluginname:d,configData:C},{onSettled:()=>{Z.value=!1}})};return Mt(async()=>{}),Ba(async()=>{await fe(),xe()}),(o,d)=>{var Q;const C=Ja,U=Sl;return i(),y("div",null,[r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),m("div",Vl,[m("label",zl,c(o.$t("components.camera_options.categories")),1),r($t,{modelValue:e(k),"onUpdate:modelValue":[d[0]||(d[0]=L=>Me(k)?k.value=L:null),d[1]||(d[1]=L=>xe())],"selected-class":"primary-color",disabled:e(Ce),mandatory:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(re),L=>(i(),M(Je,{key:L,size:"small",disabled:e(he),value:L},{default:a(()=>[E(c(o.$t(`components.camera_options.chip_${L}`)),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])]),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),e(k)==="hub"?(i(),y("div",Pl,[m("label",Tl,c(o.$t("components.camera_options.chip_plugins")),1),e(Ae).length?(i(),M($t,{key:0,modelValue:e(K),"onUpdate:modelValue":d[2]||(d[2]=L=>Me(K)?K.value=L:null),"selected-class":"primary-color",disabled:e(Ce),mandatory:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(Ae),L=>(i(),M(Je,{key:L.pluginName,disabled:!X(L.pluginName)||e(he),size:"small",value:L.pluginName},{default:a(()=>[E(c(L.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(i(),y("div",El,[m("span",Ml,c(o.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(k)==="motionDetection"?(i(),y("div",Bl,[m("label",Dl,c(o.$t("components.camera_options.enabled_extension")),1),e(Fe).length?(i(),M($t,{key:0,modelValue:e(D),"onUpdate:modelValue":d[3]||(d[3]=L=>Me(D)?D.value=L:null),"selected-class":"primary-color",disabled:e(Ce),filter:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(Fe),L=>(i(),M(Je,{key:L.pluginName,disabled:!X(L.pluginName)||e(he),size:"small",value:L.pluginName},{default:a(()=>[E(c(L.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(i(),y("div",Ll,[m("span",Fl,c(o.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(k)==="objectDetection"?(i(),y("div",Il,[m("label",ql,c(o.$t("components.camera_options.enabled_extension")),1),e(De).length?(i(),M($t,{key:0,modelValue:e(j),"onUpdate:modelValue":d[4]||(d[4]=L=>Me(j)?j.value=L:null),"selected-class":"primary-color",disabled:e(Ce),filter:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(De),L=>(i(),M(Je,{key:L.pluginName,disabled:!X(L.pluginName)||e(he),size:"small",value:L.pluginName},{default:a(()=>[E(c(L.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(i(),y("div",Ql,[m("span",Ol,c(o.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(k)==="audioDetection"?(i(),y("div",Al,[m("label",Nl,c(o.$t("components.camera_options.enabled_extension")),1),e(Re).length?(i(),M($t,{key:0,modelValue:e(u),"onUpdate:modelValue":d[5]||(d[5]=L=>Me(u)?u.value=L:null),"selected-class":"primary-color",disabled:e(Ce),filter:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(Re),L=>(i(),M(Je,{key:L.pluginName,disabled:!X(L.pluginName)||e(he),size:"small",value:L.pluginName},{default:a(()=>[E(c(L.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(i(),y("div",Rl,[m("span",Ul,c(o.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(k)==="ptz"?(i(),y("div",Zl,[m("label",jl,c(o.$t("components.camera_options.enabled_extension")),1),e(O).length?(i(),M($t,{key:0,modelValue:e(P),"onUpdate:modelValue":d[6]||(d[6]=L=>Me(P)?P.value=L:null),"selected-class":"primary-color",disabled:e(Ce),filter:"",column:""},{default:a(()=>[(i(!0),y(Se,null,Te(e(O),L=>(i(),M(Je,{key:L.pluginName,disabled:!X(L.pluginName)||e(he),size:"small",value:L.pluginName},{default:a(()=>[E(c(L.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(i(),y("div",Kl,[m("span",Hl,c(o.$t("components.camera_options.no_plugins_enabled")),1)]))])):N("",!0),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),e(Ce)?(i(),M(_n,{key:5,height:"2",color:"#df2a4c",indeterminate:"",style:{"margin-top":"-2px"}})):N("",!0),m("div",Yl,[r(aa,{modelValue:e(k),"onUpdate:modelValue":d[10]||(d[10]=L=>Me(k)?k.value=L:null),disabled:e(Ce),mandatory:"",eager:"",touch:!1},{default:a(()=>[(i(!0),y(Se,null,Te(e(re),L=>(i(),M(oa,{key:L,value:L,transition:"instant","reverse-transition":"instant"},{default:a(()=>{var ge,_e,ce;return[L==="more"?(i(),y("div",Wl,[m("div",null,[m("label",Xl,c(o.$t("components.camera_options.manage_plugins")),1),e(f)?(i(),y("div",Jl,[r(je,{color:"#df2a4c",indeterminate:"",size:"20",width:"3"})])):(ge=e(_))!=null&&ge.result.length?(i(!0),y(Se,{key:2},Te((_e=e(_))==null?void 0:_e.result,(A,$e)=>{var We,Ge;return Ze((i(),y("div",{key:A.pluginName},[r(wn,{"select-strategy":"classic",class:"py-0",disabled:e(Ce)||!X(A.pluginName),"onUpdate:selected":()=>z(A)},{default:a(()=>{var at;return[r(Aa,{value:A.pluginName,class:"px-2",active:(at=e(le))==null?void 0:at.some(et=>et.pluginName===A.pluginName)},{prepend:a(()=>[r($n,{start:""},{default:a(()=>{var et;return[r(Na,{"model-value":(et=e(le))==null?void 0:et.some(ct=>ct.pluginName===A.pluginName),color:"#df2a4c"},null,8,["model-value"])]}),_:2},1024)]),append:a(()=>[r(ie,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:J(()=>o.$router.push(`/plugins/${A.pluginName}`),["prevent"])},{default:a(()=>[r(G,{size:"18"},{default:a(()=>[E(c(e(Io)),1)]),_:1})]),_:2},1032,["onClick"])]),default:a(()=>[E(c(A.displayName)+" ",1)]),_:2},1032,["value","active"])]}),_:2},1032,["disabled","onUpdate:selected"]),(We=e(_))!=null&&We.result&&$e!==((Ge=e(_))==null?void 0:Ge.result.length)-1?(i(),M(Ye,{key:0,style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})):N("",!0)])),[[it,{disabled:X(A.pluginName)!==void 0||e(v),text:o.$t("components.form.tooltip.disabled")}]])}),128)):(i(),y("div",Gl,[m("span",er,c(o.$t("components.camera_options.no_plugins_found")),1)]))])])):(i(),y("div",tr,[m("label",ar,c(o.$t("components.camera_options.plugin_settings")),1),e(T)?(i(),y("div",or,[r(je,{color:"#df2a4c",indeterminate:""})])):!e(b)||!((ce=e(ne))!=null&&ce.rootSchema)?(i(),y("div",nr,[m("span",sr,c(o.$t("components.camera_options.no_config")),1)])):e(ne)?(i(),M(C,{key:L,config:e(ne).config||{},"ui-schema":e(ne).rootSchema,loading:e(he),onOnFormSubmit:d[7]||(d[7]=A=>l(e(w),e(b),A)),onOnSubmit:A=>Ue(A,L),onOnAction:d[8]||(d[8]=A=>be(A,e(b))),onChangeGroup:d[9]||(d[9]=()=>R(e(w),e(b)))},null,8,["config","ui-schema","loading","onOnSubmit"])):N("",!0)]))]}),_:2},1032,["value"]))),128))]),_:1},8,["modelValue","disabled"])]),(Q=e(B))!=null&&Q.schema?(i(),M(U,{key:6,modelValue:e(p),"onUpdate:modelValue":d[11]||(d[11]=L=>Me(p)?p.value=L:null),"ui-schema":{schema:e(B).schema},"plugin-config":e(q)||{},"plugin-name":e(b)},null,8,["modelValue","ui-schema","plugin-config","plugin-name"])):N("",!0)])}}}),rr={class:"flex flex-row items-center justify-center"},ir={class:"battery-body"},ur={key:0,class:"ml-2 text-sm"},cr=Ne({__name:"VBattery",props:{level:{default:0},showLevel:{type:Boolean,default:!0},size:{default:5}},setup(t){const n=t,{level:s,size:v,showLevel:S}=Ke(n),w=oe(()=>s.value<=20?"#FF3B30":s.value<=50?"#FFCC00":"#34C759"),Z=oe(()=>`${Math.min(100,Math.max(0,s.value))}%`),p=oe(()=>v.value/5),B=oe(()=>({"--scale-factor":p.value,"--battery-width":`${50*p.value}px`,"--battery-height":`${25*p.value}px`,"--border-width":`${2*p.value}px`,"--border-radius":`${3*p.value}px`,"--padding":"1px","--cap-width":`${3*p.value}px`,"--cap-height":`${10*p.value}px`,"--cap-margin":`${1*p.value}px`}));return(q,b)=>(i(),y("div",rr,[m("div",{class:"battery-container",style:ot(e(B))},[m("div",ir,[m("div",{class:"battery-level",style:ot({width:e(Z),backgroundColor:e(w)})},null,4)]),b[0]||(b[0]=m("div",{class:"battery-cap"},null,-1))],4),e(S)?(i(),y("span",ur,c(e(s))+"%",1)):N("",!0)]))}}),dr=nt(cr,[["__scopeId","data-v-cb5fbb52"]]),mr={class:"w-full h-full flex items-center justify-center bg-black aspect-video"},Zt=Ne({__name:"VCameraSnapshot",props:{cameraName:{},src:{},loading:{type:Boolean},showLoadingScreen:{type:Boolean,default:!0},width:{default:"100%"},height:{default:"100%"}},setup(t,{expose:n}){const s=new vt,v=t,{cameraName:S,loading:w,src:Z}=Ke(v),p=g(!1);Z.value&&s.toggleQueryActivator("getCameraSnapshotQuery",!1);const{data:B,isLoading:q,refetch:b,isRefetching:k}=s.getCameraSnapshotQuery(S,p),K=oe(()=>w.value||q.value||k.value),D=oe(()=>Z.value?Z.value:B.value?`data:image/jpeg;base64,${B.value}`:"");return n({download:()=>{if(D.value){const P=`${S.value.replace(/ /g,"_").toLowerCase()}_${new Date().toISOString()}.png`,h=document.createElement("a");h.setAttribute("download",P),h.href=D.value,document.body.appendChild(h),h.click(),h.remove()}},refresh:()=>{p.value=!0,b(),p.value=!1},isLoading:K,snapshotSrc:D}),(P,h)=>{const ae=Va;return i(),y("div",mr,[e(K)&&P.showLoadingScreen?(i(),M(je,{key:0,color:"#df2a4c",indeterminate:""})):(i(),M(ae,{key:1,src:e(D),width:"100%",height:"100%","aspect-ratio":"16/9","show-loading-screen":P.showLoadingScreen},null,8,["src","show-loading-screen"]))])}}}),pr={class:"text-sm"},vr={class:"flex items-center justify-end"},fr={class:"flex items-center justify-end"},gr={key:0},yr={key:0},hr={class:"flex items-center justify-end"},br={key:1},_r={class:"flex items-center justify-end"},wr={key:2},$r={class:"flex items-center justify-end"},kr={key:1},Cr={key:2},xr={key:3},Sr={class:"flex items-center justify-end"},Vr={key:1},zr={key:2},Pr={key:4},Tr={class:"flex items-center justify-end"},Er={key:1},Mr={key:2},Br={key:5},Dr={class:"flex items-center justify-end"},Lr={key:1},Fr={key:2},Ir={key:6},qr={class:"flex items-center justify-end"},Qr={key:1},Or={key:2},Ar=Ne({__name:"overview",props:{cameraName:{},latestSnapshotSrc:{}},setup(t){const n=new vt,s=new na,{api:v}=Pa(),S=t,{cameraName:w,latestSnapshotSrc:Z}=Ke(S),p=g(),B=g(),q=g(),b=g(),k=g(),K=g(),D=g(),u=g(),j=g({page:1,pageSize:-1}),{data:P,isLoading:h}=n.getCameraQuery(w),{data:ae,isLoading:re}=s.getPluginsQuery(j),I=oe(()=>h.value||re.value);return Mt(async()=>{var te,le,de,fe,ne,T,_,f;p.value=await v.deviceManager.getCameraByName(w.value),(te=p.value)==null||te.onMotionDetected.subscribe(x=>{B.value=x}),(le=p.value)==null||le.onBatteryChanged.subscribe(x=>{b.value=x}),(de=p.value)==null||de.onDoorbellPressed.subscribe(x=>{D.value=x}),(fe=p.value)==null||fe.onSirenDetected.subscribe(x=>{K.value=x}),(ne=p.value)==null||ne.onLightSwitched.subscribe(x=>{u.value=x}),(T=p.value)==null||T.onAudioDetected.subscribe(x=>{q.value=x}),(_=p.value)==null||_.onObjectDetected.subscribe(x=>{k.value=x}),await((f=p.value)==null?void 0:f.start())}),Da(()=>{var te;(te=p.value)==null||te.close()}),(te,le)=>{const de=Zt,fe=dr;return i(),y("div",null,[r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),r(de,{"camera-name":e(w),src:e(Z)},null,8,["camera-name","src"]),r(kn,{class:"table-fixed w-full p-2",style:{background:"none !important"}},{default:a(()=>{var ne,T,_,f,x,se,V,Y,ee,me,ke,pe,ye,H,we,Ee,Qe,Oe,Ce,he;return[m("tbody",pr,[m("tr",null,[m("td",null,c(te.$t("components.camera_options.name")),1),m("td",null,[m("div",vr,[m("span",null,c(e(w)),1),(ne=e(P))!=null&&ne.isCloud?(i(),M(G,{key:0,size:"20",class:"ml-2"},{default:a(()=>[E(c(e(qo)),1)]),_:1})):N("",!0)])])]),m("tr",null,[m("td",null,c(te.$t("components.camera_options.plugin")),1),m("td",null,[m("div",fr,[e(I)?(i(),y("span",gr,[r(je,{color:"#df2a4c",size:"20",indeterminate:""})])):N("",!0),m("span",null,c(((T=e(P))==null?void 0:T.pluginId)!=="native"?((f=(_=e(ae))==null?void 0:_.result.find(Ae=>{var Fe;return Ae.id===((Fe=e(P))==null?void 0:Fe.pluginId)}))==null?void 0:f.pluginName)||te.$t("components.camera_options.unknown"):te.$t("components.camera_options.native")),1)])])]),(x=e(P))!=null&&x.hasBattery?(i(),y("tr",yr,[m("td",null,c(te.$t("components.camera_options.battery_state")),1),m("td",null,[m("div",hr,[e(b)?(i(),M(fe,{key:1,level:e(b).level,size:3},null,8,["level"])):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(se=e(P))!=null&&se.hasLight?(i(),y("tr",br,[m("td",null,c(te.$t("components.camera_options.light_state")),1),m("td",null,[m("div",_r,[e(u)?e(u).state?(i(),M(G,{key:1,size:20,color:"#f6d800"},{default:a(()=>[E(c(e(Qo)),1)]),_:1})):(i(),M(G,{key:2,size:20,class:"text-disabled"},{default:a(()=>[E(c(e(Oo)),1)]),_:1})):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(V=e(P))!=null&&V.extensions.audioDetection?(i(),y("tr",wr,[m("td",null,c(te.$t("components.camera_options.audio_state")),1),m("td",null,[m("div",$r,[e(q)?e(q).state||(Y=e(q).lastEvent)!=null&&Y.state?(i(),y("span",kr,c(e(Dt)(e(q).state?e(q).timestamp:e(q).lastEvent.timestamp,"DD.MM.YYYY, HH:mm:ss")),1)):(i(),y("span",Cr,"-")):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(ee=e(P))!=null&&ee.hasBinarySensor?(i(),y("tr",xr,[m("td",null,c(te.$t("components.camera_options.doorbell_state")),1),m("td",null,[m("div",Sr,[e(D)?e(D).state||(me=e(D).lastEvent)!=null&&me.state?(i(),y("span",Vr,c(e(Dt)(e(D).state?e(D).timestamp:e(D).lastEvent.timestamp,"DD.MM.YYYY, HH:mm:ss")),1)):(i(),y("span",zr,"-")):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(ke=e(P))!=null&&ke.extensions.motionDetection?(i(),y("tr",Pr,[m("td",null,c(te.$t("components.camera_options.motion_state")),1),m("td",null,[m("div",Tr,[e(B)?e(B).state||(pe=e(B).detections)!=null&&pe.length||(ye=e(B).lastEvent)!=null&&ye.state||(we=(H=e(B).lastEvent)==null?void 0:H.detections)!=null&&we.length?(i(),y("span",Er,c(e(Dt)(e(B).state||(Ee=e(B).detections)!=null&&Ee.length?e(B).timestamp:e(B).lastEvent.timestamp,"DD.MM.YYYY, HH:mm:ss")),1)):(i(),y("span",Mr,"-")):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(Qe=e(P))!=null&&Qe.extensions.objectDetection?(i(),y("tr",Br,[m("td",null,c(te.$t("components.camera_options.object_state")),1),m("td",null,[m("div",Dr,[e(k)?e(k).detections.length||(Oe=e(k).lastEvent)!=null&&Oe.detections.length?(i(),y("span",Lr,c(e(Dt)(e(k).detections.length?e(k).timestamp:e(k).lastEvent.timestamp,"DD.MM.YYYY, HH:mm:ss")),1)):(i(),y("span",Fr,"-")):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0),(Ce=e(P))!=null&&Ce.hasSiren?(i(),y("tr",Ir,[m("td",null,c(te.$t("components.camera_options.siren_state")),1),m("td",null,[m("div",qr,[e(K)?e(K).state||(he=e(K).lastEvent)!=null&&he.state?(i(),y("span",Qr,c(e(Dt)(e(K).state?e(K).timestamp:e(K).lastEvent.timestamp,"DD.MM.YYYY, HH:mm:ss")),1)):(i(),y("span",Or,"-")):(i(),M(je,{key:0,color:"#df2a4c",size:15,width:2,indeterminate:""}))])])])):N("",!0)])]}),_:1})])}}}),Nr={class:"relative"},Rr={for:"name",class:"v-label"},Ur={class:"relative"},Zr={for:"type",class:"v-label"},jr={class:"flex justify-start"},Kr={class:"v-label mb-0 ml-2",for:"disabled"},Hr={class:"relative"},Yr={for:"info.manufacturer",class:"v-label"},Wr={class:"relative"},Xr={for:"info.model",class:"v-label"},Jr={class:"relative"},Gr={for:"info.hardware",class:"v-label"},ei={class:"relative"},ti={for:"info.serialNumber",class:"v-label"},ai={class:"relative"},oi={for:"info.firmwareVersion",class:"v-label"},ni={class:"relative"},si={for:"info.supportUrl",class:"v-label"},li={class:"relative w-full"},ri={for:"interface.streamingMode",class:"v-label"},ii={class:"relative w-full"},ui={for:"interface.streamingSource",class:"v-label"},ci={class:"text-sm"},di={class:"w-full flex flex-col items-center justify-center mt-5"},mi={class:"relative w-full"},pi={for:"detectionSettings.motion.timeout",class:"v-label"},vi={class:"text-sm"},fi={class:"w-full flex flex-col items-center justify-center mt-5"},gi={class:"relative w-full"},yi={for:"detectionSettings.motion.confidence",class:"v-label"},hi={class:"text-sm"},bi={class:"w-full flex flex-col items-center justify-center mt-5"},_i={key:0,class:"text-sm text-passive mb-3"},wi={key:1,class:"w-full flex flex-row items-center"},$i={class:"text-sm"},ki={class:"w-full flex flex-col items-center justify-center mt-5"},Ci={class:"relative w-full"},xi={for:"snapshotTTL",class:"v-label"},Si={class:"text-sm"},Vi={class:"w-full flex flex-col items-center justify-center mt-5"},zi={class:"relative w-full"},Pi={for:"frameWorkerSettings.decoder",class:"v-label"},Ti={class:"relative w-full"},Ei={for:"frameWorkerSettings.resolution",class:"v-label"},Mi={class:"relative w-full"},Bi={for:"frameWorkerSettings.fps",class:"v-label"},Di={class:"flex flex-row items-center justify-center ml-auto"},Li={class:"relative mt-2"},Fi=["for"],Ii={class:"relative mt-2"},qi=["for"],Qi={class:"relative mt-2 flex flex-col w-full"},Oi=["for"],Ai={class:"w-full flex items-center justify-center my-3"},Ni={key:0,class:"p-2"},Ri={class:"v-label"},Ui=Ne({__name:"VCameraOptions",props:{cameraName:{},show:{type:Boolean,default:!1},latestSnapshotSrc:{}},emits:["close"],setup(t,{emit:n}){const s=new vt,v=xn(),S=Za(),w=t,Z=n,{cameraName:p,show:B,latestSnapshotSrc:q}=Ke(w),b=g(),k=g(),K=g(),D=g(),u=g(!1),j=g([{name:"overview",eager:!1},{name:"sources",eager:!0},{name:"settings",eager:!0},{name:"plugins",eager:!1}]),P=g(!1),h=g("overview"),ae=g(),re=g(!0),I=g(!1),te=g(!1),le=g(["high-resolution","mid-resolution","low-resolution","snapshot"]),de=g(["auto","mse","webrtc","webrtc/tcp"]),fe=g(["high-resolution","mid-resolution","low-resolution"]),ne=g(["camera","doorbell"]),T=g(["3840x2160","3072x1728","2560x1440","1920x1080","1440x1080","1280x720","960x540","640x480","640x360","320x240","320x180"]),_=g(["pillow","wasm","rust"]),f=g(!1),x=g({name:"",regions:[]}),{data:se,isLoading:V}=s.getCameraQuery(p),{mutate:Y,isPending:ee}=s.removeCameraQuery(),{mutate:me,isPending:ke}=s.patchCameraQuery(),{mutateAsync:pe,isPending:ye}=s.removeCameraZoneQuery(),H=oe(()=>V.value||ee.value),we=oe(()=>ye.value),Ee=oe(()=>we.value||ye.value||u.value||ke.value);ve(B,z=>{if(P.value){P.value=!1,Z("close");return}pt(()=>P.value=z)}),ve(se,z=>{z&&(b.value=za(z))},{deep:!0,immediate:!0}),ve(h,z=>{re.value=z!=="plugins"&&z!=="overview"});const Qe=z=>{var $;($=b.value)==null||$.sources[z].urls.push("")},Oe=(z,$)=>{var W;(W=b.value)==null||W.sources[z].urls.splice($,1)},Ce=()=>{Y({cameraname:p.value},{onSuccess:()=>{v.path.includes(p.value)&&S.push({path:"/cameras"}),I.value=!1}})},he=()=>{b.value&&b.value.sources.push({_id:"",name:"",roles:[],urls:[],internal:!1})},Ae=z=>{b.value&&b.value.sources.splice(z,1)},Fe=()=>{x.value={name:"",regions:[]},te.value=!0},Re=()=>{te.value=!1,ae.value=void 0,f.value=!1,x.value={name:"",regions:[]}},De=async(z,$)=>{var W;if($){const X=await((W=D.value)==null?void 0:W.validate());if(X!=null&&X.valid)console.error("result",X);else return}te.value=!1,$?f.value=!0:f.value=!1,ae.value=z},O=async z=>{await pe({cameraname:p.value,zonename:z})},R=async()=>{var W,X;u.value=!0;const z=await((W=k.value)==null?void 0:W.validate()),$=await((X=K.value)==null?void 0:X.validate());if(z!=null&&z.valid&&($!=null&&$.valid)){const xe={...z.values,...$.values};me({cameraname:p.value,cameraData:xe},{onSettled:()=>{u.value=!1},onError:be=>{console.error("Error saving camera",be)}})}else console.log("Save didnt pass validation",z,$),u.value=!1};return(z,$)=>{const W=Ht("v-number-input"),X=ul,xe=al,be=Nt,Ue=js;return i(),y(Se,null,[e(B)?(i(),M(xe,{key:0,state:e(P),title:e(p),segments:e(j),loading:e(H)||!e(b),selected:e(h),onClose:$[21]||($[21]=l=>Z("close")),onSelected:$[22]||($[22]=l=>h.value=l)},{"segmentIcon.overview":a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Ro)),1)]),_:1})]),"body.overview":a(()=>[e(h)==="overview"?(i(),M(Ar,{key:0,"camera-name":e(p),"latest-snapshot-src":e(q)},null,8,["camera-name","latest-snapshot-src"])):N("",!0)]),"segmentIcon.settings":a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(ea)),1)]),_:1})]),"body.settings":a(()=>[r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),r(e(Qt),{ref_key:"cameraVeeForm1",ref:k,class:"flex flex-col h-full w-full p-2","validation-schema":e(xa)},{default:a(()=>[r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{default:a(()=>[E(c(z.$t("components.camera_options.general")),1)]),_:1}),r(ht,{eager:""},{default:a(()=>[m("div",Nr,[r(e(Pe),{modelValue:e(b).name,"onUpdate:modelValue":$[0]||($[0]=l=>e(b).name=l),name:"name"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Rr,c(z.$t("components.form.label.name")),1),r(He,ze({loading:e(H),variant:"outlined",name:"name",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Ur,[r(e(Pe),{modelValue:e(b).type,"onUpdate:modelValue":$[1]||($[1]=l=>e(b).type=l),name:"type"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Zr,c(z.$t("components.form.label.type")),1),r(mt,ze({loading:e(H),items:e(ne),variant:"outlined",name:"type",type:"text",density:"compact",chips:""},l,{error:d.length>0,"error-messages":o,"model-value":l.value,onKeydown:J(()=>null,["prevent"])}),{chip:a(({item:C})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(C.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),m("div",jr,[r(e(Pe),{"model-value":e(b).disabled,name:"disabled",type:"checkbox","checked-value":!0,"unchecked-value":!1},{default:a(({field:l,errorMessage:o,errors:d})=>[r(Ra,ze({"model-value":e(b).disabled,loading:e(H),name:"disabled"},l,{color:"#df2a4c",type:"checkbox",error:d.length>0,"error-messages":o,"hide-details":"",style:{"max-width":"fit-content"},onChange:$[2]||($[2]=C=>e(b).disabled=!e(b).disabled)}),null,16,["model-value","loading","error","error-messages"]),m("label",Kr,c(z.$t("components.form.label.disabled")),1)]),_:1},8,["model-value"])]),r(ie,{width:"100%",color:"red",variant:"flat",class:"mt-3",loading:e(H)||e(Ee),onClick:$[3]||($[3]=J(l=>I.value=!0,["prevent"]))},{default:a(()=>[E(c(z.$t("components.form.button.remove")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1}),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{default:a(()=>[E(c(z.$t("components.camera_options.branding")),1)]),_:1}),r(ht,{eager:""},{default:a(()=>[m("div",Hr,[r(e(Pe),{modelValue:e(b).info.manufacturer,"onUpdate:modelValue":$[4]||($[4]=l=>e(b).info.manufacturer=l),name:"info.manufacturer"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Yr,c(z.$t("components.form.label.manufacturer")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.manufacturer",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Wr,[r(e(Pe),{modelValue:e(b).info.model,"onUpdate:modelValue":$[5]||($[5]=l=>e(b).info.model=l),name:"info.model"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Xr,c(z.$t("components.form.label.model")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.model",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",Jr,[r(e(Pe),{modelValue:e(b).info.hardware,"onUpdate:modelValue":$[6]||($[6]=l=>e(b).info.hardware=l),name:"info.hardware"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Gr,c(z.$t("components.form.label.hardware_version")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.hardware",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",ei,[r(e(Pe),{modelValue:e(b).info.serialNumber,"onUpdate:modelValue":$[7]||($[7]=l=>e(b).info.serialNumber=l),name:"info.serialNumber"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",ti,c(z.$t("components.form.label.serial_number")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.serialNumber",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",ai,[r(e(Pe),{modelValue:e(b).info.firmwareVersion,"onUpdate:modelValue":$[8]||($[8]=l=>e(b).info.firmwareVersion=l),name:"info.firmwareVersion"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",oi,c(z.$t("components.form.label.firmware_version")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.firmwareVersion",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),m("div",ni,[r(e(Pe),{modelValue:e(b).info.supportUrl,"onUpdate:modelValue":$[9]||($[9]=l=>e(b).info.supportUrl=l),name:"info.supportUrl"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",si,c(z.$t("components.form.label.snapshot_url")),1),r(He,ze({loading:e(H),variant:"outlined",name:"info.supportUrl",type:"text",density:"compact"},l,{error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1}),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{default:a(()=>[E(c(z.$t("components.camera_options.interface")),1)]),_:1}),r(ht,{eager:""},{default:a(()=>[m("div",li,[r(e(Pe),{modelValue:e(b).interface.streamingMode,"onUpdate:modelValue":$[10]||($[10]=l=>e(b).interface.streamingMode=l),name:"interface.streamingMode"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",ri,c(z.$t("components.form.label.streaming_mode")),1),r(mt,ze({loading:e(H),items:e(de),variant:"outlined",name:"interface.streamingMode",type:"text",density:"compact",chips:""},l,{error:d.length>0,"error-messages":o,"model-value":l.value,onKeydown:J(()=>null,["prevent"])}),{chip:a(({item:C})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(C.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),m("div",ii,[r(e(Pe),{modelValue:e(b).interface.streamingSource,"onUpdate:modelValue":$[11]||($[11]=l=>e(b).interface.streamingSource=l),name:"interface.streamingSource"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",ui,c(z.$t("components.form.label.streaming_source")),1),r(mt,ze({loading:e(H),items:e(fe),variant:"outlined",name:"interface.streamingSource",type:"text",density:"compact",chips:""},l,{error:d.length>0,"error-messages":o,"model-value":l.value,onKeydown:J(()=>null,["prevent"])}),{chip:a(({item:C})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(C.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1}),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{default:a(()=>[E(c(z.$t("components.camera_options.detection")),1)]),_:1}),r(ht,{eager:""},{default:a(()=>{var l,o,d,C;return[m("span",ci,c(z.$t("components.camera_options.motion_detection")),1),m("div",di,[m("div",mi,[r(e(Pe),{modelValue:e(b).detectionSettings.motion.timeout,"onUpdate:modelValue":$[12]||($[12]=U=>e(b).detectionSettings.motion.timeout=U),name:"detectionSettings.motion.timeout"},{default:a(({field:U,errorMessage:Q,errors:L,value:ge,setValue:_e})=>[m("label",pi,c(z.$t("components.form.label.motion_duration")),1),r(W,ze({loading:e(H),variant:"outlined",name:"detectionSettings.motion.timeout",type:"number",density:"compact"},U,{error:L.length>0,"error-messages":Q,onChange:()=>ge===""?_e(20):void 0}),null,16,["loading","error","error-messages","onChange"])]),_:1},8,["modelValue"])])]),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-5"}),m("span",vi,c(z.$t("components.camera_options.object_detection")),1),m("div",fi,[m("div",gi,[r(e(Pe),{modelValue:e(b).detectionSettings.object.confidence,"onUpdate:modelValue":$[13]||($[13]=U=>e(b).detectionSettings.object.confidence=U),name:"detectionSettings.object.confidence"},{default:a(({field:U,errorMessage:Q,errors:L,value:ge,setValue:_e})=>[m("label",yi,c(z.$t("components.form.label.confidence")),1),r(W,ze({loading:e(H),variant:"outlined",name:"detectionSettings.object.confidence",type:"number",density:"compact"},U,{step:.01,error:L.length>0,"error-messages":Q,onChange:()=>ge===""?_e(.7):void 0}),null,16,["loading","error","error-messages","onChange"])]),_:1},8,["modelValue"])])]),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-5"}),m("span",hi,c(z.$t("components.camera_options.zones")),1),m("div",bi,[(o=(l=e(se))==null?void 0:l.detectionZone)!=null&&o.length?(i(),y("div",wi,[r(He,{class:"my-1","model-value":e(se).detectionZone[0].name,variant:"outlined",density:"compact",type:"text","hide-details":"",readonly:""},{"append-inner":a(()=>[r(ie,{class:"mr-2",size:"24",rounded:"",density:"compact",variant:"flat",color:"green",loading:e(we),onClick:$[14]||($[14]=J(U=>De(e(se).detectionZone[0],!1),["prevent"]))},{default:a(()=>[r(G,{size:"16"},{default:a(()=>[E(c(e(La)),1)]),_:1})]),_:1},8,["loading"]),r(ie,{size:"24",rounded:"",density:"compact",variant:"flat",color:"red",loading:e(we),onClick:$[15]||($[15]=J(U=>O(e(se).detectionZone[0].name),["prevent"]))},{default:a(()=>[r(G,{size:"16"},{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:1},8,["loading"])]),_:1},8,["model-value"])])):(i(),y("span",_i,c(z.$t("components.camera_options.no_zones")),1))]),(C=(d=e(se))==null?void 0:d.detectionZone)!=null&&C.length?N("",!0):(i(),M(ie,{key:0,class:"mt-3 mb-5",block:"",color:"#df2a4c",loading:e(we),variant:"flat",onClick:$[16]||($[16]=J(U=>Fe(),["prevent"]))},{default:a(()=>[E(c(z.$t("components.form.button.new_zone")),1)]),_:1},8,["loading"]))]}),_:1})]),_:1})]),_:1}),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{default:a(()=>[E(c(z.$t("components.camera_options.advanced")),1)]),_:1}),r(ht,{eager:""},{default:a(()=>[m("span",$i,c(z.$t("components.camera_options.snapshot")),1),m("div",ki,[m("div",Ci,[r(e(Pe),{modelValue:e(b).snapshotTTL,"onUpdate:modelValue":$[17]||($[17]=l=>e(b).snapshotTTL=l),name:"snapshotTTL"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",xi,c(z.$t("components.form.label.cache_time")),1),r(W,ze({loading:e(H),variant:"outlined",name:"snapshotTTL",type:"number",density:"compact"},l,{step:1,min:30,error:d.length>0,"error-messages":o}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])])]),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-5"}),m("span",Si,c(z.$t("components.camera_options.frame_worker")),1),m("div",Vi,[m("div",zi,[r(e(Pe),{modelValue:e(b).frameWorkerSettings.decoder,"onUpdate:modelValue":$[18]||($[18]=l=>e(b).frameWorkerSettings.decoder=l),name:"frameWorkerSettings.decoder"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Pi,c(z.$t("components.form.label.decoder")),1),r(mt,ze({loading:e(H),items:e(_),variant:"outlined",name:"frameWorkerSettings.decoder",type:"text",density:"compact",chips:""},l,{error:d.length>0,"error-messages":o,"model-value":l.value,onKeydown:J(()=>null,["prevent"])}),{chip:a(({item:C})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(C.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),m("div",Ti,[r(e(Pe),{modelValue:e(b).frameWorkerSettings.resolution,"onUpdate:modelValue":$[19]||($[19]=l=>e(b).frameWorkerSettings.resolution=l),name:"frameWorkerSettings.resolution"},{default:a(({field:l,errorMessage:o,errors:d,value:C,setValue:U})=>[m("label",Ei,c(z.$t("components.form.label.resolution")),1),r(mt,ze({loading:e(H),items:e(T),variant:"outlined",name:"frameWorkerSettings.resolution",type:"string",density:"compact",chips:""},l,{hint:"higher resolution = higher CPU usage",error:d.length>0,"error-messages":o,"model-value":l.value,onKeydown:J(()=>null,["prevent"]),onChange:()=>C===""?U(640):void 0}),{chip:a(({item:Q})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(Q.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value","onChange"])]),_:1},8,["modelValue"])]),m("div",Mi,[r(e(Pe),{modelValue:e(b).frameWorkerSettings.fps,"onUpdate:modelValue":$[20]||($[20]=l=>e(b).frameWorkerSettings.fps=l),name:"frameWorkerSettings.fps"},{default:a(({field:l,errorMessage:o,errors:d,value:C,setValue:U})=>[m("label",Bi,c(z.$t("components.form.label.fps")),1),r(W,ze({loading:e(H),variant:"outlined",name:"frameWorkerSettings.fps",type:"number",density:"compact"},l,{hint:"0 = native",step:1,min:0,max:30,error:d.length>0,"error-messages":o,onChange:()=>C===""?U(10):void 0}),null,16,["loading","error","error-messages","onChange"])]),_:1},8,["modelValue"])])])]),_:1})]),_:1})]),_:1})]),_:1},8,["validation-schema"])]),"segmentIcon.sources":a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Wt)),1)]),_:1})]),"body.sources":a(()=>[r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),r(e(Qt),{ref_key:"cameraVeeForm2",ref:K,class:"flex flex-col h-full w-full p-2","validation-schema":e(xa)},{default:a(()=>[(i(!0),y(Se,null,Te(e(b).sources,(l,o)=>(i(),y("div",{key:o},[Ze(m("div",null,[r(_t,null,{default:a(()=>[r(bt,{elevation:"0"},{default:a(()=>[r(yt,{style:{height:"48px"},class:"truncate"},{actions:a(({expanded:d})=>{var C;return[m("div",Di,[r(ie,{loading:e(H),disabled:((C=e(b))==null?void 0:C.sources)!==void 0&&e(b).sources.length<2||l.internal,size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:J(U=>Ae(o),["prevent"])},{default:a(()=>[r(G,null,{default:a(()=>[E(c(e(xt)),1)]),_:1})]),_:2},1032,["loading","disabled","onClick"]),d?(i(),M(G,{key:0,size:"22.5"},{default:a(()=>[E(c(e(Fa)),1)]),_:1})):(i(),M(G,{key:1,size:"22.5"},{default:a(()=>[E(c(e(Ia)),1)]),_:1}))])]}),default:a(()=>[E(c(z.$t("components.camera_options.source")+": "+l.name.replace(/ /g,"_").toLowerCase())+" ",1)]),_:2},1024),r(ht,{eager:""},{default:a(()=>{var d;return[m("div",Li,[r(e(Pe),{modelValue:l.name,"onUpdate:modelValue":C=>l.name=C,name:`sources[${o}].name`},{default:a(({field:C,errorMessage:U,errors:Q})=>{var L;return[m("label",{for:`sources[${o}].name`,class:"v-label"},c(z.$t("components.form.label.source_name")),9,Fi),r(He,ze({loading:e(H),disabled:((L=e(se))==null?void 0:L.sources.some(ge=>ge.name===l.name))||l.internal,variant:"outlined",name:`sources[${o}].name`,type:"text",density:"compact",ref_for:!0},C,{error:Q.length>0,"error-messages":U}),null,16,["loading","disabled","name","error","error-messages"])]}),_:2},1032,["modelValue","onUpdate:modelValue","name"])]),(d=e(se))!=null&&d.sources.some(C=>C.name===l.name)&&!l.internal?(i(),M(X,{key:0,"camera-name":e(p),"source-name":("toRaw"in z?z.toRaw:e(Co))(l.name)},null,8,["camera-name","source-name"])):N("",!0),m("div",Ii,[r(e(Pe),{modelValue:l.roles,"onUpdate:modelValue":C=>l.roles=C,name:`sources[${o}].roles`},{default:a(({field:C,errorMessage:U,errors:Q})=>[m("label",{for:`sources[${o}].roles`,class:"v-label"},c(z.$t("components.form.label.source_role")),9,qi),r(mt,ze({loading:e(H),items:e(le).filter(L=>!e(b).sources.some((ge,_e)=>ge.roles.includes(L)&&_e!==o)),disabled:l.internal,variant:"outlined",name:`sources[${o}].roles`,type:"text",density:"compact",chips:"",multiple:"",ref_for:!0},C,{"model-value":C.value,error:Q.length>0,"error-messages":U,onKeydown:J(()=>null,["prevent"])}),{chip:a(({item:L})=>[r(Je,{color:"#df2a4c"},{default:a(()=>[E(c(L.title),1)]),_:2},1024)]),_:2},1040,["loading","items","disabled","name","model-value","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"])]),m("div",Qi,[m("label",{for:`sources[${o}].urls[]`,class:"v-label"},c(z.$t("components.form.label.sources")),9,Oi),(i(!0),y(Se,null,Te(l.urls,(C,U)=>(i(),y("div",{key:U,class:"mb-3"},[r(e(Pe),{modelValue:l.urls[U],"onUpdate:modelValue":Q=>l.urls[U]=Q,name:`sources[${o}].urls[${U}]`,value:C},{default:a(({field:Q,errorMessage:L,errors:ge})=>[r(He,ze({loading:e(H),variant:"outlined",name:`sources[${o}].urls[${U}]`,disabled:l.internal,type:"text",density:"compact",ref_for:!0},Q,{error:ge.length>0,"error-messages":L}),{"append-inner":a(()=>[l.urls.length>1?(i(),M(ie,{key:0,loading:e(H),size:"28",variant:"text",rounded:"",density:"compact",color:"red",disabled:l.urls.length<2,onClick:J(_e=>Oe(o,U),["prevent"])},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(No)),1)]),_:1})]),_:2},1032,["loading","disabled","onClick"])):N("",!0)]),_:2},1040,["loading","name","disabled","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name","value"])]))),128)),r(ie,{loading:e(H),disabled:l.internal,color:"#df2a4c",variant:"flat",class:"ml-auto",onClick:J(C=>Qe(o),["prevent"])},{default:a(()=>[E(c(z.$t("components.form.button.add_source")),1)]),_:2},1032,["loading","disabled","onClick"])])]}),_:2},1024)]),_:2},1024)]),_:2},1024),r(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})],512),[[Et,!l.internal]])]))),128)),m("div",Ai,[r(ie,{loading:e(H),variant:"text",color:"#df2a4c",icon:"",onClick:J(he,["prevent"])},{default:a(()=>[r(G,{size:"30"},{default:a(()=>[E(c(e(qa)),1)]),_:1})]),_:1},8,["loading"])])]),_:1},8,["validation-schema"])]),"segmentIcon.plugins":a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Ao)),1)]),_:1})]),"body.plugins":a(()=>[e(h)==="plugins"?(i(),M(lr,{key:0,"camera-name":e(p)},null,8,["camera-name"])):N("",!0)]),footer:a(()=>[e(re)?(i(),y("div",Ni,[r(ie,{width:"100%",color:"green",variant:"flat",loading:e(H)||e(Ee),onClick:J(R,["prevent"])},{default:a(()=>[E(c(z.$t("components.form.button.save")),1)]),_:1},8,["loading"])])):N("",!0)]),_:1},8,["state","title","segments","loading","selected"])):N("",!0),r(be,{modelValue:e(I),"onUpdate:modelValue":$[23]||($[23]=l=>Me(I)?I.value=l:null),title:z.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.remove",loading:e(H)||e(Ee),onConfirm:$[24]||($[24]=l=>Ce())},{content:a(()=>[m("span",null,c(z.$t("components.dialog.message.confirm_remove")),1)]),_:1},8,["modelValue","title","loading"]),r(be,{modelValue:e(te),"onUpdate:modelValue":$[26]||($[26]=l=>Me(te)?te.value=l:null),title:z.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.open_editor",loading:e(H)||e(Ee),onConfirm:$[27]||($[27]=l=>De(e(x),!0))},{content:a(()=>[r(e(Qt),{ref_key:"cameraVeeForm3",ref:D,"validation-schema":e(Xa),"initial-values":e(x)},{default:a(()=>[r(e(Pe),{modelValue:e(x).name,"onUpdate:modelValue":$[25]||($[25]=l=>e(x).name=l),name:"name",type:"text"},{default:a(({field:l,errorMessage:o,errors:d})=>[m("label",Ri,c(z.$t("components.form.label.zone_name")),1),r(He,ze({class:"my-1",variant:"outlined",density:"compact",type:"text",name:"name"},l,{error:d.length>0,"error-messages":o}),null,16,["error","error-messages"])]),_:1},8,["modelValue"])]),_:1},8,["validation-schema","initial-values"])]),_:1},8,["modelValue","title","loading"]),e(ae)?(i(),M(Ue,{key:1,"camera-name":e(p),zones:e(ae),"is-new-zone":e(f),onShowModal:$[28]||($[28]=l=>l?null:Re())},null,8,["camera-name","zones","is-new-zone"])):N("",!0)],64)}}}),Zi=nt(Ui,[["__scopeId","data-v-c043564e"]]),ji={class:"flex items-center justify-between"},Ki={class:"leading-4 flex flex-col p-2"},Hi={key:0,class:"text-left"},Yi={key:0},Wi={class:"player-camera-subtitle ml-1"},Xi={key:1},Ji={class:"player-camera-subtitle ml-1"},Gi={class:"flex items-center ml-auto"},eu=Ne({__name:"VCameraControl",props:{currentCamera:{},absoluteTitle:{type:Boolean,default:!1},clickableTitle:{type:Boolean,default:!1},buttonElevation:{default:"0"},showTooltips:{type:Boolean,default:!0},showTitleIndicator:{type:Boolean,default:!1},motionDetectionsDisabled:{type:Boolean,default:!0},objectDetectionsDisabled:{type:Boolean,default:!0},settings:{type:Boolean,default:!1},share:{type:Boolean,default:!1},snapshot:{type:Boolean,default:!1},refreshSnapshot:{type:Boolean,default:!1},motions:{type:Boolean,default:!1},objects:{type:Boolean,default:!1},zones:{type:Boolean,default:!1},shortcuts:{type:Boolean,default:!1},logs:{type:Boolean,default:!1},streamLoading:{type:Boolean,default:!1}},emits:["share","snapshot","refresh-snapshot","settings","logs","adding-shortcuts","show-motion-detections","show-object-detections","show-zones"],setup(t,{emit:n}){const{isTouch:s}=Rt(),v=n,S=t,{absoluteTitle:w,clickableTitle:Z,buttonElevation:p,showTooltips:B,shortcuts:q,share:b,snapshot:k,refreshSnapshot:K,motions:D,objects:u,zones:j,settings:P,logs:h,streamLoading:ae,motionDetectionsDisabled:re,objectDetectionsDisabled:I,showTitleIndicator:te}=Ke(S),le=g(!1),de=g(!1),fe=g(!1),ne=g(!1);return ve(le,T=>{v("adding-shortcuts",T)}),ve(de,T=>{v("show-motion-detections",T)}),ve(fe,T=>{v("show-object-detections",T)}),ve(ne,T=>{v("show-zones",T)}),(T,_)=>(i(),y("div",{class:Tt(["p-2 px-3",{"player-header-absolute":e(w),"player-header-container":!e(w)}])},[m("div",ji,[r(ie,{class:Tt({"player-title-text":!e(w),"cursor-pointer":e(Z),"cursor-default":!e(Z)}),style:{padding:"0"},ripple:e(w),color:e(w)?"#212121":void 0,height:"100%",variant:e(w)?"elevated":"text",elevation:e(p),rounded:"",to:e(Z)?`/cameras/${T.currentCamera}`:void 0},{default:a(()=>[m("div",Ki,[m("h3",{class:"player-camera-title text-left truncate",style:ot({color:e(w)?"#ffffff":"color: var(--color)",maxWidth:"150px"})},c(T.currentCamera),5),e(te)?(i(),y("div",Hi,[e(ae)?(i(),y("div",Yi,[r(je,{size:"10",width:"2",indeterminate:"",color:"#0173ff"}),m("span",Wi,c(T.$t("general.loading")),1)])):(i(),y("div",Xi,[r(je,{size:"10",width:"1","model-value":100,color:"red"},{default:a(()=>_[9]||(_[9]=[m("div",{class:"circle-indicator",style:{"background-color":"red"}},null,-1)])),_:1}),m("span",Ji,c(T.$t("components.player.live")),1)]))])):N("",!0)])]),_:1},8,["class","ripple","color","variant","elevation","to"]),m("div",Gi,[e(b)?Ze((i(),M(ie,{key:0,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[0]||(_[0]=J(f=>v("share"),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Uo)),1)]),_:1})]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:T.$t("components.player.share_camera")}]]):N("",!0),e(k)?Ze((i(),M(ie,{key:1,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[1]||(_[1]=J(f=>v("snapshot"),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Zo)),1)]),_:1})]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:T.$t("components.player.capture_snapshot")}]]):N("",!0),e(D)&&!e(re)?Ze((i(),M(ie,{key:2,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[2]||(_[2]=J(f=>de.value=!e(de),["prevent"]))},{default:a(()=>[r(G,{size:"20",disabled:!e(de)},{default:a(()=>[E(c(e(jo)),1)]),_:1},8,["disabled"])]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:e(de)?T.$t("components.player.hide_motions"):T.$t("components.player.show_motions")}]]):N("",!0),e(u)&&!e(I)?Ze((i(),M(ie,{key:3,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[3]||(_[3]=J(f=>fe.value=!e(fe),["prevent"]))},{default:a(()=>[r(G,{size:"20",disabled:!e(fe)},{default:a(()=>[E(c(e(Ko)),1)]),_:1},8,["disabled"])]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:e(fe)?T.$t("components.player.hide_objects"):T.$t("components.player.show_objects")}]]):N("",!0),e(j)?Ze((i(),M(ie,{key:4,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[4]||(_[4]=J(f=>ne.value=!e(ne),["prevent"]))},{default:a(()=>[r(G,{size:"20",disabled:!e(ne)},{default:a(()=>[E(c(e(Ho)),1)]),_:1},8,["disabled"])]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:e(ne)?T.$t("components.player.hide_zones"):T.$t("components.player.show_zones")}]]):N("",!0),e(q)?Ze((i(),M(ie,{key:5,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[5]||(_[5]=J(f=>le.value=!e(le),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(le)?e(Yo):e(Wo)),1)]),_:1})]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:e(le)?T.$t("components.player.save_shortcuts"):T.$t("components.player.add_shortcuts")}]]):N("",!0),e(K)?Ze((i(),M(ie,{key:6,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,disabled:e(ae),elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[6]||(_[6]=J(f=>v("refresh-snapshot"),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Xo)),1)]),_:1})]),_:1},8,["variant","icon","disabled","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:T.$t("components.player.refresh_snapshot")}]]):N("",!0),e(h)&&e(fa)(void 0,"admin")?Ze((i(),M(ie,{key:7,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[7]||(_[7]=J(f=>v("logs"),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(Jo)),1)]),_:1})]),_:1},8,["variant","icon","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:T.$t("components.player.log")}]]):N("",!0),e(P)&&e(fa)(void 0,"admin")?Ze((i(),M(ie,{key:8,size:"28",density:"compact",variant:e(w)?"elevated":"text",icon:!e(w),rounded:!0,elevation:e(p),color:e(w)?"#212121":void 0,class:"ml-1",onClick:_[8]||(_[8]=J(f=>v("settings"),["prevent"]))},{default:a(()=>[r(G,{size:"20"},{default:a(()=>[E(c(e(ea)),1)]),_:1})]),_:1},8,["variant","icon","elevation","color"])),[[it,{disabled:!e(B)||e(s),location:"top",text:T.$t("components.player.settings")}]]):N("",!0)])])],2))}}),tu=nt(eu,[["__scopeId","data-v-a5980562"]]),au=Ne({__name:"VZoomable",setup(t){const n=g(null),s=g(1),v=g(0),S=g(0),w=g(0),Z=g(0);let p=0,B=!1,q=0,b=0;const k=oe(()=>({transform:`translate(${v.value}px, ${S.value}px) scale(${s.value})`,transformOrigin:"center"}));Mt(()=>{if(n.value){const{width:P,height:h}=n.value.getBoundingClientRect();w.value=P,Z.value=h}});const K=()=>{const P=w.value*(s.value-1)/2,h=Z.value*(s.value-1)/2;v.value=Math.max(Math.min(v.value,P),-P),S.value=Math.max(Math.min(S.value,h),-h)};ve(s,K);const D=P=>{if(P.touches.length===2){const h=P.touches[0],ae=P.touches[1];p=Math.hypot(h.clientX-ae.clientX,h.clientY-ae.clientY)}else P.touches.length===1&&(B=!0,q=P.touches[0].clientX-v.value,b=P.touches[0].clientY-S.value)},u=P=>{if(P.touches.length===2){const h=P.touches[0],ae=P.touches[1],re=Math.hypot(h.clientX-ae.clientX,h.clientY-ae.clientY),I=s.value*(re/p);s.value=Math.min(Math.max(I,1),5),p=re,K()}else P.touches.length===1&&B&&(v.value=P.touches[0].clientX-q,S.value=P.touches[0].clientY-b,K())},j=()=>{B=!1};return(P,h)=>(i(),y("div",{ref_key:"zoomableDiv",ref:n,class:"zoomable-container",style:ot(e(k)),onTouchstart:D,onTouchmove:u,onTouchend:j},[qt(P.$slots,"default",{},void 0,!0)],36))}}),ou=nt(au,[["__scopeId","data-v-f90e10cf"]]),nu=["data-ignore-id"],su={class:"snapshot-hover-container flex items-center justify-center elevation-3"},lu={key:0,style:{width:"100%","aspect-ratio":"16/9"}},ru={class:"shortcut-menu p-3 elevation-5"},iu=Ne({__name:"VCameraShortcuts",props:{currentCamera:{},clickInsideId:{},addingShortcuts:{type:Boolean}},setup(t){var De;const n=new vt,s=new _o,v=bo(),S=Za(),w=t,{clickInsideId:Z,currentCamera:p,addingShortcuts:B}=Ke(w),{loginState:q}=Ua(v),b=g(null),k=g(null),K=g({}),D=g({}),u=g({}),j=g(!1),P=g(),h=g({page:1,pageSize:-1}),ae=g(!1),re=g([]),I=g({}),te=Ft(k),{data:le,isLoading:de}=n.getCameraQuery(p),{data:fe,isLoading:ne}=n.getCamerasQuery(h),{data:T,isLoading:_}=s.getUserQuery(((De=q.value.user)==null?void 0:De.username)||""),{mutate:f,isPending:x}=s.patchShortcutQuery(),{mutateAsync:se,isPending:V}=s.createShortcutQuery(),{mutateAsync:Y,isPending:ee}=s.removeShortcutQuery(),me=oe(()=>de.value||_.value||x.value||ne.value||V.value||ee.value),ke=oe(()=>{var O;return(O=fe.value)!=null&&O.result?fe.value.result.filter(R=>R.name!==p.value):[]});ve([T,le],()=>{var O;T.value&&le.value&&(re.value=((O=T.value.preferences.cameras[le.value._id])==null?void 0:O.shortcuts)||[])},{immediate:!0,deep:!0}),ve([te.width,te.height],()=>{ae.value=!0,pt(()=>{Qe()})}),ve(re,()=>{pt(()=>{Oe()})},{deep:!0,immediate:!0}),ve(ae,O=>{O&&(P.value=void 0)});const pe=(O,R)=>{I.value[O]=j.value?!1:R,Object.entries(I.value).forEach(([z,$])=>{z!==O&&$&&(I.value[z]=!1)})},ye=O=>{j.value||Ae(O)},H=(O,R)=>{O||(I.value[R._id]?(pe(R._id,!1),Re(R.cameraId)):pe(R._id,!0))},we=()=>{Object.entries(D.value).forEach(([O,R])=>{const z=k.value;if(!z)return;const $=z.getBoundingClientRect(),W=R.element.getBoundingClientRect(),X=(W.left-$.left)/$.width*100,xe=(W.top-$.top)/$.height*100;u.value[O]={x:Math.max(0,Math.min(X,100)),y:Math.max(0,Math.min(xe,100))}})},Ee=()=>{Object.entries(D.value).forEach(([O,R])=>{const z=u.value[O];if(!z)return;const $=k.value;if(!$)return;const W=$.getBoundingClientRect(),X=R.element.getBoundingClientRect(),xe=W.width-X.width,be=W.height-X.height,Ue=Math.max(0,Math.min(z.x/100*W.width,xe)),l=Math.max(0,Math.min(z.y/100*W.height,be));R.setPosition(Ue,l)}),ae.value=!1},Qe=()=>{Object.entries(u.value).forEach(([O,R])=>{u.value[O]={x:Math.max(0,Math.min(R.x,100)),y:Math.max(0,Math.min(R.y,100))}}),Ee()},Oe=()=>{for(const[O,R]of Object.entries(D.value))re.value.find(z=>z._id===O)||(R.destroy(),delete D.value[O],delete u.value[O]);for(const[O]of Object.entries(u.value))re.value.find(R=>R._id===O)||delete u.value[O];for(const[O,R]of Object.entries(K.value)){const z=re.value.find($=>$._id===O);if(R&&z&&k.value){D.value[z._id]&&D.value[z._id].destroy();const $=new Qa(R,{containment:k.value});D.value[z._id]=$;const[W,X]=z.coords.points,xe=k.value.getBoundingClientRect(),be=W/100*xe.width,Ue=X/100*xe.height;$.setPosition(be,Ue),u.value[z._id]={x:W,y:X},$.on("dragMove",()=>{j.value=!0}),$.on("dragEnd",()=>{if(setTimeout(()=>{j.value=!1},50),we(),!T.value||!le.value)return;const l=u.value[z._id];f({username:T.value.username,cameraname:le.value.name,shortcutid:z._id,shortcutData:{coords:{_id:z.coords._id,points:[l.x,l.y]}}})})}}Ee()},Ce=O=>{if(!B.value||!k.value)return;const R=k.value.getBoundingClientRect(),z=35,$=35;P.value={x:Math.max(0,Math.min(O.clientX-R.left-z/2,R.width-z)),y:Math.max(0,Math.min(O.clientY-R.top-$/2,R.height-$))}},he=async O=>{if(!b.value||!T.value||!le.value||!k.value)return;const R=k.value,z=b.value,$=R.getBoundingClientRect(),W=z.getBoundingClientRect(),X=W.left-$.left,xe=W.top-$.top,be=X/$.width*100,Ue=xe/$.height*100;await se({username:T.value.username,cameraname:le.value.name,shortcutData:{_id:"",coords:{_id:"",points:[be,Ue]},cameraId:O._id}},{onSuccess:l=>{re.value=l}}),P.value=void 0},Ae=async O=>{!T.value||!le.value||await Y({username:T.value.username,cameraname:le.value.name,shortcutid:O._id},{onSuccess:R=>{re.value=R}})},Fe=(O,R)=>{K.value[R]=O},Re=async O=>{if(j.value)return;const R=new AbortController,$=(await Wa({cameraname:O,signal:R.signal})).name;$&&S.push(`/cameras/${$}`)};return xo(()=>{K.value={}}),Mt(()=>{pt(()=>{Oe()})}),So(()=>{Object.values(D.value).forEach(O=>O.destroy())}),(O,R)=>{const z=Ga,$=Zt;return i(),y("div",{ref_key:"shortcutContainer",ref:k,class:"shortcut-container relative",style:ot({cursor:e(B)?"pointer":"default"}),onClick:J(Ce,["self"])},[(i(!0),y(Se,null,Te(e(re),W=>Ze((i(),y("div",{ref_for:!0,ref:X=>Fe(X,W._id),key:W._id,class:"draggable absolute","data-ignore-id":e(Z),style:ot({background:e(I)[W._id]?"#545454":void 0})},[r(ie,{color:"#383838",size:"32",density:"compact",icon:"",variant:"elevated",active:e(I)[W._id]},{default:a(()=>[r(G,{size:"30",style:{"margin-top":"3px"}},{default:a(()=>R[1]||(R[1]=[E(c("$cuiCamera"))])),_:1})]),_:2},1032,["active"]),r(_a,{"model-value":e(j)?!1:e(I)[W._id]||void 0,target:"parent",offset:[10,20]},{default:a(()=>{var X;return[m("div",su,[(X=e(fe))!=null&&X.result.find(xe=>xe._id===W.cameraId)?(i(),M(z,{key:1,"current-camera":e(fe).result.find(xe=>xe._id===W.cameraId).name,"border-radius":0,target:"stream","source-role":"low-resolution","show-mode":!1,"show-live-indicator":""},null,8,["current-camera"])):(i(),y("div",lu,[r(je,{color:"#df2a4c",indeterminate:""})]))])]}),_:2},1032,["model-value"])],12,nu)),[[e(fn),X=>pe(W._id,X)],[e(gn),[()=>ye(W),{distanceThreshold:24,delay:1e3,onMouseUp:(X,xe,be)=>H(be,W)}]]])),128)),e(P)?(i(),y("div",{key:0,ref_key:"placeholderEl",ref:b,class:"draggable absolute",style:ot(`left: ${e(P).x}px; top: ${e(P).y}px;`)},[r(ie,{color:"#383838",size:"32",density:"compact",icon:"",variant:"elevated"},{default:a(()=>[r(G,{size:"30",style:{"margin-top":"3px"}},{default:a(()=>R[2]||(R[2]=[E(c("$cuiCamera"))])),_:1})]),_:1})],4)):N("",!0),e(B)&&!e(j)&&!e(ae)?(i(),M(_a,{key:1,offset:[30,0],activator:"parent",target:"cursor","onUpdate:modelValue":R[0]||(R[0]=W=>W?null:P.value=void 0)},{default:a(()=>[m("div",ru,[(i(!0),y(Se,null,Te(e(ke),W=>(i(),M($,{key:W._id,class:"shortcut-menu-item elevation-1","camera-name":W.name,width:"100%",loading:e(me),onClick:J(X=>he(W),["prevent"])},null,8,["camera-name","loading","onClick"]))),128))])]),_:1})):N("",!0)],4)}}}),uu=nt(iu,[["__scopeId","data-v-e9e8a575"]]),cu={class:"stream-control flex flex-row items-center justify-center elevation-2"},du=Ne({__name:"VPlayerController",props:{showVolume:{type:Boolean,default:!0},showRewind:{type:Boolean,default:!1},showFastForward:{type:Boolean,default:!1},showPlayPause:{type:Boolean,default:!0},showMicrophone:{type:Boolean,default:!1},showAirplay:{type:Boolean,default:!1},showPip:{type:Boolean,default:!1},showFs:{type:Boolean,default:!1},playing:{type:Boolean},muted:{type:Boolean},micActive:{type:Boolean},isFs:{type:Boolean},isPip:{type:Boolean},loading:{type:Boolean},collapsedControls:{default(){return[]}}},emits:["toggle-mute","toggle-play","toggle-microphone","toggle-airplay","toggle-picture-in-picture","toggle-fullscreen","toggle-rewind","toggle-fast-forward","toggle-playback-rate"],setup(t,{emit:n}){const s=n,v=t,{showAirplay:S,showFastForward:w,showMicrophone:Z,showPip:p,showPlayPause:B,showRewind:q,showVolume:b,playing:k,micActive:K,muted:D,loading:u,showFs:j,isFs:P,isPip:h,collapsedControls:ae}=Ke(v),re=oe(()=>ae.value.includes("airplay")),I=oe(()=>ae.value.includes("fast-forward")),te=oe(()=>ae.value.includes("microphone")),le=oe(()=>ae.value.includes("pip")),de=oe(()=>ae.value.includes("play-pause")),fe=oe(()=>ae.value.includes("rewind")),ne=oe(()=>ae.value.includes("volume")),T=oe(()=>ae.value.includes("fs"));return(_,f)=>(i(),y("div",cu,[e(fe)?N("",!0):(i(),M(ie,{key:0,disabled:!e(q)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[0]||(f[0]=J(x=>s("toggle-rewind"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(Go)),1)]),_:1})]),_:1},8,["disabled"])),e(de)?N("",!0):(i(),M(ie,{key:1,disabled:!e(B)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[1]||(f[1]=J(x=>s("toggle-play"),["prevent"]))},{default:a(()=>[e(de)?N("",!0):(i(),M(G,{key:0,color:"#fff",size:"18"},{default:a(()=>[E(c(e(k)?e(en):e(tn)),1)]),_:1}))]),_:1},8,["disabled"])),e(I)?N("",!0):(i(),M(ie,{key:2,disabled:!e(w)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[2]||(f[2]=J(x=>s("toggle-fast-forward"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(an)),1)]),_:1})]),_:1},8,["disabled"])),e(ne)?N("",!0):(i(),M(ie,{key:3,disabled:!e(b)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[3]||(f[3]=J(x=>s("toggle-mute"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(D)?e(on):e(nn)),1)]),_:1})]),_:1},8,["disabled"])),e(te)?N("",!0):(i(),M(ie,{key:4,disabled:!e(Z)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[4]||(f[4]=J(x=>s("toggle-microphone"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(K)?e(sn):e(ln)),1)]),_:1})]),_:1},8,["disabled"])),e(re)?N("",!0):(i(),M(ie,{key:5,disabled:!e(S)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[5]||(f[5]=J(x=>s("toggle-airplay"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(rn)),1)]),_:1})]),_:1},8,["disabled"])),e(le)?N("",!0):(i(),M(ie,{key:6,disabled:!e(p)||e(u)||e(P),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[6]||(f[6]=J(x=>s("toggle-picture-in-picture"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(h)?e(un):e(cn)),1)]),_:1})]),_:1},8,["disabled"])),e(T)?N("",!0):(i(),M(ie,{key:7,disabled:!e(j)||e(u)||e(h),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:f[7]||(f[7]=J(x=>s("toggle-fullscreen"),["prevent"]))},{default:a(()=>[r(G,{color:"#fff",size:"18"},{default:a(()=>[E(c(e(P)?e(dn):e(mn)),1)]),_:1})]),_:1},8,["disabled"]))]))}}),mu=nt(du,[["__scopeId","data-v-b5e30f72"]]),pu=Ne({__name:"VBBoxPlayground",props:{color:{default:"#df2a4c"},detections:{default(){return[]}}},setup(t,{expose:n}){const s=t,{color:v,detections:S}=Ke(s),w=g(null),Z=Ft(w),p=q=>{if(!w.value)return;const k=w.value.getContext("2d");if(k&&(B(),q.length)){const K=q[0].origWidth,D=q[0].origHeight;w.value.width=Z.width.value,w.value.height=Z.height.value;const u=w.value.width/K,j=w.value.height/D;q.forEach(P=>{const{origHeight:h,origWidth:ae,inputWidth:re,inputHeight:I}=P,[te,le,de,fe]=P.boundingBox,ne=Math.round(te*ae/re),T=Math.round(le*h/I),_=Math.round(de*ae/re),f=Math.round(fe*h/I),x=ne*u,se=T*j,V=_*u,Y=f*j;k.strokeStyle=v.value,k.lineWidth=2,k.beginPath(),k.moveTo(x+5,se),k.lineTo(V-5,se),k.quadraticCurveTo(V,se,V,se+5),k.lineTo(V,Y-5),k.quadraticCurveTo(V,Y,V-5,Y),k.lineTo(x+5,Y),k.quadraticCurveTo(x,Y,x,Y-5),k.lineTo(x,se+5),k.quadraticCurveTo(x,se,x+5,se),k.closePath(),k.stroke();const ee=`${P.label} (${(P.confidence*100).toFixed(2)}%)`,me=k.measureText(ee).width+27,ke=20,pe=x;let ye=se-ke-5;ye<0&&(ye=se+5);const H=10,we=5;k.beginPath(),k.moveTo(pe+we,ye),k.lineTo(pe+me+H*2-we,ye),k.quadraticCurveTo(pe+me+H*2,ye,pe+me+H*2,ye+we),k.lineTo(pe+me+H*2,ye+ke-we),k.quadraticCurveTo(pe+me+H*2,ye+ke,pe+me+H*2-we,ye+ke),k.lineTo(pe+we,ye+ke),k.quadraticCurveTo(pe,ye+ke,pe,ye+ke-we),k.lineTo(pe,ye+we),k.quadraticCurveTo(pe,ye,pe+we,ye),k.closePath(),k.fillStyle="rgba(255, 255, 255, 0.7)",k.fill(),k.fillStyle="black",k.font="bold 13px sans-serif",k.textAlign="left",k.textBaseline="bottom",k.fillText(ee,pe+H,ye+ke-3)})}},B=()=>{if(!w.value)return;const q=w.value.getContext("2d");q&&q.clearRect(0,0,Z.width.value,Z.height.value)};return ve(S,q=>{pt(()=>{p(q)})},{deep:!0,immediate:!0}),n({draw:p,clear:B}),(q,b)=>(i(),y("canvas",{ref_key:"bboxCanvas",ref:w,class:"canvas-container"},null,512))}}),Sa=nt(pu,[["__scopeId","data-v-bdd3e850"]]),vu=["data-inside-id"],fu={key:1,class:"camera-name text-white"},gu={class:"video-extras flex items-center justify-center"},yu={key:0,class:"video-extras-bg text-white p-2"},hu={key:1,class:"mx-1"},bu={key:2,class:"absolute w-full h-full flex flex-col items-center justify-center z-5"},_u={key:0,class:"mt-3 text-white text-sm text-shadow"},wu={key:5,width:"100%",height:"100%",class:"zones-container polygon-container"},$u=["d"],ku=["muted"],Cu=5e3,xu=1e4,Su=1e3,Vu=Ne({__name:"VCameraStream",props:{currentCamera:{},showCameraName:{type:Boolean,default:!1},showLiveIndicator:{type:Boolean,default:!1},showMode:{type:Boolean,default:!0},autoHideControl:{type:Boolean,default:!0},enableControl:{type:Boolean,default:!1},allowStreamRunningInBg:{type:Boolean,default:!1},sourceRole:{default:"high-resolution"},mode:{},motions:{type:Boolean,default:!1},objects:{type:Boolean,default:!1},zones:{type:Boolean,default:!1},shortcuts:{type:Boolean,default:!1},addingShortcuts:{type:Boolean,default:!1}},emits:["streamFinishedLoading"],setup(t,{expose:n,emit:s}){var pa,va;const v=new vt,{mobileActive:S}=Ta(),{api:w}=Pa(),{fsSupported:Z,isIphone:p,isMobile:B}=Rt(),q=s,b=t,{showCameraName:k,showLiveIndicator:K,currentCamera:D,autoHideControl:u,enableControl:j,allowStreamRunningInBg:P,sourceRole:h,mode:ae,motions:re,objects:I,zones:te,shortcuts:le,addingShortcuts:de}=Ke(b),fe=g(null),ne=g(wo()),T=g(),_=g("loading"),f=g(),x=g(!1),se=g(!1),V=g(null),Y=g(),ee=g(!1),me=g(!1),ke=g(!1),pe=g(!0),ye=g(!1),H=g(!1),we=g(!1),Ee=g(!1),Qe=g(!0),Oe=g(!0),Ce=g(!1),he=g(!1),Ae=g(!1),Fe=g(),Re=g(),De=g([]),O=g(null),R=g();let z,$,W,X,xe;const be=v.getCameraQuery(D),Ue=Ft(V),{isFullscreen:l,toggle:o}=Oa(V),d=oe(()=>!!(be!=null&&be.isLoading.value||!H.value||ee.value)),C=oe(()=>_.value!=="mjpeg"&&_.value!=="mp4"&&se.value),U=oe(()=>navigator.mediaDevices&&x.value),Q=oe(()=>{var F,ue;return!!(_.value==="hls"&&((F=be==null?void 0:be.data.value)==null?void 0:F.interface.streamingMode)==="hls"&&((ue=V.value)!=null&&ue.canPlayType("application/vnd.apple.mpegurl"))&&Y.value!==void 0)}),L=oe(()=>document.pictureInPictureEnabled&&!p.value&&_.value!=="mp4"&&_.value!=="mjpeg"),ge=oe(()=>_.value!=="mjpeg"&&_.value!=="mp4");if(Lt(V,"pause",()=>{ye.value=!1}),Lt(V,"play",()=>{ye.value=!0}),Lt(V,"enterpictureinpicture",()=>ke.value=!0),Lt(V,"leavepictureinpicture",()=>ke.value=!1),j.value&&ta(fe,F=>{const ue=F.target,Ve=ue.closest(`[data-inside-id='${ne.value}']`),Ie=ue.closest(`[data-ignore-id='${ne.value}']`);Ve&&!Ie&&!de.value&&(u.value&&da(),Ee.value=!Ee.value)}),((pa=be==null?void 0:be.data.value)==null?void 0:pa.interface.streamingMode)==="hls"&&((va=V.value)!=null&&va.canPlayType("application/vnd.apple.mpegurl"))&&"WebKitPlaybackTargetAvailabilityEvent"in window&&Lt(V,"webkitplaybacktargetavailabilitychanged",F=>{switch(F.availability){case"available":Y.value=!0;break;case"not-available":Y.value=void 0;break}}),!P.value&&!B.value){const F=yn();ve(F,ue=>{var Ve;ue==="hidden"?me.value===!1&&(clearTimeout(X),X=setTimeout(()=>{ma()},xu)):(clearTimeout(X),me.value&&((Ve=O.value)==null||Ve.reconnect()))})}ve(ee,async F=>{F&&await jt(!1,!1)}),ve(H,F=>{F||(zt("motion"),zt("object")),q("streamFinishedLoading",F)}),ve(_,F=>{clearInterval(xe),F==="mse"&&(xe=setInterval(oo,Su))});const _e=async()=>{var st;if(j.value&&u.value&&Ee.value&&da(),await(be==null?void 0:be.suspense()),R.value=await w.deviceManager.getCameraByName(D.value),!R.value)throw new Error("Camera not found!");let F;const ue=R.value.streamSource,Ve=R.value.snapshotSource,Ie=R.value.highResolutionSource,qe=R.value.midResolutionSource,dt=R.value.lowResolutionSource;if(h.value==="high-resolution"?Ie?F=Ie:(console.warn("High resolution source not found, using stream source instead"),F=ue):h.value==="mid-resolution"?qe?F=qe:(console.warn("Mid resolution source not found, using stream source instead"),F=ue):h.value==="low-resolution"?dt?F=dt:(console.warn("Low resolution source not found, using stream source instead"),F=ue):h.value==="snapshot"?Ve?F=Ve:(console.warn("Snapshot source not found, using stream source instead"),F=ue):F=ue,T.value=`${D.value.replace(/ /g,"_").toLowerCase()}_${F.name}`,Qe.value=!R.value.hasMotionDetector,Oe.value=!R.value.hasObjectDetector,R.value.onPropertyChange("hasMotionDetector").subscribe(({newData:Bt})=>{Qe.value=!Bt}),R.value.onPropertyChange("hasObjectDetector").subscribe(({newData:Bt})=>{Oe.value=!Bt}),!V.value)throw new Error("Video player not found!");O.value=R.value.createWebRTCSession({mode:ae.value||((st=be==null?void 0:be.data.value)==null?void 0:st.interface.streamingMode)||"webrtc",sourceName:T.value,videoElement:V.value,wsReconnectTimeout:5e3,webrtcConnectTimeout:2e3}),O.value.addEventListener("error",ce),O.value.addEventListener("reconnect",A),O.value.addEventListener("onFinishLoading",We),O.value.addEventListener("onFirstFrame",Ge),O.value.connect()},ce=F=>{console.error(D.value,F),_.value="error",x.value=!1,H.value=!1,H.value=!1,ee.value=!1},A=()=>{_.value="reconnecting",x.value=!1,H.value=!1,H.value=!1,ee.value=!0},$e=()=>{x.value=O.value.hasBackchannel,se.value=O.value.hasAudio,_.value=O.value.mode,ee.value=!1,H.value=!1},We=()=>{x.value=O.value.hasBackchannel,se.value=O.value.hasAudio,_.value=O.value.mode,ee.value=!1},Ge=()=>{H.value=!0},at=()=>{var F;if(V.value){const ue=document.createElement("canvas");ue.width=V.value.videoWidth,ue.height=V.value.videoHeight,(F=ue.getContext("2d"))==null||F.drawImage(V.value,0,0,ue.width,ue.height);const Ve=ue.toDataURL("image/png"),Ie=`${D.value.replace(/ /g,"_").toLowerCase()}_${new Date().toISOString()}.png`,qe=document.createElement("a");qe.setAttribute("download",Ie),qe.href=Ve,document.body.appendChild(qe),qe.click(),qe.remove()}},et=()=>{var F;Ae.value||(Ae.value=!0,De.value=((F=R.value)==null?void 0:F.detectionZones)||[])},ct=()=>{Ae.value=!1,De.value=[]},Le=async()=>{var F,ue;Ce.value||(zt("motion"),Ce.value=!0,await((F=R.value)==null?void 0:F.start()),z=(ue=R.value)==null?void 0:ue.onMotionDetected.subscribe(Ve=>{ra("motion",Ve.detections??[])}))},wt=()=>{var F;zt("motion"),Ce.value=!1,he.value||(F=R.value)==null||F.stop(),z==null||z.unsubscribe()},eo=async()=>{var F,ue;he.value||(zt("object"),he.value=!0,await((F=R.value)==null?void 0:F.start()),$=(ue=R.value)==null?void 0:ue.onObjectDetected.subscribe(Ve=>{ra("object",Ve.detections)}))},to=()=>{var F;zt("object"),he.value=!1,Ce.value||(F=R.value)==null||F.stop(),$==null||$.unsubscribe()},zt=F=>{const ue=ia(F);ue==null||ue.clear()},ra=(F,ue)=>{if(!H.value)return;const Ve=ia(F);Ve==null||Ve.draw(ue)},ia=F=>F==="motion"?Fe.value:Re.value,ao=F=>{if(!F)return"";const ue=F.map(Ie=>{const qe=Math.round(Ie[0]/100*Ue.width.value),dt=Math.round(Ie[1]/100*Ue.height.value);return`${qe},${dt}`});if(ue.length===0)return"";let Ve=`M ${ue[0]}`;for(let Ie=1;Ie<ue.length;Ie++)Ve+=` L ${ue[Ie]}`;return Ve+=" Z",Ve},ua=async()=>{var F;if(V.value)try{await V.value.play()}catch(ue){if(!((F=V.value)!=null&&F.muted))return V.value.muted=!0,ua();console.warn(D.value,ue)}},oo=()=>{if(V.value&&_.value==="mse"&&!ee.value&&H.value&&V.value.buffered.length>0){const F=V.value.buffered.end(V.value.buffered.length-1);F-V.value.currentTime>1&&(V.value.currentTime=F)}},ca=F=>{pe.value=F!==void 0?F:!pe.value},jt=async(F,ue=!1)=>{var Ve,Ie;if((Ve=O.value)!=null&&Ve.mode.includes("webrtc"))if(we.value=F!==void 0?F:!we.value,we.value)try{f.value=await navigator.mediaDevices.getUserMedia({audio:!0});const qe=f.value.getAudioTracks()[0];pe.value=!ue,await O.value.toggleMicrophone(qe)}catch(qe){console.warn(D.value,qe)}else(Ie=f.value)==null||Ie.getTracks().forEach(qe=>qe.stop()),f.value=void 0,await O.value.toggleMicrophone(null)},no=()=>{var F;document.pictureInPictureElement?document.exitPictureInPicture():document.pictureInPictureEnabled&&((F=V.value)==null||F.requestPictureInPicture())},so=()=>{V.value&&(ye.value?V.value.pause():ua())},lo=()=>{var F;(F=V.value)==null||F.webkitShowPlaybackTargetPicker()},ro=()=>{Z.value?o():l.value=!l.value},da=()=>{clearTimeout(W),W=setTimeout(()=>{Ee.value=!1},Cu)},io=()=>{me.value=!0,H.value=!1,pe.value=!0},ma=()=>{var F;io(),(F=O.value)==null||F.close()};return Ba(async()=>{try{await _e()}catch(F){console.error(F)}}),Da(()=>{var F,ue,Ve,Ie,qe,dt;ma(),(F=O.value)==null||F.removeEventListener("error",ce),(ue=O.value)==null||ue.removeEventListener("reconnect",A),(Ve=O.value)==null||Ve.removeEventListener("onModeChange",$e),(Ie=O.value)==null||Ie.removeEventListener("onFinishLoading",We),(qe=O.value)==null||qe.removeEventListener("onFirstFrame",Ge),(dt=R.value)==null||dt.close(),R.value=void 0}),n({toggleMicrophone:jt,toggleMute:ca,captureScreenshot:at,onHideMotionDetections:wt,onShowMotionDetections:Le,onHideObjectDetections:to,onShowObjectDetections:eo,onHideZones:ct,onShowZones:et,motionDetectionsDisabled:Qe,objectDetectionsDisabled:Oe}),(F,ue)=>{const Ve=mu,Ie=uu,qe=Zt,dt=ou;return i(),y("div",{class:"relative w-full h-full","data-inside-id":e(ne)},[m("div",{ref_key:"fakeClick",ref:fe,class:"fake-click"},null,512),r(Ea,{name:"fade",mode:"out-in"},{default:a(()=>[e(Ee)&&e(j)?(i(),M(Ve,{key:0,"data-ignore-id":e(ne),loading:e(d),"show-rewind":"","show-fast-forward":"","show-volume":e(C),"show-play-pause":e(ge),"show-microphone":e(U),"show-airplay":e(Q)&&e(ge),"show-pip":e(L),"show-fs":e(Z),"is-fs":e(l),"is-pip":e(ke),muted:e(pe),playing:e(ye),"mic-active":e(we),"collapsed-controls":["airplay"],onToggleMute:ca,onTogglePlay:so,onToggleMicrophone:ue[0]||(ue[0]=()=>jt(void 0,!0)),onToggleAirplay:lo,onTogglePictureInPicture:no,onToggleFullscreen:ro},null,8,["data-ignore-id","loading","show-volume","show-play-pause","show-microphone","show-airplay","show-pip","show-fs","is-fs","is-pip","muted","playing","mic-active"])):N("",!0)]),_:1}),r(dt,null,{default:a(()=>[e(le)?(i(),M(Ie,{key:0,"current-camera":e(D),"adding-shortcuts":e(de),"click-inside-id":e(ne)},null,8,["current-camera","adding-shortcuts","click-inside-id"])):N("",!0),e(k)?(i(),y("div",fu,c(e(D)),1)):N("",!0),m("div",gu,[F.showMode&&!e(S)?(i(),y("div",yu,c(e(_).toUpperCase()),1)):N("",!0),F.showMode&&e(K)?(i(),y("div",hu)):N("",!0),e(K)?(i(),y("div",{key:2,class:"live-indicator elevation-3",style:ot({background:e(H)?"red":"gray"})},null,4)):N("",!0)]),e(d)?(i(),y("div",bu,[r(je,{color:"#df2a4c",class:"box-shadow",style:{"border-radius":"50%"},indeterminate:""}),e(ee)?(i(),y("span",_u,c(F.$t("components.player.reconnecting"))+"...",1)):N("",!0)])):N("",!0),e(re)&&!e(Qe)?(i(),M(Sa,{key:3,ref_key:"motionCanvas",ref:Fe},null,512)):N("",!0),e(I)&&!e(Oe)?(i(),M(Sa,{key:4,ref_key:"objectCanvas",ref:Re,color:"green"},null,512)):N("",!0),e(te)?(i(),y("svg",wu,[(i(!0),y(Se,null,Te(e(De),(st,Bt)=>(i(),y("path",{key:Bt,d:ao(st.points.map(uo=>uo)),class:Tt({polygon:st.filter=="include"&&!st.isPrivacyMask,"polygon-exclude":st.filter=="exclude"&&!st.isPrivacyMask,"polygon-privacy":st.isPrivacyMask,dash:st.type==="intersect"&&!st.isPrivacyMask})},null,10,$u))),128))])):N("",!0),e(H)?N("",!0):(i(),M(qe,{key:6,"camera-name":e(D),"show-loading-screen":!1,class:"object-contain"},null,8,["camera-name"])),Ze(m("video",{id:"videoPlayer",ref_key:"videoPlayer",ref:V,playsinline:"",autoplay:"",preload:"auto",muted:e(pe),class:"video-player"},null,8,ku),[[Et,e(H)]])]),_:1})],8,vu)}}}),zu=nt(Vu,[["__scopeId","data-v-2c38f293"]]),Pu={class:"relative player-container-main w-full",style:"background: var(--background-img);"},Tu={class:"relative w-full h-full flex items-center justify-center"},Eu={class:"relative w-full h-full"},Mu={key:2},Bu=Ne({__name:"VPlayer",props:{currentCamera:{},target:{},mode:{},previewSrc:{},showCameraName:{type:Boolean,default:!1},showMode:{type:Boolean,default:!0},showTitle:{type:Boolean,default:!1},showLiveIndicator:{type:Boolean,default:!1},absoluteTitle:{type:Boolean,default:!1},clickableTitle:{type:Boolean,default:!1},clickableContainer:{type:Boolean,default:!1},enableControl:{type:Boolean,default:!1},autoHideControl:{type:Boolean,default:!0},allowStreamRunningInBg:{type:Boolean,default:!1},showTooltips:{type:Boolean,default:!0},border:{type:Boolean,default:!1},borderRadius:{default:3},buttonElevation:{default:"0"},timelineScrolling:{type:Boolean,default:!1},shortcuts:{type:Boolean,default:!1},settings:{type:Boolean,default:!1},logs:{type:Boolean,default:!1},share:{type:Boolean,default:!1},snapshot:{type:Boolean,default:!1},refreshSnapshot:{type:Boolean,default:!1},motions:{type:Boolean,default:!1},objects:{type:Boolean,default:!1},zones:{type:Boolean,default:!1},sourceRole:{default:"high-resolution"}},emits:["resize"],setup(t,{expose:n,emit:s}){const v=new vt,{fsSupported:S}=Rt(),{smallMobileActive:w}=Ta(),Z=$o(),p=s,B=t,{absoluteTitle:q,allowStreamRunningInBg:b,autoHideControl:k,border:K,borderRadius:D,buttonElevation:u,clickableTitle:j,clickableContainer:P,currentCamera:h,enableControl:ae,target:re,mode:I,previewSrc:te,settings:le,logs:de,share:fe,showTitle:ne,snapshot:T,refreshSnapshot:_,timelineScrolling:f,objects:x,motions:se,zones:V,sourceRole:Y,showCameraName:ee,showMode:me,showLiveIndicator:ke,shortcuts:pe,showTooltips:ye}=Ke(B),H=g(!1),we=g(!1),Ee=g(null),Qe=g(!1),Oe=g(null),Ce=g(),he=g(),Ae=g(!1),Fe=g(!1),Re=g(null),De=g();v.toggleQueryActivator("downloadLogQuery",!1);const{data:O,isLoading:R,suspense:z}=v.downloadLogQuery(h),$=Ft(Ee),{isFullscreen:W}=Oa(Oe),X=oe(()=>({fontSize:w.value?12:14})),xe=oe(()=>(f.value||!Ae.value)&&re.value==="stream"),be=oe(()=>{var ce;return!!((ce=Ce.value)!=null&&ce.isLoading&&re.value!=="stream")});ve($.height,(ce,A)=>{p("resize",ce-A)},{deep:!0}),ve(Qe,ce=>{pt(()=>we.value=ce)}),ve(Fe,ce=>{ge(ce)}),ve(w,()=>{_e()});const Ue=()=>{var ce,A;re.value==="stream"?(ce=he.value)==null||ce.captureScreenshot():(A=Ce.value)==null||A.download()},l=()=>{var ce;(ce=Ce.value)==null||ce.refresh()},o=ce=>{var A,$e;ce?(A=he.value)==null||A.onShowZones():($e=he.value)==null||$e.onHideZones()},d=async ce=>{var A,$e;ce?await((A=he.value)==null?void 0:A.onShowMotionDetections()):($e=he.value)==null||$e.onHideMotionDetections()},C=async ce=>{var A,$e;ce?await((A=he.value)==null?void 0:A.onShowObjectDetections()):($e=he.value)==null||$e.onHideObjectDetections()},U=ce=>{var A;(A=he.value)==null||A.toggleMute(ce)},Q=async(ce,A=!1)=>{var $e;await(($e=he.value)==null?void 0:$e.toggleMicrophone(ce,A))},L=async()=>{try{if(v.toggleQueryActivator("downloadLogQuery",!0),await z(),O.value){const ce=O.value,A=window.URL.createObjectURL(new Blob([ce])),$e=document.createElement("a");$e.href=A,$e.setAttribute("download",`camera.ui.${h.value.replace(/ /g,"_")}.log.txt`),document.body.appendChild($e),$e.click(),$e.remove()}}finally{v.toggleQueryActivator("downloadLogQuery",!1)}},ge=ce=>{var A,$e,We,Ge,at,et,ct;ce?(De.value=Z.connectToNamespace("/logs"),(A=De.value)==null||A.socket.on(`stdout/${h.value}`,Le=>{var wt;(wt=Re.value)==null||wt.writeTerminal(Le)}),($e=De.value)==null||$e.socket.on("stdout",Le=>{var wt;(wt=Re.value)==null||wt.writeTerminal(Le)}),(We=De.value)==null||We.socket.on("disconnect",()=>{var Le;(Le=Re.value)==null||Le.writeTerminal(`\r
2
2
  Websocket failed to connect! Is the server running?\r
3
3
  \r
4
4
  `)}),(Ge=De.value)==null||Ge.socket.on("clear-log",()=>{var Le;(Le=Re.value)==null||Le.clearTerminal()}),(at=De.value)==null||at.socket.emit("get-camera-log",h.value)):(ct=(et=De.value)==null?void 0:et.end)==null||ct.call(et)},_e=()=>{Fe.value&&(ge(!1),ge(!0))};return n({toggleMicrophone:Q,toggleMute:U,captureScreenshot:Ue}),(ce,A)=>{var at,et,ct;const $e=tu,We=Zi,Ge=Nt;return i(),y("div",{ref_key:"playerContainer",ref:Ee,class:"player-container w-full relative",style:ot(`border-radius: ${e(D)}px; border: ${e(K)?1:0}px solid var(--border);`)},[m("div",Pu,[m("div",{ref_key:"videoPlayerWrapper",ref:Oe,class:Tt(["w-full h-full",{"fullscreen-video":!e(S)&&e(W)}])},[m("div",Tu,[m("div",{class:"video-container w-full aspect-video",style:ot(!e(S)&&e(W)?"width: unset":void 0)},[m("div",Eu,[e(re)==="stream"?(i(),M(zu,{key:0,ref_key:"cameraStream",ref:he,"current-camera":e(h),"show-camera-name":e(ee),"show-live-indicator":e(ke),"show-mode":e(me),"auto-hide-control":e(k),"enable-control":e(ae),"allow-stream-running-in-bg":e(b),"source-role":e(Y),mode:e(I),motions:e(se),objects:e(x),zones:e(V),shortcuts:e(pe),"adding-shortcuts":e(H),onStreamFinishedLoading:A[0]||(A[0]=Le=>Ae.value=Le)},null,8,["current-camera","show-camera-name","show-live-indicator","show-mode","auto-hide-control","enable-control","allow-stream-running-in-bg","source-role","mode","motions","objects","zones","shortcuts","adding-shortcuts"])):(i(),M(Zt,{key:1,ref_key:"cameraSnapshot",ref:Ce,"camera-name":e(h),src:e(te)},null,8,["camera-name","src"]))])],4)])],2)]),e(ne)?(i(),M($e,{key:0,"current-camera":e(h),"absolute-title":e(q),"clickable-title":e(j),"button-elevation":e(u),"show-tooltips":e(ye),settings:e(le),logs:e(de),share:e(fe),snapshot:e(T),"refresh-snapshot":e(_),motions:e(se),objects:e(x),zones:e(V),shortcuts:e(pe),"stream-loading":e(xe)||e(be),"show-title-indicator":e(re)==="stream","motion-detections-disabled":(at=e(he))==null?void 0:at.motionDetectionsDisabled,"object-detections-disabled":(et=e(he))==null?void 0:et.objectDetectionsDisabled,onAddingShortcuts:A[1]||(A[1]=Le=>H.value=Le),onSettings:A[2]||(A[2]=Le=>Qe.value=!0),onLogs:A[3]||(A[3]=Le=>Fe.value=!0),onSnapshot:Ue,onRefreshSnapshot:l,onShowZones:o,onShowMotionDetections:d,onShowObjectDetections:C},null,8,["current-camera","absolute-title","clickable-title","button-elevation","show-tooltips","settings","logs","share","snapshot","refresh-snapshot","motions","objects","zones","shortcuts","stream-loading","show-title-indicator","motion-detections-disabled","object-detections-disabled"])):N("",!0),e(P)?(i(),y("div",{key:1,class:"absolute w-100 h-100 top-0 cursor-pointer",onClick:A[4]||(A[4]=J(Le=>ce.$router.push(`/cameras/${e(h)}`),["prevent"]))})):N("",!0),e(Qe)?(i(),y("div",Mu,[r(We,{"camera-name":e(h),show:e(we),"latest-snapshot-src":(ct=e(Ce))==null?void 0:ct.snapshotSrc,onClose:A[5]||(A[5]=Le=>Qe.value=!1)},null,8,["camera-name","show","latest-snapshot-src"])])):N("",!0),r(Ge,{modelValue:e(Fe),"onUpdate:modelValue":A[6]||(A[6]=Le=>Me(Fe)?Fe.value=Le:null),title:ce.$t("components.dialog.title.log"),"confirm-text":"components.form.button.download",loading:e(R),"fullscreen-content":"",onConfirm:A[7]||(A[7]=Le=>L())},{content:a(()=>[r(Sn,{ref_key:"consoleRef",ref:Re,class:"text-editor",options:e(X)},null,8,["options"])]),_:1},8,["modelValue","title","loading"])],4)}}}),Ga=nt(Bu,[["__scopeId","data-v-f2f7bcdc"]]);export{vt as C,Ga as _,Zt as a,Ja as b,Ju as c,Sa as d,Zi as e,Sl as f,Xu as g};