@camera.ui/server 0.0.13-alpha.4 → 0.0.13-alpha.6

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 (90) hide show
  1. package/dist/interface/assets/{@tanstack-BRh6vUDU.js → @tanstack-DPd4-F0t.js} +1 -1
  2. package/dist/interface/assets/{@vee-validate-aIk5PQoc.js → @vee-validate-CmTVjJBY.js} +1 -1
  3. package/dist/interface/assets/{@vue-CHoPEscU.js → @vue-CIFymae3.js} +5 -5
  4. package/dist/interface/assets/{@vueform-CEy-r2-e.js → @vueform-B8BH3_sM.js} +1 -1
  5. package/dist/interface/assets/{@vueuse-Ty7ydkJu.js → @vueuse-GPEsefjJ.js} +1 -1
  6. package/dist/interface/assets/{Account-DIag_fJb.js → Account-DmYo08Qh.js} +1 -1
  7. package/dist/interface/assets/Adminpanel-BHh3IMeu.css +1 -0
  8. package/dist/interface/assets/Adminpanel-BJMS2lPd.js +2 -0
  9. package/dist/interface/assets/{Appearance-DyPCFCcA.js → Appearance-DKeJKTST.js} +1 -1
  10. package/dist/interface/assets/{Backup-B_md0hEE.js → Backup-Cxzbjmat.js} +1 -1
  11. package/dist/interface/assets/{Camera-CWiLco3W.css → Camera-B5hAZmeQ.css} +1 -1
  12. package/dist/interface/assets/{Camera-RYKuJlEk.js → Camera-CdiCoPuE.js} +1 -1
  13. package/dist/interface/assets/Cameras-CAdTRgyD.js +1 -0
  14. package/dist/interface/assets/Cameras-D7bnvH42.css +1 -0
  15. package/dist/interface/assets/Camview-DQh45zxY.js +1 -0
  16. package/dist/interface/assets/{Camview-DGzPDs8l.css → Camview-cgjDTjXy.css} +1 -1
  17. package/dist/interface/assets/Config-BNDa6thC.js +1 -0
  18. package/dist/interface/assets/{Config-DahKsDli.css → Config-CncRTcjC.css} +1 -1
  19. package/dist/interface/assets/Console-DJq4Hm5A.css +1 -0
  20. package/dist/interface/assets/Console-DaeLrWgn.js +4 -0
  21. package/dist/interface/assets/{FirstSteps-bb9JvbeK.js → FirstSteps-a9MQcU4I.js} +1 -1
  22. package/dist/interface/assets/NewCamera-C7naTyF1.css +1 -0
  23. package/dist/interface/assets/{NewCamera-C19Y-MPI.js → NewCamera-CQcflfB9.js} +2 -2
  24. package/dist/interface/assets/{Plugin-QDo9itJL.js → Plugin-CuzMGJle.js} +1 -1
  25. package/dist/interface/assets/{Plugin-BgukgsPs.css → Plugin-Dv0H228i.css} +1 -1
  26. package/dist/interface/assets/Plugins-BYNW9Ebl.css +1 -0
  27. package/dist/interface/assets/Plugins-Vbigmnnl.js +1 -0
  28. package/dist/interface/assets/Recordings-Cj7DTXms.js +1 -0
  29. package/dist/interface/assets/{Recordings-B3hIlCpR.js → Recordings-OwkmcBiG.js} +1 -1
  30. package/dist/interface/assets/{Settings-DMsesqQj.css → Settings-BfSP_zcY.css} +1 -1
  31. package/dist/interface/assets/Settings-DtuxhxkK.js +1 -0
  32. package/dist/interface/assets/System-DA2Qigu6.js +4 -0
  33. package/dist/interface/assets/{User-_5hrGMI-.js → User-DtIcGUsp.js} +1 -1
  34. package/dist/interface/assets/VConfigEditor.vue_vue_type_script_setup_true_lang-NvLEB-vb.js +2 -0
  35. package/dist/interface/assets/{VConsole-UsuKdCF6.js → VConsole-CZymGHU4.js} +1 -1
  36. package/dist/interface/assets/{VPlayer-BrBIxnlC.css → VPlayer-4vWU8KqJ.css} +1 -1
  37. package/dist/interface/assets/VPlayer-D_SuxyEf.js +1 -0
  38. package/dist/interface/assets/VPluginCard-B7FNMmgt.css +1 -0
  39. package/dist/interface/assets/VPluginCard-BVeId9fp.js +4 -0
  40. package/dist/interface/assets/main-BvNHUtMy.css +1 -0
  41. package/dist/interface/assets/{main-Bbvif0oi.js → main-f-Qd4R5M.js} +8 -8
  42. package/dist/interface/assets/{pinia-B42WbXFS.js → pinia-B_gX_pHL.js} +2 -2
  43. package/dist/interface/assets/{plugins-BVTgiMCC.js → plugins-X26db0mJ.js} +1 -1
  44. package/dist/interface/assets/{system-DzN6086S.js → system-CjiOVZ9H.js} +1 -1
  45. package/dist/interface/assets/{ui-s9WkyTXF.js → ui-DNIEL7pW.js} +1 -1
  46. package/dist/interface/assets/{v-calendar-DI1KYDXS.js → v-calendar-CbEkwI4D.js} +1 -1
  47. package/dist/interface/assets/{vee-validate-Bcyi_7NV.js → vee-validate-DHjm38DY.js} +1 -1
  48. package/dist/interface/assets/{vue-i18n-COBHesGQ.js → vue-i18n-Cyk5bTcs.js} +1 -1
  49. package/dist/interface/assets/{vue-inline-svg-Dk2QTAg8.js → vue-inline-svg-DDdr3aAz.js} +1 -1
  50. package/dist/interface/assets/{vue-router-C1SPCwo7.js → vue-router-C55prZ5l.js} +1 -1
  51. package/dist/interface/assets/{vue3-apexcharts-D1DBkA4f.js → vue3-apexcharts-BMpXn58Z.js} +1 -1
  52. package/dist/interface/assets/{vue3-dnd-CB0hw1gI.js → vue3-dnd-Dn4SH4Ex.js} +1 -1
  53. package/dist/interface/assets/{vue3-toastify-DSsDwESL.js → vue3-toastify-Cy6dUyKO.js} +1 -1
  54. package/dist/interface/assets/vuetify-B_vGZaGi.js +5 -0
  55. package/dist/interface/assets/{vuetify-CoMF_JkX.css → vuetify-DPyVfAPv.css} +1 -1
  56. package/dist/interface/index.html +15 -15
  57. package/dist/interface/sw.js +1 -1
  58. package/dist/server/package.json +2 -2
  59. package/dist/server/src/go2rtc/index.js +24 -13
  60. package/dist/server/src/go2rtc/index.js.map +1 -1
  61. package/dist/server/src/nats/messageQueue.js +1 -1
  62. package/dist/server/src/nats/messageQueue.js.map +1 -1
  63. package/dist/server/src/nats/proxy/cameraDevice.js +0 -1
  64. package/dist/server/src/nats/proxy/cameraDevice.js.map +1 -1
  65. package/dist/server/src/polyglot/python/plugins/message_queue.py +1 -1
  66. package/dist/server/src/services/config/index.js +1 -1
  67. package/dist/server/src/services/config/index.js.map +1 -1
  68. package/dist/server/src/utils/ffmpeg.js +2 -2
  69. package/dist/server/src/utils/ffmpeg.js.map +1 -1
  70. package/package.json +2 -2
  71. package/dist/interface/assets/Adminpanel-3UQD7k83.js +0 -2
  72. package/dist/interface/assets/Adminpanel-BVlDKLbx.css +0 -1
  73. package/dist/interface/assets/Cameras-C04Bv4eW.js +0 -1
  74. package/dist/interface/assets/Cameras-CW-HYbQa.css +0 -1
  75. package/dist/interface/assets/Camview-cHy9U5Au.js +0 -1
  76. package/dist/interface/assets/Config-BoMvRU2R.js +0 -1
  77. package/dist/interface/assets/Console-DdfiafPz.css +0 -1
  78. package/dist/interface/assets/Console-DpF86XdY.js +0 -4
  79. package/dist/interface/assets/NewCamera-DwPA4h8M.css +0 -1
  80. package/dist/interface/assets/Plugins-Ca9wwgSE.css +0 -1
  81. package/dist/interface/assets/Plugins-DreFX0ds.js +0 -1
  82. package/dist/interface/assets/Recordings-CWgcAA57.js +0 -1
  83. package/dist/interface/assets/Settings-BJ3dhoG6.js +0 -1
  84. package/dist/interface/assets/System-DkejFIOg.js +0 -4
  85. package/dist/interface/assets/VConfigEditor.vue_vue_type_script_setup_true_lang-C9bbpAse.js +0 -2
  86. package/dist/interface/assets/VPlayer-6KqHadcW.js +0 -1
  87. package/dist/interface/assets/VPluginCard-D4bre1hy.js +0 -4
  88. package/dist/interface/assets/VPluginCard-EcierHZ1.css +0 -1
  89. package/dist/interface/assets/main-CHMPMUzx.css +0 -1
  90. package/dist/interface/assets/vuetify-Bs5zynkb.js +0 -5
@@ -1 +0,0 @@
1
- import{F as ie,r as m,U as ma,e as n,f as M,j as w,M as i,R as l,V as B,T as y,u as e,q as le,t as fe,c as W,w as J,X as pe,O as E,Q as de,N as ve,aa as fa,l as O,an as pa,n as me,W as ga,i as Ve,m as Le,ai as wa,aj as _a}from"./@vue-CHoPEscU.js";import{J as Qe,K as ya,L as ha,s as xa,M as Oe,E as ba,F as Va,N as ka,O as Da,P as Ca,Q as $a,R as za,S as Ma,T as Pa,U as Sa,V as Fa,W as Ia}from"./@mdi-DdmeckA1.js";import{e as Y,b as ee,o as ze,G as ke,H as We,f as _e,V as Aa,c as Re,n as Be,I as Ta,J as Ea}from"./vuetify-Bs5zynkb.js";import{d as ce,f as De,s as ye,u as La,t as Ra,U as Ba,v as Ua,w as Qa}from"./main-Bbvif0oi.js";import{F as Ue,a as Oa}from"./vee-validate-Bcyi_7NV.js";import{_ as Se,u as je,C as Wa}from"./VPlayer-6KqHadcW.js";import{H as He}from"./react-dnd-html5-backend-1HQjlkwI.js";import{T as Ne}from"./react-dnd-touch-backend-NgACaG8W.js";import{u as Xe,a as Ye,D as qe}from"./vue3-dnd-CB0hw1gI.js";import{u as Ge}from"./ui-s9WkyTXF.js";import{s as Me}from"./pinia-B42WbXFS.js";import{m as Je,v as Ke,k as Ze,w as ea}from"./@vueuse-Ty7ydkJu.js";import"./vue-inline-svg-Dk2QTAg8.js";import"./vue3-toastify-DSsDwESL.js";import"./vue-i18n-COBHesGQ.js";import"./@intlify-Ck2ZoCVz.js";import"./axios-BI2i94Vb.js";import"./@tanstack-BRh6vUDU.js";import"./vue-router-C1SPCwo7.js";import"./@vee-validate-aIk5PQoc.js";import"./zod-BaF2dDCd.js";import"./uuid-DvF23Exx.js";import"./socket.io-client-Bq_SHkin.js";import"./engine.io-client-DBBxzneW.js";import"./engine.io-parser-BiEtp6m2.js";import"./@socket.io-Dkula2eQ.js";import"./socket.io-parser-BBkuslX-.js";import"./rxjs-CQrF441D.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-DI1KYDXS.js";import"./@popperjs-BQBsAJpH.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./qrcode-SHonoxyK.js";import"./dijkstrajs-D_NXgYpA.js";import"./plugins-BVTgiMCC.js";import"./draggabilly-YEGzHR3_.js";import"./get-size-D1dS-IaP.js";import"./unidragger-91TYirAP.js";import"./ev-emitter-t78oQA8k.js";import"./@react-dnd-CcwRs9xb.js";import"./dnd-core-SnWOpY0X.js";import"./redux-CuxFRhX_.js";import"./fast-deep-equal-Bs1__Kao.js";const ja={class:"mt-auto flex flex-col"},Ha={class:"relative flex flex-col items-center justify-center"},Na=ie({__name:"VAudioVisualizer",emits:["listening"],setup(j,{emit:L}){const H=L,z=m(),P=m(null),T=m(),f=m(!1),d=()=>{var o,s;(o=z.value)==null||o.close(),z.value=void 0,(s=T.value)==null||s.forEach(k=>k.stop()),T.value=void 0,f.value=!1,H("listening",!1)},b=(o,s,k,U,x,N)=>{const S=o.createLinearGradient(s,k,U,x);S.addColorStop(0,"#5b040f"),S.addColorStop(.5,"#b50b21"),S.addColorStop(.9,"#df2a4c"),S.addColorStop(1,"#df6380"),o.lineWidth=N,o.strokeStyle=S,o.beginPath(),o.moveTo(s,k),o.lineTo(U,x),o.stroke(),o.closePath()},V=async()=>{var o;if(f.value)d();else try{z.value&&d();let s;try{s=await navigator.mediaDevices.getUserMedia({audio:!0})}catch(C){console.warn("Can not enable AudioVisualizer",C);return}f.value=!0,H("listening",!0),z.value=new AudioContext;let k=z.value.createAnalyser();k.fftSize=1024,T.value=s.getTracks(),z.value.createMediaStreamSource(s).connect(k);const x=90;let N=3,S;const D=(o=P.value)==null?void 0:o.getContext("2d"),X=()=>{if(P.value&&D){const C=[],A=[];D.clearRect(0,0,P.value.width,P.value.height),requestAnimationFrame(X);let r=k.frequencyBinCount,h=new Uint8Array(r);k.getByteFrequencyData(h),C.push(h);for(let v=0;v<C[0].length;v++)A.push(0),C.forEach(F=>{A[v]+=F[v]});const p=P.value.width/2,u=P.value.height/2,_=30;D.beginPath(),D.arc(p,u,_,0,2*Math.PI),D.lineWidth=1,D.stroke(),D.closePath();for(let v=0;v<x;v++){S=A[v]*.4;let F=Math.PI*2/x,K=p+Math.cos(F*v)*_,q=u+Math.sin(F*v)*_,re=p+Math.cos(F*v)*(_+S),he=u+Math.sin(F*v)*(_+S);b(D,K,q,re,he,N)}f.value||D.clearRect(0,0,P.value.width,P.value.height)}};X()}catch(s){d(),console.error(s)}};return ma(()=>{d()}),(o,s)=>(n(),M("div",ja,[w("div",Ha,[i(ee,{class:"mic-button",variant:"elevated",color:"white",icon:"",size:"60",onClick:le(V,["prevent"])},{default:l(()=>[i(Y,{size:"35"},{default:l(()=>[B(y(e(Qe)),1)]),_:1})]),_:1}),w("canvas",{ref_key:"canvas",ref:P,height:"300",width:"300"},null,512)])]))}}),Xa=ce(Na,[["__scopeId","data-v-5c30fb5d"]]),Ya=["data-handler-id"],qa=ie({__name:"VDnDCard",props:{id:{},index:{},camera:{},moveCard:{type:Function}},setup(j,{expose:L}){const H=Ge(),z=j,{camera:P}=fe(z),{uiSettings:T}=Me(H),f=m(),d=m(),b=m(null);let V=null,o=0,s=0;const k=W(()=>T.value.camview.dragDisabled===!1),{x:U,y:x,sourceType:N}=Je(),{top:S,left:D}=Ke(b),[X,C]=Xe({accept:"camera",collect($){return{handlerId:$.getHandlerId()}},hover($,ae){var be;if(!f.value)return;const te=$.index,ne=z.index;if(te===ne)return;const ge=(be=f.value)==null?void 0:be.getBoundingClientRect(),xe=(ge.bottom-ge.top)/2,oe=ae.getClientOffset().y-ge.top;te<ne&&oe<xe||te>ne&&oe>xe||(z.moveCard(te,ne),$.index=ne)}}),[A,r]=Ye({type:"camera",canDrag(){return k.value},item:()=>({id:z.id,index:z.index}),collect:$=>({isDragging:$.isDragging()})}),{handlerId:h}=fe(X.value),p=W(()=>A.value.isDragging),u=W(()=>p.value&&N.value==="touch"),_=W(()=>e(p)?0:1);J(u,$=>{$?(V=v(),o=U.value-D.value,s=x.value-S.value):(K(V),V=null)}),J([U,x],()=>{F(V,o,s)});const v=()=>{if(b.value){const $=b.value.cloneNode(!0);return $.classList.add("drag-preview"),document.body.appendChild($),$}return null},F=($,ae,te)=>{$&&($.style.left=`${U.value-ae}px`,$.style.top=`${x.value-te}px`)},K=$=>{$&&document.body.removeChild($)},q=$=>{f.value=r(C($))};return L({togglePlayerMute:$=>{var ae;(ae=d.value)==null||ae.toggleMute($)},toggleMicrophone:async($,ae)=>{var te;await((te=d.value)==null?void 0:te.toggleMicrophone($,ae))}}),($,ae)=>(n(),M("div",{ref_key:"boxEl",ref:b},[w("div",{ref:q,class:"camera-card",style:pe({opacity:e(_),color:"#000",cursor:e(T).camview.dragDisabled?"default":"grab"}),"data-handler-id":e(h)},[i(Se,{ref_key:"playerRef",ref:d,"current-camera":e(P).name,"border-radius":0,target:"stream","show-camera-name":"","enable-control":"","auto-hide-control":"","source-role":"low-resolution","show-mode":!1},null,8,["current-camera"])],12,Ya)],512))}}),Ga=ce(qa,[["__scopeId","data-v-a157f34a"]]),Ja={class:"conference"},Ka=ie({__name:"VDnD",props:{cameras:{},dbCameras:{}},emits:["drag"],setup(j,{expose:L,emit:H}){const{isTouch:z}=je(),{smallMobileActive:P}=De(),T=H,f=j,{cameras:d,dbCameras:b}=fe(f),V=m(null),o=m(null),s=m("16:9"),k=m(2),U=Ze(o),x=m([]),N=m(),{isFullscreen:S,toggle:D}=ea(V);J(d,u=>{x.value=ye(u).sort((_,v)=>_.index-v.index)},{immediate:!0,deep:!0});const X=(u,_)=>{const v=x.value[u];x.value.splice(u,1),x.value.splice(_,0,v),x.value=x.value.map((F,K)=>(F.index=K,F)).sort((F,K)=>F.index-K.index),T("drag",x.value)},C=u=>{const _=U.height.value-k.value*2,v=U.width.value-k.value*2,F=parseInt(s.value.split(":")[1])/parseInt(s.value.split(":")[0]);let K=0,q=0,re=u*F+k.value*2;for(;K<x.value.length;)q+u>v&&(q=0,re=re+u*F+k.value*2),q=q+u+k.value*2,K++;return re>_||u>v?!1:u},A=W(()=>{if(P.value)return"100%";let u=0,_=1;for(;_<5e3;){if(C(_)===!1){u=_-1;break}_++}return u=u-k.value,`${u}px`});return L({toggleFullscreen:async()=>{await D()},togglePlayerMute:u=>{for(const _ of N.value||[])_.togglePlayerMute(u)},togglePlayerMicrophone:async(u,_)=>{for(const v of N.value||[])await v.toggleMicrophone(u,_)},isFullscreen:S,selectedCameras:x}),(u,_)=>(n(),E(e(qe),{backend:e(z)?e(Ne):e(He)},{default:l(()=>[w("div",{ref_key:"cameraDnd",ref:V,class:"scenary"},[w("div",Ja,[i(fa,{ref_key:"dishEl",ref:o,name:"list",tag:"div",class:"dish"},{default:l(()=>[(n(!0),M(ve,null,de(e(x),(v,F)=>(n(),E(Ga,{id:v.cameraId,ref_for:!0,ref_key:"dndCards",ref:N,key:v.cameraId,index:F,camera:e(b).find(K=>K._id===v.cameraId),"move-card":X,style:pe({width:e(A)})},null,8,["id","index","camera","style"]))),128))]),_:1},512)])],512)]),_:1},8,["backend"]))}}),Za=ce(Ka,[["__scopeId","data-v-c22c99a6"]]),et={class:"camera-snapshot"},at={class:"camera-info flex flex-row items-center"},tt={class:"text-passive truncate"},st=ie({__name:"VViewDrag",props:{camera:{},isDropped:{type:Boolean},canDrag:{type:Boolean}},setup(j){const L=j,{isDropped:H,camera:z,canDrag:P}=fe(L),T=m(null);let f=null,d=0,b=0;const{x:V,y:o,sourceType:s}=Je(),{top:k,left:U}=Ke(T),[x,N]=Ye(()=>({type:"camera",options:{dropEffect:"copy"},item:z.value,canDrag:P.value,collect:r=>({style:{opacity:r.isDragging()?.4:1},isDragging:r.isDragging()})})),S=W(()=>x.value.isDragging),D=W(()=>S.value&&s.value==="touch");J(D,r=>{r?(f=X(),d=V.value-U.value,b=o.value-k.value):(A(f),f=null)}),J([V,o],()=>{C(f,d,b)});const X=()=>{if(T.value){const r=T.value.cloneNode(!0);return r.classList.add("drag-preview"),document.body.appendChild(r),r}return null},C=(r,h,p)=>{r&&(r.style.left=`${V.value-h}px`,r.style.top=`${o.value-p}px`)},A=r=>{r&&document.body.removeChild(r)};return(r,h)=>{const p=Se;return n(),M("div",{ref_key:"boxEl",ref:T},[w("div",{ref:e(N),style:pe({...e(x).style,cursor:e(H)?"default":"grab"}),class:"drag-box p-2 flex flex-row items-center relative"},[i(Y,{size:"20",class:"text-passive mr-2"},{default:l(()=>[B(y(e(ya)),1)]),_:1}),w("div",et,[i(p,{"current-camera":e(z).name,"border-radius":6,target:"snapshot","show-mode":!1},null,8,["current-camera"])]),w("div",at,[w("span",tt,y(e(z).name),1),e(H)?(n(),E(Y,{key:0,size:"25",class:"ml-auto text-green mr-4"},{default:l(()=>[B(y(e(ha)),1)]),_:1})):O("",!0)])],4)],512)}}}),lt=ce(st,[["__scopeId","data-v-7dfa63f3"]]),Pe={WIDTH:400},ot={class:"camera-view-edit flex flex-col p-2"},rt={class:"mb-4 text-lg"},nt={class:"text-passive mb-5 mt-5"},it={class:"camera-container py-3"},ct=ie({__name:"VViewSidebar",props:{cameras:{},droppedCameras:{},title:{}},setup(j){pa(b=>({"7ea40162":e(T)}));const L=j,{cameras:H,droppedCameras:z,title:P}=fe(L),T=m(`${Pe.WIDTH}px`),f=m(!1),d=b=>z.value.some(V=>V.name===b.name);return(b,V)=>{const o=lt;return n(),M("div",ot,[w("b",rt,y(e(P)),1),w("span",nt,y(b.$t("components.view_box.available_streams")),1),w("div",it,[(n(!0),M(ve,null,de(e(H),(s,k)=>(n(),M("div",{key:k,class:"mb-4"},[i(o,{camera:s,"is-dropped":d(s),"can-drag":!d(s),class:me({shake:e(f)})},null,8,["camera","is-dropped","can-drag","class"])]))),128))])])}}}),ut=ce(ct,[["__scopeId","data-v-420802a2"]]),dt={key:0,class:"overlay-button-text truncate",color:"#fff"},vt={key:1,class:"w-full h-full flex items-center justify-center"},mt=ie({__name:"VViewCard",props:{lastDroppedCamera:{},editMode:{type:Boolean},cameras:{},droppedCameras:{},onDrop:{type:Function}},emits:["drop","remove"],setup(j,{expose:L,emit:H}){const{desktopActive:z}=De(),P=H,T=j,{lastDroppedCamera:f,editMode:d,cameras:b,droppedCameras:V}=fe(T),o=m(null),s=m(),{width:k}=Ze(o),[U,x]=Xe({accept:"camera",drop:T.onDrop,collect:h=>({isOver:h.isOver(),canDrop:h.canDrop()&&f.value===void 0}),canDrop:()=>f.value===void 0}),N=W(()=>U.value.canDrop&&U.value.isOver),S=W(()=>d.value?N.value?"#171717":"#202020":"#000"),D=W(()=>k.value<=200),X=W(()=>b.value.filter(h=>!C(h))),C=h=>V.value.some(p=>p.name===h.name);return L({togglePlayerMute:h=>{var p;(p=s.value)==null||p.toggleMute(h)},toggleMicrophone:async(h,p)=>{var u;await((u=s.value)==null?void 0:u.toggleMicrophone(h,p))}}),(h,p)=>(n(),M("div",{ref:e(x),style:pe({backgroundColor:e(S)}),class:"overflow-hidden"},[e(f)?(n(),M("div",{key:0,ref_key:"container",ref:o,class:"w-full h-full flex items-center justify-center relative"},[e(d)?(n(),E(ee,{key:0,icon:e(D),size:e(D)?32:void 0,class:"overlay-button flex items-center justify-center",color:"#df2a4c",onClick:p[0]||(p[0]=le(u=>P("remove",e(f)),["prevent"]))},{default:l(()=>[i(Y,{size:"18"},{default:l(()=>[B(y(e(xa)),1)]),_:1}),e(D)?O("",!0):(n(),M("span",dt,y(e(f).name),1))]),_:1},8,["icon","size"])):O("",!0),i(ga,{name:"fade",mode:"in-out"},{default:l(()=>[e(f)?(n(),E(Se,{key:0,ref_key:"playerRef",ref:s,class:me({"camera-overlay":e(d)}),"current-camera":e(f).name,"border-radius":0,target:e(d)?"snapshot":"stream",style:pe({opacity:e(d)?.2:1}),"show-camera-name":!e(d),"enable-control":!e(d),"auto-hide-control":"","source-role":"low-resolution","show-mode":!1},null,8,["class","current-camera","target","style","show-camera-name","enable-control"])):O("",!0)]),_:1})],512)):!e(z)&&e(d)?(n(),M("div",vt,[i(ee,{icon:"",size:"32",color:"#df2a4c"},{default:l(()=>[i(Y,{size:"18",color:"#ffff"},{default:l(()=>[B(y(e(Oe)),1)]),_:1}),i(ze,{activator:"parent",class:"select-menu"},{default:l(()=>[i(ke,{"onClick:select":p[1]||(p[1]=u=>P("drop",u.id))},{default:l(()=>[(n(!0),M(ve,null,de(e(X),(u,_)=>(n(),E(_e,{key:_,value:u},{default:l(()=>[i(We,null,{default:l(()=>[B(y(u.name),1)]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1})])):O("",!0)],4))}}),ft=ce(mt,[["__scopeId","data-v-5b755b3b"]]),pt=ie({__name:"VView",props:{cameras:{},viewSize:{},cards:{},title:{},editMode:{type:Boolean,default:!1}},emits:["drop","remove"],setup(j,{expose:L,emit:H}){const{isTouch:z}=je(),{desktopActive:P}=De(),T=H,f=j,{cameras:d,editMode:b,viewSize:V,cards:o,title:s}=fe(f),k=m(null),U=m(`${Pe.WIDTH}px`),x=m(),{isFullscreen:N,toggle:S}=ea(k),D=W(()=>o.value.filter(r=>r.lastDroppedCamera).map(r=>r.lastDroppedCamera));return L({toggleFullscreen:async()=>{await S()},togglePlayerMute:r=>{for(const h of x.value||[])h.togglePlayerMute(r)},togglePlayerMicrophone:async(r,h)=>{for(const p of x.value||[])await p.toggleMicrophone(r,h)},isFullscreen:N}),(r,h)=>{const p=ut;return n(),E(e(qe),{backend:e(z)?e(Ne):e(He)},{default:l(()=>[w("div",{ref_key:"cameraView",ref:k,class:"view-container flex items-center mx-2",style:pe({width:e(b)&&e(P)?`calc(100% - ${e(U)})`:void 0})},[w("div",{class:me(`view-wrap w-full camera-view-${e(V)}`)},[(n(!0),M(ve,null,de(e(o),(u,_)=>(n(),E(ft,{ref_for:!0,ref_key:"dragContainer",ref:x,key:_,class:me(`div${_+1}-${e(V)}`),"last-dropped-camera":u.lastDroppedCamera,cameras:e(d),"dropped-cameras":e(D),"edit-mode":e(b),onDrop:v=>T("drop",_,v),onRemove:h[0]||(h[0]=v=>T("remove",v))},null,8,["class","last-dropped-camera","cameras","dropped-cameras","edit-mode","onDrop"]))),128))],2)],4),e(b)&&e(P)?(n(),E(p,{key:0,cameras:e(d),"dropped-cameras":e(D),title:e(s),class:"view-box",style:pe({"margin-right":e(b)?"0px":`-${e(Pe).WIDTH}px`})},null,8,["cameras","dropped-cameras","title","style"])):O("",!0)]),_:1},8,["backend"])}}}),gt=ce(pt,[["__scopeId","data-v-8ef83e91"]]),wt=j=>(wa("data-v-1a4d7341"),j=j(),_a(),j),_t=["data-inside-id"],yt={class:"camview-topbar p-2 flex flex-row items-center"},ht={class:"flex w-full justify-start items-center"},xt={class:"camview-title truncate"},bt={class:"flex w-full justify-start items-center"},Vt={class:"camview-title truncate"},kt=wt(()=>w("div",{class:"ml-auto"},null,-1)),Dt={class:"w-full flex flex-row items-center"},Ct={class:"w-full flex flex-row items-center"},$t={key:9,class:"flex flex-row items-center"},zt={class:"text-white"},Mt={class:"h-full w-full inline-size mb-safe"},Pt={key:0,class:"h-full w-full flex items-center justify-center"},St={key:1,class:"w-full h-full"},Ft={key:0,class:"w-full h-full relative"},It={key:1,class:"w-full h-full flex flex-row"},At={key:2,class:"flex flex-col items-center justify-center w-full h-full"},Tt={class:"mt-5",style:{color:"#525252"}},Et={class:"flex flex-col h-full w-full"},Lt={class:"relative"},Rt={for:"name",class:"v-label"},Bt={key:0,class:"text-red text-center mb-5"},Ut={class:"view-scroll-container"},Qt={class:"view-select-container"},Ot=["onClick"],Wt={class:"flex flex-col h-full w-full"},jt={class:"relative"},Ht={for:"name",class:"v-label"},Nt={key:0,class:"text-red text-center mb-5"},Xt={class:"flex flex-col"},Yt=ie({__name:"Camview",setup(j){var Fe;const L=new Ba,H=new Wa,{smallMobileActive:z}=De(),P=La(),T=Ge(),{uiSettings:f}=Me(T),{loginState:d}=Me(P),b=m(),V=m(),o=m(),s=m({}),k=m(!1),U=m(Ra()),x=m({page:1,pageSize:-1}),N=m([1,4,6,7,9,10,12,13,15,16,20,26]),S=m(!1),D=m(!1),X=m(!0),C=m(!1),A=m(!1),r=m(!1),h=m(!1),p=m(!1),u=m(!1),_=m([]),v=m([]),{data:F,isLoading:K}=H.getCamerasQuery(x),{data:q,isLoading:re}=L.getViewsQuery(((Fe=d.value.user)==null?void 0:Fe.username)||"",x),{mutate:he,isPending:$}=L.removeViewQuery(),{mutateAsync:ae,isPending:te}=L.createViewQuery(),{mutateAsync:ne,isPending:ge}=L.patchViewQuery(),{mutateAsync:xe}=L.patchViewQuerySilent(),se=W(()=>C.value||r.value||A.value),oe=W(()=>K.value||re.value||$.value||te.value||ge.value),be=W(()=>{var t,a;return((t=V.value)==null?void 0:t.isFullscreen)||((a=V.value)==null?void 0:a.isFullscreen)||!1}),aa=W(()=>navigator.mediaDevices!==void 0),I=W(()=>{var a,g;const t=((a=q.value)==null?void 0:a.result.find(R=>R._id===f.value.camview.viewid))||((g=q.value)==null?void 0:g.result[0]);return t?(s.value=t,f.value.camview.viewid=t._id):s.value={},t}),Ce=W(()=>se.value&&s.value.viewSize>0?s.value.viewSize:I.value?I.value.viewSize:1);J(d,t=>{L.toggleQueryActivator("getUserQuery",t!==null)}),J([Ce,I,F,se,f],()=>{var a,g,R;if(((a=I.value)==null?void 0:a.type)==="dnd"&&!C.value&&!r.value)return;const t=Array.from({length:Ce.value}).map((Q,Z)=>({accept:"camera",index:Z,lastDroppedCamera:void 0}));if(!r.value&&!h.value)for(const Q of((g=I.value)==null?void 0:g.cameras)||[])t[Q.index].lastDroppedCamera=(R=F.value)==null?void 0:R.result.find(Z=>Z._id===Q.cameraId);_.value=t},{deep:!0,immediate:!0}),J(s,t=>{var a,g,R;if(Object.keys(t).length===0)(a=o.value)==null||a.resetForm(),S.value=!1,D.value=!1;else{for(const[Q,Z]of Object.entries(t))(g=o.value)==null||g.setFieldValue(Q,Z);t.viewSize&&(S.value=!1),(R=t.cameras)!=null&&R.length&&(D.value=!1)}},{deep:!0}),J([h,r],([t,a])=>{(!t&&!a||t)&&(s.value={},S.value=!1)}),J([p,A],()=>{A.value||(v.value=[],s.value={},D.value=!1)}),J(p,t=>{t||(A.value=!1)}),J(A,t=>{var a;t?(v.value=((a=F.value)==null?void 0:a.result.filter(g=>{var R;return(R=I.value)==null?void 0:R.cameras.some(Q=>Q.cameraId===g._id)}))||[],p.value=!0):(v.value=[],p.value=!1)}),J(v,t=>{t.length&&(D.value=!1)}),J(se,t=>{t&&I.value&&!r.value&&(s.value=ye(I.value))}),J(d,t=>{t.user?L.toggleQueryActivator("getUserQuery",!0):L.toggleQueryActivator("getUserQuery",!1)},{immediate:!0,deep:!0});const ta=async t=>{if(!I.value||!d.value.user)return;const a=ye(I.value);a.cameras=t;const g=await xe({username:d.value.user.username,viewid:a._id,viewData:a});we(g)},sa=(t,a)=>{_.value[t].lastDroppedCamera=a},la=t=>{_.value=_.value.map(a=>{var g;return((g=a.lastDroppedCamera)==null?void 0:g.name)===t.name&&(a.lastDroppedCamera=void 0),a})},oa=async()=>{var g;if(!o.value||!d.value.user)return;const t=v.value.map((R,Q)=>({cameraId:R._id,index:Q}));s.value.cameras=t,s.value.type="dnd",s.value.viewSize=1,o.value.setFieldValue("type","dnd"),o.value.setFieldValue("viewSize",1),o.value.setFieldValue("cameras",t);const a=await o.value.validate();if(a){if(((g=q.value)==null?void 0:g.result.find(Z=>Z.name===s.value.name))&&!A.value){o.value.setFieldError("name","View already exists");return}if(t.length===0){D.value=!0;return}if(!a.valid)return;const Q=ye(s.value);if(Q._id){const Z=await ne({username:d.value.user.username,viewid:Q._id,viewData:Q});we(Z)}else{const Z=await ae({username:d.value.user.username,viewData:Q});we(Z)}p.value=!1}},ra=async()=>{var a,g;if(!o.value)return;s.value.cameras=[],s.value.type="view",o.value.setFieldValue("type","view"),o.value.setFieldValue("cameras",[]);const t=await o.value.validate();if(t){if((a=q.value)==null?void 0:a.result.find(Q=>Q.name===s.value.name)){o.value.setFieldError("name","View already exists");return}if(!t.valid){((g=t.results.viewSize)==null?void 0:g.valid)===!1&&(S.value=!0);return}h.value=!1,r.value=!0}},na=async()=>{if(!o.value||!d.value.user||Object.keys(s.value).length===0)return;const t=_.value.filter(g=>g.lastDroppedCamera).map(g=>({cameraId:g.lastDroppedCamera._id,index:g.index})).sort((g,R)=>g.index-R.index);if(!t.length)return;o.value.setFieldValue("name",s.value.name),o.value.setFieldValue("cameras",t);const a=await o.value.validate();if(a!=null&&a.valid){const g=ye(s.value);if(g.cameras=t,g._id){const R=await ne({username:d.value.user.username,viewid:g._id,viewData:g});we(R)}else{const R=await ae({username:d.value.user.username,viewData:g});we(R)}}},we=t=>{f.value.camview.viewid=t._id,h.value=!1,p.value=!1,r.value=!1,C.value=!1},ia=()=>{!I.value||!d.value.user||he({username:d.value.user.username,viewid:I.value._id},{onSuccess:t=>{t.length?f.value.camview.viewid=t[0]._id:f.value.camview.viewid=void 0}})},ca=t=>{f.value.camview.viewid=t._id},ua=async()=>{V.value?await V.value.toggleFullscreen():b.value&&await b.value.toggleFullscreen()},da=()=>{X.value=!X.value,V.value?V.value.togglePlayerMute(X.value):b.value&&b.value.togglePlayerMute(X.value)},va=async t=>{V.value?await V.value.togglePlayerMicrophone(t):b.value&&await b.value.togglePlayerMicrophone(t)};return(t,a)=>{const g=Qa,R=Xa;return n(),M("main",{class:"w-full h-full",style:{padding:"0 !important"},"data-inside-id":e(U)},[i(e(Oa),{ref_key:"viewVeeForm",ref:o,class:"h-full w-full","validation-schema":e(Ua),"initial-values":e(s)},{default:l(()=>{var Q,Z,Ie,Ae,Te,Ee;return[w("div",yt,[!e(r)&&e(I)?(n(),E(ee,{key:0,size:"small",variant:"flat",style:{background:"rgba(var(--color-rgb), 0.1)","padding-left":"8px"}},{default:l(()=>[w("div",ht,[e(se)?O("",!0):(n(),E(Y,{key:0,size:"18",class:"text-color mr-1"},{default:l(()=>[B(y(e(k)?e(ba):e(Va)),1)]),_:1})),w("span",xt,y(e(I).name),1)]),e(se)?O("",!0):(n(),E(ze,{key:0,activator:"parent",width:"324",offset:"5",location:"bottom",class:"select-menu","onUpdate:modelValue":a[1]||(a[1]=c=>k.value=c)},{default:l(()=>[i(ke,{density:"compact","onClick:select":a[0]||(a[0]=c=>ca(c.id))},{default:l(()=>{var c;return[(n(!0),M(ve,null,de(((c=e(q))==null?void 0:c.result)||[],(G,ue)=>(n(),E(_e,{key:ue,active:G._id===e(I)._id,value:G},{default:l(()=>[B(y(G.name),1)]),_:2},1032,["active","value"]))),128))]}),_:1})]),_:1}))]),_:1})):e(r)&&e(s).name?(n(),E(ee,{key:1,size:"small",variant:"flat",style:{background:"rgba(var(--color-rgb), 0.1)","padding-left":"8px"}},{default:l(()=>[w("div",bt,[w("span",Vt,y(e(s).name),1)])]),_:1})):O("",!0),kt,!e(se)&&((Q=e(I))==null?void 0:Q.type)==="dnd"?(n(),E(ee,{key:2,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:a[2]||(a[2]=le(c=>e(f).camview.dragDisabled=!e(f).camview.dragDisabled,["prevent"]))},{default:l(()=>[i(Y,{size:"18"},{default:l(()=>[B(y(e(f).camview.dragDisabled?e(ka):e(Da)),1)]),_:1})]),_:1})):O("",!0),!e(se)&&e(I)?(n(),E(ee,{key:3,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:a[3]||(a[3]=le(c=>da(),["prevent"]))},{default:l(()=>[i(Y,{size:"22"},{default:l(()=>[B(y(e(X)?e(Ca):e($a)),1)]),_:1})]),_:1})):O("",!0),!e(se)&&e(I)&&e(aa)?(n(),E(ee,{key:4,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:a[4]||(a[4]=le(c=>u.value=!0,["prevent"]))},{default:l(()=>[i(Y,{size:"22"},{default:l(()=>[B(y(e(Qe)),1)]),_:1})]),_:1})):O("",!0),!e(se)&&e(I)?(n(),E(ee,{key:5,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:a[5]||(a[5]=le(c=>ua(),["prevent"]))},{default:l(()=>[i(Y,{size:"22"},{default:l(()=>[B(y(e(be)?e(za):e(Ma)),1)]),_:1})]),_:1})):O("",!0),!e(se)&&e(I)?(n(),E(ee,{key:6,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:a[6]||(a[6]=le(c=>ia(),["prevent"]))},{default:l(()=>[i(Y,{size:"20"},{default:l(()=>[B(y(e(Pa)),1)]),_:1})]),_:1})):O("",!0),!e(A)&&!e(C)&&!e(r)&&e(I)?(n(),E(ee,{key:7,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:a[7]||(a[7]=le(c=>{var G;return((G=e(I))==null?void 0:G.type)==="dnd"?A.value=!e(A):C.value=!e(C)},["prevent"]))},{default:l(()=>[i(Y,{size:"19"},{default:l(()=>[B(y(e(Sa)),1)]),_:1})]),_:1})):O("",!0),!e(A)&&!e(C)&&!e(r)?(n(),E(ee,{key:8,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text"},{default:l(()=>[i(Y,{size:"22"},{default:l(()=>[B(y(e(Oe)),1)]),_:1}),i(ze,{activator:"parent",offset:"5",location:"bottom",class:"select-menu"},{default:l(()=>[i(ke,{density:"compact","onClick:select":a[8]||(a[8]=c=>c.id==="view"?h.value=!0:p.value=!0)},{default:l(()=>[i(_e,{value:"view"},{default:l(()=>[w("div",Dt,[i(Y,{size:"18",class:"mr-2"},{default:l(()=>[B(y(e(Fa)),1)]),_:1}),B(" "+y(t.$t("views.camview.new_view")),1)])]),_:1}),i(_e,{value:"dnd"},{default:l(()=>[w("div",Ct,[i(Y,{size:"18",class:"mr-2"},{default:l(()=>[B(y(e(Ia)),1)]),_:1}),B(" "+y(t.$t("views.camview.new_dnd")),1)])]),_:1})]),_:1})]),_:1})]),_:1})):O("",!0),e(C)||e(r)?(n(),M("div",$t,[i(ee,{class:"disabled-text mr-2",size:"small",variant:"flat",border:"",onClick:a[9]||(a[9]=le(c=>e(C)?C.value=!1:r.value=!1,["prevent"]))},{default:l(()=>[B(y(t.$t("components.form.button.cancel")),1)]),_:1}),i(ee,{disabled:e(_).every(c=>c.lastDroppedCamera===void 0),class:"disabled-text",size:"small",color:"#df2a4c",variant:"flat",border:"",onClick:a[10]||(a[10]=le(c=>na(),["prevent"]))},{default:l(()=>[w("span",zt,y(t.$t("components.form.button.save")),1)]),_:1},8,["disabled"])])):O("",!0)]),w("div",{class:me(["camview-container",{"px-0":e(z)}])},[w("div",Mt,[e(oe)||!e(q)?(n(),M("div",Pt,[i(Aa,{color:"#df2a4c",indeterminate:""})])):(n(),M("div",St,[!e(r)&&!e(C)&&(e(A)||((Z=e(I))==null?void 0:Z.type)==="dnd")?(n(),M("div",Ft,[i(Za,{ref_key:"dndRef",ref:b,cameras:((Ie=e(I))==null?void 0:Ie.cameras)||[],"db-cameras":((Ae=e(F))==null?void 0:Ae.result)||[],onDrag:ta},null,8,["cameras","db-cameras"])])):!e(A)&&(e(r)||e(C)||((Te=e(I))==null?void 0:Te.type)==="view")?(n(),M("div",It,[(n(),E(gt,{ref_key:"viewRef",ref:V,key:e(f).camview.viewid+(e(r)?"-new":e(C)?"-edit":"-view"),cameras:((Ee=e(F))==null?void 0:Ee.result)||[],"edit-mode":e(r)||e(C),"view-size":e(r)?e(s).viewSize:e(Ce),title:e(s).name,cards:e(_),onDrop:sa,onRemove:la},null,8,["cameras","edit-mode","view-size","title","cards"]))])):(n(),M("div",At,[w("span",Tt,y(t.$t("views.camview.no_views_configured")),1)]))]))])],2),i(g,{modelValue:e(h),"onUpdate:modelValue":a[12]||(a[12]=c=>Ve(h)?h.value=c:null),title:t.$t("components.dialog.title.new_view"),"confirm-text":"components.form.button.next",loading:e(oe),onConfirm:a[13]||(a[13]=c=>ra())},{content:l(()=>[w("div",Et,[w("div",Lt,[i(e(Ue),{modelValue:e(s).name,"onUpdate:modelValue":a[11]||(a[11]=c=>e(s).name=c),name:"name"},{default:l(({field:c,errorMessage:G,errors:ue})=>[w("label",Rt,y(t.$t("components.form.label.name")),1),i(Re,Le({loading:e(oe),variant:"outlined",name:"name",type:"text",density:"compact"},c,{error:ue.length>0,"error-messages":G}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),i(Be,{class:"my-5"}),e(S)?(n(),M("span",Bt,y(t.$t("components.form.error.no_view_selected")),1)):O("",!0),w("div",Ut,[w("div",Qt,[(n(!0),M(ve,null,de(e(N),c=>(n(),M("div",{key:c,class:"view-select-item h-full w-full",onClick:le(G=>e(s).viewSize=c,["prevent"])},[w("div",{class:me(["view-select-item-icon w-full h-full p-3",{"selected-view":e(s).viewSize===c}])},[i(Y,{class:"disabled-text",style:{width:"100%",height:"100%"}},{default:l(()=>[B(y(`$cuiGrid${c}`),1)]),_:2},1024)],2),w("span",{class:me(["view-select-item-label disabled-text mt-2 px-2 py-1",{"selected-view-label":e(s).viewSize===c}])},y(c)+" "+y(t.$t("views.camview.cameras")),3)],8,Ot))),128))])])])]),_:1},8,["modelValue","title","loading"]),i(g,{modelValue:e(p),"onUpdate:modelValue":a[16]||(a[16]=c=>Ve(p)?p.value=c:null),title:t.$t("components.dialog.title.new_dnd"),"confirm-text":"components.form.button.save",loading:e(oe),onConfirm:a[17]||(a[17]=c=>oa())},{content:l(()=>[w("div",Wt,[w("div",jt,[i(e(Ue),{modelValue:e(s).name,"onUpdate:modelValue":a[14]||(a[14]=c=>e(s).name=c),name:"name"},{default:l(({field:c,errorMessage:G,errors:ue})=>[w("label",Ht,y(t.$t("components.form.label.name")),1),i(Re,Le({loading:e(oe),variant:"outlined",name:"name",type:"text",density:"compact"},c,{error:ue.length>0,"error-messages":G}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),i(Be,{class:"mb-10 mt-5"}),e(D)?(n(),M("span",Nt,y(t.$t("components.form.error.no_cameras_selected")),1)):O("",!0),i(ke,{selected:e(v),"onUpdate:selected":a[15]||(a[15]=c=>Ve(v)?v.value=c:null),"select-strategy":"classic",class:"py-0 mb-5",density:"compact"},{default:l(()=>{var c;return[(n(!0),M(ve,null,de(((c=e(F))==null?void 0:c.result)||[],(G,ue)=>(n(),E(_e,{key:ue,value:G,active:e(v).some($e=>$e.name===G.name)},{prepend:l(({isActive:$e})=>[i(Ta,{start:""},{default:l(()=>[i(Ea,{"model-value":$e,color:"#df2a4c"},null,8,["model-value"])]),_:2},1024)]),default:l(()=>[i(We,null,{default:l(()=>[B(y(G.name),1)]),_:2},1024)]),_:2},1032,["value","active"]))),128))]}),_:1},8,["selected"])])]),_:1},8,["modelValue","title","loading"]),i(g,{modelValue:e(u),"onUpdate:modelValue":a[18]||(a[18]=c=>Ve(u)?u.value=c:null),title:t.$t("components.dialog.title.intercom"),loading:e(oe),"hide-confirm-button":""},{content:l(()=>[w("div",Xt,[w("span",null,y(t.$t("components.dialog.message.intercom_info")),1),i(R,{onListening:va})])]),_:1},8,["modelValue","title","loading"])]}),_:1},8,["validation-schema","initial-values"])],8,_t)}}}),Bs=ce(Yt,[["__scopeId","data-v-1a4d7341"]]);export{Bs as default};
@@ -1 +0,0 @@
1
- var se=Object.defineProperty;var ie=(n,t,o)=>t in n?se(n,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):n[t]=o;var R=(n,t,o)=>ie(n,typeof t!="symbol"?t+"":t,o);import{i as Q,x as C,a as re,f as ce,y as le,w as ue,B as me,d as fe}from"./main-Bbvif0oi.js";import{_ as de}from"./VConfigEditor.vue_vue_type_script_setup_true_lang-C9bbpAse.js";import{r as l,u as e,F as ge,c as I,w as K,x as pe,e as c,f as O,O as g,M as s,l as ye,ae as Ce,j,R as a,X as _e,ar as ve,i as F,m as he,V as p,T as f,q as V,g as P,v as E}from"./@vue-CHoPEscU.js";import{_ as be,$ as we,I as Qe,H as Ve}from"./@mdi-DdmeckA1.js";import{i as x}from"./vue3-toastify-DSsDwESL.js";import{u as xe,a as N,b as k}from"./@tanstack-BRh6vUDU.js";import{r as ke}from"./system-DzN6086S.js";import{u as qe}from"./ui-s9WkyTXF.js";import{s as ze}from"./utils-BvINh1mj.js";import{s as U}from"./pinia-B42WbXFS.js";import{P as Se,Q as Re,e as y,b as q}from"./vuetify-Bs5zynkb.js";import"./vue-inline-svg-Dk2QTAg8.js";import"./vue-i18n-COBHesGQ.js";import"./@intlify-Ck2ZoCVz.js";import"./axios-BI2i94Vb.js";import"./vue-router-C1SPCwo7.js";import"./@vueuse-Ty7ydkJu.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./vee-validate-Bcyi_7NV.js";import"./@vee-validate-aIk5PQoc.js";import"./zod-BaF2dDCd.js";import"./uuid-DvF23Exx.js";import"./socket.io-client-Bq_SHkin.js";import"./engine.io-client-DBBxzneW.js";import"./engine.io-parser-BiEtp6m2.js";import"./@socket.io-Dkula2eQ.js";import"./socket.io-parser-BBkuslX-.js";import"./rxjs-CQrF441D.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-DI1KYDXS.js";import"./@popperjs-BQBsAJpH.js";import"./ace-builds-Jtyk_kwI.js";const Fe=async({json:n,signal:t})=>(await C.get("/config",{params:{json:n},signal:t})).data,Ge=async({json:n,signal:t})=>(await C.get("/config/go2rtc",{params:{json:n},signal:t})).data,Ae=async({configData:n})=>(await C.patch("/config",n,{headers:{"Content-Type":"text/yaml"}})).data,Le=async({configData:n})=>(await C.patch("/config/go2rtc",n,{headers:{"Content-Type":"text/yaml"}})).data,Me=async()=>(await C.delete("/config")).data,Te=async()=>(await C.delete("/config/go2rtc")).data;class Be{constructor(){R(this,"_queryClient",xe());R(this,"queryActivator",l([{name:"getConfigQuery",enabled:!0},{name:"getGo2RtcConfigQuery",enabled:!0}]))}get queryClient(){return this._queryClient}getConfigQuery(t=!1){return N({queryKey:["config",{json:t}],queryFn:({signal:o})=>Fe({json:e(t),signal:o}),enabled:()=>this.queryActivator.value.some(o=>o.name==="getConfigQuery"&&o.enabled)})}getGo2RtcConfigQuery(t=!1){return N({queryKey:["go2rtcConfig"],queryFn:({signal:o})=>Ge({json:e(t),signal:o}),enabled:()=>this.queryActivator.value.some(o=>o.name==="getGo2RtcConfigQuery"&&o.enabled)})}patchConfigQuery(){return k({mutationFn:Ae,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["config"]}),x.success(Q.global.t("components.toast.config_updated"))}})}patchGo2RtcConfigQuery(){return k({mutationFn:Le,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["go2rtcConfig"]}),x.success(Q.global.t("components.toast.config_go2rtc_updated"))}})}delteConfigQuery(){return k({mutationFn:Me,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["config"]}),x.success(Q.global.t("components.toast.config_deleted"))}})}delteGo2RtcConfigQuery(){return k({mutationFn:Te,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["go2rtcConfig"]}),x.success(Q.global.t("components.toast.config_go2rtc_deleted"))}})}toggleQueryActivator(t,o){const w=this.queryActivator.value.find(z=>z.name===t);w&&(w.enabled=o)}}const De={class:"w-full h-full",style:{padding:"0 !important"}},$e={key:0,class:"flex w-full h-full justify-center items-center fixed top-0 left-0",style:{"z-index":"9000"}},Ie=ge({__name:"Config",setup(n){const t=new Be,o=re(),w=qe(),{extraSmallMobileActive:z}=ce(),{theme:G}=U(o),{uiSettings:u}=U(w),d=l("camera.ui"),_=l(""),v=l(""),A=l(!1),S=l(!1),L=l(!1),h=l(!1),M=I(()=>({fontSize:u.value.config.zoom})),{data:T,isLoading:H}=t.getConfigQuery(A),{data:B,isLoading:X}=t.getGo2RtcConfigQuery(A),{mutateAsync:Z,isPending:J}=t.patchConfigQuery(),{mutateAsync:W,isPending:Y}=t.patchGo2RtcConfigQuery(),m=I(()=>H.value||X.value||J.value||Y.value);K(T,()=>{_.value=T.value||""},{deep:!0,immediate:!0}),K(B,()=>{v.value=B.value||""},{deep:!0,immediate:!0});const D=async b=>{d.value==="camera.ui"?(await Z({configData:_.value}),b&&(L.value=!0,ke())):await W({configData:v.value}),b||(h.value=!1)},ee=()=>{d.value=d.value==="camera.ui"?"go2rtc":"camera.ui"},te=()=>{u.value.config.zoom!==8&&u.value.config.zoom--},oe=()=>{u.value.config.zoom!==20&&u.value.config.zoom++};return pe(async()=>{await ze(100),S.value=!0}),(b,i)=>{const ne=le,$=de,ae=ue;return c(),O("main",De,[(c(),g(Ce,{to:".app"},[e(L)?(c(),O("div",$e,[s(ne,{reload:""})])):ye("",!0)])),j("div",{class:"text-editor-buttons flex flex-row justify-center",style:_e(e(z)?`bottom: calc(1rem + ${e(me).HEIGHT}px + env(safe-area-inset-bottom, 0px))`:"bottom: calc(1rem + env(safe-area-inset-bottom, 0px))")},[s(Se,{location:"top center",transition:"fade-transition","close-on-content-click":!1},{activator:a(({props:r})=>[s(Re,he(r,{size:"default",icon:""}),{default:a(()=>[s(y,{size:"20"},{default:a(()=>[p(f(e(be)),1)]),_:1})]),_:2},1040)]),default:a(()=>[s(q,{key:"1",loading:e(m),color:"success",icon:"",onClick:i[0]||(i[0]=V(r=>e(d)==="go2rtc"?D(!1):h.value=!0,["prevent"]))},{default:a(()=>[s(y,{size:"20"},{default:a(()=>[p(f(e(we)),1)]),_:1})]),_:1},8,["loading"]),s(q,{key:"2",loading:e(m),color:"#df2a4c",icon:"",onClick:V(ee,["prevent"])},{default:a(()=>[e(d)==="camera.ui"?(c(),g(y,{key:0,size:"20"},{default:a(()=>[p(f("$cuiLogo"))]),_:1})):(c(),g(y,{key:1,size:"30"},{default:a(()=>[p(f("$cuiGo2rtc"))]),_:1}))]),_:1},8,["loading"]),s(q,{key:"3",loading:e(m),icon:"",disabled:e(u).config.zoom===20,onClick:V(oe,["prevent"])},{default:a(()=>[s(y,{size:"20"},{default:a(()=>[p(f(e(Qe)),1)]),_:1})]),_:1},8,["loading","disabled"]),s(q,{key:"4",loading:e(m),disabled:e(u).config.zoom===8,icon:"",onClick:V(te,["prevent"])},{default:a(()=>[s(y,{size:"20"},{default:a(()=>[p(f(e(Ve)),1)]),_:1})]),_:1},8,["loading","disabled"])]),_:1})],4),(c(),g(ve,null,{default:a(()=>[e(d)==="camera.ui"?P((c(),g($,{key:0,modelValue:e(_),"onUpdate:modelValue":i[1]||(i[1]=r=>F(_)?_.value=r:null),lang:"yaml",theme:e(G),options:e(M),"read-only":e(m),class:"text-editor"},null,8,["modelValue","theme","options","read-only"])),[[E,e(S)]]):P((c(),g($,{key:1,modelValue:e(v),"onUpdate:modelValue":i[2]||(i[2]=r=>F(v)?v.value=r:null),lang:"yaml",theme:e(G),options:e(M),"read-only":e(m),class:"text-editor"},null,8,["modelValue","theme","options","read-only"])),[[E,e(S)]])]),_:1})),s(ae,{modelValue:e(h),"onUpdate:modelValue":i[3]||(i[3]=r=>F(h)?h.value=r:null),title:b.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.save_and_restart",loading:e(m),onConfirm:i[4]||(i[4]=r=>D(!0))},{content:a(()=>[j("span",null,f(b.$t("components.dialog.message.confirm_restart_server")),1)]),_:1},8,["modelValue","title","loading"])])}}}),bt=fe(Ie,[["__scopeId","data-v-ec401cf4"]]);export{bt as default};
@@ -1 +0,0 @@
1
- .page-title[data-v-98270db5]{font-size:1.2rem;font-weight:600}.text-editor-buttons[data-v-98270db5]{z-index:3;width:48px;height:48px;position:fixed;right:calc(1rem + env(safe-area-inset-right,0px));background:none;border-top:none;box-shadow:none;padding:0;opacity:.5;transition:opacity .3s}.text-editor-buttons[data-v-98270db5]:hover{opacity:1}
@@ -1,4 +0,0 @@
1
- import{z as U,f as E,w as $,B as N,d as P}from"./main-Bbvif0oi.js";import{F as h,r as k,c as z,a3 as S,U as j,e as H,f as F,M as t,u as o,j as L,R as n,X as q,i as G,m as W,V as f,T as m,q as y}from"./@vue-CHoPEscU.js";import{_ as X,a0 as Z,a1 as J,I as K,H as Y}from"./@mdi-DdmeckA1.js";import{S as oo}from"./system-DzN6086S.js";import{V as eo}from"./VConsole-UsuKdCF6.js";import{u as to}from"./ui-s9WkyTXF.js";import{s as no}from"./pinia-B42WbXFS.js";import{P as ao,Q as so,e as g,b as _}from"./vuetify-Bs5zynkb.js";import"./vue-inline-svg-Dk2QTAg8.js";import"./vue3-toastify-DSsDwESL.js";import"./vue-i18n-COBHesGQ.js";import"./@intlify-Ck2ZoCVz.js";import"./axios-BI2i94Vb.js";import"./@tanstack-BRh6vUDU.js";import"./vue-router-C1SPCwo7.js";import"./@vueuse-Ty7ydkJu.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./vee-validate-Bcyi_7NV.js";import"./@vee-validate-aIk5PQoc.js";import"./zod-BaF2dDCd.js";import"./uuid-DvF23Exx.js";import"./socket.io-client-Bq_SHkin.js";import"./engine.io-client-DBBxzneW.js";import"./engine.io-parser-BiEtp6m2.js";import"./@socket.io-Dkula2eQ.js";import"./socket.io-parser-BBkuslX-.js";import"./rxjs-CQrF441D.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-DI1KYDXS.js";import"./@popperjs-BQBsAJpH.js";const lo={class:"w-full h-full",style:{padding:"0 !important"}},io=h({__name:"Console",setup(ro){const d=new oo,V=U(),x=to(),{extraSmallMobileActive:C}=E(),{uiSettings:i}=no(x),v=k(null),c=k(),u=k(!1),Q=z(()=>({fontSize:i.value.console.zoom}));d.toggleQueryActivator("downloadLogQuery",!1);const{data:w,isLoading:B,suspense:T}=d.downloadLogQuery(),{mutate:M,isPending:R}=d.clearLogQuery(),p=z(()=>B.value||R.value),D=async()=>{M(void 0,{onSuccess:()=>{u.value=!1}})},I=async()=>{try{if(d.toggleQueryActivator("downloadLogQuery",!0),await T(),w.value){const a=w.value,e=window.URL.createObjectURL(new Blob([a])),s=document.createElement("a");s.href=e,s.setAttribute("download","camera.ui.log.txt"),document.body.appendChild(s),s.click(),s.remove()}}finally{d.toggleQueryActivator("downloadLogQuery",!1)}},A=()=>{i.value.console.zoom!==8&&i.value.console.zoom--},O=()=>{i.value.console.zoom!==20&&i.value.console.zoom++};return S(()=>{c.value=V.connectToNamespace("/logs")}),S(()=>{var a,e,s,l;(a=c.value)==null||a.socket.on("stdout",r=>{var b;(b=v.value)==null||b.writeTerminal(r)}),(e=c.value)==null||e.socket.on("disconnect",()=>{var r;(r=v.value)==null||r.writeTerminal(`
2
- \rWebsocket failed to connect! Is the server running?
3
- \r
4
- \r`)}),(s=c.value)==null||s.socket.on("clear-log",()=>{var r;(r=v.value)==null||r.clearTerminal()}),(l=c.value)==null||l.socket.emit("get-log")}),j(()=>{var a,e;(e=(a=c.value)==null?void 0:a.end)==null||e.call(a)}),(a,e)=>{const s=$;return H(),F("main",lo,[t(eo,{ref_key:"consoleRef",ref:v,class:"text-editor",options:o(Q)},null,8,["options"]),L("div",{class:"text-editor-buttons flex flex-row justify-center",style:q(o(C)?`bottom: calc(1rem + ${o(N).HEIGHT}px + env(safe-area-inset-bottom, 0px))`:"bottom: calc(1rem + env(safe-area-inset-bottom, 0px))")},[t(ao,{location:"top center",transition:"fade-transition","close-on-content-click":!1},{activator:n(({props:l})=>[t(so,W(l,{size:"default",icon:""}),{default:n(()=>[t(g,{size:"20"},{default:n(()=>[f(m(o(X)),1)]),_:1})]),_:2},1040)]),default:n(()=>[t(_,{key:"1",loading:o(p),color:"success",icon:"",onClick:y(I,["prevent"])},{default:n(()=>[t(g,{size:"20"},{default:n(()=>[f(m(o(Z)),1)]),_:1})]),_:1},8,["loading"]),t(_,{key:"2",loading:o(p),color:"red",icon:"",onClick:e[0]||(e[0]=y(l=>u.value=!0,["prevent"]))},{default:n(()=>[t(g,{size:"20"},{default:n(()=>[f(m(o(J)),1)]),_:1})]),_:1},8,["loading"]),t(_,{key:"3",loading:o(p),icon:"",disabled:o(i).console.zoom===20,onClick:y(O,["prevent"])},{default:n(()=>[t(g,{size:"20"},{default:n(()=>[f(m(o(K)),1)]),_:1})]),_:1},8,["loading","disabled"]),t(_,{key:"4",loading:o(p),disabled:o(i).console.zoom===8,icon:"",onClick:y(A,["prevent"])},{default:n(()=>[t(g,{size:"20"},{default:n(()=>[f(m(o(Y)),1)]),_:1})]),_:1},8,["loading","disabled"])]),_:1})],4),t(s,{modelValue:o(u),"onUpdate:modelValue":e[1]||(e[1]=l=>G(u)?u.value=l:null),title:a.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.clear",loading:o(p),onConfirm:e[2]||(e[2]=l=>D())},{content:n(()=>[L("span",null,m(a.$t("components.dialog.message.confirm_clear_log")),1)]),_:1},8,["modelValue","title","loading"])])}}}),Po=P(io,[["__scopeId","data-v-98270db5"]]);export{Po as default};
@@ -1 +0,0 @@
1
- div[data-v-f07bf40c] .v-expansion-panel-title__overlay,div[data-v-f07bf40c] .v-expansion-panel__shadow{background:var(--background-inner-component);border-radius:4px;border:1px solid var(--border-card);box-shadow:none!important}@media screen and (max-width: 639px){div[data-v-f07bf40c] .v-expansion-panel-title__overlay,div[data-v-f07bf40c] .v-expansion-panel__shadow{border-radius:0}}.new-source-container[data-v-f07bf40c]{padding:1rem;background:rgba(var(--color-rgb),.04);border-radius:10px}.camera-protocol[data-v-f07bf40c] .v-input__prepend,.camera-source[data-v-f07bf40c] .v-input__prepend{margin:0!important}.camera-protocol[data-v-f07bf40c] .v-field{border-radius:4px 0 0 4px/4px 0px 0px 4px!important}.camera-source[data-v-f07bf40c] .v-field{border-top-left-radius:0;border-bottom-left-radius:0}.camera-source[data-v-f07bf40c] .v-input__append{margin-left:5px}.window[data-v-f07bf40c]{min-height:calc(100% - 36px)}
@@ -1 +0,0 @@
1
- .plugin-card[data-v-5e23156f]{width:100%;max-height:125px;background:var(--background-inner-component-card);border-radius:4px;box-shadow:0 3px 1px -2px #0000000f,0 2px 2px #00000014,0 1px 5px #0000000d}.search-container[data-v-5e23156f]{height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 325px)}.grid[data-v-5e23156f],.grid[data-v-12757696]{display:grid;width:100%}div[data-v-12757696] .v-skeleton-loader__image{height:175px}
@@ -1 +0,0 @@
1
- import{f as S,d as C,z as j,w as D}from"./main-Bbvif0oi.js";import{_ as z}from"./VPluginCard-D4bre1hy.js";import{P as B}from"./plugins-BVTgiMCC.js";import{c as F,S as I,m as R,n as U,C as A,b as q,A as E,e as G}from"./vuetify-Bs5zynkb.js";import{F as L,r,w as X,e as s,f as i,M as l,R as f,j as a,T as p,u as e,i as M,V as N,X as k,N as $,Q as P,l as H,a3 as J,U as K,n as b,aa as O,q as W}from"./@vue-CHoPEscU.js";import{e as Y}from"./@mdi-DdmeckA1.js";import"./vue-inline-svg-Dk2QTAg8.js";import"./vue3-toastify-DSsDwESL.js";import"./vue-i18n-COBHesGQ.js";import"./@intlify-Ck2ZoCVz.js";import"./axios-BI2i94Vb.js";import"./@tanstack-BRh6vUDU.js";import"./pinia-B42WbXFS.js";import"./vue-router-C1SPCwo7.js";import"./@vueuse-Ty7ydkJu.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./vee-validate-Bcyi_7NV.js";import"./@vee-validate-aIk5PQoc.js";import"./zod-BaF2dDCd.js";import"./uuid-DvF23Exx.js";import"./socket.io-client-Bq_SHkin.js";import"./engine.io-client-DBBxzneW.js";import"./engine.io-parser-BiEtp6m2.js";import"./@socket.io-Dkula2eQ.js";import"./socket.io-parser-BBkuslX-.js";import"./rxjs-CQrF441D.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-DI1KYDXS.js";import"./@popperjs-BQBsAJpH.js";import"./VConfigEditor.vue_vue_type_script_setup_true_lang-C9bbpAse.js";import"./ace-builds-Jtyk_kwI.js";import"./@vueform-CEy-r2-e.js";import"./system-DzN6086S.js";import"./VConsole-UsuKdCF6.js";const Z={class:"v-label"},ee={class:"flex flex-row items-center justify-center w-full mt-8"},te={class:"flex flex-col items-center justify-center w-full mt-3"},le={key:0,class:"my-3"},oe={key:1,class:"search-container w-full overflow-scroll hide-scrollbar"},se=L({__name:"VPluginSearch",setup(Q){const n=new B,{smallMobileActive:v}=S(),x=r({page:1,pageSize:-1}),w=r({}),u=r(""),d=r([]),{data:g,isLoading:m}=n.searchPluginsQuery(w,x);X(g,t=>{t!=null&&t.result&&(d.value=t.result.filter(o=>!o.installPath))},{immediate:!0,deep:!0});const h=t=>{t.preventDefault(),w.value.pluginname=u.value??""};return(t,o)=>{const y=z;return s(),i("div",null,[l(I,{class:"ml-auto",onSubmit:h},{default:f(()=>[a("label",Z,p(t.$t("components.form.label.name")),1),l(F,{modelValue:e(u),"onUpdate:modelValue":o[0]||(o[0]=_=>M(u)?u.value=_:null),placeholder:"camera-ui-","hide-details":"",clearable:"",solo:"",variant:"outlined",density:"comfortable","onClick:clear":h},null,8,["modelValue"])]),_:1}),a("div",ee,[a("h3",null,p(t.$t("components.plugin_search.plugins")),1),l(R,{size:"small",class:"ml-auto",color:"#df2a4c"},{default:f(()=>[N(p(e(d).length),1)]),_:1})]),l(U,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"mt-3"}),l(A,{active:e(m),indeterminate:e(m),color:"#df2a4c",height:"2px"},null,8,["active","indeterminate"]),a("div",te,[!e(m)&&!e(d).length?(s(),i("div",le,p(t.$t("views.plugins.no_plugins")),1)):e(m)?H("",!0):(s(),i("div",oe,[a("div",{class:"grid gap-2",style:k(`grid-template-columns: repeat(auto-fill, minmax(${e(v)?"100%":"450px"}, 1fr))`)},[(s(!0),i($,null,P(e(d),(_,c)=>(s(),i("div",{key:c,class:"relative"},[l(y,{plugin:_,height:"175px","max-height":"175px",width:"100%",background:"var(--background-inner-component-card)","min-width":e(v)?"100%":"450px","show-installed-icon":"","show-install-button":""},null,8,["plugin","min-width"])]))),128))],4)]))])])}}}),ie=C(se,[["__scopeId","data-v-5e23156f"]]),ne={class:"h-full w-full inline-size mb-safe"},ae={class:"page-title"},re={class:"w-full flex justify-center items-center mt-3"},ue=L({__name:"Plugins",setup(Q){const{smallMobileActive:n}=S(),v=j(),x=new B,w=r(null),u=r(),d=r({page:1,pageSize:-1}),g=r(!1),{data:m,isLoading:h}=x.getPluginsQuery(d);return J(()=>{u.value=v.connectToNamespace("/plugins")}),K(()=>{var t,o;(o=(t=u.value)==null?void 0:t.end)==null||o.call(t)}),(t,o)=>{const y=ie,_=D;return s(),i("main",{class:b(["w-full h-full",{"px-0":e(n)}])},[a("div",ne,[a("div",{class:b(["mb-3 flex w-full items-center",{"px-2":e(n)}]),style:{height:"30px"}},[a("h1",ae,p(t.$t(`views.${String(t.$route.name).toLowerCase()}.title`)),1)],2),l(O,{name:"fade",tag:"div"},{default:f(()=>{var c;return[e(h)?(s(),i("div",{key:0,class:"grid gap-2",style:k(`grid-template-columns: repeat(auto-fill, minmax(${e(n)?"100%":"450px"}, 1fr))`)},[(s(),i($,null,P(15,V=>l(E,{key:V,elevation:1,type:"image",class:"relative",style:{"border-radius":"8px",overflow:"hidden"},height:175})),64))],4)):(c=e(m))!=null&&c.result.length?(s(),i("div",{key:2,class:"grid gap-2",style:k(`grid-template-columns: repeat(auto-fill, minmax(${e(n)?"100%":"450px"}, 1fr))`)},[(s(!0),i($,null,P(e(m).result,(V,T)=>(s(),i("div",{key:T,class:"relative"},[l(z,{ref_for:!0,ref_key:"pluginRef",ref:w,plugin:V,height:"175px","max-height":"175px",width:"100%","min-width":e(n)?"100%":"450px","border-radius":e(n)?"0px":"8px","show-toggle":"","show-settings":"","show-logo":"","show-plugin-status":"","show-logs":"","show-configs":""},null,8,["plugin","min-width","border-radius"])]))),128))],4)):(s(),i("div",{key:1,class:b(["disabled-text",{"px-2":e(n)}])},p(t.$t("views.plugins.no_plugins")),3))]}),_:1}),a("div",re,[l(q,{variant:"text",color:"#df2a4c",icon:"",onClick:o[0]||(o[0]=W(c=>g.value=!0,["prevent"]))},{default:f(()=>[l(G,{size:"30"},{default:f(()=>[N(p(e(Y)),1)]),_:1})]),_:1})]),l(_,{modelValue:e(g),"onUpdate:modelValue":o[1]||(o[1]=c=>M(g)?g.value=c:null),title:t.$t("components.dialog.title.search_plugin"),"hide-confirm-button":"",loading:e(h),fullscreen:""},{content:f(()=>[l(y)]),_:1},8,["modelValue","title","loading"])])],2)}}}),Ge=C(ue,[["__scopeId","data-v-12757696"]]);export{Ge as default};
@@ -1 +0,0 @@
1
- import{f as m}from"./main-Bbvif0oi.js";import{F as p,e as s,f as a,j as t,n as r,u as e,T as l}from"./@vue-CHoPEscU.js";import"./vue-inline-svg-Dk2QTAg8.js";import"./vue3-toastify-DSsDwESL.js";import"./vue-i18n-COBHesGQ.js";import"./@intlify-Ck2ZoCVz.js";import"./axios-BI2i94Vb.js";import"./@tanstack-BRh6vUDU.js";import"./pinia-B42WbXFS.js";import"./vue-router-C1SPCwo7.js";import"./@vueuse-Ty7ydkJu.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./vuetify-Bs5zynkb.js";import"./@mdi-DdmeckA1.js";import"./vee-validate-Bcyi_7NV.js";import"./@vee-validate-aIk5PQoc.js";import"./zod-BaF2dDCd.js";import"./uuid-DvF23Exx.js";import"./socket.io-client-Bq_SHkin.js";import"./engine.io-client-DBBxzneW.js";import"./engine.io-parser-BiEtp6m2.js";import"./@socket.io-Dkula2eQ.js";import"./socket.io-parser-BBkuslX-.js";import"./rxjs-CQrF441D.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-DI1KYDXS.js";import"./@popperjs-BQBsAJpH.js";const n={class:"h-full w-full inline-size mb-safe"},c={class:"page-title"},H=p({__name:"Recordings",setup(f){const{smallMobileActive:o}=m();return(i,u)=>(s(),a("main",{class:r(["w-full h-full",{"px-0":e(o)}])},[t("div",n,[t("div",{class:r(["flex w-full items-center",{"px-2":e(o)}]),style:{height:"30px"}},[t("h1",c,l(i.$t(`views.${String(i.$route.name).toLowerCase()}.title`)),1)],2)])],2))}});export{H as default};
@@ -1 +0,0 @@
1
- import{F as j,t as Z,r as u,c as B,w as _,a3 as Y,x as U,J as q,e as d,f as h,j as s,N as L,Q as ee,O as V,R as g,M as x,V as te,T as C,u as o,l as N,X as A,W as G,b as oe,n as z,q as ae,S as se}from"./@vue-CHoPEscU.js";import{f as J,S as O,T as ne,Q as ie,d as K,R as F,h as Q}from"./main-Bbvif0oi.js";import{u as P,a as re}from"./vue-router-C1SPCwo7.js";import{o as le,f as ce,g as ue}from"./@vueuse-Ty7ydkJu.js";import{e as de,b as pe}from"./vuetify-Bs5zynkb.js";import{B as me,G as fe}from"./@mdi-DdmeckA1.js";import"./vue-inline-svg-Dk2QTAg8.js";import"./vue3-toastify-DSsDwESL.js";import"./vue-i18n-COBHesGQ.js";import"./@intlify-Ck2ZoCVz.js";import"./axios-BI2i94Vb.js";import"./@tanstack-BRh6vUDU.js";import"./pinia-B42WbXFS.js";import"./vee-validate-Bcyi_7NV.js";import"./@vee-validate-aIk5PQoc.js";import"./zod-BaF2dDCd.js";import"./uuid-DvF23Exx.js";import"./socket.io-client-Bq_SHkin.js";import"./engine.io-client-DBBxzneW.js";import"./engine.io-parser-BiEtp6m2.js";import"./@socket.io-Dkula2eQ.js";import"./socket.io-parser-BBkuslX-.js";import"./rxjs-CQrF441D.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-DI1KYDXS.js";import"./@popperjs-BQBsAJpH.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";var M=(f=>(f[f.MAXWIDTH=280]="MAXWIDTH",f))(M||{});const ve={class:"flex flex-col w-full pb-safe"},_e={class:"flex flex-row navigation-text"},be={class:"ml-5"},he={class:"navigation-title"},ge={key:0},xe={key:0,class:"overlay"},Se=j({__name:"VSubNavigation",props:{routes:{},description:{type:Boolean,default:!1},state:{type:Boolean,default:!1}},emits:["inner-sidebar-state"],setup(f,{emit:S}){const{desktopActive:r,mobileActive:y}=J(),k=P(),l=ce(ie),R=S,w=f,{routes:n,state:I,description:b}=Z(w),$=u(null),a=u(),c=u(),T=B(()=>{let e=`calc(${t.value}px + env(safe-area-inset-left, 0px))`;return c.value==="closed"&&a.value==="closed"&&(e=`calc(${t.value}px - env(safe-area-inset-left, 0px))`),e}),t=B(()=>{let e=0;switch(c.value){case"opened":e=O.MAXWIDTH;break;case"minified":e=O.MINWIDTH;break;case"closed":e=0;break}return!r.value&&!I.value&&(e-=M.MAXWIDTH),e});return le($,e=>{if(r.value||a.value==="closed")return;e.target.closest(".no-outside")||(a.value="closed")}),l.on(e=>{e.sidebarState&&(c.value=e.sidebarState)}),_(r,e=>{a.value=e?"opened":"closed"}),_(I,e=>{a.value=e?r.value?"opened":"overlay":"closed"}),_(a,e=>{e&&(l.emit({subNavigationState:e}),R("inner-sidebar-state",e))}),Y(()=>{var e;y.value||(e=k.meta)!=null&&e.ui.noMinifiedSidebar?c.value="closed":c.value="minified"}),U(()=>{var p;a.value=r.value?"opened":"closed";const e=(p=k.name)==null?void 0:p.toString().toLowerCase(),v=document.getElementById(e);v&&setTimeout(()=>{v.scrollIntoView({behavior:"smooth"})},100)}),(e,v)=>{const p=q("router-link");return d(),h(L,null,[s("div",{ref_key:"innerSidebar",ref:$,class:"inner-sidebar-settings pb-safe",style:A({left:o(T),maxWidth:`${o(M).MAXWIDTH}px`,height:`calc(100dvh - ${o(ne).MINHEIGHT}px)`})},[s("div",ve,[(d(!0),h(L,null,ee(o(n),(i,m)=>{var D;return d(),V(p,{id:(D=i.name)==null?void 0:D.toString().toLowerCase(),key:m,class:"navigation-inner",to:i.path,style:A({"border-bottom":m!==o(n).length-1?"1px solid var(--border)":void 0})},{default:g(()=>{var H,W,X;return[s("div",_e,[x(de,{size:((H=i.meta)==null?void 0:H.navigation.iconSize)||"20",class:"navigation-icon"},{default:g(()=>{var E;return[te(C((E=i.meta)==null?void 0:E.navigation.icon),1)]}),_:2},1032,["size"]),s("div",be,[s("b",he,C(e.$t(`navigation.${(W=i.meta)==null?void 0:W.name}`)),1),o(b)?(d(),h("p",ge,C(e.$t(`navigation_description.${(X=i.meta)==null?void 0:X.description}`)),1)):N("",!0)])])]}),_:2},1032,["id","to","style"])}),128))])],4),x(G,{name:"overlay-fade",mode:"in-out"},{default:g(()=>[o(a)==="overlay"?(d(),h("div",xe)):N("",!0)]),_:1})],64)}}}),ye=K(Se,[["__scopeId","data-v-7a51011d"]]),ke={class:"w-full h-full flex flex-row",style:{padding:"0 !important"}},we={class:"flex flex-row items-center"},Ie=j({__name:"Settings",setup(f){const S=P(),r=re(),{desktopActive:y,smallMobileActive:k}=J(),l=u(),R=u(null),w=u(null),n=u(!1),I=u(0),b=oe(F.find(t=>t.name==="Settings").children.filter(t=>Q(t))),$=B(()=>F.find(t=>t.name==="Settings").children.filter(t=>Q(t))),{isSwiping:a,direction:c}=ue(w),T=B(()=>{let t="0px";switch(l.value){case"closed":case"overlay":t="0px";break;case"opened":t=`${M.MAXWIDTH}px`;break}return`padding-left: ${t}`});return _([a,c],()=>{if(a.value){const t=b.findIndex(e=>e.path===S.path.split("/settings/")[1]);switch(c.value){case"right":{const e=b[t-1];e&&r.push({path:e.path})}break;case"left":{const e=b[t+1];e&&r.push({path:e.path})}break}}}),_(l,()=>{n.value=l.value!=="closed"}),_(S,()=>{y.value||(n.value=!1)},{deep:!0}),(t,e)=>{var i;const v=ye,p=q("router-view");return d(),h("main",ke,[x(v,{description:"",state:o(n),routes:o($),onInnerSidebarState:e[0]||(e[0]=m=>l.value=m)},null,8,["state","routes"]),s("div",{class:"router-container",style:A(`transition: 0.2s all ease-in-out;${o(T)};`)},[s("div",{ref_key:"routerContainer",ref:R,class:"router-container-inner h-full w-full flex flex-col"},[s("div",we,[o(y)?N("",!0):(d(),V(pe,{key:0,ref:"innerSidebarButton",density:"compact",icon:o(n)?o(me):o(fe),class:z(["no-outside",{"ml-2":o(k)}]),elevation:"0",style:{border:"1px solid rgba(var(--border-rgb), 0.75)"},onClick:e[1]||(e[1]=ae(m=>n.value=!o(n),["prevent"]))},null,8,["icon","class"])),s("h1",{class:z(["page-title text-color",{"mx-3":o(l)!=="opened"}])},C(t.$t(`views.settings.title_${(i=t.$route.meta)==null?void 0:i.name}`)),3)]),s("div",{ref_key:"subviewContainer",ref:w,class:"h-full"},[x(p,{class:"mt-10 pb-5",style:{height:"calc(100% - 40px)"}},{default:g(({Component:m})=>[x(G,{name:"fade",mode:"out-in"},{default:g(()=>[(d(),V(se(m),{key:o(I)}))]),_:2},1024)]),_:1})],512)],512)],4)])}}}),et=K(Ie,[["__scopeId","data-v-d72629dc"]]);export{et as default};
@@ -1,4 +0,0 @@
1
- import{z as H,f as J,W as K,y as X,w as Y}from"./main-Bbvif0oi.js";import{F as Z,r as i,c as Q,w as k,e as r,f as v,O as j,u as o,M as c,l as ee,ae as te,j as t,T as u,R as b,q as oe,i as R,V as se}from"./@vue-CHoPEscU.js";import{S as ne,r as ae}from"./system-DzN6086S.js";import{V as ie}from"./VConsole-UsuKdCF6.js";import{s as le}from"./utils-BvINh1mj.js";import{c as re}from"./compare-versions-DqEOhma6.js";import{V as z,b as ue}from"./vuetify-Bs5zynkb.js";import"./vue-inline-svg-Dk2QTAg8.js";import"./vue3-toastify-DSsDwESL.js";import"./vue-i18n-COBHesGQ.js";import"./@intlify-Ck2ZoCVz.js";import"./axios-BI2i94Vb.js";import"./@tanstack-BRh6vUDU.js";import"./pinia-B42WbXFS.js";import"./vue-router-C1SPCwo7.js";import"./@vueuse-Ty7ydkJu.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./@mdi-DdmeckA1.js";import"./vee-validate-Bcyi_7NV.js";import"./@vee-validate-aIk5PQoc.js";import"./zod-BaF2dDCd.js";import"./uuid-DvF23Exx.js";import"./socket.io-client-Bq_SHkin.js";import"./engine.io-client-DBBxzneW.js";import"./engine.io-parser-BiEtp6m2.js";import"./@socket.io-Dkula2eQ.js";import"./socket.io-parser-BBkuslX-.js";import"./rxjs-CQrF441D.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-DI1KYDXS.js";import"./@popperjs-BQBsAJpH.js";const ce={key:0,class:"flex w-full h-full justify-center items-center fixed top-0 left-0",style:{"z-index":"9000"}},me={class:"subview-title text-color"},de={class:"inner-component p-4"},pe={class:"flex"},ve={class:"text-sm"},fe={class:"text-sm ml-auto text-right"},_e={key:1},ge=t("div",{class:"my-8"},null,-1),ye={class:"flex items-center justify-center"},we={key:0,class:"flex flex-row items-center"},Ve={class:"text-disabled"},he={key:1,class:"flex flex-col items-center justify-center"},ke={class:"text-disabled mb-3"},be={key:2,class:"text-disabled"},xe=t("div",{class:"p-5"},[t("span",null,"WIP: Release Notes")],-1),Ce={class:"p-5 flex w-full items-center justify-center"},at=Z({__name:"System",setup($e){const A=new K,B=new ne,U=H(),{smallMobileActive:I}=J(),m=i(!1),f=i(!1),_=i(!1),x=i(""),C=i(!1),g=i(null),d=i(),$=i(!1),l=i(""),D=Q(()=>T.value||C.value),F=Q(()=>({fontSize:I.value?12:14})),M=Q(()=>w.value&&l.value?re(l.value,w.value.version)===1:!1),{data:w,isLoading:P}=A.apiInfoQuery(),{data:S,isLoading:W}=B.checkVersionQuery(),{mutateAsync:O,isPending:T}=B.updateSystemQuery();k(w,()=>{var e;x.value=((e=w.value)==null?void 0:e.version)||""},{deep:!0,immediate:!0}),k(S,()=>{var e;l.value=((e=S.value)==null?void 0:e.versions[S.value.versions.length-1])||""},{deep:!0,immediate:!0}),k(m,e=>{L(e),!e&&!$.value&&setTimeout(()=>{_.value=!0},300)}),k(I,()=>{q()});const L=e=>{var s,V,p,n,h,N;e?(d.value=U.connectToNamespace("/logs"),(s=d.value)==null||s.socket.on("stdout/@camera.ui/server",a=>{var y;(y=g.value)==null||y.writeTerminal(a)}),(V=d.value)==null||V.socket.on("stdout",a=>{var y;(y=g.value)==null||y.writeTerminal(a)}),(p=d.value)==null||p.socket.on("disconnect",()=>{var a;(a=g.value)==null||a.writeTerminal(`
2
- \rWebsocket failed to connect! Is the server running?
3
- \r
4
- \r`)}),(n=d.value)==null||n.socket.on("clear-log",()=>{var a;(a=g.value)==null||a.clearTerminal()})):(N=(h=d.value)==null?void 0:h.end)==null||N.call(h)},q=()=>{m.value&&(L(!1),L(!0))},E=async()=>{if(f.value=!1,$.value=!1,!(!M.value||!l.value)){await le(300),m.value=!0;try{await O({pluginData:{pluginname:"@camera.ui/server",pluginversion:l.value}}),x.value=l.value}catch{$.value=!0}}},G=async()=>{_.value=!1,C.value=!0,await ae()};return(e,s)=>{const V=X,p=Y;return r(),v("div",null,[(r(),j(te,{to:".app"},[o(C)?(r(),v("div",ce,[c(V,{reload:""})])):ee("",!0)])),t("div",null,[t("span",me,u(e.$t("views.settings.current_version")),1),t("div",de,[t("div",pe,[t("span",ve,u(e.$t("views.settings.current_version_info")),1),t("span",fe,[o(P)?(r(),j(z,{key:0,color:"#df2a4c",indeterminate:""})):(r(),v("span",_e,[t("b",null,u(o(x)),1)]))])])]),ge,t("div",ye,[o(W)?(r(),v("div",we,[c(z,{color:"#df2a4c",indeterminate:"",class:"mr-3",size:"15",width:"2"}),t("span",Ve,u(e.$t("views.settings.searching_updates")),1)])):o(M)?(r(),v("div",he,[t("span",ke,u(e.$t("views.settings.available_updates_info")),1),c(ue,{loading:o(T),color:"#df2a4c",onClick:s[0]||(s[0]=oe(n=>f.value=!0,["prevent"]))},{default:b(()=>[se("v"+u(o(l)),1)]),_:1},8,["loading"])])):(r(),v("span",be,u(e.$t("views.settings.not_available_updates_info")),1))])]),c(p,{modelValue:o(f),"onUpdate:modelValue":s[1]||(s[1]=n=>R(f)?f.value=n:null),title:`${e.$t("components.dialog.title.update")}: ${o(l)}`,"fullscreen-content":"",loading:o(T),"confirm-text":"components.form.button.update",onConfirm:E},{content:b(()=>[xe]),_:1},8,["modelValue","title","loading"]),c(p,{modelValue:o(m),"onUpdate:modelValue":s[2]||(s[2]=n=>R(m)?m.value=n:null),title:e.$t("components.dialog.title.log"),"fullscreen-content":"","hide-confirm-button":""},{content:b(()=>[c(ie,{ref_key:"consoleRef",ref:g,class:"text-editor",options:o(F)},null,8,["options"])]),_:1},8,["modelValue","title"]),c(p,{modelValue:o(_),"onUpdate:modelValue":s[3]||(s[3]=n=>R(_)?_.value=n:null),title:e.$t("components.dialog.title.restart"),"confirm-text":"components.form.button.restart",loading:o(D),onConfirm:s[4]||(s[4]=n=>G())},{content:b(()=>[t("div",Ce,[t("span",null,u(e.$t("components.dialog.message.restart_server_info")),1)])]),_:1},8,["modelValue","title","loading"])])}}});export{at as default};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ace-builds-Jtyk_kwI.js","assets/@xterm-LO7TPXYg.js","assets/@xterm-CGrrDQr5.css"])))=>i.map(i=>d[i]);
2
- import{L as E}from"./main-Bbvif0oi.js";import{m as T,b as V,t as B,c as L}from"./ace-builds-Jtyk_kwI.js";import{C}from"./@vueuse-Ty7ydkJu.js";import{F as P,ak as w,at as x,al as A,t as R,r as n,w as l,x as z,a0 as D,e as j,f as F}from"./@vue-CHoPEscU.js";const q=P({__name:"VConfigEditor",props:w({lang:{default:"yaml"},readOnly:{type:Boolean,default:!1},printMargin:{type:[Number,Boolean],default:!1},theme:{default:"light"},options:{},placeholder:{}},{modelValue:{required:!0},modelModifiers:{}}),emits:w(["init","blur","input","change","changeSelectionStyle","changeSession","copy","focus","paste","update:value"],["update:modelValue"]),async setup(p,{emit:U}){let s,f;const u=([s,f]=x(()=>E(()=>import("./ace-builds-Jtyk_kwI.js").then(e=>e.a),__vite__mapDeps([0,1,2]))),s=await s,f(),s),c=A(p,"modelValue"),o=U,b={useWorker:!1,wrap:!0,showPrintMargin:!1,tabSize:2,highlightGutterLine:!0,useSoftTabs:!0,dragEnabled:!1,showGutter:!0,scrollPastEnd:.1},k=p,{theme:m,readOnly:h,options:g,lang:y,printMargin:_,placeholder:S}=R(k),a=n(),r=n(),i=n(),d=n(!1),v=n("");C(i,()=>{a.value&&a.value.resize(!0)}),l(c,e=>{var t;if(v.value!==e){try{d.value=!0,(t=a.value)==null||t.setValue(e,1)}finally{d.value=!1}v.value=e}}),l(m,()=>{setTimeout(()=>{M()},10)}),l(y,e=>{var t;(t=a.value)==null||t.setOption("mode","ace/mode/"+e),e==="json"?u.config.setModuleUrl("ace/mode/json",T):u.config.setModuleUrl("ace/mode/yaml",V)},{immediate:!0}),l(g,e=>{var t;e&&((t=a.value)==null||t.setOptions(e))}),l(S,e=>{var t;e!==void 0&&((t=a.value)==null||t.setOption("placeholder",e))}),l(h,e=>{var t;(t=a.value)==null||t.setReadOnly(e)}),l(_,e=>{var t;(t=a.value)==null||t.setOption("printMargin",e)});const M=()=>{var O;const e=m.value==="dark"?"twilight":"tomorrow",t=m.value==="dark"?B:L;u.config.setModuleUrl(`ace/theme/${e}`,t),r.value=e,(O=a.value)==null||O.setTheme(`ace/theme/${r.value}`)};return z(()=>{i.value&&(a.value=u.edit(i.value,{placeholder:S.value,readOnly:h.value,value:c.value,mode:"ace/mode/"+y.value,theme:r.value?"ace/theme/"+r.value:void 0,printMargin:_.value,...b,...g.value}),M(),a.value.on("change",()=>{if(d.value)return;const e=a.value.getValue();v.value=e,c.value=e}),a.value.on("blur",e=>{o("blur",e)}),a.value.on("input",()=>{o("input")}),a.value.on("change",e=>{o("change",e)}),a.value.on("changeSelectionStyle",e=>{o("changeSelectionStyle",e)}),a.value.on("changeSession",e=>{o("changeSession",e)}),a.value.on("copy",e=>{o("copy",e)}),a.value.on("focus",e=>{o("focus",e)}),a.value.on("paste",e=>{o("paste",e)}),o("init",a.value))}),D(()=>{var e,t;(e=a.value)==null||e.removeAllListeners(),(t=a.value)==null||t.destroy()}),(e,t)=>(j(),F("div",{ref_key:"editorEl",ref:i},null,512))}});export{q as _};
@@ -1 +0,0 @@
1
- var So=Object.defineProperty;var Po=(a,s,n)=>s in a?So(a,s,{enumerable:!0,configurable:!0,writable:!0,value:n}):a[s]=n;var Va=(a,s,n)=>Po(a,typeof s!="symbol"?s+"":s,n);import{a as zo,e as Ja,d as Bt,s as Mo,w as Ba,i as Tt,x as Ne,G as Eo,H as Fo,I as Bo,J as Io,f as Xa,K as Ga,j as Sa,u as To,U as qo,t as Ao,h as Oo}from"./main-Bbvif0oi.js";import{F as pt,t as vt,r as b,c as W,J as za,e as l,f as v,u as e,N as _e,j as p,T as d,M as o,l as Q,O as z,R as t,m as ze,as as ca,q as K,V as x,i as Se,Q as Ve,w as ke,ak as Qo,al as No,x as ga,n as jt,y as $t,ai as Do,aj as Lo,an as Ro,k as Pa,W as eo,a3 as to,a0 as ao,I as jo,ag as Uo,U as Zo,g as gt,X as qt}from"./@vue-CHoPEscU.js";import{m as Ko,a as Wo,s as At,Z as Da,E as oo,F as no,e as so,M as Ho,$ as Yo,U as lo,a2 as Jo,a3 as Xo,a4 as Go,a5 as en,c as Ma,a6 as La,a7 as tn,a8 as an,a9 as Ra,aa as Ia,ab as on,X as nn,i as sn,ac as ln,ad as rn,ae as un,af as cn,ag as dn,P as mn,Q as pn,J as vn,ah as fn,ai as gn,aj as yn,ak as hn,R as bn,S as _n,al as ja,H as kn,I as wn,D as xn,am as Cn,an as $n,ao as Vn,ap as Sn,aq as Pn,ar as zn}from"./@mdi-DdmeckA1.js";import{b as Mn}from"./qrcode-SHonoxyK.js";import{F as Ie,a as da}from"./vee-validate-Bcyi_7NV.js";import{z as ot,c as he}from"./zod-BaF2dDCd.js";import{s as ro}from"./pinia-B42WbXFS.js";import{y as En,k as Yt,o as Ta,z as Fn,A as Bn,w as In,t as Lt,B as Tn}from"./@vueuse-Ty7ydkJu.js";import{c as rt,b as ae,e as U,d as io,y as Ot,m as tt,L as kt,M as wt,X as mt,N as xt,K as Ct,Y as Et,w as qa,x as Aa,V as Vt,f as uo,J as co,n as Ye,Z as Ua,U as qn,W as An,_ as On,C as Qn,G as Nn,I as Dn,o as Za,T as _t}from"./vuetify-Bs5zynkb.js";import{t as ya}from"./@vee-validate-aIk5PQoc.js";import{i as yt}from"./vue3-toastify-DSsDwESL.js";import{P as mo}from"./plugins-BVTgiMCC.js";import{D as po}from"./draggabilly-YEGzHR3_.js";import{u as Ln,b as et,a as Rt}from"./@tanstack-BRh6vUDU.js";import{u as Rn,a as vo}from"./vue-router-C1SPCwo7.js";const Ea=a=>/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(.\d+)?(Z|[+-]\d{2}:\d{2})?)?$/.test(a),fo=(a,s)=>(s.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(a),go=a=>/^\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,7}\b$/.test(a),yo=a=>/^[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(a),ma=(a,s)=>(s===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(a),jn=a=>{const s={};return Object.entries(a).forEach(([n,C])=>{s[n]=Oa(C)}),{schema:s}},Oa=a=>{switch(!0){case a===void 0:case typeof a>"u":case typeof a=="function":case typeof a=="symbol":case a instanceof Date:throw new TypeError(`Invalid JSON value: ${String(a)}`);case typeof a=="number":return Kn();case typeof a=="boolean":return Wn();case typeof a=="string":return Hn(a);case Array.isArray(a):return a.every(n=>typeof n=="string"||typeof n=="number"||typeof n=="boolean")?Yn(a):Xn(a);case a instanceof Object:return Jn(a);default:throw new TypeError(`Invalid JSON value: ${a}`)}},Un=a=>{const s={};return Object.entries(a.schema).forEach(([n,C])=>{s[n]=pa(C)}),s},pa=a=>{switch(a.type){case"string":case"number":case"boolean":return Jt(a)?a.multiple?a.defaultValue!==void 0?[a.defaultValue]:void 0:a.defaultValue!==void 0?a.defaultValue:a.required?a.enum[0]:void 0:a.defaultValue;case"object":return a.properties?Object.entries(a.properties).reduce((s,[n,C])=>(s[n]=pa(C),s),{}):{};case"array":return a.items?[pa(a.items)]:[];default:return}},Ka=(a,s,n="")=>{const C={},E=(N,L)=>{const _=n?`${n}.${L}`:L,j=_o(s,_);if(Ut(N)&&N.properties){const S=Ka(N.properties,s,_);Object.keys(S).length>0&&(C[L]=S)}else if(fa(N)&&N.items){const S=j;Array.isArray(S)&&(C[L]=S.map((M,w)=>Ka(N.items,{[w]:M},`${_}[${w}]`)).filter(M=>Object.keys(M).length>0))}else N.store&&(C[L]=j)};return es(a)?E(a,n):Object.entries(a).forEach(([N,L])=>{E(L,N)}),C},ho=a=>!!(a.readonly||Ut(a)&&a.properties&&Object.values(a.properties).every(s=>ho(s))),bo=a=>!!(a.store||Ut(a)&&a.properties&&Object.values(a.properties).some(s=>bo(s))),_o=(a={},s)=>{const n=s.split(".").reduce((E,N)=>{if(N.includes("[")){const[L,_]=N.split("[");E.push(L,_.slice(0,-1))}else E.push(N);return E},[]);let C=a;for(const E of n){if(C===void 0)return;C=C[E]}return C},Zn=a=>{const s={};return Object.entries(a.schema).forEach(([n,C])=>{s[n]=Qa(C)}),ot.object(s).strict()},Qa=a=>{switch(a.type){case"string":case"number":case"boolean":return Jt(a)?ns(a):Ft(a)?ts(a):va(a)?as(a):os(a);case"object":return ss(a);case"array":return ls(a);case"button":return ot.any()}},Kn=()=>({type:"number"}),Wn=()=>({type:"boolean"}),Hn=a=>{const s={type:"string"};return Ea(a)&&(s.format=a.includes("T")?"date-time":"date"),fo(a.split("+")[0],{mode:"withSeconds"})&&(s.format="time"),go(a)&&(s.format="email"),yo(a)&&(s.format="uuid"),ma(a,4)&&(s.format="ipv4"),ma(a,6)&&(s.format="ipv6"),s},Yn=a=>({type:"string",enum:a.map(s=>s.toString())}),Jn=a=>{if(!Object.keys(a).length)return{type:"object"};const s={};return Object.entries(a).forEach(([n,C])=>{const E=Oa(C);E.key=n,E.description=E.description||`Description for ${n}`,E.required=E.required===void 0?!0:E.required,E.readonly=E.readonly||!1,s[n]=E}),{type:"object",properties:s}},Xn=a=>{if(a.length===0)return{type:"array"};const s=a.every(E=>typeof E=="object"&&E!==null&&!Array.isArray(E)),n=a.every(E=>typeof E=="string"),C=a.every(E=>typeof E=="number");if(s){const E={},N={};return a.forEach(L=>{Object.keys(L).forEach(_=>{N[_]=(N[_]||0)+1})}),a.forEach(L=>{Object.entries(L).forEach(([_,j])=>{if(!E[_]){const S=N[_]===a.length;E[_]={...Oa(j),required:S,title:_,description:`Description for ${_}`,readonly:!1}}})}),{type:"array",items:{type:"object",properties:E}}}else return n?{type:"array",items:{type:"string"}}:C?{type:"array",items:{type:"number"}}:{type:"array",items:{type:"boolean"}}},Ft=a=>a.type==="string"&&!("enum"in a),va=a=>a.type==="number"&&!("enum"in a),Fa=a=>a.type==="boolean"&&!("enum"in a),Jt=a=>"enum"in a,Ut=a=>a.type==="object",Wa=a=>Ut(a)&&"buttons"in a,fa=a=>a.type==="array",Gn=a=>a.type==="button",es=a=>Ft(a)||va(a)||Fa(a)||Jt(a)||Ut(a)||fa(a),ts=a=>{let s=ot.string();if(a.required&&(s=s.nonempty("Required")),a.minLength!==void 0&&(s=s.min(a.minLength)),a.maxLength!==void 0&&(s=s.max(a.maxLength)),a.format)switch(a.format){case"date-time":s=s.refine(n=>Ea(n)&&n.includes("T"),{message:"Invalid date-time"});break;case"date":s=s.refine(n=>Ea(n),{message:"Invalid date"});break;case"time":s=s.refine(n=>fo(n.split("+")[0],{mode:"withSeconds"}),{message:"Invalid time"});break;case"email":s=s.refine(n=>go(n),{message:"Invalid email"});break;case"uuid":s=s.refine(n=>yo(n),{message:"Invalid uuid"});break;case"ipv4":s=s.refine(n=>ma(n,4),{message:"Invalid ipv4"});break;case"ipv6":s=s.refine(n=>ma(n,6),{message:"Invalid ipv6"});break}return a.required?s:s.optional()},as=a=>{let s=ot.number();return a.minimum!==void 0&&(s=s.min(a.minimum)),a.maximum!==void 0&&(s=s.max(a.maximum)),a.required&&(s=s.refine(n=>n!==void 0&&typeof n=="number",{message:"Required"})),a.required?s:s.optional()},os=a=>{const s=ot.boolean();return a.required?s:s.optional()},ns=a=>{const s=a.enum.map(C=>a.required?ot.literal(C):ot.literal(C).optional()),n=a.required?ot.union(s):ot.any().transform(C=>!C||C===""||!a.enum.some(E=>E===C)?void 0:C);return a.multiple?a.required?n.array():n.array().optional():a.required?n:n.optional()},ss=a=>{let s;if(a.properties){const n=Object.entries(a.properties).reduce((C,[E,N])=>(C[E]=Qa(N),C),{});s=ot.object(n).strict()}else s=ot.record(ot.any());return a.required?s:s.optional()},ls=a=>{let s;return a.items?s=Qa(a.items).array():s=ot.any().array(),a.required?s:s.optional()},rs={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"},is={class:"w-full my-3"},us=["for"],cs=["for"],ds=["for"],ms=["for"],ps=["for"],vs={class:"v-input__details",style:{"padding-inline":"16px"}},fs={class:"v-messages"},gs={key:0,class:"v-messages__message"},ys={class:"flex flex-row items-center justify-center ml-auto"},hs={key:0,class:"flex flex-col w-full items-center justify-center mt-3"},bs={class:"flex flex-row w-full items-center justify-center mt-3"},_s=pt({__name:"VCustomField",props:{schemaField:{},configKey:{},modelValue:{},removable:{},loading:{type:Boolean,default:!1}},emits:["onChange","onSubmit","onAction"],setup(a,{emit:s}){const n=zo(),C=s,E=a,{theme:N}=ro(n),{modelValue:L,schemaField:_,configKey:j,removable:S,loading:M}=vt(E),w=b(!1),k=En(async()=>{if(Ft(_.value)&&_.value.format==="qrCode"){let I;return N.value==="dark"?I={dark:"#FFFFFFFF",light:"#FF000000"}:I={dark:"#404040FF",light:"#FFFFFFFF"},await Mn.toDataURL(pe.value,{margin:.5,type:"image/png",color:I,scale:10})}},void 0,{lazy:!0}),P=W(()=>{if(Ft(_.value)&&_.value.format==="image")return pe.value}),u=(I,h)=>{const ee=g(L.value,I);Array.isArray(ee)&&ee.splice(h,1)},q=I=>{let h=g(L.value,I);h||(J(L.value,I,[]),h=g(L.value,I));const ee=_.value;if(Array.isArray(h)&&ee&&fa(ee)&&ee.items){const A=pa(ee.items);h.push(A)}},te=I=>{var h;return((h=I.match(/[^.[\]]+|\[\d+\]/g))==null?void 0:h.map(ee=>ee.startsWith("[")?parseInt(ee.slice(1,-1)):ee))||[]},g=(I,h)=>{const ee=te(h);let A=I;for(const T of ee){if(A==null)return;A=A[T]}if(!(A||!1)){const T=me(_.value,h);return T&&"defaultValue"in T?T.defaultValue:void 0}return A},J=(I,h,ee)=>{const A=te(h),H=A.pop(),T=A.reduce(($,R)=>($[R]||($[R]={}),$[R]),I);H!==void 0&&(T[H]=ee)},me=(I,h)=>{const ee=te(h);let A=I;for(const H of ee)if(A.type==="object"&&A.properties)A=A.properties[H];else if(A.type==="array"&&A.items&&!("anyOf"in A.items))A=A.items;else return A;return A},de=I=>I.type==="string"&&I.format!=="qrCode"&&I.format!=="image",pe=W({get:()=>g(L.value,j.value),set:I=>{const h=_.value;let ee=I;h&&(Jt(h)?h.multiple?ee=Array.isArray(I)?I:[I]:ee=I&&I.toString():Ft(h)?ee=I&&I.toString():va(h)?ee=isNaN(parseFloat(I))?h.minimum!==void 0?h.minimum:0:parseFloat(I):Fa(h)?ee=I==="true"||I===!0:ee=I),J(L.value,j.value,ee)}});return(I,h)=>{const ee=Ja,A=za("v-number-input"),H=za("VCustomField",!0);return l(),v("div",is,[e(Ft)(e(_))&&e(_).format==="qrCode"?(l(),v(_e,{key:0},[p("label",{for:e(j),class:"v-label"},d(e(_).title),9,us),o(ee,{src:e(k),class:"mb-3"},null,8,["src"])],64)):Q("",!0),e(Ft)(e(_))&&e(_).format==="image"?(l(),v(_e,{key:1},[p("label",{for:e(j),class:"v-label"},d(e(_).title),9,cs),o(ee,{src:e(P),class:"mb-3"},null,8,["src"])],64)):e(Ft)(e(_))&&de(e(_))?(l(),z(e(Ie),{key:2,modelValue:e(pe),"onUpdate:modelValue":h[2]||(h[2]=T=>Se(pe)?pe.value=T:null),name:e(j)},{default:t(({field:T,errorMessage:$,errors:R})=>[p("label",{for:e(j),class:"v-label"},d(e(_).title),9,ds),o(rt,ze({"model-value":T.value,error:R.length>0,"error-messages":$,readonly:e(_).readonly,placeholder:e(_).placeholder,hint:e(_).description,"persistent-hint":""},T,{variant:"outlined",density:"compact",type:e(_).format==="password"?e(w)?"text":"password":"text","append-inner-icon":e(_).format==="password"?e(w)?e(Ko):e(Wo):void 0,"onClick:appendInner":h[1]||(h[1]=Y=>w.value=!e(w))}),ca({_:2},[e(S)?{name:"append-inner",fn:t(()=>[o(ae,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:h[0]||(h[0]=K(Y=>u(e(S).path,e(S).index),["stop"]))},{default:t(()=>[o(U,null,{default:t(()=>[x(d(e(At)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","error","error-messages","readonly","placeholder","hint","type","append-inner-icon"])]),_:1},8,["modelValue","name"])):e(va)(e(_))?(l(),z(e(Ie),{key:3,modelValue:e(pe),"onUpdate:modelValue":h[4]||(h[4]=T=>Se(pe)?pe.value=T:null),name:e(j)},{default:t(({field:T,errorMessage:$,errors:R})=>[p("label",{for:e(j),class:"v-label"},d(e(_).title),9,ms),o(A,ze({"model-value":T.value,error:R.length>0,"error-messages":$,readonly:e(_).readonly,hint:e(_).description,step:e(_).step||1,"persistent-hint":""},T,{variant:"outlined",type:"number",density:"compact"}),ca({_:2},[e(S)?{name:"append-inner",fn:t(()=>[o(ae,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:h[3]||(h[3]=K(Y=>u(e(S).path,e(S).index),["stop"]))},{default:t(()=>[o(U,null,{default:t(()=>[x(d(e(At)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","error","error-messages","readonly","hint","step"])]),_:1},8,["modelValue","name"])):e(Fa)(e(_))?(l(),z(e(Ie),{key:4,modelValue:e(pe),"onUpdate:modelValue":h[6]||(h[6]=T=>Se(pe)?pe.value=T:null),name:e(j),type:"checkbox","checked-value":!0,"unchecked-value":!1},{default:t(({field:T,errors:$,errorMessage:R})=>[o(io,ze({"model-value":T.checked,class:"w-full"},T,{color:"#df2a4c",type:"checkbox","persistent-hint":"",label:e(_).title,error:$.length>0,"error-messages":R,hint:e(_).description}),ca({_:2},[e(S)?{name:"append",fn:t(()=>[o(ae,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:h[5]||(h[5]=K(Y=>u(e(S).path,e(S).index),["stop"]))},{default:t(()=>[o(U,null,{default:t(()=>[x(d(e(At)),1)]),_:1})]),_:1})]),key:"0"}:void 0]),1040,["model-value","label","error","error-messages","hint"])]),_:1},8,["modelValue","name"])):e(Jt)(e(_))?(l(),z(e(Ie),{key:5,modelValue:e(pe),"onUpdate:modelValue":h[8]||(h[8]=T=>Se(pe)?pe.value=T:null),name:e(j)},{default:t(({field:T,errorMessage:$,errors:R})=>[p("label",{for:e(j),class:"v-label"},d(e(_).title),9,ps),o(Ot,ze({items:e(_).enum,error:R.length>0,"error-messages":$,readonly:e(_).readonly,hint:e(_).description,"model-value":T.value,"persistent-hint":""},T,{variant:"outlined",density:"compact",chips:"",multiple:e(_).multiple,clearable:!e(_).required&&!e(_).readonly,onKeydown:h[7]||(h[7]=K(()=>{},["prevent"]))}),{chip:t(({item:Y})=>[o(tt,{color:"#df2a4c"},{default:t(()=>[x(d(Y.title),1)]),_:2},1024)]),_:2},1040,["items","error","error-messages","readonly","hint","model-value","multiple","clearable"])]),_:1},8,["modelValue","name"])):e(Gn)(e(_))?(l(),v(_e,{key:6},[o(ae,{width:"100%",color:"#df2a4c",variant:"flat",class:"mt-3",loading:e(M),onClick:h[9]||(h[9]=K(T=>C("onAction",{configPath:e(j)}),["prevent"]))},{default:t(()=>[x(d(e(_).title),1)]),_:1},8,["loading"]),p("div",vs,[p("div",fs,[e(_).description?(l(),v("div",gs,d(e(_).description),1)):Q("",!0)])])],64)):e(Ut)(e(_))||e(Wa)(e(_))?(l(),z(Ct,{key:7,"model-value":e(_).opened?[0]:[],class:"inner-component-2 mt-0 mb-3"},{default:t(()=>[o(kt,{elevation:"0"},{default:t(()=>[o(wt,{style:{height:"48px",width:"-webkit-fill-available"},class:"truncate"},ca({default:t(()=>[e(_).description?(l(),z(mt,{key:0,text:e(_).description,location:"top"},{activator:t(({props:T})=>[o(U,ze({size:"20"},T,{class:"mr-3 text-passive"}),{default:t(()=>[x(d(e(Da)),1)]),_:2},1040)]),_:1},8,["text"])):Q("",!0),x(" "+d(e(_).title||e(j))+" ",1)]),_:2},[e(S)?{name:"actions",fn:t(({expanded:T})=>[p("div",ys,[o(ae,{size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:h[10]||(h[10]=K($=>u(e(S).path,e(S).index),["stop"]))},{default:t(()=>[o(U,null,{default:t(()=>[x(d(e(At)),1)]),_:1})]),_:1}),T?(l(),z(U,{key:0,size:"22.5"},{default:t(()=>[x(d(e(oo)),1)]),_:1})):(l(),z(U,{key:1,size:"22.5"},{default:t(()=>[x(d(e(no)),1)]),_:1}))])]),key:"0"}:void 0]),1024),o(xt,{eager:""},{default:t(()=>{var T;return[(l(!0),v(_e,null,Ve(e(_).properties,($,R)=>(l(),v("div",{key:`${e(j)}.${R}`},[$.hidden?Q("",!0):(l(),z(H,{key:0,modelValue:e(L),"onUpdate:modelValue":h[11]||(h[11]=Y=>Se(L)?L.value=Y:null),"schema-field":$,"config-key":`${e(j)}.${R}`,loading:e(M),onOnSubmit:h[12]||(h[12]=Y=>C("onSubmit",Y)),onOnAction:h[13]||(h[13]=Y=>C("onAction",Y))},null,8,["modelValue","schema-field","config-key","loading"]))]))),128)),e(Wa)(e(_))&&((T=e(_).buttons)!=null&&T.length)?(l(),v("div",hs,[(l(!0),v(_e,null,Ve(e(_).buttons,($,R)=>(l(),z(ae,{key:`button-${R}`,variant:"flat",loading:e(M),class:"px-0 w-100 my-2",style:{background:"rgba(141, 141, 141, 0.2)"},onClick:K(()=>$?C("onSubmit",{actionId:$.onSubmit,payload:e(_o)(e(L),e(j))}):void 0,["prevent"])},{default:t(()=>[x(d($==null?void 0:$.label),1)]),_:2},1032,["loading","onClick"]))),128))])):Q("",!0)]}),_:1})]),_:1})]),_:1},8,["model-value"])):e(fa)(e(_))&&e(_).items?(l(),z(Ct,{key:8,"model-value":e(_).opened?[0]:[],class:"inner-component-2 mt-0 mb-3"},{default:t(()=>[o(kt,{elevation:"0"},{default:t(()=>[o(wt,{style:{height:"48px",width:"-webkit-fill-available"},class:"truncate"},{default:t(()=>[e(_).description?(l(),z(mt,{key:0,text:e(_).description,location:"top"},{activator:t(({props:T})=>[o(U,ze({size:"20"},T,{class:"mr-3 text-passive"}),{default:t(()=>[x(d(e(Da)),1)]),_:2},1040)]),_:1},8,["text"])):Q("",!0),x(" "+d(e(_).title||e(j)),1)]),_:1}),o(xt,{eager:""},{default:t(()=>[(l(!0),v(_e,null,Ve(g(e(L),e(j)),(T,$)=>(l(),v("div",{key:`item-${$}-${(T==null?void 0:T.key)||T||$}`,class:"w-full"},[e(_).items.hidden?Q("",!0):(l(),z(H,{key:0,modelValue:e(L),"onUpdate:modelValue":h[14]||(h[14]=R=>Se(L)?L.value=R:null),"schema-field":e(_).items,"config-key":`${e(j)}[${$}]`,removable:{path:e(j),index:$},loading:e(M),onOnSubmit:h[15]||(h[15]=R=>C("onSubmit",R)),onOnAction:h[16]||(h[16]=R=>C("onAction",R))},null,8,["modelValue","schema-field","config-key","removable","loading"]))]))),128)),p("div",bs,[o(ae,{variant:"text",color:"#df2a4c",icon:"",onClick:h[17]||(h[17]=K(T=>q(e(j)),["prevent"]))},{default:t(()=>[o(U,{size:"30"},{default:t(()=>[x(d(e(so)),1)]),_:1})]),_:1})])]),_:1})]),_:1})]),_:1},8,["model-value"])):Q("",!0)])}}}),ks=Bt(_s,[["__scopeId","data-v-ccf723c8"]]),ws={key:0},xs={key:1},Cs={key:2,class:"flex w-full mt-7"},ko=pt({__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}},emits:["onSubmit","onAction","onFormSubmit","changeGroup"],setup(a,{emit:s}){const n=s,C=a,{uiSchema:E,config:N,loading:L,saveButton:_,saveButtonLabel:j,showButton:S,disableButton:M,saveButtonColor:w}=vt(C),k=b(),P=b(),u=W(()=>Object.keys(N.value).length?{...Mo(N.value)}:E.value?Un(E.value):{}),q=W(()=>E.value?E.value:jn(N.value)),te=W(()=>Zn(q.value)),g=W(()=>ya(te.value)),J=W(()=>Object.keys(q.value.schema).every(A=>ho(q.value.schema[A]))),me=W(()=>Object.keys(q.value.schema).some(A=>bo(q.value.schema[A]))),de=W(()=>{const A=q.value,H=[];for(const[,T]of Object.entries(A.schema))T.group&&!T.hidden&&!H.includes(T.group)&&H.push(T.group);return H.length&&(P.value=H[0]),H});ke(P,A=>{A&&n("changeGroup",A)});const pe=async()=>{var A;return await((A=k.value)==null?void 0:A.validate())},I=async A=>{n("onAction",A)},h=async A=>{const H=await pe();H!=null&&H.valid&&n("onSubmit",A)},ee=async()=>{const A=await pe();A!=null&&A.valid&&n("onFormSubmit",u.value)};return(A,H)=>{const T=ks;return l(),v("div",null,[o(e(da),{ref_key:"formRef",ref:k,"validation-schema":e(g),onSubmit:ee},{default:t(()=>[e(de).length?(l(),v("div",ws,[o(Et,{modelValue:e(P),"onUpdate:modelValue":H[0]||(H[0]=$=>Se(P)?P.value=$:null),"selected-class":"primary-color",mandatory:"",column:""},{default:t(()=>[(l(!0),v(_e,null,Ve(e(de),$=>(l(),z(tt,{key:$,size:"small",value:$},{default:t(()=>[x(d($),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"]),o(qa,{modelValue:e(P),"onUpdate:modelValue":H[2]||(H[2]=$=>Se(P)?P.value=$:null),mandatory:"",eager:"",class:"mt-3"},{default:t(()=>[(l(!0),v(_e,null,Ve(e(de),($,R)=>(l(),z(Aa,{key:$,value:$,transition:"instant","reverse-transition":"instant"},{default:t(()=>[(l(!0),v(_e,null,Ve(e(q).schema,(Y,qe)=>(l(),v("div",{key:qe},[!Y.hidden&&(Y.group===$||!Y.group&&R===0)?(l(),z(T,{key:0,modelValue:e(u),"onUpdate:modelValue":H[1]||(H[1]=De=>Se(u)?u.value=De:null),"schema-field":Y,"config-key":qe.toString(),loading:e(L),onOnSubmit:h,onOnAction:I},null,8,["modelValue","schema-field","config-key","loading"])):Q("",!0)]))),128))]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])])):(l(),v("div",xs,[(l(!0),v(_e,null,Ve(e(q).schema,($,R)=>(l(),v("div",{key:R},[$.hidden?Q("",!0):(l(),z(T,{key:0,modelValue:e(u),"onUpdate:modelValue":H[3]||(H[3]=Y=>Se(u)?u.value=Y:null),"schema-field":$,"config-key":R.toString(),loading:e(L),onOnSubmit:h,onOnAction:I},null,8,["modelValue","schema-field","config-key","loading"]))]))),128))])),!e(J)&&e(_)&&e(me)||e(S)?(l(),v("div",Cs,[o(ae,{class:"w-full my-3",color:e(w),variant:"flat",type:"submit",loading:e(L),disabled:e(M)},{default:t(()=>[x(d(e(j)||A.$t("components.form.button.save")),1)]),_:1},8,["color","loading","disabled"])])):Q("",!0)]),_:1},8,["validation-schema"])])}}}),$s=pt({__name:"VJsonSchemaDialog",props:Qo({pluginConfig:{},uiSchema:{},pluginName:{}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const s=new mo,n=No(a,"modelValue"),C=a,E=b(!1),N=b(),{uiSchema:L,pluginConfig:_,pluginName:j}=vt(C),{mutateAsync:S,isPending:M}=s.actionButtonQuery(),w=W(()=>E.value||M.value);ke(L,P=>{N.value=P},{deep:!0,immediate:!0});const k=async P=>{E.value=!0;const u={..._.value,...P.payload};await S({pluginName:j.value,actionId:P.actionId,payload:u},{onSuccess:q=>{q!=null&&q.toast&&yt[q.toast.type](q.toast.message),q!=null&&q.schema&&Object.keys(q.schema).length&&N.value?N.value.schema.config=q.schema.config:n.value=!1},onSettled:()=>{E.value=!1}})};return(P,u)=>{const q=ko,te=Ba;return l(),z(te,{modelValue:n.value,"onUpdate:modelValue":u[0]||(u[0]=g=>n.value=g),title:P.$t("components.dialog.title.config"),loading:e(w),"hide-confirm-button":""},{content:t(()=>[o(q,{config:{},"ui-schema":e(N),loading:e(w),"save-button":!1,onOnSubmit:k},null,8,["ui-schema","loading"])]),_:1},8,["modelValue","title","loading"])}}}),Vs=async({cameraData:a})=>(await Ne.post("/cameras",a)).data,Ss=async({cameraData:a})=>(await Ne.post("/cameras/preview",a)).data,wo=async({cameraname:a,signal:s})=>(await Ne.get(`/cameras/${a}`,{signal:s})).data,Ps=async({cameraname:a,signal:s})=>(await Ne.get(`/cameras/${a}/snapshot`,{signal:s})).data,zs=async({parameter:a,signal:s})=>(await Ne.get("/cameras",{params:a,signal:s})).data,Ms=async({cameraname:a,cameraData:s})=>(await Ne.patch(`/cameras/${a}`,s)).data,Es=async({cameraname:a,signal:s})=>(await Ne.get(`/cameras/${a}/extensions`,{signal:s})).data,Fs=async({cameraname:a,pluginname:s,signal:n})=>(await Ne.get(`/cameras/${a}/${s}`,{signal:n})).data,Bs=async({cameraname:a,pluginname:s,configData:n})=>(await Ne.patch(`/cameras/${a}/${s}`,n)).data,Is=async({cameraname:a,pluginname:s,configPath:n})=>(await Ne.post(`/cameras/${a}/${s}/submit`,{configPath:n})).data,Ts=async({cameraname:a,pluginname:s,type:n})=>(await Ne.put(`/cameras/${a}/${s}/enable`,null,{params:{type:n}})).data,qs=async({cameraname:a,pluginname:s,type:n})=>(await Ne.put(`/cameras/${a}/${s}/disable`,null,{params:{type:n}})).data,As=async({cameraname:a,pluginname:s})=>(await Ne.post(`/cameras/${a}/${s}`)).data,Os=async({cameraname:a,pluginname:s})=>(await Ne.delete(`/cameras/${a}/${s}`)).data,Qs=async({cameraname:a,zonename:s,signal:n})=>(await Ne.get(`/cameras/${a}/zones/${s}`,{signal:n})).data,Ns=async({cameraname:a,zoneData:s})=>(await Ne.post(`/cameras/${a}/zones`,s)).data,Ds=async({cameraname:a,zonename:s,zoneData:n})=>(await Ne.patch(`/cameras/${a}/zones/${s}`,n)).data,Ls=async({cameraname:a,zonename:s})=>(await Ne.delete(`/cameras/${a}/zones/${s}`)).data,Rs=async({cameraname:a})=>(await Ne.delete(`/cameras/${a}`)).data,js=async()=>(await Ne.delete("/cameras")).data;class Xt{constructor(){Va(this,"_queryClient",Ln());Va(this,"queryActivator",b([{name:"getCameraQuery",enabled:!0},{name:"getCamerasQuery",enabled:!0},{name:"getCameraSnapshotQuery",enabled:!0},{name:"getCameraExtensionsQuery",enabled:!0},{name:"getCameraExtensionConfigQuery",enabled:!0},{name:"getZoneQuery",enabled:!0}]))}get queryClient(){return this._queryClient}createCameraQuery(){return et({mutationFn:Vs,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),yt.success(Tt.global.t("components.toast.camera_added"))}})}previewCameraQuery(){return et({mutationFn:Ss})}getCameraQuery(s){return Rt({queryKey:["cameras",s],queryFn:({signal:n})=>wo({cameraname:e(s),signal:n}),enabled:()=>this.queryActivator.value.some(n=>n.name==="getCameraQuery"&&n.enabled)})}getCameraExtensionsQuery(s){return Rt({queryKey:["camerasExtensions",s],queryFn:({signal:n})=>Es({cameraname:e(s),signal:n}),enabled:()=>this.queryActivator.value.some(n=>n.name==="getCameraExtensionsQuery"&&n.enabled)})}getCameraSnapshotQuery(s){return Rt({queryKey:["camerasSnapshot",s],queryFn:({signal:n})=>Ps({cameraname:e(s),signal:n}),enabled:()=>this.queryActivator.value.some(n=>n.name==="getCameraSnapshotQuery"&&n.enabled),staleTime:6e4,retry:!1})}getCamerasQuery(s){return Rt({queryKey:["camerasList",s],queryFn:({signal:n})=>zs({parameter:e(s),signal:n}),placeholderData:n=>n,enabled:()=>this.queryActivator.value.some(n=>n.name==="getCamerasQuery"&&n.enabled)})}patchCameraQuery(){return et({mutationFn:Ms,onSuccess:async(s,n)=>{if(n.cameraData.name&&n.cameraData.name!==n.cameraname){const E=n.cameraname;await this._queryClient.invalidateQueries({queryKey:[E]}),await this._queryClient.refetchQueries({queryKey:["camerasList"]})}else await this._queryClient.refetchQueries({queryKey:["cameras",n.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",n.cameraname]}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",n.cameraname]});yt.success(Tt.global.t("components.toast.camera_updated"))}})}getCameraExtensionConfigQuery(s,n,C){return Rt({staleTime:0,queryKey:["cameras","extensions",s,n],queryFn:({signal:E})=>Fs({cameraname:e(s),pluginname:e(n),signal:E}),enabled:()=>this.queryActivator.value.some(E=>E.name==="getCameraExtensionConfigQuery"&&E.enabled),refetchInterval(){if(C.value)return 3e3}})}patchCameraExtensionConfigQuery(){return et({mutationFn:Bs,onSuccess:async(s,n)=>{await this._queryClient.refetchQueries({queryKey:["cameras",n.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",n.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",n.cameraname]})}})}submitCameraExtensionConfigQuery(){return et({mutationFn:Is,onSuccess:async(s,n)=>{await this._queryClient.refetchQueries({queryKey:["cameras",n.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["cameras","extensions",n.cameraname]}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",n.cameraname]})}})}enableCameraExtensionQuery(){return et({mutationFn:Ts,onSuccess:async(s,n)=>{await this._queryClient.refetchQueries({queryKey:["cameras",n.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",n.cameraname]})}})}disableCameraExtensionQuery(){return et({mutationFn:qs,onSuccess:async(s,n)=>{await this._queryClient.refetchQueries({queryKey:["cameras",n.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",n.cameraname]})}})}addCameraExtensionQuery(){return et({mutationFn:As,onSuccess:async(s,n)=>{await this._queryClient.refetchQueries({queryKey:["cameras",n.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",n.cameraname]})}})}getZoneQuery(s,n){return Rt({queryKey:["cameras",s,"zones",n],queryFn:({signal:C})=>Qs({cameraname:e(s),zonename:e(n),signal:C}),enabled:()=>this.queryActivator.value.some(C=>C.name==="getZoneQuery"&&C.enabled)})}addCameraZoneQuery(){return et({mutationFn:Ns,onSuccess:async(s,n)=>{await this._queryClient.refetchQueries({queryKey:["cameras",n.cameraname],exact:!0}),yt.success(Tt.global.t("components.toast.zone_added"))}})}patchCameraZoneQuery(){return et({mutationFn:Ds,onSuccess:async(s,n)=>{await this._queryClient.refetchQueries({queryKey:["cameras",n.cameraname],exact:!0}),yt.success(Tt.global.t("components.toast.zone_updated"))}})}removeCameraZoneQuery(){return et({mutationFn:Ls,onSuccess:async(s,n)=>{await this._queryClient.refetchQueries({queryKey:["cameras",n.cameraname],exact:!0}),yt.success(Tt.global.t("components.toast.zone_removed"))}})}removeCameraExtensionQuery(){return et({mutationFn:Os,onSuccess:async(s,n)=>{await this._queryClient.refetchQueries({queryKey:["cameras",n.cameraname],exact:!0}),await this._queryClient.refetchQueries({queryKey:["camerasExtensions",n.cameraname]})}})}removeCameraQuery(){return et({mutationFn:Rs,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),yt.success(Tt.global.t("components.toast.camera_removed"))}})}removeCamerasQuery(){return et({mutationFn:js,onSuccess:async()=>{await this._queryClient.refetchQueries({queryKey:["camerasList"]}),yt.success(Tt.global.t("components.toast.cameras_removed"))}})}toggleQueryActivator(s,n){const C=this.queryActivator.value.find(E=>E.name===s);C&&(C.enabled=n)}}const Us=he.union([he.literal("bubble://"),he.literal("dvrip://"),he.literal("echo:"),he.literal("exec:"),he.literal("expr:"),he.literal("ffmpeg:"),he.literal("gopro://"),he.literal("hass:"),he.literal("homekit://"),he.literal("http://"),he.literal("https://"),he.literal("httpx://"),he.literal("isapi://"),he.literal("ivideon:"),he.literal("kasa://"),he.literal("nest:"),he.literal("onvif://"),he.literal("roborock://"),he.literal("rtmp://"),he.literal("rtsp://"),he.literal("rtspx://"),he.literal("tapo://"),he.literal("tcp://"),he.literal("webrtc:"),he.literal("webtorrent:")]),Zs=he.object({protocol:Us,url:he.string().min(1,"Camera Source is required").array().nonempty("Camera Source is required")}).strict(),Ks=he.object({name:he.string().min(1,"Camera Source Name is required"),roles:Eo.array().nonempty("Minimum one role is required"),urls:Zs.array()}).strict(),Ws=Ks.array(),Hs=he.object({...Fo.shape,sources:Ws}).strict(),hu=ya(Hs),Ha=ya(Bo),xo=ya(Io),Co=a=>(Do("data-v-0cdb0e1b"),a=a(),Lo(),a),Ys={key:0},Js={key:1,class:"flex flex-col justify-center items-center"},Xs={class:"relative w-full"},Gs={class:"w-full flex flex-col items-center justify-center"},el={class:"relative w-full flex flex-col items-center justify-center"},tl={class:"absolute top-0 left-0 right-0 bottom-0"},al={class:"playground-container flex w-full h-full"},ol={class:"sandbox w-full h-full"},nl={class:"handles"},sl=["data-id","data-coord","data-region","onDblclick"],ll=Co(()=>p("div",{class:"delete-point"},null,-1)),rl=[ll],il={class:"clipboard"},ul={width:"100%",height:"100%",class:"polygon-container"},cl=["d","onClick","onDblclick","onMousedown","onTouchstart"],dl=Co(()=>p("div",{class:"shadowboard on"},null,-1)),ml={class:"flex align-center flex-column pa-6 zone-buttons"},pl={class:"w-100"},vl=["for"],fl={key:1,class:"text-grey text-caption align-self-center"},gl={key:1,class:"w-100"},yl={class:"v-label"},hl={key:0},bl={key:1},_l={key:0},kl={key:1},wl={key:0},xl={key:1},Cl=pt({__name:"VZoneEditor",props:{cameraName:{},zones:{},isNewZone:{type:Boolean}},emits:["show-modal"],setup(a,{emit:s}){const n=new Xt,C=s,E=a,{cameraName:N,zones:L,isNewZone:_}=vt(E),j=b(!0),S=b(!1),M=b([]),w=b([]),k=b([]),P=b(null),u=b(),q=b(!1),te=b(0),g=b(-1),J=b(null),me=b(-1),de=b(Object.values(rs).sort((m,f)=>m==="motion"?-1:f==="motion"?1:0));let pe=!1,I={x:0,y:0};const h=Yt(P);Ta(J,m=>{const f=m.target,oe=f.closest(".polygon"),le=f.closest(".edit-button"),ye=f.closest(".remove-button"),G=f.closest(".handle"),Me=f.closest(".zone-buttons"),Fe=f.closest(".coco-labels");!oe&&!le&&!ye&&!G&&!S.value&&!Me&&!Fe&&(g.value=-1)});const{mutateAsync:ee,isPending:A}=n.addCameraZoneQuery(),{mutateAsync:H,isPending:T}=n.patchCameraZoneQuery(),$=W(()=>q.value||A.value||T.value),R=W(()=>{var m,f;return((f=(m=u.value)==null?void 0:m.regions[g.value])==null?void 0:f.classes.length)===de.value.length}),Y=W(()=>{var m,f;return(((f=(m=u.value)==null?void 0:m.regions[g.value])==null?void 0:f.classes.length)||0)>0}),qe=W(()=>{var f;const m=[];return S.value&&m.push("customizing"),(f=u.value)!=null&&f.regions.length||m.push("start"),m.join(" ")});ke(me,()=>{me.value=-1}),ke(L,m=>{m&&(u.value=JSON.parse(JSON.stringify(m)))},{deep:!0,immediate:!0}),ke(u,m=>{m&&(M.value=m.regions.map((f,oe)=>f.coords.map((le,ye)=>({_id:le._id,regionIndex:oe,coordIndex:ye,coord:le.points}))).flat()||[])},{deep:!0,immediate:!0}),ke(j,m=>{m||setTimeout(()=>C("show-modal",!1),300)}),ke([h.width,h.height],()=>{se()});const De=()=>{!u.value||!u.value.regions[g.value]||(R.value?u.value.regions[g.value].classes=[]:u.value.regions[g.value].classes=[...de.value])},Le=m=>{if("touches"in m){const f=m.touches[0];return{x:f.clientX,y:f.clientY}}return{x:m.clientX,y:m.clientY}},Oe=(m,f)=>{if(m.stopPropagation(),!P.value)return;Je(S.value),pe=!0,g.value=f;const oe=P.value.getBoundingClientRect(),{x:le,y:ye}=Le(m);I.x=(le-oe.left)/oe.width*100,I.y=(ye-oe.top)/oe.height*100},Re=m=>{if(!pe||!P.value||g.value===-1||!u.value)return;const f=P.value.getBoundingClientRect(),{x:oe,y:le}=Le(m),ye=(oe-f.left)/f.width*100,G=(le-f.top)/f.height*100,Me=ye-I.x,Fe=G-I.y,xe=u.value.regions[g.value].coords;let ve=!1;for(let be=0;be<xe.length;be++){let ct=xe[be].points[0]+Me,st=xe[be].points[1]+Fe;if(ct<0||ct>100||st<0||st>100){ve=!0;break}}if(!ve)for(let be=0;be<xe.length;be++){xe[be].points[0]+=Me,xe[be].points[1]+=Fe,xe[be].points[0]=Math.max(0,Math.min(100,xe[be].points[0])),xe[be].points[1]=Math.max(0,Math.min(100,xe[be].points[1]));const ct=xe[be].points[0]/100*f.width,st=xe[be].points[1]/100*f.height,Xe=w.value.find(Qt=>Qt.id===xe[be]._id);Xe==null||Xe.setPosition(ct,st)}I.x=ye,I.y=G},Ce=()=>{setTimeout(()=>{pe=!1},100)},Pe=()=>{!u.value||g.value===-1||(u.value.regions[g.value].isPrivacyMask=!u.value.regions[g.value].isPrivacyMask)},Ee=()=>{!u.value||!u.value.regions[g.value]||(u.value.regions[g.value].filter=u.value.regions[g.value].filter==="include"?"exclude":"include")},Te=()=>{!u.value||!u.value.regions[g.value]||(u.value.regions[g.value].type=u.value.regions[g.value].type==="intersect"?"contain":"intersect")},Ze=m=>{if(!S.value||!u.value||pe)return;const f=te.value,oe=Math.min(Math.max(Math.round((m.offsetX-10)/h.width.value*100),0),100),le=Math.min(Math.max(Math.round((m.offsetY-10)/h.height.value*100),0),100);u.value.regions[f]||u.value.regions.push({_id:Math.random().toString(36).substring(7),coords:[],filter:"include",type:"contain",classes:[],isPrivacyMask:!1});const ye={_id:Math.random().toString(36).substring(7),points:[oe,le]};u.value.regions[f].coords.push(ye),$t(()=>{it({_id:ye._id,regionIndex:f,coordIndex:u.value.regions[f].coords.length-1,coord:[oe,le]})})},it=m=>{var oe;if(m.regionIndex===void 0||m.coordIndex===void 0)return;const f=(oe=k.value)==null?void 0:oe.filter(le=>le.dataset.coord===m.coordIndex.toString()&&le.dataset.region===m.regionIndex.toString());f.length!==0&&$e(f[0],m.coord)},nt=m=>{if(!u.value)return;let f=Math.round(m.coord[0]/h.width.value*100),oe=Math.round(m.coord[1]/h.height.value*100);const le={_id:m._id,points:[f,oe]};u.value.regions[m.regionIndex].coords[m.coordIndex]=le},We=()=>{u.value&&(S.value=!0,te.value=u.value.regions.length||0)},Je=m=>{var oe;if(!u.value)return;S.value=m||!1;const f=te.value;!u.value.regions.length||!u.value.regions[f]||!u.value.regions[f].coords||(u.value.regions[f].coords.length<3?u.value.regions=u.value.regions.filter((le,ye)=>ye!==f):(oe=k.value)==null||oe.forEach(le=>He(le)))},O=()=>{S.value=!0,te.value=g.value},ft=()=>{g.value===-1||!u.value||(u.value.regions=u.value.regions.filter((m,f)=>f!==g.value),g.value=-1)},ut=()=>{var oe,le;if(!((oe=u.value)!=null&&oe.regions.length))return;const m=ye=>{var G,Me,Fe,xe,ve;(Me=(G=u.value)==null?void 0:G.regions[ye])!=null&&Me.coords.length&&((xe=(Fe=u.value.regions[ye])==null?void 0:Fe.coords)==null||xe.pop(),(ve=u.value.regions[ye])!=null&&ve.coords.length||u.value.regions.pop())};let f=u.value.regions.length;(le=u.value.regions[f-1].coords)!=null&&le.length&&f--,!(f<0)&&m(f)},je=()=>{pe=!1,S.value=!1,M.value=[],u.value&&(u.value.regions=[])},Z=m=>{if(!m)return"";const f=m.map(le=>{const ye=Math.round(le[0]/100*h.width.value),G=Math.round(le[1]/100*h.height.value);return`${ye+10},${G+10}`});if(f.length===0)return"";let oe=`M ${f[0]}`;for(let le=1;le<f.length;le++)oe+=` L ${f[le]}`;return oe+=" Z",oe},X=m=>{S.value||(g.value=m)},se=()=>{ue(),k.value.forEach(m=>{var oe;if(!m.dataset.region||!m.dataset.coord||!u.value)return;const f=(oe=u.value.regions[parseInt(m.dataset.region)])==null?void 0:oe.coords[parseInt(m.dataset.coord)];$e(m,f.points),He(m)})},ue=()=>{w.value.forEach(m=>m.destroy()),w.value=[]},re=m=>{var f;!u.value||((f=u.value.regions[m.regionIndex])==null?void 0:f.coords.length)<4||u.value.regions[m.regionIndex].coords.splice(m.coordIndex,1)},$e=(m,f)=>{Object.assign(m.style,Qe(f))},Qe=m=>({left:Math.round(m[0]/100*h.width.value)+"px",top:Math.round(m[1]/100*h.height.value)+"px"}),He=m=>{m.classList.add("draggable");let f=new po(m,{containment:!0,grid:[0,0]}).on("pointerDown",()=>{var oe;(oe=document.querySelectorAll('[data-point="'+m.dataset.region+"-"+m.dataset.coord+'"]')[0])==null||oe.classList.add("changing")}).on("dragMove",()=>{if(!m.dataset.region||!m.dataset.coord||!m.dataset.id)return;const oe=f.position.x,le=f.position.y;nt({_id:m.dataset.id,coord:[oe,le],coordIndex:parseInt(m.dataset.coord),regionIndex:parseInt(m.dataset.region)})}).on("pointerUp",()=>{document.querySelectorAll(".point").forEach(oe=>oe.classList.remove("changing"))});f.id=m.dataset.id,w.value.push(f)},ge=async()=>{if(u.value)try{q.value=!0;const m=await xo.parse(u.value);m.value?(_.value?await ee({cameraname:N.value,zoneData:u.value}):await H({cameraname:N.value,zonename:u.value.name,zoneData:u.value}),j.value=!1):yt.error(m.errors[0].errors[0])}catch(m){console.error(m)}finally{q.value=!1}};return ga(async()=>{setTimeout(()=>{se()})}),(m,f)=>{const oe=Na,le=Ba;return l(),z(le,{modelValue:e(j),"onUpdate:modelValue":f[12]||(f[12]=ye=>Se(j)?j.value=ye:null),title:`${m.$t("components.zone_editor.zone")}: ${e(u)?e(u).name:m.$t("components.dialog.title.unknown")}`,loading:e($),onConfirm:f[13]||(f[13]=ye=>ge())},{content:t(()=>{var ye;return[e(u)?(l(),v("div",Js,[p("div",Xs,[p("div",{ref_key:"outsideEl",ref:J},null,512),p("div",Gs,[p("div",el,[p("div",tl,[p("div",al,[p("section",{class:jt(["playground w-full h-full",e(qe)]),onClick:Ze},[p("div",ol,[p("div",nl,[(l(!0),v(_e,null,Ve(e(M),G=>(l(),v("div",{key:G._id,ref_for:!0,ref_key:"draggables",ref:k,class:"handle","data-id":G._id,"data-coord":G.coordIndex,"data-region":G.regionIndex,onDblclick:K(Me=>re(G),["prevent"])},rl,40,sl))),128)),p("div",il,[(l(),v("svg",ul,[(l(!0),v(_e,null,Ve((ye=e(u))==null?void 0:ye.regions,(G,Me)=>(l(),v("path",{key:G._id,d:Z(G.coords.map(Fe=>Fe.points)),class:jt({polygon:G.filter=="include"&&!G.isPrivacyMask,"polygon-exclude":G.filter=="exclude"&&!G.isPrivacyMask,"polygon-privacy":G.isPrivacyMask,dash:G.type==="intersect"&&!G.isPrivacyMask,selected:e(g)===Me}),onClick:Fe=>X(Me),onDblclick:()=>G.isPrivacyMask=!G.isPrivacyMask,onMousedown:Fe=>Oe(Fe,Me),onMousemove:Re,onMouseup:Ce,onTouchstart:Fe=>Oe(Fe,Me),onTouchmove:Re,onTouchend:Ce},null,42,cl))),128))]))])]),dl])],2)])]),p("div",{ref_key:"player",ref:P,class:"w-full h-full flex flex-col items-center justify-center",style:{width:"calc(100% - 20px)","margin-top":"10px","margin-bottom":"10px"}},[o(oe,{mode:"webrtc",target:"stream","current-camera":e(N),"border-radius":0,border:"","source-role":"low-resolution"},null,8,["current-camera"])],512)]),p("div",ml,[p("div",pl,[e(u)&&e(u).regions&&e(g)>=0&&e(u).regions[e(g)]?(l(),z(e(Ie),{key:0,modelValue:e(u).regions[e(g)].classes,"onUpdate:modelValue":f[0]||(f[0]=G=>e(u).regions[e(g)].classes=G),name:`regions[${e(g)}].classes`},{default:t(({field:G,errorMessage:Me,errors:Fe})=>[p("label",{for:`regions[${e(g)}].classes`,class:"v-label"},d(m.$t("components.form.label.classes")),9,vl),o(Ot,ze({loading:e($),items:e(de),class:"coco-labels w-100",variant:"outlined",name:`regions[${e(g)}].classes`,type:"text",density:"compact",chips:"",multiple:"",clearable:""},G,{error:Fe.length>0,"error-messages":Me,"model-value":G.value,"menu-props":{class:"coco-labels"},onKeydown:K(()=>null,["prevent"])}),{"prepend-item":t(()=>[o(uo,{title:m.$t("components.form.label.select_all"),onClick:De},{prepend:t(()=>[o(co,{indeterminate:e(Y)&&!e(R),"model-value":e(R)},null,8,["indeterminate","model-value"])]),_:1},8,["title"]),o(Ye,{class:"mt-2"})]),chip:t(({item:xe,index:ve})=>[ve<5?(l(),z(tt,{key:0,color:"#df2a4c"},{default:t(()=>[x(d(xe.title),1)]),_:2},1024)):Q("",!0),ve===5?(l(),v("span",fl," (+"+d(e(u).regions[e(g)].classes.length-2)+") ",1)):Q("",!0)]),_:2},1040,["loading","items","name","error","error-messages","model-value"])]),_:1},8,["modelValue","name"])):(l(),v("div",gl,[p("label",yl,d(m.$t("components.form.label.classes")),1),o(Ot,{disabled:"",class:"w-100",variant:"outlined",type:"text",density:"compact"})]))]),o(Ua,{modelValue:e(me),"onUpdate:modelValue":f[7]||(f[7]=G=>Se(me)?me.value=G:null),variant:"outlined",divided:"",rounded:"xl",class:"mt-5"},{default:t(()=>[e(S)?(l(),z(ae,{key:1,loading:e($),onClick:f[2]||(f[2]=K(G=>Je(!1),["prevent"]))},{default:t(()=>[o(mt,{activator:"parent",location:"top"},{default:t(()=>[x(d(m.$t("components.form.tooltip.finish")),1)]),_:1}),o(U,{size:"20"},{default:t(()=>[x(d(e(Yo)),1)]),_:1})]),_:1},8,["loading"])):(l(),z(ae,{key:0,loading:e($),onClick:f[1]||(f[1]=K(G=>We(),["prevent"]))},{default:t(()=>[o(mt,{activator:"parent",location:"top"},{default:t(()=>[x(d(m.$t("components.form.tooltip.new")),1)]),_:1}),o(U,{size:"20"},{default:t(()=>[x(d(e(Ho)),1)]),_:1})]),_:1},8,["loading"])),o(ae,{loading:e($),disabled:!e(u).regions.length||e(g)<0||e(S),onClick:f[3]||(f[3]=K(G=>O(),["prevent"]))},{default:t(()=>[o(mt,{activator:"parent",location:"top"},{default:t(()=>[x(d(m.$t("components.form.tooltip.edit")),1)]),_:1}),o(U,{size:"20"},{default:t(()=>[x(d(e(lo)),1)]),_:1})]),_:1},8,["loading","disabled"]),o(ae,{loading:e($),disabled:!e(u).regions.length||e(g)<0,onClick:f[4]||(f[4]=K(G=>ft(),["prevent"]))},{default:t(()=>[o(mt,{activator:"parent",location:"top"},{default:t(()=>[x(d(m.$t("components.form.tooltip.delete")),1)]),_:1}),o(U,{size:"20"},{default:t(()=>[x(d(e(Jo)),1)]),_:1})]),_:1},8,["loading","disabled"]),o(ae,{loading:e($),disabled:!e(u).regions.length,onClick:f[5]||(f[5]=K(G=>ut(),["prevent"]))},{default:t(()=>[o(mt,{activator:"parent",location:"top"},{default:t(()=>[x(d(m.$t("components.form.tooltip.undo")),1)]),_:1}),o(U,{size:"20"},{default:t(()=>[x(d(e(Xo)),1)]),_:1})]),_:1},8,["loading","disabled"]),o(ae,{loading:e($),disabled:!e(u).regions.length,onClick:f[6]||(f[6]=K(G=>je(),["prevent"]))},{default:t(()=>[o(mt,{activator:"parent",location:"top"},{default:t(()=>[x(d(m.$t("components.form.tooltip.clear")),1)]),_:1}),o(U,{size:"20"},{default:t(()=>[x(d(e(Go)),1)]),_:1})]),_:1},8,["loading","disabled"])]),_:1},8,["modelValue"]),o(Ua,{modelValue:e(me),"onUpdate:modelValue":f[11]||(f[11]=G=>Se(me)?me.value=G:null),variant:"outlined",divided:"",rounded:"xl",class:"mt-5"},{default:t(()=>[o(ae,{disabled:!(e(u)&&e(u).regions&&e(g)>=0&&e(u).regions[e(g)]),loading:e($),onClick:f[8]||(f[8]=K(G=>Pe(),["prevent"]))},{default:t(()=>[e(u)&&e(u).regions&&e(g)>=0&&e(u).regions[e(g)]?(l(),v("div",hl,[o(mt,{activator:"parent",location:"top"},{default:t(()=>[x(d(e(u).regions[e(g)].isPrivacyMask?m.$t("components.form.tooltip.privacy_mask"):m.$t("components.form.tooltip.public_mask")),1)]),_:1}),o(U,{size:"20"},{default:t(()=>[x(d(e(u).regions[e(g)].isPrivacyMask?e(en):e(Ma)),1)]),_:1})])):(l(),v("div",bl,[o(U,{size:"20"},{default:t(()=>[x(d(e(Ma)),1)]),_:1})]))]),_:1},8,["disabled","loading"]),o(ae,{disabled:!(e(u)&&e(u).regions&&e(g)>=0&&e(u).regions[e(g)]&&!e(u).regions[e(g)].isPrivacyMask),loading:e($),onClick:f[9]||(f[9]=K(G=>Ee(),["prevent"]))},{default:t(()=>[e(u)&&e(u).regions&&e(g)>=0&&e(u).regions[e(g)]&&!e(u).regions[e(g)].isPrivacyMask?(l(),v("div",_l,[o(mt,{activator:"parent",location:"top"},{default:t(()=>[x(d(e(u).regions[e(g)].filter==="include"?m.$t("components.form.tooltip.include"):m.$t("components.form.tooltip.exclude")),1)]),_:1}),o(U,{size:"20"},{default:t(()=>[x(d(e(u).regions[e(g)].filter==="include"?e(La):e(tn)),1)]),_:1})])):(l(),v("div",kl,[o(U,{size:"20"},{default:t(()=>[x(d(e(La)),1)]),_:1})]))]),_:1},8,["disabled","loading"]),o(ae,{disabled:!(e(u)&&e(u).regions&&e(g)>=0&&e(u).regions[e(g)]&&!e(u).regions[e(g)].isPrivacyMask),loading:e($),onClick:f[10]||(f[10]=K(G=>Te(),["prevent"]))},{default:t(()=>[e(u)&&e(u).regions&&e(g)>=0&&e(u).regions[e(g)]&&!e(u).regions[e(g)].isPrivacyMask?(l(),v("div",wl,[o(mt,{activator:"parent",location:"top"},{default:t(()=>[x(d(e(u).regions[e(g)].type==="intersect"?m.$t("components.form.tooltip.intersect"):m.$t("components.form.tooltip.contain")),1)]),_:1}),o(U,{size:"20"},{default:t(()=>[x(d(e(u).regions[e(g)].type==="intersect"?e(an):e(Ra)),1)]),_:1})])):(l(),v("div",xl,[o(U,{size:"20"},{default:t(()=>[x(d(e(Ra)),1)]),_:1})]))]),_:1},8,["disabled","loading"])]),_:1},8,["modelValue"])])])])])):(l(),v("div",Ys,[o(Vt,{indeterminate:"",color:"#df2a4c"})]))]}),_:1},8,["modelValue","title","loading"])}}}),$l=Bt(Cl,[["__scopeId","data-v-0cdb0e1b"]]),Vl={class:"flex flex-col w-full",style:{height:"calc(100% - 45px - env(safe-area-inset-bottom, 0px))"}},Sl={class:"flex w-full p-2 items-center"},Pl={key:0},zl={class:"options-segments flex items-center justify-between"},Ml={class:"flex flex-col items-center justify-center"},El={class:"options-segments-text"},Fl={key:0,class:"options-container flex justify-center items-center"},Bl={class:"mt-auto"},Il=pt({__name:"VOptionsSidebar",props:{state:{type:Boolean,default:!1},title:{},segments:{default:()=>["default"]},loading:{type:Boolean,default:!1},width:{default:400}},emits:["close","selected"],setup(a,{emit:s}){Ro(q=>({bd3ce394:e(k)}));const n=a,C=s,{segments:E,state:N,title:L,loading:_,width:j}=vt(n),S=b(null),M=b(E.value[0]),w=b(!1),k=b(`${j.value}px`),{smallMobileActive:P}=Xa();ke(N,()=>{w.value=N.value}),ke(w,()=>{w.value!==N.value&&setTimeout(()=>{C("close")},300),u(P.value&&w.value)}),ke(P,()=>{u(P.value&&w.value)});const u=q=>{};return Ta(S,q=>{const te=q.target,g=te.closest(".v-overlay-container"),J=te.closest(".Toastify");!g&&!J&&(w.value=!1)}),ga(()=>{C("selected",M.value)}),(q,te)=>(l(),z(eo,{name:"options-slide",mode:"out-in"},{default:t(()=>[e(w)?(l(),v("div",{key:0,ref_key:"optionsSidebar",ref:S,class:"options-sidebar"},[p("div",Vl,[p("div",Sl,[e(L)?(l(),v("b",Pl,d(e(L)),1)):Q("",!0),o(ae,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:te[0]||(te[0]=K(g=>w.value=!1,["prevent"]))},{default:t(()=>[o(U,{size:"20"},{default:t(()=>[x(d(e(At)),1)]),_:1})]),_:1})]),p("div",zl,[o(qn,{modelValue:e(M),"onUpdate:modelValue":[te[1]||(te[1]=g=>Se(M)?M.value=g:null),te[2]||(te[2]=g=>C("selected",g))],height:"100%",grow:"","slider-color":"#df2a4c"},{default:t(()=>[(l(!0),v(_e,null,Ve(e(E),(g,J)=>(l(),z(An,{key:J,value:g,disabled:e(_),"min-width":"auto"},{default:t(()=>[p("div",Ml,[Pa(q.$slots,`segmentIcon.${g}`,{},()=>[o(U,{size:"20"},{default:t(()=>[x(d(e(Ia)),1)]),_:1})],!0),p("span",El,d(q.$t(`components.options_sidebar.segment_tab_${g.toLowerCase()}`)),1)])]),_:2},1032,["value","disabled"]))),128))]),_:3},8,["modelValue"])]),e(_)?(l(),v("div",Fl,[o(Vt,{color:"#df2a4c",indeterminate:""})])):(l(),z(qa,{key:1,modelValue:e(M),"onUpdate:modelValue":te[3]||(te[3]=g=>Se(M)?M.value=g:null),class:"options-container",continuous:""},{default:t(()=>[(l(!0),v(_e,null,Ve(e(E),(g,J)=>(l(),z(Aa,{key:J,value:g,class:"h-full pb-safe overflow-y-scroll",eager:"",continuous:""},{default:t(()=>[Pa(q.$slots,`body.${g}`,{},void 0,!0)]),_:2},1032,["value"]))),128))]),_:3},8,["modelValue"])),p("div",Bl,[Pa(q.$slots,"footer",{},void 0,!0)])])],512)):Q("",!0)]),_:3}))}}),Tl=Bt(Il,[["__scopeId","data-v-03a5e73e"]]),ql={class:"text-sm"},Al={class:"text-right"},Ol={class:"text-right"},Ql={key:0},Nl={key:0},Dl={class:"text-right"},Ll={key:1},Rl={class:"text-right"},jl={key:2},Ul={class:"text-right"},Zl={class:"flex justify-start"},Kl={class:"v-label mb-0 ml-2",for:"disabled"},Wl={class:"relative mt-2"},Hl={for:"name",class:"v-label"},Yl={class:"relative"},Jl={for:"info.manufacturer",class:"v-label"},Xl={class:"relative"},Gl={for:"info.model",class:"v-label"},er={class:"relative"},tr={for:"info.hardware",class:"v-label"},ar={class:"relative"},or={for:"info.serialNumber",class:"v-label"},nr={class:"relative"},sr={for:"info.firmwareVersion",class:"v-label"},lr={class:"relative"},rr={for:"info.supportUrl",class:"v-label"},ir={for:"interface.streamingMode",class:"v-label"},ur={class:"text-sm"},cr={class:"w-full flex flex-col items-center justify-center mt-5"},dr={class:"relative w-full"},mr={for:"activitySettings.motion.timeout",class:"v-label"},pr={class:"text-sm"},vr={class:"w-full flex flex-col items-center justify-center mt-5"},fr={class:"relative w-full"},gr={for:"activitySettings.motion.confidence",class:"v-label"},yr={class:"w-full flex flex-col items-center justify-center"},hr={key:0,class:"text-sm text-passive mb-3"},br={class:"relative"},_r={for:"frameWorkerSettings.decoder",class:"v-label"},kr={class:"relative"},wr={for:"frameWorkerSettings.resolution",class:"v-label"},xr={class:"relative"},Cr={for:"frameWorkerSettings.fps",class:"v-label"},$r={class:"flex flex-row items-center justify-center ml-auto"},Vr={class:"relative mt-2"},Sr=["for"],Pr={class:"relative mt-2"},zr=["for"],Mr={class:"relative mt-2 flex flex-col w-full"},Er=["for"],Fr={class:"w-full flex items-center justify-center my-3"},Br={class:"plugints-title p-2"},Ir={class:"v-label"},Tr={key:0,class:"plugints-title p-2"},qr={class:"v-label"},Ar={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Or={class:"text-sm text-passive"},Qr={key:1,class:"plugints-title p-2"},Nr={class:"v-label"},Dr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Lr={class:"text-sm text-passive"},Rr={key:2,class:"plugints-title p-2"},jr={class:"v-label"},Ur={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Zr={class:"text-sm text-passive"},Kr={key:3,class:"plugints-title p-2"},Wr={class:"v-label"},Hr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},Yr={class:"text-sm text-passive"},Jr={key:4,class:"plugints-title p-2"},Xr={class:"v-label"},Gr={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},ei={class:"text-sm text-passive"},ti={key:5,class:"plugints-title p-2"},ai={class:"v-label"},oi={key:1,class:"w-full h-full flex items-center justify-center",style:{height:"43px"}},ni={class:"text-sm text-passive"},si={class:"p-2"},li={key:0,class:"mb-4"},ri={class:"v-label"},ii={key:1},ui={class:"v-label"},ci={key:0,class:"w-full flex items-center justify-center my-5"},di={key:1,class:"w-full flex items-center justify-center my-5"},mi={class:"text-sm text-passive"},pi={key:0,class:"p-2"},vi={class:"v-label"},fi=pt({__name:"VCameraOptions",props:{cameraName:{},show:{type:Boolean,default:!1}},emits:["close"],setup(a,{emit:s}){const n=new Xt,C=new mo,E=Rn(),N=vo(),{api:L}=Ga(),_=a,j=s,{cameraName:S,show:M}=vt(_),w=b(),k=b(),P=b(),u=b(),q=b(),te=b(["hub","motionDetection","objectDetection","audioDetection","prebuffer","ptz","more"]),g=b(!1),J=b(!1),me=b(),de=b(),pe=b({page:1,pageSize:-1}),I=b(!1),h=b("hub"),ee=b(),A=b(),H=b(),T=b(),$=b(),R=b(),Y=b(""),qe=b(),De=b(!0),Le=b(!1),Oe=b(!1),Re=b(["high-resolution","mid-resolution","low-resolution","snapshot"]),Ce=b(["hls","mjpeg","mp4","mse","webrtc","webrtc/tcp"]),Pe=b([640,480,320]),Ee=b(["pillow","wasm"]),Te=b(!0),Ze=b(),it=b(),nt=b(),We=b(!1),Je=b({name:"",regions:[]});n.toggleQueryActivator("getCameraExtensionConfigQuery",!1);const{data:O,isLoading:ft,suspense:ut}=n.getCameraQuery(S),{data:je,isLoading:Z,suspense:X}=n.getCameraExtensionsQuery(S),{data:se,isLoading:ue}=n.getCameraExtensionConfigQuery(S.value,Y,Te),{mutate:re,isPending:$e}=n.removeCameraQuery(),{mutate:Qe,isPending:He}=n.patchCameraQuery(),{mutate:ge,isPending:m}=n.patchCameraExtensionConfigQuery(),{mutate:f,isPending:oe}=n.submitCameraExtensionConfigQuery(),{mutateAsync:le,isPending:ye}=n.addCameraExtensionQuery(),{mutateAsync:G,isPending:Me}=n.removeCameraExtensionQuery(),{mutateAsync:Fe,isPending:xe}=n.enableCameraExtensionQuery(),{mutateAsync:ve,isPending:be}=n.disableCameraExtensionQuery(),{mutateAsync:ct,isPending:st}=n.removeCameraZoneQuery(),{data:Xe,isLoading:Qt,suspense:Zt}=C.getPluginsQuery(pe),{data:dt,isLoading:ht}=C.getPluginsExtensionsQuery(pe),{mutate:Ke,isPending:ha}=C.actionButtonQuery(),we=W(()=>ft.value||$e.value),Ue=W(()=>Z.value||ht.value||ye.value||Me.value||xe.value||be.value||st.value),Nt=W(()=>st.value),Ge=W(()=>Nt.value||Ue.value||g.value||ha.value||m.value||He.value||oe.value),Kt=W(()=>{var c;const i=((c=je.value)==null?void 0:c.filter(D=>D.type.includes("hub")))||[];return i.length&&Xe.value&&Xe.value.result.some(D=>D.pluginName===i[0].pluginName&&!D.disabled)?(ee.value=i[0].pluginName,Y.value=i[0].pluginName):ee.value=void 0,bt(i)}),Gt=W(()=>{var c,D,fe;const i=((c=je.value)==null?void 0:c.filter(ie=>ie.type.includes("motionDetection")))||[];return i.length&&Be((D=O==null?void 0:O.value)==null?void 0:D.extensions.motionDetection)?A.value=(fe=O==null?void 0:O.value)==null?void 0:fe.extensions.motionDetection:A.value=void 0,bt(i)}),ea=W(()=>{var c,D,fe;const i=((c=je.value)==null?void 0:c.filter(ie=>ie.type.includes("audioDetection")))||[];return i.length&&Be((D=O==null?void 0:O.value)==null?void 0:D.extensions.audioDetection)?H.value=(fe=O==null?void 0:O.value)==null?void 0:fe.extensions.audioDetection:H.value=void 0,bt(i)}),Wt=W(()=>{var c,D,fe;const i=((c=je.value)==null?void 0:c.filter(ie=>ie.type.includes("objectDetection")))||[];return i.length&&Be((D=O==null?void 0:O.value)==null?void 0:D.extensions.objectDetection)?T.value=(fe=O==null?void 0:O.value)==null?void 0:fe.extensions.objectDetection:T.value=void 0,bt(i)}),Ht=W(()=>{var c,D,fe;const i=((c=je.value)==null?void 0:c.filter(ie=>ie.type.includes("ptz")))||[];return i.length&&Be((D=O==null?void 0:O.value)==null?void 0:D.extensions.ptz)?$.value=(fe=O==null?void 0:O.value)==null?void 0:fe.extensions.ptz:$.value=void 0,bt(i)}),ta=W(()=>{var c,D,fe;const i=((c=je.value)==null?void 0:c.filter(ie=>ie.type.includes("prebuffer")))||[];return i.length&&Be((D=O==null?void 0:O.value)==null?void 0:D.extensions.prebuffer)?R.value=(fe=O==null?void 0:O.value)==null?void 0:fe.extensions.prebuffer:R.value=void 0,bt(i)});ke(ee,(i,c)=>{i&&i!==c&&St()}),ke(h,(i,c)=>{i===void 0&&(h.value=c)}),ke(M,i=>{if(I.value){I.value=!1,j("close");return}$t(()=>I.value=i)}),ke(O,i=>{i&&(k.value=jo(i))},{deep:!0,immediate:!0}),ke(A,(i,c)=>{i!==c&&(!i&&c?lt(c,!1,"motionDetection"):i&&lt(i,!0,"motionDetection"))}),ke(T,(i,c)=>{i!==c&&(!i&&c?lt(c,!1,"objectDetection"):i&&lt(i,!0,"objectDetection"))}),ke($,(i,c)=>{i!==c&&(!i&&c?lt(c,!1,"ptz"):i&&lt(i,!0,"ptz"))}),ke(H,(i,c)=>{i!==c&&(!i&&c?lt(c,!1,"audioDetection"):i&&lt(i,!0,"audioDetection"))}),ke(R,(i,c)=>{i!==c&&(!i&&c?lt(c,!1,"prebuffer"):i&&lt(i,!0,"prebuffer"))}),ke(J,i=>{i||(me.value=void 0,de.value=void 0)});const bt=i=>i.sort((c,D)=>!Be(c.pluginName)&&Be(D.pluginName)?1:Be(c.pluginName)&&!Be(D.pluginName)?-1:c.displayName.localeCompare(D.displayName)),aa=async(i,c)=>{await n.queryClient.refetchQueries({queryKey:["cameras","extensions",i,c]})},oa=i=>{var c;(c=k.value)==null||c.sources[i].urls.push("")},ba=(i,c)=>{var D;(D=k.value)==null||D.sources[i].urls.splice(c,1)},Dt=()=>{re({cameraname:S.value},{onSuccess:()=>{E.path.includes(S.value)&&N.push({path:"/cameras"}),Le.value=!1}})},na=()=>{k.value&&k.value.sources.push({_id:"",name:"",roles:[],urls:[]})},_a=i=>{k.value&&k.value.sources.splice(i,1)},ka=()=>{Je.value={name:"",regions:[]},Oe.value=!0},wa=()=>{Oe.value=!1,qe.value=void 0,We.value=!1,Je.value={name:"",regions:[]}},sa=async(i,c)=>{var D;if(c){const fe=await((D=q.value)==null?void 0:D.validate());if(!(fe!=null&&fe.valid))return}Oe.value=!1,c?We.value=!0:We.value=!1,qe.value=i},xa=async i=>{await ct({cameraname:S.value,zonename:i})},lt=async(i,c,D)=>{c?(!D||!O.value||O.value.extensions[D]!==i)&&(await Fe({cameraname:S.value,pluginname:i,type:D}),$t(()=>St())):(!D||!O.value||O.value.extensions[D]===i)&&(await ve({cameraname:S.value,pluginname:i,type:D}),$t(()=>St()))},Be=i=>{if(i&&Xe.value&&Xe.value.result.some(c=>c.pluginName===i&&!c.disabled))return i},St=(i,c)=>{var D,fe,ie,It,Pt,y;switch(n.toggleQueryActivator("getCameraExtensionConfigQuery",!1),h.value){case"hub":Y.value=Be((D=Kt.value[0])==null?void 0:D.pluginName)||"";break;case"motionDetection":Y.value=Be((fe=O==null?void 0:O.value)==null?void 0:fe.extensions.motionDetection)||"";break;case"audioDetection":Y.value=Be((ie=O==null?void 0:O.value)==null?void 0:ie.extensions.audioDetection)||"";break;case"objectDetection":Y.value=Be((It=O==null?void 0:O.value)==null?void 0:It.extensions.objectDetection)||"";break;case"ptz":Y.value=Be((Pt=O==null?void 0:O.value)==null?void 0:Pt.extensions.ptz)||"";break;case"prebuffer":Y.value=Be((y=O==null?void 0:O.value)==null?void 0:y.extensions.prebuffer)||"";break;default:Y.value="";break}Y.value&&Y.value!==""&&n.toggleQueryActivator("getCameraExtensionConfigQuery",!0)},la=async i=>{je.value&&(je.value.some(c=>c.pluginName===i.pluginName)?await G({cameraname:S.value,pluginname:i.pluginName}):await le({cameraname:S.value,pluginname:i.pluginName}))},ra=async(i,c)=>{g.value=!0,f({cameraname:S.value,pluginname:c,configPath:i.configPath},{onSettled:()=>{g.value=!1}})},Ca=(i,c)=>{g.value=!0,Ke({pluginName:c,actionId:i.actionId,payload:i.payload},{onSuccess:D=>{D!=null&&D.toast&&yt[D.toast.type](D.toast.message),D!=null&&D.schema&&Object.keys(D.schema).length&&(de.value=i.payload,me.value=D,J.value=!0)},onSettled:()=>{g.value=!1}})},$a=(i,c,D)=>{g.value=!0,ge({cameraname:i,pluginname:c,configData:D},{onSettled:()=>{g.value=!1}})},ia=async()=>{var D,fe;g.value=!0;const i=await((D=P.value)==null?void 0:D.validate()),c=await((fe=u.value)==null?void 0:fe.validate());if(i!=null&&i.valid&&(c!=null&&c.valid)){const ie={...i.values,...c.values};Qe({cameraname:S.value,cameraData:ie},{onSettled:()=>{g.value=!1}})}else g.value=!1};return to(async()=>{await Zt(),await ut(),await X(),St()}),ga(async()=>{var i,c,D,fe;w.value=await L.deviceManager.getCameraByName(S.value),(i=w.value)==null||i.onMotionDetected.subscribe(ie=>{ie.state||ie.detections.length?Ze.value=ie.timestamp:ie.lastEvent&&(ie.lastEvent.state||ie.lastEvent.detections.length)&&(Ze.value=ie.lastEvent.timestamp)}),(c=w.value)==null||c.onAudioDetected.subscribe(ie=>{ie.state?it.value=ie.timestamp:ie.lastEvent&&ie.lastEvent.state&&(it.value=ie.lastEvent.timestamp)}),(D=w.value)==null||D.onObjectDetected.subscribe(ie=>{ie.detections.length?nt.value=ie.timestamp:ie.lastEvent&&ie.lastEvent.detections.length&&(nt.value=ie.lastEvent.timestamp)}),await((fe=w.value)==null?void 0:fe.start())}),ao(()=>{var i;Te.value=!1,(i=w.value)==null||i.close()}),(i,c)=>{var ce;const D=Na,fe=za("v-number-input"),ie=ko,It=Tl,Pt=Ba,y=$l,F=$s;return l(),v(_e,null,[e(M)?(l(),z(It,{key:0,state:e(I),title:e(S),segments:["overview","sources","settings","plugins"],loading:e(we)||!e(k),onClose:c[28]||(c[28]=r=>j("close")),onSelected:c[29]||(c[29]=r=>De.value=r!=="plugins"&&r!=="overview")},{"segmentIcon.overview":t(()=>[o(U,{size:"20"},{default:t(()=>[x(d(e(on)),1)]),_:1})]),"body.overview":t(()=>[o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),o(D,{target:"snapshot","current-camera":e(S),"border-radius":0,style:{"border-bottom":"1px solid var(--border)"}},null,8,["current-camera"]),o(On,{class:"table-fixed w-full p-2",style:{background:"none !important"}},{default:t(()=>{var r,B,V,ne,Ae,at;return[p("tbody",ql,[p("tr",null,[p("td",null,d(i.$t("components.camera_options.name")),1),p("td",Al,d(e(S)),1)]),p("tr",null,[p("td",null,d(i.$t("components.camera_options.plugin")),1),p("td",Ol,[e(Qt)?(l(),v("span",Ql,[o(Vt,{color:"#df2a4c",size:"20",indeterminate:""})])):Q("",!0),p("span",null,d(((r=e(O))==null?void 0:r.pluginId)!=="native"?((V=(B=e(Xe))==null?void 0:B.result.find(zt=>{var Mt;return zt.id===((Mt=e(O))==null?void 0:Mt.pluginId)}))==null?void 0:V.pluginName)||i.$t("components.camera_options.unknown"):i.$t("components.camera_options.native")),1)])]),(ne=e(O))!=null&&ne.extensions.motionDetection?(l(),v("tr",Nl,[p("td",null,d(i.$t("components.camera_options.last_motion")),1),p("td",Dl,d(e(Ze)?e(Sa)(e(Ze),"DD.MM.YYYY, HH:mm:ss"):"-"),1)])):Q("",!0),(Ae=e(O))!=null&&Ae.extensions.objectDetection?(l(),v("tr",Ll,[p("td",null,d(i.$t("components.camera_options.last_object")),1),p("td",Rl,d(e(nt)?e(Sa)(e(nt),"DD.MM.YYYY, HH:mm:ss"):"-"),1)])):Q("",!0),(at=e(O))!=null&&at.extensions.audioDetection?(l(),v("tr",jl,[p("td",null,d(i.$t("components.camera_options.last_audio")),1),p("td",Ul,d(e(it)?e(Sa)(e(it),"DD.MM.YYYY, HH:mm:ss"):"-"),1)])):Q("",!0)])]}),_:1})]),"segmentIcon.settings":t(()=>[o(U,{size:"20"},{default:t(()=>[x(d(e(Ia)),1)]),_:1})]),"body.settings":t(()=>[o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),o(e(da),{ref_key:"cameraVeeForm1",ref:P,class:"flex flex-col h-full w-full p-2","validation-schema":e(Ha)},{default:t(()=>[o(Ct,null,{default:t(()=>[o(kt,{elevation:"0"},{default:t(()=>[o(wt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[x(d(i.$t("components.camera_options.general")),1)]),_:1}),o(xt,{eager:""},{default:t(()=>[p("div",Zl,[o(e(Ie),{modelValue:e(k).disabled,"onUpdate:modelValue":c[0]||(c[0]=r=>e(k).disabled=r),name:"disabled",type:"checkbox","checked-value":!0,"unchecked-value":!1},{default:t(({field:r,errorMessage:B,errors:V})=>[o(io,ze({loading:e(we),name:"disabled"},r,{color:"#df2a4c",type:"checkbox",error:V.length>0,"error-messages":B,"hide-details":"","model-value":r.checked,style:{"max-width":"fit-content"}}),null,16,["loading","error","error-messages","model-value"]),p("label",Kl,d(i.$t("components.form.label.disabled")),1)]),_:1},8,["modelValue"])]),p("div",Wl,[o(e(Ie),{modelValue:e(k).name,"onUpdate:modelValue":c[1]||(c[1]=r=>e(k).name=r),name:"name"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",Hl,d(i.$t("components.form.label.name")),1),o(rt,ze({loading:e(we),variant:"outlined",name:"name",type:"text",density:"compact"},r,{error:V.length>0,"error-messages":B}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),o(ae,{width:"100%",color:"red",variant:"flat",class:"mt-3",loading:e(we)||e(Ge),onClick:c[2]||(c[2]=K(r=>Le.value=!0,["prevent"]))},{default:t(()=>[x(d(i.$t("components.form.button.remove")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1}),o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),o(Ct,null,{default:t(()=>[o(kt,{elevation:"0"},{default:t(()=>[o(wt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[x(d(i.$t("components.camera_options.information")),1)]),_:1}),o(xt,{eager:""},{default:t(()=>[p("div",Yl,[o(e(Ie),{modelValue:e(k).info.manufacturer,"onUpdate:modelValue":c[3]||(c[3]=r=>e(k).info.manufacturer=r),name:"info.manufacturer"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",Jl,d(i.$t("components.form.label.camera_manufacturer")),1),o(rt,ze({loading:e(we),variant:"outlined",name:"info.manufacturer",type:"text",density:"compact"},r,{error:V.length>0,"error-messages":B}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),p("div",Xl,[o(e(Ie),{modelValue:e(k).info.model,"onUpdate:modelValue":c[4]||(c[4]=r=>e(k).info.model=r),name:"info.model"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",Gl,d(i.$t("components.form.label.camera_model")),1),o(rt,ze({loading:e(we),variant:"outlined",name:"info.model",type:"text",density:"compact"},r,{error:V.length>0,"error-messages":B}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),p("div",er,[o(e(Ie),{modelValue:e(k).info.hardware,"onUpdate:modelValue":c[5]||(c[5]=r=>e(k).info.hardware=r),name:"info.hardware"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",tr,d(i.$t("components.form.label.camera_hardware")),1),o(rt,ze({loading:e(we),variant:"outlined",name:"info.hardware",type:"text",density:"compact"},r,{error:V.length>0,"error-messages":B}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),p("div",ar,[o(e(Ie),{modelValue:e(k).info.serialNumber,"onUpdate:modelValue":c[6]||(c[6]=r=>e(k).info.serialNumber=r),name:"info.serialNumber"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",or,d(i.$t("components.form.label.camera_serialNumber")),1),o(rt,ze({loading:e(we),variant:"outlined",name:"info.serialNumber",type:"text",density:"compact"},r,{error:V.length>0,"error-messages":B}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),p("div",nr,[o(e(Ie),{modelValue:e(k).info.firmwareVersion,"onUpdate:modelValue":c[7]||(c[7]=r=>e(k).info.firmwareVersion=r),name:"info.firmwareVersion"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",sr,d(i.$t("components.form.label.camera_firmwareVersion")),1),o(rt,ze({loading:e(we),variant:"outlined",name:"info.firmwareVersion",type:"text",density:"compact"},r,{error:V.length>0,"error-messages":B}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),p("div",lr,[o(e(Ie),{modelValue:e(k).info.supportUrl,"onUpdate:modelValue":c[8]||(c[8]=r=>e(k).info.supportUrl=r),name:"info.supportUrl"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",rr,d(i.$t("components.form.label.camera_supportUrl")),1),o(rt,ze({loading:e(we),variant:"outlined",name:"info.supportUrl",type:"text",density:"compact"},r,{error:V.length>0,"error-messages":B}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1}),o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),o(Ct,null,{default:t(()=>[o(kt,{elevation:"0"},{default:t(()=>[o(wt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[x(d(i.$t("components.camera_options.interface")),1)]),_:1}),o(xt,{eager:""},{default:t(()=>[o(e(Ie),{modelValue:e(k).interface.streamingMode,"onUpdate:modelValue":c[9]||(c[9]=r=>e(k).interface.streamingMode=r),name:"interface.streamingMode"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",ir,d(i.$t("components.form.label.streaming_mode")),1),o(Ot,ze({loading:e(we),items:e(Ce),variant:"outlined",name:"interface.streamingMode",type:"text",density:"compact",chips:""},r,{error:V.length>0,"error-messages":B,"model-value":r.value,onKeydown:K(()=>null,["prevent"])}),{chip:t(({item:ne})=>[o(tt,{color:"#df2a4c"},{default:t(()=>[x(d(ne.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),o(Ct,null,{default:t(()=>[o(kt,{elevation:"0"},{default:t(()=>[o(wt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[x(d(i.$t("components.camera_options.activity_detection")),1)]),_:1}),o(xt,{eager:""},{default:t(()=>[p("span",ur,d(i.$t("components.camera_options.motion_detection_settings")),1),p("div",cr,[p("div",dr,[o(e(Ie),{modelValue:e(k).activitySettings.motion.timeout,"onUpdate:modelValue":c[10]||(c[10]=r=>e(k).activitySettings.motion.timeout=r),name:"activitySettings.motion.timeout"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",mr,d(i.$t("components.form.label.motion_duration")),1),o(fe,ze({"model-value":r.value,loading:e(we),variant:"outlined",name:"activitySettings.motion.timeout",type:"number",density:"compact"},r,{error:V.length>0,"error-messages":B}),null,16,["model-value","loading","error","error-messages"])]),_:1},8,["modelValue"])])]),o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-5"}),p("span",pr,d(i.$t("components.camera_options.object_detection_settings")),1),p("div",vr,[p("div",fr,[o(e(Ie),{modelValue:e(k).activitySettings.object.confidence,"onUpdate:modelValue":c[11]||(c[11]=r=>e(k).activitySettings.object.confidence=r),name:"activitySettings.object.confidence"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",gr,d(i.$t("components.form.label.confidence")),1),o(fe,ze({"model-value":r.value,loading:e(we),variant:"outlined",name:"activitySettings.object.confidence",type:"number",density:"compact"},r,{step:.01,error:V.length>0,"error-messages":B}),null,16,["model-value","loading","error","error-messages"])]),_:1},8,["modelValue"])])])]),_:1})]),_:1})]),_:1}),o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),o(Ct,null,{default:t(()=>[o(kt,{elevation:"0"},{default:t(()=>[o(wt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[x(d(i.$t("components.camera_options.activity_zones")),1)]),_:1}),o(xt,{eager:""},{default:t(()=>{var r,B,V;return[p("div",yr,[(B=(r=e(O))==null?void 0:r.activityZones)!=null&&B.length?(l(!0),v(_e,{key:1},Ve((V=e(O))==null?void 0:V.activityZones,(ne,Ae)=>(l(),v("div",{key:Ae,class:"w-full flex flex-row items-center"},[o(rt,{class:"my-1","model-value":ne.name,variant:"outlined",density:"compact",type:"text","hide-details":"",readonly:""},{"append-inner":t(()=>[o(ae,{class:"mr-2",size:"24",rounded:"",density:"compact",variant:"flat",color:"green",loading:e(Nt),onClick:K(at=>sa(ne,!1),["prevent"])},{default:t(()=>[o(U,{size:"16"},{default:t(()=>[x(d(e(lo)),1)]),_:1})]),_:2},1032,["loading","onClick"]),o(ae,{size:"24",rounded:"",density:"compact",variant:"flat",color:"red",loading:e(Nt),onClick:K(at=>xa(ne.name),["prevent"])},{default:t(()=>[o(U,{size:"16"},{default:t(()=>[x(d(e(At)),1)]),_:1})]),_:2},1032,["loading","onClick"])]),_:2},1032,["model-value"])]))),128)):(l(),v("span",hr,d(i.$t("components.camera_options.no_zones")),1))]),o(ae,{class:"mt-3",block:"",color:"#df2a4c",loading:e(Nt),variant:"flat",onClick:c[12]||(c[12]=K(ne=>ka(),["prevent"]))},{default:t(()=>[x(d(i.$t("components.form.button.new_zone")),1)]),_:1},8,["loading"])]}),_:1})]),_:1})]),_:1}),o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"}),o(Ct,null,{default:t(()=>[o(kt,{elevation:"0"},{default:t(()=>[o(wt,{style:{height:"48px"},class:"truncate"},{default:t(()=>[x(d(i.$t("components.camera_options.frame_worker_settings")),1)]),_:1}),o(xt,{eager:""},{default:t(()=>[p("div",br,[o(e(Ie),{modelValue:e(k).frameWorkerSettings.decoder,"onUpdate:modelValue":c[13]||(c[13]=r=>e(k).frameWorkerSettings.decoder=r),name:"frameWorkerSettings.decoder"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",_r,d(i.$t("components.form.label.decoder")),1),o(Ot,ze({loading:e(we),items:e(Ee),variant:"outlined",name:"frameWorkerSettings.decoder",type:"text",density:"compact",chips:""},r,{error:V.length>0,"error-messages":B,"model-value":r.value,onKeydown:K(()=>null,["prevent"])}),{chip:t(({item:ne})=>[o(tt,{color:"#df2a4c"},{default:t(()=>[x(d(ne.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),p("div",kr,[o(e(Ie),{modelValue:e(k).frameWorkerSettings.resolution,"onUpdate:modelValue":c[14]||(c[14]=r=>e(k).frameWorkerSettings.resolution=r),name:"frameWorkerSettings.resolution"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",wr,d(i.$t("components.form.label.resolution")),1),o(Ot,ze({loading:e(we),items:e(Pe),variant:"outlined",name:"frameWorkerSettings.resolution",type:"number",density:"compact",chips:""},r,{error:V.length>0,"error-messages":B,"model-value":r.value,onKeydown:K(()=>null,["prevent"])}),{chip:t(({item:ne})=>[o(tt,{color:"#df2a4c"},{default:t(()=>[x(d(ne.title),1)]),_:2},1024)]),_:2},1040,["loading","items","error","error-messages","model-value"])]),_:1},8,["modelValue"])]),p("div",xr,[o(e(Ie),{modelValue:e(k).frameWorkerSettings.fps,"onUpdate:modelValue":c[15]||(c[15]=r=>e(k).frameWorkerSettings.fps=r),name:"frameWorkerSettings.fps"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",Cr,d(i.$t("components.form.label.fps")),1),o(fe,ze({"model-value":r.value,loading:e(we),variant:"outlined",name:"frameWorkerSettings.fps",type:"number",density:"compact"},r,{min:5,max:10,step:1,error:V.length>0,"error-messages":B}),null,16,["model-value","loading","error","error-messages"])]),_:1},8,["modelValue"])])]),_:1})]),_:1})]),_:1})]),_:1},8,["validation-schema"])]),"segmentIcon.sources":t(()=>[o(U,{size:"20"},{default:t(()=>[x(d(e(Ma)),1)]),_:1})]),"body.sources":t(()=>[o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),o(e(da),{ref_key:"cameraVeeForm2",ref:u,class:"flex flex-col h-full w-full p-2","validation-schema":e(Ha)},{default:t(()=>[(l(!0),v(_e,null,Ve(e(k).sources,(r,B)=>(l(),v("div",{key:B},[o(Ct,null,{default:t(()=>[o(kt,{elevation:"0"},{default:t(()=>[o(wt,{style:{height:"48px"},class:"truncate"},{actions:t(({expanded:V})=>{var ne;return[p("div",$r,[o(ae,{loading:e(we),disabled:((ne=e(k))==null?void 0:ne.sources)!==void 0&&e(k).sources.length<2,size:"22.5",rounded:"",color:"red",variant:"text",class:"mx-2",onClick:K(Ae=>_a(B),["stop"])},{default:t(()=>[o(U,null,{default:t(()=>[x(d(e(At)),1)]),_:1})]),_:2},1032,["loading","disabled","onClick"]),V?(l(),z(U,{key:0,size:"22.5"},{default:t(()=>[x(d(e(oo)),1)]),_:1})):(l(),z(U,{key:1,size:"22.5"},{default:t(()=>[x(d(e(no)),1)]),_:1}))])]}),default:t(()=>[x(d(i.$t("components.camera_options.source")+": "+r.name.replace(/ /g,"_").toLowerCase())+" ",1)]),_:2},1024),o(xt,{eager:""},{default:t(()=>[p("div",Vr,[o(e(Ie),{modelValue:r.name,"onUpdate:modelValue":V=>r.name=V,name:`sources[${B}].name`},{default:t(({field:V,errorMessage:ne,errors:Ae})=>[p("label",{for:`sources[${B}].name`,class:"v-label"},d(i.$t("components.form.label.source_name")),9,Sr),o(rt,ze({loading:e(we),variant:"outlined",name:`sources[${B}].name`,type:"text",density:"compact",ref_for:!0},V,{error:Ae.length>0,"error-messages":ne}),null,16,["loading","name","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"])]),p("div",Pr,[o(e(Ie),{modelValue:r.roles,"onUpdate:modelValue":V=>r.roles=V,name:`sources[${B}].roles`},{default:t(({field:V,errorMessage:ne,errors:Ae})=>[p("label",{for:`sources[${B}].roles`,class:"v-label"},d(i.$t("components.form.label.source_role")),9,zr),o(Ot,ze({loading:e(we),items:e(Re).filter(at=>!e(k).sources.some((zt,Mt)=>zt.roles.includes(at)&&Mt!==B)),variant:"outlined",name:`sources[${B}].roles`,type:"text",density:"compact",chips:"",multiple:"",ref_for:!0},V,{"model-value":V.value,error:Ae.length>0,"error-messages":ne,onKeydown:K(()=>null,["prevent"])}),{chip:t(({item:at})=>[o(tt,{color:"#df2a4c"},{default:t(()=>[x(d(at.title),1)]),_:2},1024)]),_:2},1040,["loading","items","name","model-value","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name"])]),p("div",Mr,[p("label",{for:`sources[${B}].urls[]`,class:"v-label"},d(i.$t("components.form.label.sources")),9,Er),(l(!0),v(_e,null,Ve(r.urls,(V,ne)=>(l(),v("div",{key:ne},[o(e(Ie),{modelValue:r.urls[ne],"onUpdate:modelValue":Ae=>r.urls[ne]=Ae,name:`sources[${B}].urls[${ne}]`,value:V},{default:t(({field:Ae,errorMessage:at,errors:zt})=>[o(rt,ze({loading:e(we),variant:"outlined",name:`sources[${B}].urls[${ne}]`,type:"text",density:"compact",ref_for:!0},Ae,{error:zt.length>0,"error-messages":at}),{"append-inner":t(()=>[r.urls.length>1?(l(),z(ae,{key:0,loading:e(we),size:"28",variant:"text",rounded:"",density:"compact",color:"red",disabled:r.urls.length<2,onClick:K(Mt=>ba(B,ne),["prevent"])},{default:t(()=>[o(U,{size:"20"},{default:t(()=>[x(d(e(nn)),1)]),_:1})]),_:2},1032,["loading","disabled","onClick"])):Q("",!0)]),_:2},1040,["loading","name","error","error-messages"])]),_:2},1032,["modelValue","onUpdate:modelValue","name","value"])]))),128)),o(ae,{loading:e(we),color:"#df2a4c",variant:"flat",class:"ml-auto",onClick:K(V=>oa(B),["prevent"])},{default:t(()=>[x(d(i.$t("components.form.button.add_source")),1)]),_:2},1032,["loading","onClick"])])]),_:2},1024)]),_:2},1024)]),_:2},1024),o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})]))),128)),p("div",Fr,[o(ae,{loading:e(we),variant:"text",color:"#df2a4c",icon:"",onClick:K(na,["prevent"])},{default:t(()=>[o(U,{size:"30"},{default:t(()=>[x(d(e(so)),1)]),_:1})]),_:1},8,["loading"])])]),_:1},8,["validation-schema"])]),"segmentIcon.plugins":t(()=>[o(U,{size:"20"},{default:t(()=>[x(d(e(sn)),1)]),_:1})]),"body.plugins":t(()=>[o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),p("div",Br,[p("label",Ir,d(i.$t("components.camera_options.categories")),1),o(Et,{modelValue:e(h),"onUpdate:modelValue":[c[16]||(c[16]=r=>Se(h)?h.value=r:null),c[17]||(c[17]=r=>St("@update:model-value chip group select"))],"selected-class":"primary-color",disabled:e(Ue),mandatory:"",column:""},{default:t(()=>[(l(!0),v(_e,null,Ve(e(te),r=>(l(),z(tt,{key:r,size:"small",disabled:e(Ge),value:r},{default:t(()=>[x(d(i.$t(`components.camera_options.chip_${r}`)),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])]),o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),e(h)==="hub"?(l(),v("div",Tr,[p("label",qr,d(i.$t("components.camera_options.chip_plugins")),1),e(Kt).length?(l(),z(Et,{key:0,modelValue:e(ee),"onUpdate:modelValue":c[18]||(c[18]=r=>Se(ee)?ee.value=r:null),"selected-class":"primary-color",disabled:e(Ue),mandatory:"",column:""},{default:t(()=>[(l(!0),v(_e,null,Ve(e(Kt),r=>(l(),z(tt,{key:r.pluginName,disabled:!Be(r.pluginName)||e(Ge),size:"small",value:r.pluginName},{default:t(()=>[x(d(r.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(l(),v("div",Ar,[p("span",Or,d(i.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(h)==="motionDetection"?(l(),v("div",Qr,[p("label",Nr,d(i.$t("components.camera_options.enabled_extension")),1),e(Gt).length?(l(),z(Et,{key:0,modelValue:e(A),"onUpdate:modelValue":c[19]||(c[19]=r=>Se(A)?A.value=r:null),"selected-class":"primary-color",disabled:e(Ue),filter:"",column:""},{default:t(()=>[(l(!0),v(_e,null,Ve(e(Gt),r=>(l(),z(tt,{key:r.pluginName,disabled:!Be(r.pluginName)||e(Ge),size:"small",value:r.pluginName},{default:t(()=>[x(d(r.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(l(),v("div",Dr,[p("span",Lr,d(i.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(h)==="objectDetection"?(l(),v("div",Rr,[p("label",jr,d(i.$t("components.camera_options.enabled_extension")),1),e(Wt).length?(l(),z(Et,{key:0,modelValue:e(T),"onUpdate:modelValue":c[20]||(c[20]=r=>Se(T)?T.value=r:null),"selected-class":"primary-color",disabled:e(Ue),filter:"",column:""},{default:t(()=>[(l(!0),v(_e,null,Ve(e(Wt),r=>(l(),z(tt,{key:r.pluginName,disabled:!Be(r.pluginName)||e(Ge),size:"small",value:r.pluginName},{default:t(()=>[x(d(r.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(l(),v("div",Ur,[p("span",Zr,d(i.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(h)==="audioDetection"?(l(),v("div",Kr,[p("label",Wr,d(i.$t("components.camera_options.enabled_extension")),1),e(ea).length?(l(),z(Et,{key:0,modelValue:e(H),"onUpdate:modelValue":c[21]||(c[21]=r=>Se(H)?H.value=r:null),"selected-class":"primary-color",disabled:e(Ue),filter:"",column:""},{default:t(()=>[(l(!0),v(_e,null,Ve(e(ea),r=>(l(),z(tt,{key:r.pluginName,disabled:!Be(r.pluginName)||e(Ge),size:"small",value:r.pluginName},{default:t(()=>[x(d(r.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(l(),v("div",Hr,[p("span",Yr,d(i.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(h)==="prebuffer"?(l(),v("div",Jr,[p("label",Xr,d(i.$t("components.camera_options.enabled_extension")),1),e(ta).length?(l(),z(Et,{key:0,modelValue:e(R),"onUpdate:modelValue":c[22]||(c[22]=r=>Se(R)?R.value=r:null),"selected-class":"primary-color",disabled:e(Ue),filter:"",column:""},{default:t(()=>[(l(!0),v(_e,null,Ve(e(ta),r=>(l(),z(tt,{key:r.pluginName,disabled:!Be(r.pluginName)||e(Ge),size:"small",value:r.pluginName},{default:t(()=>[x(d(r.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(l(),v("div",Gr,[p("span",ei,d(i.$t("components.camera_options.no_plugins_enabled")),1)]))])):e(h)==="ptz"?(l(),v("div",ti,[p("label",ai,d(i.$t("components.camera_options.enabled_extension")),1),e(Ht).length?(l(),z(Et,{key:0,modelValue:e($),"onUpdate:modelValue":c[23]||(c[23]=r=>Se($)?$.value=r:null),"selected-class":"primary-color",disabled:e(Ue),filter:"",column:""},{default:t(()=>[(l(!0),v(_e,null,Ve(e(Ht),r=>(l(),z(tt,{key:r.pluginName,disabled:!Be(r.pluginName)||e(Ge),size:"small",value:r.pluginName},{default:t(()=>[x(d(r.displayName),1)]),_:2},1032,["disabled","value"]))),128))]),_:1},8,["modelValue","disabled"])):(l(),v("div",oi,[p("span",ni,d(i.$t("components.camera_options.no_plugins_enabled")),1)]))])):Q("",!0),o(Ye,{style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"}}),e(Ue)?(l(),z(Qn,{key:6,height:"2",color:"#df2a4c",indeterminate:"",style:{"margin-top":"-2px"}})):Q("",!0),p("div",si,[o(qa,{modelValue:e(h),"onUpdate:modelValue":c[27]||(c[27]=r=>Se(h)?h.value=r:null),disabled:e(Ue),mandatory:"",eager:""},{default:t(()=>[(l(!0),v(_e,null,Ve(e(te),r=>(l(),z(Aa,{key:r,value:r,transition:"instant","reverse-transition":"instant"},{default:t(()=>{var B,V;return[r==="more"?(l(),v("div",li,[p("div",null,[p("label",ri,d(i.$t("components.camera_options.manage_plugins")),1),(l(!0),v(_e,null,Ve((B=e(dt))==null?void 0:B.result,(ne,Ae)=>{var at,zt;return l(),v("div",{key:ne.pluginName},[o(Nn,{"select-strategy":"classic",class:"py-0",disabled:e(Ue),"onUpdate:selected":()=>la(ne)},{default:t(()=>{var Mt;return[o(uo,{value:ne.pluginName,class:"px-2",active:(Mt=e(je))==null?void 0:Mt.some(ua=>ua.pluginName===ne.pluginName)},{prepend:t(()=>[o(Dn,{start:""},{default:t(()=>{var ua;return[o(co,{"model-value":(ua=e(je))==null?void 0:ua.some(Vo=>Vo.pluginName===ne.pluginName),color:"#df2a4c"},null,8,["model-value"])]}),_:2},1024)]),append:t(()=>[o(ae,{class:"ml-auto",size:"28",rounded:"",density:"compact",variant:"text",onClick:K(()=>i.$router.push(`/plugins/${ne.pluginName}`),["stop"])},{default:t(()=>[o(U,{size:"18"},{default:t(()=>[x(d(e(ln)),1)]),_:1})]),_:2},1032,["onClick"])]),default:t(()=>[x(d(ne.displayName)+" ",1)]),_:2},1032,["value","active"])]}),_:2},1032,["disabled","onUpdate:selected"]),(at=e(dt))!=null&&at.result&&Ae!==((zt=e(dt))==null?void 0:zt.result.length)-1?(l(),z(Ye,{key:0,style:{"border-color":"rgba(var(--color-rgb), 0.1)",opacity:"1"},class:"my-1"})):Q("",!0)])}),128))])])):(l(),v("div",ii,[p("label",ui,d(i.$t("components.camera_options.plugin_settings")),1),e(ue)?(l(),v("div",ci,[o(Vt,{color:"#df2a4c",indeterminate:""})])):!e(Y)||!((V=e(se))!=null&&V.rootSchema)?(l(),v("div",di,[p("span",mi,d(i.$t("components.camera_options.no_config")),1)])):e(se)?(l(),z(ie,{key:r,config:e(se).config||{},"ui-schema":e(se).rootSchema,loading:e(Ge),onOnFormSubmit:c[24]||(c[24]=ne=>$a(e(S),e(Y),ne)),onOnSubmit:ne=>Ca(ne,r),onOnAction:c[25]||(c[25]=ne=>ra(ne,e(Y))),onChangeGroup:c[26]||(c[26]=()=>aa(e(S),e(Y)))},null,8,["config","ui-schema","loading","onOnSubmit"])):Q("",!0)]))]}),_:2},1032,["value"]))),128))]),_:1},8,["modelValue","disabled"])])]),footer:t(()=>[e(De)?(l(),v("div",pi,[o(ae,{width:"100%",color:"green",variant:"flat",loading:e(we)||e(Ge),onClick:K(ia,["prevent"])},{default:t(()=>[x(d(i.$t("components.form.button.save")),1)]),_:1},8,["loading"])])):Q("",!0)]),_:1},8,["state","title","loading"])):Q("",!0),o(Pt,{modelValue:e(Le),"onUpdate:modelValue":c[30]||(c[30]=r=>Se(Le)?Le.value=r:null),title:i.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.remove",loading:e(we)||e(Ge),onConfirm:c[31]||(c[31]=r=>Dt())},{content:t(()=>[p("span",null,d(i.$t("components.dialog.message.confirm_remove")),1)]),_:1},8,["modelValue","title","loading"]),o(Pt,{modelValue:e(Oe),"onUpdate:modelValue":c[33]||(c[33]=r=>Se(Oe)?Oe.value=r:null),title:i.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.open_editor",loading:e(we)||e(Ge),onConfirm:c[34]||(c[34]=r=>sa(e(Je),!0))},{content:t(()=>[o(e(da),{ref_key:"cameraVeeForm3",ref:q,"validation-schema":e(xo),"initial-values":e(Je)},{default:t(()=>[o(e(Ie),{modelValue:e(Je).name,"onUpdate:modelValue":c[32]||(c[32]=r=>e(Je).name=r),name:"name",type:"text"},{default:t(({field:r,errorMessage:B,errors:V})=>[p("label",vi,d(i.$t("components.form.label.zone_name")),1),o(rt,ze({class:"my-1",variant:"outlined",density:"compact",type:"text",name:"name"},r,{error:V.length>0,"error-messages":B}),null,16,["error","error-messages"])]),_:1},8,["modelValue"])]),_:1},8,["validation-schema","initial-values"])]),_:1},8,["modelValue","title","loading"]),e(qe)?(l(),z(y,{key:1,"camera-name":e(S),zones:e(qe),"is-new-zone":e(We),onShowModal:c[35]||(c[35]=r=>r?null:wa())},null,8,["camera-name","zones","is-new-zone"])):Q("",!0),(ce=e(me))!=null&&ce.schema?(l(),z(F,{key:2,modelValue:e(J),"onUpdate:modelValue":c[36]||(c[36]=r=>Se(J)?J.value=r:null),"ui-schema":{schema:e(me).schema},"plugin-config":e(de)||{},"plugin-name":e(Y)},null,8,["modelValue","ui-schema","plugin-config","plugin-name"])):Q("",!0)],64)}}}),gi=Bt(fi,[["__scopeId","data-v-280c3f35"]]),yi={class:"w-full h-full flex items-center justify-center bg-black aspect-video"},$o=pt({__name:"VCameraSnapshot",props:{cameraName:{},src:{},loading:{type:Boolean}},setup(a,{expose:s}){const n=new Xt,C=a,{cameraName:E,loading:N,src:L}=vt(C);L.value&&n.toggleQueryActivator("getCameraSnapshotQuery",!1);const{data:_,isLoading:j}=n.getCameraSnapshotQuery(E),S=W(()=>N.value||j.value),M=W(()=>L.value?L.value:_.value?`data:image/jpeg;base64,${_.value}`:"");return s({download:()=>{if(M.value){const k=`${E.value.replace(/ /g,"_").toLowerCase()}_${new Date().toISOString()}.png`,P=document.createElement("a");P.setAttribute("download",k),P.href=M.value,document.body.appendChild(P),P.click(),P.remove()}}}),(k,P)=>{const u=Ja;return l(),v("div",yi,[e(S)?(l(),z(Vt,{key:0,color:"#df2a4c",indeterminate:""})):(l(),z(u,{key:1,src:e(M),width:"100%",height:"100%","aspect-ratio":"16/9",cover:""},null,8,["src"]))])}}}),hi=["data-ignore-id"],bi={class:"snapshot-hover-container flex items-center justify-center elevation-3"},_i={key:0,style:{width:"100%","aspect-ratio":"16/9"}},ki={class:"shortcut-menu p-3 elevation-5"},wi=pt({__name:"VCameraShortcuts",props:{currentCamera:{},clickInsideId:{},addingShortcuts:{type:Boolean}},setup(a){var je;const s=new Xt,n=new qo,C=To(),E=vo(),N=a,{clickInsideId:L,currentCamera:_,addingShortcuts:j}=vt(N),{loginState:S}=ro(C),M=b(null),w=b(null),k=b({}),P=b({}),u=b({}),q=b(!1),te=b(),g=b({page:1,pageSize:-1}),J=b(!1),me=b([]),de=b({}),pe=Yt(w),{data:I,isLoading:h}=s.getCameraQuery(_),{data:ee,isLoading:A}=s.getCamerasQuery(g),{data:H,isLoading:T}=n.getUserQuery(((je=S.value.user)==null?void 0:je.username)||""),{mutate:$,isPending:R}=n.patchShortcutQuery(),{mutateAsync:Y,isPending:qe}=n.createShortcutQuery(),{mutateAsync:De,isPending:Le}=n.removeShortcutQuery(),Oe=W(()=>h.value||T.value||R.value||A.value||qe.value||Le.value),Re=W(()=>{var Z;return(Z=ee.value)!=null&&Z.result?ee.value.result.filter(X=>X.name!==_.value):[]});ke([H,I],()=>{var Z;H.value&&I.value&&(me.value=((Z=H.value.preferences.cameras[I.value._id])==null?void 0:Z.shortcuts)||[])},{immediate:!0,deep:!0}),ke([pe.width,pe.height],()=>{J.value=!0,$t(()=>{it()})}),ke(me,()=>{$t(()=>{nt()})},{deep:!0,immediate:!0}),ke(J,Z=>{Z&&(te.value=void 0)});const Ce=(Z,X)=>{de.value[Z]=q.value?!1:X,Object.entries(de.value).forEach(([se,ue])=>{se!==Z&&ue&&(de.value[se]=!1)})},Pe=Z=>{q.value||O(Z)},Ee=(Z,X)=>{Z||(de.value[X._id]?(Ce(X._id,!1),ut(X.cameraId)):Ce(X._id,!0))},Te=()=>{Object.entries(P.value).forEach(([Z,X])=>{const se=w.value;if(!se)return;const ue=se.getBoundingClientRect(),re=X.element.getBoundingClientRect(),$e=(re.left-ue.left)/ue.width*100,Qe=(re.top-ue.top)/ue.height*100;u.value[Z]={x:Math.max(0,Math.min($e,100)),y:Math.max(0,Math.min(Qe,100))}})},Ze=()=>{Object.entries(P.value).forEach(([Z,X])=>{const se=u.value[Z];if(!se)return;const ue=w.value;if(!ue)return;const re=ue.getBoundingClientRect(),$e=X.element.getBoundingClientRect(),Qe=re.width-$e.width,He=re.height-$e.height,ge=Math.max(0,Math.min(se.x/100*re.width,Qe)),m=Math.max(0,Math.min(se.y/100*re.height,He));X.setPosition(ge,m)}),J.value=!1},it=()=>{Object.entries(u.value).forEach(([Z,X])=>{u.value[Z]={x:Math.max(0,Math.min(X.x,100)),y:Math.max(0,Math.min(X.y,100))}}),Ze()},nt=()=>{for(const[Z,X]of Object.entries(P.value))me.value.find(se=>se._id===Z)||(X.destroy(),delete P.value[Z],delete u.value[Z]);for(const[Z]of Object.entries(u.value))me.value.find(X=>X._id===Z)||delete u.value[Z];for(const[Z,X]of Object.entries(k.value)){const se=me.value.find(ue=>ue._id===Z);if(X&&se&&w.value){P.value[se._id]&&P.value[se._id].destroy();const ue=new po(X,{containment:w.value});P.value[se._id]=ue;const[re,$e]=se.coords.points,Qe=w.value.getBoundingClientRect(),He=re/100*Qe.width,ge=$e/100*Qe.height;ue.setPosition(He,ge),u.value[se._id]={x:re,y:$e},ue.on("dragMove",()=>{q.value=!0}),ue.on("dragEnd",()=>{if(setTimeout(()=>{q.value=!1},50),Te(),!H.value||!I.value)return;const m=u.value[se._id];$({username:H.value.username,cameraname:I.value.name,shortcutid:se._id,shortcutData:{coords:{_id:se.coords._id,points:[m.x,m.y]}}})})}}Ze()},We=Z=>{if(!j.value||!w.value)return;const X=w.value.getBoundingClientRect(),se=35,ue=35;te.value={x:Math.max(0,Math.min(Z.clientX-X.left-se/2,X.width-se)),y:Math.max(0,Math.min(Z.clientY-X.top-ue/2,X.height-ue))}},Je=async Z=>{if(!M.value||!H.value||!I.value||!w.value)return;const X=w.value,se=M.value,ue=X.getBoundingClientRect(),re=se.getBoundingClientRect(),$e=re.left-ue.left,Qe=re.top-ue.top,He=$e/ue.width*100,ge=Qe/ue.height*100;await Y({username:H.value.username,cameraname:I.value.name,shortcutData:{_id:"",coords:{_id:"",points:[He,ge]},cameraId:Z._id}},{onSuccess:m=>{me.value=m}}),te.value=void 0},O=async Z=>{!H.value||!I.value||await De({username:H.value.username,cameraname:I.value.name,shortcutid:Z._id},{onSuccess:X=>{me.value=X}})},ft=(Z,X)=>{k.value[X]=Z},ut=async Z=>{if(q.value)return;const X=new AbortController,ue=(await wo({cameraname:Z,signal:X.signal})).name;ue&&E.push(`/cameras/${ue}`)};return Uo(()=>{k.value={}}),ga(()=>{$t(()=>{nt()})}),Zo(()=>{Object.values(P.value).forEach(Z=>Z.destroy())}),(Z,X)=>{const se=Na,ue=$o;return l(),v("div",{ref_key:"shortcutContainer",ref:w,class:"shortcut-container relative",style:qt({cursor:e(j)?"pointer":"default"}),onClick:K(We,["self"])},[(l(!0),v(_e,null,Ve(e(me),re=>gt((l(),v("div",{ref_for:!0,ref:$e=>ft($e,re._id),key:re._id,class:"draggable absolute","data-ignore-id":e(L),style:qt({background:e(de)[re._id]?"#545454":void 0})},[o(ae,{color:"#383838",size:"32",density:"compact",icon:"",variant:"elevated",active:e(de)[re._id]},{default:t(()=>[o(U,{size:"30",style:{"margin-top":"3px"}},{default:t(()=>[x(d("$cuiCamera"))]),_:1})]),_:2},1032,["active"]),o(Za,{"model-value":e(q)?!1:e(de)[re._id]||void 0,target:"parent",offset:[10,20]},{default:t(()=>{var $e;return[p("div",bi,[($e=e(ee))!=null&&$e.result.find(Qe=>Qe._id===re.cameraId)?(l(),z(se,{key:1,"current-camera":e(ee).result.find(Qe=>Qe._id===re.cameraId).name,"border-radius":0,target:"stream","source-role":"low-resolution","show-mode":!1,"show-live-indicator":""},null,8,["current-camera"])):(l(),v("div",_i,[o(Vt,{color:"#df2a4c",indeterminate:""})]))])]}),_:2},1032,["model-value"])],12,hi)),[[e(Fn),$e=>Ce(re._id,$e)],[e(Bn),[()=>Pe(re),{distanceThreshold:24,delay:1e3,onMouseUp:($e,Qe,He)=>Ee(He,re)}]]])),128)),e(te)?(l(),v("div",{key:0,ref_key:"placeholderEl",ref:M,class:"draggable absolute",style:qt(`left: ${e(te).x}px; top: ${e(te).y}px;`)},[o(ae,{color:"#383838",size:"32",density:"compact",icon:"",variant:"elevated"},{default:t(()=>[o(U,{size:"30",style:{"margin-top":"3px"}},{default:t(()=>[x(d("$cuiCamera"))]),_:1})]),_:1})],4)):Q("",!0),e(j)&&!e(q)&&!e(J)?(l(),z(Za,{key:1,offset:[30,0],activator:"parent",target:"cursor","onUpdate:modelValue":X[0]||(X[0]=re=>re?null:te.value=void 0)},{default:t(()=>[p("div",ki,[(l(!0),v(_e,null,Ve(e(Re),re=>(l(),z(ue,{key:re._id,class:"shortcut-menu-item elevation-1","camera-name":re.name,width:"100%",loading:e(Oe),onClick:K($e=>Je(re),["prevent"])},null,8,["camera-name","loading","onClick"]))),128))])]),_:1})):Q("",!0)],4)}}}),xi=Bt(wi,[["__scopeId","data-v-216a3cdc"]]),Ci={class:"stream-control flex flex-row items-center justify-center elevation-2"},$i=pt({__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(a,{emit:s}){const n=s,C=a,{showAirplay:E,showFastForward:N,showMicrophone:L,showPip:_,showPlayPause:j,showRewind:S,showVolume:M,playing:w,micActive:k,muted:P,loading:u,showFs:q,isFs:te,isPip:g,collapsedControls:J}=vt(C),me=W(()=>J.value.includes("airplay")),de=W(()=>J.value.includes("fast-forward")),pe=W(()=>J.value.includes("microphone")),I=W(()=>J.value.includes("pip")),h=W(()=>J.value.includes("play-pause")),ee=W(()=>J.value.includes("rewind")),A=W(()=>J.value.includes("volume")),H=W(()=>J.value.includes("fs"));return(T,$)=>(l(),v("div",Ci,[e(ee)?Q("",!0):(l(),z(ae,{key:0,disabled:!e(S)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:$[0]||($[0]=K(R=>n("toggle-rewind"),["prevent"]))},{default:t(()=>[o(U,{color:"#fff",size:"18"},{default:t(()=>[x(d(e(rn)),1)]),_:1})]),_:1},8,["disabled"])),e(h)?Q("",!0):(l(),z(ae,{key:1,disabled:!e(j)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:$[1]||($[1]=K(R=>n("toggle-play"),["prevent"]))},{default:t(()=>[e(h)?Q("",!0):(l(),z(U,{key:0,color:"#fff",size:"18"},{default:t(()=>[x(d(e(w)?e(un):e(cn)),1)]),_:1}))]),_:1},8,["disabled"])),e(de)?Q("",!0):(l(),z(ae,{key:2,disabled:!e(N)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:$[2]||($[2]=K(R=>n("toggle-fast-forward"),["prevent"]))},{default:t(()=>[o(U,{color:"#fff",size:"18"},{default:t(()=>[x(d(e(dn)),1)]),_:1})]),_:1},8,["disabled"])),e(A)?Q("",!0):(l(),z(ae,{key:3,disabled:!e(M)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:$[3]||($[3]=K(R=>n("toggle-mute"),["prevent"]))},{default:t(()=>[o(U,{color:"#fff",size:"18"},{default:t(()=>[x(d(e(P)?e(mn):e(pn)),1)]),_:1})]),_:1},8,["disabled"])),e(pe)?Q("",!0):(l(),z(ae,{key:4,disabled:!e(L)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:$[4]||($[4]=K(R=>n("toggle-microphone"),["prevent"]))},{default:t(()=>[o(U,{color:"#fff",size:"18"},{default:t(()=>[x(d(e(k)?e(vn):e(fn)),1)]),_:1})]),_:1},8,["disabled"])),e(me)?Q("",!0):(l(),z(ae,{key:5,disabled:!e(E)||e(u),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:$[5]||($[5]=K(R=>n("toggle-airplay"),["prevent"]))},{default:t(()=>[o(U,{color:"#fff",size:"18"},{default:t(()=>[x(d(e(gn)),1)]),_:1})]),_:1},8,["disabled"])),e(I)?Q("",!0):(l(),z(ae,{key:6,disabled:!e(_)||e(u)||e(te),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:$[6]||($[6]=K(R=>n("toggle-picture-in-picture"),["prevent"]))},{default:t(()=>[o(U,{color:"#fff",size:"18"},{default:t(()=>[x(d(e(g)?e(yn):e(hn)),1)]),_:1})]),_:1},8,["disabled"])),e(H)?Q("",!0):(l(),z(ae,{key:7,disabled:!e(q)||e(u)||e(g),variant:"text",size:"40",style:{height:"100%","border-radius":"0px"},onClick:$[7]||($[7]=K(R=>n("toggle-fullscreen"),["prevent"]))},{default:t(()=>[o(U,{color:"#fff",size:"18"},{default:t(()=>[x(d(e(te)?e(bn):e(_n)),1)]),_:1})]),_:1},8,["disabled"]))]))}}),Vi=Bt($i,[["__scopeId","data-v-b5e30f72"]]),Si=pt({__name:"VBBoxPlayground",props:{color:{default:"#df2a4c"},detections:{default(){return[]}}},setup(a,{expose:s}){const n=a,{color:C,detections:E}=vt(n),N=b(null),L=Yt(N),_=S=>{if(!N.value)return;const w=N.value.getContext("2d");if(w&&(j(),S.length)){const k=S[0].origWidth,P=S[0].origHeight;N.value.width=L.width.value,N.value.height=L.height.value;const u=N.value.width/k,q=N.value.height/P;S.forEach(te=>{const{origHeight:g,origWidth:J,inputWidth:me,inputHeight:de}=te,[pe,I,h,ee]=te.boundingBox,A=Math.round(pe*J/me),H=Math.round(I*g/de),T=Math.round(h*J/me),$=Math.round(ee*g/de),R=A*u,Y=H*q,qe=T*u,De=$*q;w.strokeStyle=C.value,w.lineWidth=2,w.beginPath(),w.moveTo(R+5,Y),w.lineTo(qe-5,Y),w.quadraticCurveTo(qe,Y,qe,Y+5),w.lineTo(qe,De-5),w.quadraticCurveTo(qe,De,qe-5,De),w.lineTo(R+5,De),w.quadraticCurveTo(R,De,R,De-5),w.lineTo(R,Y+5),w.quadraticCurveTo(R,Y,R+5,Y),w.closePath(),w.stroke();const Le=`${te.label} (${(te.confidence*100).toFixed(2)}%)`,Oe=w.measureText(Le).width+27,Re=20;let Ce=R,Pe=Y-Re-5;Pe<0&&(Pe=Y+5);const Ee=10,Te=5;w.beginPath(),w.moveTo(Ce+Te,Pe),w.lineTo(Ce+Oe+Ee*2-Te,Pe),w.quadraticCurveTo(Ce+Oe+Ee*2,Pe,Ce+Oe+Ee*2,Pe+Te),w.lineTo(Ce+Oe+Ee*2,Pe+Re-Te),w.quadraticCurveTo(Ce+Oe+Ee*2,Pe+Re,Ce+Oe+Ee*2-Te,Pe+Re),w.lineTo(Ce+Te,Pe+Re),w.quadraticCurveTo(Ce,Pe+Re,Ce,Pe+Re-Te),w.lineTo(Ce,Pe+Te),w.quadraticCurveTo(Ce,Pe,Ce+Te,Pe),w.closePath(),w.fillStyle="rgba(255, 255, 255, 0.7)",w.fill(),w.fillStyle="black",w.font="bold 13px sans-serif",w.textAlign="left",w.textBaseline="bottom",w.fillText(Le,Ce+Ee,Pe+Re-3)})}},j=()=>{if(!N.value)return;const S=N.value.getContext("2d");S&&S.clearRect(0,0,L.width.value,L.height.value)};return ke(E,S=>{$t(()=>{_(S)})},{deep:!0,immediate:!0}),s({draw:_,clear:j}),(S,M)=>(l(),v("canvas",{ref_key:"bboxCanvas",ref:N,class:"canvas-container"},null,512))}}),Ya=Bt(Si,[["__scopeId","data-v-bb909d51"]]);function Pi(){const a=W(()=>typeof window>"u"?!1:[/Android/i,/webOS/i,/iPhone/i,/iPad/i,/iPod/i,/BlackBerry/i,/Windows Phone/i].some(P=>navigator.userAgent.match(P))),s=W(()=>typeof window>"u"?!1:[/Android/i].some(P=>navigator.userAgent.match(P))),n=W(()=>typeof window>"u"?!1:[/iPhone/i].some(P=>navigator.userAgent.match(P))),C=W(()=>typeof window>"u"?!1:[/iPad/i].some(P=>navigator.userAgent.match(P))),E=W(()=>C.value||n.value),N=W(()=>{var P;if(typeof window>"u")return[0,0];const k=/OS [\d_]+/i;return n.value?((P=navigator.userAgent.match(k))==null?void 0:P[0].substr(3).split("_").map(u=>parseInt(u)))||[0,0]:[0,0]}),L=W(()=>typeof window>"u"?!1:[/Safari/i].some(P=>navigator.userAgent.match(P))),_=W(()=>{if(typeof window>"u")return null;const k=/Version\/(\d+).+Safari/;return navigator.userAgent.match(k)}),j=W(()=>typeof window>"u"?!1:[/Firefox/i].some(P=>navigator.userAgent.match(P))),S=W(()=>typeof window>"u"?!1:[/Chrome/i].some(P=>navigator.userAgent.match(P))),M=W(()=>{let k=!1;if("maxTouchPoints"in navigator)k=navigator.maxTouchPoints>0;else if("msMaxTouchPoints"in navigator)navigator!==null&&(k=navigator.msMaxTouchPoints>0);else{const P=matchMedia("(pointer:coarse)");if(P&&P.media==="(pointer:coarse)")k=!!P.matches;else if("orientation"in window)k=!0;else{const u=navigator.userAgent;k=/\b(BlackBerry|webOS|iPhone|IEMobile)\b/i.test(u)||/\b(Android|Windows Phone|iPad|iPod)\b/i.test(u)}}return k}),w=W(()=>{const k=typeof document.body.requestFullscreen<"u"||typeof document.body.mozRequestFullScreen<"u"||typeof document.body.webkitRequestFullscreen<"u"||typeof document.body.msRequestFullscreen<"u"||typeof document.exitFullscreen<"u"||typeof document.mozCancelFullScreen<"u"||typeof document.webkitExitFullscreen<"u",[P,u]=N.value,q=P&&P>=17&&u&&u>=2;return!!(k||!n.value||n.value&&q)});return{isMobile:a,isAndroid:s,isIphone:n,isIpad:C,isAppleMobile:E,iosVersion:N,isSafari:L,safariVersion:_,isFirefox:j,isChrome:S,isTouch:M,fsSupported:w}}const zi=["data-inside-id"],Mi={class:"relative player-container-main w-full",style:"background: var(--background-img);"},Ei={class:"relative w-full h-full flex items-center justify-center"},Fi={key:1,class:"relative w-full h-full"},Bi={key:0,class:"camera-name text-white"},Ii={class:"video-extras flex items-center justify-center"},Ti={key:0,class:"video-extras-bg text-white p-2"},qi={key:1,class:"mx-1"},Ai={key:1,class:"absolute w-full h-full flex flex-col items-center justify-center"},Oi={key:0,class:"mt-3 text-white text-sm"},Qi={key:4,width:"100%",height:"100%",class:"zones-container polygon-container"},Ni=["d"],Di=["muted"],Li={key:2,class:"relative w-full h-full"},Ri=["data-ignore-id"],ji={class:"flex items-center justify-between"},Ui={class:"leading-4 flex flex-col p-2"},Zi={key:0,class:"text-left"},Ki={key:0},Wi={class:"player-camera-subtitle ml-1"},Hi={key:1},Yi={class:"player-camera-subtitle ml-1"},Ji={class:"player-camera-settings-box flex items-center ml-auto"},Xi=["data-ignore-id"],Gi=5e3,eu=1e4,tu=pt({__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},zoomModel:{default:5},shortcuts:{type:Boolean,default:!1},settings:{type:Boolean,default:!1},share:{type:Boolean,default:!1},snapshot:{type:Boolean,default:!1},zoom:{type:Boolean,default:!1},motions:{type:Boolean,default:!1},objects:{type:Boolean,default:!1},zones:{type:Boolean,default:!1},sourceRole:{default:"high-resolution"}},emits:["settings","share","snapshot","resize","zoom-in","zoom-out","fullscreen"],setup(a,{expose:s,emit:n}){var It,Pt;const C=new Xt,{api:E}=Ga(),{mobileActive:N}=Xa(),{fsSupported:L,isIphone:_,isMobile:j}=Pi(),S=a,{absoluteTitle:M,allowStreamRunningInBg:w,autoHideControl:k,border:P,borderRadius:u,buttonElevation:q,clickableTitle:te,clickableContainer:g,currentCamera:J,enableControl:me,target:de,mode:pe,previewSrc:I,settings:h,share:ee,showTitle:A,snapshot:H,timelineScrolling:T,zoom:$,zoomModel:R,objects:Y,motions:qe,zones:De,sourceRole:Le,showCameraName:Oe,showMode:Re,showLiveIndicator:Ce,shortcuts:Pe,showTooltips:Ee}=vt(S),Te=n,Ze=b(Ao()),it=b(),nt=b(null),We=b(!1),Je=b(!1),O=b(null),ft=b(!1),ut=b(!1),je=b(null),Z=b(!1),X=b(!1),se=b(!0),ue=b(!0),re=b(!1),$e=b(),Qe=b(),He=b(),ge=b(),m=b(null),f=b([]),oe=b(),le=b(!1),ye=b(!1),G=b(!1),Me=b(!0),Fe=b(!1),xe=b(!1),ve=b(null),be=b("loading"),ct=b(),st=b(!1),Xe=b(!1);let Qt,Zt,dt,ht;C.toggleQueryActivator("getCameraQuery",de.value!=="preview");const Ke=C.getCameraQuery(J),ha=Yt(O),we=Yt(ve),{isFullscreen:Ue,toggle:Nt}=In(je);Lt(ve,"pause",()=>{Fe.value=!1}),Lt(ve,"play",()=>{Fe.value=!0}),Lt(ve,"loadeddata",()=>{xe.value=!0,le.value=!1}),Lt(ve,"enterpictureinpicture",()=>G.value=!0),Lt(ve,"leavepictureinpicture",()=>G.value=!1),me.value&&Ta(nt,y=>{const F=y.target,ce=F.closest(`[data-inside-id='${Ze.value}']`),r=F.closest(`[data-ignore-id='${Ze.value}']`),B=F.closest(".resizable-b");ce&&!r&&!B&&!We.value&&(k.value&&ra(),ut.value=!ut.value)}),((It=Ke==null?void 0:Ke.data.value)==null?void 0:It.interface.streamingMode)==="hls"&&((Pt=ve.value)!=null&&Pt.canPlayType("application/vnd.apple.mpegurl"))&&window.WebKitPlaybackTargetAvailabilityEvent&&Lt(ve,"webkitplaybacktargetavailabilitychanged",y=>{switch(y.availability){case"available":oe.value=!0;break;case"not-available":oe.value=void 0;break}});const Ge=W(()=>de.value==="stream"&&be.value!=="mjpeg"&&be.value!=="mp4"),Kt=W(()=>navigator.mediaDevices&&de.value==="stream"&&Xe.value),Gt=W(()=>{var y,F;return!!(be.value==="hls"&&((y=Ke==null?void 0:Ke.data.value)==null?void 0:y.interface.streamingMode)==="hls"&&((F=ve.value)!=null&&F.canPlayType("application/vnd.apple.mpegurl"))&&oe.value!==void 0)}),ea=W(()=>document.pictureInPictureEnabled&&!_.value&&de.value==="stream"&&be.value!=="mp4"&&be.value!=="mjpeg"),Wt=W(()=>de.value==="stream"&&be.value!=="mjpeg"&&be.value!=="mp4"),Ht=W(()=>!!(Ke!=null&&Ke.isLoading.value||!xe.value));if(ke(le,async y=>{y&&await i(!1,!1)}),ke(ha.height,(y,F)=>{Te("resize",y-F)},{deep:!0}),ke(ft,y=>{$t(()=>Je.value=y)}),ke(Ue,y=>{Te("fullscreen",y)}),!w.value&&de.value==="stream"&&!j.value){const y=Tn();ke(y,F=>{var ce;F==="hidden"?ye.value===!1&&(clearTimeout(Zt),Zt=setTimeout(()=>{ie()},eu)):(clearTimeout(Zt),ye.value&&((ce=m.value)==null||ce.reconnect()))})}const ta=async()=>{var ne;if(me.value&&k.value&&ut.value&&ra(),await(Ke==null?void 0:Ke.suspense()),ge.value=await E.deviceManager.getCameraByName(J.value),!ge.value)throw new Error("Camera not found!");let y;const F=ge.value.streamSource,ce=ge.value.snapshotSource,r=ge.value.highResolutionSource,B=ge.value.midResolutionSource,V=ge.value.lowResolutionSource;if(Le.value==="high-resolution"?r?y=r:(console.warn("High resolution source not found, using stream source instead"),y=F):Le.value==="mid-resolution"?B?y=B:(console.warn("Mid resolution source not found, using stream source instead"),y=F):Le.value==="low-resolution"?V?y=V:(console.warn("Low resolution source not found, using stream source instead"),y=F):Le.value==="snapshot"?ce?y=ce:(console.warn("Snapshot source not found, using stream source instead"),y=F):y=F,it.value=`${J.value.replace(/ /g,"_").toLowerCase()}_${y.name}`,se.value=!ge.value.hasMotionDetector,ue.value=!ge.value.hasObjectDetector,ge.value.onPropertyChange("hasMotionDetector").subscribe(({newData:Ae})=>{se.value=!Ae}),ge.value.onPropertyChange("hasObjectDetector").subscribe(({newData:Ae})=>{ue.value=!Ae}),!ve.value)throw new Error("Video player not found!");m.value=ge.value.createSession({mode:pe.value||((ne=Ke==null?void 0:Ke.data.value)==null?void 0:ne.interface.streamingMode)||"webrtc",sourceName:it.value,videoElement:ve.value,reconnectInterval:5e3}),m.value.addEventListener("error",bt),m.value.addEventListener("reconnect",aa),m.value.addEventListener("finishLoading",oa),m.value.connect()},bt=y=>{console.error(J.value,y),be.value="error",Xe.value=!1,xe.value=!1,le.value=!1},aa=()=>{be.value="reconnecting",Xe.value=!1,xe.value=!1,le.value=!0},oa=()=>{Xe.value=m.value.hasBackchannel,be.value=m.value.mode,xe.value=!0,le.value=!1},ba=()=>{var y,F;if(ve.value){const ce=document.createElement("canvas");ce.width=ve.value.videoWidth,ce.height=ve.value.videoHeight,(y=ce.getContext("2d"))==null||y.drawImage(ve.value,0,0,ce.width,ce.height);const r=ce.toDataURL("image/png"),B=`${J.value.replace(/ /g,"_").toLowerCase()}_${new Date().toISOString()}.png`,V=document.createElement("a");V.setAttribute("download",B),V.href=r,document.body.appendChild(V),V.click(),V.remove()}else(F=He.value)==null||F.download()},Dt=y=>{const F=St(y);F==null||F.clear()},na=(y,F)=>{const ce=St(y);ce==null||ce.draw(F)},_a=async()=>{var y;re.value||(re.value=!0,f.value=((y=ge.value)==null?void 0:y.activityZones)||[])},ka=()=>{re.value=!1,f.value=[]},wa=y=>{if(!y)return"";const F=y.map(r=>{const B=Math.round(r[0]/100*we.width.value),V=Math.round(r[1]/100*we.height.value);return`${B},${V}`});if(F.length===0)return"";let ce=`M ${F[0]}`;for(let r=1;r<F.length;r++)ce+=` L ${F[r]}`;return ce+=" Z",ce},sa=async()=>{var y,F;Z.value||(Dt("motion"),Z.value=!0,await((y=ge.value)==null?void 0:y.start()),dt=(F=ge.value)==null?void 0:F.onMotionDetected.subscribe(ce=>{na("motion",ce.detections)}))},xa=async()=>{var y,F;X.value||(Dt("object"),X.value=!0,await((y=ge.value)==null?void 0:y.start()),ht=(F=ge.value)==null?void 0:F.onObjectDetected.subscribe(ce=>{na("object",ce.detections)}))},lt=()=>{var y;Dt("motion"),Z.value=!1,X.value||(y=ge.value)==null||y.stop(),dt==null||dt.unsubscribe()},Be=()=>{var y;Dt("object"),X.value=!1,Z.value||(y=ge.value)==null||y.stop(),ht==null||ht.unsubscribe()},St=y=>y==="motion"?$e.value:Qe.value,la=async()=>{var y;if(ve.value)try{await ve.value.play()}catch(F){if(!((y=ve.value)!=null&&y.muted))return ve.value.muted=!0,la();console.warn(J.value,F)}},ra=()=>{clearTimeout(Qt),Qt=setTimeout(()=>{ut.value=!1},Gi)},Ca=()=>{var y;(y=ve.value)==null||y.webkitShowPlaybackTargetPicker()},$a=()=>{L.value?Nt():Ue.value=!Ue.value},ia=y=>{Me.value=y!==void 0?y:!Me.value},i=async(y,F=!1)=>{var ce,r;if((ce=m.value)!=null&&ce.micTransceiver)if(st.value=y!==void 0?y:!st.value,st.value)try{ct.value=await navigator.mediaDevices.getUserMedia({audio:!0});const B=ct.value.getAudioTracks()[0];Me.value=!F,m.value.micTransceiver.sender.replaceTrack(B)}catch(B){console.warn(J.value,B)}else(r=ct.value)==null||r.getTracks().forEach(B=>B.stop()),ct.value=void 0,m.value.micTransceiver.sender.replaceTrack(null)},c=()=>{var y;document.pictureInPictureElement?document.exitPictureInPicture():document.pictureInPictureEnabled&&((y=ve.value)==null||y.requestPictureInPicture())},D=()=>{ve.value&&(Fe.value?ve.value.pause():la())},fe=()=>{ye.value=!0,xe.value=!1,Me.value=!0},ie=()=>{var y;fe(),(y=m.value)==null||y.close()};return to(async()=>{try{de.value==="stream"&&await ta()}catch(y){console.error(y)}}),ao(()=>{var y,F,ce,r;ie(),(y=m.value)==null||y.removeEventListener("error",bt),(F=m.value)==null||F.removeEventListener("reconnect",aa),(ce=m.value)==null||ce.removeEventListener("finishLoading",oa),dt==null||dt.unsubscribe(),ht==null||ht.unsubscribe(),(r=ge.value)==null||r.close(),ge.value=void 0}),s({toggleMicrophone:i,toggleMute:ia}),(y,F)=>{const ce=Vi,r=xi,B=gi;return l(),v("div",{ref_key:"playerContainer",ref:O,"data-inside-id":e(Ze),class:"player-container w-full relative",style:qt(`border-radius: ${e(u)}px; border: ${e(P)?1:0}px solid var(--border);`)},[p("div",{ref_key:"fakeClick",ref:nt,class:"fake-click"},null,512),p("div",Mi,[p("div",{ref_key:"videoPlayerWrapper",ref:je,class:jt(["w-full h-full",{"fullscreen-video":!e(L)&&e(Ue)}])},[p("div",Ei,[p("div",{class:"video-container w-full aspect-video",style:qt(!e(L)&&e(Ue)?"width: unset":void 0)},[o(eo,{name:"fade",mode:"out-in"},{default:t(()=>[e(ut)&&e(me)?(l(),z(ce,{key:0,"data-ignore-id":e(Ze),loading:e(Ht),"show-rewind":"","show-fast-forward":"","show-volume":e(Ge),"show-play-pause":e(Wt),"show-microphone":e(Kt),"show-airplay":e(Gt)&&e(Wt),"show-pip":e(ea),"show-fs":e(L),"is-fs":e(Ue),"is-pip":e(G),muted:e(Me),playing:e(Fe),"mic-active":e(st),"collapsed-controls":["airplay"],onToggleMute:ia,onTogglePlay:D,onToggleMicrophone:F[0]||(F[0]=()=>i(void 0,!0)),onToggleAirplay:Ca,onTogglePictureInPicture:c,onToggleFullscreen:$a},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"])):Q("",!0)]),_:1}),e(Pe)?(l(),z(r,{key:0,"current-camera":e(J),"adding-shortcuts":e(We),"click-inside-id":e(Ze)},null,8,["current-camera","adding-shortcuts","click-inside-id"])):Q("",!0),e(de)==="stream"?(l(),v("div",Fi,[e(Oe)?(l(),v("div",Bi,d(e(J)),1)):Q("",!0),p("div",Ii,[e(Re)&&!e(N)?(l(),v("div",Ti,d(e(be).toUpperCase()),1)):Q("",!0),e(Re)&&e(Ce)?(l(),v("div",qi)):Q("",!0),e(Ce)?(l(),v("div",{key:2,class:"live-indicator elevation-3",style:qt({background:e(xe)?"red":"gray"})},null,4)):Q("",!0)]),e(Ht)?(l(),v("div",Ai,[o(Vt,{color:"#df2a4c",indeterminate:""}),e(le)?(l(),v("span",Oi,d(y.$t("components.player.reconnecting"))+"...",1)):Q("",!0)])):Q("",!0),e(qe)&&!e(se)?(l(),z(Ya,{key:2,ref_key:"motionCanvas",ref:$e},null,512)):Q("",!0),e(Y)&&!e(ue)?(l(),z(Ya,{key:3,ref_key:"objectCanvas",ref:Qe,color:"green"},null,512)):Q("",!0),e(De)?(l(),v("svg",Qi,[(l(!0),v(_e,null,Ve(e(f),(V,ne)=>(l(),v("path",{key:ne,d:wa(V.points.map(Ae=>Ae)),class:jt({polygon:V.filter=="include"&&!V.isPrivacyMask,"polygon-exclude":V.filter=="exclude"&&!V.isPrivacyMask,"polygon-privacy":V.isPrivacyMask,dash:V.type==="intersect"&&!V.isPrivacyMask})},null,10,Ni))),128))])):Q("",!0),p("video",{id:"videoPlayer",ref_key:"videoPlayer",ref:ve,playsinline:"",autoplay:"",preload:"auto",muted:e(Me),class:"video-player"},null,8,Di)])):(l(),v("div",Li,[o($o,{ref_key:"cameraSnapshot",ref:He,"camera-name":e(J),src:e(I)},null,8,["camera-name","src"])]))],4)])],2)]),e(A)?(l(),v("div",{key:0,"data-ignore-id":e(Ze),class:jt(["p-2 px-3",{"player-header-absolute":e(M),"player-header-container":!e(M)}])},[p("div",ji,[o(ae,{class:jt({"player-title-text":!e(M),"cursor-pointer":e(te),"cursor-default":!e(te)}),style:{padding:"0"},ripple:e(M),color:e(M)?"#212121":void 0,height:"100%",variant:e(M)?"elevated":"text",elevation:e(q),rounded:"",to:e(te)?`/cameras/${e(J)}`:void 0},{default:t(()=>[p("div",Ui,[p("h3",{class:"player-camera-title",style:qt(`color: ${e(M)?"#ffffff":"color: var(--color);"}`)},d(e(J)),5),e(de)==="stream"?(l(),v("div",Zi,[e(T)?(l(),v("div",Ki,[o(Vt,{size:"10",width:"1",indeterminate:"",color:"#0173ff"},{default:t(()=>[o(U,{size:"20",color:"#0173ff",icon:e(ja)},null,8,["icon"])]),_:1}),p("span",Wi,d(y.$t("general.loading")),1)])):(l(),v("div",Hi,[o(Vt,{size:"10",width:"1","model-value":100,color:"red"},{default:t(()=>[o(U,{size:"20",color:"red",icon:e(ja)},null,8,["icon"])]),_:1}),p("span",Yi,d(y.$t("components.player.live")),1)]))])):Q("",!0)])]),_:1},8,["class","ripple","color","variant","elevation","to"]),p("div",Ji,[e($)?gt((l(),z(ae,{key:0,size:"28",density:"compact",disabled:e(R)==1,variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(q),color:e(M)?"#212121":void 0,class:"ml-1",onClick:F[1]||(F[1]=K(V=>Te("zoom-out"),["prevent"]))},{default:t(()=>[o(U,{size:"20",icon:e(kn)},null,8,["icon"])]),_:1},8,["disabled","variant","icon","elevation","color"])),[[_t,{disabled:!e(Ee),text:y.$t("components.player.zoom_out")}]]):Q("",!0),e($)?gt((l(),z(ae,{key:1,size:"28",density:"compact",disabled:e(R)==5,variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(q),color:e(M)?"#212121":void 0,class:"ml-1",onClick:F[2]||(F[2]=K(V=>Te("zoom-in"),["prevent"]))},{default:t(()=>[o(U,{size:"20",icon:e(wn)},null,8,["icon"])]),_:1},8,["disabled","variant","icon","elevation","color"])),[[_t,{disabled:!e(Ee),text:y.$t("components.player.zoom_in")}]]):Q("",!0),e(ee)?gt((l(),z(ae,{key:2,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(q),color:e(M)?"#212121":void 0,class:"ml-1",onClick:F[3]||(F[3]=K(V=>Te("share"),["prevent"]))},{default:t(()=>[o(U,{size:"20",icon:e(xn)},null,8,["icon"])]),_:1},8,["variant","icon","elevation","color"])),[[_t,{disabled:!e(Ee),text:y.$t("components.player.share_camera")}]]):Q("",!0),e(H)?gt((l(),z(ae,{key:3,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(q),color:e(M)?"#212121":void 0,class:"ml-1",onClick:F[4]||(F[4]=K(V=>ba(),["prevent"]))},{default:t(()=>[o(U,{size:"20",icon:e(Cn)},null,8,["icon"])]),_:1},8,["variant","icon","elevation","color"])),[[_t,{disabled:!e(Ee),text:y.$t("components.player.capture_snapshot")}]]):Q("",!0),e(qe)&&!e(se)?gt((l(),z(ae,{key:4,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(q),color:e(M)?"#212121":void 0,class:"ml-1",onClick:F[5]||(F[5]=K(V=>e(Z)?lt():sa(),["prevent"]))},{default:t(()=>[o(U,{size:"20",icon:e($n),disabled:!e(Z)},null,8,["icon","disabled"])]),_:1},8,["variant","icon","elevation","color"])),[[_t,{disabled:!e(Ee),text:e(Z)?y.$t("components.player.hide_motions"):y.$t("components.player.show_motions")}]]):Q("",!0),e(Y)&&!e(ue)?gt((l(),z(ae,{key:5,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(q),color:e(M)?"#212121":void 0,class:"ml-1",onClick:F[6]||(F[6]=K(V=>e(X)?Be():xa(),["prevent"]))},{default:t(()=>[o(U,{size:"20",icon:e(Vn),disabled:!e(X)},null,8,["icon","disabled"])]),_:1},8,["variant","icon","elevation","color"])),[[_t,{disabled:!e(Ee),text:e(X)?y.$t("components.player.hide_objects"):y.$t("components.player.show_objects")}]]):Q("",!0),e(De)?gt((l(),z(ae,{key:6,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(q),color:e(M)?"#212121":void 0,class:"ml-1",onClick:F[7]||(F[7]=K(V=>e(re)?ka():_a(),["prevent"]))},{default:t(()=>[o(U,{size:"20",icon:e(Sn),disabled:!e(re)},null,8,["icon","disabled"])]),_:1},8,["variant","icon","elevation","color"])),[[_t,{disabled:!e(Ee),text:e(re)?y.$t("components.player.hide_zones"):y.$t("components.player.show_zones")}]]):Q("",!0),e(Pe)?gt((l(),z(ae,{key:7,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(q),color:e(M)?"#212121":void 0,class:"ml-1",onClick:F[8]||(F[8]=K(V=>We.value=!e(We),["prevent"]))},{default:t(()=>[o(U,{size:"20"},{default:t(()=>[x(d(e(We)?e(Pn):e(zn)),1)]),_:1})]),_:1},8,["variant","icon","elevation","color"])),[[_t,{disabled:!e(Ee),text:e(We)?y.$t("components.player.save_shortcuts"):y.$t("components.player.add_shortcuts")}]]):Q("",!0),e(h)&&e(Oo)(void 0,"admin")?gt((l(),z(ae,{key:8,size:"28",density:"compact",variant:e(M)?"elevated":"text",icon:!e(M),rounded:!0,elevation:e(q),color:e(M)?"#212121":void 0,class:"ml-1",onClick:F[9]||(F[9]=K(V=>ft.value=!0,["prevent"]))},{default:t(()=>[o(U,{size:"20",icon:e(Ia)},null,8,["icon"])]),_:1},8,["variant","icon","elevation","color"])),[[_t,{disabled:!e(Ee),text:y.$t("components.player.settings")}]]):Q("",!0)])])],10,Ri)):Q("",!0),e(g)?(l(),v("div",{key:1,class:"absolute w-100 h-100 top-0 cursor-pointer",onClick:F[10]||(F[10]=K(V=>y.$router.push(`/cameras/${e(J)}`),["prevent"]))})):Q("",!0),e(ft)?(l(),v("div",{key:2,"data-ignore-id":e(Ze)},[o(B,{"camera-name":e(J),show:e(Je),onClose:F[11]||(F[11]=V=>ft.value=!1)},null,8,["camera-name","show"])],8,Xi)):Q("",!0)],12,zi)}}}),Na=Bt(tu,[["__scopeId","data-v-a0f36fae"]]);export{Xt as C,Na as _,ko as a,Ya as b,hu as c,gi as d,$s as e,Ka as g,Pi as u};