@camera.ui/server 0.0.13-alpha.7 → 0.0.13-alpha.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/interface/assets/{@intlify-Ck2ZoCVz.js → @intlify-YW_pt133.js} +4 -4
- package/dist/interface/assets/{@mdi-DdmeckA1.js → @mdi-jq8isxax.js} +1 -1
- package/dist/interface/assets/@vueuse-DbPVvJxZ.js +1 -0
- package/dist/interface/assets/{Account-DmYo08Qh.js → Account-BfQIYSY9.js} +1 -1
- package/dist/interface/assets/{Adminpanel-BJMS2lPd.js → Adminpanel-D-IRPo9j.js} +1 -1
- package/dist/interface/assets/{Appearance-DKeJKTST.js → Appearance-B6KmagNC.js} +1 -1
- package/dist/interface/assets/{Backup-Cxzbjmat.js → Backup-DAQ5i5CX.js} +1 -1
- package/dist/interface/assets/{Camera-CdiCoPuE.js → Camera-Bi6_ARja.js} +1 -1
- package/dist/interface/assets/{Cameras-CAdTRgyD.js → Cameras-Bnyqxi_V.js} +1 -1
- package/dist/interface/assets/{Camview-DQh45zxY.js → Camview-ChqbnO3e.js} +1 -1
- package/dist/interface/assets/{Config-BNDa6thC.js → Config-BjrMRwfT.js} +1 -1
- package/dist/interface/assets/Console-DWrfRWs9.css +1 -0
- package/dist/interface/assets/{Console-DaeLrWgn.js → Console-DvDVSn1k.js} +2 -2
- package/dist/interface/assets/{FirstSteps-a9MQcU4I.js → FirstSteps-Dxd9rz8L.js} +1 -1
- package/dist/interface/assets/{NewCamera-CQcflfB9.js → NewCamera-Cok5A6i_.js} +18 -18
- package/dist/interface/assets/NewCamera-DJ3tUBT_.css +1 -0
- package/dist/interface/assets/{Plugin-CuzMGJle.js → Plugin-BDQynqPw.js} +1 -1
- package/dist/interface/assets/{Plugins-Vbigmnnl.js → Plugins-BmMHP2A8.js} +1 -1
- package/dist/interface/assets/{Recordings-Cj7DTXms.js → Recordings-DXXeJXrx.js} +1 -1
- package/dist/interface/assets/{Recordings-OwkmcBiG.js → Recordings-ZTql-w8N.js} +1 -1
- package/dist/interface/assets/{Settings-DtuxhxkK.js → Settings-B9yGAOhD.js} +1 -1
- package/dist/interface/assets/System-1z5qZSaJ.js +4 -0
- package/dist/interface/assets/{User-DtIcGUsp.js → User-8xO4LUlf.js} +1 -1
- package/dist/interface/assets/{VConfigEditor.vue_vue_type_script_setup_true_lang-NvLEB-vb.js → VConfigEditor.vue_vue_type_script_setup_true_lang-DDxLGgGL.js} +1 -1
- package/dist/interface/assets/{VConsole-CZymGHU4.js → VConsole-D85lNxwk.js} +1 -1
- package/dist/interface/assets/VPlayer-B53-f3Ad.js +1 -0
- package/dist/interface/assets/{VPlayer-4vWU8KqJ.css → VPlayer-H4sGdlHU.css} +1 -1
- package/dist/interface/assets/VPluginCard--4QV9IM6.css +1 -0
- package/dist/interface/assets/VPluginCard-Cl6Zw1Dg.js +4 -0
- package/dist/interface/assets/main-C2N2tbw_.js +9 -0
- package/dist/interface/assets/main-CKofdZVi.css +1 -0
- package/dist/interface/assets/{plugins-X26db0mJ.js → plugins-Cs7BJHj-.js} +1 -1
- package/dist/interface/assets/rxjs-DmqiRszP.js +3 -0
- package/dist/interface/assets/{system-CjiOVZ9H.js → system-C1OmXhti.js} +1 -1
- package/dist/interface/assets/{ui-DNIEL7pW.js → ui-CdiPlYMM.js} +1 -1
- package/dist/interface/assets/{vue-i18n-Cyk5bTcs.js → vue-i18n-CHUfunSC.js} +3 -3
- package/dist/interface/index.html +7 -7
- package/dist/interface/sw.js +1 -1
- package/dist/server/package.json +4 -4
- package/dist/server/src/api/controllers/plugins.controller.d.ts +1 -0
- package/dist/server/src/api/controllers/plugins.controller.js +6 -0
- package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
- package/dist/server/src/api/schemas/cameras.schema.d.ts +5 -4
- package/dist/server/src/api/schemas/cameras.schema.js +44 -2
- package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
- package/dist/server/src/api/websocket/index.js +5 -5
- package/dist/server/src/api/websocket/index.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/main.d.ts +7 -0
- package/dist/server/src/api/websocket/nsp/main.js +8 -0
- package/dist/server/src/api/websocket/nsp/main.js.map +1 -0
- package/dist/server/src/api/websocket/nsp/notifications.d.ts +5 -4
- package/dist/server/src/api/websocket/nsp/notifications.js +7 -12
- package/dist/server/src/api/websocket/nsp/notifications.js.map +1 -1
- package/dist/server/src/api/websocket/nsp/server.d.ts +14 -2
- package/dist/server/src/api/websocket/nsp/server.js +100 -6
- package/dist/server/src/api/websocket/nsp/server.js.map +1 -1
- package/dist/server/src/api/websocket/types.d.ts +1 -1
- package/dist/server/src/camera/streaming/peer-connection.js +1 -0
- package/dist/server/src/camera/streaming/peer-connection.js.map +1 -1
- package/dist/server/src/services/logger/index.d.ts +2 -3
- package/dist/server/src/services/logger/index.js +23 -73
- package/dist/server/src/services/logger/index.js.map +1 -1
- package/package.json +4 -4
- package/dist/interface/assets/@vueuse-GPEsefjJ.js +0 -1
- package/dist/interface/assets/Console-DJq4Hm5A.css +0 -1
- package/dist/interface/assets/NewCamera-C7naTyF1.css +0 -1
- package/dist/interface/assets/System-DA2Qigu6.js +0 -4
- package/dist/interface/assets/VPlayer-D_SuxyEf.js +0 -1
- package/dist/interface/assets/VPluginCard-B7FNMmgt.css +0 -1
- package/dist/interface/assets/VPluginCard-BVeId9fp.js +0 -4
- package/dist/interface/assets/main-BvNHUtMy.css +0 -1
- package/dist/interface/assets/main-f-Qd4R5M.js +0 -9
- package/dist/interface/assets/rxjs-CQrF441D.js +0 -3
- package/dist/server/src/api/websocket/nsp/frameWorker.d.ts +0 -13
- package/dist/server/src/api/websocket/nsp/frameWorker.js +0 -29
- package/dist/server/src/api/websocket/nsp/frameWorker.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{x as j,y as T,w as R}from"./main-
|
|
1
|
+
import{x as j,y as T,w as R}from"./main-C2N2tbw_.js";import{F as L,t as U,r as f,e as v,f as I,j as s,M as _,R as b,T as r,u,l as C,O as D,q as h,V as B,ae as J,i as E}from"./@vue-CIFymae3.js";import{i as F}from"./vue3-toastify-Cy6dUyKO.js";import{r as M}from"./system-C1OmXhti.js";import{aA as A,Y as q}from"./@mdi-jq8isxax.js";import{e as O,a2 as Y,b as z,n as G}from"./vuetify-B_vGZaGi.js";import{u as H}from"./vue-i18n-CHUfunSC.js";import"./vue-inline-svg-DDdr3aAz.js";import"./axios-BI2i94Vb.js";import"./@tanstack-DPd4-F0t.js";import"./pinia-B_gX_pHL.js";import"./vue-router-C55prZ5l.js";import"./@vueuse-DbPVvJxZ.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./vee-validate-DHjm38DY.js";import"./@vee-validate-CmTVjJBY.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-DmqiRszP.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-CbEkwI4D.js";import"./@popperjs-BQBsAJpH.js";import"./@intlify-YW_pt133.js";const K=async k=>(await j.post("/backup/download",{localStorage:k},{responseType:"arraybuffer"})).data,P=async k=>(await j.post("/backup/restore",k)).data,Q={class:"w-full"},W={class:"flex flex-col justify-center items-center mb-5"},X={for:"restoreInput",class:"cursor-pointer text-center"},Z=["accept"],ee={key:0,class:"text-red"},te={class:"mx-2"},oe={class:"disabled-text"},se=L({__name:"VUploadFiles",props:{multiple:{type:Boolean,default:!1},accept:{},icon:{default:A}},emits:["files-uploaded"],setup(k,{expose:S,emit:V}){const p=V,x=k,{accept:w,multiple:y}=U(x),$=f(!1),g=f(!1),i=f([]),e=f(null),n=l=>{const t=i.value.findIndex(a=>a.name===l);t>-1&&(i.value.splice(t,1),o())},d=l=>{if($.value=!1,g.value=!1,i.value=[],console.log(l),l.dataTransfer)if(!y.value&&l.dataTransfer.files.length>1)g.value=!0;else{for(const[,t]of Object.entries(l.dataTransfer.files))i.value.push(t);p("files-uploaded",i.value)}},m=l=>{var a;g.value=!1,i.value=[];const t=l.target;if(t&&t.files)if(!y.value&&((a=t.files)==null?void 0:a.length)>1)g.value=!0;else{for(const[,N]of Object.entries(t.files))i.value.push(N);p("files-uploaded",i.value)}},o=()=>{e.value&&(e.value.value="")};return S({reset:()=>{i.value=[],o()}}),(l,t)=>(v(),I("div",{class:"file-upload-box p-4",onDrop:t[0]||(t[0]=h(a=>d(a),["prevent"])),onDragover:t[1]||(t[1]=h(a=>$.value=!0,["prevent"])),onDragenter:t[2]||(t[2]=h(a=>$.value=!0,["prevent"])),onDragleave:t[3]||(t[3]=h(a=>$.value=!1,["prevent"]))},[s("div",Q,[s("div",W,[_(O,{class:"mt-5",size:"60"},{default:b(()=>[B(r(l.icon),1)]),_:1}),s("label",X,r(l.$t("components.upload_files.drop_or_select_file")),1),s("input",{id:"restoreInput",ref_key:"fileInput",ref:e,type:"file",class:"d-none",accept:u(w),onChange:m},null,40,Z),u(g)?(v(),I("p",ee,r(l.$t("components.upload_files.only_one_file_allowed")),1)):C("",!0)]),u(i).length>0?(v(),D(Y,{key:0,items:u(i),"max-height":"150","item-height":"50"},{default:b(({item:a})=>[(v(),I("div",{key:a.name,class:"w-full flex flex-row items-center justify-start p-2"},[_(z,{size:"28",variant:"text",color:"red",rounded:"",onClick:h(N=>n(a.name),["stop"])},{default:b(()=>[_(O,{size:"20"},{default:b(()=>[B(r(u(q)),1)]),_:1})]),_:2},1032,["onClick"]),s("b",te,r(a.name),1),s("span",oe,"("+r(a.size)+" bytes)",1)])),u(i).length>1?(v(),D(G,{key:0})):C("",!0)]),_:1},8,["items"])):C("",!0)])],32))}}),ae={key:0,class:"flex w-full h-full justify-center items-center fixed top-0 left-0",style:{"z-index":"9000"}},ne={class:"subview-title text-color"},le={class:"inner-component p-4"},re={class:"text-sm"},ie=s("br",null,null,-1),ce=s("div",{class:"my-8"},null,-1),ue={class:"subview-title text-color"},pe={class:"inner-component p-4"},de={class:"text-sm"},me=s("div",{class:"my-8"},null,-1),fe={class:"subview-title text-color"},ve={class:"inner-component p-4"},_e={class:"text-sm"},Ge=L({__name:"Backup",setup(k){const{t:S}=H(),V=f(null),p=f(!1),x=f(!1),w=f(!1),y=f([]),$=async()=>{var e,n,d,m;p.value=!0;try{const o={};if(localStorage.getItem("ui")){const a=localStorage.getItem("ui");o.ui=JSON.parse(a)}if(localStorage.getItem("locale")){const a=localStorage.getItem("locale");o.locale=a}if(localStorage.getItem("theme")){const a=localStorage.getItem("theme");o.theme=JSON.parse(a)}const c=await K(o),l=window.URL.createObjectURL(new Blob([c])),t=document.createElement("a");t.href=l,t.setAttribute("download","cameraui-backup.tar.gz"),document.body.appendChild(t),t.click(),t.remove()}catch(o){console.error(((n=(e=o.response)==null?void 0:e.data)==null?void 0:n.message)??o.message??o),F.error(((m=(d=o.response)==null?void 0:d.data)==null?void 0:m.message)??o.message??o)}p.value=!1},g=async()=>{var e,n,d,m,o;p.value=!0;try{const c=new FormData;c.append("upload",y.value[0]);const l=await P(c);i(l),(e=V.value)==null||e.reset(),F.success(S("components.toast.backup_restored")),x.value=!0,M()}catch(c){console.error(((d=(n=c.response)==null?void 0:n.data)==null?void 0:d.message)??c.message??c),F.error(((o=(m=c.response)==null?void 0:m.data)==null?void 0:o.message)??c.message??c),p.value=!1,x.value=!1}},i=e=>{e.theme&&localStorage.setItem("theme",JSON.stringify(e.theme)),e.locale&&localStorage.setItem("locale",e.locale),e.ui&&localStorage.setItem("ui",JSON.stringify(e.ui))};return(e,n)=>{const d=T,m=R;return v(),I("div",null,[(v(),D(J,{to:".app"},[u(x)?(v(),I("div",ae,[_(d,{reload:""})])):C("",!0)])),s("div",null,[s("span",ne,r(e.$t("views.settings.create_backup")),1),s("div",le,[s("span",re,r(e.$t("views.settings.create_backup_info")),1),ie,_(z,{loading:u(p),class:"mt-5",color:"#df2a4c",onClick:h($,["prevent"])},{default:b(()=>[B(r(e.$t("components.form.button.download_backup_archive")),1)]),_:1},8,["loading"])])]),ce,s("div",null,[s("span",ue,r(e.$t("views.settings.restore_backup")),1),s("div",pe,[s("span",de,r(e.$t("views.settings.restore_backup_info")),1),_(se,{ref_key:"input",ref:V,class:"mt-5",accept:"application/gzip, .tar, .tar.gz",onFilesUploaded:n[0]||(n[0]=o=>y.value=o)},null,512),_(z,{loading:u(p),disabled:!u(y).length,class:"mt-5",color:"#df2a4c",onClick:n[1]||(n[1]=h(o=>w.value=!0,["prevent"]))},{default:b(()=>[B(r(e.$t("components.form.button.restore_backup_archive")),1)]),_:1},8,["loading","disabled"])])]),me,s("div",null,[s("span",fe,r(e.$t("views.settings.sheduled_backup")),1),s("div",ve,[s("span",_e,r(e.$t("views.settings.sheduled_backup_info")),1)])]),_(m,{modelValue:u(w),"onUpdate:modelValue":n[2]||(n[2]=o=>E(w)?w.value=o:null),title:e.$t("components.dialog.title.confirm"),"confirm-text":"components.form.button.restore_and_restart",loading:u(p),onConfirm:n[3]||(n[3]=o=>g())},{content:b(()=>[s("span",null,r(e.$t("components.dialog.message.confirm_restore")),1)]),_:1},8,["modelValue","title","loading"])])}}});export{Ge as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as me,t as he,r as i,c as S,w as U,a3 as Ne,x as je,a0 as Tt,e as n,f as y,M as w,R as k,g as ae,v as ce,u as t,X as G,j as g,O as R,T as q,l as J,N as Fe,Q as Ce,y as $e,ai as Ht,aj as kt,ap as $t,i as fe,J as Et,n as Ee,V as ge,b as Dt,q as Ft,aq as Ct}from"./@vue-CIFymae3.js";import{D as Vt,E as We,F as zt,B as Be,G as Ot,H as Mt,I as It}from"./@mdi-DdmeckA1.js";import{a as Ue,f as qe,j as ue,k as Rt,l as Lt,m as Gt,n as Bt,o as At,p as Nt,q as jt,d as xe,i as Wt}from"./main-f-Qd4R5M.js";import{s as Qe}from"./pinia-B_gX_pHL.js";import{l as Ut,m as qt,n as Xe,p as Qt,q as Xt,d as Ze,s as Ae,t as Zt,k as Jt}from"./@vueuse-GPEsefjJ.js";import{b as te,B as De,C as Yt,V as Ve,D as Kt,E as ea,R as ta,e as re,F as aa}from"./vuetify-B_vGZaGi.js";import{C as Je,_ as Ye}from"./VPlayer-D_SuxyEf.js";import{u as Ke}from"./vue-router-C55prZ5l.js";import{D as la}from"./v-calendar-CbEkwI4D.js";import"./vue-inline-svg-DDdr3aAz.js";import"./vue3-toastify-Cy6dUyKO.js";import"./vue-i18n-Cyk5bTcs.js";import"./@intlify-Ck2ZoCVz.js";import"./axios-BI2i94Vb.js";import"./@tanstack-DPd4-F0t.js";import"./vee-validate-DHjm38DY.js";import"./@vee-validate-CmTVjJBY.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"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./@popperjs-BQBsAJpH.js";import"./qrcode-SHonoxyK.js";import"./dijkstrajs-D_NXgYpA.js";import"./plugins-X26db0mJ.js";import"./draggabilly-YEGzHR3_.js";import"./get-size-D1dS-IaP.js";import"./unidragger-91TYirAP.js";import"./ev-emitter-t78oQA8k.js";var r=(e=>(e[e.HEIGHT=8]="HEIGHT",e[e.WIDTH=85]="WIDTH",e.COLOR="#000000",e[e.OFFSET=50]="OFFSET",e[e.TIME_OFFSET=15]="TIME_OFFSET",e[e.TIME_START_POSITION=15]="TIME_START_POSITION",e[e.MAX_SCROLL_PX=720]="MAX_SCROLL_PX",e))(r||{}),et=(e=>(e.type="seconds",e[e.bigTickInterval=5]="bigTickInterval",e[e.labelInterval=15]="labelInterval",e[e.duration=15e3]="duration",e[e.timeMsFactor=15e3]="timeMsFactor",e[e.timeMsPerTick=1e3]="timeMsPerTick",e[e.timeMsPerPx=125]="timeMsPerPx",e[e.pxPerSecond=8]="pxPerSecond",e))(et||{}),tt=(e=>(e.type="two-minutes",e[e.bigTickInterval=4]="bigTickInterval",e[e.labelInterval=8]="labelInterval",e[e.duration=12e4]="duration",e[e.timeMsFactor=12e4]="timeMsFactor",e[e.timeMsPerTick=15e3]="timeMsPerTick",e[e.timeMsPerPx=1875]="timeMsPerPx",e[e.pxPerSecond=.5333333333333333]="pxPerSecond",e))(tt||{}),at=(e=>(e.type="fifteen-minutes",e[e.bigTickInterval=5]="bigTickInterval",e[e.labelInterval=15]="labelInterval",e[e.duration=9e5]="duration",e[e.timeMsFactor=9e5]="timeMsFactor",e[e.timeMsPerTick=6e4]="timeMsPerTick",e[e.timeMsPerPx=7500]="timeMsPerPx",e[e.pxPerSecond=.13333333333333333]="pxPerSecond",e))(at||{}),lt=(e=>(e.type="thirty-minutes",e[e.bigTickInterval=3]="bigTickInterval",e[e.labelInterval=9]="labelInterval",e[e.duration=18e5]="duration",e[e.timeMsFactor=18e5]="timeMsFactor",e[e.timeMsPerTick=2e5]="timeMsPerTick",e[e.timeMsPerPx=25e3]="timeMsPerPx",e[e.pxPerSecond=.04]="pxPerSecond",e))(lt||{}),ot=(e=>(e.type="hours",e[e.bigTickInterval=3]="bigTickInterval",e[e.labelInterval=18]="labelInterval",e[e.duration=36e5]="duration",e[e.timeMsFactor=36e5]="timeMsFactor",e[e.timeMsPerTick=2e5]="timeMsPerTick",e[e.timeMsPerPx=25e3]="timeMsPerPx",e[e.pxPerSecond=.04]="pxPerSecond",e))(ot||{});const st=e=>(Ht("data-v-e8bb6d1c"),e=e(),kt(),e),oa={class:"absolute z-10 top-0 left-0 right-0 w-full"},sa={key:1},ia={key:0,class:"timeline-gradient-bg-top"},na=st(()=>g("div",{class:"timeline-gradient-bg-dark-top"},null,-1)),ra=st(()=>g("div",{class:"timeline-gradient-bg-white-top"},null,-1)),ua=[na,ra],ca=["data-tick-index"],ma=["data-tick-index"],da={key:0,class:"tick-label"},va={key:2},pa=me({__name:"VLiveTimeline",props:{zoomModel:{default:1},dateModel:{default:()=>new Date},modifier:{default:0},segment:{default:"0"}},emits:["is-loading","is-scrolling"],setup(e,{emit:N}){const j=e,M=N,{theme:P}=Qe(Ue()),{dateModel:V,modifier:$,zoomModel:f}=he(j),E=i(0),D=i(0),T=i(new Date),p=i(0),u=i(),s=i(!1),F=i(!1),C=i([]),O=i(!1),v=i(0),Y=i(0),le=i(new Date),K=i(0),B=i(0),oe=i("#5b5b5b"),z=i({timestamp:Date.now(),live:!0}),h=i(null),ee=i(null),H=i([]),c=i(0),{tabletActive:se,mobileActive:ye}=qe(),_e=Ut(h),be=qt({touch:!1,target:ee}),{isOutside:ie}=Xe(ee),{pressed:_}=Qt({touch:!1,target:ee}),A=Xt(h),ze=Ze();Ae("ArrowDown",a=>{ie.value||(a.preventDefault(),ke(),h.value&&h.value.scrollTop++)}),Ae("ArrowUp",a=>{ie.value||(a.preventDefault(),ke(),h.value&&h.value.scrollTop--)});let we,Pe,Oe;const Me=S(()=>A.y.value>0?"#0173ff":"#df2a4c"),it=S(()=>{let a=`transition: all .2s ease-out; background-color: ${Me.value};`;return s.value?a+="width: 20px; left: 9px; border-radius: 30px":m.value.type==="seconds"?a+="width: 60px; left: 9px;":A.y.value===0?a+="width: 40px; left: 9px;":a+="width: 55px; left: 9px;",a}),nt=S(()=>`transition: all .5s ease-out; position: absolute; top: ${ne.value.px}px; background-color: ${Me.value};`),ne=S(()=>{var d;const a=T.value.getTime(),l=r.TIME_OFFSET*r.HEIGHT-1;let o=((d=u.value)==null?void 0:d.timestamp)||a;return A.y.value===0&&(o=a),u.value&&(u.value.timestamp=o),{px:l,timestamp:o}}),rt=S(()=>m.value.type==="seconds"),Se=S(()=>r.HEIGHT*m.value.labelInterval),Ie=S(()=>m.value.pxPerSecond*E.value+B.value),ut=S(()=>m.value.pxPerSecond*E.value-v.value*r.HEIGHT-3+B.value),ct=S(()=>`transition: all .5s ease-out; mask-image: url('data:image/svg+xml,${Re.value}'); -webkit-mask-image: url('data:image/svg+xml,${Re.value}'); mask-size: ${r.WIDTH}px ${Se.value}px; -webkit-mask-size: ${r.WIDTH}px ${Se.value}px; width: ${r.WIDTH}px; height: ${c.value}px; mask-position: 0px ${p.value+Ie.value}px; -webkit-mask-position: 0px ${p.value+Ie.value}px`),Re=S(()=>{let a=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${r.WIDTH} ${Se.value}" vector-effect="non-scaling-stroke" stroke-width="${1/(window.devicePixelRatio||1)}px" shape-rendering="crispEdges">`;if(!s.value)for(let l=0;l<m.value.labelInterval;l++){const o=l%m.value.labelInterval==0,d=0,b=o?4:l%m.value.bigTickInterval===0?2:1,x=l*r.HEIGHT+r.HEIGHT/2;a+=`<line x1="${d}" y1="${x}" x2="${2*b}" y2="${x}" stroke="${oe.value}" stroke-opacity="100%"/>`}return a+="</svg>",encodeURIComponent(a)}),mt=S(()=>`transition: top .5s ease-out; height: ${r.HEIGHT}px;`),dt=S(()=>{var b;const a=(b=h.value)==null?void 0:b.getBoundingClientRect(),l=ze.width.value,o=($==null?void 0:$.value)||0,d=l-l+(o-o);return a?ze.height.value-a.top+d:null}),m=S(()=>gt(f.value)),vt=S(()=>`height: 100%; cursor: ${s.value?"default":_.value?"grabbing":"grab"}`);U(s,a=>{_e.value=a,M("is-loading",a)}),U(V,a=>{if(a){if(a.getTime()===ne.value.timestamp)return;a==null||a.setSeconds(0,0),Te(a)}}),U(be.y,(a,l)=>{if(_.value&&a!==l&&h.value){let o=Math.abs(a-l);a<l&&(o=o*-1),h.value.scrollTop=h.value.scrollTop-=o}}),U(A.isScrolling,a=>{M("is-scrolling",a),!a&&O.value&&(O.value=!1)}),U(A.y,(a,l)=>{var b,x;if(ke(),a===0&&de(-C.value.length),a!==l)if(a===0)z.value={timestamp:ne.value.timestamp,live:!0};else{const Q=(a-l)*m.value.timeMsPerPx,L=O.value?z.value.timestamp:z.value.timestamp-Q;z.value={timestamp:L,live:!1}}const d=(((b=h.value)==null?void 0:b.scrollHeight)||0)-(((x=h.value)==null?void 0:x.clientHeight)||0)-r.OFFSET*r.HEIGHT;a>=d&&de(r.OFFSET)}),U(f,async()=>{await He(),A.y.value>0&&Te(z.value.timestamp,"auto",!0)});const Le=a=>{var o;const l=(dt.value||((o=h.value)==null?void 0:o.clientHeight)||0)+r.OFFSET*r.HEIGHT;a!==void 0?c.value+a*r.HEIGHT>=l&&(c.value+=a*r.HEIGHT):c.value=l},de=(a,l,o)=>{var Q;if(a===0)return;const d=Math.abs(a);let b=H.value.length-d,x=a<0;if(l){x||(x=!0,a=-a);for(let L=0;L<d;L++){const I=H.value[0],ve=I.index,W=I.timestamp,X=ve-1,Z={index:X,format:m.value.type,timestamp:W+m.value.timeMsPerTick,label:X%m.value.labelInterval==0};H.value.unshift(Z)}}if(Le(a),x)b!==0&&d===1?H.value.pop():H.value.splice(b,d),C.value=[];else{const L=(((Q=h.value)==null?void 0:Q.clientHeight)||0)+r.OFFSET*r.HEIGHT,I=Math.ceil(L/r.HEIGHT),ve=H.value.length>=I?0:I-H.value.length+1;for(let W=0;W<d;W++){const X=H.value[H.value.length-1],pe=X.index+1,Ge={index:pe,format:m.value.type,timestamp:X.timestamp-m.value.timeMsPerTick,label:pe%m.value.labelInterval==0};W>=ve&&C.value.push(Ge),H.value.push(Ge)}}},pt=a=>{let l;a&&typeof a!="number"&&(a=a.getTime()),a||(a=T.value.getTime());const o=H.value.map(x=>x.timestamp),d=jt(o,a),b=H.value.find(x=>x.timestamp===d.timestamp);return b&&(l={...b}),l},ft=a=>{typeof a!="number"&&(a=a.getTime());const l=ne.value.timestamp-a,o=new Date(ne.value.timestamp-l);return{y:l/m.value.timeMsPerTick*r.HEIGHT,timestamp:o.getTime()}},gt=a=>{switch(a){case 1:return ot;case 2:return lt;case 3:return at;case 4:return tt}return et},ht=a=>new Promise(l=>{var X;xt();let o=T.value.getTime();a&&(o=typeof a=="object"?a.getTime():a);const d=r.TIME_OFFSET*m.value.timeMsPerTick,b=new Date(o+d),Q=yt(b).date.getTime(),L=Math.ceil(c.value/r.HEIGHT);for(let Z=0;Z<L;Z++){const pe={index:Z,format:m.value.type,timestamp:Q-Z*m.value.timeMsPerTick,label:Z%m.value.labelInterval==0};H.value.push(pe)}const I=pt(o);I&&(K.value=I.timestamp-o,u.value=I,u.value.timestamp=o);let W=(((X=u.value)==null?void 0:X.index)||0)*r.HEIGHT-r.TIME_OFFSET*r.HEIGHT;K.value<0?W+=K.value/m.value.timeMsPerPx:K.value>0&&(W-=K.value/m.value.timeMsPerPx),p.value=-(r.HEIGHT/2)-W,l()}),xt=()=>{v.value=0,Y.value=0,E.value=0,D.value=0,H.value=[]},yt=a=>{switch(m.value.type){case"seconds":return Nt(a);case"two-minutes":return At(a);case"fifteen-minutes":return Bt(a);case"thirty-minutes":return Gt(a);case"hours":return Lt(a)}},Te=async(a,l="smooth",o=!1)=>{var b;if(a===0){(b=h.value)==null||b.scrollTo({top:0,behavior:"smooth"});return}O.value=o;const d=ft(a).y;if(d>=600){const x=r.OFFSET*m.value.timeMsPerTick,Q=x/m.value.timeMsPerPx,L=typeof a=="object"?a.getTime():a;await He(!0,L+x),O.value=!0,z.value.timestamp=L,$e(()=>{var I;return(I=h.value)==null?void 0:I.scrollTo({top:Q,behavior:l})});return}$e(()=>{var x;return(x=h.value)==null?void 0:x.scrollTo({top:d,behavior:l})})},He=async(a,l)=>new Promise(o=>{s.value=!0;const d=Date.now(),b=setInterval(async()=>{Rt(new Date).date.getTime()-d>=999&&(clearInterval(b),le.value=new Date,T.value=new Date,Pt(),wt(),await ht(l),s.value=!1,o())},1)}),_t=()=>{clearInterval(we),clearInterval(Pe)},bt=()=>{T.value=new Date,D.value++,A.y.value===0?(E.value=D.value,z.value={timestamp:T.value.getTime(),live:!0}):A.y.value>0&&!F.value&&(E.value++,z.value={timestamp:z.value.timestamp+1e3,live:!1})},wt=()=>{clearInterval(we),we=setInterval(bt,1e3)},Pt=()=>{clearInterval(Pe),Pe=setInterval(St,m.value.timeMsPerTick)},St=()=>{s.value||(le.value=new Date,Y.value++,A.y.value===0?(de(Y.value-v.value,!0),u.value&&(u.value.index-=Y.value-v.value),v.value=Y.value):A.y.value>0&&!F.value&&(de(1,!0),v.value++,u.value&&u.value.index--))},ke=()=>{clearTimeout(Oe),Oe=setTimeout(()=>{F.value=!1},500),F.value=!0};return Ne(()=>{P.value==="light"?oe.value="#5b5b5b":oe.value="#888888"}),je(()=>{Le(),He()}),Tt(()=>{_t()}),(a,l)=>(n(),y("div",{ref_key:"timelineComponent",ref:ee,class:"relative h-full w-full"},[w(De,null,{default:k(()=>[ae(w(te,{disabled:t(s),icon:t(Vt),transition:"fade-transition",position:"absolute",location:"bottom right",class:"timeline-btn",style:G(`transition: all .3s ease-out; ${t(z).live?"":"right: 100px !important;"}`)},null,8,["disabled","icon","style"]),[[ce,t(ye)&&!t(ie)]])]),_:1}),w(De,null,{default:k(()=>[ae(w(te,{disabled:t(s),icon:t(We),transition:"fade-transition",position:"absolute",location:"bottom right",class:"timeline-btn",onClick:l[0]||(l[0]=o=>Te(0))},null,8,["disabled","icon"]),[[ce,!t(z).live]])]),_:1}),g("div",oa,[w(Yt,{active:t(s),indeterminate:t(s),color:"#df2a4c",height:"2px"},null,8,["active","indeterminate"])]),g("div",{class:"timeline-annotation",style:G(t(nt))},[g("div",{ref:"annotationLabel",class:"timeline-annotation-label",style:G(t(it))},[t(s)?(n(),R(Ve,{key:0,indeterminate:"",color:"white",size:"10",width:"2"})):(n(),y("div",sa,q(t(z).live?"LIVE":t(ue)(t(z).timestamp,"HH:mm:ss")),1))],4)],4),g("div",{ref_key:"timeline",ref:h,class:"timeline hide-scrollbar disable-overflow-scroll w-full relative",style:G(t(vt))},[t(se)?J("",!0):(n(),y("div",ia,ua)),a.segment==="0"?(n(),y("div",{key:1,class:"relative h-full",style:G(t(se)?"":"top: -100px")},[g("div",{class:"timeline-scale",style:G(t(ct))},null,4),(n(!0),y(Fe,null,Ce(t(H),(o,d)=>(n(),y("div",{key:o.index,"data-tick-index":o.index,class:"tick-container flex justify-center items-center absolute",style:G(`${t(mt)}; top: ${t(p)+t(ut)+d*t(r).HEIGHT}px`)},[g("div",{"data-tick-index":`${o.index}`,class:"tick-line relative"},[o.label&&!t(s)?(n(),y("div",da,q(t(ue)(o.timestamp,t(rt)?"HH:mm:ss":"HH:mm")),1)):J("",!0)],8,ma)],12,ca))),128))],4)):(n(),y("div",va))],4)],512))}}),fa=xe(pa,[["__scopeId","data-v-e8bb6d1c"]]),ga={class:"vue-ios13-segmented-control"},ha=["id","name","value"],xa=["for"],ya=me({__name:"VSegmentedControl",props:{modelValue:{},segments:{}},emits:["update:modelValue"],setup(e,{emit:N}){const j=e,M=N,P=i(0),{modelValue:V,segments:$}=he(j),f=S({get(){return V.value},set(p){M("update:modelValue",p)}}),E=S(()=>$.value.findIndex(p=>p.id===V.value)),D=S(()=>{let p=P.value*E.value;return P.value*E.value<0&&(p=0),`transform:translateX(${p}px)`}),T=()=>{$e(()=>{const p=document.querySelector(`input[type='radio'][value='${V.value}']`);P.value=p&&p.offsetWidth})};return U([$,V],()=>{T()},{deep:!0}),Zt(window,"resize",T),(p,u)=>(n(),y("div",ga,[g("span",{class:"selection-pill",style:G(t(D))},null,4),(n(!0),y(Fe,null,Ce(t($),s=>(n(),y("div",{key:s.id,class:"option"},[ae(g("input",{id:s.id,"onUpdate:modelValue":u[0]||(u[0]=F=>fe(f)?f.value=F:null),type:"radio",name:s.title,value:s.id},null,8,ha),[[$t,t(f)]]),g("label",{for:s.id,class:"w-full cursor-pointer"},[g("span",{style:G(t(f)===s.id?"color: var(--color-segment-text);":"color: var(--color-segment-disabled-text)")},q(s.title),5)],8,xa)]))),128))]))}}),_a={key:0,class:"w-full flex items-center justify-center mt-10"},ba={class:"flex flex-col justify-center items-center"},wa=me({__name:"VCameraCarousel",props:{showLabel:{type:Boolean,default:!1}},setup(e){const N=new Je,j=Ke(),M=e,{showLabel:P}=he(M),V=i({page:1,pageSize:-1}),{data:$,isLoading:f}=N.getCamerasQuery(V),E=S(()=>{var D;return(D=$.value)==null?void 0:D.result.findIndex(T=>T.name===j.params.cameraname)});return(D,T)=>{const p=Ye,u=Et("router-link");return t(f)?(n(),y("div",_a,[w(Ve,{color:"#df2a4c",indeterminate:""})])):(n(),R(ea,{key:1,"model-value":t(E),class:"mt-3","show-arrows":"",mandatory:"force"},{default:k(()=>{var s;return[(n(!0),y(Fe,null,Ce(((s=t($))==null?void 0:s.result)||[],(F,C)=>(n(),R(Kt,{key:F.name,value:C},{default:k(({toggle:O,isSelected:v})=>[g("div",ba,[w(u,{to:`/cameras/${F.name}`,onClick:O},{default:k(()=>[ae(w(p,{class:"ma-3","current-camera":F.name,"border-radius":8,border:!1,target:"snapshot",style:{width:"140px"}},null,8,["current-camera"]),[[ta]])]),_:2},1032,["to","onClick"]),t(P)?(n(),y("div",{key:0,class:Ee(["add-transition slide-item-title",{"slide-item-title-active":v}])},q(F.name||D.$t("general.loading")),3)):J("",!0)])]),_:2},1032,["value"]))),128))]}),_:1},8,["model-value"]))}}}),Pa=xe(wa,[["__scopeId","data-v-ec891350"]]),Sa=["onClick"],Ta=me({__name:"VCalendar",props:{showPicker:{type:Boolean,default:!1},showButton:{type:Boolean,default:!1},transitionTrigger:{type:Boolean,default:!0},loading:{type:Boolean,default:!0}},emits:["dateChanged","calendarOpen"],setup(e,{emit:N}){const j=e,M=N,{loading:P}=he(j),{theme:V}=Qe(Ue()),$=i(!1),f=i(new Date),E=Ze();U(f,(u,s)=>{u?M("dateChanged",f.value):f.value=s});const D=()=>{$.value=!1,M("calendarOpen",!1)},T=()=>{$.value=!0,M("calendarOpen",!0)},p=u=>{P.value||u()};return(u,s)=>{const F=la;return n(),y("div",null,[w(F,{modelValue:t(f),"onUpdate:modelValue":s[0]||(s[0]=C=>fe(f)?f.value=C:null),"is-required":"",color:"gray","is-dark":t(V)==="dark","max-date":new Date,mode:"dateTime",is24hr:"",onPopoverDidShow:T,onPopoverDidHide:D},{default:k(({togglePopover:C})=>[w(De,null,{default:k(()=>[u.showButton?ae((n(),R(te,{key:0,disabled:t(P),transition:"fade-transition",position:"fixed",location:"bottom left",class:"date-fixed-btn rounded-xl",onClick:O=>p(C)},{default:k(()=>[ge(q(t(ue)(t(f))),1)]),_:2},1032,["disabled","onClick"])),[[ce,u.transitionTrigger]]):J("",!0)]),_:2},1024),u.showPicker?(n(),y("div",{key:0,onClick:O=>p(C)},[g("span",{class:"text-sm cursor-pointer",style:G(t(P)?"color: #a8a8a8;":"")},q(t(E).width.value<875?t(ue)(t(f),"ddd., D. MMM."):t(ue)(t(f))),5),w(re,{size:"20",color:t(P)?"#a8a8a8":"#4a4a4a",class:"cursor-pointer"},{default:k(()=>[ge(q(t($)?t(We):t(zt)),1)]),_:1},8,["color"])],8,Sa)):J("",!0)]),_:1},8,["modelValue","is-dark","max-date"])])}}}),Ha=xe(Ta,[["__scopeId","data-v-818d397f"]]),ka={key:0,class:"flex items-center justify-center w-full h-full"},$a={key:1,class:"w-full h-full"},Ea={class:"absolute z-5 left-1 top-2"},Da={class:"left-content"},Fa={key:0,class:"timeline-toggle"},Ca={class:"flex flex-col items-center h-full sidebar camera-no-outside"},Va={key:0,class:"sidebar-header p-1 relative"},za={class:"flex flex-row mb-2"},Oa={class:"w-1/2 flex justify-center items-center"},Ma={class:"w-1/2 flex justify-center items-center"},Ia=me({__name:"Camera",setup(e){const N=new Je,j=Ke(),{desktopActive:M,mobileActive:P,tabletActive:V,extraSmallMobileActive:$}=qe(),{t:f}=Wt.global,E=i(!1),D=i(new Date),T=i(),p=i(0),u=i("0"),s=i(!1),F=i(null),C=i(!1),O=i(!1),v=i(1),Y=Dt([{title:f("views.camera.timeline"),id:"0"},{title:f("views.camera.detections"),id:"1"}]),le=Jt(T),{isOutside:K}=Xe(F),B=S(()=>j.params.cameraname),{data:oe,isLoading:z}=N.getCameraQuery(B);U(v,()=>{});const h=()=>{v.value!==5&&(O.value||(v.value=(v.value||1)+1))},ee=()=>{v.value!==1&&(O.value||(v.value=(v.value||1)-1))};return Ne(async()=>{v.value=1}),je(async()=>{setTimeout(()=>{T.value=document.querySelector(".player-container-main")},100)}),(H,c)=>{const se=Ha,ye=Ye,_e=Pa,be=ya,ie=fa;return n(),y("main",{class:Ee(["w-full h-full",{"p-3":!t(P)}])},[!t(oe)||t(z)?(n(),y("div",ka,[w(Ve,{color:"#df2a4c",indeterminate:""})])):(n(),y("div",$a,[ae((n(),R(se,{key:t(B),layout:"text","show-button":"","transition-trigger":!t(K)||t(E),"max-date":new Date,loading:t(C),onDateChanged:c[0]||(c[0]=_=>D.value=_),onCalendarOpen:c[1]||(c[1]=_=>E.value=_)},null,8,["transition-trigger","max-date","loading"])),[[ce,t(P)||t(E)]]),g("div",{class:Ee(["relative z-5 w-full h-full flex flex-col md:flex-row overflow-hidden",{"gap-4":t(M)}])},[g("div",Ea,[t($)?(n(),R(te,{key:0,size:"32",icon:"",density:"compact",variant:"elevated",class:"no-drag camera-no-outside opacity-50",onClick:c[2]||(c[2]=Ft(_=>H.$router.push("/cameras"),["prevent"]))},{default:k(()=>[w(re,{size:"24"},{default:k(()=>[ge(q(t(Be)),1)]),_:1})]),_:1})):J("",!0)]),g("div",Da,[(n(),R(ye,{key:t(B),"show-title":"",settings:"",share:"",snapshot:"",target:"stream",zoom:(t(P)||t(V))&&t(s),"current-camera":t(oe).name,"timeline-scrolling":t(O)||t(C),"border-radius":t(P)?0:3,"zoom-model":t(v),"enable-control":"",shortcuts:"",motions:"",objects:"",zones:"","auto-hide-control":!1,"source-role":"high-resolution",onResize:c[3]||(c[3]=_=>p.value=_),onZoomIn:h,onZoomOut:ee},null,8,["zoom","current-camera","timeline-scrolling","border-radius","zoom-model"])),(n(),R(Ct,null,[ae(w(_e,{"show-label":"","focus-index":""},null,512),[[ce,!t(P)]])],1024))]),g("div",{class:"right-content",style:G(t(V)?`height: ${t(le).height.value}px; width: ${t(le).width.value/3}px; right: ${t(s)?0:-2-t(le).width.value/3}px`:"")},[t(V)?(n(),y("div",Fa,[w(te,{class:"camera-no-outside",color:"#212121",size:"30",variant:"elevated",icon:"",onClick:c[4]||(c[4]=_=>s.value=!t(s))},{default:k(()=>[w(re,{color:"#fff",size:"20"},{default:k(()=>[ge(q(t(s)?t(Ot):t(Be)),1)]),_:1})]),_:1})])):J("",!0),g("div",Ca,[!t(P)&&!t(V)?(n(),y("div",Va,[g("div",za,[g("div",Oa,[(n(),R(se,{key:t(B),loading:t(C),layout:"text","show-picker":"",onDateChanged:c[5]||(c[5]=_=>D.value=_)},null,8,["loading"]))]),g("div",Ma,[(n(),R(aa,{key:t(B),modelValue:t(v),"onUpdate:modelValue":c[6]||(c[6]=_=>fe(v)?v.value=_:null),disabled:t(C),readonly:"",min:"1",max:"5",step:"1","track-size":"1","thumb-size":"10","hide-details":""},{prepend:k(()=>[w(te,{size:"28",density:"compact",variant:"text",disabled:t(v)==1,icon:"",onClick:ee},{default:k(()=>[w(re,{size:"20",icon:t(Mt)},null,8,["icon"])]),_:1},8,["disabled"])]),append:k(()=>[w(te,{size:"28",density:"compact",variant:"text",disabled:t(v)==5,icon:"",onClick:h},{default:k(()=>[w(re,{size:"20",icon:t(It)},null,8,["icon"])]),_:1},8,["disabled"])]),_:1},8,["modelValue","disabled"]))])]),(n(),R(be,{key:t(B),modelValue:t(u),"onUpdate:modelValue":c[7]||(c[7]=_=>fe(u)?u.value=_:null),segments:t(Y)},null,8,["modelValue","segments"]))])):J("",!0),(n(),R(ie,{key:t(B),ref_key:"timeline",ref:F,"date-model":t(D),"zoom-model":t(v),modifier:t(p),segment:t(u),onIsScrolling:c[8]||(c[8]=_=>O.value=_),onIsLoading:c[9]||(c[9]=_=>C.value=_)},null,8,["date-model","zoom-model","modifier","segment"]))])],4)],2)]))],2)}}}),_l=xe(Ia,[["__scopeId","data-v-6e567cc6"]]);export{_l as default};
|
|
1
|
+
import{F as me,t as he,r as i,c as S,w as U,a3 as Ne,x as je,a0 as Tt,e as n,f as y,M as w,R as k,g as ae,v as ce,u as t,X as G,j as g,O as R,T as q,l as J,N as Fe,Q as Ce,y as $e,ai as Ht,aj as kt,ap as $t,i as fe,J as Et,n as Ee,V as ge,b as Dt,q as Ft,aq as Ct}from"./@vue-CIFymae3.js";import{D as Vt,E as We,F as zt,B as Be,G as Ot,H as Mt,I as It}from"./@mdi-jq8isxax.js";import{a as Ue,f as qe,j as ue,k as Rt,l as Lt,m as Gt,n as Bt,o as At,p as Nt,q as jt,d as xe,i as Wt}from"./main-C2N2tbw_.js";import{s as Qe}from"./pinia-B_gX_pHL.js";import{l as Ut,m as qt,n as Xe,p as Qt,q as Xt,d as Ze,s as Ae,t as Zt,k as Jt}from"./@vueuse-DbPVvJxZ.js";import{b as te,B as De,C as Yt,V as Ve,D as Kt,E as ea,R as ta,e as re,F as aa}from"./vuetify-B_vGZaGi.js";import{C as Je,_ as Ye}from"./VPlayer-B53-f3Ad.js";import{u as Ke}from"./vue-router-C55prZ5l.js";import{D as la}from"./v-calendar-CbEkwI4D.js";import"./vue-inline-svg-DDdr3aAz.js";import"./vue3-toastify-Cy6dUyKO.js";import"./vue-i18n-CHUfunSC.js";import"./@intlify-YW_pt133.js";import"./axios-BI2i94Vb.js";import"./@tanstack-DPd4-F0t.js";import"./vee-validate-DHjm38DY.js";import"./@vee-validate-CmTVjJBY.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-DmqiRszP.js";import"./tslib-9k7AwCpt.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./@popperjs-BQBsAJpH.js";import"./qrcode-SHonoxyK.js";import"./dijkstrajs-D_NXgYpA.js";import"./plugins-Cs7BJHj-.js";import"./draggabilly-YEGzHR3_.js";import"./get-size-D1dS-IaP.js";import"./unidragger-91TYirAP.js";import"./ev-emitter-t78oQA8k.js";var r=(e=>(e[e.HEIGHT=8]="HEIGHT",e[e.WIDTH=85]="WIDTH",e.COLOR="#000000",e[e.OFFSET=50]="OFFSET",e[e.TIME_OFFSET=15]="TIME_OFFSET",e[e.TIME_START_POSITION=15]="TIME_START_POSITION",e[e.MAX_SCROLL_PX=720]="MAX_SCROLL_PX",e))(r||{}),et=(e=>(e.type="seconds",e[e.bigTickInterval=5]="bigTickInterval",e[e.labelInterval=15]="labelInterval",e[e.duration=15e3]="duration",e[e.timeMsFactor=15e3]="timeMsFactor",e[e.timeMsPerTick=1e3]="timeMsPerTick",e[e.timeMsPerPx=125]="timeMsPerPx",e[e.pxPerSecond=8]="pxPerSecond",e))(et||{}),tt=(e=>(e.type="two-minutes",e[e.bigTickInterval=4]="bigTickInterval",e[e.labelInterval=8]="labelInterval",e[e.duration=12e4]="duration",e[e.timeMsFactor=12e4]="timeMsFactor",e[e.timeMsPerTick=15e3]="timeMsPerTick",e[e.timeMsPerPx=1875]="timeMsPerPx",e[e.pxPerSecond=.5333333333333333]="pxPerSecond",e))(tt||{}),at=(e=>(e.type="fifteen-minutes",e[e.bigTickInterval=5]="bigTickInterval",e[e.labelInterval=15]="labelInterval",e[e.duration=9e5]="duration",e[e.timeMsFactor=9e5]="timeMsFactor",e[e.timeMsPerTick=6e4]="timeMsPerTick",e[e.timeMsPerPx=7500]="timeMsPerPx",e[e.pxPerSecond=.13333333333333333]="pxPerSecond",e))(at||{}),lt=(e=>(e.type="thirty-minutes",e[e.bigTickInterval=3]="bigTickInterval",e[e.labelInterval=9]="labelInterval",e[e.duration=18e5]="duration",e[e.timeMsFactor=18e5]="timeMsFactor",e[e.timeMsPerTick=2e5]="timeMsPerTick",e[e.timeMsPerPx=25e3]="timeMsPerPx",e[e.pxPerSecond=.04]="pxPerSecond",e))(lt||{}),ot=(e=>(e.type="hours",e[e.bigTickInterval=3]="bigTickInterval",e[e.labelInterval=18]="labelInterval",e[e.duration=36e5]="duration",e[e.timeMsFactor=36e5]="timeMsFactor",e[e.timeMsPerTick=2e5]="timeMsPerTick",e[e.timeMsPerPx=25e3]="timeMsPerPx",e[e.pxPerSecond=.04]="pxPerSecond",e))(ot||{});const st=e=>(Ht("data-v-e8bb6d1c"),e=e(),kt(),e),oa={class:"absolute z-10 top-0 left-0 right-0 w-full"},sa={key:1},ia={key:0,class:"timeline-gradient-bg-top"},na=st(()=>g("div",{class:"timeline-gradient-bg-dark-top"},null,-1)),ra=st(()=>g("div",{class:"timeline-gradient-bg-white-top"},null,-1)),ua=[na,ra],ca=["data-tick-index"],ma=["data-tick-index"],da={key:0,class:"tick-label"},va={key:2},pa=me({__name:"VLiveTimeline",props:{zoomModel:{default:1},dateModel:{default:()=>new Date},modifier:{default:0},segment:{default:"0"}},emits:["is-loading","is-scrolling"],setup(e,{emit:N}){const j=e,M=N,{theme:P}=Qe(Ue()),{dateModel:V,modifier:$,zoomModel:f}=he(j),E=i(0),D=i(0),T=i(new Date),p=i(0),u=i(),s=i(!1),F=i(!1),C=i([]),O=i(!1),v=i(0),Y=i(0),le=i(new Date),K=i(0),B=i(0),oe=i("#5b5b5b"),z=i({timestamp:Date.now(),live:!0}),h=i(null),ee=i(null),H=i([]),c=i(0),{tabletActive:se,mobileActive:ye}=qe(),_e=Ut(h),be=qt({touch:!1,target:ee}),{isOutside:ie}=Xe(ee),{pressed:_}=Qt({touch:!1,target:ee}),A=Xt(h),ze=Ze();Ae("ArrowDown",a=>{ie.value||(a.preventDefault(),ke(),h.value&&h.value.scrollTop++)}),Ae("ArrowUp",a=>{ie.value||(a.preventDefault(),ke(),h.value&&h.value.scrollTop--)});let we,Pe,Oe;const Me=S(()=>A.y.value>0?"#0173ff":"#df2a4c"),it=S(()=>{let a=`transition: all .2s ease-out; background-color: ${Me.value};`;return s.value?a+="width: 20px; left: 9px; border-radius: 30px":m.value.type==="seconds"?a+="width: 60px; left: 9px;":A.y.value===0?a+="width: 40px; left: 9px;":a+="width: 55px; left: 9px;",a}),nt=S(()=>`transition: all .5s ease-out; position: absolute; top: ${ne.value.px}px; background-color: ${Me.value};`),ne=S(()=>{var d;const a=T.value.getTime(),l=r.TIME_OFFSET*r.HEIGHT-1;let o=((d=u.value)==null?void 0:d.timestamp)||a;return A.y.value===0&&(o=a),u.value&&(u.value.timestamp=o),{px:l,timestamp:o}}),rt=S(()=>m.value.type==="seconds"),Se=S(()=>r.HEIGHT*m.value.labelInterval),Ie=S(()=>m.value.pxPerSecond*E.value+B.value),ut=S(()=>m.value.pxPerSecond*E.value-v.value*r.HEIGHT-3+B.value),ct=S(()=>`transition: all .5s ease-out; mask-image: url('data:image/svg+xml,${Re.value}'); -webkit-mask-image: url('data:image/svg+xml,${Re.value}'); mask-size: ${r.WIDTH}px ${Se.value}px; -webkit-mask-size: ${r.WIDTH}px ${Se.value}px; width: ${r.WIDTH}px; height: ${c.value}px; mask-position: 0px ${p.value+Ie.value}px; -webkit-mask-position: 0px ${p.value+Ie.value}px`),Re=S(()=>{let a=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${r.WIDTH} ${Se.value}" vector-effect="non-scaling-stroke" stroke-width="${1/(window.devicePixelRatio||1)}px" shape-rendering="crispEdges">`;if(!s.value)for(let l=0;l<m.value.labelInterval;l++){const o=l%m.value.labelInterval==0,d=0,b=o?4:l%m.value.bigTickInterval===0?2:1,x=l*r.HEIGHT+r.HEIGHT/2;a+=`<line x1="${d}" y1="${x}" x2="${2*b}" y2="${x}" stroke="${oe.value}" stroke-opacity="100%"/>`}return a+="</svg>",encodeURIComponent(a)}),mt=S(()=>`transition: top .5s ease-out; height: ${r.HEIGHT}px;`),dt=S(()=>{var b;const a=(b=h.value)==null?void 0:b.getBoundingClientRect(),l=ze.width.value,o=($==null?void 0:$.value)||0,d=l-l+(o-o);return a?ze.height.value-a.top+d:null}),m=S(()=>gt(f.value)),vt=S(()=>`height: 100%; cursor: ${s.value?"default":_.value?"grabbing":"grab"}`);U(s,a=>{_e.value=a,M("is-loading",a)}),U(V,a=>{if(a){if(a.getTime()===ne.value.timestamp)return;a==null||a.setSeconds(0,0),Te(a)}}),U(be.y,(a,l)=>{if(_.value&&a!==l&&h.value){let o=Math.abs(a-l);a<l&&(o=o*-1),h.value.scrollTop=h.value.scrollTop-=o}}),U(A.isScrolling,a=>{M("is-scrolling",a),!a&&O.value&&(O.value=!1)}),U(A.y,(a,l)=>{var b,x;if(ke(),a===0&&de(-C.value.length),a!==l)if(a===0)z.value={timestamp:ne.value.timestamp,live:!0};else{const Q=(a-l)*m.value.timeMsPerPx,L=O.value?z.value.timestamp:z.value.timestamp-Q;z.value={timestamp:L,live:!1}}const d=(((b=h.value)==null?void 0:b.scrollHeight)||0)-(((x=h.value)==null?void 0:x.clientHeight)||0)-r.OFFSET*r.HEIGHT;a>=d&&de(r.OFFSET)}),U(f,async()=>{await He(),A.y.value>0&&Te(z.value.timestamp,"auto",!0)});const Le=a=>{var o;const l=(dt.value||((o=h.value)==null?void 0:o.clientHeight)||0)+r.OFFSET*r.HEIGHT;a!==void 0?c.value+a*r.HEIGHT>=l&&(c.value+=a*r.HEIGHT):c.value=l},de=(a,l,o)=>{var Q;if(a===0)return;const d=Math.abs(a);let b=H.value.length-d,x=a<0;if(l){x||(x=!0,a=-a);for(let L=0;L<d;L++){const I=H.value[0],ve=I.index,W=I.timestamp,X=ve-1,Z={index:X,format:m.value.type,timestamp:W+m.value.timeMsPerTick,label:X%m.value.labelInterval==0};H.value.unshift(Z)}}if(Le(a),x)b!==0&&d===1?H.value.pop():H.value.splice(b,d),C.value=[];else{const L=(((Q=h.value)==null?void 0:Q.clientHeight)||0)+r.OFFSET*r.HEIGHT,I=Math.ceil(L/r.HEIGHT),ve=H.value.length>=I?0:I-H.value.length+1;for(let W=0;W<d;W++){const X=H.value[H.value.length-1],pe=X.index+1,Ge={index:pe,format:m.value.type,timestamp:X.timestamp-m.value.timeMsPerTick,label:pe%m.value.labelInterval==0};W>=ve&&C.value.push(Ge),H.value.push(Ge)}}},pt=a=>{let l;a&&typeof a!="number"&&(a=a.getTime()),a||(a=T.value.getTime());const o=H.value.map(x=>x.timestamp),d=jt(o,a),b=H.value.find(x=>x.timestamp===d.timestamp);return b&&(l={...b}),l},ft=a=>{typeof a!="number"&&(a=a.getTime());const l=ne.value.timestamp-a,o=new Date(ne.value.timestamp-l);return{y:l/m.value.timeMsPerTick*r.HEIGHT,timestamp:o.getTime()}},gt=a=>{switch(a){case 1:return ot;case 2:return lt;case 3:return at;case 4:return tt}return et},ht=a=>new Promise(l=>{var X;xt();let o=T.value.getTime();a&&(o=typeof a=="object"?a.getTime():a);const d=r.TIME_OFFSET*m.value.timeMsPerTick,b=new Date(o+d),Q=yt(b).date.getTime(),L=Math.ceil(c.value/r.HEIGHT);for(let Z=0;Z<L;Z++){const pe={index:Z,format:m.value.type,timestamp:Q-Z*m.value.timeMsPerTick,label:Z%m.value.labelInterval==0};H.value.push(pe)}const I=pt(o);I&&(K.value=I.timestamp-o,u.value=I,u.value.timestamp=o);let W=(((X=u.value)==null?void 0:X.index)||0)*r.HEIGHT-r.TIME_OFFSET*r.HEIGHT;K.value<0?W+=K.value/m.value.timeMsPerPx:K.value>0&&(W-=K.value/m.value.timeMsPerPx),p.value=-(r.HEIGHT/2)-W,l()}),xt=()=>{v.value=0,Y.value=0,E.value=0,D.value=0,H.value=[]},yt=a=>{switch(m.value.type){case"seconds":return Nt(a);case"two-minutes":return At(a);case"fifteen-minutes":return Bt(a);case"thirty-minutes":return Gt(a);case"hours":return Lt(a)}},Te=async(a,l="smooth",o=!1)=>{var b;if(a===0){(b=h.value)==null||b.scrollTo({top:0,behavior:"smooth"});return}O.value=o;const d=ft(a).y;if(d>=600){const x=r.OFFSET*m.value.timeMsPerTick,Q=x/m.value.timeMsPerPx,L=typeof a=="object"?a.getTime():a;await He(!0,L+x),O.value=!0,z.value.timestamp=L,$e(()=>{var I;return(I=h.value)==null?void 0:I.scrollTo({top:Q,behavior:l})});return}$e(()=>{var x;return(x=h.value)==null?void 0:x.scrollTo({top:d,behavior:l})})},He=async(a,l)=>new Promise(o=>{s.value=!0;const d=Date.now(),b=setInterval(async()=>{Rt(new Date).date.getTime()-d>=999&&(clearInterval(b),le.value=new Date,T.value=new Date,Pt(),wt(),await ht(l),s.value=!1,o())},1)}),_t=()=>{clearInterval(we),clearInterval(Pe)},bt=()=>{T.value=new Date,D.value++,A.y.value===0?(E.value=D.value,z.value={timestamp:T.value.getTime(),live:!0}):A.y.value>0&&!F.value&&(E.value++,z.value={timestamp:z.value.timestamp+1e3,live:!1})},wt=()=>{clearInterval(we),we=setInterval(bt,1e3)},Pt=()=>{clearInterval(Pe),Pe=setInterval(St,m.value.timeMsPerTick)},St=()=>{s.value||(le.value=new Date,Y.value++,A.y.value===0?(de(Y.value-v.value,!0),u.value&&(u.value.index-=Y.value-v.value),v.value=Y.value):A.y.value>0&&!F.value&&(de(1,!0),v.value++,u.value&&u.value.index--))},ke=()=>{clearTimeout(Oe),Oe=setTimeout(()=>{F.value=!1},500),F.value=!0};return Ne(()=>{P.value==="light"?oe.value="#5b5b5b":oe.value="#888888"}),je(()=>{Le(),He()}),Tt(()=>{_t()}),(a,l)=>(n(),y("div",{ref_key:"timelineComponent",ref:ee,class:"relative h-full w-full"},[w(De,null,{default:k(()=>[ae(w(te,{disabled:t(s),icon:t(Vt),transition:"fade-transition",position:"absolute",location:"bottom right",class:"timeline-btn",style:G(`transition: all .3s ease-out; ${t(z).live?"":"right: 100px !important;"}`)},null,8,["disabled","icon","style"]),[[ce,t(ye)&&!t(ie)]])]),_:1}),w(De,null,{default:k(()=>[ae(w(te,{disabled:t(s),icon:t(We),transition:"fade-transition",position:"absolute",location:"bottom right",class:"timeline-btn",onClick:l[0]||(l[0]=o=>Te(0))},null,8,["disabled","icon"]),[[ce,!t(z).live]])]),_:1}),g("div",oa,[w(Yt,{active:t(s),indeterminate:t(s),color:"#df2a4c",height:"2px"},null,8,["active","indeterminate"])]),g("div",{class:"timeline-annotation",style:G(t(nt))},[g("div",{ref:"annotationLabel",class:"timeline-annotation-label",style:G(t(it))},[t(s)?(n(),R(Ve,{key:0,indeterminate:"",color:"white",size:"10",width:"2"})):(n(),y("div",sa,q(t(z).live?"LIVE":t(ue)(t(z).timestamp,"HH:mm:ss")),1))],4)],4),g("div",{ref_key:"timeline",ref:h,class:"timeline hide-scrollbar disable-overflow-scroll w-full relative",style:G(t(vt))},[t(se)?J("",!0):(n(),y("div",ia,ua)),a.segment==="0"?(n(),y("div",{key:1,class:"relative h-full",style:G(t(se)?"":"top: -100px")},[g("div",{class:"timeline-scale",style:G(t(ct))},null,4),(n(!0),y(Fe,null,Ce(t(H),(o,d)=>(n(),y("div",{key:o.index,"data-tick-index":o.index,class:"tick-container flex justify-center items-center absolute",style:G(`${t(mt)}; top: ${t(p)+t(ut)+d*t(r).HEIGHT}px`)},[g("div",{"data-tick-index":`${o.index}`,class:"tick-line relative"},[o.label&&!t(s)?(n(),y("div",da,q(t(ue)(o.timestamp,t(rt)?"HH:mm:ss":"HH:mm")),1)):J("",!0)],8,ma)],12,ca))),128))],4)):(n(),y("div",va))],4)],512))}}),fa=xe(pa,[["__scopeId","data-v-e8bb6d1c"]]),ga={class:"vue-ios13-segmented-control"},ha=["id","name","value"],xa=["for"],ya=me({__name:"VSegmentedControl",props:{modelValue:{},segments:{}},emits:["update:modelValue"],setup(e,{emit:N}){const j=e,M=N,P=i(0),{modelValue:V,segments:$}=he(j),f=S({get(){return V.value},set(p){M("update:modelValue",p)}}),E=S(()=>$.value.findIndex(p=>p.id===V.value)),D=S(()=>{let p=P.value*E.value;return P.value*E.value<0&&(p=0),`transform:translateX(${p}px)`}),T=()=>{$e(()=>{const p=document.querySelector(`input[type='radio'][value='${V.value}']`);P.value=p&&p.offsetWidth})};return U([$,V],()=>{T()},{deep:!0}),Zt(window,"resize",T),(p,u)=>(n(),y("div",ga,[g("span",{class:"selection-pill",style:G(t(D))},null,4),(n(!0),y(Fe,null,Ce(t($),s=>(n(),y("div",{key:s.id,class:"option"},[ae(g("input",{id:s.id,"onUpdate:modelValue":u[0]||(u[0]=F=>fe(f)?f.value=F:null),type:"radio",name:s.title,value:s.id},null,8,ha),[[$t,t(f)]]),g("label",{for:s.id,class:"w-full cursor-pointer"},[g("span",{style:G(t(f)===s.id?"color: var(--color-segment-text);":"color: var(--color-segment-disabled-text)")},q(s.title),5)],8,xa)]))),128))]))}}),_a={key:0,class:"w-full flex items-center justify-center mt-10"},ba={class:"flex flex-col justify-center items-center"},wa=me({__name:"VCameraCarousel",props:{showLabel:{type:Boolean,default:!1}},setup(e){const N=new Je,j=Ke(),M=e,{showLabel:P}=he(M),V=i({page:1,pageSize:-1}),{data:$,isLoading:f}=N.getCamerasQuery(V),E=S(()=>{var D;return(D=$.value)==null?void 0:D.result.findIndex(T=>T.name===j.params.cameraname)});return(D,T)=>{const p=Ye,u=Et("router-link");return t(f)?(n(),y("div",_a,[w(Ve,{color:"#df2a4c",indeterminate:""})])):(n(),R(ea,{key:1,"model-value":t(E),class:"mt-3","show-arrows":"",mandatory:"force"},{default:k(()=>{var s;return[(n(!0),y(Fe,null,Ce(((s=t($))==null?void 0:s.result)||[],(F,C)=>(n(),R(Kt,{key:F.name,value:C},{default:k(({toggle:O,isSelected:v})=>[g("div",ba,[w(u,{to:`/cameras/${F.name}`,onClick:O},{default:k(()=>[ae(w(p,{class:"ma-3","current-camera":F.name,"border-radius":8,border:!1,target:"snapshot",style:{width:"140px"}},null,8,["current-camera"]),[[ta]])]),_:2},1032,["to","onClick"]),t(P)?(n(),y("div",{key:0,class:Ee(["add-transition slide-item-title",{"slide-item-title-active":v}])},q(F.name||D.$t("general.loading")),3)):J("",!0)])]),_:2},1032,["value"]))),128))]}),_:1},8,["model-value"]))}}}),Pa=xe(wa,[["__scopeId","data-v-ec891350"]]),Sa=["onClick"],Ta=me({__name:"VCalendar",props:{showPicker:{type:Boolean,default:!1},showButton:{type:Boolean,default:!1},transitionTrigger:{type:Boolean,default:!0},loading:{type:Boolean,default:!0}},emits:["dateChanged","calendarOpen"],setup(e,{emit:N}){const j=e,M=N,{loading:P}=he(j),{theme:V}=Qe(Ue()),$=i(!1),f=i(new Date),E=Ze();U(f,(u,s)=>{u?M("dateChanged",f.value):f.value=s});const D=()=>{$.value=!1,M("calendarOpen",!1)},T=()=>{$.value=!0,M("calendarOpen",!0)},p=u=>{P.value||u()};return(u,s)=>{const F=la;return n(),y("div",null,[w(F,{modelValue:t(f),"onUpdate:modelValue":s[0]||(s[0]=C=>fe(f)?f.value=C:null),"is-required":"",color:"gray","is-dark":t(V)==="dark","max-date":new Date,mode:"dateTime",is24hr:"",onPopoverDidShow:T,onPopoverDidHide:D},{default:k(({togglePopover:C})=>[w(De,null,{default:k(()=>[u.showButton?ae((n(),R(te,{key:0,disabled:t(P),transition:"fade-transition",position:"fixed",location:"bottom left",class:"date-fixed-btn rounded-xl",onClick:O=>p(C)},{default:k(()=>[ge(q(t(ue)(t(f))),1)]),_:2},1032,["disabled","onClick"])),[[ce,u.transitionTrigger]]):J("",!0)]),_:2},1024),u.showPicker?(n(),y("div",{key:0,onClick:O=>p(C)},[g("span",{class:"text-sm cursor-pointer",style:G(t(P)?"color: #a8a8a8;":"")},q(t(E).width.value<875?t(ue)(t(f),"ddd., D. MMM."):t(ue)(t(f))),5),w(re,{size:"20",color:t(P)?"#a8a8a8":"#4a4a4a",class:"cursor-pointer"},{default:k(()=>[ge(q(t($)?t(We):t(zt)),1)]),_:1},8,["color"])],8,Sa)):J("",!0)]),_:1},8,["modelValue","is-dark","max-date"])])}}}),Ha=xe(Ta,[["__scopeId","data-v-818d397f"]]),ka={key:0,class:"flex items-center justify-center w-full h-full"},$a={key:1,class:"w-full h-full"},Ea={class:"absolute z-5 left-1 top-2"},Da={class:"left-content"},Fa={key:0,class:"timeline-toggle"},Ca={class:"flex flex-col items-center h-full sidebar camera-no-outside"},Va={key:0,class:"sidebar-header p-1 relative"},za={class:"flex flex-row mb-2"},Oa={class:"w-1/2 flex justify-center items-center"},Ma={class:"w-1/2 flex justify-center items-center"},Ia=me({__name:"Camera",setup(e){const N=new Je,j=Ke(),{desktopActive:M,mobileActive:P,tabletActive:V,extraSmallMobileActive:$}=qe(),{t:f}=Wt.global,E=i(!1),D=i(new Date),T=i(),p=i(0),u=i("0"),s=i(!1),F=i(null),C=i(!1),O=i(!1),v=i(1),Y=Dt([{title:f("views.camera.timeline"),id:"0"},{title:f("views.camera.detections"),id:"1"}]),le=Jt(T),{isOutside:K}=Xe(F),B=S(()=>j.params.cameraname),{data:oe,isLoading:z}=N.getCameraQuery(B);U(v,()=>{});const h=()=>{v.value!==5&&(O.value||(v.value=(v.value||1)+1))},ee=()=>{v.value!==1&&(O.value||(v.value=(v.value||1)-1))};return Ne(async()=>{v.value=1}),je(async()=>{setTimeout(()=>{T.value=document.querySelector(".player-container-main")},100)}),(H,c)=>{const se=Ha,ye=Ye,_e=Pa,be=ya,ie=fa;return n(),y("main",{class:Ee(["w-full h-full",{"p-3":!t(P)}])},[!t(oe)||t(z)?(n(),y("div",ka,[w(Ve,{color:"#df2a4c",indeterminate:""})])):(n(),y("div",$a,[ae((n(),R(se,{key:t(B),layout:"text","show-button":"","transition-trigger":!t(K)||t(E),"max-date":new Date,loading:t(C),onDateChanged:c[0]||(c[0]=_=>D.value=_),onCalendarOpen:c[1]||(c[1]=_=>E.value=_)},null,8,["transition-trigger","max-date","loading"])),[[ce,t(P)||t(E)]]),g("div",{class:Ee(["relative z-5 w-full h-full flex flex-col md:flex-row overflow-hidden",{"gap-4":t(M)}])},[g("div",Ea,[t($)?(n(),R(te,{key:0,size:"32",icon:"",density:"compact",variant:"elevated",class:"no-drag camera-no-outside opacity-50",onClick:c[2]||(c[2]=Ft(_=>H.$router.push("/cameras"),["prevent"]))},{default:k(()=>[w(re,{size:"24"},{default:k(()=>[ge(q(t(Be)),1)]),_:1})]),_:1})):J("",!0)]),g("div",Da,[(n(),R(ye,{key:t(B),"show-title":"",settings:"",share:"",snapshot:"",target:"stream",zoom:(t(P)||t(V))&&t(s),"current-camera":t(oe).name,"timeline-scrolling":t(O)||t(C),"border-radius":t(P)?0:3,"zoom-model":t(v),"enable-control":"",shortcuts:"",motions:"",objects:"",zones:"","auto-hide-control":!1,"source-role":"high-resolution",onResize:c[3]||(c[3]=_=>p.value=_),onZoomIn:h,onZoomOut:ee},null,8,["zoom","current-camera","timeline-scrolling","border-radius","zoom-model"])),(n(),R(Ct,null,[ae(w(_e,{"show-label":"","focus-index":""},null,512),[[ce,!t(P)]])],1024))]),g("div",{class:"right-content",style:G(t(V)?`height: ${t(le).height.value}px; width: ${t(le).width.value/3}px; right: ${t(s)?0:-2-t(le).width.value/3}px`:"")},[t(V)?(n(),y("div",Fa,[w(te,{class:"camera-no-outside",color:"#212121",size:"30",variant:"elevated",icon:"",onClick:c[4]||(c[4]=_=>s.value=!t(s))},{default:k(()=>[w(re,{color:"#fff",size:"20"},{default:k(()=>[ge(q(t(s)?t(Ot):t(Be)),1)]),_:1})]),_:1})])):J("",!0),g("div",Ca,[!t(P)&&!t(V)?(n(),y("div",Va,[g("div",za,[g("div",Oa,[(n(),R(se,{key:t(B),loading:t(C),layout:"text","show-picker":"",onDateChanged:c[5]||(c[5]=_=>D.value=_)},null,8,["loading"]))]),g("div",Ma,[(n(),R(aa,{key:t(B),modelValue:t(v),"onUpdate:modelValue":c[6]||(c[6]=_=>fe(v)?v.value=_:null),disabled:t(C),readonly:"",min:"1",max:"5",step:"1","track-size":"1","thumb-size":"10","hide-details":""},{prepend:k(()=>[w(te,{size:"28",density:"compact",variant:"text",disabled:t(v)==1,icon:"",onClick:ee},{default:k(()=>[w(re,{size:"20",icon:t(Mt)},null,8,["icon"])]),_:1},8,["disabled"])]),append:k(()=>[w(te,{size:"28",density:"compact",variant:"text",disabled:t(v)==5,icon:"",onClick:h},{default:k(()=>[w(re,{size:"20",icon:t(It)},null,8,["icon"])]),_:1},8,["disabled"])]),_:1},8,["modelValue","disabled"]))])]),(n(),R(be,{key:t(B),modelValue:t(u),"onUpdate:modelValue":c[7]||(c[7]=_=>fe(u)?u.value=_:null),segments:t(Y)},null,8,["modelValue","segments"]))])):J("",!0),(n(),R(ie,{key:t(B),ref_key:"timeline",ref:F,"date-model":t(D),"zoom-model":t(v),modifier:t(p),segment:t(u),onIsScrolling:c[8]||(c[8]=_=>O.value=_),onIsLoading:c[9]||(c[9]=_=>C.value=_)},null,8,["date-model","zoom-model","modifier","segment"]))])],4)],2)]))],2)}}}),_l=xe(Ia,[["__scopeId","data-v-6e567cc6"]]);export{_l as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as N,_ as j}from"./VPlayer-
|
|
1
|
+
import{C as N,_ as j}from"./VPlayer-B53-f3Ad.js";import{e as L,d as I,f as Q,h as T}from"./main-C2N2tbw_.js";import{s as R}from"./utils-BvINh1mj.js";import{k as D}from"./@vueuse-DbPVvJxZ.js";import{A as V,e as F,b as P}from"./vuetify-B_vGZaGi.js";import{F as z,t as G,r as S,c as C,x as K,e as t,f as s,u as e,N as _,Q as h,M as i,j as n,T as d,l as A,ai as O,aj as X,n as u,R as $,aa as q,X as B,O as H,V as J}from"./@vue-CIFymae3.js";import{e as U}from"./@mdi-jq8isxax.js";import"./qrcode-SHonoxyK.js";import"./dijkstrajs-D_NXgYpA.js";import"./vee-validate-DHjm38DY.js";import"./zod-BaF2dDCd.js";import"./pinia-B_gX_pHL.js";import"./@vee-validate-CmTVjJBY.js";import"./vue3-toastify-Cy6dUyKO.js";import"./plugins-Cs7BJHj-.js";import"./@tanstack-DPd4-F0t.js";import"./draggabilly-YEGzHR3_.js";import"./@xterm-LO7TPXYg.js";import"./get-size-D1dS-IaP.js";import"./unidragger-91TYirAP.js";import"./ev-emitter-t78oQA8k.js";import"./vue-router-C55prZ5l.js";import"./vue-inline-svg-DDdr3aAz.js";import"./vue-i18n-CHUfunSC.js";import"./@intlify-YW_pt133.js";import"./axios-BI2i94Vb.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-DmqiRszP.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-CbEkwI4D.js";import"./@popperjs-BQBsAJpH.js";import"./nprogress-QK5AFhFr.js";const W=c=>(O("data-v-627ffb7a"),c=c(),X(),c),Y={key:0,class:"camera-events hide-scrollbar flex flex-auto flex-row"},Z={key:1,class:"disabled-text"},ee={key:2,class:"camera-events hide-scrollbar flex flex-auto flex-row"},te=["onClick"],ae=W(()=>n("span",{class:"text-sm text-passive"},"12:01:45",-1)),se=z({__name:"VCameraEvents",props:{showAll:{type:Boolean,default:!1},camera:{}},setup(c){const g=c,{camera:a,showAll:f}=G(g),p=S(!0),l=S(null),x=D(l),r=C(()=>{const o=[];for(let w=0;w<50;w++)o.push({camera:"Kamera 1",title:"Event 1",type:"motion",timestamp:Date.now(),image:void 0});return o}),E=C(()=>f.value||r.value.some(o=>o.camera===(a==null?void 0:a.value))),y=C(()=>Math.ceil(x.width.value/150)),k=o=>{console.log(o)},m=o=>!!(f.value||a!=null&&a.value&&o===a.value);return K(async()=>{await R(1500),p.value=!1}),(o,w)=>{const M=L;return t(),s("div",{ref_key:"main",ref:l,class:"camera-events-container"},[e(p)?(t(),s("div",Y,[(t(!0),s(_,null,h(e(y),(v,b)=>(t(),s("div",{key:b,class:"mx-1 flex flex-col justify-center items-center"},[i(V,{elevation:1,height:"140px",type:"image",class:"camera-event-card"}),i(V,{elevation:0,type:"text",style:{background:"none"}})]))),128))])):!e(p)&&(!e(E)||!e(r).length)?(t(),s("div",Z,[n("span",null,d(o.$t("components.camera_events.no_events")),1)])):(t(),s("div",ee,[(t(!0),s(_,null,h(e(r),(v,b)=>(t(),s("div",{key:b,class:"mx-1 text-center"},[m(v.camera)?(t(),s("div",{key:0,class:"camera-event-card cursor-pointer",onClick:ce=>k(v)},[i(M,{style:{background:"var(--background-img)","border-radius":"5px"},src:v.image,width:"100%",height:"100%","aspect-ratio":"1/1","spinner-size":"15","spinner-width":"2","error-style":"","placeholder-style":"",cover:""},null,8,["src"])],8,te)):A("",!0),ae]))),128))]))],512)}}}),oe=I(se,[["__scopeId","data-v-627ffb7a"]]),re={class:"page-title"},ne={class:"page-title"},ie={key:"new-camera",class:"w-full flex justify-center items-center mt-3"},le=z({__name:"Cameras",setup(c){const g=new N,{smallMobileActive:a,extraSmallMobileActive:f}=Q(),p=S({page:1,pageSize:-1}),{data:l,isLoading:x}=g.getCamerasQuery(p);return(r,E)=>{const y=oe,k=j;return t(),s("main",{class:u(["w-full h-full",{"px-0":e(a)}])},[n("div",{class:u(["mb-3 flex items-center",{"px-2":e(a)}]),style:{height:"30px"}},[n("h1",re,d(r.$t("views.cameras.events")),1)],2),n("div",{class:u(["w-full mb-3",{"px-2":e(a)}])},[i(y,{"show-all":""})],2),n("div",{class:u(["mb-3 flex items-center",{"px-2":e(a)}]),style:{height:"30px"}},[n("h1",ne,d(r.$t(`views.${String(r.$route.name).toLowerCase()}.title`)),1)],2),i(q,{name:"fade",tag:"div"},{default:$(()=>[e(x)||!e(l)?(t(),s("div",{key:0,class:"grid",style:B(`grid-template-columns: repeat(auto-fit, minmax(${e(a)?"100%":"300px"}, 1fr))`)},[(t(),s(_,null,h(8,m=>i(V,{key:m,elevation:1,type:"image",class:"w-full h-full aspect-video"})),64))],4)):e(l).result.length?(t(),s("div",{key:2,class:"grid",style:B(`grid-template-columns: repeat(auto-fit, minmax(${e(a)?"100%":"300px"}, 1fr)) ${e(l).result.length===1?"50%":""}`)},[(t(!0),s(_,null,h(e(l).result,m=>(t(),s("div",{key:m.name,class:"relative item"},[i(k,{"absolute-title":"","show-title":"","show-tooltips":!1,"clickable-title":"","clickable-container":"",settings:"","current-camera":m.name,"border-radius":e(a)?0:3,border:!1,target:"snapshot","button-elevation":"1"},null,8,["current-camera","border-radius"])]))),128))],4)):(t(),s("div",{key:1,class:u({"disabled-text":!0,"px-2":e(a)})},d(r.$t("views.cameras.no_cameras")),3)),n("div",ie,[e(T)(void 0,"admin")&&!e(f)?(t(),H(P,{key:0,to:"/new-camera",variant:"text",color:"#df2a4c",icon:""},{default:$(()=>[i(F,{size:"30"},{default:$(()=>[J(d(e(U)),1)]),_:1})]),_:1})):A("",!0)])]),_:1})],2)}}}),qe=I(le,[["__scopeId","data-v-5e50e4c1"]]);export{qe as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{F as ne,r as g,U as ft,e as r,f as F,j as i,M as n,R as l,V as W,T as y,u as e,q as Z,t as fe,c as N,w as J,X as pe,O as E,Q as ue,N as ve,aa as pt,l as H,an as gt,n as me,W as _t,i as ke,m as Ee,ai as wt,aj as yt}from"./@vue-CIFymae3.js";import{J as Qe,K as ht,L as xt,s as bt,M as je,E as Vt,F as kt,N as Ct,O as Dt,P as $t,Q as zt,R as Mt,S as Pt,T as St,U as Ft,V as It,W as At}from"./@mdi-DdmeckA1.js";import{e as G,b as ee,o as $e,G as Oe,H as We,f as we,j as Re,V as Tt,c as Be,n as Le,I as Et,J as Rt}from"./vuetify-B_vGZaGi.js";import{d as ie,s as He,f as Ce,t as ye,u as Bt,U as Lt,v as Ut,w as Qt}from"./main-f-Qd4R5M.js";import{F as Ue,a as jt}from"./vee-validate-DHjm38DY.js";import{_ as Pe,C as Ot}from"./VPlayer-D_SuxyEf.js";import{H as Ne}from"./react-dnd-html5-backend-1HQjlkwI.js";import{T as Xe}from"./react-dnd-touch-backend-NgACaG8W.js";import{u as Ye,a as qe,D as Ge}from"./vue3-dnd-Dn4SH4Ex.js";import{u as Je}from"./ui-DNIEL7pW.js";import{s as ze}from"./pinia-B_gX_pHL.js";import{m as Ke,v as Ze,k as et,w as tt}from"./@vueuse-GPEsefjJ.js";import"./vue-inline-svg-DDdr3aAz.js";import"./vue3-toastify-Cy6dUyKO.js";import"./vue-i18n-Cyk5bTcs.js";import"./@intlify-Ck2ZoCVz.js";import"./axios-BI2i94Vb.js";import"./@tanstack-DPd4-F0t.js";import"./vue-router-C55prZ5l.js";import"./@vee-validate-CmTVjJBY.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-CbEkwI4D.js";import"./@popperjs-BQBsAJpH.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./qrcode-SHonoxyK.js";import"./dijkstrajs-D_NXgYpA.js";import"./plugins-X26db0mJ.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 Wt={class:"mt-auto flex flex-col"},Ht={class:"relative flex flex-col items-center justify-center"},Nt=ne({__name:"VAudioVisualizer",emits:["listening"],setup(X,{emit:R}){const Y=R,M=g(),I=g(null),T=g(),m=g(!1),u=()=>{var o,s;(o=M.value)==null||o.close(),M.value=void 0,(s=T.value)==null||s.forEach(k=>k.stop()),T.value=void 0,m.value=!1,Y("listening",!1)},x=(o,s,k,U,V,L)=>{const P=o.createLinearGradient(s,k,U,V);P.addColorStop(0,"#5b040f"),P.addColorStop(.5,"#b50b21"),P.addColorStop(.9,"#df2a4c"),P.addColorStop(1,"#df6380"),o.lineWidth=L,o.strokeStyle=P,o.beginPath(),o.moveTo(s,k),o.lineTo(U,V),o.stroke(),o.closePath()},b=async()=>{var o;if(m.value)u();else try{M.value&&u();let s;try{s=await navigator.mediaDevices.getUserMedia({audio:!0})}catch(z){console.warn("Can not enable AudioVisualizer",z);return}m.value=!0,Y("listening",!0),M.value=new AudioContext;let k=M.value.createAnalyser();k.fftSize=1024,T.value=s.getTracks(),M.value.createMediaStreamSource(s).connect(k);const V=90;let L=3,P;const $=(o=I.value)==null?void 0:o.getContext("2d"),S=()=>{if(I.value&&$){const z=[],C=[];$.clearRect(0,0,I.value.width,I.value.height),requestAnimationFrame(S);let v=k.frequencyBinCount,_=new Uint8Array(v);k.getByteFrequencyData(_),z.push(_);for(let p=0;p<z[0].length;p++)C.push(0),z.forEach(Q=>{C[p]+=Q[p]});const h=I.value.width/2,c=I.value.height/2,f=30;$.beginPath(),$.arc(h,c,f,0,2*Math.PI),$.lineWidth=1,$.stroke(),$.closePath();for(let p=0;p<V;p++){P=C[p]*.4;let Q=Math.PI*2/V,j=h+Math.cos(Q*p)*f,le=c+Math.sin(Q*p)*f,re=h+Math.cos(Q*p)*(f+P),he=c+Math.sin(Q*p)*(f+P);x($,j,le,re,he,L)}m.value||$.clearRect(0,0,I.value.width,I.value.height)}};S()}catch(s){u(),console.error(s)}};return ft(()=>{u()}),(o,s)=>(r(),F("div",Wt,[i("div",Ht,[n(ee,{class:"mic-button",variant:"elevated",color:"white",icon:"",size:"60",onClick:Z(b,["prevent"])},{default:l(()=>[n(G,{size:"35"},{default:l(()=>[W(y(e(Qe)),1)]),_:1})]),_:1}),i("canvas",{ref_key:"canvas",ref:I,height:"300",width:"300"},null,512)])]))}}),Xt=ie(Nt,[["__scopeId","data-v-5c30fb5d"]]),Yt=["data-handler-id"],qt=ne({__name:"VDnDCard",props:{id:{},index:{},camera:{},moveCard:{type:Function}},setup(X,{expose:R}){const Y=Je(),M=X,{camera:I}=fe(M),{uiSettings:T}=ze(Y),m=g(),u=g(),x=g(null);let b=null,o=0,s=0;const k=N(()=>T.value.camview.dragDisabled===!1),{x:U,y:V,sourceType:L}=Ke(),{top:P,left:$}=Ze(x),[S,z]=Ye({accept:"camera",collect(D){return{handlerId:D.getHandlerId()}},hover(D,se){var be;if(!m.value)return;const ae=D.index,ce=M.index;if(ae===ce)return;const ge=(be=m.value)==null?void 0:be.getBoundingClientRect(),te=(ge.bottom-ge.top)/2,xe=se.getClientOffset().y-ge.top;ae<ce&&xe<te||ae>ce&&xe>te||(M.moveCard(ae,ce),D.index=ce)}}),[C,v]=qe({type:"camera",canDrag(){return k.value},item:()=>({id:M.id,index:M.index}),collect:D=>({isDragging:D.isDragging()})}),{handlerId:_}=fe(S.value),h=N(()=>C.value.isDragging),c=N(()=>h.value&&L.value==="touch"),f=N(()=>e(h)?0:1);J(c,D=>{D?(b=p(),o=U.value-$.value,s=V.value-P.value):(j(b),b=null)}),J([U,V],()=>{Q(b,o,s)});const p=()=>{if(x.value){const D=x.value.cloneNode(!0);return D.classList.add("drag-preview"),document.body.appendChild(D),D}return null},Q=(D,se,ae)=>{D&&(D.style.left=`${U.value-se}px`,D.style.top=`${V.value-ae}px`)},j=D=>{D&&document.body.removeChild(D)},le=D=>{m.value=v(z(D))};return R({togglePlayerMute:D=>{var se;(se=u.value)==null||se.toggleMute(D)},toggleMicrophone:async(D,se)=>{var ae;await((ae=u.value)==null?void 0:ae.toggleMicrophone(D,se))}}),(D,se)=>(r(),F("div",{ref_key:"boxEl",ref:x},[i("div",{ref:le,class:"camera-card",style:pe({opacity:e(f),color:"#000",cursor:e(T).camview.dragDisabled?"default":"grab"}),"data-handler-id":e(_)},[n(Pe,{ref_key:"playerRef",ref:u,"current-camera":e(I).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,Yt)],512))}}),Gt=ie(qt,[["__scopeId","data-v-a157f34a"]]),Jt={class:"conference"},Kt=ne({__name:"VDnD",props:{cameras:{},dbCameras:{}},emits:["drag"],setup(X,{expose:R,emit:Y}){const{isTouch:M}=He(),{smallMobileActive:I}=Ce(),T=Y,m=X,{cameras:u,dbCameras:x}=fe(m),b=g(null),o=g(null),s=g("16:9"),k=g(2),U=et(o),V=g([]),L=g(),{isFullscreen:P,toggle:$}=tt(b);J(u,c=>{V.value=ye(c).sort((f,p)=>f.index-p.index)},{immediate:!0,deep:!0});const S=(c,f)=>{const p=V.value[c];V.value.splice(c,1),V.value.splice(f,0,p),V.value=V.value.map((Q,j)=>(Q.index=j,Q)).sort((Q,j)=>Q.index-j.index),T("drag",V.value)},z=c=>{const f=U.height.value-k.value*2,p=U.width.value-k.value*2,Q=parseInt(s.value.split(":")[1])/parseInt(s.value.split(":")[0]);let j=0,le=0,re=c*Q+k.value*2;for(;j<V.value.length;)le+c>p&&(le=0,re=re+c*Q+k.value*2),le=le+c+k.value*2,j++;return re>f||c>p?!1:c},C=N(()=>{if(I.value)return"100%";let c=0,f=1;for(;f<5e3;){if(z(f)===!1){c=f-1;break}f++}return c=c-k.value,`${c}px`});return R({toggleFullscreen:async()=>{await $()},togglePlayerMute:c=>{for(const f of L.value||[])f.togglePlayerMute(c)},togglePlayerMicrophone:async(c,f)=>{for(const p of L.value||[])await p.toggleMicrophone(c,f)},isFullscreen:P,selectedCameras:V}),(c,f)=>(r(),E(e(Ge),{backend:e(M)?e(Xe):e(Ne)},{default:l(()=>[i("div",{ref_key:"cameraDnd",ref:b,class:"scenary"},[i("div",Jt,[n(pt,{ref_key:"dishEl",ref:o,name:"list",tag:"div",class:"dish"},{default:l(()=>[(r(!0),F(ve,null,ue(e(V),(p,Q)=>(r(),E(Gt,{id:p.cameraId,ref_for:!0,ref_key:"dndCards",ref:L,key:p.cameraId,index:Q,camera:e(x).find(j=>j._id===p.cameraId),"move-card":S,style:pe({width:e(C)})},null,8,["id","index","camera","style"]))),128))]),_:1},512)])],512)]),_:1},8,["backend"]))}}),Zt=ie(Kt,[["__scopeId","data-v-c22c99a6"]]),ea={class:"camera-snapshot"},ta={class:"camera-info flex flex-row items-center"},aa={class:"text-passive truncate"},sa=ne({__name:"VViewDrag",props:{camera:{},isDropped:{type:Boolean},canDrag:{type:Boolean}},setup(X){const R=X,{isDropped:Y,camera:M,canDrag:I}=fe(R),T=g(null);let m=null,u=0,x=0;const{x:b,y:o,sourceType:s}=Ke(),{top:k,left:U}=Ze(T),[V,L]=qe(()=>({type:"camera",options:{dropEffect:"copy"},item:M.value,canDrag:I.value,collect:v=>({style:{opacity:v.isDragging()?.4:1},isDragging:v.isDragging()})})),P=N(()=>V.value.isDragging),$=N(()=>P.value&&s.value==="touch");J($,v=>{v?(m=S(),u=b.value-U.value,x=o.value-k.value):(C(m),m=null)}),J([b,o],()=>{z(m,u,x)});const S=()=>{if(T.value){const v=T.value.cloneNode(!0);return v.classList.add("drag-preview"),document.body.appendChild(v),v}return null},z=(v,_,h)=>{v&&(v.style.left=`${b.value-_}px`,v.style.top=`${o.value-h}px`)},C=v=>{v&&document.body.removeChild(v)};return(v,_)=>{const h=Pe;return r(),F("div",{ref_key:"boxEl",ref:T},[i("div",{ref:e(L),style:pe({...e(V).style,cursor:e(Y)?"default":"grab"}),class:"drag-box p-2 flex flex-row items-center relative"},[n(G,{size:"20",class:"text-passive mr-2"},{default:l(()=>[W(y(e(ht)),1)]),_:1}),i("div",ea,[n(h,{"current-camera":e(M).name,"border-radius":6,target:"snapshot","show-mode":!1},null,8,["current-camera"])]),i("div",ta,[i("span",aa,y(e(M).name),1),e(Y)?(r(),E(G,{key:0,size:"25",class:"ml-auto text-green mr-4"},{default:l(()=>[W(y(e(xt)),1)]),_:1})):H("",!0)])],4)],512)}}}),la=ie(sa,[["__scopeId","data-v-7dfa63f3"]]),Me={WIDTH:400},oa={class:"camera-view-edit flex flex-col p-2"},ra={class:"mb-4 text-lg"},na={class:"text-passive mb-5 mt-5"},ia={class:"camera-container py-3"},ca=ne({__name:"VViewSidebar",props:{cameras:{},droppedCameras:{},title:{}},setup(X){gt(x=>({"7ea40162":e(T)}));const R=X,{cameras:Y,droppedCameras:M,title:I}=fe(R),T=g(`${Me.WIDTH}px`),m=g(!1),u=x=>M.value.some(b=>b.name===x.name);return(x,b)=>{const o=la;return r(),F("div",oa,[i("b",ra,y(e(I)),1),i("span",na,y(x.$t("components.view_box.available_streams")),1),i("div",ia,[(r(!0),F(ve,null,ue(e(Y),(s,k)=>(r(),F("div",{key:k,class:"mb-4"},[n(o,{camera:s,"is-dropped":u(s),"can-drag":!u(s),class:me({shake:e(m)})},null,8,["camera","is-dropped","can-drag","class"])]))),128))])])}}}),da=ie(ca,[["__scopeId","data-v-420802a2"]]),ua={key:0,class:"overlay-button-text truncate",color:"#fff"},va={key:1,class:"w-full h-full flex items-center justify-center"},ma=ne({__name:"VViewCard",props:{lastDroppedCamera:{},editMode:{type:Boolean},cameras:{},droppedCameras:{},onDrop:{type:Function}},emits:["drop","remove"],setup(X,{expose:R,emit:Y}){const{desktopActive:M}=Ce(),I=Y,T=X,{lastDroppedCamera:m,editMode:u,cameras:x,droppedCameras:b}=fe(T),o=g(null),s=g(),{width:k}=et(o),[U,V]=Ye({accept:"camera",drop:T.onDrop,collect:_=>({isOver:_.isOver(),canDrop:_.canDrop()&&m.value===void 0}),canDrop:()=>m.value===void 0}),L=N(()=>U.value.canDrop&&U.value.isOver),P=N(()=>u.value?L.value?"#171717":"#202020":"#000"),$=N(()=>k.value<=200),S=N(()=>x.value.filter(_=>!z(_))),z=_=>b.value.some(h=>h.name===_.name);return R({togglePlayerMute:_=>{var h;(h=s.value)==null||h.toggleMute(_)},toggleMicrophone:async(_,h)=>{var c;await((c=s.value)==null?void 0:c.toggleMicrophone(_,h))}}),(_,h)=>(r(),F("div",{ref:e(V),style:pe({backgroundColor:e(P)}),class:"overflow-hidden"},[e(m)?(r(),F("div",{key:0,ref_key:"container",ref:o,class:"w-full h-full flex items-center justify-center relative"},[e(u)?(r(),E(ee,{key:0,icon:e($),size:e($)?32:void 0,class:"overlay-button flex items-center justify-center",color:"#df2a4c",onClick:h[0]||(h[0]=Z(c=>I("remove",e(m)),["prevent"]))},{default:l(()=>[n(G,{size:"18"},{default:l(()=>[W(y(e(bt)),1)]),_:1}),e($)?H("",!0):(r(),F("span",ua,y(e(m).name),1))]),_:1},8,["icon","size"])):H("",!0),n(_t,{name:"fade",mode:"in-out"},{default:l(()=>[e(m)?(r(),E(Pe,{key:0,ref_key:"playerRef",ref:s,class:me({"camera-overlay":e(u)}),"current-camera":e(m).name,"border-radius":0,target:e(u)?"snapshot":"stream",style:pe({opacity:e(u)?.2:1}),"show-camera-name":!e(u),"enable-control":!e(u),"auto-hide-control":"","source-role":"low-resolution","show-mode":!1},null,8,["class","current-camera","target","style","show-camera-name","enable-control"])):H("",!0)]),_:1})],512)):!e(M)&&e(u)?(r(),F("div",va,[n(ee,{icon:"",size:"32",color:"#df2a4c"},{default:l(()=>[n(G,{size:"18",color:"#ffff"},{default:l(()=>[W(y(e(je)),1)]),_:1}),n($e,{activator:"parent",class:"select-menu"},{default:l(()=>[n(Oe,{"onClick:select":h[1]||(h[1]=c=>I("drop",c.id))},{default:l(()=>[(r(!0),F(ve,null,ue(e(S),(c,f)=>(r(),E(we,{key:f,value:c},{default:l(()=>[n(We,null,{default:l(()=>[W(y(c.name),1)]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1})])):H("",!0)],4))}}),fa=ie(ma,[["__scopeId","data-v-5b755b3b"]]),pa=ne({__name:"VView",props:{cameras:{},viewSize:{},cards:{},title:{},editMode:{type:Boolean,default:!1}},emits:["drop","remove"],setup(X,{expose:R,emit:Y}){const{isTouch:M}=He(),{desktopActive:I}=Ce(),T=Y,m=X,{cameras:u,editMode:x,viewSize:b,cards:o,title:s}=fe(m),k=g(null),U=g(`${Me.WIDTH}px`),V=g(),{isFullscreen:L,toggle:P}=tt(k),$=N(()=>o.value.filter(v=>v.lastDroppedCamera).map(v=>v.lastDroppedCamera));return R({toggleFullscreen:async()=>{await P()},togglePlayerMute:v=>{for(const _ of V.value||[])_.togglePlayerMute(v)},togglePlayerMicrophone:async(v,_)=>{for(const h of V.value||[])await h.toggleMicrophone(v,_)},isFullscreen:L}),(v,_)=>{const h=da;return r(),E(e(Ge),{backend:e(M)?e(Xe):e(Ne)},{default:l(()=>[i("div",{ref_key:"cameraView",ref:k,class:"view-container flex items-center mx-2",style:pe({width:e(x)&&e(I)?`calc(100% - ${e(U)})`:void 0})},[i("div",{class:me(`view-wrap w-full camera-view-${e(b)}`)},[(r(!0),F(ve,null,ue(e(o),(c,f)=>(r(),E(fa,{ref_for:!0,ref_key:"dragContainer",ref:V,key:f,class:me(`div${f+1}-${e(b)}`),"last-dropped-camera":c.lastDroppedCamera,cameras:e(u),"dropped-cameras":e($),"edit-mode":e(x),onDrop:p=>T("drop",f,p),onRemove:_[0]||(_[0]=p=>T("remove",p))},null,8,["class","last-dropped-camera","cameras","dropped-cameras","edit-mode","onDrop"]))),128))],2)],4),e(x)&&e(I)?(r(),E(h,{key:0,cameras:e(u),"dropped-cameras":e($),title:e(s),class:"view-box",style:pe({"margin-right":e(x)?"0px":`-${e(Me).WIDTH}px`})},null,8,["cameras","dropped-cameras","title","style"])):H("",!0)]),_:1},8,["backend"])}}}),ga=ie(pa,[["__scopeId","data-v-8ef83e91"]]),at=X=>(wt("data-v-ebd2ec2a"),X=X(),yt(),X),_a={class:"w-full h-full"},wa={class:"camview-topbar p-2 flex flex-row items-center"},ya={class:"flex w-full justify-start items-center"},ha={class:"camview-title truncate"},xa={style:{margin:"5px"}},ba={class:"flex flex-row w-full justify-start items-center"},Va={class:"menu-item"},ka={class:"flex w-full justify-start items-center"},Ca={class:"camview-title truncate"},Da=at(()=>i("div",{class:"ml-auto"},null,-1)),$a={style:{margin:"5px"}},za={class:"flex flex-row w-full justify-start items-center"},Ma={class:"icon-wrapper"},Pa={class:"menu-item ml-2"},Sa=at(()=>i("div",{class:"my-1"},null,-1)),Fa={class:"flex flex-row w-full justify-start items-center"},Ia={class:"icon-wrapper"},Aa={class:"menu-item ml-2"},Ta={key:9,class:"flex flex-row items-center"},Ea={class:"text-white"},Ra={class:"h-full w-full inline-size mb-safe"},Ba={key:0,class:"h-full w-full flex items-center justify-center"},La={key:1,class:"w-full h-full"},Ua={key:0,class:"w-full h-full relative"},Qa={key:1,class:"w-full h-full flex flex-row"},ja={key:2,class:"flex flex-col items-center justify-center w-full h-full"},Oa={class:"mt-5",style:{color:"#525252"}},Wa={class:"flex flex-col h-full w-full"},Ha={class:"relative"},Na={for:"name",class:"v-label"},Xa={key:0,class:"text-red text-center mb-5"},Ya={class:"view-scroll-container"},qa={class:"view-select-container"},Ga=["onClick"],Ja={class:"flex flex-col h-full w-full"},Ka={class:"relative"},Za={for:"name",class:"v-label"},es={key:0,class:"text-red text-center mb-5"},ts={class:"flex flex-col"},as=ne({__name:"Camview",setup(X){var Se;const R=new Lt,Y=new Ot,{smallMobileActive:M}=Ce(),I=Bt(),T=Je(),{uiSettings:m}=ze(T),{loginState:u}=ze(I),x=g(),b=g(),o=g(),s=g({}),k=g(!1),U=g({page:1,pageSize:-1}),V=g([1,4,6,7,9,10,12,13,15,16,20,26]),L=g(!1),P=g(!1),$=g(!0),S=g(!1),z=g(!1),C=g(!1),v=g(!1),_=g(!1),h=g(!1),c=g([]),f=g([]),{data:p,isLoading:Q}=Y.getCamerasQuery(U),{data:j,isLoading:le}=R.getViewsQuery(((Se=u.value.user)==null?void 0:Se.username)||"",U),{mutate:re,isPending:he}=R.removeViewQuery(),{mutateAsync:D,isPending:se}=R.createViewQuery(),{mutateAsync:ae,isPending:ce}=R.patchViewQuery(),{mutateAsync:ge}=R.patchViewQuerySilent(),te=N(()=>S.value||C.value||z.value),oe=N(()=>Q.value||le.value||he.value||se.value||ce.value),xe=N(()=>{var a,t;return((a=b.value)==null?void 0:a.isFullscreen)||((t=b.value)==null?void 0:t.isFullscreen)||!1}),be=N(()=>navigator.mediaDevices!==void 0),A=N(()=>{var t,w;const a=((t=j.value)==null?void 0:t.result.find(B=>B._id===m.value.camview.viewid))||((w=j.value)==null?void 0:w.result[0]);return a?(s.value=a,m.value.camview.viewid=a._id):s.value={},a}),De=N(()=>te.value&&s.value.viewSize>0?s.value.viewSize:A.value?A.value.viewSize:1);J(u,a=>{R.toggleQueryActivator("getUserQuery",a!==null)}),J([De,A,p,te,m],()=>{var t,w,B;if(((t=A.value)==null?void 0:t.type)==="dnd"&&!S.value&&!C.value)return;const a=Array.from({length:De.value}).map((O,K)=>({accept:"camera",index:K,lastDroppedCamera:void 0}));if(!C.value&&!v.value)for(const O of((w=A.value)==null?void 0:w.cameras)||[])a[O.index].lastDroppedCamera=(B=p.value)==null?void 0:B.result.find(K=>K._id===O.cameraId);c.value=a},{deep:!0,immediate:!0}),J(s,a=>{var t,w,B;if(Object.keys(a).length===0)(t=o.value)==null||t.resetForm(),L.value=!1,P.value=!1;else{for(const[O,K]of Object.entries(a))(w=o.value)==null||w.setFieldValue(O,K);a.viewSize&&(L.value=!1),(B=a.cameras)!=null&&B.length&&(P.value=!1)}},{deep:!0}),J([v,C],([a,t])=>{(!a&&!t||a)&&(s.value={},L.value=!1)}),J([_,z],()=>{z.value||(f.value=[],s.value={},P.value=!1)}),J(_,a=>{a||(z.value=!1)}),J(z,a=>{var t;a?(f.value=((t=p.value)==null?void 0:t.result.filter(w=>{var B;return(B=A.value)==null?void 0:B.cameras.some(O=>O.cameraId===w._id)}))||[],_.value=!0):(f.value=[],_.value=!1)}),J(f,a=>{a.length&&(P.value=!1)}),J(te,a=>{a&&A.value&&!C.value&&(s.value=ye(A.value))}),J(u,a=>{a.user?R.toggleQueryActivator("getUserQuery",!0):R.toggleQueryActivator("getUserQuery",!1)},{immediate:!0,deep:!0});const st=async a=>{if(!A.value||!u.value.user)return;const t=ye(A.value);t.cameras=a;const w=await ge({username:u.value.user.username,viewid:t._id,viewData:t});_e(w)},lt=(a,t)=>{c.value[a].lastDroppedCamera=t},ot=a=>{c.value=c.value.map(t=>{var w;return((w=t.lastDroppedCamera)==null?void 0:w.name)===a.name&&(t.lastDroppedCamera=void 0),t})},rt=async()=>{var w;if(!o.value||!u.value.user)return;const a=f.value.map((B,O)=>({cameraId:B._id,index:O}));s.value.cameras=a,s.value.type="dnd",s.value.viewSize=1,o.value.setFieldValue("type","dnd"),o.value.setFieldValue("viewSize",1),o.value.setFieldValue("cameras",a);const t=await o.value.validate();if(t){if(((w=j.value)==null?void 0:w.result.find(K=>K.name===s.value.name))&&!z.value){o.value.setFieldError("name","View already exists");return}if(a.length===0){P.value=!0;return}if(!t.valid)return;const O=ye(s.value);if(O._id){const K=await ae({username:u.value.user.username,viewid:O._id,viewData:O});_e(K)}else{const K=await D({username:u.value.user.username,viewData:O});_e(K)}_.value=!1}},nt=async()=>{var t,w;if(!o.value)return;s.value.cameras=[],s.value.type="view",o.value.setFieldValue("type","view"),o.value.setFieldValue("cameras",[]);const a=await o.value.validate();if(a){if((t=j.value)==null?void 0:t.result.find(O=>O.name===s.value.name)){o.value.setFieldError("name","View already exists");return}if(!a.valid){((w=a.results.viewSize)==null?void 0:w.valid)===!1&&(L.value=!0);return}v.value=!1,C.value=!0}},it=async()=>{if(!o.value||!u.value.user||Object.keys(s.value).length===0)return;const a=c.value.filter(w=>w.lastDroppedCamera).map(w=>({cameraId:w.lastDroppedCamera._id,index:w.index})).sort((w,B)=>w.index-B.index);if(!a.length)return;o.value.setFieldValue("name",s.value.name),o.value.setFieldValue("cameras",a);const t=await o.value.validate();if(t!=null&&t.valid){const w=ye(s.value);if(w.cameras=a,w._id){const B=await ae({username:u.value.user.username,viewid:w._id,viewData:w});_e(B)}else{const B=await D({username:u.value.user.username,viewData:w});_e(B)}}},_e=a=>{m.value.camview.viewid=a._id,v.value=!1,_.value=!1,C.value=!1,S.value=!1},ct=()=>{!A.value||!u.value.user||re({username:u.value.user.username,viewid:A.value._id},{onSuccess:a=>{a.length?m.value.camview.viewid=a[0]._id:m.value.camview.viewid=void 0}})},dt=a=>{m.value.camview.viewid=a._id},ut=async()=>{b.value?await b.value.toggleFullscreen():x.value&&await x.value.toggleFullscreen()},vt=()=>{$.value=!$.value,b.value?b.value.togglePlayerMute($.value):x.value&&x.value.togglePlayerMute($.value)},mt=async a=>{b.value?await b.value.togglePlayerMicrophone(a):x.value&&await x.value.togglePlayerMicrophone(a)};return(a,t)=>{const w=Qt,B=Xt;return r(),F("main",_a,[n(e(jt),{ref_key:"viewVeeForm",ref:o,class:"h-full w-full","validation-schema":e(Ut),"initial-values":e(s)},{default:l(()=>{var O,K,Fe,Ie,Ae,Te;return[i("div",wa,[!e(C)&&e(A)?(r(),E(ee,{key:0,size:"small",variant:"flat",style:{background:"rgba(var(--color-rgb), 0.1)","padding-left":"8px"}},{default:l(()=>[i("div",ya,[e(te)?H("",!0):(r(),E(G,{key:0,size:"18",class:"text-color mr-1"},{default:l(()=>[W(y(e(k)?e(Vt):e(kt)),1)]),_:1})),i("span",ha,y(e(A).name),1)]),e(te)?H("",!0):(r(),E($e,{key:0,activator:"parent",width:"324",offset:"5",location:"bottom",class:"select-menu","onUpdate:modelValue":t[0]||(t[0]=d=>k.value=d)},{default:l(()=>[n(Re,{width:"200",style:{border:"1px solid var(--background-timeline)","border-radius":"10px"},elevation:"3"},{default:l(()=>{var d;return[i("div",xa,[(r(!0),F(ve,null,ue(((d=e(j))==null?void 0:d.result)||[],(q,de)=>(r(),E(we,{key:de,active:q._id===e(A)._id,value:q,style:{"border-radius":"5px !important"},disabled:e(oe),onClick:Z(Ve=>dt(q),["prevent"])},{default:l(()=>[i("div",ba,[i("span",Va,y(q.name),1)])]),_:2},1032,["active","value","disabled","onClick"]))),128))])]}),_:1})]),_:1}))]),_:1})):e(C)&&e(s).name?(r(),E(ee,{key:1,size:"small",variant:"flat",style:{background:"rgba(var(--color-rgb), 0.1)","padding-left":"8px"}},{default:l(()=>[i("div",ka,[i("span",Ca,y(e(s).name),1)])]),_:1})):H("",!0),Da,!e(te)&&((O=e(A))==null?void 0:O.type)==="dnd"?(r(),E(ee,{key:2,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[1]||(t[1]=Z(d=>e(m).camview.dragDisabled=!e(m).camview.dragDisabled,["prevent"]))},{default:l(()=>[n(G,{size:"18"},{default:l(()=>[W(y(e(m).camview.dragDisabled?e(Ct):e(Dt)),1)]),_:1})]),_:1})):H("",!0),!e(te)&&e(A)?(r(),E(ee,{key:3,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[2]||(t[2]=Z(d=>vt(),["prevent"]))},{default:l(()=>[n(G,{size:"22"},{default:l(()=>[W(y(e($)?e($t):e(zt)),1)]),_:1})]),_:1})):H("",!0),!e(te)&&e(A)&&e(be)?(r(),E(ee,{key:4,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[3]||(t[3]=Z(d=>h.value=!0,["prevent"]))},{default:l(()=>[n(G,{size:"22"},{default:l(()=>[W(y(e(Qe)),1)]),_:1})]),_:1})):H("",!0),!e(te)&&e(A)?(r(),E(ee,{key:5,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[4]||(t[4]=Z(d=>ut(),["prevent"]))},{default:l(()=>[n(G,{size:"22"},{default:l(()=>[W(y(e(xe)?e(Mt):e(Pt)),1)]),_:1})]),_:1})):H("",!0),!e(te)&&e(A)?(r(),E(ee,{key:6,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[5]||(t[5]=Z(d=>ct(),["prevent"]))},{default:l(()=>[n(G,{size:"20"},{default:l(()=>[W(y(e(St)),1)]),_:1})]),_:1})):H("",!0),!e(z)&&!e(S)&&!e(C)&&e(A)?(r(),E(ee,{key:7,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[6]||(t[6]=Z(d=>{var q;return((q=e(A))==null?void 0:q.type)==="dnd"?z.value=!e(z):S.value=!e(S)},["prevent"]))},{default:l(()=>[n(G,{size:"19"},{default:l(()=>[W(y(e(Ft)),1)]),_:1})]),_:1})):H("",!0),!e(z)&&!e(S)&&!e(C)?(r(),E(ee,{key:8,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text"},{default:l(()=>[n(G,{size:"22"},{default:l(()=>[W(y(e(je)),1)]),_:1}),n($e,{activator:"parent",offset:"5",location:"bottom",class:"select-menu"},{default:l(()=>[n(Re,{width:"200",style:{border:"1px solid var(--background-timeline)","border-radius":"10px"},elevation:"3"},{default:l(()=>[i("div",$a,[n(we,{style:{"border-radius":"5px !important"},disabled:e(oe),onClick:t[7]||(t[7]=Z(d=>v.value=!0,["prevent"]))},{default:l(()=>[i("div",za,[i("div",Ma,[n(G,{size:"20",class:"text-passive"},{default:l(()=>[W(y(e(It)),1)]),_:1})]),i("span",Pa,y(a.$t("views.camview.new_view")),1)])]),_:1},8,["disabled"]),Sa,n(we,{style:{"border-radius":"5px !important"},disabled:e(oe),onClick:t[8]||(t[8]=Z(d=>_.value=!0,["prevent"]))},{default:l(()=>[i("div",Fa,[i("div",Ia,[n(G,{size:"20",class:"text-passive"},{default:l(()=>[W(y(e(At)),1)]),_:1})]),i("span",Aa,y(a.$t("views.camview.new_dnd")),1)])]),_:1},8,["disabled"])])]),_:1})]),_:1})]),_:1})):H("",!0),e(S)||e(C)?(r(),F("div",Ta,[n(ee,{class:"disabled-text mr-2",size:"small",variant:"flat",border:"",onClick:t[9]||(t[9]=Z(d=>e(S)?S.value=!1:C.value=!1,["prevent"]))},{default:l(()=>[W(y(a.$t("components.form.button.cancel")),1)]),_:1}),n(ee,{disabled:e(c).every(d=>d.lastDroppedCamera===void 0),class:"disabled-text",size:"small",color:"#df2a4c",variant:"flat",border:"",onClick:t[10]||(t[10]=Z(d=>it(),["prevent"]))},{default:l(()=>[i("span",Ea,y(a.$t("components.form.button.save")),1)]),_:1},8,["disabled"])])):H("",!0)]),i("div",{class:me(["camview-container",{"px-0":e(M)}])},[i("div",Ra,[e(oe)||!e(j)?(r(),F("div",Ba,[n(Tt,{color:"#df2a4c",indeterminate:""})])):(r(),F("div",La,[!e(C)&&!e(S)&&(e(z)||((K=e(A))==null?void 0:K.type)==="dnd")?(r(),F("div",Ua,[n(Zt,{ref_key:"dndRef",ref:x,cameras:((Fe=e(A))==null?void 0:Fe.cameras)||[],"db-cameras":((Ie=e(p))==null?void 0:Ie.result)||[],onDrag:st},null,8,["cameras","db-cameras"])])):!e(z)&&(e(C)||e(S)||((Ae=e(A))==null?void 0:Ae.type)==="view")?(r(),F("div",Qa,[(r(),E(ga,{ref_key:"viewRef",ref:b,key:e(m).camview.viewid+(e(C)?"-new":e(S)?"-edit":"-view"),cameras:((Te=e(p))==null?void 0:Te.result)||[],"edit-mode":e(C)||e(S),"view-size":e(C)?e(s).viewSize:e(De),title:e(s).name,cards:e(c),onDrop:lt,onRemove:ot},null,8,["cameras","edit-mode","view-size","title","cards"]))])):(r(),F("div",ja,[i("span",Oa,y(a.$t("views.camview.no_views_configured")),1)]))]))])],2),n(w,{modelValue:e(v),"onUpdate:modelValue":t[12]||(t[12]=d=>ke(v)?v.value=d:null),title:a.$t("components.dialog.title.new_view"),"confirm-text":"components.form.button.next",loading:e(oe),onConfirm:t[13]||(t[13]=d=>nt())},{content:l(()=>[i("div",Wa,[i("div",Ha,[n(e(Ue),{modelValue:e(s).name,"onUpdate:modelValue":t[11]||(t[11]=d=>e(s).name=d),name:"name"},{default:l(({field:d,errorMessage:q,errors:de})=>[i("label",Na,y(a.$t("components.form.label.name")),1),n(Be,Ee({loading:e(oe),variant:"outlined",name:"name",type:"text",density:"compact"},d,{error:de.length>0,"error-messages":q}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),n(Le,{class:"my-5"}),e(L)?(r(),F("span",Xa,y(a.$t("components.form.error.no_view_selected")),1)):H("",!0),i("div",Ya,[i("div",qa,[(r(!0),F(ve,null,ue(e(V),d=>(r(),F("div",{key:d,class:"view-select-item h-full w-full",onClick:Z(q=>e(s).viewSize=d,["prevent"])},[i("div",{class:me(["view-select-item-icon w-full h-full p-3",{"selected-view":e(s).viewSize===d}])},[n(G,{class:"disabled-text",style:{width:"100%",height:"100%"}},{default:l(()=>[W(y(`$cuiGrid${d}`),1)]),_:2},1024)],2),i("span",{class:me(["view-select-item-label disabled-text mt-2 px-2 py-1",{"selected-view-label":e(s).viewSize===d}])},y(d)+" "+y(a.$t("views.camview.cameras")),3)],8,Ga))),128))])])])]),_:1},8,["modelValue","title","loading"]),n(w,{modelValue:e(_),"onUpdate:modelValue":t[16]||(t[16]=d=>ke(_)?_.value=d:null),title:a.$t("components.dialog.title.new_dnd"),"confirm-text":"components.form.button.save",loading:e(oe),onConfirm:t[17]||(t[17]=d=>rt())},{content:l(()=>[i("div",Ja,[i("div",Ka,[n(e(Ue),{modelValue:e(s).name,"onUpdate:modelValue":t[14]||(t[14]=d=>e(s).name=d),name:"name"},{default:l(({field:d,errorMessage:q,errors:de})=>[i("label",Za,y(a.$t("components.form.label.name")),1),n(Be,Ee({loading:e(oe),variant:"outlined",name:"name",type:"text",density:"compact"},d,{error:de.length>0,"error-messages":q}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),n(Le,{class:"mb-10 mt-5"}),e(P)?(r(),F("span",es,y(a.$t("components.form.error.no_cameras_selected")),1)):H("",!0),n(Oe,{selected:e(f),"onUpdate:selected":t[15]||(t[15]=d=>ke(f)?f.value=d:null),"select-strategy":"classic",class:"py-0 mb-5",density:"compact"},{default:l(()=>{var d;return[(r(!0),F(ve,null,ue(((d=e(p))==null?void 0:d.result)||[],(q,de)=>(r(),E(we,{key:de,value:q,active:e(f).some(Ve=>Ve.name===q.name)},{prepend:l(({isActive:Ve})=>[n(Et,{start:""},{default:l(()=>[n(Rt,{"model-value":Ve,color:"#df2a4c"},null,8,["model-value"])]),_:2},1024)]),default:l(()=>[n(We,null,{default:l(()=>[W(y(q.name),1)]),_:2},1024)]),_:2},1032,["value","active"]))),128))]}),_:1},8,["selected"])])]),_:1},8,["modelValue","title","loading"]),n(w,{modelValue:e(h),"onUpdate:modelValue":t[18]||(t[18]=d=>ke(h)?h.value=d:null),title:a.$t("components.dialog.title.intercom"),loading:e(oe),"hide-confirm-button":""},{content:l(()=>[i("div",ts,[i("span",null,y(a.$t("components.dialog.message.intercom_info")),1),n(B,{onListening:mt})])]),_:1},8,["modelValue","title","loading"])]}),_:1},8,["validation-schema","initial-values"])])}}}),Xs=ie(as,[["__scopeId","data-v-ebd2ec2a"]]);export{Xs as default};
|
|
1
|
+
import{F as ne,r as g,U as ft,e as r,f as F,j as i,M as n,R as l,V as W,T as y,u as e,q as Z,t as fe,c as N,w as J,X as pe,O as E,Q as ue,N as ve,aa as pt,l as H,an as gt,n as me,W as _t,i as ke,m as Ee,ai as wt,aj as yt}from"./@vue-CIFymae3.js";import{J as Qe,K as ht,L as xt,s as bt,M as je,E as Vt,F as kt,N as Ct,O as Dt,P as $t,Q as zt,R as Mt,S as Pt,T as St,U as Ft,V as It,W as At}from"./@mdi-jq8isxax.js";import{e as G,b as ee,o as $e,G as Oe,H as We,f as we,j as Re,V as Tt,c as Be,n as Le,I as Et,J as Rt}from"./vuetify-B_vGZaGi.js";import{d as ie,s as He,f as Ce,t as ye,u as Bt,U as Lt,v as Ut,w as Qt}from"./main-C2N2tbw_.js";import{F as Ue,a as jt}from"./vee-validate-DHjm38DY.js";import{_ as Pe,C as Ot}from"./VPlayer-B53-f3Ad.js";import{H as Ne}from"./react-dnd-html5-backend-1HQjlkwI.js";import{T as Xe}from"./react-dnd-touch-backend-NgACaG8W.js";import{u as Ye,a as qe,D as Ge}from"./vue3-dnd-Dn4SH4Ex.js";import{u as Je}from"./ui-CdiPlYMM.js";import{s as ze}from"./pinia-B_gX_pHL.js";import{m as Ke,v as Ze,k as et,w as tt}from"./@vueuse-DbPVvJxZ.js";import"./vue-inline-svg-DDdr3aAz.js";import"./vue3-toastify-Cy6dUyKO.js";import"./vue-i18n-CHUfunSC.js";import"./@intlify-YW_pt133.js";import"./axios-BI2i94Vb.js";import"./@tanstack-DPd4-F0t.js";import"./vue-router-C55prZ5l.js";import"./@vee-validate-CmTVjJBY.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-DmqiRszP.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-CbEkwI4D.js";import"./@popperjs-BQBsAJpH.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./qrcode-SHonoxyK.js";import"./dijkstrajs-D_NXgYpA.js";import"./plugins-Cs7BJHj-.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 Wt={class:"mt-auto flex flex-col"},Ht={class:"relative flex flex-col items-center justify-center"},Nt=ne({__name:"VAudioVisualizer",emits:["listening"],setup(X,{emit:R}){const Y=R,M=g(),I=g(null),T=g(),m=g(!1),u=()=>{var o,s;(o=M.value)==null||o.close(),M.value=void 0,(s=T.value)==null||s.forEach(k=>k.stop()),T.value=void 0,m.value=!1,Y("listening",!1)},x=(o,s,k,U,V,L)=>{const P=o.createLinearGradient(s,k,U,V);P.addColorStop(0,"#5b040f"),P.addColorStop(.5,"#b50b21"),P.addColorStop(.9,"#df2a4c"),P.addColorStop(1,"#df6380"),o.lineWidth=L,o.strokeStyle=P,o.beginPath(),o.moveTo(s,k),o.lineTo(U,V),o.stroke(),o.closePath()},b=async()=>{var o;if(m.value)u();else try{M.value&&u();let s;try{s=await navigator.mediaDevices.getUserMedia({audio:!0})}catch(z){console.warn("Can not enable AudioVisualizer",z);return}m.value=!0,Y("listening",!0),M.value=new AudioContext;let k=M.value.createAnalyser();k.fftSize=1024,T.value=s.getTracks(),M.value.createMediaStreamSource(s).connect(k);const V=90;let L=3,P;const $=(o=I.value)==null?void 0:o.getContext("2d"),S=()=>{if(I.value&&$){const z=[],C=[];$.clearRect(0,0,I.value.width,I.value.height),requestAnimationFrame(S);let v=k.frequencyBinCount,_=new Uint8Array(v);k.getByteFrequencyData(_),z.push(_);for(let p=0;p<z[0].length;p++)C.push(0),z.forEach(Q=>{C[p]+=Q[p]});const h=I.value.width/2,c=I.value.height/2,f=30;$.beginPath(),$.arc(h,c,f,0,2*Math.PI),$.lineWidth=1,$.stroke(),$.closePath();for(let p=0;p<V;p++){P=C[p]*.4;let Q=Math.PI*2/V,j=h+Math.cos(Q*p)*f,le=c+Math.sin(Q*p)*f,re=h+Math.cos(Q*p)*(f+P),he=c+Math.sin(Q*p)*(f+P);x($,j,le,re,he,L)}m.value||$.clearRect(0,0,I.value.width,I.value.height)}};S()}catch(s){u(),console.error(s)}};return ft(()=>{u()}),(o,s)=>(r(),F("div",Wt,[i("div",Ht,[n(ee,{class:"mic-button",variant:"elevated",color:"white",icon:"",size:"60",onClick:Z(b,["prevent"])},{default:l(()=>[n(G,{size:"35"},{default:l(()=>[W(y(e(Qe)),1)]),_:1})]),_:1}),i("canvas",{ref_key:"canvas",ref:I,height:"300",width:"300"},null,512)])]))}}),Xt=ie(Nt,[["__scopeId","data-v-5c30fb5d"]]),Yt=["data-handler-id"],qt=ne({__name:"VDnDCard",props:{id:{},index:{},camera:{},moveCard:{type:Function}},setup(X,{expose:R}){const Y=Je(),M=X,{camera:I}=fe(M),{uiSettings:T}=ze(Y),m=g(),u=g(),x=g(null);let b=null,o=0,s=0;const k=N(()=>T.value.camview.dragDisabled===!1),{x:U,y:V,sourceType:L}=Ke(),{top:P,left:$}=Ze(x),[S,z]=Ye({accept:"camera",collect(D){return{handlerId:D.getHandlerId()}},hover(D,se){var be;if(!m.value)return;const ae=D.index,ce=M.index;if(ae===ce)return;const ge=(be=m.value)==null?void 0:be.getBoundingClientRect(),te=(ge.bottom-ge.top)/2,xe=se.getClientOffset().y-ge.top;ae<ce&&xe<te||ae>ce&&xe>te||(M.moveCard(ae,ce),D.index=ce)}}),[C,v]=qe({type:"camera",canDrag(){return k.value},item:()=>({id:M.id,index:M.index}),collect:D=>({isDragging:D.isDragging()})}),{handlerId:_}=fe(S.value),h=N(()=>C.value.isDragging),c=N(()=>h.value&&L.value==="touch"),f=N(()=>e(h)?0:1);J(c,D=>{D?(b=p(),o=U.value-$.value,s=V.value-P.value):(j(b),b=null)}),J([U,V],()=>{Q(b,o,s)});const p=()=>{if(x.value){const D=x.value.cloneNode(!0);return D.classList.add("drag-preview"),document.body.appendChild(D),D}return null},Q=(D,se,ae)=>{D&&(D.style.left=`${U.value-se}px`,D.style.top=`${V.value-ae}px`)},j=D=>{D&&document.body.removeChild(D)},le=D=>{m.value=v(z(D))};return R({togglePlayerMute:D=>{var se;(se=u.value)==null||se.toggleMute(D)},toggleMicrophone:async(D,se)=>{var ae;await((ae=u.value)==null?void 0:ae.toggleMicrophone(D,se))}}),(D,se)=>(r(),F("div",{ref_key:"boxEl",ref:x},[i("div",{ref:le,class:"camera-card",style:pe({opacity:e(f),color:"#000",cursor:e(T).camview.dragDisabled?"default":"grab"}),"data-handler-id":e(_)},[n(Pe,{ref_key:"playerRef",ref:u,"current-camera":e(I).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,Yt)],512))}}),Gt=ie(qt,[["__scopeId","data-v-a157f34a"]]),Jt={class:"conference"},Kt=ne({__name:"VDnD",props:{cameras:{},dbCameras:{}},emits:["drag"],setup(X,{expose:R,emit:Y}){const{isTouch:M}=He(),{smallMobileActive:I}=Ce(),T=Y,m=X,{cameras:u,dbCameras:x}=fe(m),b=g(null),o=g(null),s=g("16:9"),k=g(2),U=et(o),V=g([]),L=g(),{isFullscreen:P,toggle:$}=tt(b);J(u,c=>{V.value=ye(c).sort((f,p)=>f.index-p.index)},{immediate:!0,deep:!0});const S=(c,f)=>{const p=V.value[c];V.value.splice(c,1),V.value.splice(f,0,p),V.value=V.value.map((Q,j)=>(Q.index=j,Q)).sort((Q,j)=>Q.index-j.index),T("drag",V.value)},z=c=>{const f=U.height.value-k.value*2,p=U.width.value-k.value*2,Q=parseInt(s.value.split(":")[1])/parseInt(s.value.split(":")[0]);let j=0,le=0,re=c*Q+k.value*2;for(;j<V.value.length;)le+c>p&&(le=0,re=re+c*Q+k.value*2),le=le+c+k.value*2,j++;return re>f||c>p?!1:c},C=N(()=>{if(I.value)return"100%";let c=0,f=1;for(;f<5e3;){if(z(f)===!1){c=f-1;break}f++}return c=c-k.value,`${c}px`});return R({toggleFullscreen:async()=>{await $()},togglePlayerMute:c=>{for(const f of L.value||[])f.togglePlayerMute(c)},togglePlayerMicrophone:async(c,f)=>{for(const p of L.value||[])await p.toggleMicrophone(c,f)},isFullscreen:P,selectedCameras:V}),(c,f)=>(r(),E(e(Ge),{backend:e(M)?e(Xe):e(Ne)},{default:l(()=>[i("div",{ref_key:"cameraDnd",ref:b,class:"scenary"},[i("div",Jt,[n(pt,{ref_key:"dishEl",ref:o,name:"list",tag:"div",class:"dish"},{default:l(()=>[(r(!0),F(ve,null,ue(e(V),(p,Q)=>(r(),E(Gt,{id:p.cameraId,ref_for:!0,ref_key:"dndCards",ref:L,key:p.cameraId,index:Q,camera:e(x).find(j=>j._id===p.cameraId),"move-card":S,style:pe({width:e(C)})},null,8,["id","index","camera","style"]))),128))]),_:1},512)])],512)]),_:1},8,["backend"]))}}),Zt=ie(Kt,[["__scopeId","data-v-c22c99a6"]]),ea={class:"camera-snapshot"},ta={class:"camera-info flex flex-row items-center"},aa={class:"text-passive truncate"},sa=ne({__name:"VViewDrag",props:{camera:{},isDropped:{type:Boolean},canDrag:{type:Boolean}},setup(X){const R=X,{isDropped:Y,camera:M,canDrag:I}=fe(R),T=g(null);let m=null,u=0,x=0;const{x:b,y:o,sourceType:s}=Ke(),{top:k,left:U}=Ze(T),[V,L]=qe(()=>({type:"camera",options:{dropEffect:"copy"},item:M.value,canDrag:I.value,collect:v=>({style:{opacity:v.isDragging()?.4:1},isDragging:v.isDragging()})})),P=N(()=>V.value.isDragging),$=N(()=>P.value&&s.value==="touch");J($,v=>{v?(m=S(),u=b.value-U.value,x=o.value-k.value):(C(m),m=null)}),J([b,o],()=>{z(m,u,x)});const S=()=>{if(T.value){const v=T.value.cloneNode(!0);return v.classList.add("drag-preview"),document.body.appendChild(v),v}return null},z=(v,_,h)=>{v&&(v.style.left=`${b.value-_}px`,v.style.top=`${o.value-h}px`)},C=v=>{v&&document.body.removeChild(v)};return(v,_)=>{const h=Pe;return r(),F("div",{ref_key:"boxEl",ref:T},[i("div",{ref:e(L),style:pe({...e(V).style,cursor:e(Y)?"default":"grab"}),class:"drag-box p-2 flex flex-row items-center relative"},[n(G,{size:"20",class:"text-passive mr-2"},{default:l(()=>[W(y(e(ht)),1)]),_:1}),i("div",ea,[n(h,{"current-camera":e(M).name,"border-radius":6,target:"snapshot","show-mode":!1},null,8,["current-camera"])]),i("div",ta,[i("span",aa,y(e(M).name),1),e(Y)?(r(),E(G,{key:0,size:"25",class:"ml-auto text-green mr-4"},{default:l(()=>[W(y(e(xt)),1)]),_:1})):H("",!0)])],4)],512)}}}),la=ie(sa,[["__scopeId","data-v-7dfa63f3"]]),Me={WIDTH:400},oa={class:"camera-view-edit flex flex-col p-2"},ra={class:"mb-4 text-lg"},na={class:"text-passive mb-5 mt-5"},ia={class:"camera-container py-3"},ca=ne({__name:"VViewSidebar",props:{cameras:{},droppedCameras:{},title:{}},setup(X){gt(x=>({"7ea40162":e(T)}));const R=X,{cameras:Y,droppedCameras:M,title:I}=fe(R),T=g(`${Me.WIDTH}px`),m=g(!1),u=x=>M.value.some(b=>b.name===x.name);return(x,b)=>{const o=la;return r(),F("div",oa,[i("b",ra,y(e(I)),1),i("span",na,y(x.$t("components.view_box.available_streams")),1),i("div",ia,[(r(!0),F(ve,null,ue(e(Y),(s,k)=>(r(),F("div",{key:k,class:"mb-4"},[n(o,{camera:s,"is-dropped":u(s),"can-drag":!u(s),class:me({shake:e(m)})},null,8,["camera","is-dropped","can-drag","class"])]))),128))])])}}}),da=ie(ca,[["__scopeId","data-v-420802a2"]]),ua={key:0,class:"overlay-button-text truncate",color:"#fff"},va={key:1,class:"w-full h-full flex items-center justify-center"},ma=ne({__name:"VViewCard",props:{lastDroppedCamera:{},editMode:{type:Boolean},cameras:{},droppedCameras:{},onDrop:{type:Function}},emits:["drop","remove"],setup(X,{expose:R,emit:Y}){const{desktopActive:M}=Ce(),I=Y,T=X,{lastDroppedCamera:m,editMode:u,cameras:x,droppedCameras:b}=fe(T),o=g(null),s=g(),{width:k}=et(o),[U,V]=Ye({accept:"camera",drop:T.onDrop,collect:_=>({isOver:_.isOver(),canDrop:_.canDrop()&&m.value===void 0}),canDrop:()=>m.value===void 0}),L=N(()=>U.value.canDrop&&U.value.isOver),P=N(()=>u.value?L.value?"#171717":"#202020":"#000"),$=N(()=>k.value<=200),S=N(()=>x.value.filter(_=>!z(_))),z=_=>b.value.some(h=>h.name===_.name);return R({togglePlayerMute:_=>{var h;(h=s.value)==null||h.toggleMute(_)},toggleMicrophone:async(_,h)=>{var c;await((c=s.value)==null?void 0:c.toggleMicrophone(_,h))}}),(_,h)=>(r(),F("div",{ref:e(V),style:pe({backgroundColor:e(P)}),class:"overflow-hidden"},[e(m)?(r(),F("div",{key:0,ref_key:"container",ref:o,class:"w-full h-full flex items-center justify-center relative"},[e(u)?(r(),E(ee,{key:0,icon:e($),size:e($)?32:void 0,class:"overlay-button flex items-center justify-center",color:"#df2a4c",onClick:h[0]||(h[0]=Z(c=>I("remove",e(m)),["prevent"]))},{default:l(()=>[n(G,{size:"18"},{default:l(()=>[W(y(e(bt)),1)]),_:1}),e($)?H("",!0):(r(),F("span",ua,y(e(m).name),1))]),_:1},8,["icon","size"])):H("",!0),n(_t,{name:"fade",mode:"in-out"},{default:l(()=>[e(m)?(r(),E(Pe,{key:0,ref_key:"playerRef",ref:s,class:me({"camera-overlay":e(u)}),"current-camera":e(m).name,"border-radius":0,target:e(u)?"snapshot":"stream",style:pe({opacity:e(u)?.2:1}),"show-camera-name":!e(u),"enable-control":!e(u),"auto-hide-control":"","source-role":"low-resolution","show-mode":!1},null,8,["class","current-camera","target","style","show-camera-name","enable-control"])):H("",!0)]),_:1})],512)):!e(M)&&e(u)?(r(),F("div",va,[n(ee,{icon:"",size:"32",color:"#df2a4c"},{default:l(()=>[n(G,{size:"18",color:"#ffff"},{default:l(()=>[W(y(e(je)),1)]),_:1}),n($e,{activator:"parent",class:"select-menu"},{default:l(()=>[n(Oe,{"onClick:select":h[1]||(h[1]=c=>I("drop",c.id))},{default:l(()=>[(r(!0),F(ve,null,ue(e(S),(c,f)=>(r(),E(we,{key:f,value:c},{default:l(()=>[n(We,null,{default:l(()=>[W(y(c.name),1)]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1})])):H("",!0)],4))}}),fa=ie(ma,[["__scopeId","data-v-5b755b3b"]]),pa=ne({__name:"VView",props:{cameras:{},viewSize:{},cards:{},title:{},editMode:{type:Boolean,default:!1}},emits:["drop","remove"],setup(X,{expose:R,emit:Y}){const{isTouch:M}=He(),{desktopActive:I}=Ce(),T=Y,m=X,{cameras:u,editMode:x,viewSize:b,cards:o,title:s}=fe(m),k=g(null),U=g(`${Me.WIDTH}px`),V=g(),{isFullscreen:L,toggle:P}=tt(k),$=N(()=>o.value.filter(v=>v.lastDroppedCamera).map(v=>v.lastDroppedCamera));return R({toggleFullscreen:async()=>{await P()},togglePlayerMute:v=>{for(const _ of V.value||[])_.togglePlayerMute(v)},togglePlayerMicrophone:async(v,_)=>{for(const h of V.value||[])await h.toggleMicrophone(v,_)},isFullscreen:L}),(v,_)=>{const h=da;return r(),E(e(Ge),{backend:e(M)?e(Xe):e(Ne)},{default:l(()=>[i("div",{ref_key:"cameraView",ref:k,class:"view-container flex items-center mx-2",style:pe({width:e(x)&&e(I)?`calc(100% - ${e(U)})`:void 0})},[i("div",{class:me(`view-wrap w-full camera-view-${e(b)}`)},[(r(!0),F(ve,null,ue(e(o),(c,f)=>(r(),E(fa,{ref_for:!0,ref_key:"dragContainer",ref:V,key:f,class:me(`div${f+1}-${e(b)}`),"last-dropped-camera":c.lastDroppedCamera,cameras:e(u),"dropped-cameras":e($),"edit-mode":e(x),onDrop:p=>T("drop",f,p),onRemove:_[0]||(_[0]=p=>T("remove",p))},null,8,["class","last-dropped-camera","cameras","dropped-cameras","edit-mode","onDrop"]))),128))],2)],4),e(x)&&e(I)?(r(),E(h,{key:0,cameras:e(u),"dropped-cameras":e($),title:e(s),class:"view-box",style:pe({"margin-right":e(x)?"0px":`-${e(Me).WIDTH}px`})},null,8,["cameras","dropped-cameras","title","style"])):H("",!0)]),_:1},8,["backend"])}}}),ga=ie(pa,[["__scopeId","data-v-8ef83e91"]]),at=X=>(wt("data-v-ebd2ec2a"),X=X(),yt(),X),_a={class:"w-full h-full"},wa={class:"camview-topbar p-2 flex flex-row items-center"},ya={class:"flex w-full justify-start items-center"},ha={class:"camview-title truncate"},xa={style:{margin:"5px"}},ba={class:"flex flex-row w-full justify-start items-center"},Va={class:"menu-item"},ka={class:"flex w-full justify-start items-center"},Ca={class:"camview-title truncate"},Da=at(()=>i("div",{class:"ml-auto"},null,-1)),$a={style:{margin:"5px"}},za={class:"flex flex-row w-full justify-start items-center"},Ma={class:"icon-wrapper"},Pa={class:"menu-item ml-2"},Sa=at(()=>i("div",{class:"my-1"},null,-1)),Fa={class:"flex flex-row w-full justify-start items-center"},Ia={class:"icon-wrapper"},Aa={class:"menu-item ml-2"},Ta={key:9,class:"flex flex-row items-center"},Ea={class:"text-white"},Ra={class:"h-full w-full inline-size mb-safe"},Ba={key:0,class:"h-full w-full flex items-center justify-center"},La={key:1,class:"w-full h-full"},Ua={key:0,class:"w-full h-full relative"},Qa={key:1,class:"w-full h-full flex flex-row"},ja={key:2,class:"flex flex-col items-center justify-center w-full h-full"},Oa={class:"mt-5",style:{color:"#525252"}},Wa={class:"flex flex-col h-full w-full"},Ha={class:"relative"},Na={for:"name",class:"v-label"},Xa={key:0,class:"text-red text-center mb-5"},Ya={class:"view-scroll-container"},qa={class:"view-select-container"},Ga=["onClick"],Ja={class:"flex flex-col h-full w-full"},Ka={class:"relative"},Za={for:"name",class:"v-label"},es={key:0,class:"text-red text-center mb-5"},ts={class:"flex flex-col"},as=ne({__name:"Camview",setup(X){var Se;const R=new Lt,Y=new Ot,{smallMobileActive:M}=Ce(),I=Bt(),T=Je(),{uiSettings:m}=ze(T),{loginState:u}=ze(I),x=g(),b=g(),o=g(),s=g({}),k=g(!1),U=g({page:1,pageSize:-1}),V=g([1,4,6,7,9,10,12,13,15,16,20,26]),L=g(!1),P=g(!1),$=g(!0),S=g(!1),z=g(!1),C=g(!1),v=g(!1),_=g(!1),h=g(!1),c=g([]),f=g([]),{data:p,isLoading:Q}=Y.getCamerasQuery(U),{data:j,isLoading:le}=R.getViewsQuery(((Se=u.value.user)==null?void 0:Se.username)||"",U),{mutate:re,isPending:he}=R.removeViewQuery(),{mutateAsync:D,isPending:se}=R.createViewQuery(),{mutateAsync:ae,isPending:ce}=R.patchViewQuery(),{mutateAsync:ge}=R.patchViewQuerySilent(),te=N(()=>S.value||C.value||z.value),oe=N(()=>Q.value||le.value||he.value||se.value||ce.value),xe=N(()=>{var a,t;return((a=b.value)==null?void 0:a.isFullscreen)||((t=b.value)==null?void 0:t.isFullscreen)||!1}),be=N(()=>navigator.mediaDevices!==void 0),A=N(()=>{var t,w;const a=((t=j.value)==null?void 0:t.result.find(B=>B._id===m.value.camview.viewid))||((w=j.value)==null?void 0:w.result[0]);return a?(s.value=a,m.value.camview.viewid=a._id):s.value={},a}),De=N(()=>te.value&&s.value.viewSize>0?s.value.viewSize:A.value?A.value.viewSize:1);J(u,a=>{R.toggleQueryActivator("getUserQuery",a!==null)}),J([De,A,p,te,m],()=>{var t,w,B;if(((t=A.value)==null?void 0:t.type)==="dnd"&&!S.value&&!C.value)return;const a=Array.from({length:De.value}).map((O,K)=>({accept:"camera",index:K,lastDroppedCamera:void 0}));if(!C.value&&!v.value)for(const O of((w=A.value)==null?void 0:w.cameras)||[])a[O.index].lastDroppedCamera=(B=p.value)==null?void 0:B.result.find(K=>K._id===O.cameraId);c.value=a},{deep:!0,immediate:!0}),J(s,a=>{var t,w,B;if(Object.keys(a).length===0)(t=o.value)==null||t.resetForm(),L.value=!1,P.value=!1;else{for(const[O,K]of Object.entries(a))(w=o.value)==null||w.setFieldValue(O,K);a.viewSize&&(L.value=!1),(B=a.cameras)!=null&&B.length&&(P.value=!1)}},{deep:!0}),J([v,C],([a,t])=>{(!a&&!t||a)&&(s.value={},L.value=!1)}),J([_,z],()=>{z.value||(f.value=[],s.value={},P.value=!1)}),J(_,a=>{a||(z.value=!1)}),J(z,a=>{var t;a?(f.value=((t=p.value)==null?void 0:t.result.filter(w=>{var B;return(B=A.value)==null?void 0:B.cameras.some(O=>O.cameraId===w._id)}))||[],_.value=!0):(f.value=[],_.value=!1)}),J(f,a=>{a.length&&(P.value=!1)}),J(te,a=>{a&&A.value&&!C.value&&(s.value=ye(A.value))}),J(u,a=>{a.user?R.toggleQueryActivator("getUserQuery",!0):R.toggleQueryActivator("getUserQuery",!1)},{immediate:!0,deep:!0});const st=async a=>{if(!A.value||!u.value.user)return;const t=ye(A.value);t.cameras=a;const w=await ge({username:u.value.user.username,viewid:t._id,viewData:t});_e(w)},lt=(a,t)=>{c.value[a].lastDroppedCamera=t},ot=a=>{c.value=c.value.map(t=>{var w;return((w=t.lastDroppedCamera)==null?void 0:w.name)===a.name&&(t.lastDroppedCamera=void 0),t})},rt=async()=>{var w;if(!o.value||!u.value.user)return;const a=f.value.map((B,O)=>({cameraId:B._id,index:O}));s.value.cameras=a,s.value.type="dnd",s.value.viewSize=1,o.value.setFieldValue("type","dnd"),o.value.setFieldValue("viewSize",1),o.value.setFieldValue("cameras",a);const t=await o.value.validate();if(t){if(((w=j.value)==null?void 0:w.result.find(K=>K.name===s.value.name))&&!z.value){o.value.setFieldError("name","View already exists");return}if(a.length===0){P.value=!0;return}if(!t.valid)return;const O=ye(s.value);if(O._id){const K=await ae({username:u.value.user.username,viewid:O._id,viewData:O});_e(K)}else{const K=await D({username:u.value.user.username,viewData:O});_e(K)}_.value=!1}},nt=async()=>{var t,w;if(!o.value)return;s.value.cameras=[],s.value.type="view",o.value.setFieldValue("type","view"),o.value.setFieldValue("cameras",[]);const a=await o.value.validate();if(a){if((t=j.value)==null?void 0:t.result.find(O=>O.name===s.value.name)){o.value.setFieldError("name","View already exists");return}if(!a.valid){((w=a.results.viewSize)==null?void 0:w.valid)===!1&&(L.value=!0);return}v.value=!1,C.value=!0}},it=async()=>{if(!o.value||!u.value.user||Object.keys(s.value).length===0)return;const a=c.value.filter(w=>w.lastDroppedCamera).map(w=>({cameraId:w.lastDroppedCamera._id,index:w.index})).sort((w,B)=>w.index-B.index);if(!a.length)return;o.value.setFieldValue("name",s.value.name),o.value.setFieldValue("cameras",a);const t=await o.value.validate();if(t!=null&&t.valid){const w=ye(s.value);if(w.cameras=a,w._id){const B=await ae({username:u.value.user.username,viewid:w._id,viewData:w});_e(B)}else{const B=await D({username:u.value.user.username,viewData:w});_e(B)}}},_e=a=>{m.value.camview.viewid=a._id,v.value=!1,_.value=!1,C.value=!1,S.value=!1},ct=()=>{!A.value||!u.value.user||re({username:u.value.user.username,viewid:A.value._id},{onSuccess:a=>{a.length?m.value.camview.viewid=a[0]._id:m.value.camview.viewid=void 0}})},dt=a=>{m.value.camview.viewid=a._id},ut=async()=>{b.value?await b.value.toggleFullscreen():x.value&&await x.value.toggleFullscreen()},vt=()=>{$.value=!$.value,b.value?b.value.togglePlayerMute($.value):x.value&&x.value.togglePlayerMute($.value)},mt=async a=>{b.value?await b.value.togglePlayerMicrophone(a):x.value&&await x.value.togglePlayerMicrophone(a)};return(a,t)=>{const w=Qt,B=Xt;return r(),F("main",_a,[n(e(jt),{ref_key:"viewVeeForm",ref:o,class:"h-full w-full","validation-schema":e(Ut),"initial-values":e(s)},{default:l(()=>{var O,K,Fe,Ie,Ae,Te;return[i("div",wa,[!e(C)&&e(A)?(r(),E(ee,{key:0,size:"small",variant:"flat",style:{background:"rgba(var(--color-rgb), 0.1)","padding-left":"8px"}},{default:l(()=>[i("div",ya,[e(te)?H("",!0):(r(),E(G,{key:0,size:"18",class:"text-color mr-1"},{default:l(()=>[W(y(e(k)?e(Vt):e(kt)),1)]),_:1})),i("span",ha,y(e(A).name),1)]),e(te)?H("",!0):(r(),E($e,{key:0,activator:"parent",width:"324",offset:"5",location:"bottom",class:"select-menu","onUpdate:modelValue":t[0]||(t[0]=d=>k.value=d)},{default:l(()=>[n(Re,{width:"200",style:{border:"1px solid var(--background-timeline)","border-radius":"10px"},elevation:"3"},{default:l(()=>{var d;return[i("div",xa,[(r(!0),F(ve,null,ue(((d=e(j))==null?void 0:d.result)||[],(q,de)=>(r(),E(we,{key:de,active:q._id===e(A)._id,value:q,style:{"border-radius":"5px !important"},disabled:e(oe),onClick:Z(Ve=>dt(q),["prevent"])},{default:l(()=>[i("div",ba,[i("span",Va,y(q.name),1)])]),_:2},1032,["active","value","disabled","onClick"]))),128))])]}),_:1})]),_:1}))]),_:1})):e(C)&&e(s).name?(r(),E(ee,{key:1,size:"small",variant:"flat",style:{background:"rgba(var(--color-rgb), 0.1)","padding-left":"8px"}},{default:l(()=>[i("div",ka,[i("span",Ca,y(e(s).name),1)])]),_:1})):H("",!0),Da,!e(te)&&((O=e(A))==null?void 0:O.type)==="dnd"?(r(),E(ee,{key:2,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[1]||(t[1]=Z(d=>e(m).camview.dragDisabled=!e(m).camview.dragDisabled,["prevent"]))},{default:l(()=>[n(G,{size:"18"},{default:l(()=>[W(y(e(m).camview.dragDisabled?e(Ct):e(Dt)),1)]),_:1})]),_:1})):H("",!0),!e(te)&&e(A)?(r(),E(ee,{key:3,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[2]||(t[2]=Z(d=>vt(),["prevent"]))},{default:l(()=>[n(G,{size:"22"},{default:l(()=>[W(y(e($)?e($t):e(zt)),1)]),_:1})]),_:1})):H("",!0),!e(te)&&e(A)&&e(be)?(r(),E(ee,{key:4,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[3]||(t[3]=Z(d=>h.value=!0,["prevent"]))},{default:l(()=>[n(G,{size:"22"},{default:l(()=>[W(y(e(Qe)),1)]),_:1})]),_:1})):H("",!0),!e(te)&&e(A)?(r(),E(ee,{key:5,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[4]||(t[4]=Z(d=>ut(),["prevent"]))},{default:l(()=>[n(G,{size:"22"},{default:l(()=>[W(y(e(xe)?e(Mt):e(Pt)),1)]),_:1})]),_:1})):H("",!0),!e(te)&&e(A)?(r(),E(ee,{key:6,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[5]||(t[5]=Z(d=>ct(),["prevent"]))},{default:l(()=>[n(G,{size:"20"},{default:l(()=>[W(y(e(St)),1)]),_:1})]),_:1})):H("",!0),!e(z)&&!e(S)&&!e(C)&&e(A)?(r(),E(ee,{key:7,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text",onClick:t[6]||(t[6]=Z(d=>{var q;return((q=e(A))==null?void 0:q.type)==="dnd"?z.value=!e(z):S.value=!e(S)},["prevent"]))},{default:l(()=>[n(G,{size:"19"},{default:l(()=>[W(y(e(Ft)),1)]),_:1})]),_:1})):H("",!0),!e(z)&&!e(S)&&!e(C)?(r(),E(ee,{key:8,class:"disabled-text mr-2",size:"30",rounded:"",density:"compact",variant:"text"},{default:l(()=>[n(G,{size:"22"},{default:l(()=>[W(y(e(je)),1)]),_:1}),n($e,{activator:"parent",offset:"5",location:"bottom",class:"select-menu"},{default:l(()=>[n(Re,{width:"200",style:{border:"1px solid var(--background-timeline)","border-radius":"10px"},elevation:"3"},{default:l(()=>[i("div",$a,[n(we,{style:{"border-radius":"5px !important"},disabled:e(oe),onClick:t[7]||(t[7]=Z(d=>v.value=!0,["prevent"]))},{default:l(()=>[i("div",za,[i("div",Ma,[n(G,{size:"20",class:"text-passive"},{default:l(()=>[W(y(e(It)),1)]),_:1})]),i("span",Pa,y(a.$t("views.camview.new_view")),1)])]),_:1},8,["disabled"]),Sa,n(we,{style:{"border-radius":"5px !important"},disabled:e(oe),onClick:t[8]||(t[8]=Z(d=>_.value=!0,["prevent"]))},{default:l(()=>[i("div",Fa,[i("div",Ia,[n(G,{size:"20",class:"text-passive"},{default:l(()=>[W(y(e(At)),1)]),_:1})]),i("span",Aa,y(a.$t("views.camview.new_dnd")),1)])]),_:1},8,["disabled"])])]),_:1})]),_:1})]),_:1})):H("",!0),e(S)||e(C)?(r(),F("div",Ta,[n(ee,{class:"disabled-text mr-2",size:"small",variant:"flat",border:"",onClick:t[9]||(t[9]=Z(d=>e(S)?S.value=!1:C.value=!1,["prevent"]))},{default:l(()=>[W(y(a.$t("components.form.button.cancel")),1)]),_:1}),n(ee,{disabled:e(c).every(d=>d.lastDroppedCamera===void 0),class:"disabled-text",size:"small",color:"#df2a4c",variant:"flat",border:"",onClick:t[10]||(t[10]=Z(d=>it(),["prevent"]))},{default:l(()=>[i("span",Ea,y(a.$t("components.form.button.save")),1)]),_:1},8,["disabled"])])):H("",!0)]),i("div",{class:me(["camview-container",{"px-0":e(M)}])},[i("div",Ra,[e(oe)||!e(j)?(r(),F("div",Ba,[n(Tt,{color:"#df2a4c",indeterminate:""})])):(r(),F("div",La,[!e(C)&&!e(S)&&(e(z)||((K=e(A))==null?void 0:K.type)==="dnd")?(r(),F("div",Ua,[n(Zt,{ref_key:"dndRef",ref:x,cameras:((Fe=e(A))==null?void 0:Fe.cameras)||[],"db-cameras":((Ie=e(p))==null?void 0:Ie.result)||[],onDrag:st},null,8,["cameras","db-cameras"])])):!e(z)&&(e(C)||e(S)||((Ae=e(A))==null?void 0:Ae.type)==="view")?(r(),F("div",Qa,[(r(),E(ga,{ref_key:"viewRef",ref:b,key:e(m).camview.viewid+(e(C)?"-new":e(S)?"-edit":"-view"),cameras:((Te=e(p))==null?void 0:Te.result)||[],"edit-mode":e(C)||e(S),"view-size":e(C)?e(s).viewSize:e(De),title:e(s).name,cards:e(c),onDrop:lt,onRemove:ot},null,8,["cameras","edit-mode","view-size","title","cards"]))])):(r(),F("div",ja,[i("span",Oa,y(a.$t("views.camview.no_views_configured")),1)]))]))])],2),n(w,{modelValue:e(v),"onUpdate:modelValue":t[12]||(t[12]=d=>ke(v)?v.value=d:null),title:a.$t("components.dialog.title.new_view"),"confirm-text":"components.form.button.next",loading:e(oe),onConfirm:t[13]||(t[13]=d=>nt())},{content:l(()=>[i("div",Wa,[i("div",Ha,[n(e(Ue),{modelValue:e(s).name,"onUpdate:modelValue":t[11]||(t[11]=d=>e(s).name=d),name:"name"},{default:l(({field:d,errorMessage:q,errors:de})=>[i("label",Na,y(a.$t("components.form.label.name")),1),n(Be,Ee({loading:e(oe),variant:"outlined",name:"name",type:"text",density:"compact"},d,{error:de.length>0,"error-messages":q}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),n(Le,{class:"my-5"}),e(L)?(r(),F("span",Xa,y(a.$t("components.form.error.no_view_selected")),1)):H("",!0),i("div",Ya,[i("div",qa,[(r(!0),F(ve,null,ue(e(V),d=>(r(),F("div",{key:d,class:"view-select-item h-full w-full",onClick:Z(q=>e(s).viewSize=d,["prevent"])},[i("div",{class:me(["view-select-item-icon w-full h-full p-3",{"selected-view":e(s).viewSize===d}])},[n(G,{class:"disabled-text",style:{width:"100%",height:"100%"}},{default:l(()=>[W(y(`$cuiGrid${d}`),1)]),_:2},1024)],2),i("span",{class:me(["view-select-item-label disabled-text mt-2 px-2 py-1",{"selected-view-label":e(s).viewSize===d}])},y(d)+" "+y(a.$t("views.camview.cameras")),3)],8,Ga))),128))])])])]),_:1},8,["modelValue","title","loading"]),n(w,{modelValue:e(_),"onUpdate:modelValue":t[16]||(t[16]=d=>ke(_)?_.value=d:null),title:a.$t("components.dialog.title.new_dnd"),"confirm-text":"components.form.button.save",loading:e(oe),onConfirm:t[17]||(t[17]=d=>rt())},{content:l(()=>[i("div",Ja,[i("div",Ka,[n(e(Ue),{modelValue:e(s).name,"onUpdate:modelValue":t[14]||(t[14]=d=>e(s).name=d),name:"name"},{default:l(({field:d,errorMessage:q,errors:de})=>[i("label",Za,y(a.$t("components.form.label.name")),1),n(Be,Ee({loading:e(oe),variant:"outlined",name:"name",type:"text",density:"compact"},d,{error:de.length>0,"error-messages":q}),null,16,["loading","error","error-messages"])]),_:1},8,["modelValue"])]),n(Le,{class:"mb-10 mt-5"}),e(P)?(r(),F("span",es,y(a.$t("components.form.error.no_cameras_selected")),1)):H("",!0),n(Oe,{selected:e(f),"onUpdate:selected":t[15]||(t[15]=d=>ke(f)?f.value=d:null),"select-strategy":"classic",class:"py-0 mb-5",density:"compact"},{default:l(()=>{var d;return[(r(!0),F(ve,null,ue(((d=e(p))==null?void 0:d.result)||[],(q,de)=>(r(),E(we,{key:de,value:q,active:e(f).some(Ve=>Ve.name===q.name)},{prepend:l(({isActive:Ve})=>[n(Et,{start:""},{default:l(()=>[n(Rt,{"model-value":Ve,color:"#df2a4c"},null,8,["model-value"])]),_:2},1024)]),default:l(()=>[n(We,null,{default:l(()=>[W(y(q.name),1)]),_:2},1024)]),_:2},1032,["value","active"]))),128))]}),_:1},8,["selected"])])]),_:1},8,["modelValue","title","loading"]),n(w,{modelValue:e(h),"onUpdate:modelValue":t[18]||(t[18]=d=>ke(h)?h.value=d:null),title:a.$t("components.dialog.title.intercom"),loading:e(oe),"hide-confirm-button":""},{content:l(()=>[i("div",ts,[i("span",null,y(a.$t("components.dialog.message.intercom_info")),1),n(B,{onListening:mt})])]),_:1},8,["modelValue","title","loading"])]}),_:1},8,["validation-schema","initial-values"])])}}}),Xs=ie(as,[["__scopeId","data-v-ebd2ec2a"]]);export{Xs as default};
|
|
@@ -1 +1 @@
|
|
|
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-
|
|
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-C2N2tbw_.js";import{_ as ge}from"./VConfigEditor.vue_vue_type_script_setup_true_lang-DDxLGgGL.js";import{r as l,u as e,F as de,c as I,w as K,x as pe,e as c,f as O,O as d,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-CIFymae3.js";import{_ as be,$ as we,I as Qe,H as Ve}from"./@mdi-jq8isxax.js";import{i as x}from"./vue3-toastify-Cy6dUyKO.js";import{u as xe,a as N,b as k}from"./@tanstack-DPd4-F0t.js";import{r as ke}from"./system-C1OmXhti.js";import{u as qe}from"./ui-CdiPlYMM.js";import{s as ze}from"./utils-BvINh1mj.js";import{s as U}from"./pinia-B_gX_pHL.js";import{P as Se,Q as Re,e as y,b as q}from"./vuetify-B_vGZaGi.js";import"./vue-inline-svg-DDdr3aAz.js";import"./vue-i18n-CHUfunSC.js";import"./@intlify-YW_pt133.js";import"./axios-BI2i94Vb.js";import"./vue-router-C55prZ5l.js";import"./@vueuse-DbPVvJxZ.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./vee-validate-DHjm38DY.js";import"./@vee-validate-CmTVjJBY.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-DmqiRszP.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-CbEkwI4D.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"},$e={key:0,class:"flex w-full h-full justify-center items-center fixed top-0 left-0",style:{"z-index":"9000"}},Ie=de({__name:"Config",setup(n){const t=new Be,o=re(),w=qe(),{extraSmallMobileActive:z}=ce(),{theme:G}=U(o),{uiSettings:u}=U(w),g=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=>{g.value==="camera.ui"?(await Z({configData:_.value}),b&&(L.value=!0,ke())):await W({configData:v.value}),b||(h.value=!1)},ee=()=>{g.value=g.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,$=ge,ae=ue;return c(),O("main",De,[(c(),d(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(g)==="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(g)==="camera.ui"?(c(),d(y,{key:0,size:"20"},{default:a(()=>[p(f("$cuiLogo"))]),_:1})):(c(),d(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(),d(ve,null,{default:a(()=>[e(g)==="camera.ui"?P((c(),d($,{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(),d($,{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-7cc49202"]]);export{bt as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.page-title[data-v-b446efca]{font-size:1.2rem;font-weight:600}.text-editor-buttons[data-v-b446efca]{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-b446efca]:hover{opacity:1}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{z as
|
|
1
|
+
import{z as O,f as U,w as E,B as $,d as N}from"./main-C2N2tbw_.js";import{F as P,r as k,c as z,a3 as h,U as j,e as H,f as F,M as t,u as o,j as S,R as n,X as q,i as G,m as W,V as f,T as m,q as y}from"./@vue-CIFymae3.js";import{_ as X,a0 as Z,a1 as J,I as K,H as Y}from"./@mdi-jq8isxax.js";import{S as oo}from"./system-C1OmXhti.js";import{V as eo}from"./VConsole-D85lNxwk.js";import{u as to}from"./ui-CdiPlYMM.js";import{s as no}from"./pinia-B_gX_pHL.js";import{P as ao,Q as so,e as g,b as _}from"./vuetify-B_vGZaGi.js";import"./vue-inline-svg-DDdr3aAz.js";import"./vue3-toastify-Cy6dUyKO.js";import"./vue-i18n-CHUfunSC.js";import"./@intlify-YW_pt133.js";import"./axios-BI2i94Vb.js";import"./@tanstack-DPd4-F0t.js";import"./vue-router-C55prZ5l.js";import"./@vueuse-DbPVvJxZ.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./vee-validate-DHjm38DY.js";import"./@vee-validate-CmTVjJBY.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-DmqiRszP.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-CbEkwI4D.js";import"./@popperjs-BQBsAJpH.js";const lo={class:"w-full h-full"},io=P({__name:"Console",setup(ro){const u=new oo,L=O(),V=to(),{extraSmallMobileActive:x}=U(),{uiSettings:i}=no(V),v=k(null),c=k(),d=k(!1),C=z(()=>({fontSize:i.value.console.zoom}));u.toggleQueryActivator("downloadLogQuery",!1);const{data:w,isLoading:Q,suspense:B}=u.downloadLogQuery(),{mutate:T,isPending:M}=u.clearLogQuery(),p=z(()=>Q.value||M.value),R=async()=>{T(void 0,{onSuccess:()=>{d.value=!1}})},D=async()=>{try{if(u.toggleQueryActivator("downloadLogQuery",!0),await B(),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{u.toggleQueryActivator("downloadLogQuery",!1)}},I=()=>{i.value.console.zoom!==8&&i.value.console.zoom--},A=()=>{i.value.console.zoom!==20&&i.value.console.zoom++};return h(()=>{var a,e,s,l;c.value=L.connectToNamespace("/logs"),(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
2
|
\rWebsocket failed to connect! Is the server running?
|
|
3
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
|
|
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=E;return H(),F("main",lo,[t(eo,{ref_key:"consoleRef",ref:v,class:"text-editor",options:o(C)},null,8,["options"]),S("div",{class:"text-editor-buttons flex flex-row justify-center",style:q(o(x)?`bottom: calc(1rem + ${o($).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(D,["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=>d.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(A,["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(I,["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(d),"onUpdate:modelValue":e[1]||(e[1]=l=>G(d)?d.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=>R())},{content:n(()=>[S("span",null,m(a.$t("components.dialog.message.confirm_clear_log")),1)]),_:1},8,["modelValue","title","loading"])])}}}),Po=N(io,[["__scopeId","data-v-b446efca"]]);export{Po as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as ie,a as de,b as me,i as ce,g as pe,c as ue,r as fe,_ as ve,d as he}from"./main-
|
|
1
|
+
import{u as ie,a as de,b as me,i as ce,g as pe,c as ue,r as fe,_ as ve,d as he}from"./main-C2N2tbw_.js";import{F as ge,r as u,b as be,c as G,w as _e,e as f,f as R,j as t,u as e,O as z,q as B,l as E,T as m,N as we,Q as ye,M as l,R as c,n as xe,i as V,m as S,V as L,ai as ke,aj as Ve}from"./@vue-CIFymae3.js";import{m as H,a as J}from"./@mdi-jq8isxax.js";import{F as b,a as Se}from"./vee-validate-DHjm38DY.js";import{I as $e}from"./vue-inline-svg-DDdr3aAz.js";import{a as Ce}from"./vue-router-C55prZ5l.js";import{s as N}from"./pinia-B_gX_pHL.js";import{b as $,w as Fe,x as P,y as K,d as T,c as O,z as X}from"./vuetify-B_vGZaGi.js";import"./vue3-toastify-Cy6dUyKO.js";import"./vue-i18n-CHUfunSC.js";import"./@intlify-YW_pt133.js";import"./axios-BI2i94Vb.js";import"./@tanstack-DPd4-F0t.js";import"./@vueuse-DbPVvJxZ.js";import"./nprogress-QK5AFhFr.js";import"./@xterm-LO7TPXYg.js";import"./@vee-validate-CmTVjJBY.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-DmqiRszP.js";import"./tslib-9k7AwCpt.js";import"./v-calendar-CbEkwI4D.js";import"./@popperjs-BQBsAJpH.js";const q=_=>(ke("data-v-0cbf5310"),_=_(),Ve(),_),Ie={class:"w-full h-full"},Ue={class:"firststeps-progress flex flex-col items-center p-5 w-full"},je={class:"firststeps-progress-inner pt-safe flex flex-col h-full w-full"},Me={class:"flex flex-row items-center"},Re={class:"firststeps-progress-title mt-3"},ze={class:"firststeps-progress-text mt-1"},Be={class:"flex flex-row gap-2 mt-3 mb-3"},Ee={class:"firststeps flex flex-col items-center p-5 w-full h-full hide-scrollbar"},Le={class:"relative"},Ne={for:"theme",class:"v-label"},Pe=q(()=>t("div",{class:"py-2"},null,-1)),Te={class:"ml-auto flex"},Oe=q(()=>t("div",{class:"py-3"},null,-1)),qe={class:"relative"},Ae={for:"language",class:"v-label"},De={class:"flex flex-row relative"},We={class:"w-100 mr-5"},Qe={for:"username",class:"v-label"},Ge={class:"image-upload ml-auto mt-3"},He={for:"file-input"},Je={class:"relative mt-5"},Ke={for:"password",class:"v-label"},Xe={class:"relative"},Ye={for:"password",class:"v-label"},Ze={class:"ml-auto flex"},es=q(()=>t("div",{class:"py-3"},null,-1)),ss={class:"ml-auto flex"},ts={class:"w-full flex flex-col justify-center items-center"},os={class:"text-center mt-10 firststeps-info"},as=ge({__name:"FirstSteps",setup(_){const C=ie(),Y=de(),Z=me(),ee=Ce(),{t:F}=ce.global,{loading:v,loginState:se}=N(C),{locale:I,languages:te}=N(Z),{colors:oe,theme:U,autoMode:w}=N(Y),n=u(0),A=u(),j=u(),y=u(!1),x=u(!1),h=u(),D=u(!1),k=be([{title:F("views.firststeps.step_appearance")},{title:F("views.firststeps.step_account")},{title:F("views.firststeps.step_finish")}]),ae=G(()=>Math.round((n.value+1)/k.length*100)),M=G(()=>n.value===k.length-1);_e(n,o=>{o===0&&(D.value=!1)});const le=async o=>{var d;const s=(d=o.target)==null?void 0:d.files;j.value=s==null?void 0:s[0],A.value=await fe(o)},re=async()=>{var o,s;try{await C.logout()}catch(d){console.error(((s=(o=d.response)==null?void 0:o.data)==null?void 0:s.message)??d.message??d)}},W=async()=>{var o,s,d,a;if(n.value>0){const r=(o=h.value)==null?void 0:o.getValues();if(r&&!r.password){(s=h.value)==null||s.setFieldError("password","Required"),(d=h.value)==null||d.setFieldError("passwordConfirm","Required");return}const i=await((a=h.value)==null?void 0:a.validate());i!=null&&i.valid&&!M.value&&n.value++}else n.value++},ne=async o=>{var s,d;if(D.value=!0,M.value){let a;const r={...o};r.firstLogin=!1,delete r.upload;try{v.value=!0,j.value&&(a=new FormData,a.append("upload",j.value)),await C.updateUser(r,a,!0),ee.push({path:"/cameras"})}catch(i){console.error(((d=(s=i.response)==null?void 0:s.data)==null?void 0:d.message)??i.message??i)}}},Q=()=>{n.value>0&&n.value--};return(o,s)=>{const d=ve;return f(),R("main",Ie,[t("div",Ue,[t("div",je,[t("div",Me,[e(n)>0?(f(),z($,{key:0,density:"compact",class:"firststeps-button no-drag",variant:"tonal",color:"tonal",text:o.$t("components.form.button.previous"),loading:e(v),onClick:s[0]||(s[0]=B(a=>Q(),["prevent"]))},null,8,["text","loading"])):E("",!0),e(n)===0?(f(),z($,{key:1,density:"compact",class:"firststeps-button no-drag",variant:"tonal",color:"white",text:o.$t("components.form.button.logout"),loading:e(v),onClick:s[1]||(s[1]=B(a=>re(),["prevent"]))},null,8,["text","loading"])):E("",!0),e(M)?E("",!0):(f(),z($,{key:2,density:"compact",class:"firststeps-button ml-auto no-drag",variant:"tonal",color:"white",text:o.$t("components.form.button.next"),loading:e(v),onClick:s[2]||(s[2]=B(a=>W(),["prevent"]))},null,8,["text","loading"]))]),t("h1",Re,m(e(k)[e(n)].title),1),t("h1",ze,[t("b",null,m(e(ae))+"%",1),t("span",null,m(o.$t("views.firststeps.complete")),1)]),t("div",Be,[(f(!0),R(we,null,ye(e(k),(a,r)=>(f(),R("div",{key:r,class:xe(["firststeps-step-bar",{"firststeps-step-bar-active":e(n)===r}])},null,2))),128))])])]),t("div",Ee,[l(e(Se),{ref_key:"userForm",ref:h,class:"firststeps-form flex flex-col h-full w-full","validation-schema":e(ue),onSubmit:s[10]||(s[10]=a=>ne(a))},{default:c(()=>[l(Fe,{modelValue:e(n),"onUpdate:modelValue":s[9]||(s[9]=a=>V(n)?n.value=a:null),class:"window",touch:{left:W,right:Q}},{default:c(()=>[l(P,{value:0,transition:"fade","reverse-transition":"fade-reverse",disabled:!1},{default:c(()=>[t("div",Le,[t("label",Ne,m(o.$t("components.form.label.theme")),1),l(K,{modelValue:e(U),"onUpdate:modelValue":s[3]||(s[3]=a=>V(U)?U.value=a:null),variant:"outlined",name:"theme","hide-details":"",density:"compact",items:e(oe),disabled:e(w)},null,8,["modelValue","items","disabled"])]),Pe,t("div",null,[t("div",Te,[l(T,{modelValue:e(w),"onUpdate:modelValue":s[4]||(s[4]=a=>V(w)?w.value=a:null),color:"#df2a4c",type:"checkbox",label:o.$t("components.form.label.system_preference"),"hide-details":""},null,8,["modelValue","label"])])]),Oe,t("div",qe,[t("label",Ae,m(o.$t("components.form.label.language")),1),l(K,{modelValue:e(I),"onUpdate:modelValue":s[5]||(s[5]=a=>V(I)?I.value=a:null),variant:"outlined",name:"language","hide-details":"",density:"compact",items:e(te)},null,8,["modelValue","items"])])]),_:1}),l(P,{value:1,transition:"fade","reverse-transition":"fade-reverse",disabled:!1},{default:c(()=>{var a;return[t("div",De,[t("div",We,[t("label",Qe,m(o.$t("components.form.label.username")),1),l(O,{variant:"outlined",type:"text",disabled:"","hide-details":"",density:"compact",value:(a=e(se).user)==null?void 0:a.username},null,8,["value"])]),t("div",Ge,[t("label",He,[l(d,{src:e(A),size:"4rem",style:{"border-radius":"4rem",border:"1px solid var(--border)"}},null,8,["src"]),l(e(b),{id:"file-input",type:"file",name:"upload",accept:"image/png,image/jpeg,image/jpg",onChange:s[6]||(s[6]=r=>le(r))})])])]),t("div",Je,[t("label",Ke,m(o.$t("components.form.label.new_password")),1),l(e(b),{name:"password"},{default:c(({field:r,errorMessage:i,errors:p})=>[l(O,S({variant:"outlined"},r,{name:"password",type:e(y)?"text":"password",error:p.length>0,"error-messages":i,density:"compact","append-inner-icon":e(y)?e(H):e(J),"onClick:appendInner":s[7]||(s[7]=g=>y.value=!e(y))}),null,16,["type","error","error-messages","append-inner-icon"])]),_:1})]),t("div",Xe,[t("label",Ye,m(o.$t("components.form.label.new_password_confirm")),1),l(e(b),{name:"passwordConfirm"},{default:c(({field:r,errorMessage:i,errors:p})=>[l(O,S({variant:"outlined"},r,{name:"passwordConfirm",type:e(x)?"text":"password",error:p.length>0,"error-messages":i,density:"compact","append-inner-icon":e(x)?e(H):e(J),"onClick:appendInner":s[8]||(s[8]=g=>x.value=!e(x))}),null,16,["type","error","error-messages","append-inner-icon"])]),_:1})]),t("div",null,[t("div",Ze,[l(e(b),{name:"oneLogin",type:"checkbox","checked-value":!0,"unchecked-value":!1},{default:c(({field:r,errorMessage:i,errors:p,value:g})=>[l(T,S(r,{name:"oneLogin",color:"#df2a4c",type:"checkbox",error:p.length>0,"error-messages":i,value:g,label:o.$t("components.form.label.one_login"),"hide-details":""}),null,16,["error","error-messages","value","label"])]),_:1})]),l(X,{theme:"dark",density:"compact",variant:"tonal",style:{"font-size":"0.7rem",color:"var(--color-disabled)"}},{default:c(()=>[L(m(o.$t("components.form.hint.one_login")),1)]),_:1})]),es,t("div",null,[t("div",ss,[l(e(b),{name:"rememberMe",type:"checkbox","checked-value":!0,"unchecked-value":!1},{default:c(({field:r,errorMessage:i,errors:p,value:g})=>[l(T,S({name:"rememberMe"},r,{color:"#df2a4c",type:"checkbox",error:p.length>0,"error-messages":i,value:g,label:o.$t("components.form.label.remember_me"),"hide-details":""}),null,16,["error","error-messages","value","label"])]),_:1})]),l(X,{class:"mb-safe",theme:"dark",density:"compact",variant:"tonal",style:{"font-size":"0.7rem",color:"var(--color-disabled)"}},{default:c(()=>[L(m(o.$t("components.form.hint.remember_me")),1)]),_:1})])]}),_:1}),l(P,{value:2,transition:"fade","reverse-transition":"fade-reverse",disabled:!1},{default:c(()=>[t("div",ts,[l(e($e),{src:e(pe)("logo_animated.svg"),width:"78px",height:"84px",title:"camera.ui","aria-label":"camera.ui"},null,8,["src"]),t("p",os,m(o.$t("views.firststeps.finish_message")),1),l($,{class:"mt-7 text-white",type:"submit",elevation:"1",color:"#df2a4c",loading:e(v)},{default:c(()=>[L(m(o.$t("views.firststeps.enjoy")),1)]),_:1},8,["loading"])])]),_:1})]),_:1},8,["modelValue","touch"])]),_:1},8,["validation-schema"])])])}}}),Rs=he(as,[["__scopeId","data-v-0cbf5310"]]);export{Rs as default};
|