import{d as U,G as z,u as G,r as M,i as O,I as x,o as r,c as s,ab as j,w as a,B as m,t as C,a as n,x as d,n as b,q as A,O as H,P as q,l as f,L as F,f as J,ac as Q,ad as Y,C as K,ae as W,af as X}from"./Bec4VrUZ.js";import{_ as Z,a as ee}from"./DrhfnlRd.js";import{u as te,_ as ne,f as E,g as $,h as ae,S as oe}from"./DjnDAgBY.js";import{T as re}from"./DdXuVRc0.js";import{P as v}from"./BDD9jxpl.js";import{u as se}from"./Ca8cfWoT.js";import{u as ie}from"./biZa0g-v.js";import"./CjNOkkNb.js";import"./pa0Yiut9.js";import"./CMEN3q7D.js";import"./lrP1UiDi.js";import"./BnlKemx_.js";import"./CJHI1v1m.js";import"./DlzBG4h5.js";import"./CujFRAzq.js";import"./p-WCsTrQ.js";import"./CnSdiPgf.js";(function(){try{var l=typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},p=new l.Error().stack;p&&(l._sentryDebugIds=l._sentryDebugIds||{},l._sentryDebugIds[p]="2629de2c-4ec5-4d10-b3f2-fc21c6bdfdef",l._sentryDebugIdIdentifier="sentry-dbid-2629de2c-4ec5-4d10-b3f2-fc21c6bdfdef")}catch{}})();const de={key:1,class:"font-bold text-red-600"},le={class:"flex flex-wrap items-center gap-2 mt-2 overflow-hidden"},Ne=U({__name:"Cameras",setup(l){const{remove:p,cameras:i,liveCameraIds:P,onResult:ue}=se(),g=z(),u=G(),c=M({mode:u.params.id!=="create"?v.UPDATE:v.CREATE,panel:u.params.id&&u.params.id.length>0}),{cann:T}=O(),D=x(()=>u.params.id),{studio:y,server:ce,config:me,ready:fe,trigger:S,state:pe}=te({socket:!0,redirectToStudio:!0,cb:()=>{}}),k=x(()=>{if(u.params.id)return i.value.find(o=>{var t;return o.id===((t=u.params.id)==null?void 0:t.toString())})}),I=()=>{g.push({name:"commandos.cameras"})},_=async(o=null)=>{c.value.panel=!0,c.value.mode=o?v.UPDATE:v.CREATE,await g.push({name:"commandos.camera",params:{id:(o==null?void 0:o.id)??"create"}}),window.focus()},N=ie(),V=async o=>{if(!T("camera.delete").value)return;await N({title:"Are you sure?",message:`Deleting ${o.name} will also detach its triggering functionality from Audio Triggers`,type:"danger",acceptText:`Yes, delete cam ${o.name}`})&&(await p(o.id),S.value(ae.LoadCameras,{receiver:{client:oe.Core},payload:{}}),_(),c.value.panel=!1)};return(o,t)=>{const w=F,h=Z,B=ne,L=J;return r(),s(re,{modelValue:c.value,"onUpdate:modelValue":t[2]||(t[2]=e=>c.value=e),"main-title":"Camera angles","main-button-text":"Add Camera","main-button-license":"studio.camera.create","main-button-license-n-c":n(i).length+1,"main-button-action":_,onClosePanel:I},j({fabs:a(()=>[n(i)?(r(),s(w,{key:0,variant:"outline",onClick:t[0]||(t[0]=e=>n(g).push({name:"studio.advanced.camera",params:{studio_id:n(y).id}}))},{default:a(()=>t[3]||(t[3]=[m(" Settings ")])),_:1})):d("",!0)]),mainContent:a(()=>[n(i).length<1?(r(),b("div",{key:0,class:"col-span-12 mx-4 mt-4 flex cursor-pointer items-center justify-center rounded-md border-2 border-dashed border-border bg-muted p-6 py-16 hover:bg-accent",onClick:t[1]||(t[1]=e=>_(null))},t[4]||(t[4]=[A("p",{class:"block text-center text-sm text-muted-foreground"}," No cameras found ",-1)]))):d("",!0),n(i)?(r(),s(h,{key:1,divider:"",outlined:""},{default:a(()=>[(r(!0),b(q,null,H(n(i),e=>(r(),s(ee,{key:e.id,divider:"",onClick:R=>_(e),clickable:"",class:"overflow-x-hidden",selected:D.value===e.id},{before:a(()=>[f(n(Q),{class:"mx-2 text-muted-foreground size-6"})]),title:a(()=>[m(C(e.name)+" ",1),e.lock?(r(),s(n(Y),{key:0,class:"size-4 text-muted-foreground"})):d("",!0),n(P).includes(e.id)?(r(),b("span",de,"LIVE")):d("",!0)]),description:a(()=>[A("div",le,[e.core.switcher_id===null&&e.core.action===n(E).Switcher||e.core.action===n(E).Playout?(r(),s(K,{key:0},{default:a(()=>t[5]||(t[5]=[m(" Old Commando Detected! ")])),_:1})):d("",!0),f($,{prepend:"pre",cm:e.pre},null,8,["cm"]),f($,{prepend:"core",cm:e.core},null,8,["cm"])])]),after:a(()=>[c.value.panel?d("",!0):(r(),s(w,{key:0,variant:"none",onClick:W(R=>V(e),["prevent","stop"])},{default:a(()=>[f(n(X),{class:"size-5"})]),_:2},1032,["onClick"]))]),_:2},1032,["onClick","selected"]))),128))]),_:1})):n(y)?(r(),s(B,{key:2,variant:"warning"},{default:a(()=>[m(" No camera's found in current studio "+C(n(y).name),1)]),_:1})):d("",!0)]),panelHeaderCreate:a(()=>[t[6]||(t[6]=m(" Create new angle"))]),form:a(()=>[f(L)]),_:2},[k.value?{name:"panelHeaderUpdate",fn:a(()=>{var e;return[m(" Edit camera angle '"+C((e=k.value)==null?void 0:e.name)+"' ",1)]}),key:"0"}:void 0]),1032,["modelValue","main-button-license-n-c"])}}});export{Ne as default};
