@getontime/cli 4.2.1 → 4.3.1
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/client/assets/Backstage-D2lEbqUt.js +2 -0
- package/client/assets/Backstage-D2lEbqUt.js.br +0 -0
- package/client/assets/Backstage-D2lEbqUt.js.gz +0 -0
- package/client/assets/Backstage-D2lEbqUt.js.map +1 -0
- package/client/assets/Countdown-VV03STbF.js +2 -0
- package/client/assets/Countdown-VV03STbF.js.br +0 -0
- package/client/assets/Countdown-VV03STbF.js.gz +0 -0
- package/client/assets/Countdown-VV03STbF.js.map +1 -0
- package/client/assets/CustomTranslationModal-D1nM9W1Z.js +2 -0
- package/client/assets/CustomTranslationModal-D1nM9W1Z.js.br +0 -0
- package/client/assets/CustomTranslationModal-D1nM9W1Z.js.gz +0 -0
- package/client/assets/{CustomTranslationModal-CtBvokyt.js.map → CustomTranslationModal-D1nM9W1Z.js.map} +1 -1
- package/client/assets/DelayIndicator-Co5rMYw9.js +2 -0
- package/client/assets/DelayIndicator-Co5rMYw9.js.br +0 -0
- package/client/assets/DelayIndicator-Co5rMYw9.js.gz +0 -0
- package/client/assets/{DelayIndicator-BFZFpsY5.js.map → DelayIndicator-Co5rMYw9.js.map} +1 -1
- package/client/assets/EditorFeatureWrapper-_t_4D7Es.js +2 -0
- package/client/assets/EditorFeatureWrapper-_t_4D7Es.js.br +0 -0
- package/client/assets/EditorFeatureWrapper-_t_4D7Es.js.gz +0 -0
- package/client/assets/{EditorFeatureWrapper-DaMxgBMP.js.map → EditorFeatureWrapper-_t_4D7Es.js.map} +1 -1
- package/client/assets/EditorUtils-C3QoonjM.js +2 -0
- package/client/assets/EditorUtils-C3QoonjM.js.br +0 -0
- package/client/assets/EditorUtils-C3QoonjM.js.gz +0 -0
- package/client/assets/{EditorUtils-DoaSwWiz.js.map → EditorUtils-C3QoonjM.js.map} +1 -1
- package/client/assets/EditorUtils-L4Sg72o_.css +1 -0
- package/client/assets/EditorUtils-L4Sg72o_.css.br +0 -0
- package/client/assets/EditorUtils-L4Sg72o_.css.gz +0 -0
- package/client/assets/{Empty-D1UteOYj.js → Empty-DJMjfXnt.js} +2 -2
- package/client/assets/Empty-DJMjfXnt.js.br +2 -0
- package/client/assets/Empty-DJMjfXnt.js.gz +0 -0
- package/client/assets/{Empty-D1UteOYj.js.map → Empty-DJMjfXnt.js.map} +1 -1
- package/client/assets/{EmptyPage-DeRjpRKZ.js → EmptyPage-BlXZqoIr.js} +2 -2
- package/client/assets/EmptyPage-BlXZqoIr.js.br +0 -0
- package/client/assets/EmptyPage-BlXZqoIr.js.gz +0 -0
- package/client/assets/{EmptyPage-DeRjpRKZ.js.map → EmptyPage-BlXZqoIr.js.map} +1 -1
- package/client/assets/{FollowButton-FodezDem.js → FollowButton-Dy5n1J2c.js} +2 -2
- package/client/assets/FollowButton-Dy5n1J2c.js.br +0 -0
- package/client/assets/FollowButton-Dy5n1J2c.js.gz +0 -0
- package/client/assets/{FollowButton-FodezDem.js.map → FollowButton-Dy5n1J2c.js.map} +1 -1
- package/client/assets/MessageControlExport-CWQX8mH0.js +3 -0
- package/client/assets/MessageControlExport-CWQX8mH0.js.br +0 -0
- package/client/assets/MessageControlExport-CWQX8mH0.js.gz +0 -0
- package/client/assets/MessageControlExport-CWQX8mH0.js.map +1 -0
- package/client/assets/MessageControlExport-D_pNX6Vj.css +1 -0
- package/client/assets/MessageControlExport-D_pNX6Vj.css.br +0 -0
- package/client/assets/MessageControlExport-D_pNX6Vj.css.gz +0 -0
- package/client/assets/MilestoneEditor-CxWZdQ1B.js +2 -0
- package/client/assets/MilestoneEditor-CxWZdQ1B.js.br +0 -0
- package/client/assets/MilestoneEditor-CxWZdQ1B.js.gz +0 -0
- package/client/assets/MilestoneEditor-CxWZdQ1B.js.map +1 -0
- package/client/assets/Modal-ePA-Go14.js +2 -0
- package/client/assets/Modal-ePA-Go14.js.br +0 -0
- package/client/assets/Modal-ePA-Go14.js.gz +0 -0
- package/client/assets/Modal-ePA-Go14.js.map +1 -0
- package/client/assets/{MultiPartProgressBar-BKHk19Hb.js → MultiPartProgressBar-GQaCHX4z.js} +2 -2
- package/client/assets/MultiPartProgressBar-GQaCHX4z.js.br +0 -0
- package/client/assets/MultiPartProgressBar-GQaCHX4z.js.gz +0 -0
- package/client/assets/{MultiPartProgressBar-BKHk19Hb.js.map → MultiPartProgressBar-GQaCHX4z.js.map} +1 -1
- package/client/assets/OperatorExport-CA5WcIt5.css +1 -0
- package/client/assets/OperatorExport-CA5WcIt5.css.br +0 -0
- package/client/assets/OperatorExport-CA5WcIt5.css.gz +0 -0
- package/client/assets/OperatorExport-CRS08UXj.js +2 -0
- package/client/assets/OperatorExport-CRS08UXj.js.br +0 -0
- package/client/assets/OperatorExport-CRS08UXj.js.gz +0 -0
- package/client/assets/OperatorExport-CRS08UXj.js.map +1 -0
- package/client/assets/OverviewWrapper-BNRb3Ub_.js +2 -0
- package/client/assets/OverviewWrapper-BNRb3Ub_.js.br +0 -0
- package/client/assets/OverviewWrapper-BNRb3Ub_.js.gz +0 -0
- package/client/assets/OverviewWrapper-BNRb3Ub_.js.map +1 -0
- package/client/assets/{PipHost-B9-cZ8Lm.js → PipHost-DNfEY6RN.js} +2 -2
- package/client/assets/PipHost-DNfEY6RN.js.br +0 -0
- package/client/assets/PipHost-DNfEY6RN.js.gz +0 -0
- package/client/assets/PipHost-DNfEY6RN.js.map +1 -0
- package/client/assets/ProjectInfo-KPf-pM8y.js +2 -0
- package/client/assets/ProjectInfo-KPf-pM8y.js.br +0 -0
- package/client/assets/ProjectInfo-KPf-pM8y.js.gz +0 -0
- package/client/assets/{ProjectInfo-Dp1TZyBd.js.map → ProjectInfo-KPf-pM8y.js.map} +1 -1
- package/client/assets/{ProtectRoute-EejQ5o_H.js → ProtectRoute-DW_vXgYI.js} +2 -2
- package/client/assets/ProtectRoute-DW_vXgYI.js.br +0 -0
- package/client/assets/ProtectRoute-DW_vXgYI.js.gz +0 -0
- package/client/assets/{ProtectRoute-EejQ5o_H.js.map → ProtectRoute-DW_vXgYI.js.map} +1 -1
- package/client/assets/ProtectedCuesheet-CCVDLsK-.js +2 -0
- package/client/assets/ProtectedCuesheet-CCVDLsK-.js.br +0 -0
- package/client/assets/ProtectedCuesheet-CCVDLsK-.js.gz +0 -0
- package/client/assets/ProtectedCuesheet-CCVDLsK-.js.map +1 -0
- package/client/assets/ProtectedCuesheet-DPO7xYMb.css +1 -0
- package/client/assets/ProtectedCuesheet-DPO7xYMb.css.br +0 -0
- package/client/assets/ProtectedCuesheet-DPO7xYMb.css.gz +0 -0
- package/client/assets/{ProtectedEditor-Dw0pWw0J.css → ProtectedEditor-BtSuTFlT.css} +1 -1
- package/client/assets/ProtectedEditor-BtSuTFlT.css.br +0 -0
- package/client/assets/{ProtectedEditor-Dw0pWw0J.css.gz → ProtectedEditor-BtSuTFlT.css.gz} +0 -0
- package/client/assets/ProtectedEditor-Ddu9vBS8.js +3 -0
- package/client/assets/ProtectedEditor-Ddu9vBS8.js.br +0 -0
- package/client/assets/ProtectedEditor-Ddu9vBS8.js.gz +0 -0
- package/client/assets/ProtectedEditor-Ddu9vBS8.js.map +1 -0
- package/client/assets/RundownEntry-CpspmKD0.js +2 -0
- package/client/assets/RundownEntry-CpspmKD0.js.br +0 -0
- package/client/assets/RundownEntry-CpspmKD0.js.gz +0 -0
- package/client/assets/RundownEntry-CpspmKD0.js.map +1 -0
- package/client/assets/{RundownExport-DtSvAfBG.css → RundownExport-Bgtg_idR.css} +1 -1
- package/client/assets/RundownExport-Bgtg_idR.css.br +0 -0
- package/client/assets/RundownExport-Bgtg_idR.css.gz +0 -0
- package/client/assets/RundownExport-DhCryTUp.js +3 -0
- package/client/assets/RundownExport-DhCryTUp.js.br +0 -0
- package/client/assets/RundownExport-DhCryTUp.js.gz +0 -0
- package/client/assets/RundownExport-DhCryTUp.js.map +1 -0
- package/client/assets/{Select-cHK8JrMG.js → Select-ASOzxGFV.js} +2 -2
- package/client/assets/Select-ASOzxGFV.js.br +0 -0
- package/client/assets/Select-ASOzxGFV.js.gz +0 -0
- package/client/assets/Select-ASOzxGFV.js.map +1 -0
- package/client/assets/Studio-D7evHV2Q.js +2 -0
- package/client/assets/Studio-D7evHV2Q.js.br +0 -0
- package/client/assets/Studio-D7evHV2Q.js.gz +0 -0
- package/client/assets/Studio-D7evHV2Q.js.map +1 -0
- package/client/assets/{StyleEditor-RZvkKHdf.js → StyleEditor-DYybY9tA.js} +2 -2
- package/client/assets/StyleEditor-DYybY9tA.js.br +0 -0
- package/client/assets/StyleEditor-DYybY9tA.js.gz +0 -0
- package/client/assets/{StyleEditor-RZvkKHdf.js.map → StyleEditor-DYybY9tA.js.map} +1 -1
- package/client/assets/{SuperscriptPeriod-DaZq1rr6.js → SuperscriptPeriod-NmBzJhFK.js} +2 -2
- package/client/assets/SuperscriptPeriod-NmBzJhFK.js.br +0 -0
- package/client/assets/SuperscriptPeriod-NmBzJhFK.js.gz +0 -0
- package/client/assets/SuperscriptPeriod-NmBzJhFK.js.map +1 -0
- package/client/assets/SuperscriptTime-CA_8XRM6.js +2 -0
- package/client/assets/SuperscriptTime-CA_8XRM6.js.br +0 -0
- package/client/assets/SuperscriptTime-CA_8XRM6.js.gz +0 -0
- package/client/assets/SuperscriptTime-CA_8XRM6.js.map +1 -0
- package/client/assets/SwatchPicker-C8eFQKBd.js +2 -0
- package/client/assets/SwatchPicker-C8eFQKBd.js.br +0 -0
- package/client/assets/SwatchPicker-C8eFQKBd.js.gz +0 -0
- package/client/assets/SwatchPicker-C8eFQKBd.js.map +1 -0
- package/client/assets/{TimeElements-dIvFHgcd.js → TimeElements-D3dl9gAM.js} +2 -2
- package/client/assets/TimeElements-D3dl9gAM.js.br +0 -0
- package/client/assets/TimeElements-D3dl9gAM.js.gz +0 -0
- package/client/assets/TimeElements-D3dl9gAM.js.map +1 -0
- package/client/assets/TimeInput-DR-NCEhH.js +2 -0
- package/client/assets/TimeInput-DR-NCEhH.js.br +0 -0
- package/client/assets/TimeInput-DR-NCEhH.js.gz +0 -0
- package/client/assets/{TimeInput-Duzx40TC.js.map → TimeInput-DR-NCEhH.js.map} +1 -1
- package/client/assets/TimelinePage-BfTV9IdT.js +2 -0
- package/client/assets/TimelinePage-BfTV9IdT.js.br +0 -0
- package/client/assets/TimelinePage-BfTV9IdT.js.gz +0 -0
- package/client/assets/TimelinePage-BfTV9IdT.js.map +1 -0
- package/client/assets/Timer-DvqDm4yX.js +2 -0
- package/client/assets/Timer-DvqDm4yX.js.br +0 -0
- package/client/assets/Timer-DvqDm4yX.js.gz +0 -0
- package/client/assets/Timer-DvqDm4yX.js.map +1 -0
- package/client/assets/TimerControlExport-CQQ2KxqK.js +2 -0
- package/client/assets/TimerControlExport-CQQ2KxqK.js.br +0 -0
- package/client/assets/TimerControlExport-CQQ2KxqK.js.gz +0 -0
- package/client/assets/{TimerControlExport-GJn4WWdH.js.map → TimerControlExport-CQQ2KxqK.js.map} +1 -1
- package/client/assets/{TimerControlExport-DavNxY9p.css → TimerControlExport-cJRa5GUp.css} +1 -1
- package/client/assets/TimerControlExport-cJRa5GUp.css.br +0 -0
- package/client/assets/{TimerControlExport-DavNxY9p.css.gz → TimerControlExport-cJRa5GUp.css.gz} +0 -0
- package/client/assets/{TitleCard-BqbrUnHO.js → TitleCard-AESdy7kI.js} +2 -2
- package/client/assets/TitleCard-AESdy7kI.js.br +0 -0
- package/client/assets/TitleCard-AESdy7kI.js.gz +0 -0
- package/client/assets/{TitleCard-BqbrUnHO.js.map → TitleCard-AESdy7kI.js.map} +1 -1
- package/client/assets/{Tooltip-BQBvaIZx.js → Tooltip-BTK4bJkV.js} +2 -2
- package/client/assets/Tooltip-BTK4bJkV.js.br +0 -0
- package/client/assets/Tooltip-BTK4bJkV.js.gz +0 -0
- package/client/assets/Tooltip-BTK4bJkV.js.map +1 -0
- package/client/assets/ViewLogo-BZVUUIZA.js +2 -0
- package/client/assets/ViewLogo-BZVUUIZA.js.br +0 -0
- package/client/assets/ViewLogo-BZVUUIZA.js.gz +0 -0
- package/client/assets/ViewLogo-BZVUUIZA.js.map +1 -0
- package/client/assets/ViewParamsEditor-CBnRitZ4.js +2 -0
- package/client/assets/ViewParamsEditor-CBnRitZ4.js.br +0 -0
- package/client/assets/ViewParamsEditor-CBnRitZ4.js.gz +0 -0
- package/client/assets/ViewParamsEditor-CBnRitZ4.js.map +1 -0
- package/client/assets/{dateConfig-BU1RZfIK.js → dateConfig-Crm-Cu2y.js} +2 -2
- package/client/assets/dateConfig-Crm-Cu2y.js.br +0 -0
- package/client/assets/dateConfig-Crm-Cu2y.js.gz +0 -0
- package/client/assets/{dateConfig-BU1RZfIK.js.map → dateConfig-Crm-Cu2y.js.map} +1 -1
- package/client/assets/{editorSettings-BMt-7s8I.js → editorSettings-CRJwIW7V.js} +2 -2
- package/client/assets/editorSettings-CRJwIW7V.js.br +0 -0
- package/client/assets/editorSettings-CRJwIW7V.js.gz +0 -0
- package/client/assets/{editorSettings-BMt-7s8I.js.map → editorSettings-CRJwIW7V.js.map} +1 -1
- package/client/assets/{getProgress-sdxPEEPi.js → getProgress-fD6vhbNF.js} +2 -2
- package/client/assets/getProgress-fD6vhbNF.js.br +0 -0
- package/client/assets/getProgress-fD6vhbNF.js.gz +0 -0
- package/client/assets/{getProgress-sdxPEEPi.js.map → getProgress-fD6vhbNF.js.map} +1 -1
- package/client/assets/index-B1K7rED_.js +3 -0
- package/client/assets/index-B1K7rED_.js.br +0 -0
- package/client/assets/index-B1K7rED_.js.gz +0 -0
- package/client/assets/index-B1K7rED_.js.map +1 -0
- package/client/assets/{index-BuJoGGff.css → index-BAvwULMi.css} +1 -1
- package/client/assets/index-BAvwULMi.css.br +0 -0
- package/client/assets/index-BAvwULMi.css.gz +0 -0
- package/client/assets/{offset-BS90Rks2.js → offset-FplkvYRD.js} +2 -2
- package/client/assets/offset-FplkvYRD.js.br +0 -0
- package/client/assets/offset-FplkvYRD.js.gz +0 -0
- package/client/assets/{offset-BS90Rks2.js.map → offset-FplkvYRD.js.map} +1 -1
- package/client/assets/{parseUserTime-DZJMcfuJ.js → parseUserTime-0pNWLcr0.js} +2 -2
- package/client/assets/parseUserTime-0pNWLcr0.js.br +0 -0
- package/client/assets/parseUserTime-0pNWLcr0.js.gz +0 -0
- package/client/assets/{parseUserTime-DZJMcfuJ.js.map → parseUserTime-0pNWLcr0.js.map} +1 -1
- package/client/assets/{playbackstate-CWexoP3a.js → playbackstate-1HCEpVh5.js} +2 -2
- package/client/assets/playbackstate-1HCEpVh5.js.br +0 -0
- package/client/assets/playbackstate-1HCEpVh5.js.gz +0 -0
- package/client/assets/{playbackstate-CWexoP3a.js.map → playbackstate-1HCEpVh5.js.map} +1 -1
- package/client/assets/{presentation.utils-Zo5hNQje.js → presentation.utils-CLt2UhON.js} +2 -2
- package/client/assets/presentation.utils-CLt2UhON.js.br +0 -0
- package/client/assets/presentation.utils-CLt2UhON.js.gz +0 -0
- package/client/assets/{presentation.utils-Zo5hNQje.js.map → presentation.utils-CLt2UhON.js.map} +1 -1
- package/client/assets/rundownUtils-D1oJpMdx.js +2 -0
- package/client/assets/rundownUtils-D1oJpMdx.js.br +0 -0
- package/client/assets/rundownUtils-D1oJpMdx.js.gz +0 -0
- package/client/assets/{rundownUtils-Dl1x6NDv.js.map → rundownUtils-D1oJpMdx.js.map} +1 -1
- package/client/assets/{timer.utils-BnMyVO6Z.js → timer.utils-FiqT1yNa.js} +2 -2
- package/client/assets/timer.utils-FiqT1yNa.js.br +0 -0
- package/client/assets/timer.utils-FiqT1yNa.js.gz +0 -0
- package/client/assets/timer.utils-FiqT1yNa.js.map +1 -0
- package/client/assets/{useCustomFields-CcTb-GQM.js → useCustomFields-nW-_Zyfw.js} +2 -2
- package/client/assets/useCustomFields-nW-_Zyfw.js.br +0 -0
- package/client/assets/useCustomFields-nW-_Zyfw.js.gz +0 -0
- package/client/assets/{useCustomFields-CcTb-GQM.js.map → useCustomFields-nW-_Zyfw.js.map} +1 -1
- package/client/assets/{useFollowComponent-BjhV6Uv8.js → useFollowComponent-4cbKEsVz.js} +2 -2
- package/client/assets/useFollowComponent-4cbKEsVz.js.br +0 -0
- package/client/assets/useFollowComponent-4cbKEsVz.js.gz +0 -0
- package/client/assets/{useFollowComponent-BjhV6Uv8.js.map → useFollowComponent-4cbKEsVz.js.map} +1 -1
- package/client/assets/useProjectData-DP-pr73E.js +2 -0
- package/client/assets/useProjectData-DP-pr73E.js.br +0 -0
- package/client/assets/useProjectData-DP-pr73E.js.gz +0 -0
- package/client/assets/useProjectData-DP-pr73E.js.map +1 -0
- package/client/assets/{useReport-zMbyWwpn.js → useReport-6XA_s2Vc.js} +2 -2
- package/client/assets/useReport-6XA_s2Vc.js.br +0 -0
- package/client/assets/useReport-6XA_s2Vc.js.gz +0 -0
- package/client/assets/{useReport-zMbyWwpn.js.map → useReport-6XA_s2Vc.js.map} +1 -1
- package/client/assets/useRundown-BGhL8DEI.js +2 -0
- package/client/assets/useRundown-BGhL8DEI.js.br +0 -0
- package/client/assets/useRundown-BGhL8DEI.js.gz +0 -0
- package/client/assets/useRundown-BGhL8DEI.js.map +1 -0
- package/client/assets/{useWindowTitle-mLKt65i7.js → useWindowTitle-ahZQIheF.js} +2 -2
- package/client/assets/useWindowTitle-ahZQIheF.js.br +0 -0
- package/client/assets/useWindowTitle-ahZQIheF.js.gz +0 -0
- package/client/assets/useWindowTitle-ahZQIheF.js.map +1 -0
- package/client/assets/{validateEvent-CUmvjN95.js → validateEvent-jVIMKhmx.js} +2 -2
- package/client/assets/validateEvent-jVIMKhmx.js.br +0 -0
- package/client/assets/validateEvent-jVIMKhmx.js.gz +0 -0
- package/client/assets/{validateEvent-CUmvjN95.js.map → validateEvent-jVIMKhmx.js.map} +1 -1
- package/client/assets/vendor-DmGkEtRj.js +74 -0
- package/client/assets/vendor-DmGkEtRj.js.br +0 -0
- package/client/assets/vendor-DmGkEtRj.js.gz +0 -0
- package/client/assets/{vendor-Cdwxo8bP.js.map → vendor-DmGkEtRj.js.map} +1 -1
- package/client/assets/{viewLoader.utils-DuXjY5zb.js → viewLoader.utils-Bniie8Op.js} +2 -2
- package/client/assets/viewLoader.utils-Bniie8Op.js.br +0 -0
- package/client/assets/viewLoader.utils-Bniie8Op.js.gz +0 -0
- package/client/assets/{viewLoader.utils-DuXjY5zb.js.map → viewLoader.utils-Bniie8Op.js.map} +1 -1
- package/client/assets/{viewUtils-dKRKkb_F.js → viewUtils-VNLYoR28.js} +2 -2
- package/client/assets/viewUtils-VNLYoR28.js.br +0 -0
- package/client/assets/viewUtils-VNLYoR28.js.gz +0 -0
- package/client/assets/viewUtils-VNLYoR28.js.map +1 -0
- package/client/index.html +3 -3
- package/package.json +1 -1
- package/server/index.cjs +102 -102
- package/client/assets/Backstage-WSlbFC9X.js +0 -2
- package/client/assets/Backstage-WSlbFC9X.js.br +0 -0
- package/client/assets/Backstage-WSlbFC9X.js.gz +0 -0
- package/client/assets/Backstage-WSlbFC9X.js.map +0 -1
- package/client/assets/Countdown-B32qlxYT.js +0 -2
- package/client/assets/Countdown-B32qlxYT.js.br +0 -0
- package/client/assets/Countdown-B32qlxYT.js.gz +0 -0
- package/client/assets/Countdown-B32qlxYT.js.map +0 -1
- package/client/assets/CustomTranslationModal-CtBvokyt.js +0 -2
- package/client/assets/CustomTranslationModal-CtBvokyt.js.br +0 -0
- package/client/assets/CustomTranslationModal-CtBvokyt.js.gz +0 -0
- package/client/assets/DelayIndicator-BFZFpsY5.js +0 -2
- package/client/assets/DelayIndicator-BFZFpsY5.js.br +0 -0
- package/client/assets/DelayIndicator-BFZFpsY5.js.gz +0 -0
- package/client/assets/Editor-B_NlyOLw.css +0 -1
- package/client/assets/Editor-B_NlyOLw.css.br +0 -0
- package/client/assets/Editor-B_NlyOLw.css.gz +0 -0
- package/client/assets/Editor.module-DvV2efYs.js +0 -2
- package/client/assets/Editor.module-DvV2efYs.js.br +0 -0
- package/client/assets/Editor.module-DvV2efYs.js.gz +0 -0
- package/client/assets/Editor.module-DvV2efYs.js.map +0 -1
- package/client/assets/EditorFeatureWrapper-DaMxgBMP.js +0 -2
- package/client/assets/EditorFeatureWrapper-DaMxgBMP.js.br +0 -0
- package/client/assets/EditorFeatureWrapper-DaMxgBMP.js.gz +0 -0
- package/client/assets/EditorUtils-CgF7UfHP.css +0 -1
- package/client/assets/EditorUtils-CgF7UfHP.css.br +0 -0
- package/client/assets/EditorUtils-CgF7UfHP.css.gz +0 -0
- package/client/assets/EditorUtils-DoaSwWiz.js +0 -2
- package/client/assets/EditorUtils-DoaSwWiz.js.br +0 -0
- package/client/assets/EditorUtils-DoaSwWiz.js.gz +0 -0
- package/client/assets/Empty-D1UteOYj.js.br +0 -0
- package/client/assets/Empty-D1UteOYj.js.gz +0 -0
- package/client/assets/EmptyPage-DeRjpRKZ.js.br +0 -0
- package/client/assets/EmptyPage-DeRjpRKZ.js.gz +0 -0
- package/client/assets/FollowButton-FodezDem.js.br +0 -0
- package/client/assets/FollowButton-FodezDem.js.gz +0 -0
- package/client/assets/MessageControlExport-CFGgiwk_.js +0 -3
- package/client/assets/MessageControlExport-CFGgiwk_.js.br +0 -0
- package/client/assets/MessageControlExport-CFGgiwk_.js.gz +0 -0
- package/client/assets/MessageControlExport-CFGgiwk_.js.map +0 -1
- package/client/assets/MessageControlExport-DjoUioWA.css +0 -1
- package/client/assets/MessageControlExport-DjoUioWA.css.br +0 -0
- package/client/assets/MessageControlExport-DjoUioWA.css.gz +0 -0
- package/client/assets/MilestoneEditor-B5BdJ5ju.js +0 -2
- package/client/assets/MilestoneEditor-B5BdJ5ju.js.br +0 -0
- package/client/assets/MilestoneEditor-B5BdJ5ju.js.gz +0 -0
- package/client/assets/MilestoneEditor-B5BdJ5ju.js.map +0 -1
- package/client/assets/Modal-B8ZZbVMg.js +0 -2
- package/client/assets/Modal-B8ZZbVMg.js.br +0 -0
- package/client/assets/Modal-B8ZZbVMg.js.gz +0 -0
- package/client/assets/Modal-B8ZZbVMg.js.map +0 -1
- package/client/assets/MultiPartProgressBar-BKHk19Hb.js.br +0 -0
- package/client/assets/MultiPartProgressBar-BKHk19Hb.js.gz +0 -0
- package/client/assets/OperatorExport-BiBcgVKc.css +0 -1
- package/client/assets/OperatorExport-BiBcgVKc.css.br +0 -0
- package/client/assets/OperatorExport-BiBcgVKc.css.gz +0 -0
- package/client/assets/OperatorExport-DQM14DsN.js +0 -2
- package/client/assets/OperatorExport-DQM14DsN.js.br +0 -0
- package/client/assets/OperatorExport-DQM14DsN.js.gz +0 -0
- package/client/assets/OperatorExport-DQM14DsN.js.map +0 -1
- package/client/assets/OverviewWrapper-D1hUkrRi.js +0 -2
- package/client/assets/OverviewWrapper-D1hUkrRi.js.br +0 -0
- package/client/assets/OverviewWrapper-D1hUkrRi.js.gz +0 -0
- package/client/assets/OverviewWrapper-D1hUkrRi.js.map +0 -1
- package/client/assets/PipHost-B9-cZ8Lm.js.br +0 -0
- package/client/assets/PipHost-B9-cZ8Lm.js.gz +0 -0
- package/client/assets/PipHost-B9-cZ8Lm.js.map +0 -1
- package/client/assets/ProjectInfo-Dp1TZyBd.js +0 -2
- package/client/assets/ProjectInfo-Dp1TZyBd.js.br +0 -0
- package/client/assets/ProjectInfo-Dp1TZyBd.js.gz +0 -0
- package/client/assets/ProtectRoute-EejQ5o_H.js.br +0 -0
- package/client/assets/ProtectRoute-EejQ5o_H.js.gz +0 -0
- package/client/assets/ProtectedCuesheet-C_tKodwo.css +0 -1
- package/client/assets/ProtectedCuesheet-C_tKodwo.css.br +0 -0
- package/client/assets/ProtectedCuesheet-C_tKodwo.css.gz +0 -0
- package/client/assets/ProtectedCuesheet-DvYSgueA.js +0 -2
- package/client/assets/ProtectedCuesheet-DvYSgueA.js.br +0 -0
- package/client/assets/ProtectedCuesheet-DvYSgueA.js.gz +0 -0
- package/client/assets/ProtectedCuesheet-DvYSgueA.js.map +0 -1
- package/client/assets/ProtectedEditor-B0l0X3QP.js +0 -3
- package/client/assets/ProtectedEditor-B0l0X3QP.js.br +0 -0
- package/client/assets/ProtectedEditor-B0l0X3QP.js.gz +0 -0
- package/client/assets/ProtectedEditor-B0l0X3QP.js.map +0 -1
- package/client/assets/ProtectedEditor-Dw0pWw0J.css.br +0 -0
- package/client/assets/RundownEntry-CwiStTnR.js +0 -2
- package/client/assets/RundownEntry-CwiStTnR.js.br +0 -0
- package/client/assets/RundownEntry-CwiStTnR.js.gz +0 -0
- package/client/assets/RundownEntry-CwiStTnR.js.map +0 -1
- package/client/assets/RundownExport-CCaOfHIr.js +0 -3
- package/client/assets/RundownExport-CCaOfHIr.js.br +0 -0
- package/client/assets/RundownExport-CCaOfHIr.js.gz +0 -0
- package/client/assets/RundownExport-CCaOfHIr.js.map +0 -1
- package/client/assets/RundownExport-DtSvAfBG.css.br +0 -0
- package/client/assets/RundownExport-DtSvAfBG.css.gz +0 -0
- package/client/assets/Select-cHK8JrMG.js.br +0 -0
- package/client/assets/Select-cHK8JrMG.js.gz +0 -0
- package/client/assets/Select-cHK8JrMG.js.map +0 -1
- package/client/assets/Studio-BzwFDYzk.js +0 -2
- package/client/assets/Studio-BzwFDYzk.js.br +0 -0
- package/client/assets/Studio-BzwFDYzk.js.gz +0 -0
- package/client/assets/Studio-BzwFDYzk.js.map +0 -1
- package/client/assets/StyleEditor-RZvkKHdf.js.br +0 -0
- package/client/assets/StyleEditor-RZvkKHdf.js.gz +0 -0
- package/client/assets/SuperscriptPeriod-DaZq1rr6.js.br +0 -0
- package/client/assets/SuperscriptPeriod-DaZq1rr6.js.gz +0 -0
- package/client/assets/SuperscriptPeriod-DaZq1rr6.js.map +0 -1
- package/client/assets/SuperscriptTime-Mc0ZGBMo.js +0 -2
- package/client/assets/SuperscriptTime-Mc0ZGBMo.js.br +0 -0
- package/client/assets/SuperscriptTime-Mc0ZGBMo.js.gz +0 -0
- package/client/assets/SuperscriptTime-Mc0ZGBMo.js.map +0 -1
- package/client/assets/TimeElements-dIvFHgcd.js.br +0 -0
- package/client/assets/TimeElements-dIvFHgcd.js.gz +0 -0
- package/client/assets/TimeElements-dIvFHgcd.js.map +0 -1
- package/client/assets/TimeInput-Duzx40TC.js +0 -2
- package/client/assets/TimeInput-Duzx40TC.js.br +0 -0
- package/client/assets/TimeInput-Duzx40TC.js.gz +0 -0
- package/client/assets/TimelinePage-C-OHrCR8.js +0 -2
- package/client/assets/TimelinePage-C-OHrCR8.js.br +0 -0
- package/client/assets/TimelinePage-C-OHrCR8.js.gz +0 -0
- package/client/assets/TimelinePage-C-OHrCR8.js.map +0 -1
- package/client/assets/Timer-CGqVtVEC.js +0 -2
- package/client/assets/Timer-CGqVtVEC.js.br +0 -0
- package/client/assets/Timer-CGqVtVEC.js.gz +0 -0
- package/client/assets/Timer-CGqVtVEC.js.map +0 -1
- package/client/assets/TimerControlExport-DavNxY9p.css.br +0 -0
- package/client/assets/TimerControlExport-GJn4WWdH.js +0 -2
- package/client/assets/TimerControlExport-GJn4WWdH.js.br +0 -0
- package/client/assets/TimerControlExport-GJn4WWdH.js.gz +0 -0
- package/client/assets/TitleCard-BqbrUnHO.js.br +0 -0
- package/client/assets/TitleCard-BqbrUnHO.js.gz +0 -0
- package/client/assets/Tooltip-BQBvaIZx.js.br +0 -0
- package/client/assets/Tooltip-BQBvaIZx.js.gz +0 -0
- package/client/assets/Tooltip-BQBvaIZx.js.map +0 -1
- package/client/assets/ViewLogo-BdL1hUV1.js +0 -2
- package/client/assets/ViewLogo-BdL1hUV1.js.br +0 -0
- package/client/assets/ViewLogo-BdL1hUV1.js.gz +0 -0
- package/client/assets/ViewLogo-BdL1hUV1.js.map +0 -1
- package/client/assets/ViewParamsEditor-CFedpp6w.js +0 -2
- package/client/assets/ViewParamsEditor-CFedpp6w.js.br +0 -0
- package/client/assets/ViewParamsEditor-CFedpp6w.js.gz +0 -0
- package/client/assets/ViewParamsEditor-CFedpp6w.js.map +0 -1
- package/client/assets/dateConfig-BU1RZfIK.js.br +0 -0
- package/client/assets/dateConfig-BU1RZfIK.js.gz +0 -0
- package/client/assets/editorSettings-BMt-7s8I.js.br +0 -0
- package/client/assets/editorSettings-BMt-7s8I.js.gz +0 -0
- package/client/assets/getProgress-sdxPEEPi.js.br +0 -0
- package/client/assets/getProgress-sdxPEEPi.js.gz +0 -0
- package/client/assets/index-BuJoGGff.css.br +0 -0
- package/client/assets/index-BuJoGGff.css.gz +0 -0
- package/client/assets/index-CoGiopcb.js +0 -3
- package/client/assets/index-CoGiopcb.js.br +0 -0
- package/client/assets/index-CoGiopcb.js.gz +0 -0
- package/client/assets/index-CoGiopcb.js.map +0 -1
- package/client/assets/offset-BS90Rks2.js.br +0 -0
- package/client/assets/offset-BS90Rks2.js.gz +0 -0
- package/client/assets/parseUserTime-DZJMcfuJ.js.br +0 -0
- package/client/assets/parseUserTime-DZJMcfuJ.js.gz +0 -0
- package/client/assets/playbackstate-CWexoP3a.js.br +0 -0
- package/client/assets/playbackstate-CWexoP3a.js.gz +0 -0
- package/client/assets/presentation.utils-Zo5hNQje.js.br +0 -0
- package/client/assets/presentation.utils-Zo5hNQje.js.gz +0 -0
- package/client/assets/rundownUtils-Dl1x6NDv.js +0 -2
- package/client/assets/rundownUtils-Dl1x6NDv.js.br +0 -0
- package/client/assets/rundownUtils-Dl1x6NDv.js.gz +0 -0
- package/client/assets/timer.utils-BnMyVO6Z.js.br +0 -0
- package/client/assets/timer.utils-BnMyVO6Z.js.gz +0 -0
- package/client/assets/timer.utils-BnMyVO6Z.js.map +0 -1
- package/client/assets/useCustomFields-CcTb-GQM.js.br +0 -0
- package/client/assets/useCustomFields-CcTb-GQM.js.gz +0 -0
- package/client/assets/useFollowComponent-BjhV6Uv8.js.br +0 -0
- package/client/assets/useFollowComponent-BjhV6Uv8.js.gz +0 -0
- package/client/assets/useProjectData-B5mjXsMj.js +0 -2
- package/client/assets/useProjectData-B5mjXsMj.js.br +0 -0
- package/client/assets/useProjectData-B5mjXsMj.js.gz +0 -0
- package/client/assets/useProjectData-B5mjXsMj.js.map +0 -1
- package/client/assets/useReport-zMbyWwpn.js.br +0 -0
- package/client/assets/useReport-zMbyWwpn.js.gz +0 -0
- package/client/assets/useRundown-CHsh5rnl.js +0 -2
- package/client/assets/useRundown-CHsh5rnl.js.br +0 -0
- package/client/assets/useRundown-CHsh5rnl.js.gz +0 -0
- package/client/assets/useRundown-CHsh5rnl.js.map +0 -1
- package/client/assets/useWindowTitle-mLKt65i7.js.br +0 -0
- package/client/assets/useWindowTitle-mLKt65i7.js.gz +0 -0
- package/client/assets/useWindowTitle-mLKt65i7.js.map +0 -1
- package/client/assets/validateEvent-CUmvjN95.js.br +0 -0
- package/client/assets/validateEvent-CUmvjN95.js.gz +0 -0
- package/client/assets/vendor-Cdwxo8bP.js +0 -75
- package/client/assets/vendor-Cdwxo8bP.js.br +0 -0
- package/client/assets/vendor-Cdwxo8bP.js.gz +0 -0
- package/client/assets/viewLoader.utils-DuXjY5zb.js.br +0 -0
- package/client/assets/viewLoader.utils-DuXjY5zb.js.gz +0 -0
- package/client/assets/viewUtils-dKRKkb_F.js.br +0 -0
- package/client/assets/viewUtils-dKRKkb_F.js.gz +0 -0
- package/client/assets/viewUtils-dKRKkb_F.js.map +0 -1
- /package/client/assets/{useProjectData-Cw1aXCwD.css → SwatchPicker-Cw1aXCwD.css} +0 -0
- /package/client/assets/{useProjectData-Cw1aXCwD.css.br → SwatchPicker-Cw1aXCwD.css.br} +0 -0
- /package/client/assets/{useProjectData-Cw1aXCwD.css.gz → SwatchPicker-Cw1aXCwD.css.gz} +0 -0
|
Binary file
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{j as e,aY as ze,aZ as Ge,a_ as qe,h as b,aG as Q,aH as X,bf as Y,ch as He,v as Ke,f as Ve,bq as We,ci as Ze,cj as Qe,bQ as Xe,bM as le,bN as Ye,aN as Je,bS as et,ck as tt,y as st,bR as nt,br as ot,av as rt,bP as at,cl as it,am as lt,bl as ct,cm as ut,ah as Z,aF as dt,T as pt,K as mt,ar as ft}from"./vendor-Cdwxo8bP.js";import{m as A,ah as ce,e as N,B as ne,n as bt,bg as ue,k as J,M as de,bf as _t,ak as q,bT as M,K as ht,b2 as oe,b6 as yt,h as re,T as H,bU as vt,aC as pe}from"./index-CoGiopcb.js";import{i as gt,s as xt,k as jt}from"./useRundown-CHsh5rnl.js";import{u as D}from"./dateConfig-BU1RZfIK.js";import{p as Et}from"./parseUserTime-DZJMcfuJ.js";import{T as kt,u as me,a as fe,g as St}from"./RundownExport-CCaOfHIr.js";import{E as K}from"./validateEvent-CUmvjN95.js";import{T as E}from"./Tooltip-BQBvaIZx.js";import{a as It,u as Ct}from"./MilestoneEditor-B5BdJ5ju.js";import{u as Nt}from"./useReport-zMbyWwpn.js";import{i as be}from"./playbackstate-CWexoP3a.js";import{g as wt}from"./getProgress-sdxPEEPi.js";import"./useProjectData-B5mjXsMj.js";import"./editorSettings-BMt-7s8I.js";import"./rundownUtils-Dl1x6NDv.js";import"./EditorUtils-DoaSwWiz.js";import"./ProtectRoute-EejQ5o_H.js";import"./Modal-B8ZZbVMg.js";import"./Empty-D1UteOYj.js";import"./useFollowComponent-BjhV6Uv8.js";import"./offset-BS90Rks2.js";import"./TimeInput-Duzx40TC.js";import"./useCustomFields-CcTb-GQM.js";import"./Select-cHK8JrMG.js";(function(){try{var s=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},t=new s.Error().stack;t&&(s._sentryDebugIds=s._sentryDebugIds||{},s._sentryDebugIds[t]="b20a6728-7b66-4831-aa74-3b28bba6f7d9",s._sentryDebugIdIdentifier="sentry-dbid-b20a6728-7b66-4831-aa74-3b28bba6f7d9")}catch{}})();const Tt="_radioGroup_sxz6b_17",Rt="_item_sxz6b_23",$t="_radio_sxz6b_17",At="_indicator_sxz6b_55",P={radioGroup:Tt,item:Rt,radio:$t,indicator:At};function Dt({items:s,onValueChange:t,...n}){return e.jsx(ze,{onValueChange:o=>t==null?void 0:t(o),className:P.radioGroup,...n,children:s.map(o=>e.jsxs("label",{className:P.item,children:[e.jsx(Ge,{value:o.value.toString(),className:P.radio,children:e.jsx(qe,{className:P.indicator})}),o.label]},o.value.toString()))})}const Mt="_delayInput_ksn92_17",Pt="_inputField_ksn92_23",ae={delayInput:Mt,inputField:Pt};function Lt(s){const{eventId:t,duration:n}=s,{updateEntry:o}=D(),[l,a]=b.useState(""),c=b.useRef(null),u=b.useRef(!1);b.useEffect(()=>{typeof n>"u"||a(A(n))},[n]);const d=r=>{if(u.current){u.current=!1;return}const y=r.startsWith("-");let _=Et(r);y&&(_=_*-1),_!==n&&(p(_),a(A(_)))},p=r=>{o({id:t,duration:r})},m=()=>{var r;return(r=c.current)==null?void 0:r.select()},f=r=>{var y,_;r.key==="Enter"?((y=c.current)==null||y.blur(),d(r.target.value)):r.key==="Tab"?d(r.target.value):r.key==="Escape"&&(u.current=!0,a(A(n)),(_=c.current)==null||_.blur())},v=r=>{r==="add"?n<0&&p(n*-1):r==="subtract"&&n>0&&p(n*-1)},h=l.startsWith("-")?"subtract":"add";return e.jsxs("div",{className:ae.delayInput,children:[e.jsx(ce,{ref:c,"data-testid":"delay-input",className:ae.inputField,placeholder:"-",onFocus:m,onChange:r=>a(r.target.value),onBlur:r=>d(r.target.value),onKeyDown:f,value:l,maxLength:9}),e.jsx(Dt,{onValueChange:v,value:h,items:[{value:"add",label:"Add time"},{value:"subtract",label:"Subtract time"}]})]})}const Bt="_delay_tel5v_17",Ft="_hasCursor_tel5v_34",Ut="_drag_tel5v_38",V={delay:Bt,hasCursor:Ft,drag:Ut};function Ot({data:s,hasCursor:t}){const{applyDelay:n,deleteEntry:o}=D(),l=b.useRef(null),{attributes:a,listeners:c,setNodeRef:u,isDragging:d,transform:p,transition:m}=Q({id:s.id,data:{type:"delay"},animateLayoutChanges:()=>!1}),f={zIndex:d?2:"inherit",transform:X.Translate.toString(p),transition:m};b.useEffect(()=>{var r;t&&((r=l==null?void 0:l.current)==null||r.focus())},[t]);const v=()=>{n(s.id)},h=()=>{o([s.id])};return e.jsxs("div",{className:N([V.delay,t?V.hasCursor:null]),ref:u,style:f,"data-testid":"rundown-delay",children:[e.jsx("span",{className:V.drag,ref:l,...a,...c,children:e.jsx(Y,{})}),e.jsx(Lt,{eventId:s.id,duration:s.duration}),e.jsxs(ne,{onClick:v,variant:"ghosted-white",children:[e.jsx(He,{})," Make permanent"]}),e.jsxs(ne,{onClick:h,variant:"ghosted-white",children:[e.jsx(Ke,{}),"Cancel"]})]})}const zt=Ve(s=>({selectedEventId:null,setSelectedEventId:t=>s(()=>({selectedEventId:t})),clearSelectedEventId:()=>s(()=>({selectedEventId:null}))})),Gt="_blink_1uqu6_1",qt="_fourtyfive_1uqu6_13",Ht="_chip_1uqu6_17",Kt="_over_1uqu6_23",Vt="_under_1uqu6_26",Wt="_due_1uqu6_29",B={blink:Gt,fourtyfive:qt,chip:Ht,over:Kt,under:Vt,due:Wt};function Zt({timeStart:s,delay:t,dayOffset:n,isPast:o,isLoaded:l,className:a,totalGap:c,id:u,duration:d,isLinkedToLoaded:p}){const{playback:m}=bt();if(l)return null;const f=be(m);return!f||o?e.jsx(Xt,{className:a,id:u,duration:d}):f?e.jsx(E,{text:"Expected time until start",render:e.jsx("span",{}),className:a,children:e.jsx(Qt,{timeStart:s,delay:t,dayOffset:n,totalGap:c,isLinkedToLoaded:p})}):null}function Qt({timeStart:s,delay:t,dayOffset:n,totalGap:o,isLinkedToLoaded:l}){const a=_t({timeStart:s,delay:t,dayOffset:n},{totalGap:o,isLinkedToLoaded:l}),c=a<ue,u=c?"DUE":`${J(Math.abs(a),a>2*de)}`;return e.jsx("div",{className:N([B.chip,c&&B.due]),children:u})}function Xt(s){const{className:t,id:n,duration:o}=s,{data:l}=Nt(),a=l[n],[c,u,d]=b.useMemo(()=>{if(!a)return[null,"none",""];const{startedAt:p,endedAt:m}=a;if(!p||!m)return[null,"none",""];const v=m-p-o,h=Math.abs(v);if(h<ue)return["ontime","under","Event finished on time"];const r=v>0,y=A(h),_=`Event ran ${r?"over":"under"} time by ${y}`;return[`${r?"+":"-"}${J(h,h>2*de)}`,r?"over":"under",_]},[a,o]);return c?e.jsx(E,{text:d,render:e.jsx("span",{}),className:N([B.chip,B[u],t]),children:c==="ontime"?e.jsx(We,{size:"1.1rem"}):c}):null}const Yt="_blink_bc2h9_1",Jt="_fourtyfive_bc2h9_13",es="_rundownEvent_bc2h9_17",ts="_loaded_bc2h9_39",ss="_play_bc2h9_42",ns="_roll_bc2h9_47",os="_pause_bc2h9_52",rs="_selected_bc2h9_57",as="_hasCursor_bc2h9_60",is="_past_bc2h9_63",ls="_skip_bc2h9_63",cs="_timerNote_bc2h9_63",us="_statusElements_bc2h9_64",ds="_eventTitle_bc2h9_65",ps="_eventNote_bc2h9_66",ms="_eventTimers_bc2h9_67",fs="_eventStatus_bc2h9_68",bs="_playbackActions_bc2h9_69",_s="_binder_bc2h9_70",hs="_drag_bc2h9_97",ys="_cue_bc2h9_115",vs="_editMode_bc2h9_143",gs="_chipSection_bc2h9_148",xs="_titleSection_bc2h9_152",js="_nextTag_bc2h9_158",Es="_progressBg_bc2h9_171",ks="_hidden_bc2h9_180",Ss="_flip_bc2h9_184",Is="_statusIcon_bc2h9_218",Cs="_active_bc2h9_222",Ns="_disabled_bc2h9_225",i={blink:Yt,fourtyfive:Jt,rundownEvent:es,loaded:ts,play:ss,roll:ns,pause:os,selected:rs,hasCursor:as,past:is,skip:ls,timerNote:cs,statusElements:us,eventTitle:ds,eventNote:ps,eventTimers:ms,eventStatus:fs,playbackActions:bs,binder:_s,drag:hs,cue:ys,editMode:vs,chipSection:gs,titleSection:xs,nextTag:js,progressBg:Es,hidden:ks,flip:Ss,statusIcon:Is,active:Cs,disabled:Ns},ws=b.memo(Ts);function Ts({eventId:s,skip:t,isPlaying:n,isPaused:o,loaded:l,disablePlayback:a}){const{updateEntry:c}=D(),u=f=>{f.stopPropagation(),c({id:s,skip:!t})},d=f=>{f.stopPropagation(),n?M.pause():o?M.start():M.startEvent(s)},p=f=>{f.stopPropagation(),M.loadEvent(s)},m=o?{tooltip:"Continue event",backgroundColor:"#339E4E"}:n?{tooltip:"Pause event",backgroundColor:"#c05621"}:{tooltip:"Start event",backgroundColor:void 0};return e.jsxs("div",{className:i.playbackActions,children:[e.jsx(E,{text:"Skip event",render:e.jsx(q,{variant:"subtle-white"}),onClick:u,tabIndex:-1,disabled:l,style:{background:t?"#9A0000":void 0},"aria-label":"Skip event",children:t?e.jsx(Ze,{}):e.jsx(Qe,{})}),e.jsx(E,{text:"Load event",render:e.jsx(q,{variant:"subtle-white"}),onClick:p,tabIndex:-1,disabled:a,"aria-label":"Load event",children:e.jsx(Xe,{className:i.flip})}),e.jsx(E,{text:m.tooltip,render:e.jsx(q,{variant:"subtle-white"}),onClick:d,tabIndex:-1,disabled:a,style:{backgroundColor:m.backgroundColor},"aria-label":n?"Pause event":"Start event",children:n?e.jsx(Ye,{}):e.jsx(le,{})})]})}const Rs="_progressBar_1glmb_17",$s={progressBar:Rs};function As(){const s=ht(),t=wt(s.current,s.duration);return e.jsx("div",{className:$s.progressBar,style:{width:`${t}%`}})}const Ds=b.memo(Ms);function Ms({eventId:s,timeStart:t,timeEnd:n,duration:o,timeStrategy:l,linkStart:a,countToEnd:c,endAction:u,timerType:d,title:p,note:m,delay:f,isNext:v,skip:h=!1,loaded:r,playback:y,isRolling:_,dayOffset:w,isPast:I,totalGap:T,isLinkedToLoaded:R,hasTriggers:g}){const[x,F]=b.useState(!1),[U]=Je({key:yt.editorMode,defaultValue:oe.Edit});b.useEffect(()=>{F(!0)},[]);const O=y===re.Play,z=y===re.Pause;return x?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:N([i.eventTimers,U===oe.Edit&&i.editMode]),children:e.jsx(It,{eventId:s,timeStart:t,timeEnd:n,duration:o,delay:f,timeStrategy:l,linkStart:a,countToEnd:c})}),e.jsxs("div",{className:i.titleSection,children:[e.jsx(kt,{title:p,entryId:s,placeholder:"Event title",className:i.eventTitle}),v&&e.jsx("span",{className:i.nextTag,children:"UP NEXT"})]}),e.jsx(ws,{eventId:s,skip:h,isPlaying:O,isPaused:z,loaded:r,disablePlayback:h||_}),!h&&e.jsx(Zt,{className:i.chipSection,id:s,timeStart:t,delay:f,dayOffset:w,isLinkedToLoaded:R,isPast:I,isLoaded:r,totalGap:T,duration:o}),e.jsxs("div",{className:i.statusElements,id:"entry-status","data-timertype":d,children:[e.jsx("span",{className:i.eventNote,children:m}),e.jsx("div",{className:r?i.progressBg:`${i.progressBg} ${i.hidden}`,children:r&&e.jsx(As,{})}),e.jsxs("div",{className:i.eventStatus,tabIndex:-1,children:[e.jsx(E,{text:`Time type: ${d}`,render:e.jsx("span",{}),children:e.jsx(Ls,{type:d,className:i.statusIcon})}),e.jsx(E,{text:`End action: ${u}`,render:e.jsx("span",{}),children:e.jsx(Ps,{action:u,className:i.statusIcon})}),e.jsx(E,{text:`${c?"Count to End":"Count duration"}`,render:e.jsx("span",{}),children:e.jsx(et,{className:`${i.statusIcon} ${c?i.active:i.disabled}`})}),e.jsx(E,{text:"Event has Triggers",render:e.jsx("span",{}),children:e.jsx(tt,{className:`${i.statusIcon} ${g?i.active:i.disabled}`})})]})]})]}):null}function Ps(s){const{action:t,className:n}=s,o=N([t!==K.None&&i.active,n]);return t===K.LoadNext?e.jsx(at,{className:o}):t===K.PlayNext?e.jsx(it,{className:o}):e.jsx(le,{className:n})}function Ls(s){const{type:t,className:n}=s;return t===H.CountUp?e.jsx(st,{className:n}):t===H.Clock?e.jsx(nt,{className:n}):t===H.None?e.jsx(ot,{className:n}):e.jsx(rt,{className:n})}function Bs(s,t){if(!t)return;const n=Math.max(0,s+t);return`New start ${vt(A(n))}`}function Fs(s,t){if(s===0)return t?"(next day)":void 0;const n=J(Math.abs(s),!1);return`${s<0?"Overlap":"Gap"} ${n}${t?" (next day)":""}`}const Us="_indicators_duajo_18",Os="_delay_duajo_29",zs="_gap_duajo_36",W={indicators:Us,delay:Os,gap:zs};function Gs({timeStart:s,delay:t,gap:n,isNextDay:o}){const l=Fs(n,o),a=Bs(s,t);return e.jsxs("div",{className:W.indicators,children:[a&&e.jsx("div",{className:W.delay,children:a}),l&&e.jsx("div",{className:W.gap,children:l})]})}function qs({eventId:s,cue:t,timeStart:n,timeEnd:o,duration:l,timeStrategy:a,linkStart:c,flag:u,countToEnd:d,eventIndex:p,endAction:m,timerType:f,title:v,note:h,delay:r,colour:y,isPast:_,isNext:w,skip:I=!1,parent:T,loaded:R,hasCursor:g,playback:x,isRolling:F,gap:U,isNextDay:O,dayOffset:z,totalGap:_e,isLinkedToLoaded:he,hasTriggers:ye}){const{selectedEventId:$,setSelectedEventId:ve,clearSelectedEventId:ge}=zt(),{updateEntry:xe,batchUpdateEvents:ee,clone:je,deleteEntry:te,groupEntries:Ee,swapEvents:ke}=D(),{selectedEvents:C,unselect:Se,setSelectedEvents:Ie,clearSelectedEvents:se}=me(),k=b.useRef(null),[Ce,Ne]=b.useState(!1),[we]=fe(C.size>1?[{type:"item",label:"Link to previous",icon:lt,onClick:()=>{ee({linkStart:!0},Array.from(C))}},{type:"item",label:"Unlink from previous",icon:ct,onClick:()=>{ee({linkStart:!1},Array.from(C))}},{type:"divider"},{type:"item",label:"Group",icon:ut,onClick:()=>{Ee(Array.from(C)),se()},disabled:T!==null},{type:"divider"},{type:"item",label:"Delete",icon:Z,onClick:()=>{se(),te(Array.from(C))}}]:[{type:"item",label:u?"Remove flag":"Add flag",icon:dt,onClick:()=>{xe({id:s,flag:!u})}},{type:"divider"},{type:"item",label:"Add to swap",icon:pt,onClick:()=>ve(s)},{type:"item",label:`Swap this event with ${$??""}`,icon:mt,onClick:()=>{$&&(ke($,s),ge())},disabled:$==null||$===s},{type:"item",label:"Clone",icon:ft,onClick:()=>je(s,{after:s})},{type:"divider"},{type:"item",label:"Delete",icon:Z,onClick:()=>{te([s]),Se(s)}}]),{isDragging:Te,attributes:Re,listeners:$e,setNodeRef:Ae,transform:De,transition:Me}=Q({id:s,data:{type:"event",parent:T},animateLayoutChanges:()=>!1}),Pe={zIndex:Te?2:"inherit",transform:X.Translate.toString(De),transition:Me},Le=y&&pe(y);b.useEffect(()=>{if(!g||(k==null?void 0:k.current)==null)return;const S=document.activeElement,j=k.current.closest("#event-group");j&&!j.contains(S)&&k.current.focus()},[g]),b.useLayoutEffect(()=>{const S=new IntersectionObserver(([G])=>{G.isIntersecting&&Ne(!0)},{root:null,threshold:1}),j=k.current;return j&&S.observe(j),()=>{j&&S.unobserve(j)}},[k]);const Be=C.has(s),Fe=N([i.rundownEvent,I?i.skip:null,_?i.past:null,R?i.loaded:null,x?i[x]:null,Be?i.selected:null,g?i.hasCursor:null]),Ue=S=>{if(S.stopPropagation(),C.size>1&&S.button===2)return;const j=p-1,G=St(S);Ie({id:s,index:j,selectMode:G})},Oe=x?be(x):!1;return e.jsxs("div",{className:Fe,ref:Ae,style:Pe,onClick:Ue,onContextMenu:we,"data-testid":"rundown-event",...Oe?{"data-running":!0}:{},children:[e.jsx(Gs,{timeStart:n,delay:r,gap:U,isNextDay:O}),e.jsxs("div",{className:i.binder,style:{...Le},tabIndex:-1,children:[e.jsx("span",{className:i.drag,ref:k,...Re,...$e,children:e.jsx(Y,{})}),e.jsx("span",{className:i.cue,children:t})]}),Ce&&e.jsx(Ds,{timeStart:n,timeEnd:o,duration:l,linkStart:c,countToEnd:d,timeStrategy:a,eventId:s,eventIndex:p,endAction:m,timerType:f,title:v,note:h,delay:r,isNext:w,skip:I,loaded:R,playback:x,isRolling:F,dayOffset:z,isPast:_,totalGap:_e,isLinkedToLoaded:he,hasTriggers:ye})]})}const Hs="_milestone_102sw_17",Ks="_hasCursor_102sw_35",Vs="_binder_102sw_39",Ws="_drag_102sw_47",L={milestone:Hs,hasCursor:Ks,binder:Vs,drag:Ws};function Zs({colour:s,cue:t,entryId:n,hasCursor:o,title:l}){const a=b.useRef(null),{updateEntry:c,deleteEntry:u}=D(),{selectedEvents:d,setSingleEntrySelection:p}=me(),[m]=fe([{type:"item",label:"Delete",icon:Z,onClick:()=>u([n])}]),{attributes:f,listeners:v,setNodeRef:h,isDragging:r,transform:y,transition:_}=Q({id:n,data:{type:"milestone"},animateLayoutChanges:()=>!1}),w=g=>{g.stopPropagation(),!(d.size>1&&g.button===2)&&p({id:n})},I=(g,x)=>{c({id:n,[g]:x})},T={zIndex:r?2:"inherit",transform:X.Translate.toString(y),transition:_},R=s&&pe(s);return e.jsxs("div",{className:N([L.milestone,o?L.hasCursor:null]),ref:h,onClick:w,onContextMenu:m,style:T,"data-testid":"rundown-milestone",children:[e.jsx("div",{className:L.binder,style:{...R},children:e.jsx("span",{className:L.drag,ref:a,...f,...v,children:e.jsx(Y,{})})}),e.jsx(ie,{field:"cue",initialValue:t,placeholder:"Cue",submitHandler:I}),e.jsx(ie,{field:"title",initialValue:l,placeholder:"Title",submitHandler:I})]})}function ie({field:s,initialValue:t,placeholder:n,submitHandler:o}){const l=b.useRef(null),a=b.useCallback(m=>o(s,m),[s,o]),{value:c,onChange:u,onBlur:d,onKeyDown:p}=Ct(t,a,l,{submitOnEnter:!0});return e.jsx(ce,{id:s,ref:l,fluid:!0,value:c,placeholder:n,onChange:u,onBlur:d,onKeyDown:p})}function xn({isPast:s,data:t,loaded:n,hasCursor:o,isNext:l,playback:a,isRolling:c,eventIndex:u,isNextDay:d,totalGap:p,isLinkedToLoaded:m}){return gt(t)?e.jsx(qs,{eventId:t.id,eventIndex:u,cue:t.cue,timeStart:t.timeStart,timeEnd:t.timeEnd,duration:t.duration,timeStrategy:t.timeStrategy,linkStart:t.linkStart,flag:t.flag,countToEnd:t.countToEnd,endAction:t.endAction,timerType:t.timerType,title:t.title,note:t.note,delay:t.delay,colour:t.colour,isPast:s,isNext:l,skip:t.skip,parent:t.parent,loaded:n,hasCursor:o,playback:a,isRolling:c,gap:t.gap,isNextDay:d,dayOffset:t.dayOffset,totalGap:p,isLinkedToLoaded:m,hasTriggers:t.triggers.length>0}):xt(t)?e.jsx(Ot,{data:t,hasCursor:o}):jt(t)?e.jsx(Zs,{colour:t.colour,cue:t.cue,entryId:t.id,hasCursor:o,title:t.title}):null}export{xn as default};
|
|
2
|
-
//# sourceMappingURL=RundownEntry-CwiStTnR.js.map
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RundownEntry-CwiStTnR.js","sources":["../../src/common/components/input/delay-input/BlockRadio.tsx","../../src/common/components/input/delay-input/DelayInput.tsx","../../src/features/rundown/rundown-delay/RundownDelay.tsx","../../src/features/rundown/useEventIdSwapping.ts","../../src/features/rundown/rundown-event/composite/RundownEventChip.tsx","../../src/features/rundown/rundown-event/composite/RundownEventPlayback.tsx","../../src/features/rundown/rundown-event/composite/RundownEventProgressBar.tsx","../../src/features/rundown/rundown-event/RundownEventInner.tsx","../../src/features/rundown/rundown-event/rundownEvent.utils.ts","../../src/features/rundown/rundown-event/RundownIndicators.tsx","../../src/features/rundown/rundown-event/RundownEvent.tsx","../../src/features/rundown/rundown-milestone/RundownMilestone.tsx","../../src/features/rundown/RundownEntry.tsx"],"sourcesContent":["import { Radio } from '@base-ui-components/react/radio';\nimport { RadioGroup as BaseRadioGroup } from '@base-ui-components/react/radio-group';\n\nimport style from './BlockRadio.module.scss';\n\ninterface BlockRadioProps<T extends string | number | boolean> extends Omit<BaseRadioGroup.Props, 'onValueChange'> {\n items: {\n value: T;\n label: string;\n }[];\n onValueChange?: (value: T) => void;\n}\n\nexport default function BlockRadio<T extends string | number | boolean>({\n items,\n onValueChange,\n ...elementProps\n}: BlockRadioProps<T>) {\n return (\n <BaseRadioGroup\n onValueChange={(value) => onValueChange?.(value as T)}\n className={style.radioGroup}\n {...elementProps}\n >\n {items.map((item) => (\n <label className={style.item} key={item.value.toString()}>\n <Radio.Root value={item.value.toString()} className={style.radio}>\n <Radio.Indicator className={style.indicator} />\n </Radio.Root>\n {item.label}\n </label>\n ))}\n </BaseRadioGroup>\n );\n}\n","import { KeyboardEvent, useEffect, useRef, useState } from 'react';\nimport { millisToString, parseUserTime } from 'ontime-utils';\n\nimport { useEntryActions } from '../../../hooks/useEntryAction';\nimport Input from '../input/Input';\n\nimport BlockRadio from './BlockRadio';\n\nimport style from './DelayInput.module.scss';\n\ninterface DelayInputProps {\n eventId: string;\n duration: number;\n}\n\nexport default function DelayInput(props: DelayInputProps) {\n const { eventId, duration } = props;\n const { updateEntry } = useEntryActions();\n\n const [value, setValue] = useState<string>('');\n const inputRef = useRef<HTMLInputElement | null>(null);\n // avoid wrong submit on cancel\n const ignoreChangeRef = useRef(false);\n\n // set internal value on duration change\n useEffect(() => {\n if (typeof duration === 'undefined') {\n return;\n }\n setValue(millisToString(duration));\n }, [duration]);\n\n /**\n * @description Prepare delay value for update\n * @param {string} newValue string to be parsed\n */\n const validateAndSubmit = (newValue: string) => {\n if (ignoreChangeRef.current) {\n ignoreChangeRef.current = false;\n return;\n }\n\n const isNegative = newValue.startsWith('-');\n let newMillis = parseUserTime(newValue);\n\n if (isNegative) {\n newMillis = newMillis * -1;\n }\n\n if (newMillis === duration) {\n return;\n }\n\n submitChange(newMillis);\n setValue(millisToString(newMillis));\n };\n\n const submitChange = (value: number) => {\n updateEntry({\n id: eventId,\n duration: value,\n });\n };\n\n /**\n * @description Selects input text on focus\n */\n const handleFocus = () => inputRef.current?.select();\n\n /**\n * @description Handles common keys for submit and cancel\n * @param {KeyboardEvent} event\n */\n const onKeyDownHandler = (event: KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n inputRef.current?.blur();\n validateAndSubmit((event.target as HTMLInputElement).value);\n } else if (event.key === 'Tab') {\n validateAndSubmit((event.target as HTMLInputElement).value);\n } else if (event.key === 'Escape') {\n ignoreChangeRef.current = true;\n setValue(millisToString(duration));\n inputRef.current?.blur();\n }\n };\n\n /**\n * @description handles direction change to delay\n * @param newDirection\n */\n const handleSlipChange = (newDirection: 'add' | 'subtract') => {\n if (newDirection === 'add') {\n // add time\n if (duration < 0) {\n submitChange(duration * -1);\n }\n } else if (newDirection === 'subtract') {\n // subtract time\n if (duration > 0) {\n submitChange(duration * -1);\n }\n }\n };\n\n const checkedOption = value.startsWith('-') ? 'subtract' : 'add';\n\n return (\n <div className={style.delayInput}>\n <Input\n ref={inputRef}\n data-testid='delay-input'\n className={style.inputField}\n placeholder='-'\n onFocus={handleFocus}\n onChange={(event) => setValue(event.target.value)}\n onBlur={(event) => validateAndSubmit(event.target.value)}\n onKeyDown={onKeyDownHandler}\n value={value}\n maxLength={9}\n />\n <BlockRadio\n onValueChange={handleSlipChange}\n value={checkedOption}\n items={[\n { value: 'add', label: 'Add time' },\n { value: 'subtract', label: 'Subtract time' },\n ]}\n />\n </div>\n );\n}\n","import { useEffect, useRef } from 'react';\nimport { IoCheckmarkDone, IoClose, IoReorderTwo } from 'react-icons/io5';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { OntimeDelay } from 'ontime-types';\n\nimport Button from '../../../common/components/buttons/Button';\nimport DelayInput from '../../../common/components/input/delay-input/DelayInput';\nimport { useEntryActions } from '../../../common/hooks/useEntryAction';\nimport { cx } from '../../../common/utils/styleUtils';\n\nimport style from './RundownDelay.module.scss';\n\ninterface RundownDelayProps {\n data: OntimeDelay;\n hasCursor: boolean;\n}\n\nexport default function RundownDelay({ data, hasCursor }: RundownDelayProps) {\n const { applyDelay, deleteEntry } = useEntryActions();\n const handleRef = useRef<null | HTMLSpanElement>(null);\n\n const {\n attributes: dragAttributes,\n listeners: dragListeners,\n setNodeRef,\n isDragging,\n transform,\n transition,\n } = useSortable({\n id: data.id,\n data: {\n type: 'delay',\n },\n animateLayoutChanges: () => false,\n });\n\n const dragStyle = {\n zIndex: isDragging ? 2 : 'inherit',\n transform: CSS.Translate.toString(transform),\n transition,\n };\n\n useEffect(() => {\n if (hasCursor) {\n handleRef?.current?.focus();\n }\n }, [hasCursor]);\n\n const applyDelayHandler = () => {\n applyDelay(data.id);\n };\n\n const cancelDelayHandler = () => {\n deleteEntry([data.id]);\n };\n\n return (\n <div\n className={cx([style.delay, hasCursor ? style.hasCursor : null])}\n ref={setNodeRef}\n style={dragStyle}\n data-testid='rundown-delay'\n >\n <span className={style.drag} ref={handleRef} {...dragAttributes} {...dragListeners}>\n <IoReorderTwo />\n </span>\n <DelayInput eventId={data.id} duration={data.duration} />\n <Button onClick={applyDelayHandler} variant='ghosted-white'>\n <IoCheckmarkDone /> Make permanent\n </Button>\n <Button onClick={cancelDelayHandler} variant='ghosted-white'>\n <IoClose />\n Cancel\n </Button>\n </div>\n );\n}\n","import { create } from 'zustand';\n\ninterface EventIdSwappingStore {\n selectedEventId: string | null;\n setSelectedEventId: (newEventId: string | null) => void;\n clearSelectedEventId: () => void;\n}\n\nexport const useEventIdSwapping = create<EventIdSwappingStore>((set) => ({\n selectedEventId: null,\n setSelectedEventId: (newEventId) => set(() => ({ selectedEventId: newEventId })),\n clearSelectedEventId: () => set(() => ({ selectedEventId: null })),\n}));\n","import { useMemo } from 'react';\nimport { IoCheckmarkCircle } from 'react-icons/io5';\nimport { isPlaybackActive, MILLIS_PER_MINUTE, MILLIS_PER_SECOND, millisToString } from 'ontime-utils';\n\nimport Tooltip from '../../../../common/components/tooltip/Tooltip';\nimport { usePlayback } from '../../../../common/hooks/useSocket';\nimport useReport from '../../../../common/hooks-query/useReport';\nimport { cx } from '../../../../common/utils/styleUtils';\nimport { formatDuration, useTimeUntilExpectedStart } from '../../../../common/utils/time';\n\nimport style from './RundownEventChip.module.scss';\n\ninterface RundownEventChipProps {\n id: string;\n timeStart: number;\n delay: number;\n dayOffset: number;\n isPast: boolean;\n isLoaded: boolean;\n className: string;\n totalGap: number;\n duration: number;\n isLinkedToLoaded: boolean;\n}\n\nexport default function RundownEventChip({\n timeStart,\n delay,\n dayOffset,\n isPast,\n isLoaded,\n className,\n totalGap,\n id,\n duration,\n isLinkedToLoaded,\n}: RundownEventChipProps) {\n const { playback } = usePlayback();\n\n if (isLoaded) {\n return null;\n }\n\n const playbackActive = isPlaybackActive(playback);\n\n if (!playbackActive || isPast) {\n return <EventReport className={className} id={id} duration={duration} />;\n }\n\n if (playbackActive) {\n // we extracted the component to avoid unnecessary calculations and re-renders\n return (\n <Tooltip text='Expected time until start' render={<span />} className={className}>\n <EventUntil\n timeStart={timeStart}\n delay={delay}\n dayOffset={dayOffset}\n totalGap={totalGap}\n isLinkedToLoaded={isLinkedToLoaded}\n />\n </Tooltip>\n );\n }\n\n return null;\n}\n\ninterface EventUntilProps {\n timeStart: number;\n delay: number;\n dayOffset: number;\n totalGap: number;\n isLinkedToLoaded: boolean;\n}\n\nfunction EventUntil({ timeStart, delay, dayOffset, totalGap, isLinkedToLoaded }: EventUntilProps) {\n const timeUntil = useTimeUntilExpectedStart({ timeStart, delay, dayOffset }, { totalGap, isLinkedToLoaded });\n const isDue = timeUntil < MILLIS_PER_SECOND;\n\n const timeUntilString = isDue ? 'DUE' : `${formatDuration(Math.abs(timeUntil), timeUntil > 2 * MILLIS_PER_MINUTE)}`;\n\n return <div className={cx([style.chip, isDue && style.due])}>{timeUntilString}</div>;\n}\n\ninterface EventReportProps {\n className: string;\n id: string;\n duration: number;\n}\n\nfunction EventReport(props: EventReportProps) {\n const { className, id, duration } = props;\n const { data } = useReport();\n const currentReport = data[id];\n\n const [value, overUnderStyle, tooltip] = useMemo(() => {\n if (!currentReport) {\n return [null, 'none', ''];\n }\n\n const { startedAt, endedAt } = currentReport;\n if (!startedAt || !endedAt) {\n return [null, 'none', ''];\n }\n\n const actualDuration = endedAt - startedAt;\n const difference = actualDuration - duration;\n const absDifference = Math.abs(difference);\n\n if (absDifference < MILLIS_PER_SECOND) {\n return ['ontime', 'under', 'Event finished on time'];\n }\n\n const isOver = difference > 0;\n\n const fullTimeValue = millisToString(absDifference);\n\n const tooltip = `Event ran ${isOver ? 'over' : 'under'} time by ${fullTimeValue}`;\n\n const value = `${isOver ? '+' : '-'}${formatDuration(absDifference, absDifference > 2 * MILLIS_PER_MINUTE)}`;\n return [value, isOver ? 'over' : 'under', tooltip];\n }, [currentReport, duration]);\n\n if (!value) {\n return null;\n }\n\n return (\n <Tooltip text={tooltip} render={<span />} className={cx([style.chip, style[overUnderStyle], className])}>\n {value === 'ontime' ? <IoCheckmarkCircle size='1.1rem' /> : value}\n </Tooltip>\n );\n}\n","import { memo, MouseEvent } from 'react';\nimport { IoPause, IoPlay, IoReload, IoRemoveCircle, IoRemoveCircleOutline } from 'react-icons/io5';\n\nimport IconButton from '../../../../common/components/buttons/IconButton';\nimport Tooltip from '../../../../common/components/tooltip/Tooltip';\nimport { useEntryActions } from '../../../../common/hooks/useEntryAction';\nimport { setEventPlayback } from '../../../../common/hooks/useSocket';\n\nimport style from '../RundownEvent.module.scss';\n\ninterface RundownEventPlaybackProps {\n eventId: string;\n skip: boolean;\n isPlaying: boolean;\n isPaused: boolean;\n loaded: boolean;\n disablePlayback: boolean;\n}\n\nexport default memo(RundownEventPlayback);\nfunction RundownEventPlayback({\n eventId,\n skip,\n isPlaying,\n isPaused,\n loaded,\n disablePlayback,\n}: RundownEventPlaybackProps) {\n const { updateEntry } = useEntryActions();\n\n const toggleSkip = (event: MouseEvent) => {\n event.stopPropagation();\n updateEntry({ id: eventId, skip: !skip });\n };\n\n const actionHandler = (event: MouseEvent) => {\n event.stopPropagation();\n // is playing -> pause\n // is paused -> continue\n // otherwise -> start\n if (isPlaying) {\n setEventPlayback.pause();\n } else if (isPaused) {\n setEventPlayback.start();\n } else {\n setEventPlayback.startEvent(eventId);\n }\n };\n\n const load = (event: MouseEvent) => {\n event.stopPropagation();\n setEventPlayback.loadEvent(eventId);\n };\n\n const playButtonStyles: { tooltip: string; backgroundColor: string | undefined } = (() => {\n if (isPaused) {\n return {\n tooltip: 'Continue event',\n backgroundColor: '#339E4E',\n };\n }\n\n if (isPlaying) {\n return {\n tooltip: 'Pause event',\n backgroundColor: '#c05621',\n };\n }\n return {\n tooltip: 'Start event',\n backgroundColor: undefined,\n };\n })();\n\n return (\n <div className={style.playbackActions}>\n <Tooltip\n text='Skip event'\n render={<IconButton variant='subtle-white' />}\n onClick={toggleSkip}\n tabIndex={-1}\n disabled={loaded}\n style={{\n background: skip ? '#9A0000' : undefined,\n }}\n aria-label='Skip event'\n >\n {skip ? <IoRemoveCircle /> : <IoRemoveCircleOutline />}\n </Tooltip>\n\n <Tooltip\n text='Load event'\n render={<IconButton variant='subtle-white' />}\n onClick={load}\n tabIndex={-1}\n disabled={disablePlayback}\n aria-label='Load event'\n >\n <IoReload className={style.flip} />\n </Tooltip>\n\n <Tooltip\n text={playButtonStyles.tooltip}\n render={<IconButton variant='subtle-white' />}\n onClick={actionHandler}\n tabIndex={-1}\n disabled={disablePlayback}\n style={{\n backgroundColor: playButtonStyles.backgroundColor,\n }}\n aria-label={isPlaying ? 'Pause event' : 'Start event'}\n >\n {!isPlaying ? <IoPlay /> : <IoPause />}\n </Tooltip>\n </div>\n );\n}\n","import { useTimer } from '../../../../common/hooks/useSocket';\nimport { getProgress } from '../../../../common/utils/getProgress';\n\nimport style from './RundownEventProgressBar.module.scss';\n\nexport default function RundownEventProgressBar() {\n const timer = useTimer();\n\n const progress = getProgress(timer.current, timer.duration);\n\n return <div className={style.progressBar} style={{ width: `${progress}%` }} />;\n}\n","import { memo, useEffect, useState } from 'react';\nimport {\n IoArrowDown,\n IoArrowUp,\n IoBan,\n IoFlash,\n IoPlay,\n IoPlayForward,\n IoPlaySkipForward,\n IoTime,\n} from 'react-icons/io5';\nimport { LuArrowDownToLine } from 'react-icons/lu';\nimport { useSessionStorage } from '@mantine/hooks';\nimport { EndAction, Playback, TimerType, TimeStrategy } from 'ontime-types';\n\nimport Tooltip from '../../../common/components/tooltip/Tooltip';\nimport { cx } from '../../../common/utils/styleUtils';\nimport { AppMode, sessionKeys } from '../../../ontimeConfig';\nimport TitleEditor from '../common/TitleEditor';\nimport TimeInputFlow from '../time-input-flow/TimeInputFlow';\n\nimport RundownEventChip from './composite/RundownEventChip';\nimport EventBlockPlayback from './composite/RundownEventPlayback';\nimport EventBlockProgressBar from './composite/RundownEventProgressBar';\n\nimport style from './RundownEvent.module.scss';\n\ninterface RundownEventInnerProps {\n eventId: string;\n timeStart: number;\n timeEnd: number;\n duration: number;\n timeStrategy: TimeStrategy;\n linkStart: boolean;\n countToEnd: boolean;\n eventIndex: number;\n endAction: EndAction;\n timerType: TimerType;\n title: string;\n note: string;\n delay: number;\n isNext: boolean;\n skip: boolean;\n loaded: boolean;\n playback?: Playback;\n isRolling: boolean;\n dayOffset: number;\n isPast: boolean;\n totalGap: number;\n isLinkedToLoaded: boolean;\n hasTriggers: boolean;\n}\n\nexport default memo(RundownEventInner);\nfunction RundownEventInner({\n eventId,\n timeStart,\n timeEnd,\n duration,\n timeStrategy,\n linkStart,\n countToEnd,\n endAction,\n timerType,\n title,\n note,\n delay,\n isNext,\n skip = false,\n loaded,\n playback,\n isRolling,\n dayOffset,\n isPast,\n totalGap,\n isLinkedToLoaded,\n hasTriggers,\n}: RundownEventInnerProps) {\n const [renderInner, setRenderInner] = useState(false);\n\n const [editorMode] = useSessionStorage({\n key: sessionKeys.editorMode,\n defaultValue: AppMode.Edit,\n });\n\n useEffect(() => {\n setRenderInner(true);\n }, []);\n\n const eventIsPlaying = playback === Playback.Play;\n const eventIsPaused = playback === Playback.Pause;\n\n const playBtnStyles = { _hover: {} };\n if (!skip && eventIsPlaying) {\n playBtnStyles._hover = { bg: '#c05621' }; // $ontime-paused\n } else if (!skip && !eventIsPlaying) {\n playBtnStyles._hover = {};\n }\n\n return !renderInner ? null : (\n <>\n <div className={cx([style.eventTimers, editorMode === AppMode.Edit && style.editMode])}>\n <TimeInputFlow\n eventId={eventId}\n timeStart={timeStart}\n timeEnd={timeEnd}\n duration={duration}\n delay={delay}\n timeStrategy={timeStrategy}\n linkStart={linkStart}\n countToEnd={countToEnd}\n />\n </div>\n <div className={style.titleSection}>\n <TitleEditor title={title} entryId={eventId} placeholder='Event title' className={style.eventTitle} />\n {isNext && <span className={style.nextTag}>UP NEXT</span>}\n </div>\n <EventBlockPlayback\n eventId={eventId}\n skip={skip}\n isPlaying={eventIsPlaying}\n isPaused={eventIsPaused}\n loaded={loaded}\n disablePlayback={skip || isRolling}\n />\n {!skip && (\n <RundownEventChip\n className={style.chipSection}\n id={eventId}\n timeStart={timeStart}\n delay={delay}\n dayOffset={dayOffset}\n isLinkedToLoaded={isLinkedToLoaded}\n isPast={isPast}\n isLoaded={loaded}\n totalGap={totalGap}\n duration={duration}\n />\n )}\n <div className={style.statusElements} id='entry-status' data-timertype={timerType}>\n <span className={style.eventNote}>{note}</span>\n <div className={loaded ? style.progressBg : `${style.progressBg} ${style.hidden}`}>\n {loaded && <EventBlockProgressBar />}\n </div>\n <div className={style.eventStatus} tabIndex={-1}>\n <Tooltip text={`Time type: ${timerType}`} render={<span />}>\n <TimerIcon type={timerType} className={style.statusIcon} />\n </Tooltip>\n <Tooltip text={`End action: ${endAction}`} render={<span />}>\n <EndActionIcon action={endAction} className={style.statusIcon} />\n </Tooltip>\n <Tooltip text={`${countToEnd ? 'Count to End' : 'Count duration'}`} render={<span />}>\n <LuArrowDownToLine className={`${style.statusIcon} ${countToEnd ? style.active : style.disabled}`} />\n </Tooltip>\n <Tooltip text='Event has Triggers' render={<span />}>\n <IoFlash className={`${style.statusIcon} ${hasTriggers ? style.active : style.disabled}`} />\n </Tooltip>\n </div>\n </div>\n </>\n );\n}\n\nfunction EndActionIcon(props: { action: EndAction; className: string }) {\n const { action, className } = props;\n const maybeActiveClasses = cx([action !== EndAction.None && style.active, className]);\n\n if (action === EndAction.LoadNext) {\n return <IoPlaySkipForward className={maybeActiveClasses} />;\n }\n if (action === EndAction.PlayNext) {\n return <IoPlayForward className={maybeActiveClasses} />;\n }\n return <IoPlay className={className} />;\n}\n\nfunction TimerIcon(props: { type: TimerType; className: string }) {\n const { type, className } = props;\n if (type === TimerType.CountUp) {\n return <IoArrowUp className={className} />;\n }\n if (type === TimerType.Clock) {\n return <IoTime className={className} />;\n }\n if (type === TimerType.None) {\n return <IoBan className={className} />;\n }\n return <IoArrowDown className={className} />;\n}\n","import { millisToString, removeTrailingZero } from 'ontime-utils';\n\nimport { formatDuration } from '../../../common/utils/time';\n\nexport function formatDelay(timeStart: number, delay: number): string | undefined {\n if (!delay) return;\n\n const delayedStart = Math.max(0, timeStart + delay);\n\n const timeTag = removeTrailingZero(millisToString(delayedStart));\n return `New start ${timeTag}`;\n}\nexport function formatGap(gap: number, isNextDay: boolean) {\n if (gap === 0) {\n if (isNextDay) {\n // We show a next day warning even if there is no gap\n return '(next day)';\n }\n return;\n }\n\n const gapString = formatDuration(Math.abs(gap), false);\n return `${gap < 0 ? 'Overlap' : 'Gap'} ${gapString}${isNextDay ? ' (next day)' : ''}`;\n}\n","import { formatDelay, formatGap } from './rundownEvent.utils';\n\nimport style from './RundownIndicators.module.scss';\n\ninterface RundownIndicatorProps {\n timeStart: number;\n isNextDay: boolean;\n delay: number;\n gap: number;\n}\n\nexport default function RundownIndicators({ timeStart, delay, gap, isNextDay }: RundownIndicatorProps) {\n const hasGap = formatGap(gap, isNextDay);\n const hasDelay = formatDelay(timeStart, delay);\n\n return (\n <div className={style.indicators}>\n {hasDelay && <div className={style.delay}>{hasDelay}</div>}\n {hasGap && <div className={style.gap}>{hasGap}</div>}\n </div>\n );\n}\n","import { MouseEvent, useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport {\n IoAdd,\n IoDuplicateOutline,\n IoFolder,\n IoLink,\n IoReorderTwo,\n IoSwapVertical,\n IoTrash,\n IoUnlink,\n} from 'react-icons/io5';\nimport { TbFlagFilled } from 'react-icons/tb';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { EndAction, EntryId, Playback, TimerType, TimeStrategy } from 'ontime-types';\nimport { isPlaybackActive } from 'ontime-utils';\n\nimport { useContextMenu } from '../../../common/hooks/useContextMenu';\nimport { useEntryActions } from '../../../common/hooks/useEntryAction';\nimport { cx, getAccessibleColour } from '../../../common/utils/styleUtils';\nimport { useEventIdSwapping } from '../useEventIdSwapping';\nimport { getSelectionMode, useEventSelection } from '../useEventSelection';\n\nimport RundownEventInner from './RundownEventInner';\nimport RundownIndicators from './RundownIndicators';\n\nimport style from './RundownEvent.module.scss';\n\ninterface RundownEventProps {\n eventId: EntryId;\n cue: string;\n timeStart: number;\n timeEnd: number;\n duration: number;\n timeStrategy: TimeStrategy;\n linkStart: boolean;\n flag: boolean;\n countToEnd: boolean;\n eventIndex: number;\n endAction: EndAction;\n timerType: TimerType;\n title: string;\n note: string;\n delay: number;\n colour: string;\n isPast: boolean;\n isNext: boolean;\n skip: boolean;\n parent: EntryId | null;\n loaded: boolean;\n hasCursor: boolean;\n playback?: Playback;\n isRolling: boolean;\n gap: number;\n isNextDay: boolean;\n dayOffset: number;\n totalGap: number;\n isLinkedToLoaded: boolean;\n hasTriggers: boolean;\n}\n\nexport default function RundownEvent({\n eventId,\n cue,\n timeStart,\n timeEnd,\n duration,\n timeStrategy,\n linkStart,\n flag,\n countToEnd,\n eventIndex,\n endAction,\n timerType,\n title,\n note,\n delay,\n colour,\n isPast,\n isNext,\n skip = false,\n parent,\n loaded,\n hasCursor,\n playback,\n isRolling,\n gap,\n isNextDay,\n dayOffset,\n totalGap,\n isLinkedToLoaded,\n hasTriggers,\n}: RundownEventProps) {\n const { selectedEventId, setSelectedEventId, clearSelectedEventId } = useEventIdSwapping();\n const { updateEntry, batchUpdateEvents, clone, deleteEntry, groupEntries, swapEvents } = useEntryActions();\n\n const { selectedEvents, unselect, setSelectedEvents, clearSelectedEvents } = useEventSelection();\n const handleRef = useRef<null | HTMLSpanElement>(null);\n const [isVisible, setIsVisible] = useState(false);\n\n const [onContextMenu] = useContextMenu<HTMLDivElement>(\n selectedEvents.size > 1\n ? [\n {\n type: 'item',\n label: 'Link to previous',\n icon: IoLink,\n onClick: () => {\n batchUpdateEvents({ linkStart: true }, Array.from(selectedEvents));\n },\n },\n {\n type: 'item',\n label: 'Unlink from previous',\n icon: IoUnlink,\n onClick: () => {\n batchUpdateEvents({ linkStart: false }, Array.from(selectedEvents));\n },\n },\n { type: 'divider' },\n {\n type: 'item',\n label: 'Group',\n icon: IoFolder,\n onClick: () => {\n groupEntries(Array.from(selectedEvents));\n clearSelectedEvents();\n },\n disabled: parent !== null,\n },\n { type: 'divider' },\n {\n type: 'item',\n label: 'Delete',\n icon: IoTrash,\n onClick: () => {\n clearSelectedEvents();\n deleteEntry(Array.from(selectedEvents));\n },\n },\n ]\n : [\n {\n type: 'item',\n label: flag ? 'Remove flag' : 'Add flag',\n icon: TbFlagFilled,\n onClick: () => {\n updateEntry({ id: eventId, flag: !flag });\n },\n },\n { type: 'divider' },\n {\n type: 'item',\n label: 'Add to swap',\n icon: IoAdd,\n onClick: () => setSelectedEventId(eventId),\n },\n {\n type: 'item',\n label: `Swap this event with ${selectedEventId ?? ''}`,\n icon: IoSwapVertical,\n onClick: () => {\n if (!selectedEventId) return;\n swapEvents(selectedEventId, eventId);\n clearSelectedEventId();\n },\n disabled: selectedEventId == null || selectedEventId === eventId,\n },\n {\n type: 'item',\n label: 'Clone',\n icon: IoDuplicateOutline,\n onClick: () => clone(eventId, { after: eventId }),\n },\n { type: 'divider' },\n {\n type: 'item',\n label: 'Delete',\n icon: IoTrash,\n onClick: () => {\n deleteEntry([eventId]);\n unselect(eventId);\n },\n },\n ],\n );\n\n const {\n isDragging,\n attributes: dragAttributes,\n listeners: dragListeners,\n setNodeRef,\n transform,\n transition,\n } = useSortable({\n id: eventId,\n data: {\n type: 'event',\n parent,\n },\n animateLayoutChanges: () => false,\n });\n\n const dragStyle = {\n zIndex: isDragging ? 2 : 'inherit',\n transform: CSS.Translate.toString(transform),\n transition,\n };\n\n const binderColours = colour && getAccessibleColour(colour);\n\n // move focus to element if necessary\n useEffect(() => {\n if (!hasCursor || handleRef?.current == null) {\n return;\n }\n\n const elementInFocus = document.activeElement;\n // we know the group is the grandparent of our binder\n const blockElement = handleRef.current.closest('#event-group');\n\n // we only move focus if the block doesnt already contain focus\n if (blockElement && !blockElement.contains(elementInFocus)) {\n handleRef.current.focus();\n }\n }, [hasCursor]);\n\n useLayoutEffect(() => {\n const observer = new IntersectionObserver(\n ([entry]) => {\n if (entry.isIntersecting) {\n setIsVisible(true);\n }\n },\n {\n root: null,\n threshold: 1,\n },\n );\n\n const handleRefCurrent = handleRef.current;\n if (handleRefCurrent) {\n observer.observe(handleRefCurrent);\n }\n\n return () => {\n if (handleRefCurrent) {\n observer.unobserve(handleRefCurrent);\n }\n };\n }, [handleRef]);\n\n const isSelected = selectedEvents.has(eventId);\n const blockClasses = cx([\n style.rundownEvent,\n skip ? style.skip : null,\n isPast ? style.past : null,\n loaded ? style.loaded : null,\n playback ? style[playback] : null,\n isSelected ? style.selected : null,\n hasCursor ? style.hasCursor : null,\n ]);\n\n const handleFocusClick = (event: MouseEvent) => {\n event.stopPropagation();\n\n // event.button === 2 is a right-click\n // disable selection if the user selected events and right clicks\n // so the context menu shows up\n if (selectedEvents.size > 1 && event.button === 2) {\n return;\n }\n\n // UI indexes are 1 based\n const index = eventIndex - 1;\n const editMode = getSelectionMode(event);\n setSelectedEvents({ id: eventId, index, selectMode: editMode });\n };\n\n const isPlaying = playback ? isPlaybackActive(playback) : false;\n\n return (\n <div\n className={blockClasses}\n ref={setNodeRef}\n style={dragStyle}\n onClick={handleFocusClick}\n onContextMenu={onContextMenu}\n data-testid='rundown-event'\n {...(isPlaying ? { 'data-running': true } : {})}\n >\n <RundownIndicators timeStart={timeStart} delay={delay} gap={gap} isNextDay={isNextDay} />\n\n <div className={style.binder} style={{ ...binderColours }} tabIndex={-1}>\n <span className={style.drag} ref={handleRef} {...dragAttributes} {...dragListeners}>\n <IoReorderTwo />\n </span>\n <span className={style.cue}>{cue}</span>\n </div>\n\n {isVisible && (\n <RundownEventInner\n timeStart={timeStart}\n timeEnd={timeEnd}\n duration={duration}\n linkStart={linkStart}\n countToEnd={countToEnd}\n timeStrategy={timeStrategy}\n eventId={eventId}\n eventIndex={eventIndex}\n endAction={endAction}\n timerType={timerType}\n title={title}\n note={note}\n delay={delay}\n isNext={isNext}\n skip={skip}\n loaded={loaded}\n playback={playback}\n isRolling={isRolling}\n dayOffset={dayOffset}\n isPast={isPast}\n totalGap={totalGap}\n isLinkedToLoaded={isLinkedToLoaded}\n hasTriggers={hasTriggers}\n />\n )}\n </div>\n );\n}\n","import { MouseEvent, useCallback, useRef } from 'react';\nimport { IoReorderTwo, IoTrash } from 'react-icons/io5';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { EntryId } from 'ontime-types';\n\nimport Input from '../../../common/components/input/input/Input';\nimport useReactiveTextInput from '../../../common/components/input/text-input/useReactiveTextInput';\nimport { useContextMenu } from '../../../common/hooks/useContextMenu';\nimport { useEntryActions } from '../../../common/hooks/useEntryAction';\nimport { cx, getAccessibleColour } from '../../../common/utils/styleUtils';\nimport { useEventSelection } from '../useEventSelection';\n\nimport style from './RundownMilestone.module.scss';\n\ninterface RundownMilestoneProps {\n colour: string;\n cue: string;\n entryId: EntryId;\n hasCursor: boolean;\n title: string;\n}\n\nexport default function RundownMilestone({ colour, cue, entryId, hasCursor, title }: RundownMilestoneProps) {\n const handleRef = useRef<null | HTMLSpanElement>(null);\n const { updateEntry, deleteEntry } = useEntryActions();\n const { selectedEvents, setSingleEntrySelection } = useEventSelection();\n\n const [onContextMenu] = useContextMenu<HTMLDivElement>([\n {\n type: 'item',\n label: 'Delete',\n icon: IoTrash,\n onClick: () => deleteEntry([entryId]),\n },\n ]);\n\n const {\n attributes: dragAttributes,\n listeners: dragListeners,\n setNodeRef,\n isDragging,\n transform,\n transition,\n } = useSortable({\n id: entryId,\n data: {\n type: 'milestone',\n },\n animateLayoutChanges: () => false,\n });\n\n const handleFocusClick = (event: MouseEvent) => {\n event.stopPropagation();\n\n // event.button === 2 is a right-click\n // disable selection if the user selected events and right clicks\n // so the context menu shows up\n if (selectedEvents.size > 1 && event.button === 2) {\n return;\n }\n\n // UI indexes are 1 based\n setSingleEntrySelection({ id: entryId });\n };\n\n const handleUpdate = (field: 'cue' | 'title', value: string) => {\n updateEntry({ id: entryId, [field]: value });\n };\n\n const dragStyle = {\n zIndex: isDragging ? 2 : 'inherit',\n transform: CSS.Translate.toString(transform),\n transition,\n };\n\n const binderColours = colour && getAccessibleColour(colour);\n\n return (\n <div\n className={cx([style.milestone, hasCursor ? style.hasCursor : null])}\n ref={setNodeRef}\n onClick={handleFocusClick}\n onContextMenu={onContextMenu}\n style={dragStyle}\n data-testid='rundown-milestone'\n >\n <div className={style.binder} style={{ ...binderColours }}>\n <span className={style.drag} ref={handleRef} {...dragAttributes} {...dragListeners}>\n <IoReorderTwo />\n </span>\n </div>\n <MilestoneTextInput field='cue' initialValue={cue} placeholder='Cue' submitHandler={handleUpdate} />\n <MilestoneTextInput field='title' initialValue={title} placeholder='Title' submitHandler={handleUpdate} />\n </div>\n );\n}\n\ninterface MilestoneTextInputProps {\n field: 'cue' | 'title';\n initialValue: string;\n placeholder?: string;\n submitHandler: (field: 'cue' | 'title', value: string) => void;\n}\n\nfunction MilestoneTextInput({ field, initialValue, placeholder, submitHandler }: MilestoneTextInputProps) {\n const ref = useRef<HTMLInputElement | null>(null);\n const submitCallback = useCallback((newValue: string) => submitHandler(field, newValue), [field, submitHandler]);\n const { value, onChange, onBlur, onKeyDown } = useReactiveTextInput(initialValue, submitCallback, ref, {\n submitOnEnter: true,\n });\n\n return (\n <Input\n id={field}\n ref={ref}\n fluid\n value={value}\n placeholder={placeholder}\n onChange={onChange}\n onBlur={onBlur}\n onKeyDown={onKeyDown}\n />\n );\n}\n","import { isOntimeDelay, isOntimeEvent, isOntimeMilestone, OntimeEntry, Playback, SupportedEntry } from 'ontime-types';\n\nimport RundownDelay from './rundown-delay/RundownDelay';\nimport RundownEvent from './rundown-event/RundownEvent';\nimport RundownMilestone from './rundown-milestone/RundownMilestone';\n\ninterface RundownEntryProps {\n type: SupportedEntry;\n isPast: boolean;\n data: OntimeEntry;\n loaded: boolean;\n eventIndex: number;\n hasCursor: boolean;\n isNext: boolean;\n isNextDay: boolean;\n playback?: Playback; // we only care about this if this event is playing\n isRolling: boolean; // we need to know even if not related to this event\n totalGap: number;\n isLinkedToLoaded: boolean;\n}\n\nexport default function RundownEntry({\n isPast,\n data,\n loaded,\n hasCursor,\n isNext,\n playback,\n isRolling,\n eventIndex,\n isNextDay,\n totalGap,\n isLinkedToLoaded,\n}: RundownEntryProps) {\n if (isOntimeEvent(data)) {\n return (\n <RundownEvent\n eventId={data.id}\n eventIndex={eventIndex}\n cue={data.cue}\n timeStart={data.timeStart}\n timeEnd={data.timeEnd}\n duration={data.duration}\n timeStrategy={data.timeStrategy}\n linkStart={data.linkStart}\n flag={data.flag}\n countToEnd={data.countToEnd}\n endAction={data.endAction}\n timerType={data.timerType}\n title={data.title}\n note={data.note}\n delay={data.delay}\n colour={data.colour}\n isPast={isPast}\n isNext={isNext}\n skip={data.skip}\n parent={data.parent}\n loaded={loaded}\n hasCursor={hasCursor}\n playback={playback}\n isRolling={isRolling}\n gap={data.gap}\n isNextDay={isNextDay}\n dayOffset={data.dayOffset}\n totalGap={totalGap}\n isLinkedToLoaded={isLinkedToLoaded}\n hasTriggers={data.triggers.length > 0}\n />\n );\n } else if (isOntimeDelay(data)) {\n return <RundownDelay data={data} hasCursor={hasCursor} />;\n } else if (isOntimeMilestone(data)) {\n return (\n <RundownMilestone\n colour={data.colour}\n cue={data.cue}\n entryId={data.id}\n hasCursor={hasCursor}\n title={data.title}\n />\n );\n }\n return null;\n}\n"],"names":["BlockRadio","items","onValueChange","elementProps","BaseRadioGroup","value","style","radioGroup","map","item","jsx","Radio.Root","toString","radio","Radio.Indicator","indicator","label","DelayInput","props","eventId","duration","updateEntry","useEntryActions","setValue","useState","inputRef","useRef","ignoreChangeRef","useEffect","millisToString","validateAndSubmit","newValue","current","isNegative","startsWith","newMillis","parseUserTime","submitChange","id","handleFocus","select","onKeyDownHandler","event","key","blur","target","handleSlipChange","newDirection","checkedOption","jsxs","delayInput","Input","inputField","RundownDelay","data","hasCursor","applyDelay","deleteEntry","handleRef","attributes","dragAttributes","listeners","dragListeners","setNodeRef","isDragging","transform","transition","useSortable","type","animateLayoutChanges","dragStyle","zIndex","CSS","Translate","focus","applyDelayHandler","cancelDelayHandler","cx","delay","drag","IoReorderTwo","Button","IoCheckmarkDone","IoClose","useEventIdSwapping","create","set","selectedEventId","setSelectedEventId","newEventId","clearSelectedEventId","RundownEventChip","timeStart","dayOffset","isPast","isLoaded","className","totalGap","isLinkedToLoaded","playback","usePlayback","playbackActive","isPlaybackActive","EventReport","Tooltip","EventUntil","timeUntil","useTimeUntilExpectedStart","isDue","MILLIS_PER_SECOND","timeUntilString","formatDuration","Math","abs","MILLIS_PER_MINUTE","chip","due","useReport","currentReport","overUnderStyle","tooltip","useMemo","startedAt","endedAt","difference","absDifference","isOver","fullTimeValue","IoCheckmarkCircle","memo","RundownEventPlayback","skip","isPlaying","isPaused","loaded","disablePlayback","toggleSkip","stopPropagation","actionHandler","setEventPlayback","pause","start","startEvent","load","loadEvent","playButtonStyles","backgroundColor","undefined","playbackActions","IconButton","background","IoRemoveCircle","IoRemoveCircleOutline","IoReload","flip","IoPause","IoPlay","RundownEventProgressBar","timer","useTimer","progress","getProgress","progressBar","width","RundownEventInner","timeEnd","timeStrategy","linkStart","countToEnd","endAction","timerType","title","note","isNext","isRolling","hasTriggers","renderInner","setRenderInner","editorMode","useSessionStorage","sessionKeys","defaultValue","AppMode","Edit","eventIsPlaying","Playback","Play","eventIsPaused","Pause","Fragment","eventTimers","editMode","TimeInputFlow","titleSection","TitleEditor","eventTitle","nextTag","EventBlockPlayback","chipSection","statusElements","eventNote","progressBg","hidden","EventBlockProgressBar","eventStatus","TimerIcon","statusIcon","EndActionIcon","LuArrowDownToLine","active","disabled","IoFlash","action","maybeActiveClasses","EndAction","None","LoadNext","IoPlaySkipForward","PlayNext","IoPlayForward","TimerType","CountUp","IoArrowUp","Clock","IoTime","IoBan","IoArrowDown","formatDelay","delayedStart","max","removeTrailingZero","formatGap","gap","isNextDay","gapString","RundownIndicators","hasGap","hasDelay","indicators","RundownEvent","cue","flag","eventIndex","colour","parent","batchUpdateEvents","clone","groupEntries","swapEvents","selectedEvents","unselect","setSelectedEvents","clearSelectedEvents","useEventSelection","isVisible","setIsVisible","onContextMenu","useContextMenu","size","icon","IoLink","onClick","Array","from","IoUnlink","IoFolder","IoTrash","TbFlagFilled","IoAdd","IoSwapVertical","IoDuplicateOutline","after","binderColours","getAccessibleColour","elementInFocus","document","activeElement","blockElement","closest","contains","useLayoutEffect","observer","IntersectionObserver","entry","isIntersecting","root","threshold","handleRefCurrent","observe","unobserve","isSelected","has","blockClasses","rundownEvent","past","selected","handleFocusClick","button","index","getSelectionMode","selectMode","binder","RundownMilestone","entryId","setSingleEntrySelection","handleUpdate","field","milestone","MilestoneTextInput","initialValue","placeholder","submitHandler","ref","submitCallback","useCallback","onChange","onBlur","onKeyDown","useReactiveTextInput","submitOnEnter","RundownEntry","isOntimeEvent","triggers","length","isOntimeDelay","isOntimeMilestone"],"mappings":"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"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./RundownEntry-CwiStTnR.js","./vendor-Cdwxo8bP.js","./vendor-4xP-6xVS.css","./index-CoGiopcb.js","./index-BuJoGGff.css","./useRundown-CHsh5rnl.js","./useProjectData-B5mjXsMj.js","./useProjectData-Cw1aXCwD.css","./dateConfig-BU1RZfIK.js","./validateEvent-CUmvjN95.js","./editorSettings-BMt-7s8I.js","./editorSettings-BqHbWs9b.css","./parseUserTime-DZJMcfuJ.js","./rundownUtils-Dl1x6NDv.js","./Tooltip-BQBvaIZx.js","./Tooltip-CKb7gU2M.css","./MilestoneEditor-B5BdJ5ju.js","./EditorUtils-DoaSwWiz.js","./EditorUtils-CgF7UfHP.css","./TimeInput-Duzx40TC.js","./TimeInput-Cu-N5DmX.css","./useCustomFields-CcTb-GQM.js","./Select-cHK8JrMG.js","./Select-Cd08aEcf.css","./Modal-B8ZZbVMg.js","./Modal-D3tAPV2u.css","./offset-BS90Rks2.js","./MilestoneEditor-BqNKKlvI.css","./useReport-zMbyWwpn.js","./playbackstate-CWexoP3a.js","./getProgress-sdxPEEPi.js","./ProtectRoute-EejQ5o_H.js","./ProtectRoute-Bm5sjStK.css","./Empty-D1UteOYj.js","./Empty-DvR62o5B.css","./useFollowComponent-BjhV6Uv8.js","./RundownEntry-Blq5OsMH.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{f as as,h as j,j as t,aN as ae,bd as Zs,C as Ts,M as Fs,aM as K,ah as Ks,aO as us,aP as Yt,aQ as ne,T as Y,ar as en,be as tn,aG as Ls,aH as Vs,bf as sn,b1 as nn,aT as rn,bg as ln,az as on,aA as dn,aF as cn,aE as an,aJ as un,bh as fn,aB as hn,bi as xn,$ as pn}from"./vendor-Cdwxo8bP.js";import{T as mn,S as fs,C as jn}from"./EditorUtils-DoaSwWiz.js";import{bu as js,az as ys,ap as _s,ah as zs,b2 as L,b6 as dt,B as te,aH as yn,bv as Ws,br as Jt,bw as qs,e as re,ak as Us,aC as _n,k as os,M as vn,m as vs,bk as gs,bx as gn,h as bn,by as En,bz as bs,bA as is,b8 as wn,ax as Cn}from"./index-CoGiopcb.js";import{P as Es}from"./ProtectRoute-EejQ5o_H.js";import{i as de,h as Sn,s as Nn,k as Qs,j as it,c as kn,S as y,w as ws,t as In}from"./useRundown-CHsh5rnl.js";import{s as ds,E as Mn,M as Dn,G as An,u as Rn}from"./MilestoneEditor-B5BdJ5ju.js";import{M as Gn,P as Pn,D as On}from"./Modal-B8ZZbVMg.js";import{E as Hs}from"./Empty-D1UteOYj.js";import{u as ot,c as Ys,a as Cs}from"./dateConfig-BU1RZfIK.js";import{u as $n}from"./useFollowComponent-BjhV6Uv8.js";import{g as Bn}from"./offset-BS90Rks2.js";import{d as Ss,e as Ns,f as ks,h as Tn,i as Fn,j as Kn}from"./rundownUtils-Dl1x6NDv.js";(function(){try{var s=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},e=new s.Error().stack;e&&(s._sentryDebugIds=s._sentryDebugIds||{},s._sentryDebugIds[e]="94d81541-cb6c-4e63-af1c-85df07156795",s._sentryDebugIdIdentifier="sentry-dbid-94d81541-cb6c-4e63-af1c-85df07156795")}catch{}})();function Ln(s,e,o){if(e===o)return s;const l=[...s],[n]=l.splice(e,1);return l.splice(o,0,n),l}function hs(){const s=navigator.userAgent.toLowerCase();return s.includes("macintosh")||s.includes("mac os")}const H=hs()?"Option":"Alt",ie=hs()?"Cmd":"Ctrl",ce=as()((s,e)=>({selectedEvents:new Set,anchoredIndex:null,cursor:null,entryMode:null,setSingleEntrySelection:({id:o})=>{s({selectedEvents:new Set([o]),anchoredIndex:null,cursor:o,entryMode:"single"})},setSelectedEvents:({id:o,index:l,selectMode:n})=>{const{selectedEvents:r,anchoredIndex:m,entryMode:x}=e();if(x==="single")return s({selectedEvents:new Set([o]),anchoredIndex:l,cursor:o,entryMode:"event"});if(n==="click")return s({selectedEvents:new Set([o]),anchoredIndex:l,cursor:o,entryMode:"event"});if(n==="ctrl"){const g=js.getQueryData(ys);if(!g)return;if(!r.has(o))return s({selectedEvents:r.add(o),anchoredIndex:l,cursor:o,entryMode:"event"});r.delete(o);const b=g.order.findIndex((D,k)=>k>l&&de(g.entries[D])&&r.has(D));return s({selectedEvents:r,anchoredIndex:b<0?g.order.length-1:b,entryMode:"event"})}if(n==="shift"){const g=js.getQueryData(ys);if(!g)return;const b=[];g.flatOrder.forEach(_=>{const A=g.entries[_];de(A)&&b.push(A.id)});const D=m===null?0:Math.min(m,l),k=m===null?l:Math.max(m,l+1),p=b.slice(D,k);return s({selectedEvents:new Set([...r,...p]),anchoredIndex:l,entryMode:"event"})}},clearSelectedEvents:()=>s({selectedEvents:new Set,anchoredIndex:null,cursor:null,entryMode:null}),clearMultiSelect:()=>{const{selectedEvents:o}=e(),[l]=o;s({selectedEvents:new Set(l?[l]:[]),anchoredIndex:null,entryMode:null})},unselect:o=>{const{entryMode:l,selectedEvents:n}=e();n.delete(o),s({selectedEvents:n,entryMode:n.size===0?null:l})}}));function Tl(s){return hs()&&s.metaKey||s.ctrlKey?"ctrl":s.shiftKey?"shift":"click"}const Vn="_footer_44w0f_17",zn={footer:Vn},Wn=j.memo(qn);function qn({id:s,cue:e}){const o=`/ontime/load/id "${s}"`,l=`/ontime/load/cue "${e}"`;return t.jsxs("div",{className:zn.footer,children:[t.jsx(_s,{copyValue:o,children:o}),t.jsx(_s,{copyValue:l,children:l})]})}const Un="_entryEditor_z06bn_17",Qn="_shortcutSection_z06bn_28",Hn="_shortcuts_z06bn_35",Yn="_spacer_z06bn_48",Jn="_prompt_z06bn_52",Xn="_divider_z06bn_56",Zn="_kbd_z06bn_62",ee={entryEditor:Un,shortcutSection:Qn,shortcuts:Hn,spacer:Yn,prompt:Jn,divider:Xn,kbd:Zn},er=j.memo(tr);function tr(){return t.jsx("div",{className:ee.entryEditor,"data-testid":"editor-container",children:t.jsxs("div",{className:ee.shortcutSection,children:[t.jsx(mn,{className:ee.prompt,children:"Rundown shortcuts"}),t.jsx("table",{className:ee.shortcuts,children:t.jsxs("tbody",{children:[t.jsxs("tr",{children:[t.jsx("td",{children:"Find in rundown"}),t.jsxs("td",{children:[t.jsx(u,{children:ie}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"F"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Open Settings"}),t.jsxs("td",{children:[t.jsx(u,{children:ie}),t.jsx(v,{children:"+"}),t.jsx(u,{children:","})]})]}),t.jsx("tr",{className:ee.spacer}),t.jsxs("tr",{children:[t.jsx("td",{children:"Select entry"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"↑"}),t.jsx(v,{children:"/"}),t.jsx(u,{children:"↓"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Select group"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"Shift"}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"↑"}),t.jsx(v,{children:"/"}),t.jsx(u,{children:"↓"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Deselect entry"}),t.jsx("td",{children:t.jsx(u,{children:"Esc"})})]}),t.jsx("tr",{className:ee.spacer}),t.jsxs("tr",{children:[t.jsx("td",{children:"Reorder selected entry"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:ie}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"↑"}),t.jsx(v,{children:"/"}),t.jsx(u,{children:"↓"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Copy selected entry"}),t.jsxs("td",{children:[t.jsx(u,{children:ie}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"C"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Paste above"}),t.jsxs("td",{children:[t.jsx(u,{children:ie}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"Shift"}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"V"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Paste below"}),t.jsxs("td",{children:[t.jsx(u,{children:ie}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"V"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Delete selected entry"}),t.jsxs("td",{children:[t.jsx(u,{children:ie}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"Backspace"})]})]}),t.jsx("tr",{className:ee.spacer}),t.jsxs("tr",{children:[t.jsx("td",{children:"Add event below"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"E"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Add event above"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"Shift"}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"E"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Add group below"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"G"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Add group above"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"Shift"}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"M"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Add milestone below"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"G"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Add milestone above"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"Shift"}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"M"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Add delay below"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"D"})]})]}),t.jsxs("tr",{children:[t.jsx("td",{children:"Add delay above"}),t.jsxs("td",{children:[t.jsx(u,{children:H}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"Shift"}),t.jsx(v,{children:"+"}),t.jsx(u,{children:"D"})]})]})]})})]})})}function v({children:s}){return t.jsx("span",{className:ee.divider,children:s})}function u({children:s}){return t.jsx("span",{className:ee.kbd,children:s})}function sr(){const s=ce(n=>n.selectedEvents),{data:e}=Sn(),[o,l]=j.useState(null);return j.useEffect(()=>{if(e.order.length===0){l(null);return}const n=Array.from(s).at(0);if(!n){l(null);return}const r=e.entries[n];r&&!Nn(r)?l(r):l(null)},[e.order,e.entries,s]),o?de(o)?t.jsxs("div",{className:ds.rundownEditor,"data-testid":"editor-container",children:[t.jsx(Mn,{event:o}),t.jsx(Wn,{id:o.id,cue:o.cue})]}):Qs(o)?t.jsx("div",{className:ds.rundownEditor,"data-testid":"editor-container",children:t.jsx(Dn,{milestone:o})}):it(o)?t.jsx("div",{className:ds.rundownEditor,"data-testid":"editor-container",children:t.jsx(An,{group:o})}):null:t.jsx(er,{})}const Is=12;function nr(){const{data:s,rundownId:e}=kn(),[o,l]=j.useState([]),[n,r]=j.useState(null),m=j.useRef(""),x=ce(p=>p.setSelectedEvents),[g,b]=ae({key:`rundown.${e}-editor-collapsed-groups`,defaultValue:[]}),D=j.useCallback(p=>{if(!s||s.length===0){r("No data");return}if(r(null),p.target.value===""){l([]);return}const _=p.target.value.toLowerCase();if(m.current=_,_.startsWith("index ")){const I=_.slice(6).trim(),{results:N,error:w}=U(I);l(N),r(w);return}if(_.startsWith("cue ")){const I=_.slice(4).trim(),{results:N,error:w}=z(I);l(N),r(w);return}const A=_.startsWith("title ")?_.slice(6).trim():_,{results:$,error:V}=le(A);l($),r(V);function U(I){const N=Number(I);if(isNaN(N)||N<1)return{results:[],error:"Invalid index"};if(N>s.length)return{results:[],error:null};let w=1;const R=[];for(let C=0;C<s.length;C++){const h=s[C];if(de(h)){if(w===N){R.push({type:y.Event,id:h.id,index:C,eventIndex:w,title:h.title,cue:h.cue,colour:h.colour,parent:h.parent});break}w++}}return{results:R,error:null}}function z(I){let N=1,w=Is;const R=[];for(let C=0;C<s.length&&!(w<=0);C++){const h=s[C];de(h)&&(h.cue.toLowerCase().includes(I)&&(w--,R.push({type:y.Event,id:h.id,index:C,eventIndex:N,title:h.title,cue:h.cue,colour:h.colour,parent:h.parent})),N++)}return{results:R,error:null}}function le(I){let N=1,w=Is;const R=[];for(let C=0;C<s.length&&!(w<=0);C++){const h=s[C];de(h)?(h.title.toLowerCase().includes(I)&&(w--,R.push({type:y.Event,id:h.id,index:C,eventIndex:N,title:h.title,cue:h.cue,colour:h.colour,parent:h.parent})),N++):it(h)?h.title.toLowerCase().includes(I)&&(w--,R.push({type:y.Group,id:h.id,index:C,title:h.title,colour:h.colour})):Qs(h)&&h.title.toLowerCase().includes(I)&&(w--,R.push({type:y.Milestone,id:h.id,index:C,title:h.title,cue:h.cue,colour:h.colour,parent:h.parent}))}return{results:R,error:null}}},[s]),k=j.useCallback(p=>{if("parent"in p&&p.parent!==null){const A=[...new Set(g)].filter($=>$!==p.parent);b(A)}x({id:p.id,index:p.index,selectMode:"click"})},[g,b,x]);return j.useEffect(()=>{l([]),r(null),m.current&&D({target:{value:m.current}})},[s,D]),{find:D,select:k,results:o,error:n}}const rr="_entry_142nw_17",lr="_empty_142nw_18",or="_error_142nw_19",ir="_data_142nw_40",dr="_index_142nw_46",cr="_title_142nw_55",ar="_cue_142nw_58",ur="_footer_142nw_66",fr="_em_142nw_18",hr="_scrollContainer_142nw_76",q={entry:rr,empty:lr,error:or,data:ir,index:dr,title:cr,cue:ar,footer:ur,em:fr,scrollContainer:hr};function xr({isOpen:s,onClose:e}){const{find:o,select:l,results:n,error:r}=nr(),[m,x]=j.useState(0),g=Zs(o,100),b=p=>{n.length!==0&&(p.key==="ArrowDown"&&x(_=>(_+1)%n.length),p.key==="ArrowUp"&&x(_=>(_-1+n.length)%n.length),p.key==="Enter"&&(p.preventDefault(),p.stopPropagation(),D()))},D=()=>{const p=n[m];l(p),e()},k=p=>{const A=p.target.closest("li");if(A){const $=Number(A.dataset.index);isNaN($)||x($)}};return t.jsx(Gn,{title:"",isOpen:s,onClose:e,showBackdrop:!0,bodyElements:t.jsxs("div",{onKeyDown:b,children:[t.jsx(zs,{height:"large",fluid:!0,onChange:g,placeholder:"Search..."}),t.jsxs("ul",{className:q.scrollContainer,onMouseMove:k,children:[r&&t.jsx("li",{className:q.error,children:r}),n.length===0&&t.jsx("li",{className:q.empty,children:"No results"}),n.length>0&&n.map((p,_)=>{const A=m===_,$=p.type===y.Event?p.eventIndex:"-",V="cue"in p?p.cue:"";return t.jsxs("li",{className:q.entry,"data-selected":A,"data-index":_,onClick:D,children:[t.jsxs("div",{className:q.data,children:[t.jsx("div",{className:q.index,style:{"--color":p.colour},children:$}),t.jsx("div",{className:q.cue,children:V}),t.jsx("div",{className:q.title,children:p.title})]}),A&&t.jsx("span",{children:"Go ⏎"})]},p.id)})]})]}),footerElements:t.jsxs("div",{className:q.footer,children:["Use the keywords ",t.jsx("span",{className:q.em,children:"cue"}),", ",t.jsx("span",{className:q.em,children:"index"})," or",t.jsx("span",{className:q.em,children:"title"})," to filter search."]})})}const Ms=j.memo(pr);function pr(){const[s,e]=Ts();return Fs([["mod + f",e.toggle],["Escape",e.close]]),s?t.jsx(xr,{isOpen:s,onClose:e.close}):null}const Js=as(s=>({position:{x:0,y:0},options:[],isOpen:!1,setContextMenu:(e,o)=>s(()=>({position:e,options:o,isOpen:!0})),setIsOpen:e=>s(()=>({isOpen:e}))}));function Ds({children:s}){const{position:e,options:o,isOpen:l,setIsOpen:n}=Js(),r=()=>n(!1);return l?t.jsxs(t.Fragment,{children:[s,t.jsx(Pn,{isOpen:!0,position:e,onClose:r,items:o})]}):s}const mr="_header_156wk_17",jr="_group_156wk_28",yr="_radioButton_156wk_39",_r="_apart_156wk_70",vr="_separator_156wk_74",O={header:mr,group:jr,radioButton:yr,apart:_r,separator:vr},gr=j.memo(br);function br(){const[s,e]=Ts(),o=ce(m=>m.clearSelectedEvents),[l]=ae({key:dt.editorMode,defaultValue:L.Edit}),{deleteAllEntries:n}=ot(),r=j.useCallback(()=>{n(),o(),e.close()},[o,n,e]);return t.jsxs(t.Fragment,{children:[t.jsxs(K,{render:t.jsx(te,{variant:"subtle-destructive"}),onClick:e.open,disabled:l===L.Run,className:O.apart,children:[t.jsx(Ks,{}),"Clear all"]}),t.jsx(yn,{isOpen:s,onClose:e.close,title:"Clear rundown",showBackdrop:!0,showCloseButton:!0,bodyElements:t.jsxs(t.Fragment,{children:["You will lose all data in your rundown. ",t.jsx("br",{})," Are you sure?"]}),footerElements:t.jsxs(t.Fragment,{children:[t.jsx(te,{variant:"ghosted-white",size:"large",onClick:e.close,children:"Cancel"}),t.jsx(te,{variant:"destructive",size:"large",onClick:r,children:"Delete all"})]})})]})}const Er=j.memo(wr);function wr(){const[s,e]=ae({key:dt.editorMode,defaultValue:L.Edit}),{offsetMode:o}=Ws(),l=r=>{const m=r.at(0);m&&e(m)},n=r=>{const m=r.at(0);m&&qs(m)};return t.jsxs(us,{className:O.header,children:[t.jsxs(Yt,{value:[s],onValueChange:l,className:O.group,children:[t.jsx(K,{render:t.jsx(ne,{}),value:L.Run,className:O.radioButton,children:"Run"}),t.jsx(K,{render:t.jsx(ne,{}),value:L.Edit,className:O.radioButton,children:"Edit"})]}),t.jsx(fs,{className:O.separator}),t.jsxs(Yt,{value:[o],onValueChange:n,className:O.group,children:[t.jsx(K,{render:t.jsx(ne,{}),value:Jt.Absolute,className:O.radioButton,children:"Absolute"}),t.jsx(K,{render:t.jsx(ne,{}),value:Jt.Relative,className:O.radioButton,children:"Relative"})]}),t.jsx(gr,{})]})}const Cr=j.memo(Sr);function Sr(){const[s,e]=ae({key:dt.editorMode,defaultValue:L.Edit}),{offsetMode:o}=Ws(),l=r=>{const m=r.at(0);m&&e(m)},n=r=>{const m=r.at(0);m&&qs(m)};return t.jsxs(us,{className:O.header,children:[t.jsxs(Yt,{value:[s],onValueChange:l,className:O.group,children:[t.jsx(K,{render:t.jsx(ne,{}),value:L.Run,className:O.radioButton,children:"Run"}),t.jsx(K,{render:t.jsx(ne,{}),value:L.Edit,className:O.radioButton,children:"Edit"})]}),t.jsx(fs,{className:O.separator}),t.jsxs(Yt,{value:[o],onValueChange:n,className:O.group,children:[t.jsx(K,{render:t.jsx(ne,{}),value:Jt.Absolute,className:O.radioButton,children:"Absolute"}),t.jsx(K,{render:t.jsx(ne,{}),value:Jt.Relative,className:O.radioButton,children:"Relative"})]})]})}const As=as()(s=>({entryCopyId:null,setEntryCopyId:e=>s({entryCopyId:e})})),Nr="_quickAdd_96pwt_17",kr="_indent_96pwt_24",Rs={quickAdd:Nr,indent:kr},cs=j.memo(Ir);function Ir({previousEventId:s,parentGroup:e,backgroundColor:o}){const{addEntry:l}=ot(),n=()=>{l({type:y.Event,parent:e},{after:s,lastEventId:s})},r=()=>{l({type:y.Delay,parent:e},{lastEventId:s,after:s})},m=()=>{l({type:y.Milestone,parent:e},{lastEventId:s,after:s})},x=()=>{e===null&&l({type:y.Group},{lastEventId:s,after:s})},g=o===""?"#9d9d9d":o;return t.jsxs(us,{className:re([Rs.quickAdd,!!e&&Rs.indent]),style:g?{"--user-bg":g}:{},"data-testid":"quick-add-buttons",children:[t.jsxs(K,{render:t.jsx(te,{size:"small"}),onClick:n,children:[t.jsx(Y,{}),"Event"]}),t.jsxs(K,{render:t.jsx(te,{size:"small"}),onClick:r,children:[t.jsx(Y,{}),"Delay"]}),t.jsxs(K,{render:t.jsx(te,{size:"small"}),onClick:m,children:[t.jsx(Y,{}),"Milestone"]}),e===null&&t.jsxs(K,{render:t.jsx(te,{size:"small"}),onClick:x,children:[t.jsx(Y,{}),"Group"]})]})}const Mr="_quickAdd_gr8nb_17",Dr="_addButton_gr8nb_35",Gs={quickAdd:Mr,addButton:Dr},Ps=j.memo(Ar);function Ar({referenceEntryId:s,parentGroup:e,placement:o}){const{addEntry:l}=ot(),n=r=>{o==="before"?l({type:r,parent:r!==y.Group?e:null},{before:s}):l({type:r,parent:r!==y.Group?e:null},{lastEventId:s,after:s})};return t.jsx("div",{className:Gs.quickAdd,"data-testid":"quick-add-inline",children:t.jsx(On,{items:[{type:"item",icon:Y,label:"Add Event",onClick:()=>n(y.Event)},{type:"item",icon:Y,label:"Add Delay",onClick:()=>n(y.Delay)},{type:"item",icon:Y,label:"Add Milestone",onClick:()=>n(y.Milestone)},{type:"item",icon:Y,label:"Add Group",onClick:()=>n(y.Group),disabled:e!==null}],render:t.jsx(Us,{size:"small",variant:"primary",className:Gs.addButton}),children:t.jsx(Y,{})})})}const Rr=s=>{const e=Js(l=>l.setContextMenu);return[l=>{l.preventDefault();const{pageX:n,pageY:r}=l;return e({x:n,y:r},s)}]},Gr="_noTitle_zrdm3_26",Os={noTitle:Gr};function Pr({title:s,entryId:e,placeholder:o,className:l}){const{updateEntry:n}=ot(),r=j.useRef(null),m=j.useCallback(p=>{if(p===s)return;const _=p.trim();n({id:e,title:_})},[s,n,e]),{value:x,onChange:g,onBlur:b,onKeyDown:D}=Rn(s,m,r,{submitOnEnter:!0}),k=re([l,Os.eventTitle,x?null:Os.noTitle]);return t.jsx(zs,{"data-testid":"entry__title",variant:"ghosted",fluid:!0,ref:r,value:x,className:k,placeholder:o,onChange:g,onBlur:b,onKeyDown:D})}const Or="_blink_15o4l_1",$r="_fourtyfive_15o4l_13",Br="_group_15o4l_17",Tr="_hasCursor_15o4l_31",Fr="_expanded_15o4l_34",Kr="_binder_15o4l_39",Lr="_header_15o4l_54",Vr="_titleRow_15o4l_62",zr="_metaRow_15o4l_67",Wr="_metaEntry_15o4l_73",qr="_strike_15o4l_81",Ur="_over_15o4l_85",Qr="_under_15o4l_89",Hr="_drag_15o4l_93",Yr="_isDragging_15o4l_111",Jr="_notAllowed_15o4l_114",P={blink:Or,fourtyfive:$r,group:Br,hasCursor:Tr,expanded:Fr,binder:Kr,header:Lr,titleRow:Vr,metaRow:zr,metaEntry:Wr,strike:qr,over:Ur,under:Qr,drag:Hr,isDragging:Yr,notAllowed:Jr};function Xr({data:s,hasCursor:e,collapsed:o,onCollapse:l}){var h,oe;const n=j.useRef(null),{clone:r,ungroup:m,deleteEntry:x}=ot(),{selectedEvents:g,setSingleEntrySelection:b}=ce(),[D]=Rr([{type:"item",label:"Clone Group",icon:en,onClick:()=>r(s.id)},{type:"item",label:"Ungroup",icon:tn,onClick:()=>m(s.id),disabled:s.entries.length===0},{type:"divider"},{type:"item",label:"Delete Group",icon:Ks,onClick:()=>x([s.id])}]),{attributes:k,listeners:p,setNodeRef:_,transform:A,transition:$,isDragging:V,isOver:U,over:z}=Ls({id:s.id,data:{type:"group"},animateLayoutChanges:()=>!1}),le=T=>{T.stopPropagation(),!(g.size>1&&T.button===2)&&b({id:s.id})},I=s.colour&&_n(s.colour),N=V&&(z==null?void 0:z.id)&&Ys((h=z.data.current)==null?void 0:h.type,(oe=z.data.current)==null?void 0:oe.parent),[w,R]=(()=>{if(s.targetDuration===null)return[null,null];const T=s.duration-s.targetDuration;if(T===0)return[null,"under"];const ue=Math.abs(T);return[`${T<0?"-":"+"}${os(ue,ue>2*vn)}`,Bn(T)]})(),C={zIndex:V?2:"inherit",transform:Vs.Translate.toString(A),transition:$,cursor:U?N?"grabbing":"no-drop":"inherit"};return t.jsxs("div",{className:re([P.group,e&&P.hasCursor,!o&&P.expanded]),ref:_,onClick:le,onContextMenu:D,style:{...C,"--user-bg":s.colour||"#929292"},"data-testid":"rundown-group",children:[t.jsx("div",{className:P.binder,style:{...I},tabIndex:-1,children:t.jsx("span",{className:re([P.drag,V&&P.isDragging,V&&!N&&P.notAllowed]),ref:n,...k,...p,children:t.jsx(sn,{})})}),t.jsxs("div",{className:P.header,children:[t.jsxs("div",{className:P.titleRow,children:[t.jsx(Pr,{title:s.title,entryId:s.id,placeholder:"Group title"}),t.jsx(Us,{"aria-label":"Collapse",variant:"subtle-white",onClick:()=>l(!o,s.id),children:o?t.jsx(nn,{}):t.jsx(rn,{})})]}),t.jsxs("div",{className:P.metaRow,children:[t.jsxs("div",{className:P.metaEntry,children:[t.jsx("div",{children:"Start"}),t.jsx("div",{children:vs(s.timeStart,{fallback:gs})})]}),t.jsxs("div",{className:P.metaEntry,children:[t.jsx("div",{children:"End"}),t.jsx("div",{children:vs(s.timeEnd,{fallback:gs})})]}),t.jsxs("div",{className:P.metaEntry,children:[t.jsx("div",{children:"Duration"}),w===null?t.jsx("div",{className:re([R!==null&&P[R]]),children:os(s.duration)}):t.jsxs("div",{children:[t.jsx("span",{className:P.strike,children:os(s.duration)}),t.jsx("span",{className:re([R!==null&&P[R]]),children:w})]})]}),t.jsxs("div",{className:P.metaEntry,children:[t.jsx("div",{children:"Entries"}),t.jsx("div",{children:s.entries.length})]})]})]})]})}const Zr="_groupEnd_1mlc9_17",el={groupEnd:Zr};function tl({id:s,colour:e}){const{attributes:o,listeners:l,setNodeRef:n,transform:r,transition:m}=Ls({id:s,data:{type:"end-group"},animateLayoutChanges:()=>!1,disabled:!0}),x={transform:Vs.Transform.toString(r),transition:m};return t.jsx("div",{className:el.groupEnd,ref:n,...o,...l,style:{...x,...e?{"--user-bg":e}:{}},tabIndex:-1})}const sl="_empty_pqnxu_17",nl="_inline_pqnxu_22",$s={empty:sl,inline:nl};function rl(s){const{handleAddNew:e}=s;return t.jsxs("div",{className:$s.empty,children:[t.jsx(Hs,{injectedStyles:{marginTop:"5vh",marginBottom:"3rem"}}),t.jsxs("div",{className:$s.inline,children:[t.jsxs(te,{onClick:()=>e(y.Event),variant:"primary",size:"large",children:[t.jsx(Y,{}),"Create Event"]}),t.jsx(fs,{}),t.jsxs(te,{onClick:()=>e(y.Group),variant:"primary",size:"large",children:[t.jsx(Y,{})," Create Group"]})]})]})}const ll="_rundownWrapper_1s5di_17",ol="_rundownContainer_1s5di_22",il="_list_1s5di_28",dl="_spacer_1s5di_44",cl="_entryWrapper_1s5di_48",al="_entryIndex_1s5di_55",ul="_flag_1s5di_66",fl="_index_1s5di_72",hl="_entry_1s5di_48",Z={rundownWrapper:ll,rundownContainer:ol,list:il,spacer:dl,entryWrapper:cl,entryIndex:al,flag:ul,index:fl,entry:hl},xl=j.lazy(()=>pn(()=>import("./RundownEntry-CwiStTnR.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36]),import.meta.url));function pl(s){"use memo";var ms;const e=ln.c(229),{data:o,rundownMetadata:l}=s,{order:n,entries:r,id:m}=o,x=gn();let g;e[0]!==r||e[1]!==n?(g=()=>Cs(n,r),e[0]=r,e[1]=n,e[2]=g):g=e[2];const[b,D]=j.useState(g),[k,p]=j.useState(l),_=`rundown.${m}-editor-collapsed-groups`;let A;e[3]===Symbol.for("react.memo_cache_sentinel")?(A=[],e[3]=A):A=e[3];let $;e[4]!==_?($={key:_,defaultValue:A},e[4]=_,e[5]=$):$=e[5];const[V,U]=ae($);let z;e[6]!==V?(z=new Set(V),e[6]=V,e[7]=z):z=e[7];const le=z,{addEntry:I,clone:N,deleteEntry:w,move:R,reorderEntry:C}=ot(),h=As(_l);let oe;e[8]===Symbol.for("react.memo_cache_sentinel")?(oe={key:dt.editorMode,defaultValue:L.Edit},e[8]=oe):oe=e[8];const[T]=ae(oe),ue=ce(yl),B=ce(jl),i=ce(ml),xs=j.useRef(null),ps=j.useRef(null),Xt=T===L.Edit?i:x==null?void 0:x.selectedEventId;let ct;e[9]!==Xt?(ct={followRef:xs,scrollRef:ps,doFollow:!0,followTrigger:Xt},e[9]=Xt,e[10]=ct):ct=e[10],$n(ct);let at;e[11]===Symbol.for("react.memo_cache_sentinel")?(at={activationConstraint:{distance:10}},e[11]=at):at=e[11];const Zt=on(dn(an,at));let ut;e[12]!==w||e[13]!==r||e[14]!==n||e[15]!==B?(ut=c=>{if(!c)return;const{entry:f,index:d}=Ss(r,n,c);w([c]),f&&d!==null&&B({id:f.id,selectMode:"click",index:d})},e[12]=w,e[13]=r,e[14]=n,e[15]=B,e[16]=ut):ut=e[16];const fe=ut;let ft;e[17]!==N||e[18]!==r?(ft=(c,f)=>{const d=f===void 0?!1:f,{entryCopyId:a}=As.getState();if(a===null||!r[a])return;let S=c;const G=r[a],M=c?r[c]:void 0;M&&"parent"in M&&M.parent&&G.type===y.Group&&(S=M.parent),N(a,{after:d?void 0:S??void 0,before:d?S??void 0:void 0})},e[17]=N,e[18]=r,e[19]=ft):ft=e[19];const he=ft;let ht;e[20]!==I?(ht=(c,f,d)=>{const a=d===void 0?!1:d;I(c,{after:f&&!a?f:void 0,before:f&&a?f:void 0,lastEventId:!a&&f?f:void 0})},e[20]=I,e[21]=ht):ht=e[21];const E=ht;let xt;e[22]!==r||e[23]!==n||e[24]!==B?(xt=(c,f)=>{if(n.length<1)return;let d=c;if(c===null){const S=f==="up"?Ns(r,n):ks(r,n);if(it(S)){B({id:S.id,selectMode:"click",index:f==="up"?n.length:0});return}d=(S==null?void 0:S.id)??null}if(d===null)return;const a=f==="up"?Tn(r,n,d):Fn(r,n,d);a.entry!==null&&a.index!==null&&B({id:a.entry.id,selectMode:"click",index:a.index})},e[22]=r,e[23]=n,e[24]=B,e[25]=xt):xt=e[25];const xe=xt;let pt;e[26]!==r||e[27]!==n||e[28]!==B?(pt=(c,f)=>{if(n.length<1)return;if(c===null){const a=f==="up"?Ns(r,n):ks(r,n);a!==null&&B({id:a.id,selectMode:"click",index:f==="up"?n.length:0});return}const d=f==="up"?Ss(r,n,c):Kn(r,n,c);d.entry!==null&&d.index!==null&&B({id:d.entry.id,selectMode:"click",index:d.index})},e[26]=r,e[27]=n,e[28]=B,e[29]=pt):pt=e[29];const pe=pt;let mt;e[30]!==le?(mt=c=>le.has(c),e[30]=le,e[31]=mt):mt=e[31];const F=mt;let jt;e[32]!==F||e[33]!==U?(jt=(c,f)=>{U(d=>{const a=F(f);return c&&!a?[...new Set(d).add(f)]:!c&&a?[...d].filter(S=>S!==f):d})},e[32]=F,e[33]=U,e[34]=jt):jt=e[34];const W=jt;let yt;e[35]!==W||e[36]!==R?(yt=async(c,f)=>{if(c==null)return;const d=await R(c,f);d&&W(!1,d)},e[35]=W,e[36]=R,e[37]=yt):yt=e[37];const me=yt;let je;e[38]!==i||e[39]!==pe?(je=()=>pe(i,"down"),e[38]=i,e[39]=pe,e[40]=je):je=e[40];let _t;e[41]===Symbol.for("react.memo_cache_sentinel")?(_t={preventDefault:!0,usePhysicalKeys:!0},e[41]=_t):_t=e[41];let ye;e[42]!==je?(ye=["alt + ArrowDown",je,_t],e[42]=je,e[43]=ye):ye=e[43];let _e;e[44]!==i||e[45]!==pe?(_e=()=>pe(i,"up"),e[44]=i,e[45]=pe,e[46]=_e):_e=e[46];let vt;e[47]===Symbol.for("react.memo_cache_sentinel")?(vt={preventDefault:!0,usePhysicalKeys:!0},e[47]=vt):vt=e[47];let ve;e[48]!==_e?(ve=["alt + ArrowUp",_e,vt],e[48]=_e,e[49]=ve):ve=e[49];let ge;e[50]!==i||e[51]!==xe?(ge=()=>xe(i,"down"),e[50]=i,e[51]=xe,e[52]=ge):ge=e[52];let gt;e[53]===Symbol.for("react.memo_cache_sentinel")?(gt={preventDefault:!0,usePhysicalKeys:!0},e[53]=gt):gt=e[53];let be;e[54]!==ge?(be=["alt + shift + ArrowDown",ge,gt],e[54]=ge,e[55]=be):be=e[55];let Ee;e[56]!==i||e[57]!==xe?(Ee=()=>xe(i,"up"),e[56]=i,e[57]=xe,e[58]=Ee):Ee=e[58];let bt;e[59]===Symbol.for("react.memo_cache_sentinel")?(bt={preventDefault:!0,usePhysicalKeys:!0},e[59]=bt):bt=e[59];let we;e[60]!==Ee?(we=["alt + shift + ArrowUp",Ee,bt],e[60]=Ee,e[61]=we):we=e[61];let Ce;e[62]!==i||e[63]!==me?(Ce=()=>me(i,"down"),e[62]=i,e[63]=me,e[64]=Ce):Ce=e[64];let Et;e[65]===Symbol.for("react.memo_cache_sentinel")?(Et={preventDefault:!0,usePhysicalKeys:!0},e[65]=Et):Et=e[65];let Se;e[66]!==Ce?(Se=["alt + mod + ArrowDown",Ce,Et],e[66]=Ce,e[67]=Se):Se=e[67];let Ne;e[68]!==i||e[69]!==me?(Ne=()=>me(i,"up"),e[68]=i,e[69]=me,e[70]=Ne):Ne=e[70];let wt;e[71]===Symbol.for("react.memo_cache_sentinel")?(wt={preventDefault:!0,usePhysicalKeys:!0},e[71]=wt):wt=e[71];let ke;e[72]!==Ne?(ke=["alt + mod + ArrowUp",Ne,wt],e[72]=Ne,e[73]=ke):ke=e[73];let Ie;e[74]!==ue?(Ie=()=>ue(),e[74]=ue,e[75]=Ie):Ie=e[75];let Ct;e[76]===Symbol.for("react.memo_cache_sentinel")?(Ct={preventDefault:!0,usePhysicalKeys:!0},e[76]=Ct):Ct=e[76];let Me;e[77]!==Ie?(Me=["Escape",Ie,Ct],e[77]=Ie,e[78]=Me):Me=e[78];let De;e[79]!==i||e[80]!==fe?(De=()=>fe(i),e[79]=i,e[80]=fe,e[81]=De):De=e[81];let St;e[82]===Symbol.for("react.memo_cache_sentinel")?(St={preventDefault:!0,usePhysicalKeys:!0},e[82]=St):St=e[82];let Ae;e[83]!==De?(Ae=["mod + Backspace",De,St],e[83]=De,e[84]=Ae):Ae=e[84];let Re;e[85]!==i||e[86]!==E?(Re=()=>E({type:y.Event},i),e[85]=i,e[86]=E,e[87]=Re):Re=e[87];let Nt;e[88]===Symbol.for("react.memo_cache_sentinel")?(Nt={preventDefault:!0,usePhysicalKeys:!0},e[88]=Nt):Nt=e[88];let Ge;e[89]!==Re?(Ge=["alt + E",Re,Nt],e[89]=Re,e[90]=Ge):Ge=e[90];let Pe;e[91]!==i||e[92]!==E?(Pe=()=>E({type:y.Event},i,!0),e[91]=i,e[92]=E,e[93]=Pe):Pe=e[93];let kt;e[94]===Symbol.for("react.memo_cache_sentinel")?(kt={preventDefault:!0,usePhysicalKeys:!0},e[94]=kt):kt=e[94];let Oe;e[95]!==Pe?(Oe=["alt + shift + E",Pe,kt],e[95]=Pe,e[96]=Oe):Oe=e[96];let $e;e[97]!==i||e[98]!==E?($e=()=>E({type:y.Group},i),e[97]=i,e[98]=E,e[99]=$e):$e=e[99];let It;e[100]===Symbol.for("react.memo_cache_sentinel")?(It={preventDefault:!0,usePhysicalKeys:!0},e[100]=It):It=e[100];let Be;e[101]!==$e?(Be=["alt + G",$e,It],e[101]=$e,e[102]=Be):Be=e[102];let Te;e[103]!==i||e[104]!==E?(Te=()=>E({type:y.Group},i,!0),e[103]=i,e[104]=E,e[105]=Te):Te=e[105];let Mt;e[106]===Symbol.for("react.memo_cache_sentinel")?(Mt={preventDefault:!0,usePhysicalKeys:!0},e[106]=Mt):Mt=e[106];let Fe;e[107]!==Te?(Fe=["alt + shift + G",Te,Mt],e[107]=Te,e[108]=Fe):Fe=e[108];let Ke;e[109]!==i||e[110]!==E?(Ke=()=>E({type:y.Delay},i),e[109]=i,e[110]=E,e[111]=Ke):Ke=e[111];let Dt;e[112]===Symbol.for("react.memo_cache_sentinel")?(Dt={preventDefault:!0,usePhysicalKeys:!0},e[112]=Dt):Dt=e[112];let Le;e[113]!==Ke?(Le=["alt + D",Ke,Dt],e[113]=Ke,e[114]=Le):Le=e[114];let Ve;e[115]!==i||e[116]!==E?(Ve=()=>E({type:y.Delay},i,!0),e[115]=i,e[116]=E,e[117]=Ve):Ve=e[117];let At;e[118]===Symbol.for("react.memo_cache_sentinel")?(At={preventDefault:!0,usePhysicalKeys:!0},e[118]=At):At=e[118];let ze;e[119]!==Ve?(ze=["alt + shift + D",Ve,At],e[119]=Ve,e[120]=ze):ze=e[120];let We;e[121]!==i||e[122]!==E?(We=()=>E({type:y.Milestone},i),e[121]=i,e[122]=E,e[123]=We):We=e[123];let Rt;e[124]===Symbol.for("react.memo_cache_sentinel")?(Rt={preventDefault:!0,usePhysicalKeys:!0},e[124]=Rt):Rt=e[124];let qe;e[125]!==We?(qe=["alt + M",We,Rt],e[125]=We,e[126]=qe):qe=e[126];let Ue;e[127]!==i||e[128]!==E?(Ue=()=>E({type:y.Milestone},i,!0),e[127]=i,e[128]=E,e[129]=Ue):Ue=e[129];let Gt;e[130]===Symbol.for("react.memo_cache_sentinel")?(Gt={preventDefault:!0,usePhysicalKeys:!0},e[130]=Gt):Gt=e[130];let Qe;e[131]!==Ue?(Qe=["alt + shift + M",Ue,Gt],e[131]=Ue,e[132]=Qe):Qe=e[132];let He;e[133]!==i||e[134]!==h?(He=["mod + C",()=>h(i)],e[133]=i,e[134]=h,e[135]=He):He=e[135];let Ye;e[136]!==i||e[137]!==he?(Ye=["mod + V",()=>he(i)],e[136]=i,e[137]=he,e[138]=Ye):Ye=e[138];let Je;e[139]!==i||e[140]!==he?(Je=()=>he(i,!0),e[139]=i,e[140]=he,e[141]=Je):Je=e[141];let Pt;e[142]===Symbol.for("react.memo_cache_sentinel")?(Pt={preventDefault:!0,usePhysicalKeys:!0},e[142]=Pt):Pt=e[142];let Xe;e[143]!==Je?(Xe=["mod + shift + V",Je,Pt],e[143]=Je,e[144]=Xe):Xe=e[144];let Ze;e[145]!==i||e[146]!==fe?(Ze=()=>fe(i),e[145]=i,e[146]=fe,e[147]=Ze):Ze=e[147];let Ot;e[148]===Symbol.for("react.memo_cache_sentinel")?(Ot={preventDefault:!0,usePhysicalKeys:!0},e[148]=Ot):Ot=e[148];let et;e[149]!==Ze?(et=["alt + backspace",Ze,Ot],e[149]=Ze,e[150]=et):et=e[150];let $t;e[151]!==ye||e[152]!==ve||e[153]!==be||e[154]!==we||e[155]!==Se||e[156]!==ke||e[157]!==Me||e[158]!==Ae||e[159]!==Ge||e[160]!==Oe||e[161]!==Be||e[162]!==Fe||e[163]!==Le||e[164]!==ze||e[165]!==qe||e[166]!==Qe||e[167]!==He||e[168]!==Ye||e[169]!==Xe||e[170]!==et?($t=[ye,ve,be,we,Se,ke,Me,Ae,Ge,Oe,Be,Fe,Le,ze,qe,Qe,He,Ye,Xe,et],e[151]=ye,e[152]=ve,e[153]=be,e[154]=we,e[155]=Se,e[156]=ke,e[157]=Me,e[158]=Ae,e[159]=Ge,e[160]=Oe,e[161]=Be,e[162]=Fe,e[163]=Le,e[164]=ze,e[165]=qe,e[166]=Qe,e[167]=He,e[168]=Ye,e[169]=Xe,e[170]=et,e[171]=$t):$t=e[171],Fs($t);let Bt,Tt;e[172]!==r||e[173]!==n||e[174]!==l?(Bt=()=>{D(Cs(n,r)),p(l)},Tt=[n,r,l],e[172]=r,e[173]=n,e[174]=l,e[175]=Bt,e[176]=Tt):(Bt=e[175],Tt=e[176]),j.useEffect(Bt,Tt);let Ft,Kt;e[177]!==T||e[178]!==r||e[179]!==x.selectedEventId||e[180]!==n||e[181]!==U||e[182]!==B?(Ft=()=>{var d;if(T!==L.Run||!(x!=null&&x.selectedEventId))return;const c=n.findIndex(a=>a===x.selectedEventId),f=(d=r[x.selectedEventId])==null?void 0:d.parent;f&&U(a=>[...a].filter(S=>S!==f)),B({id:x.selectedEventId,selectMode:"click",index:c})},Kt=[T,r,x.selectedEventId,n,U,B],e[177]=T,e[178]=r,e[179]=x.selectedEventId,e[180]=n,e[181]=U,e[182]=B,e[183]=Ft,e[184]=Kt):(Ft=e[183],Kt=e[184]),j.useEffect(Ft,Kt);let Lt;e[185]!==o.entries||e[186]!==F||e[187]!==C||e[188]!==b?(Lt=c=>{var Ht;const{active:f,over:d}=c;if(!(d!=null&&d.id)||f.id===d.id||!f.data.current||!d.data.current)return;const a=f.data.current.sortable.index,S=d.data.current.sortable.index;let G=a<S?"after":"before",M=d.id;const Qt=((Ht=f.data.current)==null?void 0:Ht.type)===y.Group;if(Qt&&!Ys(d.data.current.type,d.data.current.parent,G,F(M)))return;if(M.startsWith("end-"))M=M.replace("end-",""),G==="before"&&(G="insert");else{const J=o.entries[M];it(J)&&G==="after"&&(Qt?M=J.id:J.entries.length===0?(M=J.id,G="insert"):(M=J.entries[0],G="before"))}const rs=[...b];D(J=>Ln(J,a,S)),C(f.id,M,G).catch(J=>{D(rs)})},e[185]=o.entries,e[186]=F,e[187]=C,e[188]=b,e[189]=Lt):Lt=e[189];const es=Lt;let Vt;e[190]!==W?(Vt=c=>{var d;((d=c.active.data.current)==null?void 0:d.type)===y.Group&&W(!0,c.active.id)},e[190]=W,e[191]=Vt):Vt=e[191];const ts=Vt;let zt;e[192]!==F||e[193]!==W?(zt=c=>{var a,S,G,M;if(((a=c.active.data.current)==null?void 0:a.type)==="group"||((G=(S=c.over)==null?void 0:S.data.current)==null?void 0:G.type)!=="group")return;const f=(M=c.over)==null?void 0:M.id;F(f)&&W(!1,f)},e[192]=F,e[193]=W,e[194]=zt):zt=e[194];const ss=zt;if(b.length<1){let c;return e[195]!==I?(c=t.jsx(rl,{handleAddNew:f=>I({type:f})}),e[195]=I,e[196]=c):c=e[196],c}const Q=T===L.Edit;let Wt;e[197]!==n?(Wt=n.at(-1),e[197]=n,e[198]=Wt):Wt=e[198];const ns=Wt;let tt;e[199]!==Q?(tt=Q&&t.jsx(cs,{previousEventId:null,parentGroup:null}),e[199]=Q,e[200]=tt):tt=e[200];let st;e[201]!==i||e[202]!==r||e[203]!==x.nextEventId||e[204]!==x.playback||e[205]!==F||e[206]!==W||e[207]!==Q||e[208]!==ns||e[209]!==k||e[210]!==b?(st=b.map((c,f)=>{if(c.startsWith("end-")){const ls=c.split("end-")[1],Xs=F(ls),X=k[ls];return Xs?null:t.jsxs(j.Fragment,{children:[Q&&(X==null?void 0:X.groupEntries)===0&&t.jsx(cs,{previousEventId:null,parentGroup:ls,backgroundColor:X==null?void 0:X.groupColour}),t.jsx(tl,{id:c,colour:X==null?void 0:X.groupColour},c)]},c)}const d=r[c],a=k[c];if(!d||!a||d.type!==y.Group&&a.groupId!==null&&F(a.groupId))return null;const S=(x==null?void 0:x.nextEventId)===d.id,G=d.id===i,M=a.groupColour===""?"#9d9d9d":a.groupColour,Qt=f===0,rs=c===ns,Ht=a.thisId!==a.groupId?a.groupId:null,J=a.groupId;return t.jsxs(j.Fragment,{children:[Q&&G&&!Qt&&t.jsx(Ps,{placement:"before",referenceEntryId:d.id,parentGroup:Ht}),it(d)?t.jsx(Xr,{data:d,hasCursor:G,collapsed:F(d.id),onCollapse:W}):t.jsxs("div",{className:Z.entryWrapper,"data-testid":`entry-${a.eventIndex}`,style:M?{"--user-bg":M}:{},children:[de(d)&&t.jsxs("div",{className:Z.entryIndex,children:[d.flag&&t.jsx(cn,{className:Z.flag}),t.jsx("div",{className:Z.index,children:a.eventIndex})]}),t.jsx("div",{className:Z.entry,ref:G?xs:void 0,children:t.jsx(xl,{type:d.type,isPast:a.isPast,eventIndex:a.eventIndex,data:d,loaded:a.isLoaded,hasCursor:G,isNext:S,isNextDay:a.isNextDay,playback:a.isLoaded?x.playback:void 0,isRolling:x.playback===bn.Roll,totalGap:a.totalGap,isLinkedToLoaded:a.isLinkedToLoaded})},d.id)]}),Q&&G&&!rs&&t.jsx(Ps,{placement:"after",referenceEntryId:d.id,parentGroup:J})]},d.id)}),e[201]=i,e[202]=r,e[203]=x.nextEventId,e[204]=x.playback,e[205]=F,e[206]=W,e[207]=Q,e[208]=ns,e[209]=k,e[210]=b,e[211]=st):st=e[211];let nt;e[212]!==Q||e[213]!==k?(nt=Q&&t.jsx(cs,{previousEventId:((ms=k[ws])==null?void 0:ms.groupId)??k[ws].thisId,parentGroup:null}),e[212]=Q,e[213]=k,e[214]=nt):nt=e[214];let qt;e[215]===Symbol.for("react.memo_cache_sentinel")?(qt=t.jsx("div",{className:Z.spacer}),e[215]=qt):qt=e[215];let rt;e[216]!==tt||e[217]!==st||e[218]!==nt?(rt=t.jsxs("div",{className:Z.list,children:[tt,st,nt,qt]}),e[216]=tt,e[217]=st,e[218]=nt,e[219]=rt):rt=e[219];let lt;e[220]!==b||e[221]!==rt?(lt=t.jsx(un,{items:b,strategy:fn,children:rt}),e[220]=b,e[221]=rt,e[222]=lt):lt=e[222];let Ut;return e[223]!==ts||e[224]!==ss||e[225]!==es||e[226]!==Zt||e[227]!==lt?(Ut=t.jsx("div",{className:Z.rundownContainer,ref:ps,"data-testid":"rundown",children:t.jsx(hn,{onDragEnd:es,onDragStart:ts,onDragOver:ss,sensors:Zt,collisionDetection:xn,children:lt})}),e[223]=ts,e[224]=ss,e[225]=es,e[226]=Zt,e[227]=lt,e[228]=Ut):Ut=e[228],Ut}function ml(s){return s.cursor}function jl(s){return s.setSelectedEvents}function yl(s){return s.clearSelectedEvents}function _l(s){return s.setEntryCopyId}function Bs({isSmallDevice:s}){const{data:e,status:o,rundownMetadata:l}=In();return t.jsxs("div",{className:Z.rundownWrapper,children:[s?t.jsx(Cr,{}):t.jsx(Er,{}),o==="success"&&e&&l?t.jsx(pl,{data:e,rundownMetadata:l}):t.jsx(Hs,{text:"Connecting to server"})]})}const vl="_rundownExport_h38r0_21",gl="_extracted_h38r0_25",bl="_list_h38r0_25",El="_side_h38r0_29",wl="_rundown_h38r0_21",se={rundownExport:vl,extracted:gl,list:bl,side:El,rundown:wl},Cl=j.memo(Sl);function Sl(){const s=window.location.pathname.includes("/rundown"),[e]=ae({key:dt.editorMode,defaultValue:L.Edit});if(En()&&s)return t.jsx(Es,{permission:"editor",children:t.jsxs("div",{className:re([se.rundownExport,se.extracted]),"data-target":"small-device","data-testid":"panel-rundown",children:[t.jsx(Ms,{}),t.jsx(bs,{suppressSettings:!0}),t.jsx("div",{className:se.rundown,children:t.jsx(is,{children:t.jsx(Ds,{children:t.jsx(Bs,{isSmallDevice:!0})})})})]})});const l=s&&e==="run";return t.jsx(Es,{permission:"editor",children:t.jsxs("div",{className:re([se.rundownExport,s&&se.extracted]),"data-testid":"panel-rundown",children:[t.jsx(Ms,{}),s&&t.jsx(bs,{suppressSettings:!0,isNavigationLocked:wn()}),t.jsxs("div",{className:se.rundown,children:[t.jsx("div",{className:se.list,children:t.jsxs(is,{children:[!s&&t.jsx(jn,{onClick:n=>Cn("rundown",n)}),t.jsx(Ds,{children:t.jsx(Bs,{})})]})}),!l&&t.jsx("div",{className:se.side,children:t.jsx(is,{children:t.jsx(sr,{})})})]})]})})}const Fl=Object.freeze(Object.defineProperty({__proto__:null,default:Cl},Symbol.toStringTag,{value:"Module"}));export{Fl as R,Pr as T,Rr as a,Tl as g,ce as u};
|
|
3
|
-
//# sourceMappingURL=RundownExport-CCaOfHIr.js.map
|
|
Binary file
|
|
Binary file
|