@getontime/cli 4.2.0 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (481) hide show
  1. package/client/assets/Backstage-CDH53Q_N.js +2 -0
  2. package/client/assets/Backstage-CDH53Q_N.js.br +0 -0
  3. package/client/assets/Backstage-CDH53Q_N.js.gz +0 -0
  4. package/client/assets/Backstage-CDH53Q_N.js.map +1 -0
  5. package/client/assets/Countdown-B-MuMf1C.js +2 -0
  6. package/client/assets/Countdown-B-MuMf1C.js.br +0 -0
  7. package/client/assets/Countdown-B-MuMf1C.js.gz +0 -0
  8. package/client/assets/Countdown-B-MuMf1C.js.map +1 -0
  9. package/client/assets/CustomTranslationModal-DiQbmcgD.js +2 -0
  10. package/client/assets/CustomTranslationModal-DiQbmcgD.js.br +0 -0
  11. package/client/assets/CustomTranslationModal-DiQbmcgD.js.gz +0 -0
  12. package/client/assets/{CustomTranslationModal-CJ9-aDjl.js.map → CustomTranslationModal-DiQbmcgD.js.map} +1 -1
  13. package/client/assets/DelayIndicator-D--91EO3.js +2 -0
  14. package/client/assets/DelayIndicator-D--91EO3.js.br +0 -0
  15. package/client/assets/DelayIndicator-D--91EO3.js.gz +0 -0
  16. package/client/assets/{DelayIndicator-F4GdgsGh.js.map → DelayIndicator-D--91EO3.js.map} +1 -1
  17. package/client/assets/EditorFeatureWrapper-DwXUAV4k.js +2 -0
  18. package/client/assets/EditorFeatureWrapper-DwXUAV4k.js.br +0 -0
  19. package/client/assets/EditorFeatureWrapper-DwXUAV4k.js.gz +0 -0
  20. package/client/assets/{EditorFeatureWrapper-eIpSr_UK.js.map → EditorFeatureWrapper-DwXUAV4k.js.map} +1 -1
  21. package/client/assets/EditorUtils-DuKjlUkF.js +2 -0
  22. package/client/assets/EditorUtils-DuKjlUkF.js.br +0 -0
  23. package/client/assets/EditorUtils-DuKjlUkF.js.gz +0 -0
  24. package/client/assets/{EditorUtils-Bd3J5Dvf.js.map → EditorUtils-DuKjlUkF.js.map} +1 -1
  25. package/client/assets/EditorUtils-L4Sg72o_.css +1 -0
  26. package/client/assets/EditorUtils-L4Sg72o_.css.br +0 -0
  27. package/client/assets/EditorUtils-L4Sg72o_.css.gz +0 -0
  28. package/client/assets/Empty-CJbZxh45.js +2 -0
  29. package/client/assets/Empty-CJbZxh45.js.br +0 -0
  30. package/client/assets/Empty-CJbZxh45.js.gz +0 -0
  31. package/client/assets/{Empty-C0IdV_kI.js.map → Empty-CJbZxh45.js.map} +1 -1
  32. package/client/assets/EmptyPage-Bc358YpE.js +2 -0
  33. package/client/assets/EmptyPage-Bc358YpE.js.br +5 -0
  34. package/client/assets/EmptyPage-Bc358YpE.js.gz +0 -0
  35. package/client/assets/{EmptyPage-Ct3d0DqJ.js.map → EmptyPage-Bc358YpE.js.map} +1 -1
  36. package/client/assets/FollowButton-C6Fvaqh0.js +2 -0
  37. package/client/assets/FollowButton-C6Fvaqh0.js.br +0 -0
  38. package/client/assets/FollowButton-C6Fvaqh0.js.gz +0 -0
  39. package/client/assets/{FollowButton-BG-ycRWu.js.map → FollowButton-C6Fvaqh0.js.map} +1 -1
  40. package/client/assets/MessageControlExport-D_pNX6Vj.css +1 -0
  41. package/client/assets/MessageControlExport-D_pNX6Vj.css.br +0 -0
  42. package/client/assets/MessageControlExport-D_pNX6Vj.css.gz +0 -0
  43. package/client/assets/MessageControlExport-GmOrvUik.js +3 -0
  44. package/client/assets/MessageControlExport-GmOrvUik.js.br +0 -0
  45. package/client/assets/MessageControlExport-GmOrvUik.js.gz +0 -0
  46. package/client/assets/MessageControlExport-GmOrvUik.js.map +1 -0
  47. package/client/assets/MilestoneEditor-BA0PVIQh.js +2 -0
  48. package/client/assets/MilestoneEditor-BA0PVIQh.js.br +0 -0
  49. package/client/assets/MilestoneEditor-BA0PVIQh.js.gz +0 -0
  50. package/client/assets/MilestoneEditor-BA0PVIQh.js.map +1 -0
  51. package/client/assets/Modal-BKx0PDGT.js +2 -0
  52. package/client/assets/Modal-BKx0PDGT.js.br +0 -0
  53. package/client/assets/Modal-BKx0PDGT.js.gz +0 -0
  54. package/client/assets/Modal-BKx0PDGT.js.map +1 -0
  55. package/client/assets/{MultiPartProgressBar-Cmw-gisu.js → MultiPartProgressBar-BXdLxJpy.js} +2 -2
  56. package/client/assets/MultiPartProgressBar-BXdLxJpy.js.br +0 -0
  57. package/client/assets/MultiPartProgressBar-BXdLxJpy.js.gz +0 -0
  58. package/client/assets/{MultiPartProgressBar-Cmw-gisu.js.map → MultiPartProgressBar-BXdLxJpy.js.map} +1 -1
  59. package/client/assets/OperatorExport-CA5WcIt5.css +1 -0
  60. package/client/assets/OperatorExport-CA5WcIt5.css.br +0 -0
  61. package/client/assets/OperatorExport-CA5WcIt5.css.gz +0 -0
  62. package/client/assets/OperatorExport-X7-qi2jv.js +2 -0
  63. package/client/assets/OperatorExport-X7-qi2jv.js.br +0 -0
  64. package/client/assets/OperatorExport-X7-qi2jv.js.gz +0 -0
  65. package/client/assets/OperatorExport-X7-qi2jv.js.map +1 -0
  66. package/client/assets/OverviewWrapper-BQb2xl_N.js +2 -0
  67. package/client/assets/OverviewWrapper-BQb2xl_N.js.br +0 -0
  68. package/client/assets/OverviewWrapper-BQb2xl_N.js.gz +0 -0
  69. package/client/assets/OverviewWrapper-BQb2xl_N.js.map +1 -0
  70. package/client/assets/PipHost-CvtlZIn7.js +2 -0
  71. package/client/assets/PipHost-CvtlZIn7.js.br +0 -0
  72. package/client/assets/PipHost-CvtlZIn7.js.gz +0 -0
  73. package/client/assets/PipHost-CvtlZIn7.js.map +1 -0
  74. package/client/assets/PipHost-DEhjTbGT.css +1 -0
  75. package/client/assets/PipHost-DEhjTbGT.css.br +0 -0
  76. package/client/assets/PipHost-DEhjTbGT.css.gz +0 -0
  77. package/client/assets/ProjectInfo-1tw48NHZ.js +2 -0
  78. package/client/assets/ProjectInfo-1tw48NHZ.js.br +0 -0
  79. package/client/assets/ProjectInfo-1tw48NHZ.js.gz +0 -0
  80. package/client/assets/{ProjectInfo-BduQgjcz.js.map → ProjectInfo-1tw48NHZ.js.map} +1 -1
  81. package/client/assets/ProtectRoute-BH-QvsU0.js +2 -0
  82. package/client/assets/ProtectRoute-BH-QvsU0.js.br +0 -0
  83. package/client/assets/ProtectRoute-BH-QvsU0.js.gz +0 -0
  84. package/client/assets/{ProtectRoute-Ci_AIozP.js.map → ProtectRoute-BH-QvsU0.js.map} +1 -1
  85. package/client/assets/ProtectedCuesheet-CYBIcg1c.js +2 -0
  86. package/client/assets/ProtectedCuesheet-CYBIcg1c.js.br +0 -0
  87. package/client/assets/ProtectedCuesheet-CYBIcg1c.js.gz +0 -0
  88. package/client/assets/ProtectedCuesheet-CYBIcg1c.js.map +1 -0
  89. package/client/assets/ProtectedCuesheet-DPO7xYMb.css +1 -0
  90. package/client/assets/ProtectedCuesheet-DPO7xYMb.css.br +0 -0
  91. package/client/assets/ProtectedCuesheet-DPO7xYMb.css.gz +0 -0
  92. package/client/assets/{ProtectedEditor-Dw0pWw0J.css → ProtectedEditor-BtSuTFlT.css} +1 -1
  93. package/client/assets/ProtectedEditor-BtSuTFlT.css.br +0 -0
  94. package/client/assets/{ProtectedEditor-Dw0pWw0J.css.gz → ProtectedEditor-BtSuTFlT.css.gz} +0 -0
  95. package/client/assets/ProtectedEditor-D_A75byA.js +3 -0
  96. package/client/assets/ProtectedEditor-D_A75byA.js.br +0 -0
  97. package/client/assets/ProtectedEditor-D_A75byA.js.gz +0 -0
  98. package/client/assets/ProtectedEditor-D_A75byA.js.map +1 -0
  99. package/client/assets/RundownEntry-bkqwx57t.js +2 -0
  100. package/client/assets/RundownEntry-bkqwx57t.js.br +0 -0
  101. package/client/assets/RundownEntry-bkqwx57t.js.gz +0 -0
  102. package/client/assets/RundownEntry-bkqwx57t.js.map +1 -0
  103. package/client/assets/{RundownExport-DtSvAfBG.css → RundownExport-Bgtg_idR.css} +1 -1
  104. package/client/assets/RundownExport-Bgtg_idR.css.br +0 -0
  105. package/client/assets/RundownExport-Bgtg_idR.css.gz +0 -0
  106. package/client/assets/RundownExport-EorsanA0.js +3 -0
  107. package/client/assets/RundownExport-EorsanA0.js.br +0 -0
  108. package/client/assets/RundownExport-EorsanA0.js.gz +0 -0
  109. package/client/assets/RundownExport-EorsanA0.js.map +1 -0
  110. package/client/assets/Select-BGGVCKqU.js +2 -0
  111. package/client/assets/Select-BGGVCKqU.js.br +0 -0
  112. package/client/assets/Select-BGGVCKqU.js.gz +0 -0
  113. package/client/assets/Select-BGGVCKqU.js.map +1 -0
  114. package/client/assets/Studio-BjNZ4l-W.js +2 -0
  115. package/client/assets/Studio-BjNZ4l-W.js.br +0 -0
  116. package/client/assets/Studio-BjNZ4l-W.js.gz +0 -0
  117. package/client/assets/Studio-BjNZ4l-W.js.map +1 -0
  118. package/client/assets/StyleEditor-CpciRLYh.js +2 -0
  119. package/client/assets/StyleEditor-CpciRLYh.js.br +0 -0
  120. package/client/assets/StyleEditor-CpciRLYh.js.gz +0 -0
  121. package/client/assets/{StyleEditor-BvcE8dkA.js.map → StyleEditor-CpciRLYh.js.map} +1 -1
  122. package/client/assets/SuperscriptPeriod-DsPdWN_s.js +2 -0
  123. package/client/assets/SuperscriptPeriod-DsPdWN_s.js.br +0 -0
  124. package/client/assets/SuperscriptPeriod-DsPdWN_s.js.gz +0 -0
  125. package/client/assets/SuperscriptPeriod-DsPdWN_s.js.map +1 -0
  126. package/client/assets/SuperscriptTime-CA6S2R55.js +2 -0
  127. package/client/assets/SuperscriptTime-CA6S2R55.js.br +0 -0
  128. package/client/assets/SuperscriptTime-CA6S2R55.js.gz +0 -0
  129. package/client/assets/SuperscriptTime-CA6S2R55.js.map +1 -0
  130. package/client/assets/SwatchPicker-Cm5Eicvv.js +2 -0
  131. package/client/assets/SwatchPicker-Cm5Eicvv.js.br +0 -0
  132. package/client/assets/SwatchPicker-Cm5Eicvv.js.gz +0 -0
  133. package/client/assets/SwatchPicker-Cm5Eicvv.js.map +1 -0
  134. package/client/assets/{TimeElements-XpRwBsaa.js → TimeElements-DbclWDbU.js} +2 -2
  135. package/client/assets/TimeElements-DbclWDbU.js.br +0 -0
  136. package/client/assets/TimeElements-DbclWDbU.js.gz +0 -0
  137. package/client/assets/TimeElements-DbclWDbU.js.map +1 -0
  138. package/client/assets/TimeInput-C8DQoFXv.js +2 -0
  139. package/client/assets/TimeInput-C8DQoFXv.js.br +0 -0
  140. package/client/assets/TimeInput-C8DQoFXv.js.gz +0 -0
  141. package/client/assets/{TimeInput-Bu_5GlHP.js.map → TimeInput-C8DQoFXv.js.map} +1 -1
  142. package/client/assets/TimelinePage-Cgtl1qNp.js +2 -0
  143. package/client/assets/TimelinePage-Cgtl1qNp.js.br +0 -0
  144. package/client/assets/TimelinePage-Cgtl1qNp.js.gz +0 -0
  145. package/client/assets/TimelinePage-Cgtl1qNp.js.map +1 -0
  146. package/client/assets/Timer-BbixOGdj.js +2 -0
  147. package/client/assets/Timer-BbixOGdj.js.br +0 -0
  148. package/client/assets/Timer-BbixOGdj.js.gz +0 -0
  149. package/client/assets/Timer-BbixOGdj.js.map +1 -0
  150. package/client/assets/{Timer-B7nk3TMf.css → Timer-Jjolf5Ra.css} +1 -1
  151. package/client/assets/Timer-Jjolf5Ra.css.br +0 -0
  152. package/client/assets/Timer-Jjolf5Ra.css.gz +0 -0
  153. package/client/assets/TimerControlExport-Dx3SSGNG.js +2 -0
  154. package/client/assets/TimerControlExport-Dx3SSGNG.js.br +0 -0
  155. package/client/assets/TimerControlExport-Dx3SSGNG.js.gz +0 -0
  156. package/client/assets/{TimerControlExport-4a3Cd9x8.js.map → TimerControlExport-Dx3SSGNG.js.map} +1 -1
  157. package/client/assets/{TimerControlExport-DavNxY9p.css → TimerControlExport-cJRa5GUp.css} +1 -1
  158. package/client/assets/TimerControlExport-cJRa5GUp.css.br +0 -0
  159. package/client/assets/{TimerControlExport-DavNxY9p.css.gz → TimerControlExport-cJRa5GUp.css.gz} +0 -0
  160. package/client/assets/TitleCard-Xdr7xwzU.js +2 -0
  161. package/client/assets/TitleCard-Xdr7xwzU.js.br +0 -0
  162. package/client/assets/TitleCard-Xdr7xwzU.js.gz +0 -0
  163. package/client/assets/{TitleCard-1U35ek0D.js.map → TitleCard-Xdr7xwzU.js.map} +1 -1
  164. package/client/assets/Tooltip-B5vsLcFu.js +2 -0
  165. package/client/assets/Tooltip-B5vsLcFu.js.br +0 -0
  166. package/client/assets/Tooltip-B5vsLcFu.js.gz +0 -0
  167. package/client/assets/Tooltip-B5vsLcFu.js.map +1 -0
  168. package/client/assets/ViewLogo-G7EosFIr.js +2 -0
  169. package/client/assets/ViewLogo-G7EosFIr.js.br +0 -0
  170. package/client/assets/ViewLogo-G7EosFIr.js.gz +0 -0
  171. package/client/assets/{ViewLogo-BHsV7Faa.js.map → ViewLogo-G7EosFIr.js.map} +1 -1
  172. package/client/assets/ViewParamsEditor-C2-TRP6e.js +2 -0
  173. package/client/assets/ViewParamsEditor-C2-TRP6e.js.br +0 -0
  174. package/client/assets/ViewParamsEditor-C2-TRP6e.js.gz +0 -0
  175. package/client/assets/ViewParamsEditor-C2-TRP6e.js.map +1 -0
  176. package/client/assets/dateConfig-D7xim1t4.js +2 -0
  177. package/client/assets/dateConfig-D7xim1t4.js.br +0 -0
  178. package/client/assets/dateConfig-D7xim1t4.js.gz +0 -0
  179. package/client/assets/dateConfig-D7xim1t4.js.map +1 -0
  180. package/client/assets/editorSettings-D2f7e1a6.js +2 -0
  181. package/client/assets/editorSettings-D2f7e1a6.js.br +0 -0
  182. package/client/assets/editorSettings-D2f7e1a6.js.gz +0 -0
  183. package/client/assets/{editorSettings-DH9ca-nB.js.map → editorSettings-D2f7e1a6.js.map} +1 -1
  184. package/client/assets/{getProgress-DlrSzpnf.js → getProgress-cLuBFPjh.js} +2 -2
  185. package/client/assets/getProgress-cLuBFPjh.js.br +0 -0
  186. package/client/assets/getProgress-cLuBFPjh.js.gz +0 -0
  187. package/client/assets/{getProgress-DlrSzpnf.js.map → getProgress-cLuBFPjh.js.map} +1 -1
  188. package/client/assets/index-B81u4hxi.js +3 -0
  189. package/client/assets/index-B81u4hxi.js.br +0 -0
  190. package/client/assets/index-B81u4hxi.js.gz +0 -0
  191. package/client/assets/index-B81u4hxi.js.map +1 -0
  192. package/client/assets/{index-BuJoGGff.css → index-D6S93MXv.css} +1 -1
  193. package/client/assets/index-D6S93MXv.css.br +0 -0
  194. package/client/assets/index-D6S93MXv.css.gz +0 -0
  195. package/client/assets/{offset-CLG4o744.js → offset-R98EXhWK.js} +2 -2
  196. package/client/assets/offset-R98EXhWK.js.br +0 -0
  197. package/client/assets/offset-R98EXhWK.js.gz +0 -0
  198. package/client/assets/{offset-CLG4o744.js.map → offset-R98EXhWK.js.map} +1 -1
  199. package/client/assets/parseUserTime-YeFR8t3F.js +2 -0
  200. package/client/assets/parseUserTime-YeFR8t3F.js.br +0 -0
  201. package/client/assets/parseUserTime-YeFR8t3F.js.gz +0 -0
  202. package/client/assets/{parseUserTime-Cp5iWS7y.js.map → parseUserTime-YeFR8t3F.js.map} +1 -1
  203. package/client/assets/{playbackstate-B3BKJ8cT.js → playbackstate-CPQdnF-k.js} +2 -2
  204. package/client/assets/playbackstate-CPQdnF-k.js.br +0 -0
  205. package/client/assets/playbackstate-CPQdnF-k.js.gz +0 -0
  206. package/client/assets/{playbackstate-B3BKJ8cT.js.map → playbackstate-CPQdnF-k.js.map} +1 -1
  207. package/client/assets/{presentation.utils-B-wIv_a5.js → presentation.utils-Cl-L3pHN.js} +2 -2
  208. package/client/assets/presentation.utils-Cl-L3pHN.js.br +0 -0
  209. package/client/assets/presentation.utils-Cl-L3pHN.js.gz +0 -0
  210. package/client/assets/{presentation.utils-B-wIv_a5.js.map → presentation.utils-Cl-L3pHN.js.map} +1 -1
  211. package/client/assets/{rundownUtils-DJKMt8Ih.js → rundownUtils-CtVGQDQn.js} +2 -2
  212. package/client/assets/rundownUtils-CtVGQDQn.js.br +0 -0
  213. package/client/assets/rundownUtils-CtVGQDQn.js.gz +0 -0
  214. package/client/assets/{rundownUtils-DJKMt8Ih.js.map → rundownUtils-CtVGQDQn.js.map} +1 -1
  215. package/client/assets/timer.utils-rGyI9NYa.js +2 -0
  216. package/client/assets/timer.utils-rGyI9NYa.js.br +0 -0
  217. package/client/assets/timer.utils-rGyI9NYa.js.gz +0 -0
  218. package/client/assets/timer.utils-rGyI9NYa.js.map +1 -0
  219. package/client/assets/useCustomFields-k4piRt9n.js +2 -0
  220. package/client/assets/useCustomFields-k4piRt9n.js.br +0 -0
  221. package/client/assets/useCustomFields-k4piRt9n.js.gz +0 -0
  222. package/client/assets/{useCustomFields-BUJkzZvM.js.map → useCustomFields-k4piRt9n.js.map} +1 -1
  223. package/client/assets/useFollowComponent-B7vvPzG2.js +2 -0
  224. package/client/assets/useFollowComponent-B7vvPzG2.js.br +0 -0
  225. package/client/assets/useFollowComponent-B7vvPzG2.js.gz +0 -0
  226. package/client/assets/{useFollowComponent-Eyo4hWVG.js.map → useFollowComponent-B7vvPzG2.js.map} +1 -1
  227. package/client/assets/useProjectData-DdgKoYzk.js +2 -0
  228. package/client/assets/useProjectData-DdgKoYzk.js.br +0 -0
  229. package/client/assets/useProjectData-DdgKoYzk.js.gz +0 -0
  230. package/client/assets/useProjectData-DdgKoYzk.js.map +1 -0
  231. package/client/assets/useReport-DSuFnUb9.js +2 -0
  232. package/client/assets/useReport-DSuFnUb9.js.br +0 -0
  233. package/client/assets/useReport-DSuFnUb9.js.gz +0 -0
  234. package/client/assets/{useReport-BUCsRa2T.js.map → useReport-DSuFnUb9.js.map} +1 -1
  235. package/client/assets/useRundown-Bn6ZPsz0.js +2 -0
  236. package/client/assets/useRundown-Bn6ZPsz0.js.br +0 -0
  237. package/client/assets/useRundown-Bn6ZPsz0.js.gz +0 -0
  238. package/client/assets/useRundown-Bn6ZPsz0.js.map +1 -0
  239. package/client/assets/useWindowTitle-Bpmo_HzW.js +2 -0
  240. package/client/assets/useWindowTitle-Bpmo_HzW.js.br +0 -0
  241. package/client/assets/useWindowTitle-Bpmo_HzW.js.gz +0 -0
  242. package/client/assets/useWindowTitle-Bpmo_HzW.js.map +1 -0
  243. package/client/assets/{validateEvent-3adKsP1N.js → validateEvent-Do8yE_DJ.js} +2 -2
  244. package/client/assets/validateEvent-Do8yE_DJ.js.br +3 -0
  245. package/client/assets/validateEvent-Do8yE_DJ.js.gz +0 -0
  246. package/client/assets/{validateEvent-3adKsP1N.js.map → validateEvent-Do8yE_DJ.js.map} +1 -1
  247. package/client/assets/vendor-q6fv0YT2.js +74 -0
  248. package/client/assets/vendor-q6fv0YT2.js.br +0 -0
  249. package/client/assets/vendor-q6fv0YT2.js.gz +0 -0
  250. package/client/assets/{vendor-BoH5HFNN.js.map → vendor-q6fv0YT2.js.map} +1 -1
  251. package/client/assets/{viewLoader.utils-BPOG1xso.js → viewLoader.utils-b42scp-I.js} +2 -2
  252. package/client/assets/viewLoader.utils-b42scp-I.js.br +0 -0
  253. package/client/assets/viewLoader.utils-b42scp-I.js.gz +0 -0
  254. package/client/assets/{viewLoader.utils-BPOG1xso.js.map → viewLoader.utils-b42scp-I.js.map} +1 -1
  255. package/client/assets/viewUtils-B8Dr4GHH.js +2 -0
  256. package/client/assets/viewUtils-B8Dr4GHH.js.br +0 -0
  257. package/client/assets/viewUtils-B8Dr4GHH.js.gz +0 -0
  258. package/client/assets/viewUtils-B8Dr4GHH.js.map +1 -0
  259. package/client/index.html +3 -3
  260. package/package.json +1 -1
  261. package/server/index.cjs +92 -92
  262. package/client/assets/Backstage-DG-hwPI3.js +0 -2
  263. package/client/assets/Backstage-DG-hwPI3.js.br +0 -0
  264. package/client/assets/Backstage-DG-hwPI3.js.gz +0 -0
  265. package/client/assets/Backstage-DG-hwPI3.js.map +0 -1
  266. package/client/assets/Countdown-C8LGl1pp.js +0 -2
  267. package/client/assets/Countdown-C8LGl1pp.js.br +0 -0
  268. package/client/assets/Countdown-C8LGl1pp.js.gz +0 -0
  269. package/client/assets/Countdown-C8LGl1pp.js.map +0 -1
  270. package/client/assets/CustomTranslationModal-CJ9-aDjl.js +0 -2
  271. package/client/assets/CustomTranslationModal-CJ9-aDjl.js.br +0 -0
  272. package/client/assets/CustomTranslationModal-CJ9-aDjl.js.gz +0 -0
  273. package/client/assets/DelayIndicator-F4GdgsGh.js +0 -2
  274. package/client/assets/DelayIndicator-F4GdgsGh.js.br +0 -0
  275. package/client/assets/DelayIndicator-F4GdgsGh.js.gz +0 -0
  276. package/client/assets/Editor-B_NlyOLw.css +0 -1
  277. package/client/assets/Editor-B_NlyOLw.css.br +0 -0
  278. package/client/assets/Editor-B_NlyOLw.css.gz +0 -0
  279. package/client/assets/Editor.module-DvV2efYs.js +0 -2
  280. package/client/assets/Editor.module-DvV2efYs.js.br +0 -0
  281. package/client/assets/Editor.module-DvV2efYs.js.gz +0 -0
  282. package/client/assets/Editor.module-DvV2efYs.js.map +0 -1
  283. package/client/assets/EditorFeatureWrapper-eIpSr_UK.js +0 -2
  284. package/client/assets/EditorFeatureWrapper-eIpSr_UK.js.br +0 -0
  285. package/client/assets/EditorFeatureWrapper-eIpSr_UK.js.gz +0 -0
  286. package/client/assets/EditorUtils-Bd3J5Dvf.js +0 -2
  287. package/client/assets/EditorUtils-Bd3J5Dvf.js.br +0 -0
  288. package/client/assets/EditorUtils-Bd3J5Dvf.js.gz +0 -0
  289. package/client/assets/EditorUtils-CgF7UfHP.css +0 -1
  290. package/client/assets/EditorUtils-CgF7UfHP.css.br +0 -0
  291. package/client/assets/EditorUtils-CgF7UfHP.css.gz +0 -0
  292. package/client/assets/Empty-C0IdV_kI.js +0 -2
  293. package/client/assets/Empty-C0IdV_kI.js.br +0 -0
  294. package/client/assets/Empty-C0IdV_kI.js.gz +0 -0
  295. package/client/assets/EmptyPage-Ct3d0DqJ.js +0 -2
  296. package/client/assets/EmptyPage-Ct3d0DqJ.js.br +0 -0
  297. package/client/assets/EmptyPage-Ct3d0DqJ.js.gz +0 -0
  298. package/client/assets/FollowButton-BG-ycRWu.js +0 -2
  299. package/client/assets/FollowButton-BG-ycRWu.js.br +0 -0
  300. package/client/assets/FollowButton-BG-ycRWu.js.gz +0 -0
  301. package/client/assets/MessageControlExport-DjoUioWA.css +0 -1
  302. package/client/assets/MessageControlExport-DjoUioWA.css.br +0 -0
  303. package/client/assets/MessageControlExport-DjoUioWA.css.gz +0 -0
  304. package/client/assets/MessageControlExport-X-4dl9QT.js +0 -3
  305. package/client/assets/MessageControlExport-X-4dl9QT.js.br +0 -0
  306. package/client/assets/MessageControlExport-X-4dl9QT.js.gz +0 -0
  307. package/client/assets/MessageControlExport-X-4dl9QT.js.map +0 -1
  308. package/client/assets/MilestoneEditor-rgBQSXVU.js +0 -2
  309. package/client/assets/MilestoneEditor-rgBQSXVU.js.br +0 -0
  310. package/client/assets/MilestoneEditor-rgBQSXVU.js.gz +0 -0
  311. package/client/assets/MilestoneEditor-rgBQSXVU.js.map +0 -1
  312. package/client/assets/Modal-Bn1bZkwb.js +0 -2
  313. package/client/assets/Modal-Bn1bZkwb.js.br +0 -0
  314. package/client/assets/Modal-Bn1bZkwb.js.gz +0 -0
  315. package/client/assets/Modal-Bn1bZkwb.js.map +0 -1
  316. package/client/assets/MultiPartProgressBar-Cmw-gisu.js.br +0 -0
  317. package/client/assets/MultiPartProgressBar-Cmw-gisu.js.gz +0 -0
  318. package/client/assets/OperatorExport-BiBcgVKc.css +0 -1
  319. package/client/assets/OperatorExport-BiBcgVKc.css.br +0 -0
  320. package/client/assets/OperatorExport-BiBcgVKc.css.gz +0 -0
  321. package/client/assets/OperatorExport-CJd8jmY4.js +0 -2
  322. package/client/assets/OperatorExport-CJd8jmY4.js.br +0 -0
  323. package/client/assets/OperatorExport-CJd8jmY4.js.gz +0 -0
  324. package/client/assets/OperatorExport-CJd8jmY4.js.map +0 -1
  325. package/client/assets/OverviewWrapper-1Vj3_ojX.js +0 -2
  326. package/client/assets/OverviewWrapper-1Vj3_ojX.js.br +0 -0
  327. package/client/assets/OverviewWrapper-1Vj3_ojX.js.gz +0 -0
  328. package/client/assets/OverviewWrapper-1Vj3_ojX.js.map +0 -1
  329. package/client/assets/PipHost-BUF7n-lT.css +0 -1
  330. package/client/assets/PipHost-BUF7n-lT.css.br +0 -0
  331. package/client/assets/PipHost-BUF7n-lT.css.gz +0 -0
  332. package/client/assets/PipHost-D7liNR4M.js +0 -2
  333. package/client/assets/PipHost-D7liNR4M.js.br +0 -0
  334. package/client/assets/PipHost-D7liNR4M.js.gz +0 -0
  335. package/client/assets/PipHost-D7liNR4M.js.map +0 -1
  336. package/client/assets/ProjectInfo-BduQgjcz.js +0 -2
  337. package/client/assets/ProjectInfo-BduQgjcz.js.br +0 -0
  338. package/client/assets/ProjectInfo-BduQgjcz.js.gz +0 -0
  339. package/client/assets/ProtectRoute-Ci_AIozP.js +0 -2
  340. package/client/assets/ProtectRoute-Ci_AIozP.js.br +0 -0
  341. package/client/assets/ProtectRoute-Ci_AIozP.js.gz +0 -0
  342. package/client/assets/ProtectedCuesheet-C_tKodwo.css +0 -1
  343. package/client/assets/ProtectedCuesheet-C_tKodwo.css.br +0 -0
  344. package/client/assets/ProtectedCuesheet-C_tKodwo.css.gz +0 -0
  345. package/client/assets/ProtectedCuesheet-D_zdkwM-.js +0 -2
  346. package/client/assets/ProtectedCuesheet-D_zdkwM-.js.br +0 -0
  347. package/client/assets/ProtectedCuesheet-D_zdkwM-.js.gz +0 -0
  348. package/client/assets/ProtectedCuesheet-D_zdkwM-.js.map +0 -1
  349. package/client/assets/ProtectedEditor-CNL2ig79.js +0 -3
  350. package/client/assets/ProtectedEditor-CNL2ig79.js.br +0 -0
  351. package/client/assets/ProtectedEditor-CNL2ig79.js.gz +0 -0
  352. package/client/assets/ProtectedEditor-CNL2ig79.js.map +0 -1
  353. package/client/assets/ProtectedEditor-Dw0pWw0J.css.br +0 -0
  354. package/client/assets/RundownEntry-Bs1ombtH.js +0 -2
  355. package/client/assets/RundownEntry-Bs1ombtH.js.br +0 -0
  356. package/client/assets/RundownEntry-Bs1ombtH.js.gz +0 -0
  357. package/client/assets/RundownEntry-Bs1ombtH.js.map +0 -1
  358. package/client/assets/RundownExport-BCT0ybxy.js +0 -3
  359. package/client/assets/RundownExport-BCT0ybxy.js.br +0 -0
  360. package/client/assets/RundownExport-BCT0ybxy.js.gz +0 -0
  361. package/client/assets/RundownExport-BCT0ybxy.js.map +0 -1
  362. package/client/assets/RundownExport-DtSvAfBG.css.br +0 -0
  363. package/client/assets/RundownExport-DtSvAfBG.css.gz +0 -0
  364. package/client/assets/Select-B5xNi_tM.js +0 -2
  365. package/client/assets/Select-B5xNi_tM.js.br +0 -0
  366. package/client/assets/Select-B5xNi_tM.js.gz +0 -0
  367. package/client/assets/Select-B5xNi_tM.js.map +0 -1
  368. package/client/assets/Studio-D4hRKhJ1.js +0 -2
  369. package/client/assets/Studio-D4hRKhJ1.js.br +0 -0
  370. package/client/assets/Studio-D4hRKhJ1.js.gz +0 -0
  371. package/client/assets/Studio-D4hRKhJ1.js.map +0 -1
  372. package/client/assets/StyleEditor-BvcE8dkA.js +0 -2
  373. package/client/assets/StyleEditor-BvcE8dkA.js.br +0 -3
  374. package/client/assets/StyleEditor-BvcE8dkA.js.gz +0 -0
  375. package/client/assets/SuperscriptPeriod-BmHAoSBy.js +0 -2
  376. package/client/assets/SuperscriptPeriod-BmHAoSBy.js.br +0 -0
  377. package/client/assets/SuperscriptPeriod-BmHAoSBy.js.gz +0 -0
  378. package/client/assets/SuperscriptPeriod-BmHAoSBy.js.map +0 -1
  379. package/client/assets/SuperscriptTime-Nou92D8X.js +0 -2
  380. package/client/assets/SuperscriptTime-Nou92D8X.js.br +0 -0
  381. package/client/assets/SuperscriptTime-Nou92D8X.js.gz +0 -0
  382. package/client/assets/SuperscriptTime-Nou92D8X.js.map +0 -1
  383. package/client/assets/TimeElements-XpRwBsaa.js.br +0 -0
  384. package/client/assets/TimeElements-XpRwBsaa.js.gz +0 -0
  385. package/client/assets/TimeElements-XpRwBsaa.js.map +0 -1
  386. package/client/assets/TimeInput-Bu_5GlHP.js +0 -2
  387. package/client/assets/TimeInput-Bu_5GlHP.js.br +0 -0
  388. package/client/assets/TimeInput-Bu_5GlHP.js.gz +0 -0
  389. package/client/assets/TimelinePage-CQqUB1KT.js +0 -2
  390. package/client/assets/TimelinePage-CQqUB1KT.js.br +0 -0
  391. package/client/assets/TimelinePage-CQqUB1KT.js.gz +0 -0
  392. package/client/assets/TimelinePage-CQqUB1KT.js.map +0 -1
  393. package/client/assets/Timer-B7nk3TMf.css.br +0 -0
  394. package/client/assets/Timer-B7nk3TMf.css.gz +0 -0
  395. package/client/assets/Timer-CIr2L3gJ.js +0 -2
  396. package/client/assets/Timer-CIr2L3gJ.js.br +0 -0
  397. package/client/assets/Timer-CIr2L3gJ.js.gz +0 -0
  398. package/client/assets/Timer-CIr2L3gJ.js.map +0 -1
  399. package/client/assets/TimerControlExport-4a3Cd9x8.js +0 -2
  400. package/client/assets/TimerControlExport-4a3Cd9x8.js.br +0 -0
  401. package/client/assets/TimerControlExport-4a3Cd9x8.js.gz +0 -0
  402. package/client/assets/TimerControlExport-DavNxY9p.css.br +0 -0
  403. package/client/assets/TitleCard-1U35ek0D.js +0 -2
  404. package/client/assets/TitleCard-1U35ek0D.js.br +0 -0
  405. package/client/assets/TitleCard-1U35ek0D.js.gz +0 -0
  406. package/client/assets/Tooltip-B8y25e3n.js +0 -2
  407. package/client/assets/Tooltip-B8y25e3n.js.br +0 -0
  408. package/client/assets/Tooltip-B8y25e3n.js.gz +0 -0
  409. package/client/assets/Tooltip-B8y25e3n.js.map +0 -1
  410. package/client/assets/ViewLogo-BHsV7Faa.js +0 -2
  411. package/client/assets/ViewLogo-BHsV7Faa.js.br +0 -0
  412. package/client/assets/ViewLogo-BHsV7Faa.js.gz +0 -0
  413. package/client/assets/ViewParamsEditor-BMHXOv-K.js +0 -2
  414. package/client/assets/ViewParamsEditor-BMHXOv-K.js.br +0 -0
  415. package/client/assets/ViewParamsEditor-BMHXOv-K.js.gz +0 -0
  416. package/client/assets/ViewParamsEditor-BMHXOv-K.js.map +0 -1
  417. package/client/assets/dateConfig-_BhycZza.js +0 -2
  418. package/client/assets/dateConfig-_BhycZza.js.br +0 -0
  419. package/client/assets/dateConfig-_BhycZza.js.gz +0 -0
  420. package/client/assets/dateConfig-_BhycZza.js.map +0 -1
  421. package/client/assets/editorSettings-DH9ca-nB.js +0 -2
  422. package/client/assets/editorSettings-DH9ca-nB.js.br +0 -0
  423. package/client/assets/editorSettings-DH9ca-nB.js.gz +0 -0
  424. package/client/assets/getProgress-DlrSzpnf.js.br +0 -0
  425. package/client/assets/getProgress-DlrSzpnf.js.gz +0 -0
  426. package/client/assets/index-BuJoGGff.css.br +0 -0
  427. package/client/assets/index-BuJoGGff.css.gz +0 -0
  428. package/client/assets/index-CDBQg2fh.js +0 -3
  429. package/client/assets/index-CDBQg2fh.js.br +0 -0
  430. package/client/assets/index-CDBQg2fh.js.gz +0 -0
  431. package/client/assets/index-CDBQg2fh.js.map +0 -1
  432. package/client/assets/offset-CLG4o744.js.br +0 -0
  433. package/client/assets/offset-CLG4o744.js.gz +0 -0
  434. package/client/assets/parseUserTime-Cp5iWS7y.js +0 -2
  435. package/client/assets/parseUserTime-Cp5iWS7y.js.br +0 -0
  436. package/client/assets/parseUserTime-Cp5iWS7y.js.gz +0 -0
  437. package/client/assets/playbackstate-B3BKJ8cT.js.br +0 -0
  438. package/client/assets/playbackstate-B3BKJ8cT.js.gz +0 -0
  439. package/client/assets/presentation.utils-B-wIv_a5.js.br +0 -0
  440. package/client/assets/presentation.utils-B-wIv_a5.js.gz +0 -0
  441. package/client/assets/rundownUtils-DJKMt8Ih.js.br +0 -0
  442. package/client/assets/rundownUtils-DJKMt8Ih.js.gz +0 -0
  443. package/client/assets/timer.utils-ByC_bcT9.js +0 -2
  444. package/client/assets/timer.utils-ByC_bcT9.js.br +0 -0
  445. package/client/assets/timer.utils-ByC_bcT9.js.gz +0 -0
  446. package/client/assets/timer.utils-ByC_bcT9.js.map +0 -1
  447. package/client/assets/useCustomFields-BUJkzZvM.js +0 -2
  448. package/client/assets/useCustomFields-BUJkzZvM.js.br +0 -2
  449. package/client/assets/useCustomFields-BUJkzZvM.js.gz +0 -0
  450. package/client/assets/useFollowComponent-Eyo4hWVG.js +0 -2
  451. package/client/assets/useFollowComponent-Eyo4hWVG.js.br +0 -0
  452. package/client/assets/useFollowComponent-Eyo4hWVG.js.gz +0 -0
  453. package/client/assets/useProjectData-DGA6K2Zs.js +0 -2
  454. package/client/assets/useProjectData-DGA6K2Zs.js.br +0 -0
  455. package/client/assets/useProjectData-DGA6K2Zs.js.gz +0 -0
  456. package/client/assets/useProjectData-DGA6K2Zs.js.map +0 -1
  457. package/client/assets/useReport-BUCsRa2T.js +0 -2
  458. package/client/assets/useReport-BUCsRa2T.js.br +0 -0
  459. package/client/assets/useReport-BUCsRa2T.js.gz +0 -0
  460. package/client/assets/useRundown-BFae0_bU.js +0 -2
  461. package/client/assets/useRundown-BFae0_bU.js.br +0 -0
  462. package/client/assets/useRundown-BFae0_bU.js.gz +0 -0
  463. package/client/assets/useRundown-BFae0_bU.js.map +0 -1
  464. package/client/assets/useWindowTitle-DU8NlxIu.js +0 -2
  465. package/client/assets/useWindowTitle-DU8NlxIu.js.br +0 -0
  466. package/client/assets/useWindowTitle-DU8NlxIu.js.gz +0 -0
  467. package/client/assets/useWindowTitle-DU8NlxIu.js.map +0 -1
  468. package/client/assets/validateEvent-3adKsP1N.js.br +0 -0
  469. package/client/assets/validateEvent-3adKsP1N.js.gz +0 -0
  470. package/client/assets/vendor-BoH5HFNN.js +0 -75
  471. package/client/assets/vendor-BoH5HFNN.js.br +0 -0
  472. package/client/assets/vendor-BoH5HFNN.js.gz +0 -0
  473. package/client/assets/viewLoader.utils-BPOG1xso.js.br +0 -0
  474. package/client/assets/viewLoader.utils-BPOG1xso.js.gz +0 -0
  475. package/client/assets/viewUtils-DI8_kmUZ.js +0 -2
  476. package/client/assets/viewUtils-DI8_kmUZ.js.br +0 -0
  477. package/client/assets/viewUtils-DI8_kmUZ.js.gz +0 -0
  478. package/client/assets/viewUtils-DI8_kmUZ.js.map +0 -1
  479. /package/client/assets/{useProjectData-Cw1aXCwD.css → SwatchPicker-Cw1aXCwD.css} +0 -0
  480. /package/client/assets/{useProjectData-Cw1aXCwD.css.br → SwatchPicker-Cw1aXCwD.css.br} +0 -0
  481. /package/client/assets/{useProjectData-Cw1aXCwD.css.gz → SwatchPicker-Cw1aXCwD.css.gz} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"OverviewWrapper-1Vj3_ojX.js","sources":["../../src/common/utils/regex.ts","../../src/common/components/radio-group/RadioGroup.tsx","../../src/views/cuesheet/cuesheet.options.ts","../../src/features/sharing/composite/CuesheetLinkOptions.tsx","../../src/features/sharing/GenerateLinkForm.tsx","../../src/features/sharing/GenerateLinkFormExport.tsx","../../src/features/overview/composite/TitleOverview.tsx","../../src/features/overview/OverviewWrapper.tsx"],"sourcesContent":["/**\n * Simple regex patterns for common use cases\n * mostly used in form validation\n */\n\nexport const isOnlyNumbers = /^\\d+$/;\nexport const isIPAddress = /^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)\\.?\\b){4}$/;\nexport const startsWithHttp = /^https?:\\/\\//;\nexport const startsWithSlash = /^\\//;\nexport const isAlphanumeric = /^[a-z0-9]+$/i;\nexport const isASCII = /^[ -~]+$/; //https://catonmat.net/my-favorite-regex\nexport const isASCIIorEmpty = /^$|^[ -~]+$/; //https://catonmat.net/my-favorite-regex\nexport const isNotEmpty = /\\S/;\nexport const isUrlSafe = /^[a-zA-Z0-9_-]*$/; // https://stackoverflow.com/questions/24419067/validate-a-string-to-be-url-safe-using-regex\n","import { Radio } from '@base-ui-components/react/radio';\nimport { RadioGroup as BaseRadioGroup } from '@base-ui-components/react/radio-group';\n\nimport { cx } from '../../utils/styleUtils';\n\nimport style from './RadioGroup.module.scss';\n\ninterface RadioGroupProps<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 orientation?: 'horizontal' | 'vertical';\n}\n\nexport default function RadioGroup<T extends string | number | boolean>({\n items,\n className,\n orientation = 'vertical',\n onValueChange,\n ...elementProps\n}: RadioGroupProps<T>) {\n return (\n <BaseRadioGroup\n onValueChange={(value) => onValueChange?.(value as T)}\n className={cx([style.radioGroup, style[orientation], className])}\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 { CustomFields } from 'ontime-types';\nimport { create } from 'zustand';\nimport { persist } from 'zustand/middleware';\n\ntype OptionValues = {\n hideTableSeconds: boolean;\n hideIndexColumn: boolean;\n showDelayedTimes: boolean;\n hideDelays: boolean;\n};\n\nconst defaultOptions: OptionValues = {\n hideTableSeconds: false,\n hideIndexColumn: false,\n showDelayedTimes: false,\n hideDelays: false,\n};\n\nexport type CuesheetOptionKeys = keyof OptionValues;\n\nexport interface CuesheetOptions extends OptionValues {\n setOption: <K extends CuesheetOptionKeys>(key: K, value: OptionValues[K]) => void;\n toggleOption: (key: CuesheetOptionKeys) => void;\n resetOptions: () => void;\n}\n\nexport const usePersistedCuesheetOptions = create<CuesheetOptions>()(\n persist(\n (set) => {\n return {\n ...defaultOptions,\n setOption: (key, value) => set((state) => ({ ...state, [key]: value })),\n toggleOption: (key) => set((state) => ({ ...state, [key]: !state[key] })),\n resetOptions: () => set(defaultOptions),\n };\n },\n {\n name: 'cuesheet-options',\n },\n ),\n);\n\nexport const cuesheetDefaultColumns = [\n { value: 'flag', label: 'Flag' },\n { value: 'cue', label: 'Cue' },\n { value: 'title', label: 'Title' },\n { value: 'timeStart', label: 'Time start' },\n { value: 'timeEnd', label: 'Time end' },\n { value: 'duration', label: 'Duration' },\n { value: 'note', label: 'Note' },\n];\n\nexport function makeCuesheetCustomColumns(customFields: CustomFields) {\n return Object.entries(customFields).map(([key, field]) => {\n return {\n value: `custom-${key}`,\n label: field.label,\n };\n });\n}\n","import { Fragment, RefObject, useMemo, useState } from 'react';\n\nimport RadioGroup from '../../../common/components/radio-group/RadioGroup';\nimport Switch from '../../../common/components/switch/Switch';\nimport useCustomFields from '../../../common/hooks-query/useCustomFields';\nimport { cuesheetDefaultColumns, makeCuesheetCustomColumns } from '../../../views/cuesheet/cuesheet.options';\nimport * as Panel from '../../app-settings/panel-utils/PanelUtils';\n\nimport style from './CuesheetLinkOptions.module.scss';\n\ntype AccessMode = 'full' | 'custom';\n\ninterface CuesheetLinkOptionsProps {\n readRef?: RefObject<HTMLInputElement | null>;\n writeRef?: RefObject<HTMLInputElement | null>;\n}\n\nexport default function CuesheetLinkOptions({ readRef, writeRef }: CuesheetLinkOptionsProps) {\n const { data } = useCustomFields();\n const customFieldColumns = useMemo(() => makeCuesheetCustomColumns(data), [data]);\n\n const [readPermissions, setReadPermissions] = useState<AccessMode>('full');\n const [writePermissions, setWritePermissions] = useState<AccessMode>('full');\n\n const [readSwitches, setReadSwitches] = useState<Record<string, boolean>>(() => {\n const initialState: Record<string, boolean> = {};\n [...cuesheetDefaultColumns, ...customFieldColumns].forEach((column) => {\n initialState[column.value] = true;\n });\n return initialState;\n });\n\n const [writeSwitches, setWriteSwitches] = useState<Record<string, boolean>>(() => {\n const initialState: Record<string, boolean> = {};\n [...cuesheetDefaultColumns, ...customFieldColumns].forEach((column) => {\n initialState[column.value] = true;\n });\n return initialState;\n });\n\n const handleReadModeChange = (value: AccessMode) => {\n setReadPermissions(value);\n\n setReadSwitches((prevReadSwitches) => {\n const updatedReadSwitches = { ...prevReadSwitches };\n Object.keys(updatedReadSwitches).forEach((key) => {\n updatedReadSwitches[key] = true;\n });\n return updatedReadSwitches;\n });\n };\n\n const handleWriteModeChange = (value: AccessMode) => {\n if (value === 'full') {\n setReadPermissions('full');\n }\n setWritePermissions(value);\n\n setReadSwitches((prevReadSwitches) => {\n const updatedReadSwitches = { ...prevReadSwitches };\n setWriteSwitches((prevWriteSwitches) => {\n const updatedWriteSwitches = { ...prevWriteSwitches };\n [...cuesheetDefaultColumns, ...customFieldColumns].forEach((column) => {\n updatedReadSwitches[column.value] = true;\n updatedWriteSwitches[column.value] = true;\n });\n return updatedWriteSwitches;\n });\n return updatedReadSwitches;\n });\n };\n\n const handleSwitchChange = (key: string, type: 'read' | 'write', value: boolean) => {\n if (type === 'read') {\n setReadSwitches((prevReadSwitches) => {\n const updatedReadSwitches = { ...prevReadSwitches, [key]: value };\n return updatedReadSwitches;\n });\n } else {\n setWriteSwitches((prevWriteSwitches) => {\n const updatedWriteSwitches = { ...prevWriteSwitches, [key]: value };\n return updatedWriteSwitches;\n });\n }\n };\n\n const getReadPermissions = () => {\n if (readPermissions === 'full' || writePermissions === 'full') {\n return 'full';\n }\n\n return Object.entries(readSwitches)\n .filter(([_, value]) => value)\n .map(([key]) => key)\n .join(',');\n };\n\n const getWritePermissions = () => {\n if (writePermissions === 'full') {\n return 'full';\n }\n\n return Object.entries(writeSwitches)\n .filter(([_, value]) => value)\n .map(([key]) => key)\n .join(',');\n };\n\n return (\n <Panel.Indent>\n <input name='read' hidden readOnly ref={readRef} value={getReadPermissions() || '-'} />\n <input name='write' hidden readOnly ref={writeRef} value={getWritePermissions() || '-'} />\n <div>\n <Panel.Field title='Access mode' description='Which parts of the data will the link give access to' />\n <div>\n <RadioGroup\n value={writePermissions}\n onValueChange={handleWriteModeChange}\n orientation='horizontal'\n items={[\n { value: 'full', label: 'Full write (edit all existing and future columns)' },\n { value: 'custom', label: 'Custom write' },\n ]}\n />\n <RadioGroup\n value={readPermissions}\n onValueChange={handleReadModeChange}\n orientation='horizontal'\n disabled={writePermissions === 'full'}\n items={[\n { value: 'full', label: 'Full read (view all existing and future columns)' },\n { value: 'custom', label: 'Custom read' },\n ]}\n />\n </div>\n </div>\n <div className={style.twoCols}>\n <div className={style.grid}>\n <Panel.Description>Ontime columns</Panel.Description>\n <Panel.Description>Read</Panel.Description>\n <Panel.Description>Write</Panel.Description>\n {cuesheetDefaultColumns.map((column) => (\n <Fragment key={column.value}>\n <div>{column.label}</div>\n <Switch\n checked={Boolean(readSwitches[column.value])}\n onCheckedChange={(value: boolean) => handleSwitchChange(column.value, 'read', value)}\n disabled={readPermissions === 'full' || writePermissions === 'full'}\n data-testid={`read-${column.value}`}\n />\n <Switch\n checked={Boolean(writeSwitches[column.value])}\n onCheckedChange={(value: boolean) => handleSwitchChange(column.value, 'write', value)}\n disabled={writePermissions === 'full'}\n data-testid={`write-${column.value}`}\n />\n </Fragment>\n ))}\n </div>\n {customFieldColumns.length > 0 && (\n <div className={style.grid}>\n <Panel.Description>Custom fields</Panel.Description>\n <Panel.Description>Read</Panel.Description>\n <Panel.Description>Write</Panel.Description>\n {customFieldColumns.map((column) => (\n <Fragment key={column.value}>\n {column.label}\n <Switch\n checked={Boolean(readSwitches[column.value])}\n onCheckedChange={(value: boolean) => handleSwitchChange(column.value, 'read', value)}\n disabled={readPermissions === 'full' || writePermissions === 'full'}\n data-testid={`read-${column.value}`}\n />\n <Switch\n checked={Boolean(writeSwitches[column.value])}\n onCheckedChange={(value: boolean) => handleSwitchChange(column.value, 'write', value)}\n disabled={writePermissions === 'full'}\n data-testid={`write-${column.value}`}\n />\n </Fragment>\n ))}\n </div>\n )}\n </div>\n </Panel.Indent>\n );\n}\n","import { useRef, useState } from 'react';\nimport { FieldErrors, useForm } from 'react-hook-form';\nimport QRCode from 'react-qr-code';\nimport { OntimeView, URLPreset } from 'ontime-types';\nimport { generateId } from 'ontime-utils';\n\nimport { generateUrl } from '../../common/api/session';\nimport { maybeAxiosError } from '../../common/api/utils';\nimport Button from '../../common/components/buttons/Button';\nimport CopyTag from '../../common/components/copy-tag/CopyTag';\nimport Info from '../../common/components/info/Info';\nimport Input from '../../common/components/input/input/Input';\nimport Select from '../../common/components/select/Select';\nimport Switch from '../../common/components/switch/Switch';\nimport { useUpdateUrlPreset } from '../../common/hooks-query/useUrlPresets';\nimport copyToClipboard from '../../common/utils/copyToClipboard';\nimport { preventEscape } from '../../common/utils/keyEvent';\nimport { isUrlSafe } from '../../common/utils/regex';\nimport { isOntimeCloud, serverURL } from '../../externals';\nimport * as Panel from '../app-settings/panel-utils/PanelUtils';\n\nimport CuesheetLinkOptions from './composite/CuesheetLinkOptions';\n\nimport style from './GenerateLinkForm.module.scss';\n\ninterface GenerateLinkFormProps {\n hostOptions: { value: string; label: string }[];\n pathOptions: { value: OntimeView | string; label: string }[];\n presets: URLPreset[];\n isLockedToView?: boolean;\n}\n\ntype GenericLinkOptions = {\n baseUrl: string;\n path: OntimeView | string; // we use empty string for Companion view\n authenticate: boolean;\n lockConfig: boolean;\n lockNav: boolean;\n};\n\ntype CuesheetLinkOptions = GenericLinkOptions & {\n path: OntimeView.Cuesheet;\n\n alias: string;\n options: {\n read?: string;\n write?: string;\n };\n};\n\ntype GenerateLinkFormOptions = GenericLinkOptions | CuesheetLinkOptions;\n\ntype GenerateLinkState = 'pending' | 'loading' | 'success' | 'error';\n\nexport default function GenerateLinkForm({ hostOptions, pathOptions, presets, isLockedToView }: GenerateLinkFormProps) {\n const [formState, setFormState] = useState<GenerateLinkState>('pending');\n const [url, setUrl] = useState(serverURL);\n const cuesheetReadRef = useRef<HTMLInputElement>(null);\n const cuesheetWriteRef = useRef<HTMLInputElement>(null);\n const generatedAlias = useRef<string>(`cuesheet-${generateId()}`);\n\n const { addPreset } = useUpdateUrlPreset();\n\n const {\n handleSubmit,\n setError,\n watch,\n setValue,\n reset,\n register,\n formState: { errors, isDirty },\n } = useForm<GenerateLinkFormOptions>({\n mode: 'onChange',\n defaultValues: {\n baseUrl: serverURL,\n path: isLockedToView ? pathOptions[0].value : OntimeView.Timer,\n authenticate: false,\n lockConfig: false,\n lockNav: false,\n },\n });\n\n /**\n * If the user is generating a link to the cuesheet we gather extra options\n * The extra options are saved into a URL preset which we then request a share link for\n */\n const createPresetFromOptions = async (\n alias: string,\n options: Required<CuesheetLinkOptions['options']>,\n ): Promise<URLPreset | undefined> => {\n if (options.read === '-') {\n throw new Error('Cannot create a share with no read permissions');\n }\n const presets = await addPreset({\n target: OntimeView.Cuesheet,\n enabled: true,\n alias,\n search: '',\n options: {\n read: options.read,\n write: options.write,\n },\n });\n return presets.find((preset) => preset.alias === alias);\n };\n\n const onSubmit = async (options: GenerateLinkFormOptions) => {\n try {\n setFormState('loading');\n if (options.path === OntimeView.Cuesheet) {\n const urlPreset = await createPresetFromOptions((options as CuesheetLinkOptions).alias, {\n read: cuesheetReadRef.current?.value ?? 'full',\n write: cuesheetWriteRef.current?.value ?? 'full',\n });\n\n if (!urlPreset) {\n throw new Error('Failed to create URL preset for Cuesheet');\n }\n\n const url = await generateUrl({\n baseUrl: options.baseUrl,\n path: options.path,\n authenticate: options.authenticate,\n lockConfig: options.lockConfig,\n lockNav: options.lockNav,\n preset: urlPreset.alias,\n });\n await copyToClipboard(url);\n setUrl(url);\n } else {\n const presetPath = options.path.startsWith('preset-') ? options.path.replace('preset-', '') : undefined;\n const path = presetPath ? presets.find((preset) => preset.alias === presetPath)?.target : options.path;\n if (!path) {\n throw new Error(`Could not resolve preset: ${path}`);\n }\n\n const url = await generateUrl({\n baseUrl: options.baseUrl,\n path,\n authenticate: options.authenticate,\n lockConfig: options.lockConfig,\n lockNav: options.lockNav,\n preset: presetPath,\n });\n\n await copyToClipboard(url);\n setUrl(url);\n }\n reset(options, {\n keepValues: true,\n keepDirty: false,\n });\n setFormState('success');\n } catch (error) {\n const message = maybeAxiosError(error);\n setError('root', { message });\n setFormState('error');\n }\n };\n\n const canSubmit = isDirty || formState !== 'success';\n\n return (\n <form onSubmit={handleSubmit(onSubmit)} onKeyDown={(event) => preventEscape(event)}>\n {!isLockedToView && (\n <Info>You can generate a link to share with your team or to use in automation (such as companion).</Info>\n )}\n <div className={style.shareInline}>\n <div className={style.column}>\n <Panel.ListGroup>\n {isOntimeCloud ? (\n <input hidden readOnly name='baseUrl' value={serverURL} />\n ) : (\n <Panel.ListItem>\n <Panel.Field\n title='Host IP'\n description={`Which IP address will be used${isOntimeCloud ? ' (not applicable in Ontime Cloud)' : ''}`}\n />\n <Select\n options={hostOptions}\n value={watch('baseUrl')}\n onValueChange={(value) => setValue('baseUrl', value)}\n />\n </Panel.ListItem>\n )}\n {isLockedToView ? (\n <input type='hidden' value={watch('path')} />\n ) : (\n <Panel.ListItem>\n <Panel.Field title='Ontime view' description='Which view or preset will the link point to' />\n <Select\n options={pathOptions}\n value={watch('path')}\n onValueChange={(value) => setValue('path', value, { shouldDirty: true })}\n />\n </Panel.ListItem>\n )}\n\n {watch('path') === OntimeView.Cuesheet && (\n <>\n <Panel.ListItem>\n <Panel.Field\n title='Preset alias'\n description='The name of the preset we will create to hold this options'\n error={(errors as FieldErrors<CuesheetLinkOptions>).alias?.message}\n />\n <Input\n defaultValue={generatedAlias.current}\n {...register('alias', {\n required: 'Alias cannot be empty and must be unique',\n pattern: {\n value: isUrlSafe,\n message: 'Field can only contain URL safe characters (a-z, 0-9, _ and -)',\n },\n })}\n />\n </Panel.ListItem>\n <CuesheetLinkOptions readRef={cuesheetReadRef} writeRef={cuesheetWriteRef} />\n </>\n )}\n\n <Panel.ListItem>\n <Panel.Field title='Lock navigation' description='Whether to hide the navigation menu' />\n <Switch\n size='large'\n name='lockNav'\n data-testid='lockNav'\n checked={watch('lockNav')}\n onCheckedChange={(checked) => setValue('lockNav', checked, { shouldDirty: true })}\n disabled={watch('lockConfig')}\n />\n </Panel.ListItem>\n {watch('path') !== OntimeView.Cuesheet && (\n <Panel.ListItem>\n <Panel.Field\n title='Lock configuration'\n description='Whether to hide the configuration panel (also hides navigation)'\n />\n <Switch\n size='large'\n name='lockConfig'\n data-testid='lockConfig'\n checked={watch('lockConfig')}\n onCheckedChange={(checked) => {\n if (checked) {\n setValue('lockNav', checked, { shouldDirty: true });\n }\n setValue('lockConfig', checked, { shouldDirty: true });\n }}\n />\n </Panel.ListItem>\n )}\n <Panel.ListItem>\n <Panel.Field title='Authenticate' description='Whether the URL should be pre-authenticated' />\n <Switch\n size='large'\n name='authenticate'\n data-testid='authenticate'\n checked={watch('authenticate')}\n onCheckedChange={(checked) => setValue('authenticate', checked, { shouldDirty: true })}\n />\n </Panel.ListItem>\n </Panel.ListGroup>\n <Panel.Error>{errors.root?.message}</Panel.Error>\n <Panel.InlineElements align='end' className={style.end}>\n <Button type='submit' variant={canSubmit ? 'primary' : 'subtle'} loading={formState === 'loading'}>\n {canSubmit ? 'Create share link' : 'Link copied to clipboard!'}\n </Button>\n </Panel.InlineElements>\n </div>\n <Panel.Section className={style.column}>\n <Panel.Description>Share this link</Panel.Description>\n <QRCode size={172} value={url} className={style.qrCode} />\n <div className={style.copiableLink} data-testid='copy-link'>\n {url}\n </div>\n <CopyTag copyValue={url}>Copy link</CopyTag>\n </Panel.Section>\n </div>\n </form>\n );\n}\n","import { useMemo } from 'react';\nimport { OntimeView } from 'ontime-types';\n\nimport useInfo from '../../common/hooks-query/useInfo';\nimport useUrlPresets from '../../common/hooks-query/useUrlPresets';\n\nimport GenerateLinkForm from './GenerateLinkForm';\n\ninterface GenerateLinkFormExportProps {\n lockedPath?: { value: OntimeView; label: string };\n}\n\nexport default function GenerateLinkFormExport({ lockedPath }: GenerateLinkFormExportProps) {\n const { data: infoData } = useInfo();\n const { data: urlPresetData } = useUrlPresets({ skip: lockedPath === undefined });\n\n /**\n * hostOptions are only used for local networks\n * the NIF address is a local IP address: 192.168.x.x or 10.x.x.x\n * We need to inject the port and protocol to create a valid URL\n * eg: http://192.168.x.x:port\n */\n const hostOptions = useMemo(() => {\n return infoData.networkInterfaces.map((nif) => ({\n value: `http://${nif.address}:${infoData.serverPort}`,\n label: `${nif.name} - ${nif.address}`,\n }));\n }, [infoData.networkInterfaces, infoData.serverPort]);\n\n const pathOptions = useMemo(() => {\n if (lockedPath) {\n return [{ value: lockedPath.value, label: lockedPath.label }];\n }\n return [\n { value: OntimeView.Timer, label: 'Timer' },\n { value: OntimeView.Cuesheet, label: 'Cuesheet' },\n { value: OntimeView.Operator, label: 'Operator' },\n { value: '<<companion>>', label: 'Companion' },\n ...urlPresetData.map((preset) => ({\n value: `preset-${preset.alias}`,\n label: `URL Preset: ${preset.alias}`,\n })),\n ];\n }, [lockedPath, urlPresetData]);\n\n return (\n <GenerateLinkForm\n hostOptions={hostOptions}\n pathOptions={pathOptions}\n presets={urlPresetData}\n isLockedToView={Boolean(lockedPath)}\n />\n );\n}\n","import useProjectData from '../../../common/hooks-query/useProjectData';\n\nimport style from './TitleOverview.module.scss';\n\nexport default function TitleOverview() {\n const { data } = useProjectData();\n\n if (!data.title && !data.description) {\n return null;\n }\n\n return (\n <div>\n <div className={style.title}>{data.title}</div>\n <div className={style.description}>{data.description}</div>\n </div>\n );\n}\n","import { PropsWithChildren, ReactNode } from 'react';\nimport { ErrorBoundary } from '@sentry/react';\n\nimport { useIsOnline } from '../../common/hooks/useSocket';\nimport { cx } from '../../common/utils/styleUtils';\n\nimport style from './Overview.module.scss';\n\ninterface OverviewWrapperProps {\n navElements: ReactNode;\n}\n\nexport function OverviewWrapper({ navElements, children }: PropsWithChildren<OverviewWrapperProps>) {\n const { isOnline } = useIsOnline();\n return (\n <div className={cx([style.overview, !isOnline && style.isOffline])}>\n <ErrorBoundary>\n <div className={style.nav}>{navElements}</div>\n <div className={style.info}>{children}</div>\n </ErrorBoundary>\n </div>\n );\n}\n"],"names":["isOnlyNumbers","startsWithHttp","isAlphanumeric","isUrlSafe","RadioGroup","items","className","orientation","onValueChange","elementProps","jsx","BaseRadioGroup","value","cx","style","item","Radio.Root","Radio.Indicator","defaultOptions","usePersistedCuesheetOptions","create","persist","set","key","state","cuesheetDefaultColumns","makeCuesheetCustomColumns","customFields","field","CuesheetLinkOptions","readRef","writeRef","data","useCustomFields","customFieldColumns","useMemo","readPermissions","setReadPermissions","useState","writePermissions","setWritePermissions","readSwitches","setReadSwitches","initialState","column","writeSwitches","setWriteSwitches","handleReadModeChange","prevReadSwitches","updatedReadSwitches","handleWriteModeChange","prevWriteSwitches","updatedWriteSwitches","handleSwitchChange","type","getReadPermissions","_","getWritePermissions","jsxs","Panel.Indent","Panel.Field","Panel.Description","Fragment","Switch","GenerateLinkForm","hostOptions","pathOptions","presets","isLockedToView","formState","setFormState","url","setUrl","serverURL","cuesheetReadRef","useRef","cuesheetWriteRef","generatedAlias","generateId","addPreset","useUpdateUrlPreset","handleSubmit","setError","watch","setValue","reset","register","errors","isDirty","useForm","OntimeView","createPresetFromOptions","alias","options","preset","onSubmit","urlPreset","_a","_b","generateUrl","copyToClipboard","presetPath","path","_c","error","message","maybeAxiosError","canSubmit","event","preventEscape","Info","Panel.ListGroup","isOntimeCloud","Panel.ListItem","Select","Input","checked","Panel.Error","Panel.InlineElements","Button","Panel.Section","QRCode","CopyTag","GenerateLinkFormExport","lockedPath","infoData","useInfo","urlPresetData","useUrlPresets","nif","TitleOverview","useProjectData","OverviewWrapper","navElements","children","isOnline","useIsOnline","ErrorBoundary"],"mappings":"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"}
@@ -1 +0,0 @@
1
- .blink{animation:blink 1s step-start infinite}@keyframes blink{0%{opacity:100%}50%{opacity:20%}}.fourtyfive{transform:rotate(45deg)}.mirror{transform:rotate(180deg)}.pip-timer{margin:0;padding:0;box-sizing:border-box;overflow:hidden;width:100%;height:100vh;transition:opacity .5s ease-in-out;font-family:Open Sans,Segoe UI,sans-serif;background:#101010;color:#fffc;gap:min(2vh,16px);display:flex;flex-direction:column}.pip-timer--finished{outline:clamp(4px,1vw,16px) solid #FA5656;outline-offset:calc(clamp(4px,1vw,16px)*-1);transition:.5s}.pip-timer .timer-container{flex:1;align-content:center;justify-self:center;align-self:center;width:100%;overflow:hidden}.pip-timer .timer-container .timer{opacity:1;font-family:var(--timer-font, "Open Sans", "Segoe UI", sans-serif);color:var(--timer-colour, #f6f6f6);line-height:.9em;text-align:center;letter-spacing:.05em;font-weight:600;transition-property:font-size;transition-duration:.5s}.pip-timer .timer-container .timer--paused{opacity:.6;transition:.5s}.pip-timer .timer-container .timer--finished{color:var(--timer-overtime-color-override, #FA5656)}.pip-timer .timer-container .timer[data-phase=warning]{color:var(--timer-colour, var(--timer-warning-color-override))}.pip-timer .timer-container .timer[data-phase=danger]{color:var(--timer-colour, var(--timer-danger-color-override))}.pip-timer .timer-container .timer[data-type=none]{transition:1s;opacity:0}.pip-timer .secondary{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.125em;padding-block:.125em;font-weight:600;text-align:center;color:var(--external-color-override, rgba(255, 255, 255, .85));letter-spacing:.5px;line-height:1em;transition-property:opacity,height;transition-duration:.5s;border-top:1px solid color-mix(in srgb,rgba(255,255,255,.85) 10%,transparent)}.pip-timer .secondary--hidden{opacity:0;height:0}.pip-timer .progress-container{width:100%;margin:0 auto;opacity:1;transition:.5s}.pip-timer .progress-container--paused{opacity:.6;transition:.5s}.pip-timer .message-overlay{position:fixed;top:0;right:0;bottom:0;left:0;padding:2vw;background:#101010;opacity:0;transition:opacity .5s}.pip-timer .message-overlay--active{z-index:100;opacity:1}.pip-timer .message{display:grid;place-content:center;height:100%;width:100%;color:#fffc;text-align:center;font-weight:600}
@@ -1,2 +0,0 @@
1
- import{j as i,a7 as C,ax as E}from"./vendor-BoH5HFNN.js";import{b as j}from"./EditorUtils-Bd3J5Dvf.js";import{c as I,e as c,a as k}from"./index-CDBQg2fh.js";import{g as D,a as F,b as B,d as _,f as N,h as R,i as z,F as M}from"./timer.utils-ByC_bcT9.js";import{M as W}from"./MultiPartProgressBar-Cmw-gisu.js";import{g as A,a as L}from"./viewUtils-DI8_kmUZ.js";import{g as O}from"./presentation.utils-B-wIv_a5.js";import"./playbackstate-B3BKJ8cT.js";import"./getProgress-DlrSzpnf.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},s=new t.Error().stack;s&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[s]="af89b237-31b0-4854-ad60-c63f34d3e248",t._sentryDebugIdIdentifier="sentry-dbid-af89b237-31b0-4854-ad60-c63f34d3e248")}catch{}})();function $({viewSettings:t}){const{eventNow:s,message:n,time:e,clock:d,timerTypeNow:a,countToEndNow:r,auxTimer:o}=I(),l=D(n.timer),{showFinished:m,showWarning:y,showDanger:h}=F(a,r,e.phase,!1,"",!1),p=B(e.playback),x=_(a),w=N(e.duration,e.addedTime),b=A(!1,a,r,d,e,a),f=L(b,a,"min",{removeSeconds:!1,removeLeadingZero:!1}),T=n.timer.secondarySource==="aux1"?o.aux1:n.timer.secondarySource==="aux2"?o.aux2:n.timer.secondarySource==="aux3"?o.aux3:null,u=R(n,T,"min",!1,!1,!1),g=O(t,void 0,y,h),{timerFontSize:v,externalFontSize:P}=z(f,u),S={...g&&{"--timer-colour":g}};return i.jsxs("div",{className:c(["pip-timer",m&&"pip-timer--finished"]),style:S,children:[i.jsx("div",{className:c(["message-overlay",l&&"message-overlay--active"]),children:i.jsx(M,{mode:"multi",min:12,max:256,className:c(["message",n.timer.blink&&"blink"]),children:n.timer.text})}),i.jsxs("div",{className:"timer-container",children:[i.jsx("div",{className:c(["timer",!p&&"timer--paused",m&&"timer--finished"]),style:{fontSize:`${v}vw`},"data-phase":e.phase,children:f}),i.jsx("div",{className:c(["secondary",!u&&"secondary--hidden"]),style:{fontSize:`${P}vw`},children:u})]}),x&&i.jsx(W,{className:c(["progress-container",!p&&"progress-container--paused"]),now:e.current,complete:w,normalColor:t.normalColor,warning:s==null?void 0:s.timeWarning,warningColor:t.warningColor,danger:s==null?void 0:s.timeDanger,dangerColor:t.dangerColor,hideOvertime:!m})]})}function X(){const{data:t,status:s}=k(),n=async()=>{if(window.documentPictureInPicture.window)return;let e;try{e=await window.documentPictureInPicture.requestWindow()}catch(r){console.error("Failed to open Picture-in-Picture:",r);return}[...document.styleSheets].forEach(r=>{try{if(r.href){const o=e.document.createElement("link");o.rel="stylesheet",o.href=r.href,e.document.head.appendChild(o)}else if(r.cssRules){const o=e.document.createElement("style");o.textContent=[...r.cssRules].map(l=>l.cssText).join(""),e.document.head.appendChild(o)}}catch(o){console.warn("Stylesheet copy blocked:",o)}});const d=e.document.createElement("div");d.setAttribute("id","pip-root"),d.style.height="100vh",e.document.body.append(d);const a=C.createRoot(e.document.getElementById("pip-root"),{onCaughtError:(r,o)=>console.error(r),onUncaughtError:(r,o)=>console.error(r),onRecoverableError:(r,o)=>console.error(r)});e.addEventListener("pagehide",()=>{a.unmount()}),a.render(i.jsx(E,{children:i.jsx($,{viewSettings:t})}))};return i.jsx(j,{onClick:s==="success"?n:void 0})}export{X as default};
2
- //# sourceMappingURL=PipHost-D7liNR4M.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PipHost-D7liNR4M.js","sources":["../../src/views/editor/pip-timer/PipTimer.tsx","../../src/views/editor/pip-timer/PipHost.tsx"],"sourcesContent":["import { ViewSettings } from 'ontime-types';\n\nimport { FitText } from '../../../common/components/fit-text/FitText';\nimport MultiPartProgressBar from '../../../common/components/multi-part-progress-bar/MultiPartProgressBar';\nimport { useTimerSocket } from '../../../common/hooks/useSocket';\nimport { cx } from '../../../common/utils/styleUtils';\nimport { getFormattedTimer, getTimerByType } from '../../../features/viewers/common/viewUtils';\nimport {\n getEstimatedFontSize,\n getIsPlaying,\n getSecondaryDisplay,\n getShowMessage,\n getShowModifiers,\n getShowProgressBar,\n getTotalTime,\n} from '../../timer/timer.utils';\nimport { getTimerColour } from '../../utils/presentation.utils';\n\nimport './PipTimer.scss';\n\ninterface PipTimerProps {\n viewSettings: ViewSettings;\n}\n\nexport function PipTimer({ viewSettings }: PipTimerProps) {\n const { eventNow, message, time, clock, timerTypeNow, countToEndNow, auxTimer } = useTimerSocket();\n\n // gather modifiers\n const showOverlay = getShowMessage(message.timer);\n const { showFinished, showWarning, showDanger } = getShowModifiers(\n timerTypeNow,\n countToEndNow,\n time.phase,\n false,\n '',\n false,\n );\n const isPlaying = getIsPlaying(time.playback);\n const showProgressBar = getShowProgressBar(timerTypeNow);\n\n // gather timer data\n const totalTime = getTotalTime(time.duration, time.addedTime);\n const stageTimer = getTimerByType(false, timerTypeNow, countToEndNow, clock, time, timerTypeNow);\n const display = getFormattedTimer(stageTimer, timerTypeNow, 'min', {\n removeSeconds: false,\n removeLeadingZero: false,\n });\n\n const currentAux = (() => {\n if (message.timer.secondarySource === 'aux1') {\n return auxTimer.aux1;\n }\n if (message.timer.secondarySource === 'aux2') {\n return auxTimer.aux2;\n }\n if (message.timer.secondarySource === 'aux3') {\n return auxTimer.aux3;\n }\n return null;\n })();\n\n const secondaryContent = getSecondaryDisplay(message, currentAux, 'min', false, false, false);\n\n // gather presentation styles\n const resolvedTimerColour = getTimerColour(viewSettings, undefined, showWarning, showDanger);\n const { timerFontSize, externalFontSize } = getEstimatedFontSize(display, secondaryContent);\n const userStyles = {\n ...(resolvedTimerColour && { '--timer-colour': resolvedTimerColour }),\n };\n\n return (\n <div className={cx(['pip-timer', showFinished && 'pip-timer--finished'])} style={userStyles}>\n <div className={cx(['message-overlay', showOverlay && 'message-overlay--active'])}>\n <FitText mode='multi' min={12} max={256} className={cx(['message', message.timer.blink && 'blink'])}>\n {message.timer.text}\n </FitText>\n </div>\n\n <div className='timer-container'>\n <div\n className={cx(['timer', !isPlaying && 'timer--paused', showFinished && 'timer--finished'])}\n style={{ fontSize: `${timerFontSize}vw` }}\n data-phase={time.phase}\n >\n {display}\n </div>\n <div\n className={cx(['secondary', !secondaryContent && 'secondary--hidden'])}\n style={{ fontSize: `${externalFontSize}vw` }}\n >\n {secondaryContent}\n </div>\n </div>\n\n {showProgressBar && (\n <MultiPartProgressBar\n className={cx(['progress-container', !isPlaying && 'progress-container--paused'])}\n now={time.current}\n complete={totalTime}\n normalColor={viewSettings.normalColor}\n warning={eventNow?.timeWarning}\n warningColor={viewSettings.warningColor}\n danger={eventNow?.timeDanger}\n dangerColor={viewSettings.dangerColor}\n hideOvertime={!showFinished}\n />\n )}\n </div>\n );\n}\n","import { createRoot } from 'react-dom/client';\nimport { ErrorBoundary } from '@sentry/react';\n\nimport { CornerPipButton } from '../../../common/components/editor-utils/EditorUtils';\nimport useViewSettings from '../../../common/hooks-query/useViewSettings';\n\nimport { PipTimer } from './PipTimer';\n\nexport default function PipTimerHost() {\n const { data, status } = useViewSettings();\n\n const openPictureInPicture = async () => {\n if (window.documentPictureInPicture.window) {\n return;\n }\n\n let pipWindow: Window;\n try {\n pipWindow = await window.documentPictureInPicture.requestWindow();\n } catch (err) {\n console.error('Failed to open Picture-in-Picture:', err);\n return;\n }\n\n [...document.styleSheets].forEach((sheet) => {\n try {\n if (sheet.href) {\n const link = pipWindow.document.createElement('link');\n link.rel = 'stylesheet';\n link.href = sheet.href;\n pipWindow.document.head.appendChild(link);\n } else if (sheet.cssRules) {\n const style = pipWindow.document.createElement('style');\n style.textContent = [...sheet.cssRules].map((rule) => rule.cssText).join('');\n pipWindow.document.head.appendChild(style);\n }\n } catch (e) {\n console.warn('Stylesheet copy blocked:', e);\n }\n });\n\n const pipDiv = pipWindow.document.createElement('div');\n pipDiv.setAttribute('id', 'pip-root');\n pipDiv.style.height = '100vh';\n pipWindow.document.body.append(pipDiv);\n\n const pipRoot = createRoot(pipWindow.document.getElementById('pip-root') as Element, {\n onCaughtError: (err, _errInfo) => console.error(err),\n onUncaughtError: (err, _errInfo) => console.error(err),\n onRecoverableError: (err, _errInfo) => console.error(err),\n });\n\n pipWindow.addEventListener('pagehide', () => {\n pipRoot.unmount();\n });\n\n pipRoot.render(\n <ErrorBoundary>\n <PipTimer viewSettings={data} />\n </ErrorBoundary>,\n );\n };\n\n return <CornerPipButton onClick={status === 'success' ? openPictureInPicture : undefined} />;\n}\n"],"names":["PipTimer","viewSettings","eventNow","message","time","clock","timerTypeNow","countToEndNow","auxTimer","useTimerSocket","showOverlay","getShowMessage","showFinished","showWarning","showDanger","getShowModifiers","isPlaying","getIsPlaying","showProgressBar","getShowProgressBar","totalTime","getTotalTime","stageTimer","getTimerByType","display","getFormattedTimer","currentAux","secondaryContent","getSecondaryDisplay","resolvedTimerColour","getTimerColour","timerFontSize","externalFontSize","getEstimatedFontSize","userStyles","jsxs","cx","jsx","FitText","MultiPartProgressBar","PipTimerHost","data","status","useViewSettings","openPictureInPicture","pipWindow","err","sheet","link","style","rule","e","pipDiv","pipRoot","createRoot","_errInfo","ErrorBoundary","CornerPipButton"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{j as e,ac as f}from"./vendor-BoH5HFNN.js";import{u as m,L as u,d as j,O as o}from"./index-CDBQg2fh.js";import{E as l}from"./EmptyPage-Ct3d0DqJ.js";import{V as x}from"./ViewLogo-BHsV7Faa.js";import{V as a}from"./ViewParamsEditor-BMHXOv-K.js";import{u as _}from"./useWindowTitle-DU8NlxIu.js";import{u as h}from"./useProjectData-DGA6K2Zs.js";import"./Empty-C0IdV_kI.js";import"./viewUtils-DI8_kmUZ.js";import"./Select-B5xNi_tM.js";(function(){try{var s=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},r=new s.Error().stack;r&&(s._sentryDebugIds=s._sentryDebugIds||{},s._sentryDebugIds[r]="acc0c7ea-f155-410c-a623-721cf3a5c170",s._sentryDebugIdIdentifier="sentry-dbid-acc0c7ea-f155-410c-a623-721cf3a5c170")}catch{}})();function g(){const s=m(t=>t.mirror),{data:r,status:n}=h();return{data:{projectData:r,isMirrored:s},status:n}}function L(){const{data:s,status:r}=g();return _("Project info"),r==="pending"?e.jsx(u,{}):r==="error"?e.jsx(l,{text:"There was an error fetching data, please refresh the page."}):e.jsx(v,{...s})}function v({projectData:s,isMirrored:r}){const{getLocalizedString:n}=j();return!s||Object.values(s).every(i=>!i||i&&Array.isArray(i)&&i.length===0)?e.jsxs(e.Fragment,{children:[e.jsx(a,{target:o.ProjectInfo,viewOptions:[]}),e.jsx(l,{text:n("common.no_data")}),";"]}):e.jsxs("div",{className:`project ${r?"mirror":""}`,"data-testid":"project-view",children:[e.jsx(a,{target:o.ProjectInfo,viewOptions:[]}),s.logo&&e.jsx(x,{name:s.logo,className:"logo"}),e.jsxs("div",{className:"info",children:[s.title&&e.jsxs("div",{children:[e.jsx("div",{className:"info__label",children:n("project.title")}),e.jsx("div",{className:"info__value",children:s.title})]}),s.description&&e.jsxs("div",{children:[e.jsx("div",{className:"info__label",children:n("project.description")}),e.jsx("div",{className:"info__value",children:s.description})]}),s.info&&e.jsxs("div",{children:[e.jsx("div",{className:"info__label",children:n("project.info")}),e.jsx("div",{className:"info__value",children:s.info})]}),s.url&&e.jsxs("div",{children:[e.jsx("div",{className:"info__label",children:n("project.url")}),e.jsxs("a",{href:s.url,target:"_blank",rel:"noreferrer",className:"info__value link",children:[s.url," ",e.jsx(f,{style:{fontSize:"1em"}})]})]}),s.custom.map((i,c)=>{const d=!!i.url;return e.jsxs("div",{className:"info__custom",children:[d&&e.jsx("div",{className:"info__image-container",children:e.jsx("img",{className:"info__image",src:i.url,loading:"lazy"})}),e.jsxs("div",{children:[e.jsx("div",{className:"info__label",children:i.title}),e.jsx("div",{className:"info__value",children:i.value})]})]},`${i.title}-${c}`)})]})]})}export{L as default};
2
- //# sourceMappingURL=ProjectInfo-BduQgjcz.js.map
@@ -1,2 +0,0 @@
1
- import{h as l,j as e,A as f}from"./vendor-BoH5HFNN.js";import{e as h,ah as p,ak as b,bR as g,U as x}from"./index-CDBQg2fh.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},a=new t.Error().stack;a&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[a]="497bab96-ae8a-458f-b0da-c6b5b882aca0",t._sentryDebugIdIdentifier="sentry-dbid-497bab96-ae8a-458f-b0da-c6b5b882aca0")}catch{}})();const y="_container_o8th0_17",_="_pin_o8th0_27",m="_pinFailed_o8th0_51",c={container:y,pin:_,pinFailed:m};function v({permission:t,handleValidation:a}){const[s,o]=l.useState(""),[i,r]=l.useState(!1),u=()=>{a(s)||(r(!0),o(""))},d=n=>{o(n),i&&r(!1)};return e.jsxs("div",{className:c.container,children:[`Ontime ${t}`,e.jsxs("form",{onSubmit:n=>{n.preventDefault(),u()},className:h([c.pin,i&&c.pinFailed]),children:[e.jsx(p,{type:"password",maxLength:4,height:"large",value:s,onChange:n=>d(n.target.value)}),e.jsx(b,{type:"submit",variant:"primary","aria-label":"Enter",children:e.jsx(f,{})})]})]})}function w({permission:t,children:a}){const{editorAuth:s,operatorAuth:o,validate:i}=l.useContext(g),r=l.useCallback(d=>i(d,t),[t,i]);return x||(t==="editor"?s:t==="operator"?o:!1)?e.jsx(e.Fragment,{children:a}):e.jsx(v,{permission:t,handleValidation:r})}export{w as P};
2
- //# sourceMappingURL=ProtectRoute-Ci_AIozP.js.map
@@ -1 +0,0 @@
1
- ._blink_av4z0_1{animation:_blink_av4z0_1 1s step-start infinite}@keyframes _blink_av4z0_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_av4z0_13{transform:rotate(45deg)}._progressOverride_av4z0_17{margin-top:.5rem;height:1rem;grid-area:progress}._blink_1dtk5_1{animation:_blink_1dtk5_1 1s step-start infinite}@keyframes _blink_1dtk5_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_1dtk5_13{transform:rotate(45deg)}._imageInput_1dtk5_17:not(:read-only)::placeholder{opacity:.2}._imageInput_1dtk5_17:not(:read-only):hover::placeholder{opacity:1}._imageCell_1dtk5_24{position:relative;min-height:2rem}._imageCell_1dtk5_24:hover ._overlay_1dtk5_28{display:grid;place-content:center;justify-items:center;gap:1rem;background-color:#0009}._overlay_1dtk5_28{position:absolute;top:0;right:0;bottom:0;left:0;display:none}._image_1dtk5_17{background-color:#101010;min-height:2rem}._blink_yy7ty_1{animation:_blink_yy7ty_1 1s step-start infinite}@keyframes _blink_yy7ty_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_yy7ty_13{transform:rotate(45deg)}._flag_yy7ty_17{width:100%;height:100%;color:#77c785;padding-top:.5rem;padding-left:.75rem}._blink_18xqt_1{animation:_blink_18xqt_1 1s step-start infinite}@keyframes _blink_18xqt_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_18xqt_13{transform:rotate(45deg)}._ghostedText_18xqt_17{min-height:2rem;padding:.25em 0 0;width:100%}._multiline_18xqt_24{white-space:break-spaces}._blink_1u021_1{animation:_blink_1u021_1 1s step-start infinite}@keyframes _blink_1u021_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_1u021_13{transform:rotate(45deg)}._muted_1u021_17{opacity:.4;line-height:2rem}._numeric_1u021_22{font-variant-numeric:tabular-nums;letter-spacing:.5px}._blink_1dp7m_1{animation:_blink_1dp7m_1 1s step-start infinite}@keyframes _blink_1dp7m_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_1dp7m_13{transform:rotate(45deg)}._emptyContainer_1dp7m_17{width:100%;color:#ffffff1a}._emptyContainer_1dp7m_17 ._emptyCell_1dp7m_21{margin-inline:auto;text-align:center;padding-top:10vh}._emptyContainer_1dp7m_17 ._empty_1dp7m_17{width:100%;opacity:.8}._emptyContainer_1dp7m_17 ._text_1dp7m_30{font-weight:600;font-size:2em}._blink_1f3ag_1{animation:_blink_1f3ag_1 1s step-start infinite}@keyframes _blink_1f3ag_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_1f3ag_13{transform:rotate(45deg)}._cuesheet_1f3ag_17{font-size:1rem;font-weight:400;color:#f6f6f6;padding-bottom:70vh}._cuesheet_1f3ag_17 thead tr:before{content:"";display:block;width:4px;height:100%}._cuesheet_1f3ag_17 tr{display:flex}._cuesheet_1f3ag_17 th{background-color:#1a1a1a;padding-left:.25rem;font-weight:400}._cuesheet_1f3ag_17 th:hover ._resizer_1f3ag_37{width:.5rem}._cuesheet_1f3ag_17 th,._cuesheet_1f3ag_17 td{margin:1px;font-size:inherit;text-align:left;position:relative;padding:.25rem}._cuesheet_1f3ag_17 th:focus,._cuesheet_1f3ag_17 td:focus{outline:2px solid #f6f6f6}._actionColumn_1f3ag_53{padding-inline:.5rem;padding-top:.5rem!important;background-color:transparent;display:flex;align-items:start;justify-content:center}._indexColumn_1f3ag_62{display:flex;align-items:start;justify-content:end;min-width:3em;font-size:calc(1rem - 2px);line-height:2rem;background-color:#1a1a1a;font-weight:600}._tableHeader_1f3ag_73{line-height:2rem;position:sticky;top:0;z-index:100;background-color:#101010;font-size:calc(1rem - 2px)}._tableHeader_1f3ag_73 ._actionColumn_1f3ag_53{background-color:#202020;width:2rem}._tableHeader_1f3ag_73 ._indexColumn_1f3ag_62{width:3.5em}._resizer_1f3ag_37{cursor:col-resize;opacity:.4;display:inline-block;width:0;height:100%;position:absolute;right:0;top:0;background-color:#578af4;-webkit-user-select:none;user-select:none;touch-action:none}._resizer_1f3ag_37:hover{opacity:1}._blink_lk49a_1{animation:_blink_lk49a_1 1s step-start infinite}@keyframes _blink_lk49a_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_lk49a_13{transform:rotate(45deg)}._cuesheet_lk49a_17{font-size:1rem;font-weight:400;color:#f6f6f6;padding-bottom:70vh}._cuesheet_lk49a_17 thead tr:before{content:"";display:block;width:4px;height:100%}._cuesheet_lk49a_17 tr{display:flex}._cuesheet_lk49a_17 th{background-color:#1a1a1a;padding-left:.25rem;font-weight:400}._cuesheet_lk49a_17 th:hover ._resizer_lk49a_37{width:.5rem}._cuesheet_lk49a_17 th,._cuesheet_lk49a_17 td{margin:1px;font-size:inherit;text-align:left;position:relative;padding:.25rem}._cuesheet_lk49a_17 th:focus,._cuesheet_lk49a_17 td:focus{outline:2px solid #f6f6f6}._actionColumn_lk49a_53{padding-inline:.5rem;padding-top:.5rem!important;background-color:transparent;display:flex;align-items:start;justify-content:center}._indexColumn_lk49a_62{display:flex;align-items:start;justify-content:end;min-width:3em;font-size:calc(1rem - 2px);line-height:2rem;background-color:#1a1a1a;font-weight:600}._tableHeader_lk49a_73{line-height:2rem;position:sticky;top:0;z-index:100;background-color:#101010;font-size:calc(1rem - 2px)}._tableHeader_lk49a_73 ._actionColumn_lk49a_53{background-color:#202020;width:2rem}._tableHeader_lk49a_73 ._indexColumn_lk49a_62{width:3.5em}._resizer_lk49a_37{cursor:col-resize;opacity:.4;display:inline-block;width:0;height:100%;position:absolute;right:0;top:0;background-color:#578af4;-webkit-user-select:none;user-select:none;touch-action:none}._resizer_lk49a_37:hover{opacity:1}._delayRow_lk49a_106{color:#e69056;border-left:4px solid transparent}._delayRow_lk49a_106 td{width:calc(100% - 4px);padding-block:.5rem;text-align:center}._delayRow_lk49a_106 td:first-letter{text-transform:uppercase}._blink_1npa7_1{animation:_blink_1npa7_1 1s step-start infinite}@keyframes _blink_1npa7_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_1npa7_13{transform:rotate(45deg)}._cuesheet_1npa7_17{font-size:1rem;font-weight:400;color:#f6f6f6;padding-bottom:70vh}._cuesheet_1npa7_17 thead tr:before{content:"";display:block;width:4px;height:100%}._cuesheet_1npa7_17 tr{display:flex}._cuesheet_1npa7_17 th{background-color:#1a1a1a;padding-left:.25rem;font-weight:400}._cuesheet_1npa7_17 th:hover ._resizer_1npa7_37{width:.5rem}._cuesheet_1npa7_17 th,._cuesheet_1npa7_17 td{margin:1px;font-size:inherit;text-align:left;position:relative;padding:.25rem}._cuesheet_1npa7_17 th:focus,._cuesheet_1npa7_17 td:focus{outline:2px solid #f6f6f6}._actionColumn_1npa7_53{padding-inline:.5rem;padding-top:.5rem!important;background-color:transparent;display:flex;align-items:start;justify-content:center}._indexColumn_1npa7_62{display:flex;align-items:start;justify-content:end;min-width:3em;font-size:calc(1rem - 2px);line-height:2rem;background-color:#1a1a1a;font-weight:600}._tableHeader_1npa7_73{line-height:2rem;position:sticky;top:0;z-index:100;background-color:#101010;font-size:calc(1rem - 2px)}._tableHeader_1npa7_73 ._actionColumn_1npa7_53{background-color:#202020;width:2rem}._tableHeader_1npa7_73 ._indexColumn_1npa7_62{width:3.5em}._resizer_1npa7_37{cursor:col-resize;opacity:.4;display:inline-block;width:0;height:100%;position:absolute;right:0;top:0;background-color:#578af4;-webkit-user-select:none;user-select:none;touch-action:none}._resizer_1npa7_37:hover{opacity:1}._eventRow_1npa7_106{background:color-mix(in srgb,transparent 92%,var(--user-bg, #9d9d9d) 8%);border-left:4px solid var(--user-bg, #9d9d9d);min-height:2.5rem}._eventRow_1npa7_106:hover{outline:1px solid #578AF4;outline-offset:-1px;background:color-mix(in srgb,transparent 80%,var(--user-bg, #9d9d9d) 20%)}._eventRow_1npa7_106._firstAfterGroup_1npa7_116{margin-top:2rem}._eventRow_1npa7_106._skip_1npa7_119{position:relative}._eventRow_1npa7_106._skip_1npa7_119 ._indexColumn_1npa7_62{text-decoration:line-through;opacity:.4}._eventRow_1npa7_106._skip_1npa7_119:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(-45deg,#ffffff08,#ffffff08 10px,#ffffff14 10px,#ffffff14 20px)}._eventRow_1npa7_106 td{background-color:#262626;border-radius:2px}._blink_1p2se_1{animation:_blink_1p2se_1 1s step-start infinite}@keyframes _blink_1p2se_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_1p2se_13{transform:rotate(45deg)}._cuesheet_1p2se_17{font-size:1rem;font-weight:400;color:#f6f6f6;padding-bottom:70vh}._cuesheet_1p2se_17 thead tr:before{content:"";display:block;width:4px;height:100%}._cuesheet_1p2se_17 tr{display:flex}._cuesheet_1p2se_17 th{background-color:#1a1a1a;padding-left:.25rem;font-weight:400}._cuesheet_1p2se_17 th:hover ._resizer_1p2se_37{width:.5rem}._cuesheet_1p2se_17 th,._cuesheet_1p2se_17 td{margin:1px;font-size:inherit;text-align:left;position:relative;padding:.25rem}._cuesheet_1p2se_17 th:focus,._cuesheet_1p2se_17 td:focus{outline:2px solid #f6f6f6}._actionColumn_1p2se_53{padding-inline:.5rem;padding-top:.5rem!important;background-color:transparent;display:flex;align-items:start;justify-content:center}._indexColumn_1p2se_62{display:flex;align-items:start;justify-content:end;min-width:3em;font-size:calc(1rem - 2px);line-height:2rem;background-color:#1a1a1a;font-weight:600}._tableHeader_1p2se_73{line-height:2rem;position:sticky;top:0;z-index:100;background-color:#101010;font-size:calc(1rem - 2px)}._tableHeader_1p2se_73 ._actionColumn_1p2se_53{background-color:#202020;width:2rem}._tableHeader_1p2se_73 ._indexColumn_1p2se_62{width:3.5em}._resizer_1p2se_37{cursor:col-resize;opacity:.4;display:inline-block;width:0;height:100%;position:absolute;right:0;top:0;background-color:#578af4;-webkit-user-select:none;user-select:none;touch-action:none}._resizer_1p2se_37:hover{opacity:1}._groupRow_1p2se_106{margin-top:2em;width:100%;display:flex;align-items:start;font-size:1rem;border-radius:2px 0 0;background-color:#1a1a1a;border-left:4px solid var(--user-bg, #9d9d9d);background:color-mix(in srgb,transparent 90%,var(--user-bg, #9d9d9d) 10%);position:relative;line-height:1em;font-weight:700}._groupRow_1p2se_106 td{min-height:3.5rem;padding-top:.75rem!important}._groupRow_1p2se_106 ._indexColumn_1p2se_62{background-color:transparent}._groupRow_1p2se_106 ._title_1p2se_127{font-weight:600}._groupRow_1p2se_106:hover{outline:1px solid #578AF4;outline-offset:-1px;background:color-mix(in srgb,transparent 80%,var(--user-bg, #9d9d9d) 20%)}._blink_plhap_1{animation:_blink_plhap_1 1s step-start infinite}@keyframes _blink_plhap_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_plhap_13{transform:rotate(45deg)}._cuesheet_plhap_17{font-size:1rem;font-weight:400;color:#f6f6f6;padding-bottom:70vh}._cuesheet_plhap_17 thead tr:before{content:"";display:block;width:4px;height:100%}._cuesheet_plhap_17 tr{display:flex}._cuesheet_plhap_17 th{background-color:#1a1a1a;padding-left:.25rem;font-weight:400}._cuesheet_plhap_17 th:hover ._resizer_plhap_37{width:.5rem}._cuesheet_plhap_17 th,._cuesheet_plhap_17 td{margin:1px;font-size:inherit;text-align:left;position:relative;padding:.25rem}._cuesheet_plhap_17 th:focus,._cuesheet_plhap_17 td:focus{outline:2px solid #f6f6f6}._actionColumn_plhap_53{padding-inline:.5rem;padding-top:.5rem!important;background-color:transparent;display:flex;align-items:start;justify-content:center}._indexColumn_plhap_62{display:flex;align-items:start;justify-content:end;min-width:3em;font-size:calc(1rem - 2px);line-height:2rem;background-color:#1a1a1a;font-weight:600}._tableHeader_plhap_73{line-height:2rem;position:sticky;top:0;z-index:100;background-color:#101010;font-size:calc(1rem - 2px)}._tableHeader_plhap_73 ._actionColumn_plhap_53{background-color:#202020;width:2rem}._tableHeader_plhap_73 ._indexColumn_plhap_62{width:3.5em}._resizer_plhap_37{cursor:col-resize;opacity:.4;display:inline-block;width:0;height:100%;position:absolute;right:0;top:0;background-color:#578af4;-webkit-user-select:none;user-select:none;touch-action:none}._resizer_plhap_37:hover{opacity:1}._milestoneRow_plhap_106{background:color-mix(in srgb,transparent 98%,var(--user-bg, #9d9d9d) 2%);border-left:4px solid var(--user-bg, #9d9d9d);font-style:italic}._milestoneRow_plhap_106:hover{outline:1px solid #578AF4;outline-offset:-1px;background:color-mix(in srgb,transparent 80%,var(--user-bg, #9d9d9d) 20%)}._milestoneRow_plhap_106 td{background-color:#202020;border-radius:2px}._milestoneRow_plhap_106 ._indexColumn_plhap_62{color:#8a8a8a}._blink_18k3s_1{animation:_blink_18k3s_1 1s step-start infinite}@keyframes _blink_18k3s_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_18k3s_13{transform:rotate(45deg)}._tableSettings_18k3s_17{margin-top:1rem;grid-area:settings;background-color:#202020;padding:.5rem 1rem;display:flex;align-items:center;gap:1rem;font-size:calc(1rem - 2px);border-radius:3px 3px 0 0}._sectionTitle_18k3s_29{text-transform:uppercase}._row_18k3s_33{display:flex;flex-wrap:wrap;column-gap:1rem;row-gap:.25em}._option_18k3s_40{cursor:pointer;display:flex;align-items:center;gap:.5rem}._column_18k3s_47{display:flex;flex-direction:column;gap:.5rem;align-self:start}._inline_18k3s_54{display:flex;align-items:center;gap:1rem}._apart_18k3s_60{margin-left:auto}._group_18k3s_65{display:flex;align-items:center;gap:2px;padding-inline:2px;background:#2d2d2d;border-radius:3px;height:2rem}._radioButton_18k3s_76{box-sizing:border-box;display:flex;align-items:center;justify-content:center;height:calc(2rem - 4px);padding-inline:1em;border:1px solid transparent;border-radius:3px;color:#b1b1b1;font-size:calc(1rem - 2px);font-weight:600}._radioButton_18k3s_76:focus-visible{background:transparent;outline:1px solid #578AF4}._radioButton_18k3s_76:hover:not(:disabled):not(:active){background:#404040}._radioButton_18k3s_76:active{background:#2d2d2d}._radioButton_18k3s_76[data-pressed]{background:#2b5abc;color:#f6f6f6}._radioButton_18k3s_76[data-pressed]:hover:not(:disabled):not(:active){background:#3e75e8}._blink_h9gr1_1{animation:_blink_h9gr1_1 1s step-start infinite}@keyframes _blink_h9gr1_1{0%{opacity:100%}50%{opacity:20%}}._fourtyfive_h9gr1_13{transform:rotate(45deg)}._tableWrapper_h9gr1_17{background-color:#101010;width:100%;height:100vh;padding-inline:.5rem;padding-block:.5rem 1rem;display:grid;grid-template-rows:3.5rem auto auto 1fr;grid-template-areas:"overview" "progress" "settings" "table";color:#f6f6f6}
@@ -1,2 +0,0 @@
1
- import{o as et,h as m,j as e,f as ue,ay as _e,az as tt,aA as ge,aB as nt,aC as st,aD as ot,aE as it,aF as at,aG as rt,aH as lt,aI as K,aJ as ct,aK as ut,as as de,aL as ke,ar as Ce,T as ye,y as dt,av as mt,ah as ft,am as pt,C as Te,aM as F,aN as Ie,aO as ht,aP as xt,aQ as je,aR as we,aS as Me,m as gt,aT as Re,aU as Ct,aV as yt,aW as jt,aX as bt,I as vt}from"./vendor-BoH5HFNN.js";import{P as St}from"./ProtectRoute-Ci_AIozP.js";import{a as Et,b0 as _t,b1 as me,ah as De,m as B,B as N,e as ee,f as L,b2 as k,k as be,b3 as kt,aC as H,b4 as re,b5 as le,ak as te,x as Tt,an as It,aw as wt,O as Mt,P as Ne,b6 as Z,o as Rt,b7 as Dt,b8 as Nt,a$ as zt}from"./index-CDBQg2fh.js";import{C as $,u as Ot}from"./useWindowTitle-DU8NlxIu.js";import{T as ze,O as Oe,S as Wt,M as Pt,C as $t}from"./TimeElements-XpRwBsaa.js";import{O as We,T as Ft,u as z,G as Bt}from"./OverviewWrapper-1Vj3_ojX.js";import{M as Pe,P as Lt}from"./Modal-Bn1bZkwb.js";import{h as Ht,i as U,k as $e,j as Fe,s as fe,S as A,u as At}from"./useRundown-BFae0_bU.js";import{s as ie,E as Kt,M as Ut,G as Gt,u as Be,T as Le,A as Vt}from"./MilestoneEditor-rgBQSXVU.js";import{M as Jt}from"./MultiPartProgressBar-Cmw-gisu.js";import{E as He}from"./EmptyPage-Ct3d0DqJ.js";import{u as qt}from"./useCustomFields-BUJkzZvM.js";import{T as Ae}from"./validateEvent-3adKsP1N.js";import{D as Y}from"./DelayIndicator-F4GdgsGh.js";import{p as Ke}from"./parseUserTime-Cp5iWS7y.js";import{m as Qt,u as Ue}from"./dateConfig-_BhycZza.js";import{S as Ge,L as D}from"./EditorUtils-Bd3J5Dvf.js";import{P as Ve}from"./useProjectData-DGA6K2Zs.js";import"./Tooltip-B8y25e3n.js";import"./offset-CLG4o744.js";import"./SuperscriptPeriod-BmHAoSBy.js";/* empty css */import"./playbackstate-B3BKJ8cT.js";import"./Select-B5xNi_tM.js";import"./TimeInput-Bu_5GlHP.js";import"./editorSettings-DH9ca-nB.js";import"./getProgress-DlrSzpnf.js";import"./Empty-C0IdV_kI.js";import"./rundownUtils-DJKMt8Ih.js";(function(){try{var t=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},n=new t.Error().stack;n&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[n]="bf07f30b-b273-42eb-8017-5e1865f6bc6c",t._sentryDebugIdIdentifier="sentry-dbid-bf07f30b-b273-42eb-8017-5e1865f6bc6c")}catch{}})();function Xt(){const{width:t}=et();return m.useMemo(()=>t<800,[t])}const Zt=m.memo(Yt);function Yt({children:t}){return Xt()?e.jsx(en,{children:t}):e.jsx(tn,{children:t})}function en({children:t}){return e.jsxs(We,{navElements:t,children:[e.jsx(ze,{}),e.jsx(Oe,{})]})}function tn({children:t}){return e.jsxs(We,{navElements:t,children:[e.jsx(Ft,{}),e.jsx(Wt,{shouldFormat:!0}),e.jsx(ze,{}),e.jsx(Oe,{}),e.jsx(Pt,{}),e.jsx($t,{shouldFormat:!0})]})}function nn({entryId:t}){const{data:n}=Ht(),[o,s]=m.useState(null);return m.useEffect(()=>{if(n.order.length===0){s(null);return}const i=n.entries[t];s(i||null)},[t,n.order,n.entries]),U(o)?e.jsx("div",{className:ie.entryEditor,"data-testid":"editor-container",children:e.jsx(Kt,{event:o})}):$e(o)?e.jsx("div",{className:ie.inModal,"data-testid":"editor-container",children:e.jsx(Ut,{milestone:o})}):Fe(o)?e.jsx("div",{className:ie.inModal,"data-testid":"editor-container",children:e.jsx(Gt,{group:o})}):null}const ce=ue(t=>({selectedEntryId:null,setEditableEntry:n=>t({selectedEntryId:n}),clearSelection:()=>t({selectedEntryId:null})})),sn=m.memo(on);function on(){const t=ce(o=>o.selectedEntryId),n=ce(o=>o.clearSelection);return t===null?null:e.jsx(Pe,{isOpen:!0,onClose:n,title:"Edit entry",showCloseButton:!0,bodyElements:e.jsx(nn,{entryId:t})})}const an="_progressOverride_av4z0_17",rn={progressOverride:an};function ln(){const{data:t}=Et(),{current:n,duration:o,timeWarning:s,timeDanger:i}=_t();return e.jsx(Jt,{now:n,complete:o,normalColor:t.normalColor,warning:s,warningColor:t.warningColor,danger:i,dangerColor:t.dangerColor,className:rn.progressOverride,ignoreCssOverride:!0})}function cn(t,n){let o;return(...s)=>{o&&clearTimeout(o),o=setTimeout(()=>{o=null,t(...s)},n)}}const Je=me("cuesheet-sizes"),un=me("cuesheet-hidden"),dn=me("cuesheet-order"),mn=cn(t=>{localStorage.setItem(Je,JSON.stringify(t))},500);function fn(){const[t,n]=m.useState(()=>{try{const s=localStorage.getItem(Je);return s?JSON.parse(s):{}}catch{return{}}});m.useEffect(()=>{mn(t)},[t]);const o=m.useCallback(s=>{n(s)},[]);return{columnSizing:t,setColumnSizing:o}}function qe(t){const[n,o]=_e({key:dn,defaultValue:t.map(i=>i.id)});m.useEffect(()=>{const i=t.map(a=>a.id);i.some(a=>!n.includes(a))&&o(i)},[n,t,o]);const s=m.useCallback(()=>{o(t.map(i=>i.id))},[t,o]);return{columnOrder:n,saveColumnOrder:o,resetColumnOrder:s}}function pn(){const[t,n]=_e({key:un,defaultValue:{}});return{columnVisibility:t,setColumnVisibility:n}}function hn({columns:t,children:n}){const{columnOrder:o,saveColumnOrder:s}=qe(t),i=tt(ge(it,{activationConstraint:{delay:100,tolerance:50}}),ge(ot,{activationConstraint:{delay:100,tolerance:50}})),a=c=>{const{delta:l,active:d,over:r}=c;if(l.y>200||(r==null?void 0:r.id)==null)return;const u=o.indexOf(d.id),p=o.indexOf(r.id);if(p===-1)return;const x=[...o],h=x.splice(u,1);x.splice(p,0,h[0]),s(x)};return e.jsx(nt,{sensors:i,collisionDetection:st,onDragEnd:a,children:n})}const Qe=m.forwardRef(({initialValue:t,allowSubmitSameValue:n,handleUpdate:o,handleCancelUpdate:s},i)=>{const a=m.useRef(null),c=m.useCallback(p=>o(p),[o]),{value:l,onChange:d,onBlur:r,onKeyDown:u}=Be(t,c,a,{allowSubmitSameValue:n,allowKeyboardNavigation:!0,submitOnEnter:!0,submitOnCtrlEnter:!0,onCancelUpdate:s});return m.useImperativeHandle(i,()=>({focus(){var p;(p=a.current)==null||p.focus()},select(){var p;(p=a.current)==null||p.select()},focusParentElement(){var p,x;(x=(p=a.current)==null?void 0:p.parentElement)==null||x.focus()}}),[a]),e.jsx(De,{ref:a,variant:"ghosted",fluid:!0,value:l,onChange:d,onBlur:r,onKeyDown:u})});Qe.displayName="SingleLineCell";const pe=m.memo(Qe),xn=m.memo(gn);function gn({initialValue:t,lockedValue:n,delayed:o,onSubmit:s,children:i}){const[a,c]=m.useState(!1),[l,d]=m.useState(t),r=m.useRef(null),u=m.useRef(null);m.useEffect(()=>{a&&r.current&&(r.current.focus(),r.current.select())},[a]),m.useEffect(()=>{a||d(t)},[t,a]);const p=()=>c(!0),x=()=>{c(!1),setTimeout(()=>{var f;return(f=u.current)==null?void 0:f.focusParentElement()})},h=m.useCallback(f=>{var S,w,j;if(c(!1),f===""){s(f),(S=r.current)==null||S.focusParentElement();return}if(f.startsWith("p")||f.startsWith("+")){s(f),(w=r.current)==null||w.focusParentElement();return}const g=Ke(f);if(g<0||isNaN(g)){d(t),setTimeout(()=>{var _;return(_=u.current)==null?void 0:_.focusParentElement()});return}if(g===t&&n){(j=r.current)==null||j.focusParentElement();return}s(f),d(Number(f)),setTimeout(()=>{var _;return(_=u.current)==null?void 0:_.focusParentElement()})},[t,n,s]),E=B(l);return a?e.jsx(pe,{ref:r,initialValue:E,allowSubmitSameValue:!n,handleUpdate:h,handleCancelUpdate:x}):e.jsx(Le,{onClick:p,onFocus:p,muted:!n,offset:o?"over":void 0,ref:u,children:i})}const Cn="_imageInput_1dtk5_17",yn="_imageCell_1dtk5_24",jn="_overlay_1dtk5_28",bn="_image_1dtk5_17",q={imageInput:Cn,imageCell:yn,overlay:jn,image:bn},vn=m.memo(Sn);function Sn({initialValue:t,readOnly:n,updateValue:o}){const s=a=>{a!==t&&(a!==""&&!a.startsWith("http")||o(a))},i=()=>{t&&window.open(t,"_blank","noopener,noreferrer")};return t?e.jsxs("div",{className:q.imageCell,children:[!n&&e.jsxs("div",{className:q.overlay,children:[e.jsx(N,{onClick:i,children:"Preview"}),e.jsx(N,{variant:"subtle-destructive",onClick:()=>s(""),children:"Delete"})]}),!!t&&e.jsx("img",{loading:"lazy",src:t,className:q.image})]}):e.jsx(De,{variant:"ghosted",className:q.imageInput,fluid:!0,readOnly:n,disabled:n,placeholder:"Paste image URL",onBlur:a=>s(a.currentTarget.value),onKeyDown:a=>{a.key==="Enter"&&s(a.currentTarget.value)},defaultValue:t})}const En="_flag_yy7ty_17",_n={flag:En};function kn(){return e.jsx("div",{className:_n.flag,children:e.jsx(at,{})})}const Tn="_ghostedText_18xqt_17",In="_multiline_18xqt_24",ve={ghostedText:Tn,multiline:In};function he({children:t,multiline:n}){return e.jsx("div",{className:`${ve.ghostedText} ${n?ve.multiline:""}`,children:t})}const Xe=m.memo(wn);function wn({initialValue:t,handleUpdate:n}){const o=m.useRef(null),s=m.useCallback(d=>n(d),[n]),{value:i,onChange:a,onBlur:c,onKeyDown:l}=Be(t,s,o,{submitOnCtrlEnter:!0,allowKeyboardNavigation:!0});return e.jsx(Vt,{inputref:o,variant:"ghosted",fluid:!0,rows:1,value:i,onChange:a,onBlur:c,onKeyDown:l,spellCheck:!1})}const Mn="_muted_1u021_17",Rn="_numeric_1u021_22",Se={muted:Mn,numeric:Rn};function P({numeric:t,children:n}){return e.jsx("span",{className:ee([Se.muted,t&&Se.numeric]),children:n})}const Ze=m.memo(Dn);function Dn({initialValue:t,lockedValue:n,delayed:o,onSubmit:s,children:i}){const[a,c]=m.useState(!1),[l,d]=m.useState(t),r=m.useRef(null),u=m.useRef(null);m.useEffect(()=>{a&&r.current&&(r.current.focus(),r.current.select())},[a]),m.useEffect(()=>{a||d(t)},[t,a]);const p=()=>c(!0),x=()=>{c(!1),setTimeout(()=>{var f;return(f=u.current)==null?void 0:f.focusParentElement()})},h=m.useCallback(f=>{var S,w,j;if(c(!1),f===""){s(f),(S=r.current)==null||S.focusParentElement();return}if(f.startsWith("p")||f.startsWith("+")){s(f),(w=r.current)==null||w.focusParentElement();return}const g=Ke(f);if(g<0||isNaN(g)){d(t),setTimeout(()=>{var _;return(_=u.current)==null?void 0:_.focusParentElement()});return}if(g===t&&n){(j=r.current)==null||j.focusParentElement();return}s(f),d(Number(f)),setTimeout(()=>{var _;return(_=u.current)==null?void 0:_.focusParentElement()})},[t,n,s]),E=L(l);return a?e.jsx(pe,{ref:r,initialValue:E,allowSubmitSameValue:!n,handleUpdate:h,handleCancelUpdate:x}):e.jsx(Le,{onClick:p,onFocus:p,muted:!n,offset:o?"over":void 0,ref:u,children:i})}function Nn({getValue:t,row:n,table:o,column:s}){var f;if(!o.options.meta)return null;const{showDelayedTimes:i,hideTableSeconds:a}=o.options.meta.options,c=a?{format12:"h:mm a",format24:"HH:mm"}:void 0,l=n.original;if(!U(l))return e.jsx(P,{numeric:!0,children:L(t(),c)});const{handleUpdateTimer:d}=o.options.meta,r=g=>d(n.original.id,"timeStart",g),u=t(),p=!l.linkStart,x=i?u+l.delay:u,h=L(x,c);return((f=s.columnDef.meta)==null?void 0:f.canWrite)?e.jsxs(Ze,{initialValue:u,onSubmit:r,lockedValue:p,delayed:l.delay!==0,children:[h,e.jsx(Y,{delayValue:l.delay,tooltipPrefix:B(u)})]}):e.jsxs(P,{numeric:!0,children:[h,e.jsx(Y,{delayValue:l.delay,tooltipPrefix:B(u)})]})}function zn({getValue:t,row:n,table:o,column:s}){var f;if(!o.options.meta)return null;const{showDelayedTimes:i,hideTableSeconds:a}=o.options.meta.options,c=a?{format12:"h:mm a",format24:"HH:mm"}:void 0,l=n.original;if(!U(l))return e.jsx(P,{numeric:!0,children:L(t(),c)});const{handleUpdateTimer:d}=o.options.meta,r=g=>d(n.original.id,"timeEnd",g),u=t(),p=l.timeStrategy===Ae.LockEnd,x=i?u+l.delay:u,h=L(x,c);return((f=s.columnDef.meta)==null?void 0:f.canWrite)?e.jsxs(Ze,{initialValue:u,onSubmit:r,lockedValue:p,delayed:l.delay!==0,children:[h,e.jsx(Y,{delayValue:l.delay,tooltipPrefix:B(u)})]}):e.jsxs(P,{numeric:!0,children:[h,e.jsx(Y,{delayValue:l.delay,tooltipPrefix:B(u)})]})}function On({getValue:t,row:n,table:o,column:s}){var x;if(!o.options.meta)return null;const{hideTableSeconds:i}=o.options.meta.options,a=n.original;if(!U(a))return e.jsx(P,{numeric:!0,children:be(t(),i)});const{handleUpdateTimer:c}=o.options.meta,l=h=>c(n.original.id,"duration",h),d=t(),r=a.timeStrategy===Ae.LockDuration,u=be(d,i);return((x=s.columnDef.meta)==null?void 0:x.canWrite)?e.jsx(xn,{initialValue:d,onSubmit:l,lockedValue:r,children:u}):e.jsx(P,{numeric:!0,children:u})}function Wn({row:t,column:n,table:o}){var c;const s=m.useCallback(l=>{var d;(d=o.options.meta)==null||d.handleUpdate(t.index,n.id,l,!1)},[n.id,t.index,o.options.meta]),i=t.original[n.id];return typeof i!="string"?null:((c=n.columnDef.meta)==null?void 0:c.canWrite)?e.jsx(Xe,{initialValue:i,handleUpdate:s}):e.jsx(he,{multiline:!0,children:i})}function Pn({row:t,column:n,table:o}){var l;const s=m.useCallback(d=>{var r;(r=o.options.meta)==null||r.handleUpdate(t.index,n.id,d,!0)},[n.id,t.index,o.options.meta]),i=t.original;if(fe(i))return null;const a=(l=n.columnDef.meta)==null?void 0:l.canWrite,c=i.custom[n.id];return e.jsx(vn,{initialValue:c,updateValue:s,readOnly:!a})}function Ee({row:t,column:n,table:o}){var c;const s=m.useCallback(l=>{var d;(d=o.options.meta)==null||d.handleUpdate(t.index,n.id,l,!1)},[n.id,t.index,o.options.meta]),i=t.original[n.id];return typeof i!="string"?null:((c=n.columnDef.meta)==null?void 0:c.canWrite)?e.jsx(pe,{initialValue:i,handleUpdate:s}):e.jsx(he,{children:i})}function $n({row:t}){const n=t.original;return!U(n)||!n.flag?null:e.jsx(kn,{})}function Fn({row:t,column:n,table:o}){var l;const s=m.useCallback(d=>{var r;(r=o.options.meta)==null||r.handleUpdate(t.index,n.id,d,!0)},[n.id,t.index,o.options.meta]),i=t.original;if(fe(i))return null;const a=i.custom[n.id]??"";return((l=n.columnDef.meta)==null?void 0:l.canWrite)?e.jsx(Xe,{initialValue:a,handleUpdate:s}):e.jsx(he,{multiline:!0,children:a})}function Bn(t,n,o){var x,h,E,f;const s=[],i=n===k.Edit,a=o?((x=o.options)==null?void 0:x.read)==="full":!0,c=o?((h=o.options)==null?void 0:h.write)==="full":!0,l=(E=o==null?void 0:o.options)!=null&&E.write?new Set(o.options.write.split(",")):new Set,d=(f=o==null?void 0:o.options)!=null&&f.read?new Set(o.options.read.split(",")):new Set,r=g=>a||d.has(g),u=g=>i&&(c||l.has(g));r("flag")&&s.push({accessorKey:"flag",id:"flag",header:"Flag",cell:$n,size:45,minSize:45,meta:{canWrite:u("flag")}}),r("cue")&&s.push({accessorKey:"cue",id:"cue",header:"Cue",cell:Ee,size:75,minSize:40,meta:{canWrite:u("cue")}}),r("timeStart")&&s.push({accessorKey:"timeStart",id:"timeStart",header:"Start",cell:Nn,size:75,minSize:75,meta:{canWrite:u("timeStart")}}),r("timeEnd")&&s.push({accessorKey:"timeEnd",id:"timeEnd",header:"End",cell:zn,size:75,minSize:75,meta:{canWrite:u("timeEnd")}}),r("duration")&&s.push({accessorKey:"duration",id:"duration",header:"Duration",cell:On,size:75,minSize:75,meta:{canWrite:u("duration")}}),r("title")&&s.push({accessorKey:"title",id:"title",header:"Title",cell:Ee,size:250,minSize:75,meta:{canWrite:u("title")}}),r("note")&&s.push({accessorKey:"note",id:"note",header:"Note",cell:Wn,size:250,minSize:75,meta:{canWrite:u("note")}});const p=Object.keys(t);for(let g=0;g<p.length;g++){const S=p[g],w=`custom-${S}`;r(w)&&s.push({accessorKey:S,id:S,header:t[S].label,cell:t[S].type==="text"?Fn:Pn,size:250,minSize:75,meta:{colour:t[S].colour,canWrite:u(w)}})}return s}const Ln="_emptyContainer_1dp7m_17",Hn="_emptyCell_1dp7m_21",An="_empty_1dp7m_17",Kn="_text_1dp7m_30",Q={emptyContainer:Ln,emptyCell:Hn,empty:An,text:Kn};function Un({text:t}){return e.jsx("tbody",{className:Q.emptyContainer,children:e.jsx("tr",{children:e.jsxs("td",{colSpan:99,className:Q.emptyCell,children:[e.jsx(kt,{className:Q.empty}),t&&e.jsx("span",{className:Q.text,children:t})]})})})}const Gn="_cuesheet_1f3ag_17",Vn="_resizer_1f3ag_37",Jn="_actionColumn_1f3ag_53",qn="_indexColumn_1f3ag_62",Qn="_tableHeader_1f3ag_73",O={cuesheet:Gn,resizer:Vn,actionColumn:Jn,indexColumn:qn,tableHeader:Qn};function Xn({columnId:t,colSpan:n,injectedStyles:o,children:s,draggable:i}){const{attributes:a,listeners:c,setNodeRef:l,transform:d,transition:r,isDragging:u}=rt({id:t}),p={...o,zIndex:u?2:"inherit",transform:lt.Translate.toString(d),transition:r};return e.jsxs("th",{ref:l,style:p,colSpan:n,tabIndex:-1,children:[e.jsx("div",{...a,...c,children:s}),i]})}function Zn({colSpan:t,injectedStyles:n,children:o,draggable:s}){return e.jsxs("th",{style:n,colSpan:t,tabIndex:-1,children:[e.jsx("div",{children:o}),s]})}function Ye({header:t}){return e.jsx("div",{onDoubleClick:()=>t.column.resetSize(),onMouseDown:t.getResizeHandler(),onTouchStart:t.getResizeHandler(),className:O.resizer})}function Yn({headerGroup:t,cuesheetMode:n}){const o=z(s=>s.hideIndexColumn);return e.jsxs("tr",{children:[n===k.Edit&&e.jsx("th",{className:O.actionColumn,tabIndex:-1}),!o&&e.jsx("th",{className:O.indexColumn,tabIndex:-1,children:"#"}),e.jsx(ct,{items:t.headers,strategy:ut,children:t.headers.map(s=>{var l,d;const i=(l=s.column.columnDef.meta)==null?void 0:l.colour,c={opacity:((d=s.column.columnDef.meta)==null?void 0:d.canWrite)?1:.6};if(i){const r=H(i);c.backgroundColor=r.backgroundColor,c.color=r.color}return e.jsx(Xn,{columnId:s.column.id,colSpan:s.colSpan,injectedStyles:{width:`calc(var(--header-${s==null?void 0:s.id}-size) * 1px)`,...c},draggable:e.jsx(Ye,{header:s}),children:s.isPlaceholder?null:K(s.column.columnDef.header,s.getContext())},s.column.columnDef.id)})},t.id)]},t.id)}function es({headerGroup:t,cuesheetMode:n}){const o=z(s=>s.hideIndexColumn);return e.jsxs("tr",{children:[n===k.Edit&&e.jsx("th",{className:O.actionColumn,tabIndex:-1}),!o&&e.jsx("th",{className:O.indexColumn,tabIndex:-1,children:"#"}),t.headers.map(s=>{var l,d;const i=(l=s.column.columnDef.meta)==null?void 0:l.colour,c={opacity:((d=s.column.columnDef.meta)==null?void 0:d.canWrite)?1:.6};if(i){const r=H(i);c.backgroundColor=r.backgroundColor,c.color=r.color}return e.jsx(Zn,{columnId:s.column.id,colSpan:s.colSpan,injectedStyles:{width:`calc(var(--header-${s==null?void 0:s.id}-size) * 1px)`,...c},draggable:e.jsx(Ye,{header:s}),children:s.isPlaceholder?null:K(s.column.columnDef.header,s.getContext())},s.column.columnDef.id)})]},t.id)}const ts="_delayRow_lk49a_106",ns={delayRow:ts};function ss({duration:t,injectedStyles:n,...o}){if(z(a=>a.hideDelays)||t===0)return null;const i=Qt(t,"expanded");return e.jsx("tr",{className:ns.delayRow,"data-testid":"cuesheet-delay",style:n,...o,children:e.jsx("td",{tabIndex:0,children:i})})}const os=m.memo(ss),ne=ue(t=>({isOpen:!1,entryId:null,entryType:null,entryIndex:null,parentId:null,position:{x:0,y:0},flag:null,openMenu:(n,o,s,i,a,c)=>t({isOpen:!0,position:n,entryId:o,entryType:s,entryIndex:i,parentId:a,flag:c}),closeMenu:()=>t({isOpen:!1})})),is="_actionColumn_1npa7_53",as="_indexColumn_1npa7_62",rs="_eventRow_1npa7_106",ls="_firstAfterGroup_1npa7_116",cs="_skip_1npa7_119",W={actionColumn:is,indexColumn:as,eventRow:rs,firstAfterGroup:ls,skip:cs};function us({rowId:t,id:n,eventIndex:o,colour:s,isFirstAfterGroup:i,isLoaded:a,isPast:c,groupColour:l,flag:d,skip:r,parent:u,rowIndex:p,table:x,injectedStyles:h,...E}){var G;const{cuesheetMode:f,hideIndexColumn:g}=((G=x.options.meta)==null?void 0:G.options)??{cuesheetMode:k.Edit,hideIndexColumn:!1},S=ne(I=>I.openMenu),{color:w,backgroundColor:j}=H(s),_=re(w),se=le({..._,alpha:_.alpha*.8}),oe=m.useMemo(()=>{if(a)return"#087A27";if(s){const I=re(H(s).backgroundColor);if(I!==null)return le({...I,alpha:I.alpha*.25})}},[s,a]);return e.jsxs("tr",{id:t,className:ee([W.eventRow,r&&W.skip,i&&W.firstAfterGroup,u&&W.hasParent]),style:{...h,opacity:`${c?"0.2":"1"}`,"--user-bg":l??"transparent"},"data-testid":"cuesheet-event",...E,children:[f===k.Edit&&e.jsx("td",{className:W.actionColumn,tabIndex:-1,role:"cell",children:e.jsx(te,{"aria-label":"Options",variant:"ghosted-white",size:"small",onClick:I=>{const V=I.currentTarget.getBoundingClientRect(),C=8+V.y+V.height/2;S({x:V.x,y:C},n,A.Event,p,u,d)},children:e.jsx(de,{})})}),!g&&e.jsx("td",{className:W.indexColumn,style:{backgroundColor:j,color:se},tabIndex:-1,role:"cell",children:o}),x.getRow(t).getVisibleCells().map(I=>e.jsx("td",{style:{width:`calc(var(--col-${I.column.id}-size) * 1px)`,backgroundColor:oe},tabIndex:-1,role:"cell",children:K(I.column.columnDef.cell,I.getContext())},I.id))]})}const ds="_actionColumn_1p2se_53",ms="_indexColumn_1p2se_62",fs="_groupRow_1p2se_106",ae={actionColumn:ds,indexColumn:ms,groupRow:fs};function ps({groupId:t,colour:n,rowId:o,rowIndex:s,table:i,injectedStyles:a,...c}){var u;const{cuesheetMode:l,hideIndexColumn:d}=((u=i.options.meta)==null?void 0:u.options)??{cuesheetMode:k.Edit,hideIndexColumn:!1},r=ne(p=>p.openMenu);return e.jsxs("tr",{className:ae.groupRow,style:{...a,"--user-bg":n},"data-testid":"cuesheet-group",...c,children:[l===k.Edit&&e.jsx("td",{className:ae.actionColumn,tabIndex:-1,role:"cell",children:e.jsx(te,{"aria-label":"Options",variant:"ghosted-white",size:"small",onClick:p=>{const x=p.currentTarget.getBoundingClientRect(),h=8+x.y+x.height/2;r({x:x.x,y:h},t,A.Group,s,null,null)},children:e.jsx(de,{})})}),!d&&e.jsx("td",{className:ae.indexColumn,tabIndex:-1,role:"cell"}),i.getRow(o).getVisibleCells().map(p=>e.jsx("td",{tabIndex:-1,style:{width:`calc(var(--col-${p.column.id}-size) * 1px)`},role:"cell",children:K(p.column.columnDef.cell,p.getContext())},p.id))]})}const hs="_actionColumn_plhap_53",xs="_indexColumn_plhap_62",gs="_milestoneRow_plhap_106",X={actionColumn:hs,indexColumn:xs,milestoneRow:gs};function Cs({entryId:t,isPast:n,parentBgColour:o,parentId:s,colour:i,rowId:a,rowIndex:c,table:l,injectedStyles:d,...r}){var E;const{cuesheetMode:u,hideIndexColumn:p}=((E=l.options.meta)==null?void 0:E.options)??{cuesheetMode:k.Edit,hideIndexColumn:!1},x=ne(f=>f.openMenu);let h;if(i){const f=re(H(i).backgroundColor);f!==null&&(h=le({...f,alpha:f.alpha*.25}))}return e.jsxs("tr",{className:ee([X.milestoneRow,!!o&&X.hasParent]),style:{...d,opacity:`${n?"0.2":"1"}`,"--user-bg":o??"transparent"},"data-testid":"cuesheet-milestone",...r,children:[u===k.Edit&&e.jsx("td",{className:X.actionColumn,tabIndex:-1,role:"cell",children:e.jsx(te,{"aria-label":"Options",variant:"ghosted-white",size:"small",onClick:f=>{const g=f.currentTarget.getBoundingClientRect(),S=8+g.y+g.height/2;x({x:g.x,y:S},t,A.Milestone,c,s,null)},children:e.jsx(de,{})})}),!p&&e.jsx("td",{className:X.indexColumn,tabIndex:-1,role:"cell",children:Tt}),l.getRow(a).getVisibleCells().map(f=>{const g=f.column.id!=="duration"&&f.column.id!=="timeStart"&&f.column.id!=="timeEnd";return e.jsx("td",{style:{width:`calc(var(--col-${f.column.id}-size) * 1px)`,backgroundColor:h,opacity:g?1:.4},tabIndex:-1,children:g&&K(f.column.columnDef.cell,f.getContext())},f.id)})]})}const xe=ue(t=>({canChangeMode:!1,canCreateEntries:!1,canEditEntries:!1,canFlag:!1,canShare:!1,setPermissions(n){t({canChangeMode:n.canChangeMode,canFlag:n.canFlag,canCreateEntries:n.canCreateEntries,canEditEntries:n.canEditEntries,canShare:n.canShare})}})),ys=m.memo(js);function js(){const{isOpen:t,entryId:n,entryIndex:o,parentId:s,flag:i,position:a,closeMenu:c}=ne(),{addEntry:l,clone:d,deleteEntry:r,move:u,updateEntry:p}=Ue(),x=ce(E=>E.setEditableEntry),h=xe();return t?e.jsx(Lt,{isOpen:!0,onClose:c,items:[{type:"item",label:"Edit...",onClick:()=>x(n),icon:ke,disabled:!h.canEditEntries},{type:"divider"},{type:"item",label:i?"Remove flag":"Add flag",onClick:()=>p({id:n,flag:!i}),icon:Ce,disabled:i===null||!h.canFlag},{type:"divider"},{type:"item",label:"Add event above",onClick:()=>l({type:A.Event,parent:s},{before:n}),icon:ye,disabled:!h.canCreateEntries},{type:"item",label:"Add event below",onClick:()=>l({type:A.Event,parent:s},{after:n}),icon:ye,disabled:!h.canCreateEntries},{type:"item",label:"Clone event",onClick:()=>d(n),icon:Ce,disabled:!h.canCreateEntries},{type:"divider"},{type:"item",label:"Move up",onClick:()=>u(n,"up"),icon:dt,disabled:o<1||!h.canEditEntries},{type:"item",label:"Move down",onClick:()=>u(n,"down"),icon:mt,disabled:!h.canEditEntries},{type:"divider"},{type:"item",label:"Delete",onClick:()=>r([n]),icon:ft,disabled:!h.canEditEntries}],position:a}):null}function bs(t){return e.jsx(pt,{style:{transform:"rotate(-45deg)"},...t})}function vs(){const{data:t}=It(),{data:n}=wt(),[o,s]=Te(),i=o&&t&&n;return e.jsxs(e.Fragment,{children:[e.jsxs(F,{onClick:s.open,render:e.jsx(N,{}),children:[e.jsx(bs,{}),"Share..."]}),e.jsx(Pe,{isOpen:o,onClose:s.close,title:"Share cuesheet view",showBackdrop:!0,showCloseButton:!0,bodyElements:i?e.jsx(Bt,{lockedPath:{value:Mt.Cuesheet,label:"Cuesheet"}}):null})]})}const Ss="_tableSettings_18k3s_17",Es="_sectionTitle_18k3s_29",_s="_option_18k3s_40",ks="_column_18k3s_47",Ts="_inline_18k3s_54",Is="_apart_18k3s_60",ws="_group_18k3s_65",Ms="_radioButton_18k3s_76",v={tableSettings:Ss,sectionTitle:Es,option:_s,column:ks,inline:Ts,apart:Is,group:ws,radioButton:Ms};function Rs({columns:t,handleResetResizing:n,handleResetReordering:o,handleClearToggles:s}){const i=xe(r=>r.canShare),a=m.use(Ne),[c,l]=Ie({key:a?`${a.alias}${Z.cuesheetMode}`:Z.cuesheetMode,defaultValue:a?k.Run:k.Edit}),d=r=>{const u=r.at(0);u&&l(u)};return e.jsxs(ht,{className:v.tableSettings,children:[e.jsx(Ds,{}),e.jsx(Ns,{columns:t,handleResetResizing:n,handleResetReordering:o,handleClearToggles:s}),e.jsxs(xt,{value:[c],onValueChange:d,className:ee([v.group,v.apart]),children:[e.jsx(F,{render:e.jsx(je,{}),value:k.Run,className:v.radioButton,children:"Run"}),e.jsx(F,{render:e.jsx(je,{}),value:k.Edit,className:v.radioButton,children:"Edit"})]}),i&&e.jsxs(e.Fragment,{children:[e.jsx(Ge,{orientation:"vertical"}),e.jsx(vs,{})]})]})}function Ds(){const t=z();return e.jsxs(we,{children:[e.jsx(Me,{render:e.jsx(F,{render:e.jsxs(N,{variant:"ghosted-white",children:[e.jsx(gt,{})," Settings",e.jsx(Re,{})]})})}),e.jsxs(Ve,{align:"start",className:v.inline,children:[e.jsxs("div",{className:v.column,children:[e.jsx(D,{className:v.sectionTitle,children:"Element visibility"}),e.jsxs(D,{className:v.option,children:[e.jsx($,{defaultChecked:t.hideTableSeconds,onCheckedChange:n=>t.setOption("hideTableSeconds",n)}),"Hide seconds in table"]}),e.jsxs(D,{className:v.option,children:[e.jsx($,{defaultChecked:t.hideIndexColumn,onCheckedChange:n=>t.setOption("hideIndexColumn",n)}),"Hide index column"]})]}),e.jsxs("div",{className:v.column,children:[e.jsx(D,{className:v.sectionTitle,children:"Table Behaviour"}),e.jsxs(D,{className:v.option,children:[e.jsx($,{defaultChecked:t.showDelayedTimes,onCheckedChange:n=>t.setOption("showDelayedTimes",n)}),"Show delayed times"]}),e.jsxs(D,{className:v.option,children:[e.jsx($,{defaultChecked:t.hideDelays,onCheckedChange:n=>t.setOption("hideDelays",n)}),"Hide delay entries"]})]})]})]})}function Ns({columns:t,handleResetResizing:n,handleResetReordering:o,handleClearToggles:s}){return e.jsxs(we,{children:[e.jsx(Me,{render:e.jsx(F,{render:e.jsxs(N,{variant:"ghosted-white",children:[e.jsx(ke,{})," View",e.jsx(Re,{})]})})}),e.jsxs(Ve,{align:"start",className:v.inline,children:[e.jsxs("div",{className:v.column,children:[e.jsx(D,{className:v.sectionTitle,children:"Column visibility"}),t.map(i=>{const a=i.columnDef.header,c=i.getIsVisible();return e.jsxs(D,{className:v.option,children:[e.jsx($,{defaultChecked:c,onCheckedChange:i.toggleVisibility}),a]},`${i.id}-${c}`)})]}),e.jsx(Ge,{orientation:"vertical"}),e.jsxs("div",{className:v.column,children:[e.jsx(D,{className:v.sectionTitle,children:"Reset Options"}),e.jsx(N,{size:"small",fluid:!0,onClick:s,children:"Show All"}),e.jsx(N,{size:"small",fluid:!0,onClick:n,children:"Reset Resizing"}),e.jsx(N,{size:"small",fluid:!0,onClick:o,children:"Reset Reordering"})]})]})]})}function zs({columns:t,cuesheetMode:n}){const{data:o,status:s}=At(),{updateEntry:i,updateTimer:a}=Ue(),c=z(C=>C.showDelayedTimes),l=z(C=>C.hideTableSeconds),d=z(C=>C.hideIndexColumn),{selectedEventId:r}=Rt(),u=m.useRef(null),{listeners:p}=Ct(),x=m.useMemo(()=>({handleUpdate:(C,b,T,R=!1)=>{const M=o[C];if(!(!M||M[b]===T)){if(R){i({id:M.id,custom:{[b]:T}});return}i({id:M.id,[b]:T})}},handleUpdateTimer:(C,b,T)=>{a(C,b,T,!0)},options:{showDelayedTimes:c,hideTableSeconds:l,cuesheetMode:n,hideIndexColumn:d}}),[n,o,d,l,c,i,a]),{columnOrder:h,resetColumnOrder:E}=qe(t),{columnSizing:f,setColumnSizing:g}=fn(),{columnVisibility:S,setColumnVisibility:w}=pn(),j=yt({data:o,columns:t,columnResizeMode:"onChange",state:{columnOrder:h,columnVisibility:S,columnSizing:f},onColumnVisibilityChange:w,onColumnSizingChange:g,getCoreRowModel:bt(),meta:x}),_=m.useCallback(()=>{j.toggleAllColumnsVisible(!0)},[j]),se=m.useCallback(()=>{g({})},[g]);m.useEffect(()=>{if(n===k.Edit||u.current===null||!r)return;const C=o.findIndex(b=>b.id===r);u.current.scrollToIndex({index:C,behavior:"smooth"})},[n,o,r]);const oe=m.useMemo(()=>{const C=j.getFlatHeaders(),b={};for(let T=0;T<C.length;T++){const R=C[T];R&&(b[`--header-${R.id}-size`]=R.getSize(),b[`--col-${R.column.id}-size`]=R.column.getSize())}return b},[j.getState().columnSizingInfo,j.getState().columnSizing]),G=j.getAllLeafColumns(),{rows:I}=j.getRowModel();return!o||s==="pending"?e.jsx(He,{text:"Loading..."}):e.jsxs(e.Fragment,{children:[e.jsx(Rs,{columns:G,handleResetResizing:se,handleResetReordering:E,handleClearToggles:_}),e.jsx(jt,{ref:u,data:o,increaseViewportBy:{top:100,bottom:200},components:{EmptyPlaceholder:()=>e.jsx(Un,{text:"No data in rundown"}),Table:({style:C,...b})=>e.jsx("table",{className:O.cuesheet,id:"cuesheet",style:{...C,...oe},...p,...b}),TableRow:({item:C,style:b,...T})=>{const R=T["data-index"],M=I[R],J=M.original.id,y=M.original;return Fe(y)?e.jsx(ps,{groupId:y.id,colour:y.colour,rowId:M.id,rowIndex:M.index,table:j,injectedStyles:b,...T},J):fe(y)?e.jsx(os,{duration:y.duration,injectedStyles:b,...T},J):$e(y)?e.jsx(Cs,{entryId:y.id,isPast:y.isPast,parentBgColour:y.groupColour,parentId:y.parent,colour:y.colour,rowId:M.id,rowIndex:R,table:j,injectedStyles:b,...T},J):e.jsx(us,{id:y.id,eventIndex:y.eventIndex,colour:y.colour,isFirstAfterGroup:y.isFirstAfterGroup,isLoaded:y.isLoaded,isPast:y.isPast,groupColour:y.groupColour,flag:y.flag,skip:y.skip,parent:y.parent,rowId:M.id,rowIndex:R,table:j,injectedStyles:b,...T},M.id)},TableHead:C=>e.jsx("thead",{className:O.tableHeader,...C})},fixedHeaderContent:()=>j.getHeaderGroups().map(C=>{const b=j.getState().columnSizingInfo.isResizingColumn?es:Yn;return e.jsx(b,{cuesheetMode:n,headerGroup:C},C.id)})}),e.jsx(ys,{})]})}const Os=m.memo(Ws);function Ws(){const{data:t,status:n}=qt(),o=xe(l=>l.setPermissions),s=m.use(Ne);m.useEffect(()=>{var l,d,r;if(s){const u=((l=s.options)==null?void 0:l.write)==="full";o({canChangeMode:((d=s.options)==null?void 0:d.write)!=="-",canCreateEntries:u,canEditEntries:u,canFlag:u||!!((r=s.options)!=null&&r.write.includes("flag")),canShare:!1})}else o({canChangeMode:!0,canCreateEntries:!0,canEditEntries:!0,canFlag:!0,canShare:Dt==="rw"})},[s,o]);const[i]=Ie({key:s?`${s.alias}${Z.cuesheetMode}`:Z.cuesheetMode,defaultValue:s?k.Run:k.Edit}),a=m.useMemo(()=>Bn(t,i,s),[t,i,s]),c=!t||n==="pending";return e.jsx(hn,{columns:a,children:c?e.jsx(He,{text:"Loading..."}):e.jsx(zs,{columns:a,cuesheetMode:i})})}const Ps="_tableWrapper_h9gr1_17",$s={tableWrapper:Ps};function Fs(){const[t,n]=Te();Ot("Cuesheet");const o=Nt();return e.jsxs(e.Fragment,{children:[e.jsx(zt,{isOpen:t,onClose:n.close}),e.jsx(sn,{}),e.jsxs("div",{className:$s.tableWrapper,"data-testid":"cuesheet",children:[e.jsx(Zt,{children:!o&&e.jsx(te,{"aria-label":"Toggle navigation",variant:"subtle-white",size:"xlarge",onClick:n.open,children:e.jsx(vt,{})})}),e.jsx(ln,{}),e.jsx(Os,{})]})]})}function xo(){return e.jsx(St,{permission:"operator",children:e.jsx(Fs,{})})}export{xo as default};
2
- //# sourceMappingURL=ProtectedCuesheet-D_zdkwM-.js.map