UNPKG

@getontime/cli

Version:
3 lines (2 loc) 30.9 kB
import{o as et,h as m,j as e,f as ue,ay as _e,az as tt,aA as ge,aB as nt,aC as st,aD as ot,aE as it,aF as at,aG as rt,aH as lt,aI as K,aJ as ct,aK as ut,as as de,aL as ke,ar as Ce,T as ye,y as dt,av as mt,ah as ft,am as pt,C as Te,aM as F,aN as Ie,aO as ht,aP as xt,aQ as je,aR as we,aS as Me,m as gt,aT as Re,aU as Ct,aV as yt,aW as jt,aX as bt,I as vt}from"./vendor-q6fv0YT2.js";import{P as St}from"./ProtectRoute-BH-QvsU0.js";import{a as Et,b0 as _t,b1 as me,ah as De,m as B,B as N,e as ee,f as L,b2 as k,k as be,b3 as kt,aC as H,b4 as re,b5 as le,ak as te,x as Tt,an as It,aw as wt,O as Mt,P as Ne,b6 as Y,o as Rt,b7 as Dt,b8 as Nt,a$ as zt}from"./index-B81u4hxi.js";import{C as $,u as Ot}from"./useWindowTitle-Bpmo_HzW.js";import{T as ze,O as Oe,S as Wt,M as Pt,C as $t}from"./TimeElements-DbclWDbU.js";import{O as We,T as Ft,u as z,G as Bt}from"./OverviewWrapper-BQb2xl_N.js";import{M as Pe,P as Lt}from"./Modal-BKx0PDGT.js";import{h as Ht,i as U,k as $e,j as Fe,s as fe,S as A,u as At}from"./useRundown-Bn6ZPsz0.js";import{s as ie,E as Kt,M as Ut,G as Gt,u as Be,T as Le,A as Vt}from"./MilestoneEditor-BA0PVIQh.js";import{M as Jt}from"./MultiPartProgressBar-BXdLxJpy.js";import{E as He}from"./EmptyPage-Bc358YpE.js";import{u as qt}from"./useCustomFields-k4piRt9n.js";import{T as Ae}from"./validateEvent-Do8yE_DJ.js";import{D as Z}from"./DelayIndicator-D--91EO3.js";import{p as Ke}from"./parseUserTime-YeFR8t3F.js";import{m as Xt,u as Ue}from"./dateConfig-D7xim1t4.js";import{S as Ge,L as D}from"./EditorUtils-DuKjlUkF.js";import{P as Ve}from"./SwatchPicker-Cm5Eicvv.js";import"./Tooltip-B5vsLcFu.js";import"./offset-R98EXhWK.js";import"./SuperscriptPeriod-DsPdWN_s.js";/* empty css */import"./playbackstate-CPQdnF-k.js";import"./Select-BGGVCKqU.js";import"./useProjectData-DdgKoYzk.js";import"./TimeInput-C8DQoFXv.js";import"./editorSettings-D2f7e1a6.js";import"./getProgress-cLuBFPjh.js";import"./Empty-CJbZxh45.js";import"./rundownUtils-CtVGQDQn.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new t.Error().stack;n&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[n]="c38b2451-8328-4d8b-a9f8-86c7f8c01024",t._sentryDebugIdIdentifier="sentry-dbid-c38b2451-8328-4d8b-a9f8-86c7f8c01024")}catch{}})();function Qt(){const{width:t}=et();return m.useMemo(()=>t<800,[t])}const Yt=m.memo(Zt);function Zt({children:t}){return Qt()?e.jsx(en,{children:t}):e.jsx(tn,{children:t})}function en({children:t}){return e.jsxs(We,{navElements:t,children:[e.jsx(ze,{}),e.jsx(Oe,{})]})}function tn({children:t}){return e.jsxs(We,{navElements:t,children:[e.jsx(Ft,{}),e.jsx(Wt,{shouldFormat:!0}),e.jsx(ze,{}),e.jsx(Oe,{}),e.jsx(Pt,{}),e.jsx($t,{shouldFormat:!0})]})}function nn({entryId:t}){const{data:n}=Ht(),[o,s]=m.useState(null);return m.useEffect(()=>{if(n.order.length===0){s(null);return}const i=n.entries[t];s(i||null)},[t,n.order,n.entries]),U(o)?e.jsx("div",{className:ie.entryEditor,"data-testid":"editor-container",children:e.jsx(Kt,{event:o})}):$e(o)?e.jsx("div",{className:ie.inModal,"data-testid":"editor-container",children:e.jsx(Ut,{milestone:o})}):Fe(o)?e.jsx("div",{className:ie.inModal,"data-testid":"editor-container",children:e.jsx(Gt,{group:o})}):null}const ce=ue(t=>({selectedEntryId:null,setEditableEntry:n=>t({selectedEntryId:n}),clearSelection:()=>t({selectedEntryId:null})})),sn=m.memo(on);function on(){const t=ce(o=>o.selectedEntryId),n=ce(o=>o.clearSelection);return t===null?null:e.jsx(Pe,{isOpen:!0,onClose:n,title:"Edit entry",showCloseButton:!0,bodyElements:e.jsx(nn,{entryId:t})})}const an="_progressOverride_av4z0_17",rn={progressOverride:an};function ln(){const{data:t}=Et(),{current:n,duration:o,timeWarning:s,timeDanger:i}=_t();return e.jsx(Jt,{now:n,complete:o,normalColor:t.normalColor,warning:s,warningColor:t.warningColor,danger:i,dangerColor:t.dangerColor,className:rn.progressOverride,ignoreCssOverride:!0})}function cn(t,n){let o;return(...s)=>{o&&clearTimeout(o),o=setTimeout(()=>{o=null,t(...s)},n)}}const Je=me("cuesheet-sizes"),un=me("cuesheet-hidden"),dn=me("cuesheet-order"),mn=cn(t=>{localStorage.setItem(Je,JSON.stringify(t))},500);function fn(){const[t,n]=m.useState(()=>{try{const s=localStorage.getItem(Je);return s?JSON.parse(s):{}}catch{return{}}});m.useEffect(()=>{mn(t)},[t]);const o=m.useCallback(s=>{n(s)},[]);return{columnSizing:t,setColumnSizing:o}}function qe(t){const[n,o]=_e({key:dn,defaultValue:t.map(i=>i.id)});m.useEffect(()=>{const i=t.map(a=>a.id);i.some(a=>!n.includes(a))&&o(i)},[n,t,o]);const s=m.useCallback(()=>{o(t.map(i=>i.id))},[t,o]);return{columnOrder:n,saveColumnOrder:o,resetColumnOrder:s}}function pn(){const[t,n]=_e({key:un,defaultValue:{}});return{columnVisibility:t,setColumnVisibility:n}}function hn({columns:t,children:n}){const{columnOrder:o,saveColumnOrder:s}=qe(t),i=tt(ge(it,{activationConstraint:{delay:100,tolerance:50}}),ge(ot,{activationConstraint:{delay:100,tolerance:50}})),a=c=>{const{delta:l,active:d,over:r}=c;if(l.y>200||(r==null?void 0:r.id)==null)return;const u=o.indexOf(d.id),p=o.indexOf(r.id);if(p===-1)return;const x=[...o],h=x.splice(u,1);x.splice(p,0,h[0]),s(x)};return e.jsx(nt,{sensors:i,collisionDetection:st,onDragEnd:a,children:n})}const Xe=m.forwardRef(({initialValue:t,allowSubmitSameValue:n,handleUpdate:o,handleCancelUpdate:s},i)=>{const a=m.useRef(null),c=m.useCallback(p=>o(p),[o]),{value:l,onChange:d,onBlur:r,onKeyDown:u}=Be(t,c,a,{allowSubmitSameValue:n,allowKeyboardNavigation:!0,submitOnEnter:!0,submitOnCtrlEnter:!0,onCancelUpdate:s});return m.useImperativeHandle(i,()=>({focus(){var p;(p=a.current)==null||p.focus()},select(){var p;(p=a.current)==null||p.select()},focusParentElement(){var p,x;(x=(p=a.current)==null?void 0:p.parentElement)==null||x.focus()}}),[a]),e.jsx(De,{ref:a,variant:"ghosted",fluid:!0,value:l,onChange:d,onBlur:r,onKeyDown:u})});Xe.displayName="SingleLineCell";const pe=m.memo(Xe),xn=m.memo(gn);function gn({initialValue:t,lockedValue:n,delayed:o,onSubmit:s,children:i}){const[a,c]=m.useState(!1),[l,d]=m.useState(t),r=m.useRef(null),u=m.useRef(null);m.useEffect(()=>{a&&r.current&&(r.current.focus(),r.current.select())},[a]),m.useEffect(()=>{a||d(t)},[t,a]);const p=()=>c(!0),x=()=>{c(!1),setTimeout(()=>{var f;return(f=u.current)==null?void 0:f.focusParentElement()})},h=m.useCallback(f=>{var S,w,j;if(c(!1),f===""){s(f),(S=r.current)==null||S.focusParentElement();return}if(f.startsWith("p")||f.startsWith("+")){s(f),(w=r.current)==null||w.focusParentElement();return}const g=Ke(f);if(g<0||isNaN(g)){d(t),setTimeout(()=>{var _;return(_=u.current)==null?void 0:_.focusParentElement()});return}if(g===t&&n){(j=r.current)==null||j.focusParentElement();return}s(f),d(Number(f)),setTimeout(()=>{var _;return(_=u.current)==null?void 0:_.focusParentElement()})},[t,n,s]),E=B(l);return a?e.jsx(pe,{ref:r,initialValue:E,allowSubmitSameValue:!n,handleUpdate:h,handleCancelUpdate:x}):e.jsx(Le,{onClick:p,onFocus:p,muted:!n,offset:o?"over":void 0,ref:u,children:i})}const Cn="_imageInput_1dtk5_17",yn="_imageCell_1dtk5_24",jn="_overlay_1dtk5_28",bn="_image_1dtk5_17",q={imageInput:Cn,imageCell:yn,overlay:jn,image:bn},vn=m.memo(Sn);function Sn({initialValue:t,readOnly:n,updateValue:o}){const s=a=>{a!==t&&(a!==""&&!a.startsWith("http")||o(a))},i=()=>{t&&window.open(t,"_blank","noopener,noreferrer")};return t?e.jsxs("div",{className:q.imageCell,children:[!n&&e.jsxs("div",{className:q.overlay,children:[e.jsx(N,{onClick:i,children:"Preview"}),e.jsx(N,{variant:"subtle-destructive",onClick:()=>s(""),children:"Delete"})]}),!!t&&e.jsx("img",{loading:"lazy",src:t,className:q.image})]}):e.jsx(De,{variant:"ghosted",className:q.imageInput,fluid:!0,readOnly:n,disabled:n,placeholder:"Paste image URL",onBlur:a=>s(a.currentTarget.value),onKeyDown:a=>{a.key==="Enter"&&s(a.currentTarget.value)},defaultValue:t})}const En="_flag_yy7ty_17",_n={flag:En};function kn(){return e.jsx("div",{className:_n.flag,children:e.jsx(at,{})})}const Tn="_ghostedText_18xqt_17",In="_multiline_18xqt_24",ve={ghostedText:Tn,multiline:In};function he({children:t,multiline:n}){return e.jsx("div",{className:`${ve.ghostedText} ${n?ve.multiline:""}`,children:t})}const Qe=m.memo(wn);function wn({initialValue:t,handleUpdate:n}){const o=m.useRef(null),s=m.useCallback(d=>n(d),[n]),{value:i,onChange:a,onBlur:c,onKeyDown:l}=Be(t,s,o,{submitOnCtrlEnter:!0,allowKeyboardNavigation:!0});return e.jsx(Vt,{inputref:o,variant:"ghosted",fluid:!0,rows:1,value:i,onChange:a,onBlur:c,onKeyDown:l,spellCheck:!1})}const Mn="_muted_1u021_17",Rn="_numeric_1u021_22",Se={muted:Mn,numeric:Rn};function P({numeric:t,children:n}){return e.jsx("span",{className:ee([Se.muted,t&&Se.numeric]),children:n})}const Ye=m.memo(Dn);function Dn({initialValue:t,lockedValue:n,delayed:o,onSubmit:s,children:i}){const[a,c]=m.useState(!1),[l,d]=m.useState(t),r=m.useRef(null),u=m.useRef(null);m.useEffect(()=>{a&&r.current&&(r.current.focus(),r.current.select())},[a]),m.useEffect(()=>{a||d(t)},[t,a]);const p=()=>c(!0),x=()=>{c(!1),setTimeout(()=>{var f;return(f=u.current)==null?void 0:f.focusParentElement()})},h=m.useCallback(f=>{var S,w,j;if(c(!1),f===""){s(f),(S=r.current)==null||S.focusParentElement();return}if(f.startsWith("p")||f.startsWith("+")){s(f),(w=r.current)==null||w.focusParentElement();return}const g=Ke(f);if(g<0||isNaN(g)){d(t),setTimeout(()=>{var _;return(_=u.current)==null?void 0:_.focusParentElement()});return}if(g===t&&n){(j=r.current)==null||j.focusParentElement();return}s(f),d(Number(f)),setTimeout(()=>{var _;return(_=u.current)==null?void 0:_.focusParentElement()})},[t,n,s]),E=L(l);return a?e.jsx(pe,{ref:r,initialValue:E,allowSubmitSameValue:!n,handleUpdate:h,handleCancelUpdate:x}):e.jsx(Le,{onClick:p,onFocus:p,muted:!n,offset:o?"over":void 0,ref:u,children:i})}function Nn({getValue:t,row:n,table:o,column:s}){var f;if(!o.options.meta)return null;const{showDelayedTimes:i,hideTableSeconds:a}=o.options.meta.options,c=a?{format12:"h:mm a",format24:"HH:mm"}:void 0,l=n.original;if(!U(l))return e.jsx(P,{numeric:!0,children:L(t(),c)});const{handleUpdateTimer:d}=o.options.meta,r=g=>d(n.original.id,"timeStart",g),u=t(),p=!l.linkStart,x=i?u+l.delay:u,h=L(x,c);return((f=s.columnDef.meta)==null?void 0:f.canWrite)?e.jsxs(Ye,{initialValue:u,onSubmit:r,lockedValue:p,delayed:l.delay!==0,children:[h,e.jsx(Z,{delayValue:l.delay,tooltipPrefix:B(u)})]}):e.jsxs(P,{numeric:!0,children:[h,e.jsx(Z,{delayValue:l.delay,tooltipPrefix:B(u)})]})}function zn({getValue:t,row:n,table:o,column:s}){var f;if(!o.options.meta)return null;const{showDelayedTimes:i,hideTableSeconds:a}=o.options.meta.options,c=a?{format12:"h:mm a",format24:"HH:mm"}:void 0,l=n.original;if(!U(l))return e.jsx(P,{numeric:!0,children:L(t(),c)});const{handleUpdateTimer:d}=o.options.meta,r=g=>d(n.original.id,"timeEnd",g),u=t(),p=l.timeStrategy===Ae.LockEnd,x=i?u+l.delay:u,h=L(x,c);return((f=s.columnDef.meta)==null?void 0:f.canWrite)?e.jsxs(Ye,{initialValue:u,onSubmit:r,lockedValue:p,delayed:l.delay!==0,children:[h,e.jsx(Z,{delayValue:l.delay,tooltipPrefix:B(u)})]}):e.jsxs(P,{numeric:!0,children:[h,e.jsx(Z,{delayValue:l.delay,tooltipPrefix:B(u)})]})}function On({getValue:t,row:n,table:o,column:s}){var x;if(!o.options.meta)return null;const{hideTableSeconds:i}=o.options.meta.options,a=n.original;if(!U(a))return e.jsx(P,{numeric:!0,children:be(t(),i)});const{handleUpdateTimer:c}=o.options.meta,l=h=>c(n.original.id,"duration",h),d=t(),r=a.timeStrategy===Ae.LockDuration,u=be(d,i);return((x=s.columnDef.meta)==null?void 0:x.canWrite)?e.jsx(xn,{initialValue:d,onSubmit:l,lockedValue:r,children:u}):e.jsx(P,{numeric:!0,children:u})}function Wn({row:t,column:n,table:o}){var c;const s=m.useCallback(l=>{var d;(d=o.options.meta)==null||d.handleUpdate(t.index,n.id,l,!1)},[n.id,t.index,o.options.meta]),i=t.original[n.id];return typeof i!="string"?null:((c=n.columnDef.meta)==null?void 0:c.canWrite)?e.jsx(Qe,{initialValue:i,handleUpdate:s}):e.jsx(he,{multiline:!0,children:i})}function Pn({row:t,column:n,table:o}){var l;const s=m.useCallback(d=>{var r;(r=o.options.meta)==null||r.handleUpdate(t.index,n.id,d,!0)},[n.id,t.index,o.options.meta]),i=t.original;if(fe(i))return null;const a=(l=n.columnDef.meta)==null?void 0:l.canWrite,c=i.custom[n.id];return e.jsx(vn,{initialValue:c,updateValue:s,readOnly:!a})}function Ee({row:t,column:n,table:o}){var c;const s=m.useCallback(l=>{var d;(d=o.options.meta)==null||d.handleUpdate(t.index,n.id,l,!1)},[n.id,t.index,o.options.meta]),i=t.original[n.id];return typeof i!="string"?null:((c=n.columnDef.meta)==null?void 0:c.canWrite)?e.jsx(pe,{initialValue:i,handleUpdate:s}):e.jsx(he,{children:i})}function $n({row:t}){const n=t.original;return!U(n)||!n.flag?null:e.jsx(kn,{})}function Fn({row:t,column:n,table:o}){var l;const s=m.useCallback(d=>{var r;(r=o.options.meta)==null||r.handleUpdate(t.index,n.id,d,!0)},[n.id,t.index,o.options.meta]),i=t.original;if(fe(i))return null;const a=i.custom[n.id]??"";return((l=n.columnDef.meta)==null?void 0:l.canWrite)?e.jsx(Qe,{initialValue:a,handleUpdate:s}):e.jsx(he,{multiline:!0,children:a})}function Bn(t,n,o){var x,h,E,f;const s=[],i=n===k.Edit,a=o?((x=o.options)==null?void 0:x.read)==="full":!0,c=o?((h=o.options)==null?void 0:h.write)==="full":!0,l=(E=o==null?void 0:o.options)!=null&&E.write?new Set(o.options.write.split(",")):new Set,d=(f=o==null?void 0:o.options)!=null&&f.read?new Set(o.options.read.split(",")):new Set,r=g=>a||d.has(g),u=g=>i&&(c||l.has(g));r("flag")&&s.push({accessorKey:"flag",id:"flag",header:"Flag",cell:$n,size:45,minSize:45,meta:{canWrite:u("flag")}}),r("cue")&&s.push({accessorKey:"cue",id:"cue",header:"Cue",cell:Ee,size:75,minSize:40,meta:{canWrite:u("cue")}}),r("timeStart")&&s.push({accessorKey:"timeStart",id:"timeStart",header:"Start",cell:Nn,size:75,minSize:75,meta:{canWrite:u("timeStart")}}),r("timeEnd")&&s.push({accessorKey:"timeEnd",id:"timeEnd",header:"End",cell:zn,size:75,minSize:75,meta:{canWrite:u("timeEnd")}}),r("duration")&&s.push({accessorKey:"duration",id:"duration",header:"Duration",cell:On,size:75,minSize:75,meta:{canWrite:u("duration")}}),r("title")&&s.push({accessorKey:"title",id:"title",header:"Title",cell:Ee,size:250,minSize:75,meta:{canWrite:u("title")}}),r("note")&&s.push({accessorKey:"note",id:"note",header:"Note",cell:Wn,size:250,minSize:75,meta:{canWrite:u("note")}});const p=Object.keys(t);for(let g=0;g<p.length;g++){const S=p[g],w=`custom-${S}`;r(w)&&s.push({accessorKey:S,id:S,header:t[S].label,cell:t[S].type==="text"?Fn:Pn,size:250,minSize:75,meta:{colour:t[S].colour,canWrite:u(w)}})}return s}const Ln="_emptyContainer_1dp7m_17",Hn="_emptyCell_1dp7m_21",An="_empty_1dp7m_17",Kn="_text_1dp7m_30",X={emptyContainer:Ln,emptyCell:Hn,empty:An,text:Kn};function Un({text:t}){return e.jsx("tbody",{className:X.emptyContainer,children:e.jsx("tr",{children:e.jsxs("td",{colSpan:99,className:X.emptyCell,children:[e.jsx(kt,{className:X.empty}),t&&e.jsx("span",{className:X.text,children:t})]})})})}const Gn="_actionColumn_14dju_17",Vn="_indexColumn_14dju_26",Jn="_cuesheet_14dju_37",qn="_resizer_14dju_57",Xn="_tableHeader_14dju_73",O={actionColumn:Gn,indexColumn:Vn,cuesheet:Jn,resizer:qn,tableHeader:Xn};function Qn({columnId:t,colSpan:n,injectedStyles:o,children:s,draggable:i}){const{attributes:a,listeners:c,setNodeRef:l,transform:d,transition:r,isDragging:u}=rt({id:t}),p={...o,zIndex:u?2:"inherit",transform:lt.Translate.toString(d),transition:r};return e.jsxs("th",{ref:l,style:p,colSpan:n,tabIndex:-1,children:[e.jsx("div",{...a,...c,children:s}),i]})}function Yn({colSpan:t,injectedStyles:n,children:o,draggable:s}){return e.jsxs("th",{style:n,colSpan:t,tabIndex:-1,children:[e.jsx("div",{children:o}),s]})}function Ze({header:t}){return e.jsx("div",{onDoubleClick:()=>t.column.resetSize(),onMouseDown:t.getResizeHandler(),onTouchStart:t.getResizeHandler(),className:O.resizer})}function Zn({headerGroup:t,cuesheetMode:n}){const o=z(s=>s.hideIndexColumn);return e.jsxs("tr",{children:[n===k.Edit&&e.jsx("th",{className:O.actionColumn,tabIndex:-1}),!o&&e.jsx("th",{className:O.indexColumn,tabIndex:-1,children:"#"}),e.jsx(ct,{items:t.headers,strategy:ut,children:t.headers.map(s=>{var l,d;const i=(l=s.column.columnDef.meta)==null?void 0:l.colour,c={opacity:((d=s.column.columnDef.meta)==null?void 0:d.canWrite)?1:.6};if(i){const r=H(i);c.backgroundColor=r.backgroundColor,c.color=r.color}return e.jsx(Qn,{columnId:s.column.id,colSpan:s.colSpan,injectedStyles:{width:`calc(var(--header-${s==null?void 0:s.id}-size) * 1px)`,...c},draggable:e.jsx(Ze,{header:s}),children:s.isPlaceholder?null:K(s.column.columnDef.header,s.getContext())},s.column.columnDef.id)})},t.id)]},t.id)}function es({headerGroup:t,cuesheetMode:n}){const o=z(s=>s.hideIndexColumn);return e.jsxs("tr",{children:[n===k.Edit&&e.jsx("th",{className:O.actionColumn,tabIndex:-1}),!o&&e.jsx("th",{className:O.indexColumn,tabIndex:-1,children:"#"}),t.headers.map(s=>{var l,d;const i=(l=s.column.columnDef.meta)==null?void 0:l.colour,c={opacity:((d=s.column.columnDef.meta)==null?void 0:d.canWrite)?1:.6};if(i){const r=H(i);c.backgroundColor=r.backgroundColor,c.color=r.color}return e.jsx(Yn,{columnId:s.column.id,colSpan:s.colSpan,injectedStyles:{width:`calc(var(--header-${s==null?void 0:s.id}-size) * 1px)`,...c},draggable:e.jsx(Ze,{header:s}),children:s.isPlaceholder?null:K(s.column.columnDef.header,s.getContext())},s.column.columnDef.id)})]},t.id)}const ts="_delayRow_a7kwh_37",ns={delayRow:ts};function ss({duration:t,injectedStyles:n,...o}){if(z(a=>a.hideDelays)||t===0)return null;const i=Xt(t,"expanded");return e.jsx("tr",{className:ns.delayRow,"data-testid":"cuesheet-delay",style:n,...o,children:e.jsx("td",{tabIndex:0,children:i})})}const os=m.memo(ss),ne=ue(t=>({isOpen:!1,entryId:null,entryType:null,entryIndex:null,parentId:null,position:{x:0,y:0},flag:null,openMenu:(n,o,s,i,a,c)=>t({isOpen:!0,position:n,entryId:o,entryType:s,entryIndex:i,parentId:a,flag:c}),closeMenu:()=>t({isOpen:!1})})),is="_actionColumn_rj0ie_17",as="_indexColumn_rj0ie_26",rs="_eventRow_rj0ie_37",ls="_firstAfterGroup_rj0ie_47",cs="_skip_rj0ie_50",W={actionColumn:is,indexColumn:as,eventRow:rs,firstAfterGroup:ls,skip:cs};function us({rowId:t,id:n,eventIndex:o,colour:s,isFirstAfterGroup:i,isLoaded:a,isPast:c,groupColour:l,flag:d,skip:r,parent:u,rowIndex:p,table:x,injectedStyles:h,...E}){var G;const{cuesheetMode:f,hideIndexColumn:g}=((G=x.options.meta)==null?void 0:G.options)??{cuesheetMode:k.Edit,hideIndexColumn:!1},S=ne(I=>I.openMenu),{color:w,backgroundColor:j}=H(s),_=re(w),se=le({..._,alpha:_.alpha*.8}),oe=m.useMemo(()=>{if(a)return"#087A27";if(s){const I=re(H(s).backgroundColor);if(I!==null)return le({...I,alpha:I.alpha*.25})}},[s,a]);return e.jsxs("tr",{id:t,className:ee([W.eventRow,r&&W.skip,i&&W.firstAfterGroup,u&&W.hasParent]),style:{...h,opacity:`${c?"0.2":"1"}`,"--user-bg":l??"transparent"},"data-testid":"cuesheet-event",...E,children:[f===k.Edit&&e.jsx("td",{className:W.actionColumn,tabIndex:-1,role:"cell",children:e.jsx(te,{"aria-label":"Options",variant:"ghosted-white",size:"small",onClick:I=>{const V=I.currentTarget.getBoundingClientRect(),C=8+V.y+V.height/2;S({x:V.x,y:C},n,A.Event,p,u,d)},children:e.jsx(de,{})})}),!g&&e.jsx("td",{className:W.indexColumn,style:{backgroundColor:j,color:se},tabIndex:-1,role:"cell",children:o}),x.getRow(t).getVisibleCells().map(I=>e.jsx("td",{style:{width:`calc(var(--col-${I.column.id}-size) * 1px)`,backgroundColor:oe},tabIndex:-1,role:"cell",children:K(I.column.columnDef.cell,I.getContext())},I.id))]})}const ds="_actionColumn_1mg5w_17",ms="_indexColumn_1mg5w_26",fs="_groupRow_1mg5w_37",ae={actionColumn:ds,indexColumn:ms,groupRow:fs};function ps({groupId:t,colour:n,rowId:o,rowIndex:s,table:i,injectedStyles:a,...c}){var u;const{cuesheetMode:l,hideIndexColumn:d}=((u=i.options.meta)==null?void 0:u.options)??{cuesheetMode:k.Edit,hideIndexColumn:!1},r=ne(p=>p.openMenu);return e.jsxs("tr",{className:ae.groupRow,style:{...a,"--user-bg":n},"data-testid":"cuesheet-group",...c,children:[l===k.Edit&&e.jsx("td",{className:ae.actionColumn,tabIndex:-1,role:"cell",children:e.jsx(te,{"aria-label":"Options",variant:"ghosted-white",size:"small",onClick:p=>{const x=p.currentTarget.getBoundingClientRect(),h=8+x.y+x.height/2;r({x:x.x,y:h},t,A.Group,s,null,null)},children:e.jsx(de,{})})}),!d&&e.jsx("td",{className:ae.indexColumn,tabIndex:-1,role:"cell"}),i.getRow(o).getVisibleCells().map(p=>e.jsx("td",{tabIndex:-1,style:{width:`calc(var(--col-${p.column.id}-size) * 1px)`},role:"cell",children:K(p.column.columnDef.cell,p.getContext())},p.id))]})}const hs="_actionColumn_12wne_17",xs="_indexColumn_12wne_26",gs="_milestoneRow_12wne_37",Q={actionColumn:hs,indexColumn:xs,milestoneRow:gs};function Cs({entryId:t,isPast:n,parentBgColour:o,parentId:s,colour:i,rowId:a,rowIndex:c,table:l,injectedStyles:d,...r}){var E;const{cuesheetMode:u,hideIndexColumn:p}=((E=l.options.meta)==null?void 0:E.options)??{cuesheetMode:k.Edit,hideIndexColumn:!1},x=ne(f=>f.openMenu);let h;if(i){const f=re(H(i).backgroundColor);f!==null&&(h=le({...f,alpha:f.alpha*.25}))}return e.jsxs("tr",{className:ee([Q.milestoneRow,!!o&&Q.hasParent]),style:{...d,opacity:`${n?"0.2":"1"}`,"--user-bg":o??"transparent"},"data-testid":"cuesheet-milestone",...r,children:[u===k.Edit&&e.jsx("td",{className:Q.actionColumn,tabIndex:-1,role:"cell",children:e.jsx(te,{"aria-label":"Options",variant:"ghosted-white",size:"small",onClick:f=>{const g=f.currentTarget.getBoundingClientRect(),S=8+g.y+g.height/2;x({x:g.x,y:S},t,A.Milestone,c,s,null)},children:e.jsx(de,{})})}),!p&&e.jsx("td",{className:Q.indexColumn,tabIndex:-1,role:"cell",children:Tt}),l.getRow(a).getVisibleCells().map(f=>{const g=f.column.id!=="duration"&&f.column.id!=="timeStart"&&f.column.id!=="timeEnd";return e.jsx("td",{style:{width:`calc(var(--col-${f.column.id}-size) * 1px)`,backgroundColor:h,opacity:g?1:.4},tabIndex:-1,children:g&&K(f.column.columnDef.cell,f.getContext())},f.id)})]})}const xe=ue(t=>({canChangeMode:!1,canCreateEntries:!1,canEditEntries:!1,canFlag:!1,canShare:!1,setPermissions(n){t({canChangeMode:n.canChangeMode,canFlag:n.canFlag,canCreateEntries:n.canCreateEntries,canEditEntries:n.canEditEntries,canShare:n.canShare})}})),ys=m.memo(js);function js(){const{isOpen:t,entryId:n,entryIndex:o,parentId:s,flag:i,position:a,closeMenu:c}=ne(),{addEntry:l,clone:d,deleteEntry:r,move:u,updateEntry:p}=Ue(),x=ce(E=>E.setEditableEntry),h=xe();return t?e.jsx(Lt,{isOpen:!0,onClose:c,items:[{type:"item",label:"Edit...",onClick:()=>x(n),icon:ke,disabled:!h.canEditEntries},{type:"divider"},{type:"item",label:i?"Remove flag":"Add flag",onClick:()=>p({id:n,flag:!i}),icon:Ce,disabled:i===null||!h.canFlag},{type:"divider"},{type:"item",label:"Add event above",onClick:()=>l({type:A.Event,parent:s},{before:n}),icon:ye,disabled:!h.canCreateEntries},{type:"item",label:"Add event below",onClick:()=>l({type:A.Event,parent:s},{after:n}),icon:ye,disabled:!h.canCreateEntries},{type:"item",label:"Clone event",onClick:()=>d(n),icon:Ce,disabled:!h.canCreateEntries},{type:"divider"},{type:"item",label:"Move up",onClick:()=>u(n,"up"),icon:dt,disabled:o<1||!h.canEditEntries},{type:"item",label:"Move down",onClick:()=>u(n,"down"),icon:mt,disabled:!h.canEditEntries},{type:"divider"},{type:"item",label:"Delete",onClick:()=>r([n]),icon:ft,disabled:!h.canEditEntries}],position:a}):null}function bs(t){return e.jsx(pt,{style:{transform:"rotate(-45deg)"},...t})}function vs(){const{data:t}=It(),{data:n}=wt(),[o,s]=Te(),i=o&&t&&n;return e.jsxs(e.Fragment,{children:[e.jsxs(F,{onClick:s.open,render:e.jsx(N,{}),children:[e.jsx(bs,{}),"Share..."]}),e.jsx(Pe,{isOpen:o,onClose:s.close,title:"Share cuesheet view",showBackdrop:!0,showCloseButton:!0,bodyElements:i?e.jsx(Bt,{lockedPath:{value:Mt.Cuesheet,label:"Cuesheet"}}):null})]})}const Ss="_tableSettings_18k3s_17",Es="_sectionTitle_18k3s_29",_s="_option_18k3s_40",ks="_column_18k3s_47",Ts="_inline_18k3s_54",Is="_apart_18k3s_60",ws="_group_18k3s_65",Ms="_radioButton_18k3s_76",v={tableSettings:Ss,sectionTitle:Es,option:_s,column:ks,inline:Ts,apart:Is,group:ws,radioButton:Ms};function Rs({columns:t,handleResetResizing:n,handleResetReordering:o,handleClearToggles:s}){const i=xe(r=>r.canShare),a=m.use(Ne),[c,l]=Ie({key:a?`${a.alias}${Y.cuesheetMode}`:Y.cuesheetMode,defaultValue:a?k.Run:k.Edit}),d=r=>{const u=r.at(0);u&&l(u)};return e.jsxs(ht,{className:v.tableSettings,children:[e.jsx(Ds,{}),e.jsx(Ns,{columns:t,handleResetResizing:n,handleResetReordering:o,handleClearToggles:s}),e.jsxs(xt,{value:[c],onValueChange:d,className:ee([v.group,v.apart]),children:[e.jsx(F,{render:e.jsx(je,{}),value:k.Run,className:v.radioButton,children:"Run"}),e.jsx(F,{render:e.jsx(je,{}),value:k.Edit,className:v.radioButton,children:"Edit"})]}),i&&e.jsxs(e.Fragment,{children:[e.jsx(Ge,{orientation:"vertical"}),e.jsx(vs,{})]})]})}function Ds(){const t=z();return e.jsxs(we,{children:[e.jsx(Me,{render:e.jsx(F,{render:e.jsxs(N,{variant:"ghosted-white",children:[e.jsx(gt,{})," Settings",e.jsx(Re,{})]})})}),e.jsxs(Ve,{align:"start",className:v.inline,children:[e.jsxs("div",{className:v.column,children:[e.jsx(D,{className:v.sectionTitle,children:"Element visibility"}),e.jsxs(D,{className:v.option,children:[e.jsx($,{defaultChecked:t.hideTableSeconds,onCheckedChange:n=>t.setOption("hideTableSeconds",n)}),"Hide seconds in table"]}),e.jsxs(D,{className:v.option,children:[e.jsx($,{defaultChecked:t.hideIndexColumn,onCheckedChange:n=>t.setOption("hideIndexColumn",n)}),"Hide index column"]})]}),e.jsxs("div",{className:v.column,children:[e.jsx(D,{className:v.sectionTitle,children:"Table Behaviour"}),e.jsxs(D,{className:v.option,children:[e.jsx($,{defaultChecked:t.showDelayedTimes,onCheckedChange:n=>t.setOption("showDelayedTimes",n)}),"Show delayed times"]}),e.jsxs(D,{className:v.option,children:[e.jsx($,{defaultChecked:t.hideDelays,onCheckedChange:n=>t.setOption("hideDelays",n)}),"Hide delay entries"]})]})]})]})}function Ns({columns:t,handleResetResizing:n,handleResetReordering:o,handleClearToggles:s}){return e.jsxs(we,{children:[e.jsx(Me,{render:e.jsx(F,{render:e.jsxs(N,{variant:"ghosted-white",children:[e.jsx(ke,{})," View",e.jsx(Re,{})]})})}),e.jsxs(Ve,{align:"start",className:v.inline,children:[e.jsxs("div",{className:v.column,children:[e.jsx(D,{className:v.sectionTitle,children:"Column visibility"}),t.map(i=>{const a=i.columnDef.header,c=i.getIsVisible();return e.jsxs(D,{className:v.option,children:[e.jsx($,{defaultChecked:c,onCheckedChange:i.toggleVisibility}),a]},`${i.id}-${c}`)})]}),e.jsx(Ge,{orientation:"vertical"}),e.jsxs("div",{className:v.column,children:[e.jsx(D,{className:v.sectionTitle,children:"Reset Options"}),e.jsx(N,{size:"small",fluid:!0,onClick:s,children:"Show All"}),e.jsx(N,{size:"small",fluid:!0,onClick:n,children:"Reset Resizing"}),e.jsx(N,{size:"small",fluid:!0,onClick:o,children:"Reset Reordering"})]})]})]})}function zs({columns:t,cuesheetMode:n}){const{data:o,status:s}=At(),{updateEntry:i,updateTimer:a}=Ue(),c=z(C=>C.showDelayedTimes),l=z(C=>C.hideTableSeconds),d=z(C=>C.hideIndexColumn),{selectedEventId:r}=Rt(),u=m.useRef(null),{listeners:p}=Ct(),x=m.useMemo(()=>({handleUpdate:(C,b,T,R=!1)=>{const M=o[C];if(!(!M||M[b]===T)){if(R){i({id:M.id,custom:{[b]:T}});return}i({id:M.id,[b]:T})}},handleUpdateTimer:(C,b,T)=>{a(C,b,T,!0)},options:{showDelayedTimes:c,hideTableSeconds:l,cuesheetMode:n,hideIndexColumn:d}}),[n,o,d,l,c,i,a]),{columnOrder:h,resetColumnOrder:E}=qe(t),{columnSizing:f,setColumnSizing:g}=fn(),{columnVisibility:S,setColumnVisibility:w}=pn(),j=yt({data:o,columns:t,columnResizeMode:"onChange",state:{columnOrder:h,columnVisibility:S,columnSizing:f},onColumnVisibilityChange:w,onColumnSizingChange:g,getCoreRowModel:bt(),meta:x}),_=m.useCallback(()=>{j.toggleAllColumnsVisible(!0)},[j]),se=m.useCallback(()=>{g({})},[g]);m.useEffect(()=>{if(n===k.Edit||u.current===null||!r)return;const C=o.findIndex(b=>b.id===r);u.current.scrollToIndex({index:C,behavior:"smooth"})},[n,o,r]);const oe=m.useMemo(()=>{const C=j.getFlatHeaders(),b={};for(let T=0;T<C.length;T++){const R=C[T];R&&(b[`--header-${R.id}-size`]=R.getSize(),b[`--col-${R.column.id}-size`]=R.column.getSize())}return b},[j.getState().columnSizingInfo,j.getState().columnSizing]),G=j.getAllLeafColumns(),{rows:I}=j.getRowModel();return!o||s==="pending"?e.jsx(He,{text:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(Rs,{columns:G,handleResetResizing:se,handleResetReordering:E,handleClearToggles:_}),e.jsx(jt,{ref:u,data:o,increaseViewportBy:{top:100,bottom:200},components:{EmptyPlaceholder:()=>e.jsx(Un,{text:"No data in rundown"}),Table:({style:C,...b})=>e.jsx("table",{className:O.cuesheet,id:"cuesheet",style:{...C,...oe},...p,...b}),TableRow:({item:C,style:b,...T})=>{const R=T["data-index"],M=I[R],J=M.original.id,y=M.original;return Fe(y)?e.jsx(ps,{groupId:y.id,colour:y.colour,rowId:M.id,rowIndex:M.index,table:j,injectedStyles:b,...T},J):fe(y)?e.jsx(os,{duration:y.duration,injectedStyles:b,...T},J):$e(y)?e.jsx(Cs,{entryId:y.id,isPast:y.isPast,parentBgColour:y.groupColour,parentId:y.parent,colour:y.colour,rowId:M.id,rowIndex:R,table:j,injectedStyles:b,...T},J):e.jsx(us,{id:y.id,eventIndex:y.eventIndex,colour:y.colour,isFirstAfterGroup:y.isFirstAfterGroup,isLoaded:y.isLoaded,isPast:y.isPast,groupColour:y.groupColour,flag:y.flag,skip:y.skip,parent:y.parent,rowId:M.id,rowIndex:R,table:j,injectedStyles:b,...T},M.id)},TableHead:C=>e.jsx("thead",{className:O.tableHeader,...C})},fixedHeaderContent:()=>j.getHeaderGroups().map(C=>{const b=j.getState().columnSizingInfo.isResizingColumn?es:Zn;return e.jsx(b,{cuesheetMode:n,headerGroup:C},C.id)})}),e.jsx(ys,{})]})}const Os=m.memo(Ws);function Ws(){const{data:t,status:n}=qt(),o=xe(l=>l.setPermissions),s=m.use(Ne);m.useEffect(()=>{var l,d,r;if(s){const u=((l=s.options)==null?void 0:l.write)==="full";o({canChangeMode:((d=s.options)==null?void 0:d.write)!=="-",canCreateEntries:u,canEditEntries:u,canFlag:u||!!((r=s.options)!=null&&r.write.includes("flag")),canShare:!1})}else o({canChangeMode:!0,canCreateEntries:!0,canEditEntries:!0,canFlag:!0,canShare:Dt==="rw"})},[s,o]);const[i]=Ie({key:s?`${s.alias}${Y.cuesheetMode}`:Y.cuesheetMode,defaultValue:s?k.Run:k.Edit}),a=m.useMemo(()=>Bn(t,i,s),[t,i,s]),c=!t||n==="pending";return e.jsx(hn,{columns:a,children:c?e.jsx(He,{text:"Loading..."}):e.jsx(zs,{columns:a,cuesheetMode:i})})}const Ps="_tableWrapper_h9gr1_17",$s={tableWrapper:Ps};function Fs(){const[t,n]=Te();Ot("Cuesheet");const o=Nt();return e.jsxs(e.Fragment,{children:[e.jsx(zt,{isOpen:t,onClose:n.close}),e.jsx(sn,{}),e.jsxs("div",{className:$s.tableWrapper,"data-testid":"cuesheet",children:[e.jsx(Yt,{children:!o&&e.jsx(te,{"aria-label":"Toggle navigation",variant:"subtle-white",size:"xlarge",onClick:n.open,children:e.jsx(vt,{})})}),e.jsx(ln,{}),e.jsx(Os,{})]})]})}function go(){return e.jsx(St,{permission:"operator",children:e.jsx(Fs,{})})}export{go as default}; //# sourceMappingURL=ProtectedCuesheet-CYBIcg1c.js.map