@openc3/vue-common 6.9.0 → 6.9.2

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 (429) hide show
  1. package/dist/{ArrayWidget-DJkuPBFS.cjs → ArrayWidget-Barb7cCJ.cjs} +2 -2
  2. package/dist/{ArrayWidget-DJkuPBFS.cjs.map → ArrayWidget-Barb7cCJ.cjs.map} +1 -1
  3. package/dist/{ArrayWidget-DLfNWDzN.js → ArrayWidget-DUTccTH3.js} +5 -5
  4. package/dist/{ArrayWidget-DLfNWDzN.js.map → ArrayWidget-DUTccTH3.js.map} +1 -1
  5. package/dist/{ArrayplotWidget-CoRsUxHG.js → ArrayplotWidget-BeNF76NM.js} +4 -4
  6. package/dist/{ArrayplotWidget-CoRsUxHG.js.map → ArrayplotWidget-BeNF76NM.js.map} +1 -1
  7. package/dist/{ArrayplotWidget-COGxmBEP.cjs → ArrayplotWidget-CQRRIpFr.cjs} +2 -2
  8. package/dist/{ArrayplotWidget-COGxmBEP.cjs.map → ArrayplotWidget-CQRRIpFr.cjs.map} +1 -1
  9. package/dist/{BarColumn-DHP-zQ4R.js → BarColumn-Dn6MDJoo.js} +3 -3
  10. package/dist/{BarColumn-DHP-zQ4R.js.map → BarColumn-Dn6MDJoo.js.map} +1 -1
  11. package/dist/{BarColumn-BaPaYtki.cjs → BarColumn-ooUZaRUq.cjs} +2 -2
  12. package/dist/{BarColumn-BaPaYtki.cjs.map → BarColumn-ooUZaRUq.cjs.map} +1 -1
  13. package/dist/{BlockWidget-DLncsLLX.cjs → BlockWidget-BDkZljH8.cjs} +2 -2
  14. package/dist/{BlockWidget-DLncsLLX.cjs.map → BlockWidget-BDkZljH8.cjs.map} +1 -1
  15. package/dist/{BlockWidget-BmHSFvOq.js → BlockWidget-BXQlPVQI.js} +5 -5
  16. package/dist/{BlockWidget-BmHSFvOq.js.map → BlockWidget-BXQlPVQI.js.map} +1 -1
  17. package/dist/{ButtonWidget-BLePbTf_.cjs → ButtonWidget-5ybX-zVD.cjs} +3 -3
  18. package/dist/{ButtonWidget-BLePbTf_.cjs.map → ButtonWidget-5ybX-zVD.cjs.map} +1 -1
  19. package/dist/{ButtonWidget-C3ZWRjZZ.js → ButtonWidget-D8ncnhlr.js} +11 -11
  20. package/dist/{ButtonWidget-C3ZWRjZZ.js.map → ButtonWidget-D8ncnhlr.js.map} +1 -1
  21. package/dist/{CanvasWidget-C8Sy9t9G.cjs → CanvasWidget-D4ZHOTxU.cjs} +2 -2
  22. package/dist/{CanvasWidget-C8Sy9t9G.cjs.map → CanvasWidget-D4ZHOTxU.cjs.map} +1 -1
  23. package/dist/{CanvasWidget-CL-XzPF4.js → CanvasWidget-IkZPgKME.js} +3 -3
  24. package/dist/{CanvasWidget-CL-XzPF4.js.map → CanvasWidget-IkZPgKME.js.map} +1 -1
  25. package/dist/{CanvasdotWidget-6MPKD5iZ.cjs → CanvasdotWidget-C_M5yCv9.cjs} +2 -2
  26. package/dist/{CanvasdotWidget-6MPKD5iZ.cjs.map → CanvasdotWidget-C_M5yCv9.cjs.map} +1 -1
  27. package/dist/{CanvasdotWidget-D8Y9DgVE.js → CanvasdotWidget-Ceu6X0ma.js} +3 -3
  28. package/dist/{CanvasdotWidget-D8Y9DgVE.js.map → CanvasdotWidget-Ceu6X0ma.js.map} +1 -1
  29. package/dist/{CanvasimageWidget-DYUaf3zy.cjs → CanvasimageWidget-BiWHp93X.cjs} +2 -2
  30. package/dist/{CanvasimageWidget-DYUaf3zy.cjs.map → CanvasimageWidget-BiWHp93X.cjs.map} +1 -1
  31. package/dist/{CanvasimageWidget-DHSGK_tD.js → CanvasimageWidget-Bnx5rUVW.js} +4 -4
  32. package/dist/{CanvasimageWidget-DHSGK_tD.js.map → CanvasimageWidget-Bnx5rUVW.js.map} +1 -1
  33. package/dist/{CanvasimagevalueWidget-Btt_fQfC.js → CanvasimagevalueWidget-CFO-XDML.js} +4 -4
  34. package/dist/{CanvasimagevalueWidget-Btt_fQfC.js.map → CanvasimagevalueWidget-CFO-XDML.js.map} +1 -1
  35. package/dist/{CanvasimagevalueWidget-Bu1ECOWl.cjs → CanvasimagevalueWidget-CVdY8iLq.cjs} +2 -2
  36. package/dist/{CanvasimagevalueWidget-Bu1ECOWl.cjs.map → CanvasimagevalueWidget-CVdY8iLq.cjs.map} +1 -1
  37. package/dist/{CanvaslabelWidget-BF_8RTjv.js → CanvaslabelWidget-C5wyN8dS.js} +3 -3
  38. package/dist/{CanvaslabelWidget-BF_8RTjv.js.map → CanvaslabelWidget-C5wyN8dS.js.map} +1 -1
  39. package/dist/{CanvaslabelWidget-Dik-ld55.cjs → CanvaslabelWidget-U4P4GDpI.cjs} +2 -2
  40. package/dist/{CanvaslabelWidget-Dik-ld55.cjs.map → CanvaslabelWidget-U4P4GDpI.cjs.map} +1 -1
  41. package/dist/{CanvaslabelvalueWidget-BBlKBoZO.cjs → CanvaslabelvalueWidget-C60wTi40.cjs} +2 -2
  42. package/dist/{CanvaslabelvalueWidget-BBlKBoZO.cjs.map → CanvaslabelvalueWidget-C60wTi40.cjs.map} +1 -1
  43. package/dist/{CanvaslabelvalueWidget-scbwaujI.js → CanvaslabelvalueWidget-CXr6zhdn.js} +3 -3
  44. package/dist/{CanvaslabelvalueWidget-scbwaujI.js.map → CanvaslabelvalueWidget-CXr6zhdn.js.map} +1 -1
  45. package/dist/{CanvaslineWidget-DN0ojc37.cjs → CanvaslineWidget-CzOtvkcR.cjs} +2 -2
  46. package/dist/{CanvaslineWidget-DN0ojc37.cjs.map → CanvaslineWidget-CzOtvkcR.cjs.map} +1 -1
  47. package/dist/{CanvaslineWidget-gRvm_-TT.js → CanvaslineWidget-DW2l3EAG.js} +3 -3
  48. package/dist/{CanvaslineWidget-gRvm_-TT.js.map → CanvaslineWidget-DW2l3EAG.js.map} +1 -1
  49. package/dist/{CanvaslinevalueWidget-Cz1XYp0r.cjs → CanvaslinevalueWidget-D20bbhm_.cjs} +2 -2
  50. package/dist/{CanvaslinevalueWidget-Cz1XYp0r.cjs.map → CanvaslinevalueWidget-D20bbhm_.cjs.map} +1 -1
  51. package/dist/{CanvaslinevalueWidget-CljziRek.js → CanvaslinevalueWidget-UJ0xa8-8.js} +3 -3
  52. package/dist/{CanvaslinevalueWidget-CljziRek.js.map → CanvaslinevalueWidget-UJ0xa8-8.js.map} +1 -1
  53. package/dist/{CheckbuttonWidget-BOabI_jE.js → CheckbuttonWidget-BF5cvQHd.js} +3 -3
  54. package/dist/{CheckbuttonWidget-BOabI_jE.js.map → CheckbuttonWidget-BF5cvQHd.js.map} +1 -1
  55. package/dist/{CheckbuttonWidget-B5jOzhZ4.cjs → CheckbuttonWidget-dStQF0Yp.cjs} +2 -2
  56. package/dist/{CheckbuttonWidget-B5jOzhZ4.cjs.map → CheckbuttonWidget-dStQF0Yp.cjs.map} +1 -1
  57. package/dist/{ClassificationBanners-BGDnMx4r.js → ClassificationBanners-CDc_06x9.js} +2 -2
  58. package/dist/{ClassificationBanners-BGDnMx4r.js.map → ClassificationBanners-CDc_06x9.js.map} +1 -1
  59. package/dist/{ClassificationBanners-CbcQDr3v.cjs → ClassificationBanners-CTChOmRf.cjs} +2 -2
  60. package/dist/{ClassificationBanners-CbcQDr3v.cjs.map → ClassificationBanners-CTChOmRf.cjs.map} +1 -1
  61. package/dist/{ComboboxWidget-_lxTm8Wb.cjs → ComboboxWidget-D4h-0V0x.cjs} +2 -2
  62. package/dist/{ComboboxWidget-_lxTm8Wb.cjs.map → ComboboxWidget-D4h-0V0x.cjs.map} +1 -1
  63. package/dist/{ComboboxWidget-BLXNYFiY.js → ComboboxWidget-Di1O9VBF.js} +3 -3
  64. package/dist/{ComboboxWidget-BLXNYFiY.js.map → ComboboxWidget-Di1O9VBF.js.map} +1 -1
  65. package/dist/{CriticalCmdDialog-CnNlsHRX.js → CriticalCmdDialog-CZHVDFjK.js} +4 -4
  66. package/dist/{CriticalCmdDialog-CnNlsHRX.js.map → CriticalCmdDialog-CZHVDFjK.js.map} +1 -1
  67. package/dist/{CriticalCmdDialog-niBmkudw.cjs → CriticalCmdDialog-EvK998xs.cjs} +2 -2
  68. package/dist/{CriticalCmdDialog-niBmkudw.cjs.map → CriticalCmdDialog-EvK998xs.cjs.map} +1 -1
  69. package/dist/{CustomIcon-h5X7369N.js → CustomIcon-DTfsnDJn.js} +6 -6
  70. package/dist/{CustomIcon-h5X7369N.js.map → CustomIcon-DTfsnDJn.js.map} +1 -1
  71. package/dist/CustomIcon-eie3rPKh.cjs +2 -0
  72. package/dist/{CustomIcon-Bop2mEnu.cjs.map → CustomIcon-eie3rPKh.cjs.map} +1 -1
  73. package/dist/{DateWidget-BvabEAhO.cjs → DateWidget-BAFINBB6.cjs} +2 -2
  74. package/dist/{DateWidget-BvabEAhO.cjs.map → DateWidget-BAFINBB6.cjs.map} +1 -1
  75. package/dist/{DateWidget-BTqLCtLS.js → DateWidget-GiUOvEZO.js} +3 -3
  76. package/dist/{DateWidget-BTqLCtLS.js.map → DateWidget-GiUOvEZO.js.map} +1 -1
  77. package/dist/{DetailsDialog-DgN9Jcio.cjs → DetailsDialog-DbRPJzDG.cjs} +2 -2
  78. package/dist/{DetailsDialog-DgN9Jcio.cjs.map → DetailsDialog-DbRPJzDG.cjs.map} +1 -1
  79. package/dist/{DetailsDialog-BNCS3QAe.js → DetailsDialog-Ji0jA6sd.js} +3 -3
  80. package/dist/{DetailsDialog-BNCS3QAe.js.map → DetailsDialog-Ji0jA6sd.js.map} +1 -1
  81. package/dist/{DynamicWidget-BWEVCUfd.cjs → DynamicWidget-BNfJRfR5.cjs} +2 -2
  82. package/dist/{DynamicWidget-BWEVCUfd.cjs.map → DynamicWidget-BNfJRfR5.cjs.map} +1 -1
  83. package/dist/{DynamicWidget-CfMtj7H8.js → DynamicWidget-DHL7pbgW.js} +2 -2
  84. package/dist/{DynamicWidget-CfMtj7H8.js.map → DynamicWidget-DHL7pbgW.js.map} +1 -1
  85. package/dist/{EventListDialog-C2pwmD0d.js → EventListDialog-BLLIQyah.js} +129 -123
  86. package/dist/EventListDialog-BLLIQyah.js.map +1 -0
  87. package/dist/EventListDialog-CEDNXaKw.cjs +2 -0
  88. package/dist/EventListDialog-CEDNXaKw.cjs.map +1 -0
  89. package/dist/{FormatvalueWidget-ulLzg1E-.cjs → FormatvalueWidget-DJkp_gM_.cjs} +2 -2
  90. package/dist/{FormatvalueWidget-ulLzg1E-.cjs.map → FormatvalueWidget-DJkp_gM_.cjs.map} +1 -1
  91. package/dist/{FormatvalueWidget-CLYx8qbg.js → FormatvalueWidget-JVEG-72b.js} +4 -4
  92. package/dist/{FormatvalueWidget-CLYx8qbg.js.map → FormatvalueWidget-JVEG-72b.js.map} +1 -1
  93. package/dist/{Graph-BliBYJxD.js → Graph-B3v4RJRC.js} +102 -95
  94. package/dist/Graph-B3v4RJRC.js.map +1 -0
  95. package/dist/Graph-BOZlkDbl.cjs +2 -0
  96. package/dist/Graph-BOZlkDbl.cjs.map +1 -0
  97. package/dist/{GraphWidget-g-0vO4_S.cjs → GraphWidget-DD7SIV2k.cjs} +2 -2
  98. package/dist/{GraphWidget-g-0vO4_S.cjs.map → GraphWidget-DD7SIV2k.cjs.map} +1 -1
  99. package/dist/{GraphWidget-Cb6Ozf54.js → GraphWidget-DGe0TweO.js} +2 -2
  100. package/dist/{GraphWidget-Cb6Ozf54.js.map → GraphWidget-DGe0TweO.js.map} +1 -1
  101. package/dist/{HorizontalWidget-AY2M01qP.js → HorizontalWidget-B_JnT2Q0.js} +3 -3
  102. package/dist/{HorizontalWidget-AY2M01qP.js.map → HorizontalWidget-B_JnT2Q0.js.map} +1 -1
  103. package/dist/{HorizontalWidget-BiEZZpZQ.cjs → HorizontalWidget-CIDUx-Qp.cjs} +2 -2
  104. package/dist/{HorizontalWidget-BiEZZpZQ.cjs.map → HorizontalWidget-CIDUx-Qp.cjs.map} +1 -1
  105. package/dist/{HorizontalboxWidget-CWq4ej6k.cjs → HorizontalboxWidget-BQYyunr-.cjs} +2 -2
  106. package/dist/{HorizontalboxWidget-CWq4ej6k.cjs.map → HorizontalboxWidget-BQYyunr-.cjs.map} +1 -1
  107. package/dist/{HorizontalboxWidget-2MEKvq_C.js → HorizontalboxWidget-D_1bF3p-.js} +6 -6
  108. package/dist/{HorizontalboxWidget-2MEKvq_C.js.map → HorizontalboxWidget-D_1bF3p-.js.map} +1 -1
  109. package/dist/{HorizontallineWidget-DgpOPA7q.js → HorizontallineWidget-Bqb82J2C.js} +3 -3
  110. package/dist/{HorizontallineWidget-DgpOPA7q.js.map → HorizontallineWidget-Bqb82J2C.js.map} +1 -1
  111. package/dist/{HorizontallineWidget-Dm5G1l4A.cjs → HorizontallineWidget-dYDzYNW1.cjs} +2 -2
  112. package/dist/{HorizontallineWidget-Dm5G1l4A.cjs.map → HorizontallineWidget-dYDzYNW1.cjs.map} +1 -1
  113. package/dist/{IframeWidget-DDw5t7eV.cjs → IframeWidget-92T3yaK4.cjs} +2 -2
  114. package/dist/{IframeWidget-DDw5t7eV.cjs.map → IframeWidget-92T3yaK4.cjs.map} +1 -1
  115. package/dist/{IframeWidget-UKKUl7k5.js → IframeWidget-BUOO2Zav.js} +3 -3
  116. package/dist/{IframeWidget-UKKUl7k5.js.map → IframeWidget-BUOO2Zav.js.map} +1 -1
  117. package/dist/{ImageLoader-C-CIL4YD.js → ImageLoader-C6RNmpHN.js} +2 -2
  118. package/dist/{ImageLoader-C-CIL4YD.js.map → ImageLoader-C6RNmpHN.js.map} +1 -1
  119. package/dist/{ImageLoader-9TCd0KxL.cjs → ImageLoader-Dq0Qs61n.cjs} +2 -2
  120. package/dist/{ImageLoader-9TCd0KxL.cjs.map → ImageLoader-Dq0Qs61n.cjs.map} +1 -1
  121. package/dist/{ImageviewerWidget-DhuQH5Io.js → ImageviewerWidget-Fd7r9VTx.js} +3 -3
  122. package/dist/{ImageviewerWidget-DhuQH5Io.js.map → ImageviewerWidget-Fd7r9VTx.js.map} +1 -1
  123. package/dist/{ImageviewerWidget-DpXzLOpF.cjs → ImageviewerWidget-Y6xx7zZX.cjs} +2 -2
  124. package/dist/{ImageviewerWidget-DpXzLOpF.cjs.map → ImageviewerWidget-Y6xx7zZX.cjs.map} +1 -1
  125. package/dist/{InterfacesTab-CiVfsUia.cjs → InterfacesTab-DgLHHNke.cjs} +2 -2
  126. package/dist/{InterfacesTab-CiVfsUia.cjs.map → InterfacesTab-DgLHHNke.cjs.map} +1 -1
  127. package/dist/{InterfacesTab-Dq3oAKqz.js → InterfacesTab-dig9pzGg.js} +10 -10
  128. package/dist/{InterfacesTab-Dq3oAKqz.js.map → InterfacesTab-dig9pzGg.js.map} +1 -1
  129. package/dist/{LabelWidget-SO9zqcNN.js → LabelWidget-BVxcrEXf.js} +3 -3
  130. package/dist/{LabelWidget-SO9zqcNN.js.map → LabelWidget-BVxcrEXf.js.map} +1 -1
  131. package/dist/{LabelWidget-D-m2gFIZ.cjs → LabelWidget-BqN6Noag.cjs} +2 -2
  132. package/dist/{LabelWidget-D-m2gFIZ.cjs.map → LabelWidget-BqN6Noag.cjs.map} +1 -1
  133. package/dist/{LabelledWidget-DWoM5AJ5.js → LabelledWidget-ZZJPwPpI.js} +5 -5
  134. package/dist/{LabelledWidget-DWoM5AJ5.js.map → LabelledWidget-ZZJPwPpI.js.map} +1 -1
  135. package/dist/{LabelledWidget-BFfsD2wz.cjs → LabelledWidget-eR2Dar84.cjs} +2 -2
  136. package/dist/{LabelledWidget-BFfsD2wz.cjs.map → LabelledWidget-eR2Dar84.cjs.map} +1 -1
  137. package/dist/{LabelprogressbarWidget-D3vnkvQZ.js → LabelprogressbarWidget-C2vkWITx.js} +5 -5
  138. package/dist/{LabelprogressbarWidget-D3vnkvQZ.js.map → LabelprogressbarWidget-C2vkWITx.js.map} +1 -1
  139. package/dist/{LabelprogressbarWidget-B8x5YimU.cjs → LabelprogressbarWidget-D-Oxgeeg.cjs} +2 -2
  140. package/dist/{LabelprogressbarWidget-B8x5YimU.cjs.map → LabelprogressbarWidget-D-Oxgeeg.cjs.map} +1 -1
  141. package/dist/{LabelsparklineWidget-DyPaUfc9.cjs → LabelsparklineWidget-B0q6o8ro.cjs} +2 -2
  142. package/dist/{LabelsparklineWidget-DyPaUfc9.cjs.map → LabelsparklineWidget-B0q6o8ro.cjs.map} +1 -1
  143. package/dist/{LabelsparklineWidget-DO0T-Jot.js → LabelsparklineWidget-CSlvTtVj.js} +5 -5
  144. package/dist/{LabelsparklineWidget-DO0T-Jot.js.map → LabelsparklineWidget-CSlvTtVj.js.map} +1 -1
  145. package/dist/{LabelvalueWidget-B6BbNFnk.js → LabelvalueWidget-6MxCpBTc.js} +5 -5
  146. package/dist/{LabelvalueWidget-B6BbNFnk.js.map → LabelvalueWidget-6MxCpBTc.js.map} +1 -1
  147. package/dist/{LabelvalueWidget-cTPG6Xqi.cjs → LabelvalueWidget-DbCpaJBW.cjs} +2 -2
  148. package/dist/{LabelvalueWidget-cTPG6Xqi.cjs.map → LabelvalueWidget-DbCpaJBW.cjs.map} +1 -1
  149. package/dist/{LabelvaluedescWidget-CxfL-H9C.js → LabelvaluedescWidget-8mNs15uI.js} +10 -10
  150. package/dist/{LabelvaluedescWidget-CxfL-H9C.js.map → LabelvaluedescWidget-8mNs15uI.js.map} +1 -1
  151. package/dist/{LabelvaluedescWidget-C4sIZ0md.cjs → LabelvaluedescWidget-BzcfT8oZ.cjs} +2 -2
  152. package/dist/{LabelvaluedescWidget-C4sIZ0md.cjs.map → LabelvaluedescWidget-BzcfT8oZ.cjs.map} +1 -1
  153. package/dist/{LabelvaluelimitsbarWidget-CBnU6Afl.cjs → LabelvaluelimitsbarWidget-Cc7NNKOt.cjs} +2 -2
  154. package/dist/{LabelvaluelimitsbarWidget-CBnU6Afl.cjs.map → LabelvaluelimitsbarWidget-Cc7NNKOt.cjs.map} +1 -1
  155. package/dist/{LabelvaluelimitsbarWidget-BT5k9mHv.js → LabelvaluelimitsbarWidget-jeDT8JjR.js} +5 -5
  156. package/dist/{LabelvaluelimitsbarWidget-BT5k9mHv.js.map → LabelvaluelimitsbarWidget-jeDT8JjR.js.map} +1 -1
  157. package/dist/{LabelvaluelimitscolumnWidget-CwoMfO0P.cjs → LabelvaluelimitscolumnWidget-CNqHPGpL.cjs} +2 -2
  158. package/dist/{LabelvaluelimitscolumnWidget-CwoMfO0P.cjs.map → LabelvaluelimitscolumnWidget-CNqHPGpL.cjs.map} +1 -1
  159. package/dist/{LabelvaluelimitscolumnWidget-DUbmxh4p.js → LabelvaluelimitscolumnWidget-DfO5Yb79.js} +6 -6
  160. package/dist/{LabelvaluelimitscolumnWidget-DUbmxh4p.js.map → LabelvaluelimitscolumnWidget-DfO5Yb79.js.map} +1 -1
  161. package/dist/{LabelvaluerangebarWidget-DB4gw6Rd.cjs → LabelvaluerangebarWidget-CnDgjH-G.cjs} +2 -2
  162. package/dist/{LabelvaluerangebarWidget-DB4gw6Rd.cjs.map → LabelvaluerangebarWidget-CnDgjH-G.cjs.map} +1 -1
  163. package/dist/{LabelvaluerangebarWidget-DexAc2UB.js → LabelvaluerangebarWidget-D23BEk-N.js} +5 -5
  164. package/dist/{LabelvaluerangebarWidget-DexAc2UB.js.map → LabelvaluerangebarWidget-D23BEk-N.js.map} +1 -1
  165. package/dist/Layout-Dd5e3p-K.cjs +2 -0
  166. package/dist/{Layout-DvBekli8.cjs.map → Layout-Dd5e3p-K.cjs.map} +1 -1
  167. package/dist/{Layout-Dd6dRf3R.js → Layout-DuiUWxWc.js} +2 -2
  168. package/dist/{Layout-Dd6dRf3R.js.map → Layout-DuiUWxWc.js.map} +1 -1
  169. package/dist/{LedWidget-D1RwHb_V.js → LedWidget-9IAav1IH.js} +5 -5
  170. package/dist/{LedWidget-D1RwHb_V.js.map → LedWidget-9IAav1IH.js.map} +1 -1
  171. package/dist/{LedWidget-a99ygZOA.cjs → LedWidget-CQkF1v5x.cjs} +2 -2
  172. package/dist/{LedWidget-a99ygZOA.cjs.map → LedWidget-CQkF1v5x.cjs.map} +1 -1
  173. package/dist/{LimitsbarWidget-DaHpj-rM.cjs → LimitsbarWidget-C4jNTGa9.cjs} +2 -2
  174. package/dist/{LimitsbarWidget-DaHpj-rM.cjs.map → LimitsbarWidget-C4jNTGa9.cjs.map} +1 -1
  175. package/dist/{LimitsbarWidget-ClOmoV50.js → LimitsbarWidget-DqaTaWO1.js} +3 -3
  176. package/dist/{LimitsbarWidget-ClOmoV50.js.map → LimitsbarWidget-DqaTaWO1.js.map} +1 -1
  177. package/dist/{LimitscolorWidget-CBUoEYKp.js → LimitscolorWidget-4g3UVzsW.js} +3 -3
  178. package/dist/{LimitscolorWidget-CBUoEYKp.js.map → LimitscolorWidget-4g3UVzsW.js.map} +1 -1
  179. package/dist/{LimitscolorWidget-D4nPHQlI.cjs → LimitscolorWidget-BjlXWw_j.cjs} +2 -2
  180. package/dist/{LimitscolorWidget-D4nPHQlI.cjs.map → LimitscolorWidget-BjlXWw_j.cjs.map} +1 -1
  181. package/dist/{LimitscolumnWidget-wIx0L9hb.cjs → LimitscolumnWidget-BLZE1Zfh.cjs} +2 -2
  182. package/dist/{LimitscolumnWidget-wIx0L9hb.cjs.map → LimitscolumnWidget-BLZE1Zfh.cjs.map} +1 -1
  183. package/dist/{LimitscolumnWidget-hsHkmY-_.js → LimitscolumnWidget-pR-tLgFG.js} +3 -3
  184. package/dist/{LimitscolumnWidget-hsHkmY-_.js.map → LimitscolumnWidget-pR-tLgFG.js.map} +1 -1
  185. package/dist/{LinegraphWidget-CXrKtxOo.js → LinegraphWidget-DMcegwyu.js} +5 -5
  186. package/dist/{LinegraphWidget-CXrKtxOo.js.map → LinegraphWidget-DMcegwyu.js.map} +1 -1
  187. package/dist/{LinegraphWidget-BRnwhfEQ.cjs → LinegraphWidget-adpA8cjD.cjs} +2 -2
  188. package/dist/{LinegraphWidget-BRnwhfEQ.cjs.map → LinegraphWidget-adpA8cjD.cjs.map} +1 -1
  189. package/dist/{MatrixbycolumnsWidget-CsogVU9c.js → MatrixbycolumnsWidget--31rW1Mx.js} +4 -4
  190. package/dist/{MatrixbycolumnsWidget-CsogVU9c.js.map → MatrixbycolumnsWidget--31rW1Mx.js.map} +1 -1
  191. package/dist/{MatrixbycolumnsWidget-3jldaS14.cjs → MatrixbycolumnsWidget-2lqTNOqb.cjs} +2 -2
  192. package/dist/{MatrixbycolumnsWidget-3jldaS14.cjs.map → MatrixbycolumnsWidget-2lqTNOqb.cjs.map} +1 -1
  193. package/dist/{MicroservicesTab-3pNZZ5I0.cjs → MicroservicesTab-BDkTm3LD.cjs} +2 -2
  194. package/dist/{MicroservicesTab-3pNZZ5I0.cjs.map → MicroservicesTab-BDkTm3LD.cjs.map} +1 -1
  195. package/dist/{MicroservicesTab-DzEvbxlM.js → MicroservicesTab-DhisErku.js} +5 -5
  196. package/dist/{MicroservicesTab-DzEvbxlM.js.map → MicroservicesTab-DhisErku.js.map} +1 -1
  197. package/dist/{Openc3Screen-CD3C_EUo.cjs → Openc3Screen-B_8bygux.cjs} +5 -5
  198. package/dist/Openc3Screen-B_8bygux.cjs.map +1 -0
  199. package/dist/{Openc3Screen-Cqm5Xtd-.js → Openc3Screen-zVSKWUkb.js} +237 -232
  200. package/dist/Openc3Screen-zVSKWUkb.js.map +1 -0
  201. package/dist/{OutputDialog-7M4L50tA.js → OutputDialog-D3zlQlpE.js} +3 -3
  202. package/dist/{OutputDialog-7M4L50tA.js.map → OutputDialog-D3zlQlpE.js.map} +1 -1
  203. package/dist/{OutputDialog-CnDQxHTZ.cjs → OutputDialog-DxEYVYA3.cjs} +2 -2
  204. package/dist/{OutputDialog-CnDQxHTZ.cjs.map → OutputDialog-DxEYVYA3.cjs.map} +1 -1
  205. package/dist/{PackagesTab-N4SD1Pxj.js → PackagesTab-Bjy3y4fK.js} +4 -4
  206. package/dist/{PackagesTab-N4SD1Pxj.js.map → PackagesTab-Bjy3y4fK.js.map} +1 -1
  207. package/dist/{PackagesTab-DPPXZvoV.cjs → PackagesTab-CVytftqm.cjs} +2 -2
  208. package/dist/{PackagesTab-DPPXZvoV.cjs.map → PackagesTab-CVytftqm.cjs.map} +1 -1
  209. package/dist/PluginsTab-BvwrAskE.cjs +6 -0
  210. package/dist/PluginsTab-BvwrAskE.cjs.map +1 -0
  211. package/dist/{PluginsTab-C7PH2Wym.js → PluginsTab-Di5nXctJ.js} +375 -294
  212. package/dist/PluginsTab-Di5nXctJ.js.map +1 -0
  213. package/dist/{ProgressbarWidget-CPeGR-Az.cjs → ProgressbarWidget-COa_sGKn.cjs} +2 -2
  214. package/dist/{ProgressbarWidget-CPeGR-Az.cjs.map → ProgressbarWidget-COa_sGKn.cjs.map} +1 -1
  215. package/dist/{ProgressbarWidget-CO6CEkxP.js → ProgressbarWidget-DGAYHWEj.js} +3 -3
  216. package/dist/{ProgressbarWidget-CO6CEkxP.js.map → ProgressbarWidget-DGAYHWEj.js.map} +1 -1
  217. package/dist/{RadiobuttonWidget-DucgkAYD.cjs → RadiobuttonWidget-CQPXrm0x.cjs} +2 -2
  218. package/dist/{RadiobuttonWidget-DucgkAYD.cjs.map → RadiobuttonWidget-CQPXrm0x.cjs.map} +1 -1
  219. package/dist/{RadiobuttonWidget-DrxUclws.js → RadiobuttonWidget-Cbx15iyl.js} +3 -3
  220. package/dist/{RadiobuttonWidget-DrxUclws.js.map → RadiobuttonWidget-Cbx15iyl.js.map} +1 -1
  221. package/dist/{RadiogroupWidget-C7oVFRf3.cjs → RadiogroupWidget-C15ugChT.cjs} +2 -2
  222. package/dist/{RadiogroupWidget-C7oVFRf3.cjs.map → RadiogroupWidget-C15ugChT.cjs.map} +1 -1
  223. package/dist/{RadiogroupWidget-DN9C38cg.js → RadiogroupWidget-DW3nTccf.js} +3 -3
  224. package/dist/{RadiogroupWidget-DN9C38cg.js.map → RadiogroupWidget-DW3nTccf.js.map} +1 -1
  225. package/dist/{RangebarWidget-Da9S3KMB.cjs → RangebarWidget-5ekc5Lyp.cjs} +2 -2
  226. package/dist/{RangebarWidget-Da9S3KMB.cjs.map → RangebarWidget-5ekc5Lyp.cjs.map} +1 -1
  227. package/dist/{RangebarWidget-5uQTfLMP.js → RangebarWidget-BZba6dPt.js} +3 -3
  228. package/dist/{RangebarWidget-5uQTfLMP.js.map → RangebarWidget-BZba6dPt.js.map} +1 -1
  229. package/dist/{RedisTab-BFTaPNRc.cjs → RedisTab-C89xySPI.cjs} +2 -2
  230. package/dist/{RedisTab-BFTaPNRc.cjs.map → RedisTab-C89xySPI.cjs.map} +1 -1
  231. package/dist/{RedisTab-Cyrr_g9k.js → RedisTab-Dnqd_dRk.js} +14 -14
  232. package/dist/{RedisTab-Cyrr_g9k.js.map → RedisTab-Dnqd_dRk.js.map} +1 -1
  233. package/dist/{RollupWidget-DK0eFASs.cjs → RollupWidget-ILwSCjGa.cjs} +2 -2
  234. package/dist/{RollupWidget-DK0eFASs.cjs.map → RollupWidget-ILwSCjGa.cjs.map} +1 -1
  235. package/dist/{RollupWidget-B0DCULnu.js → RollupWidget-Mley0KZv.js} +3 -3
  236. package/dist/{RollupWidget-B0DCULnu.js.map → RollupWidget-Mley0KZv.js.map} +1 -1
  237. package/dist/{RoutersTab-B8JIxjdI.cjs → RoutersTab-CokDnWfK.cjs} +2 -2
  238. package/dist/{RoutersTab-B8JIxjdI.cjs.map → RoutersTab-CokDnWfK.cjs.map} +1 -1
  239. package/dist/{RoutersTab-BAfpG8k3.js → RoutersTab-Dg3i3h0M.js} +7 -7
  240. package/dist/{RoutersTab-BAfpG8k3.js.map → RoutersTab-Dg3i3h0M.js.map} +1 -1
  241. package/dist/ScriptChooser-BzQcgW8g.cjs +2 -0
  242. package/dist/ScriptChooser-BzQcgW8g.cjs.map +1 -0
  243. package/dist/{ScriptChooser-ahp4Tu3O.js → ScriptChooser-DL8ct71n.js} +32 -27
  244. package/dist/ScriptChooser-DL8ct71n.js.map +1 -0
  245. package/dist/{ScrollwindowWidget-xM_R_Arq.cjs → ScrollwindowWidget-B4dv7icF.cjs} +2 -2
  246. package/dist/{ScrollwindowWidget-xM_R_Arq.cjs.map → ScrollwindowWidget-B4dv7icF.cjs.map} +1 -1
  247. package/dist/{ScrollwindowWidget-BOkZQgtf.js → ScrollwindowWidget-DvsnpEcJ.js} +4 -4
  248. package/dist/{ScrollwindowWidget-BOkZQgtf.js.map → ScrollwindowWidget-DvsnpEcJ.js.map} +1 -1
  249. package/dist/{SecretsTab-D5RxHYVp.js → SecretsTab-CIrHz_ni.js} +8 -8
  250. package/dist/{SecretsTab-D5RxHYVp.js.map → SecretsTab-CIrHz_ni.js.map} +1 -1
  251. package/dist/{SecretsTab-DoHYppoO.cjs → SecretsTab-Dudp9OiZ.cjs} +2 -2
  252. package/dist/{SecretsTab-DoHYppoO.cjs.map → SecretsTab-Dudp9OiZ.cjs.map} +1 -1
  253. package/dist/{SettingsTab-CKGQEwd_.js → SettingsTab-DztpIQm7.js} +5 -5
  254. package/dist/{SettingsTab-CKGQEwd_.js.map → SettingsTab-DztpIQm7.js.map} +1 -1
  255. package/dist/{SettingsTab-Dvnzqzdp.cjs → SettingsTab-MipB-sIq.cjs} +2 -2
  256. package/dist/{SettingsTab-Dvnzqzdp.cjs.map → SettingsTab-MipB-sIq.cjs.map} +1 -1
  257. package/dist/{SignalWidget-Cis0Xkea.js → SignalWidget-BE-MGigb.js} +3 -3
  258. package/dist/{SignalWidget-Cis0Xkea.js.map → SignalWidget-BE-MGigb.js.map} +1 -1
  259. package/dist/{SignalWidget-BWKgNMdV.cjs → SignalWidget-CQqD33Lg.cjs} +2 -2
  260. package/dist/{SignalWidget-BWKgNMdV.cjs.map → SignalWidget-CQqD33Lg.cjs.map} +1 -1
  261. package/dist/{SimpleTextDialog-D2mEDvGY.js → SimpleTextDialog-BkUovtW9.js} +7 -7
  262. package/dist/SimpleTextDialog-BkUovtW9.js.map +1 -0
  263. package/dist/{SimpleTextDialog-BCNn5FZh.cjs → SimpleTextDialog-NSW_V3iT.cjs} +2 -2
  264. package/dist/SimpleTextDialog-NSW_V3iT.cjs.map +1 -0
  265. package/dist/{SpacerWidget-CLcqC2Qk.js → SpacerWidget-DXayYLSi.js} +3 -3
  266. package/dist/{SpacerWidget-CLcqC2Qk.js.map → SpacerWidget-DXayYLSi.js.map} +1 -1
  267. package/dist/{SpacerWidget-_daU5QnM.cjs → SpacerWidget-QlVjOsLl.cjs} +2 -2
  268. package/dist/{SpacerWidget-_daU5QnM.cjs.map → SpacerWidget-QlVjOsLl.cjs.map} +1 -1
  269. package/dist/{SparklineWidget-CTp83eZ-.js → SparklineWidget-BNYHhnFk.js} +5 -5
  270. package/dist/{SparklineWidget-CTp83eZ-.js.map → SparklineWidget-BNYHhnFk.js.map} +1 -1
  271. package/dist/{SparklineWidget-qRnlPzJ_.cjs → SparklineWidget-mi0idVbP.cjs} +2 -2
  272. package/dist/{SparklineWidget-qRnlPzJ_.cjs.map → SparklineWidget-mi0idVbP.cjs.map} +1 -1
  273. package/dist/{TabbookWidget-C0Fvv-o5.cjs → TabbookWidget-BMaDTham.cjs} +2 -2
  274. package/dist/{TabbookWidget-C0Fvv-o5.cjs.map → TabbookWidget-BMaDTham.cjs.map} +1 -1
  275. package/dist/{TabbookWidget-uucd-zsX.js → TabbookWidget-BbnCFFoI.js} +3 -3
  276. package/dist/{TabbookWidget-uucd-zsX.js.map → TabbookWidget-BbnCFFoI.js.map} +1 -1
  277. package/dist/TargetPacketItemChooser-DezS0jS3.cjs +2 -0
  278. package/dist/TargetPacketItemChooser-DezS0jS3.cjs.map +1 -0
  279. package/dist/{TargetPacketItemChooser-CXpSx-eA.js → TargetPacketItemChooser-Z0Tn5eXv.js} +110 -55
  280. package/dist/TargetPacketItemChooser-Z0Tn5eXv.js.map +1 -0
  281. package/dist/{TargetsTab-CM4ABe5y.js → TargetsTab-CDd9F7X3.js} +15 -15
  282. package/dist/{TargetsTab-CM4ABe5y.js.map → TargetsTab-CDd9F7X3.js.map} +1 -1
  283. package/dist/{TargetsTab-Ixql3xzm.cjs → TargetsTab-D32K2JiE.cjs} +2 -2
  284. package/dist/{TargetsTab-Ixql3xzm.cjs.map → TargetsTab-D32K2JiE.cjs.map} +1 -1
  285. package/dist/{TextBoxDialog-DbD8P4Xc.cjs → TextBoxDialog-DXG7H7kQ.cjs} +2 -2
  286. package/dist/{TextBoxDialog-DbD8P4Xc.cjs.map → TextBoxDialog-DXG7H7kQ.cjs.map} +1 -1
  287. package/dist/{TextBoxDialog-CdFHdj5W.js → TextBoxDialog-Xs-gitZd.js} +2 -2
  288. package/dist/{TextBoxDialog-CdFHdj5W.js.map → TextBoxDialog-Xs-gitZd.js.map} +1 -1
  289. package/dist/{TextboxWidget-C2n38ti5.js → TextboxWidget-BmANrs4B.js} +5 -5
  290. package/dist/{TextboxWidget-C2n38ti5.js.map → TextboxWidget-BmANrs4B.js.map} +1 -1
  291. package/dist/{TextboxWidget-DrdMC0EB.cjs → TextboxWidget-D1pZXnLn.cjs} +2 -2
  292. package/dist/{TextboxWidget-DrdMC0EB.cjs.map → TextboxWidget-D1pZXnLn.cjs.map} +1 -1
  293. package/dist/{TextfieldWidget-VeOem1w3.cjs → TextfieldWidget-CTIX-cUX.cjs} +2 -2
  294. package/dist/{TextfieldWidget-VeOem1w3.cjs.map → TextfieldWidget-CTIX-cUX.cjs.map} +1 -1
  295. package/dist/{TextfieldWidget--HTv9ddk.js → TextfieldWidget-SJaLN05z.js} +3 -3
  296. package/dist/{TextfieldWidget--HTv9ddk.js.map → TextfieldWidget-SJaLN05z.js.map} +1 -1
  297. package/dist/{TimeWidget-C9ltUWFh.cjs → TimeWidget-Dytou9_B.cjs} +2 -2
  298. package/dist/{TimeWidget-C9ltUWFh.cjs.map → TimeWidget-Dytou9_B.cjs.map} +1 -1
  299. package/dist/{TimeWidget-CPNVZaUM.js → TimeWidget-jB9OkZz4.js} +3 -3
  300. package/dist/{TimeWidget-CPNVZaUM.js.map → TimeWidget-jB9OkZz4.js.map} +1 -1
  301. package/dist/{TitleWidget-IuUVZkLh.cjs → TitleWidget-CjgUoNOz.cjs} +2 -2
  302. package/dist/{TitleWidget-IuUVZkLh.cjs.map → TitleWidget-CjgUoNOz.cjs.map} +1 -1
  303. package/dist/{TitleWidget-Cp0cb6V8.js → TitleWidget-mcKJD8dB.js} +3 -3
  304. package/dist/{TitleWidget-Cp0cb6V8.js.map → TitleWidget-mcKJD8dB.js.map} +1 -1
  305. package/dist/{ToolsTab-DGjyBWkp.js → ToolsTab-BbUbC7aQ.js} +4 -4
  306. package/dist/{ToolsTab-DGjyBWkp.js.map → ToolsTab-BbUbC7aQ.js.map} +1 -1
  307. package/dist/{ToolsTab-Bgrj0eGr.cjs → ToolsTab-DIjQdiL-.cjs} +3 -3
  308. package/dist/{ToolsTab-Bgrj0eGr.cjs.map → ToolsTab-DIjQdiL-.cjs.map} +1 -1
  309. package/dist/{TopBar-DLz-U85G.cjs → TopBar-Bn4u3OQj.cjs} +2 -2
  310. package/dist/{TopBar-DLz-U85G.cjs.map → TopBar-Bn4u3OQj.cjs.map} +1 -1
  311. package/dist/{TopBar-B48yYbtR.js → TopBar-LuMoAqrA.js} +3 -3
  312. package/dist/{TopBar-B48yYbtR.js.map → TopBar-LuMoAqrA.js.map} +1 -1
  313. package/dist/{UpgradeToEnterpriseDialog-DtckZO3_.cjs → UpgradeToEnterpriseDialog-BDYrclMq.cjs} +2 -2
  314. package/dist/{UpgradeToEnterpriseDialog-DtckZO3_.cjs.map → UpgradeToEnterpriseDialog-BDYrclMq.cjs.map} +1 -1
  315. package/dist/{UpgradeToEnterpriseDialog-C2Ggr_Xd.js → UpgradeToEnterpriseDialog-XVvb43ME.js} +3 -3
  316. package/dist/{UpgradeToEnterpriseDialog-C2Ggr_Xd.js.map → UpgradeToEnterpriseDialog-XVvb43ME.js.map} +1 -1
  317. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B-k6legU.cjs +1498 -0
  318. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B-k6legU.cjs.map +1 -0
  319. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-ByJi6BSv.js +30699 -0
  320. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-ByJi6BSv.js.map +1 -0
  321. package/dist/{VWidget-Cf9MXbCl.cjs → VWidget-B22Re761.cjs} +2 -2
  322. package/dist/{VWidget-Cf9MXbCl.cjs.map → VWidget-B22Re761.cjs.map} +1 -1
  323. package/dist/{VWidget-DQGJRgAk.js → VWidget-D8c5Lci7.js} +3 -3
  324. package/dist/{VWidget-DQGJRgAk.js.map → VWidget-D8c5Lci7.js.map} +1 -1
  325. package/dist/{ValueWidget-BmXm9dYt.cjs → ValueWidget-CyN11MWT.cjs} +2 -2
  326. package/dist/{ValueWidget-BmXm9dYt.cjs.map → ValueWidget-CyN11MWT.cjs.map} +1 -1
  327. package/dist/{ValueWidget-Bk1RFjks.js → ValueWidget-SNDW9Het.js} +5 -5
  328. package/dist/{ValueWidget-Bk1RFjks.js.map → ValueWidget-SNDW9Het.js.map} +1 -1
  329. package/dist/{ValuelimitsbarWidget-PjCpjhsr.cjs → ValuelimitsbarWidget-B86GYsdL.cjs} +2 -2
  330. package/dist/{ValuelimitsbarWidget-PjCpjhsr.cjs.map → ValuelimitsbarWidget-B86GYsdL.cjs.map} +1 -1
  331. package/dist/{ValuelimitsbarWidget-C0HIBYh2.js → ValuelimitsbarWidget-Zw91SPeP.js} +5 -5
  332. package/dist/{ValuelimitsbarWidget-C0HIBYh2.js.map → ValuelimitsbarWidget-Zw91SPeP.js.map} +1 -1
  333. package/dist/{ValuelimitscolumnWidget-BTT90uyX.js → ValuelimitscolumnWidget-B9unbzmn.js} +5 -5
  334. package/dist/{ValuelimitscolumnWidget-BTT90uyX.js.map → ValuelimitscolumnWidget-B9unbzmn.js.map} +1 -1
  335. package/dist/{ValuelimitscolumnWidget-BGiDDUI_.cjs → ValuelimitscolumnWidget-DPh3TEH4.cjs} +2 -2
  336. package/dist/{ValuelimitscolumnWidget-BGiDDUI_.cjs.map → ValuelimitscolumnWidget-DPh3TEH4.cjs.map} +1 -1
  337. package/dist/{ValuerangebarWidget-ClmX-qH_.cjs → ValuerangebarWidget-Dm0754rv.cjs} +2 -2
  338. package/dist/{ValuerangebarWidget-ClmX-qH_.cjs.map → ValuerangebarWidget-Dm0754rv.cjs.map} +1 -1
  339. package/dist/{ValuerangebarWidget-CcQw_XK9.js → ValuerangebarWidget-DwNzPUzz.js} +5 -5
  340. package/dist/{ValuerangebarWidget-CcQw_XK9.js.map → ValuerangebarWidget-DwNzPUzz.js.map} +1 -1
  341. package/dist/{VerticalWidget-BeDWsvP6.cjs → VerticalWidget-BAH0R-Tj.cjs} +2 -2
  342. package/dist/{VerticalWidget-BeDWsvP6.cjs.map → VerticalWidget-BAH0R-Tj.cjs.map} +1 -1
  343. package/dist/{VerticalWidget-CNtFQv3R.js → VerticalWidget-gv7hWDKU.js} +3 -3
  344. package/dist/{VerticalWidget-CNtFQv3R.js.map → VerticalWidget-gv7hWDKU.js.map} +1 -1
  345. package/dist/{VerticalboxWidget-Yxmz1SnU.js → VerticalboxWidget-CZb5ebV7.js} +6 -6
  346. package/dist/{VerticalboxWidget-Yxmz1SnU.js.map → VerticalboxWidget-CZb5ebV7.js.map} +1 -1
  347. package/dist/{VerticalboxWidget-DlokKDBD.cjs → VerticalboxWidget-F9StIQ_8.cjs} +2 -2
  348. package/dist/{VerticalboxWidget-DlokKDBD.cjs.map → VerticalboxWidget-F9StIQ_8.cjs.map} +1 -1
  349. package/dist/{Widget-LsyjS7ZS.js → Widget-DNBZcUQg.js} +2 -2
  350. package/dist/{Widget-LsyjS7ZS.js.map → Widget-DNBZcUQg.js.map} +1 -1
  351. package/dist/{Widget-HC1_yuQg.cjs → Widget-DghDRiv6.cjs} +2 -2
  352. package/dist/{Widget-HC1_yuQg.cjs.map → Widget-DghDRiv6.cjs.map} +1 -1
  353. package/dist/cmdUtilities-C5lf-N2L.js +44 -0
  354. package/dist/{cmdUtilities-BMsSNjt_.js.map → cmdUtilities-C5lf-N2L.js.map} +1 -1
  355. package/dist/cmdUtilities-DDCksp2R.cjs +2 -0
  356. package/dist/{cmdUtilities-ChD8v8-7.cjs.map → cmdUtilities-DDCksp2R.cjs.map} +1 -1
  357. package/dist/components.cjs +2 -2
  358. package/dist/components.cjs.map +1 -1
  359. package/dist/components.js +83 -83
  360. package/dist/components.js.map +1 -1
  361. package/dist/icons.cjs +1 -1
  362. package/dist/icons.js +1 -1
  363. package/dist/{index-DS1ACWVr.js → index-BUPRVmV-.js} +144 -144
  364. package/dist/index-BUPRVmV-.js.map +1 -0
  365. package/dist/{index-Nd4O4kac.cjs → index-BWTUBIkL.cjs} +7 -7
  366. package/dist/index-BWTUBIkL.cjs.map +1 -0
  367. package/dist/plugins.cjs +2 -2
  368. package/dist/plugins.cjs.map +1 -1
  369. package/dist/plugins.js +87 -85
  370. package/dist/plugins.js.map +1 -1
  371. package/dist/purify.es-BuxjWxA2.js +554 -0
  372. package/dist/purify.es-BuxjWxA2.js.map +1 -0
  373. package/dist/purify.es-d7tb6jjJ.cjs +3 -0
  374. package/dist/purify.es-d7tb6jjJ.cjs.map +1 -0
  375. package/dist/{settings-DCxXjkio.js → settings-BC-CN37t.js} +2 -2
  376. package/dist/{settings-DCxXjkio.js.map → settings-BC-CN37t.js.map} +1 -1
  377. package/dist/{settings-zRw8EylV.cjs → settings-DHUu0bEd.cjs} +2 -2
  378. package/dist/{settings-zRw8EylV.cjs.map → settings-DHUu0bEd.cjs.map} +1 -1
  379. package/dist/tools/admin.cjs +5 -5
  380. package/dist/tools/admin.cjs.map +1 -1
  381. package/dist/tools/admin.js +600 -844
  382. package/dist/tools/admin.js.map +1 -1
  383. package/dist/tools/base.cjs +1 -1
  384. package/dist/tools/base.js +6 -6
  385. package/dist/tools/calendar.cjs +1 -1
  386. package/dist/tools/calendar.js +1 -1
  387. package/dist/tools/scriptrunner.cjs +9 -9
  388. package/dist/tools/scriptrunner.cjs.map +1 -1
  389. package/dist/tools/scriptrunner.js +899 -881
  390. package/dist/tools/scriptrunner.js.map +1 -1
  391. package/dist/util.cjs +1 -1
  392. package/dist/util.js +1 -1
  393. package/dist/vue-common.css +1 -1
  394. package/dist/widgets.cjs +1 -1
  395. package/dist/widgets.js +64 -64
  396. package/package.json +18 -24
  397. package/dist/CustomIcon-Bop2mEnu.cjs +0 -2
  398. package/dist/EventListDialog-B8rnN9Zi.cjs +0 -2
  399. package/dist/EventListDialog-B8rnN9Zi.cjs.map +0 -1
  400. package/dist/EventListDialog-C2pwmD0d.js.map +0 -1
  401. package/dist/Graph-BliBYJxD.js.map +0 -1
  402. package/dist/Graph-DxC2MPYf.cjs +0 -2
  403. package/dist/Graph-DxC2MPYf.cjs.map +0 -1
  404. package/dist/Layout-DvBekli8.cjs +0 -2
  405. package/dist/Openc3Screen-CD3C_EUo.cjs.map +0 -1
  406. package/dist/Openc3Screen-Cqm5Xtd-.js.map +0 -1
  407. package/dist/PluginsTab-C7PH2Wym.js.map +0 -1
  408. package/dist/PluginsTab-xzPlEMYj.cjs +0 -6
  409. package/dist/PluginsTab-xzPlEMYj.cjs.map +0 -1
  410. package/dist/ScriptChooser-ahp4Tu3O.js.map +0 -1
  411. package/dist/ScriptChooser-ma6P0WuM.cjs +0 -2
  412. package/dist/ScriptChooser-ma6P0WuM.cjs.map +0 -1
  413. package/dist/SimpleTextDialog-BCNn5FZh.cjs.map +0 -1
  414. package/dist/SimpleTextDialog-D2mEDvGY.js.map +0 -1
  415. package/dist/TargetPacketItemChooser-CAl-fNql.cjs +0 -2
  416. package/dist/TargetPacketItemChooser-CAl-fNql.cjs.map +0 -1
  417. package/dist/TargetPacketItemChooser-CXpSx-eA.js.map +0 -1
  418. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B1Hzjyj0.cjs +0 -1498
  419. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B1Hzjyj0.cjs.map +0 -1
  420. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-JEZNdnan.js +0 -30611
  421. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-JEZNdnan.js.map +0 -1
  422. package/dist/cmdUtilities-BMsSNjt_.js +0 -46
  423. package/dist/cmdUtilities-ChD8v8-7.cjs +0 -2
  424. package/dist/index-DS1ACWVr.js.map +0 -1
  425. package/dist/index-Nd4O4kac.cjs.map +0 -1
  426. package/dist/purify.es-GHnZTJ9O.cjs +0 -3
  427. package/dist/purify.es-GHnZTJ9O.cjs.map +0 -1
  428. package/dist/purify.es-eYFoHPwR.js +0 -529
  429. package/dist/purify.es-eYFoHPwR.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventListDialog-BLLIQyah.js","sources":["../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/add.js","../src/tools/calendar/CreateDialog.js","../src/tools/calendar/ActivityCreateDialog.vue","../src/tools/calendar/ColorSelectForm.vue","../src/tools/calendar/DeleteItem.js","../src/tools/calendar/MetadataInputForm.vue","../src/tools/calendar/MetadataCreateDialog.vue","../src/tools/calendar/NoteCreateDialog.vue","../src/tools/calendar/EventListDialog.vue"],"sourcesContent":["import { addDays } from \"./addDays.js\";\nimport { addMonths } from \"./addMonths.js\";\nimport { constructFrom } from \"./constructFrom.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link add} function options.\n */\n\n/**\n * @name add\n * @category Common Helpers\n * @summary Add the specified years, months, weeks, days, hours, minutes, and seconds to the given date.\n *\n * @description\n * Add the specified years, months, weeks, days, hours, minutes, and seconds to the given date.\n *\n * @typeParam DateType - The `Date` type the function operates on. Gets inferred from passed arguments. Allows using extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param duration - The object with years, months, weeks, days, hours, minutes, and seconds to be added.\n * @param options - An object with options\n *\n * @returns The new date with the seconds added\n *\n * @example\n * // Add the following duration to 1 September 2014, 10:19:50\n * const result = add(new Date(2014, 8, 1, 10, 19, 50), {\n * years: 2,\n * months: 9,\n * weeks: 1,\n * days: 7,\n * hours: 5,\n * minutes: 9,\n * seconds: 30,\n * })\n * //=> Thu Jun 15 2017 15:29:20\n */\nexport function add(date, duration, options) {\n const {\n years = 0,\n months = 0,\n weeks = 0,\n days = 0,\n hours = 0,\n minutes = 0,\n seconds = 0,\n } = duration;\n\n // Add years and months\n const _date = toDate(date, options?.in);\n const dateWithMonths =\n months || years ? addMonths(_date, months + years * 12) : _date;\n\n // Add weeks and days\n const dateWithDays =\n days || weeks ? addDays(dateWithMonths, days + weeks * 7) : dateWithMonths;\n\n // Add days, hours, minutes, and seconds\n const minutesToAdd = minutes + hours * 60;\n const secondsToAdd = seconds + minutesToAdd * 60;\n const msToAdd = secondsToAdd * 1000;\n\n return constructFrom(options?.in || date, +dateWithDays + msToAdd);\n}\n\n// Fallback for modularized imports:\nexport default add;\n","/*\n# Copyright 2023 OpenC3, Inc.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport { add, format, parse } from 'date-fns'\n\nexport default {\n props: {\n date: {\n type: String,\n },\n time: {\n type: String,\n },\n timeZone: {\n type: String,\n },\n },\n data() {\n return {\n startDate: '',\n startTime: '',\n endDate: '',\n endTime: '',\n }\n },\n methods: {\n calcStartDateTime: function () {\n if (this.date) {\n this.startDate = this.date\n this.endDate = this.date\n } else {\n this.startDate = format(new Date(), 'yyyy-MM-dd')\n this.endDate = format(new Date(), 'yyyy-MM-dd')\n }\n let ms = 1000 * 60 * 30 // 30 min\n let start = null\n if (this.time) {\n start = parse(this.time, 'HH:mm:ss', new Date())\n // Round down so the start is the beginning of the time box where they clicked\n start = new Date(Math.floor(start.getTime() / ms) * ms)\n } else {\n // Round up so the start is in the future\n start = new Date(Math.ceil(new Date().getTime() / ms) * ms)\n }\n this.startTime = format(start, 'HH:mm:ss')\n this.endTime = format(add(start, { minutes: 30 }), 'HH:mm:ss')\n },\n },\n}\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-dialog v-model=\"show\" persistent width=\"600\" @keydown.esc=\"clearHandler\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span v-if=\"activity\">Edit Activity</span>\n <span v-else>Create Activity</span>\n <v-spacer />\n <v-btn\n icon=\"mdi-close-box\"\n variant=\"text\"\n density=\"compact\"\n data-test=\"close-note-icon\"\n @click=\"clearHandler\"\n />\n </v-toolbar>\n <v-stepper\n v-model=\"dialogStep\"\n :items=\"['Activity Times', 'Activity Type']\"\n >\n <template v-if=\"dialogStep === 1\" #actions>\n <v-row class=\"ma-0 px-6 pb-4\">\n <v-spacer />\n <v-btn\n color=\"primary\"\n :disabled=\"validationError\"\n @click=\"dialogStep = 2\"\n >\n Next\n </v-btn>\n </v-row>\n </template>\n\n <template v-if=\"dialogStep === 2\" #actions>\n <v-row class=\"ma-0 px-6 pb-4\">\n <v-btn variant=\"text\" @click=\"() => (dialogStep -= 1)\">\n Previous\n </v-btn>\n <v-spacer />\n <v-btn variant=\"outlined\" class=\"mr-4\" @click=\"clearHandler\">\n Cancel\n </v-btn>\n <v-btn\n type=\"submit\"\n color=\"primary\"\n :disabled=\"!!error\"\n @click.prevent=\"submitHandler\"\n >\n Ok\n </v-btn>\n </v-row>\n </template>\n\n <template #item.1>\n <v-card-text>\n <div class=\"pr-2\">\n <v-select\n v-model=\"timeline\"\n density=\"compact\"\n hide-details\n variant=\"outlined\"\n :items=\"timelineNames\"\n label=\"Timeline\"\n data-test=\"activity-select-timeline\"\n class=\"pb-2\"\n >\n </v-select>\n <v-text-field\n v-model=\"customTitle\"\n type=\"text\"\n label=\"Custom Title\"\n class=\"pb-2\"\n data-test=\"activity-custom-title\"\n hide-details\n variant=\"outlined\"\n density=\"compact\"\n />\n <v-textarea\n v-model=\"notes\"\n label=\"Notes\"\n class=\"py-2 mb-2\"\n data-test=\"activity-notes\"\n hide-details\n variant=\"outlined\"\n density=\"compact\"\n rows=\"3\"\n />\n <v-row dense>\n <v-text-field\n v-model=\"startDate\"\n type=\"date\"\n label=\"Start Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"activity-start-date\"\n />\n <v-text-field\n v-model=\"startTime\"\n type=\"time\"\n step=\"1\"\n label=\"Start Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"activity-start-time\"\n />\n </v-row>\n <v-row dense>\n <v-text-field\n v-model=\"endDate\"\n type=\"date\"\n label=\"End Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"activity-end-date\"\n />\n <v-text-field\n v-model=\"endTime\"\n type=\"time\"\n step=\"1\"\n label=\"End Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"activity-end-time\"\n />\n </v-row>\n <v-row class=\"pl-3\">\n <v-checkbox\n v-model=\"recurring\"\n :disabled=\"!!activity\"\n label=\"Recurring\"\n hide-details\n data-test=\"recurring\"\n >\n </v-checkbox>\n </v-row>\n <v-row v-if=\"recurring\">\n <v-col>\n <div class=\"repeat\">Repeat every</div>\n </v-col>\n <v-col>\n <v-text-field\n v-model=\"frequency\"\n :disabled=\"!!activity\"\n density=\"compact\"\n variant=\"outlined\"\n single-line\n hide-details\n data-test=\"recurring-frequency\"\n /></v-col>\n <v-col>\n <v-select\n v-model=\"timeSpan\"\n :disabled=\"!!activity\"\n :items=\"timeSpans\"\n style=\"primary\"\n hide-details\n density=\"compact\"\n variant=\"outlined\"\n data-test=\"recurring-span\"\n />\n </v-col>\n </v-row>\n <v-row v-if=\"recurring\" style=\"padding-bottom: 10px\">\n <v-col>\n <div class=\"repeat\">Ending</div>\n </v-col>\n <v-col>\n <v-text-field\n v-model=\"recurringEndDate\"\n type=\"date\"\n label=\"End Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n :disabled=\"!!activity\"\n data-test=\"recurring-end-date\"\n /></v-col>\n <v-col>\n <v-text-field\n v-model=\"recurringEndTime\"\n type=\"time\"\n step=\"1\"\n label=\"End Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n :disabled=\"!!activity\"\n data-test=\"recurring-end-time\"\n /></v-col>\n </v-row>\n <v-row>\n <span\n v-show=\"timeError\"\n class=\"ma-2 text-red\"\n v-text=\"timeError\"\n />\n </v-row>\n </div>\n </v-card-text>\n </template>\n\n <template #item.2>\n <v-card-text>\n <div class=\"pr-2\">\n <v-select\n v-model=\"kind\"\n density=\"compact\"\n hide-details\n variant=\"outlined\"\n :items=\"types\"\n label=\"Activity Type\"\n data-test=\"activity-select-type\"\n class=\"pb-2\"\n >\n </v-select>\n <div v-if=\"kind === 'COMMAND'\">\n <v-textarea\n v-model=\"activityData\"\n label=\"Command Input\"\n rows=\"1\"\n readonly\n auto-grow\n data-test=\"activity-cmd\"\n @click:control=\"editItem()\"\n />\n </div>\n <div v-else-if=\"kind === 'SCRIPT'\" class=\"ma-3\">\n <script-chooser @file=\"fileHandler\" />\n <environment-chooser v-model=\"activityEnvironment\" />\n </div>\n <div v-else>\n <span class=\"ma-2\"> No required input </span>\n </div>\n <v-row v-show=\"typeError\" class=\"mt-2\">\n <span class=\"ma-2 text-red\" v-text=\"typeError\" />\n </v-row>\n </div>\n </v-card-text>\n </template>\n </v-stepper>\n </v-card>\n </v-dialog>\n\n <!-- Command Editor Dialog -->\n <v-dialog\n v-model=\"showCommandDialog\"\n max-width=\"1200\"\n persistent\n scrollable\n @keydown.esc=\"closeCommandDialog\"\n >\n <v-card>\n <v-card-title class=\"d-flex align-center\">\n <span>{{ dialogTitle }}</span>\n <v-spacer />\n <v-btn icon=\"mdi-close\" variant=\"text\" @click=\"closeCommandDialog\" />\n </v-card-title>\n <v-card-text class=\"pa-0\">\n <div v-if=\"dialogError\" class=\"error-message\">\n <v-icon class=\"mr-2\" color=\"error\">mdi-alert-circle</v-icon>\n <span class=\"flex-grow-1\">{{ dialogError }}</span>\n <v-btn\n icon=\"mdi-close\"\n size=\"small\"\n variant=\"text\"\n color=\"error\"\n class=\"ml-2\"\n @click=\"clearDialogError\"\n />\n </div>\n <command-editor\n ref=\"commandEditor\"\n :send-disabled=\"false\"\n :states-in-hex=\"statesInHex\"\n :show-ignored-params=\"showIgnoredParams\"\n :cmd-raw=\"cmdRaw\"\n :cmd-string=\"dialogCmdString\"\n :show-command-button=\"false\"\n @build-cmd=\"updateCommand($event)\"\n />\n </v-card-text>\n <v-card-actions>\n <v-spacer />\n <v-btn variant=\"outlined\" @click=\"closeCommandDialog\"> Cancel </v-btn>\n <v-btn color=\"primary\" variant=\"flat\" @click=\"updateCommand()\">\n Update Command\n </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n </div>\n</template>\n\n<script>\nimport { Api } from '@openc3/js-common/services'\nimport { EnvironmentChooser, ScriptChooser, CommandEditor } from '@/components'\nimport { TimeFilters } from '@/util'\nimport CreateDialog from './CreateDialog'\n\nexport default {\n components: {\n EnvironmentChooser,\n ScriptChooser,\n CommandEditor,\n },\n mixins: [CreateDialog, TimeFilters],\n props: {\n modelValue: Boolean,\n timelines: {\n type: Array,\n required: true,\n },\n activity: {\n type: Object,\n default: null,\n },\n },\n data() {\n return {\n timeline: null,\n dialogStep: 1,\n kind: '',\n types: ['COMMAND', 'SCRIPT', 'RESERVE'],\n activityData: '',\n activityEnvironment: [],\n customTitle: '',\n notes: '',\n rules: {\n required: (value) => !!value || 'Required',\n },\n recurring: false,\n recurringEndDate: null,\n recurringEndTime: null,\n frequency: 90,\n timeSpan: 'minutes',\n timeSpans: ['minutes', 'hours', 'days'],\n showCommandDialog: false,\n dialogTitle: 'Add Command',\n dialogError: '',\n dialogCmdString: null,\n }\n },\n computed: {\n timeError: function () {\n const now = new Date()\n const start = Date.parse(`${this.startDate}T${this.startTime}`)\n const end = Date.parse(`${this.endDate}T${this.endTime}`)\n if (start === end) {\n return 'Invalid start, end time. Activity must have different start and end times.'\n }\n if (now > start) {\n return 'Invalid start time. Activity must be in the future.'\n }\n if (start > end) {\n return 'Invalid start time. Activity start before end.'\n }\n return null\n },\n typeError: function () {\n if (!this.timeline) {\n return 'Activity must have a timeline selected.'\n }\n if (this.kind !== 'RESERVE' && !this.activityData) {\n return 'No data is selected or inputted'\n }\n return null\n },\n timelineNames: function () {\n return this.timelines.map((timeline) => {\n return timeline.name\n })\n },\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n validationError: function () {\n return !!this.timeError || !this.timeline\n },\n },\n mounted: function () {\n this.updateValues()\n },\n methods: {\n changeKind: function (inputKind) {\n if (inputKind === this.kind) {\n return\n }\n this.kind = inputKind\n this.activityData = ''\n },\n fileHandler: function (event) {\n this.activityData = event\n },\n updateValues: function () {\n this.dialogStep = 1\n if (this.activity) {\n this.timeline = this.activity.name\n const sDate = new Date(this.activity.start * 1000)\n const eDate = new Date(this.activity.stop * 1000)\n this.startDate = this.formatDate(sDate, this.timeZone)\n this.startTime = this.formatTimeHMS(sDate, this.timeZone)\n this.endDate = this.formatDate(eDate, this.timeZone)\n this.endTime = this.formatTimeHMS(eDate, this.timeZone)\n this.kind = this.activity.kind.toUpperCase()\n this.activityData = this.activity.data[this.activity.kind]\n this.activityEnvironment = this.activity.data.environment\n this.customTitle = this.activity.data.customTitle || ''\n this.notes = this.activity.data.notes || ''\n if (this.activity.recurring?.uuid) {\n this.recurring = true\n const rDate = new Date(this.activity.recurring.end * 1000)\n this.recurringEndDate = this.formatDate(rDate, this.timeZone)\n this.recurringEndTime = this.formatTimeHMS(rDate, this.timeZone)\n this.frequency = this.activity.recurring.frequency\n this.timeSpan = this.activity.recurring.span\n }\n } else {\n this.calcStartDateTime()\n this.recurringEndDate = this.startDate\n this.recurringEndTime = this.startTime\n this.kind = ''\n this.activityData = ''\n this.activityEnvironment = []\n this.customTitle = ''\n this.notes = ''\n this.timeline = this.timelineNames[0]\n }\n },\n clearHandler: function () {\n this.show = !this.show\n },\n submitHandler() {\n // Call the api to create a new activity to add to the activities array\n let start = null\n let stop = null // API takes stop instead of end\n let recurringEnd = null\n if (this.timeZone === 'local') {\n start = new Date(this.startDate + ' ' + this.startTime).toISOString()\n stop = new Date(this.endDate + ' ' + this.endTime).toISOString()\n if (this.recurring) {\n recurringEnd = new Date(\n this.recurringEndDate + ' ' + this.recurringEndTime,\n ).toISOString()\n }\n } else {\n start = new Date(\n this.startDate + ' ' + this.startTime + 'Z',\n ).toISOString()\n stop = new Date(this.endDate + ' ' + this.endTime + 'Z').toISOString()\n if (this.recurring) {\n recurringEnd = new Date(\n this.recurringEndDate + ' ' + this.recurringEndTime + 'Z',\n ).toISOString()\n }\n }\n const kind = this.kind.toLowerCase()\n let data = {\n environment: this.activityEnvironment,\n customTitle: this.customTitle,\n notes: this.notes,\n }\n data[kind] = this.activityData\n let recurring = {}\n if (this.recurring) {\n recurring = {\n frequency: this.frequency,\n span: this.timeSpan,\n end: recurringEnd,\n }\n }\n if (this.activity) {\n Api.put(\n `/openc3-api/timeline/${this.activity.name}/activity/${this.activity.start}`,\n {\n data: { start, stop, kind, data, recurring },\n },\n )\n .then((response) => {\n const activityTime = this.formatSeconds(\n new Date(response.data.start * 1000),\n )\n this.$notify.normal({\n title: 'Updated Activity',\n body: `${activityTime} (${response.data.start}) on timeline: ${response.data.name}`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n .catch((error) => {\n this.show = !this.show\n })\n } else {\n Api.post(`/openc3-api/timeline/${this.timeline}/activities`, {\n data: { start, stop, kind, data, recurring },\n })\n .then((response) => {\n const activityTime = this.formatSeconds(\n new Date(response.data.start * 1000),\n )\n this.$notify.normal({\n title: 'Created Activity',\n body: `${activityTime} (${response.data.start}) on timeline: ${response.data.name}`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n .catch((error) => {\n this.show = !this.show\n })\n }\n // We don't do the $emit or set show here because it has to be in the callback\n this.clearHandler()\n },\n editItem: function () {\n // Set up dialog for editing\n this.dialogTitle = 'Edit Command'\n this.dialogCmdString = this.activityData\n this.showCommandDialog = true\n },\n closeCommandDialog: function () {\n this.showCommandDialog = false\n this.dialogCmdString = null\n this.dialogError = ''\n },\n clearDialogError: function () {\n this.dialogError = ''\n },\n updateCommand: function () {\n let commandString = ''\n try {\n commandString = this.$refs.commandEditor.getCmdString()\n } catch (error) {\n this.dialogError = error.message || 'Please fix command parameters'\n return\n }\n this.activityData = commandString\n this.showCommandDialog = false\n },\n },\n}\n</script>\n\n<style scoped>\n.repeat {\n padding-top: 10px;\n text-align: right;\n}\n\n.v-stepper--vertical .v-stepper__content {\n width: auto;\n margin: 0px 0px 0px 36px;\n padding: 0px;\n}\n</style>\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-select label=\"Color\" :items=\"swatches\" v-model=\"color\">\n <template v-slot:prepend-inner>\n <v-icon :color=\"color\"> mdi-square </v-icon>\n </template>\n <template v-slot:item=\"{ props, item }\">\n <v-list-item v-bind=\"props\" :value=\"item.raw\">\n <template v-slot:prepend>\n <v-icon :color=\"item.raw\"> mdi-square </v-icon>\n </template>\n </v-list-item>\n </template>\n </v-select>\n </div>\n</template>\n\n<script>\nexport default {\n components: {},\n props: {\n modelValue: {\n type: String,\n required: true,\n },\n },\n computed: {\n color: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n swatches: function () {\n return [\n '#005a8f',\n '#003784',\n '#8F3400',\n '#df1368',\n '#ff5252',\n '#df323b',\n '#9f0010',\n '#2d9437',\n '#004700',\n '#db7200',\n '#802700',\n '#0f2941',\n ]\n },\n },\n methods: {},\n}\n</script>\n","/*\n# Copyright 2023 OpenC3, Inc.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport { Api } from '@openc3/js-common/services'\n\nexport default {\n methods: {\n deleteItem(item) {\n let start = null\n let api = ''\n switch (item.type.toLowerCase()) {\n case 'activity':\n api = 'activity'\n start = item.activity.start\n break\n case 'metadata':\n api = 'metadata'\n start = item.metadata.start\n break\n case 'note':\n api = 'notes'\n start = item.note.start\n break\n }\n this.$dialog\n .confirm(\n `Are you sure you want to remove ${item.typeStr} at ${item.startStr}`,\n {\n okText: 'Delete',\n cancelText: 'Cancel',\n },\n )\n .then(() => {\n return Api.delete(`/openc3-api/${api}/${start}`)\n })\n .then(() => {\n this.$emit('delete', item)\n this.$notify.normal({\n title: `Deleted ${item.typeStr}`,\n body: `Deleted ${item.typeStr} at ${item.startStr}`,\n })\n })\n .catch(() => {})\n },\n },\n}\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2025, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <span> Add metadata key value(s)</span>\n <v-table density=\"compact\">\n <tbody>\n <tr>\n <th scope=\"col\" class=\"text-left\">Key</th>\n <th scope=\"col\" class=\"text-left\">Value</th>\n <th scope=\"col\" class=\"text-right\" width=\"52px\">\n <v-btn\n icon=\"mdi-plus\"\n variant=\"text\"\n data-test=\"new-metadata-icon\"\n @click=\"newMetadata\"\n />\n </th>\n </tr>\n <tr v-for=\"(meta, i) in metadata\" :key=\"`tr-${i}`\">\n <td>\n <v-text-field\n v-model=\"meta.key\"\n density=\"compact\"\n type=\"text\"\n hide-details\n :data-test=\"`key-${i}`\"\n />\n </td>\n <td>\n <v-text-field\n v-model=\"meta.value\"\n density=\"compact\"\n type=\"text\"\n hide-details\n :data-test=\"`value-${i}`\"\n />\n </td>\n <td>\n <v-btn\n icon=\"mdi-delete\"\n variant=\"text\"\n :data-test=\"`delete-metadata-icon-${i}`\"\n @click=\"rm(i)\"\n />\n </td>\n </tr>\n </tbody>\n </v-table>\n </div>\n</template>\n\n<script>\nexport default {\n components: {},\n props: {\n modelValue: {\n type: Array,\n required: true,\n },\n },\n data() {\n return {}\n },\n computed: {\n metadata: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n },\n methods: {\n newMetadata: function () {\n this.metadata.push({\n key: '',\n value: '',\n })\n },\n rm: function (index) {\n this.metadata.splice(index, 1)\n },\n },\n}\n</script>\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-dialog v-model=\"show\" persistent width=\"600\" @keydown.esc=\"clearHandler\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span v-if=\"metadata\">Update Metadata</span>\n <span v-else>Create Metadata</span>\n <v-spacer />\n <v-btn\n icon=\"mdi-close-box\"\n variant=\"text\"\n density=\"compact\"\n data-test=\"close-metadata-icon\"\n @click=\"clearHandler\"\n />\n </v-toolbar>\n <v-stepper\n v-model=\"dialogStep\"\n editable\n :items=\"['Metadata Times', 'Metadata Input']\"\n >\n <template v-if=\"dialogStep === 2\" #actions>\n <v-row class=\"ma-0 px-6 pb-4\">\n <v-btn variant=\"text\" @click=\"() => (dialogStep -= 1)\">\n Previous\n </v-btn>\n <v-spacer />\n <v-btn variant=\"outlined\" class=\"mr-4\" @click=\"clearHandler\">\n Cancel\n </v-btn>\n <v-btn\n type=\"submit\"\n color=\"primary\"\n :disabled=\"!!error\"\n @click.prevent=\"submitHandler\"\n >\n Ok\n </v-btn>\n </v-row>\n </template>\n\n <template #item.1>\n <v-card-text>\n <div class=\"pa-2\">\n <color-select-form v-model=\"color\" />\n <v-row dense>\n <v-text-field\n v-model=\"startDate\"\n type=\"date\"\n label=\"Start Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"metadata-start-date\"\n />\n <v-text-field\n v-model=\"startTime\"\n type=\"time\"\n step=\"1\"\n label=\"Start Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"metadata-start-time\"\n />\n </v-row>\n </div>\n </v-card-text>\n </template>\n\n <template #item.2>\n <v-card-text>\n <div class=\"pa-2\">\n <div style=\"min-height: 200px\">\n <metadata-input-form v-model=\"metadataVals\" />\n </div>\n <v-row v-show=\"typeError\">\n <span class=\"ma-2 text-red\" v-text=\"typeError\" />\n </v-row>\n </div>\n </v-card-text>\n </template>\n </v-stepper>\n </v-card>\n </v-dialog>\n </div>\n</template>\n\n<script>\nimport { Api } from '@openc3/js-common/services'\nimport { TimeFilters } from '@/util'\nimport ColorSelectForm from './ColorSelectForm.vue'\nimport CreateDialog from './CreateDialog'\nimport MetadataInputForm from './MetadataInputForm.vue'\n\nexport default {\n components: {\n ColorSelectForm,\n MetadataInputForm,\n },\n mixins: [CreateDialog, TimeFilters],\n props: {\n modelValue: Boolean,\n metadata: {\n type: Object,\n default: null,\n },\n },\n data() {\n return {\n dialogStep: 1,\n color: '#003784',\n metadataVals: [],\n rules: {\n required: (value) => !!value || 'Required',\n },\n }\n },\n computed: {\n typeError: function () {\n if (!this.color) {\n return 'A color is required.'\n }\n if (this.metadataVals.length < 1) {\n return 'Please enter a value in the metadata table.'\n }\n const emptyKeyValue = this.metadataVals.find(\n (meta) => meta.key === '' || meta.value === '',\n )\n if (emptyKeyValue) {\n return 'Missing or empty key, value in the metadata table.'\n }\n return null\n },\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n },\n mounted: function () {\n this.updateValues()\n },\n methods: {\n updateValues: function () {\n this.dialogStep = 1\n if (this.metadata) {\n const sDate = new Date(this.metadata.start * 1000)\n this.startDate = this.formatDate(sDate, this.timeZone)\n this.startTime = this.formatTimeHMS(sDate, this.timeZone)\n this.color = this.metadata.color\n this.metadataVals = Object.keys(this.metadata.metadata).map((k) => {\n return { key: k, value: this.metadata.metadata[k] }\n })\n } else {\n this.calcStartDateTime()\n this.color = '#003784'\n this.metadataVals = []\n }\n },\n clearHandler: function () {\n this.show = !this.show\n },\n submitHandler() {\n const color = this.color\n const metadata = this.metadataVals.reduce((result, element) => {\n result[element.key] = element.value\n return result\n }, {})\n const data = { color, metadata }\n if (this.timeZone === 'local') {\n data.start = new Date(\n this.startDate + ' ' + this.startTime,\n ).toISOString()\n } else {\n data.start = new Date(\n this.startDate + ' ' + this.startTime + 'Z',\n ).toISOString()\n }\n if (this.metadata) {\n Api.put(`/openc3-api/metadata/${this.metadata.start}`, {\n data,\n }).then((response) => {\n this.$notify.normal({\n title: 'Updated Metadata',\n body: `Metadata updated: (${response.data.start})`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n } else {\n Api.post('/openc3-api/metadata', {\n data,\n }).then((response) => {\n this.$notify.normal({\n title: 'Created new Metadata',\n body: `Metadata: (${response.data.start})`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n }\n // We don't do the $emit or set show here because it has to be in the callback\n },\n },\n}\n</script>\n\n<style scoped>\n.v-stepper--vertical .v-stepper__content {\n width: auto;\n margin: 0px 0px 0px 36px;\n padding: 0px;\n}\n</style>\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-dialog v-model=\"show\" persistent width=\"600\" @keydown.esc=\"clearHandler\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span v-if=\"note\">Update Note</span>\n <span v-else>Create Note</span>\n <v-spacer />\n <v-btn\n icon=\"mdi-close-box\"\n variant=\"text\"\n density=\"compact\"\n data-test=\"close-note-icon\"\n @click=\"clearHandler\"\n />\n </v-toolbar>\n <v-stepper\n v-model=\"dialogStep\"\n editable\n :items=\"['Note Times', 'Note Input']\"\n >\n <template v-if=\"dialogStep === 2\" #actions>\n <v-row class=\"ma-0 px-6 pb-4\">\n <v-btn variant=\"text\" @click=\"() => (dialogStep -= 1)\">\n Previous\n </v-btn>\n <v-spacer />\n <v-btn variant=\"outlined\" class=\"mr-4\" @click=\"clearHandler\">\n Cancel\n </v-btn>\n <v-btn\n type=\"submit\"\n color=\"primary\"\n :disabled=\"!!error\"\n @click.prevent=\"submitHandler\"\n >\n Ok\n </v-btn>\n </v-row>\n </template>\n\n <template #item.1>\n <v-card-text>\n <div class=\"pa-2\">\n <v-row dense>\n <v-text-field\n v-model=\"startDate\"\n type=\"date\"\n label=\"Start Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"note-start-date\"\n />\n <v-text-field\n v-model=\"startTime\"\n type=\"time\"\n step=\"1\"\n label=\"Start Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"note-start-time\"\n />\n </v-row>\n <v-row dense>\n <v-text-field\n v-model=\"endDate\"\n type=\"date\"\n label=\"End Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"note-end-date\"\n />\n <v-text-field\n v-model=\"endTime\"\n type=\"time\"\n step=\"1\"\n label=\"End Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"note-end-time\"\n />\n </v-row>\n <v-row>\n <span\n v-show=\"timeError\"\n class=\"ma-2 text-red\"\n v-text=\"timeError\"\n />\n </v-row>\n </div>\n </v-card-text>\n </template>\n\n <template #item.2>\n <v-card-text>\n <div class=\"pa-2\">\n <div>\n <color-select-form v-model=\"color\" />\n </div>\n <div>\n <v-text-field\n v-model=\"description\"\n type=\"text\"\n label=\"Note Description\"\n data-test=\"note-description\"\n />\n </div>\n <v-row v-show=\"typeError\">\n <span class=\"ma-2 text-red\" v-text=\"typeError\" />\n </v-row>\n </div>\n </v-card-text>\n </template>\n </v-stepper>\n </v-card>\n </v-dialog>\n </div>\n</template>\n\n<script>\nimport { Api } from '@openc3/js-common/services'\nimport { TimeFilters } from '@/util'\nimport ColorSelectForm from './ColorSelectForm.vue'\nimport CreateDialog from './CreateDialog'\n\nexport default {\n components: {\n ColorSelectForm,\n },\n mixins: [CreateDialog, TimeFilters],\n props: {\n modelValue: Boolean,\n note: {\n type: Object,\n },\n },\n data() {\n return {\n dialogStep: 1,\n description: '',\n color: '#8F3400',\n rules: {\n required: (value) => !!value || 'Required',\n },\n }\n },\n computed: {\n timeError: function () {\n let start\n let end\n if (this.timeZone === 'local') {\n start = new Date(this.startDate + ' ' + this.startTime)\n end = new Date(this.endDate + ' ' + this.endTime)\n } else {\n start = new Date(this.startDate + ' ' + this.startTime + 'Z')\n end = new Date(this.endDate + ' ' + this.endTime + 'Z')\n }\n if (start === end) {\n return 'Invalid start, end time. Notes must have different start and end times.'\n }\n if (start > end) {\n return 'Invalid start time. Notes start before end.'\n }\n return null\n },\n typeError: function () {\n if (!this.color) {\n return 'A color is required.'\n }\n if (!this.description) {\n return 'A description is required for a valid note.'\n }\n return null\n },\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n },\n mounted: function () {\n this.updateValues()\n },\n methods: {\n updateValues: function () {\n this.dialogStep = 1\n if (this.note) {\n const sDate = new Date(this.note.start * 1000)\n this.startDate = this.formatDate(sDate, this.timeZone)\n this.startTime = this.formatTimeHMS(sDate, this.timeZone)\n const eDate = new Date(this.note.stop * 1000)\n this.endDate = this.formatDate(eDate, this.timeZone)\n this.endTime = this.formatTimeHMS(eDate, this.timeZone)\n this.color = this.note.color\n this.description = this.note.description\n } else {\n this.calcStartDateTime()\n this.color = '#8F3400'\n this.description = ''\n }\n },\n clearHandler: function () {\n this.show = !this.show\n },\n submitHandler() {\n let start\n let stop // API takes stop rather than end\n if (this.timeZone === 'local') {\n start = new Date(this.startDate + ' ' + this.startTime).toISOString()\n stop = new Date(this.endDate + ' ' + this.endTime).toISOString()\n } else {\n start = new Date(\n this.startDate + ' ' + this.startTime + 'Z',\n ).toISOString()\n stop = new Date(this.endDate + ' ' + this.endTime + 'Z').toISOString()\n }\n const color = this.color\n const description = this.description\n if (this.note) {\n Api.put(`/openc3-api/notes/${this.note.start}`, {\n data: { start, stop, color, description },\n }).then((response) => {\n const desc =\n response.data.description.length > 16\n ? `${response.data.description.substring(0, 16)}...`\n : response.data.description\n this.$notify.normal({\n title: 'Updated Note',\n body: `Note updated: (${response.data.start}): \"${desc}\"`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n } else {\n Api.post('/openc3-api/notes', {\n data: { start, stop, color, description },\n }).then((response) => {\n const desc =\n response.data.description.length > 16\n ? `${response.data.description.substring(0, 16)}...`\n : response.data.description\n this.$notify.normal({\n title: 'Created new Note',\n body: `Note: (${response.data.start}) created: \"${desc}\"`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n }\n // We don't do the $emit or set show here because it has to be in the callback\n },\n },\n}\n</script>\n\n<style scoped>\n.v-stepper--vertical .v-stepper__content {\n width: auto;\n margin: 0px 0px 0px 36px;\n padding: 0px;\n}\n</style>\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-dialog v-model=\"show\" persistent width=\"80vw\" @keydown.esc=\"close\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span v-if=\"newMetadata\">Metadata</span><span v-else>Events</span>\n <v-spacer />\n <v-btn\n icon=\"mdi-close-box\"\n variant=\"text\"\n density=\"compact\"\n data-test=\"close-metadata-icon\"\n aria-label=\"Close Dialog\"\n @click=\"close\"\n />\n </v-toolbar>\n <v-card-title>\n <v-row class=\"pa-3\">\n <span v-if=\"newMetadata\">Metadata</span><span v-else>Events</span>\n <v-spacer />\n <v-text-field\n v-model=\"search\"\n label=\"Search\"\n prepend-inner-icon=\"mdi-magnify\"\n clearable\n variant=\"outlined\"\n density=\"compact\"\n single-line\n hide-details\n />\n </v-row>\n </v-card-title>\n <v-data-table\n :headers=\"eventHeaders\"\n :items=\"localEvents\"\n :search=\"search\"\n >\n <template #no-data>\n <span> No events </span>\n </template>\n <template #item.start=\"{ item }\">\n {{ formatDateTime(item.start, timeZone) }}\n </template>\n <template #item.end=\"{ item }\">\n {{ formatDateTime(item.end, timeZone) }}\n </template>\n <template #item.type=\"{ item }\">\n {{ item.type.charAt(0).toUpperCase() + item.type.slice(1) }}\n </template>\n <template #item.data=\"{ item }\">\n {{ dataFormat(item) }}\n </template>\n <template #item.actions=\"{ item }\">\n <v-btn\n icon=\"mdi-pencil\"\n variant=\"text\"\n size=\"small\"\n class=\"mr-2\"\n data-test=\"edit-event\"\n aria-label=\"Edit Event\"\n @click=\"editAction(item)\"\n />\n <v-btn\n icon=\"mdi-delete\"\n variant=\"text\"\n size=\"small\"\n data-test=\"delete-event\"\n aria-label=\"Delete Event\"\n @click=\"deleteAction(item)\"\n />\n </template>\n </v-data-table>\n <v-card-actions class=\"px-2\">\n <v-spacer />\n <v-btn variant=\"outlined\" data-test=\"close-event-list\" @click=\"close\">\n Close\n </v-btn>\n <v-btn\n v-if=\"newMetadata\"\n variant=\"flat\"\n data-test=\"new-event\"\n @click=\"showMetadataCreate = true\"\n >\n New Metadata\n </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n <!-- Edit existing events -->\n <activity-create-dialog\n v-if=\"showActivityUpdate\"\n v-model=\"showActivityUpdate\"\n :activity=\"editActivity\"\n :time-zone=\"timeZone\"\n @update=\"updateActivity\"\n />\n <metadata-create-dialog\n v-if=\"showMetadataUpdate\"\n v-model=\"showMetadataUpdate\"\n :metadata=\"editMetadata\"\n :time-zone=\"timeZone\"\n @update=\"updateMetadata\"\n />\n <note-create-dialog\n v-if=\"showNoteUpdate\"\n v-model=\"showNoteUpdate\"\n :note=\"editNote\"\n :time-zone=\"timeZone\"\n @update=\"updateNote\"\n />\n <!-- Create new metadata -->\n <metadata-create-dialog\n v-if=\"showMetadataCreate\"\n v-model=\"showMetadataCreate\"\n :time-zone=\"timeZone\"\n @update=\"addMetadata\"\n />\n </div>\n</template>\n\n<script>\nimport { Api } from '@openc3/js-common/services'\nimport { TimeFilters } from '@/util'\nimport ActivityCreateDialog from './ActivityCreateDialog.vue'\nimport DeleteItem from './DeleteItem'\nimport MetadataCreateDialog from './MetadataCreateDialog.vue'\nimport NoteCreateDialog from './NoteCreateDialog.vue'\n\nexport default {\n components: {\n ActivityCreateDialog,\n MetadataCreateDialog,\n NoteCreateDialog,\n },\n mixins: [TimeFilters, DeleteItem],\n props: {\n events: {\n type: Array,\n required: true,\n },\n modelValue: {\n type: Boolean,\n required: true,\n },\n timeZone: {\n type: String,\n required: true,\n },\n types: {\n type: Array,\n },\n newMetadata: {\n type: Boolean,\n default: false,\n },\n },\n data() {\n return {\n search: '',\n localEvents: [...this.events],\n eventHeaders: [\n { title: 'Start', key: 'start', width: 215 },\n { title: 'Stop', key: 'end', width: 215 },\n { title: 'Type', key: 'type' },\n { title: 'Data', key: 'data' },\n { title: 'Actions', key: 'actions', sortable: false },\n ],\n editActivity: { start: new Date(), end: new Date() },\n editMetadata: { start: new Date(), end: new Date() },\n editNote: { start: new Date(), end: new Date() },\n editIndex: 0,\n showActivityUpdate: false,\n showMetadataUpdate: false,\n showNoteUpdate: false,\n showMetadataCreate: false,\n }\n },\n computed: {\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n },\n created: function () {\n // TODO: Switch to vue3 syntax\n // this.$on('delete', (item) => {\n // let index = this.localEvents.findIndex((element) => {\n // return element.type === item.type && element.start === item.start\n // })\n // this.localEvents.splice(index, 1)\n // })\n },\n methods: {\n close() {\n this.$emit('close')\n this.show = false\n },\n dataFormat(event) {\n let data = event.name\n switch (event.type) {\n case 'note':\n data = event.note.description\n break\n case 'metadata':\n let rows = []\n Object.entries(event.metadata.metadata).forEach(([key, value]) =>\n rows.push(`${key}: ${value}`),\n )\n data = rows.join(', ')\n break\n }\n return data\n },\n editAction(item) {\n this.editIndex = this.localEvents.findIndex((element) => {\n return element.type === item.type && element.start === item.start\n })\n switch (item.type) {\n case 'activity':\n this.editActivity = item.activity\n this.showActivityUpdate = true\n break\n case 'metadata':\n this.editMetadata = item.metadata\n this.showMetadataUpdate = true\n break\n case 'note':\n this.editNote = item.note\n this.showNoteUpdate = true\n break\n }\n },\n deleteAction(item) {\n let deleteIndex = this.localEvents.findIndex((element) => {\n return element.type === item.type && element.start === item.start\n })\n let api = null\n let start = null\n let uuid = null\n switch (item.type) {\n case 'activity':\n api = `timeline/${item.activity.name}/activity`\n start = item.activity.start\n uuid = item.activity.uuid\n break\n case 'metadata':\n api = 'metadata'\n start = item.metadata.start\n break\n case 'note':\n api = 'notes'\n start = item.note.start\n break\n }\n\n this.$dialog\n .confirm(\n `Are you sure you want to remove ${item.type} at ${item.start}`,\n {\n okText: 'Delete',\n cancelText: 'Cancel',\n },\n )\n .then((dialog) => {\n this.localEvents.splice(deleteIndex, 1)\n let url = `/openc3-api/${api}/${start}`\n if (uuid) {\n url += `/${uuid}`\n }\n return Api.delete(url)\n })\n .then((response) => {\n this.$emit('update')\n this.$notify.normal({\n title: `Deleted ${item.type}`,\n body: `Deleted ${item.type} at ${start}`,\n })\n })\n .catch((error) => {\n // TODO: It returns true on cancel?\n })\n },\n updateActivity(item) {\n this.$emit('update')\n this.localEvents[this.editIndex].activity = item\n },\n updateMetadata(item) {\n this.$emit('update')\n this.localEvents[this.editIndex].metadata = item\n },\n updateNote(item) {\n this.$emit('update')\n this.localEvents[this.editIndex].note = item\n },\n addMetadata(item) {\n // TODO: This is how Calendar creates new metadata items via makeMetadataEvent\n let metadata = {\n name: 'Metadata',\n start: new Date(item.start * 1000),\n end: new Date(item.start * 1000),\n color: item.color,\n type: item.type,\n timed: true,\n metadata: item,\n }\n this.localEvents.push(metadata)\n },\n },\n}\n</script>\n"],"names":["add","date","duration","options","years","months","weeks","days","hours","minutes","seconds","_date","toDate","dateWithMonths","addMonths","dateWithDays","addDays","minutesToAdd","msToAdd","constructFrom","CreateDialog","format","ms","start","parse","_sfc_main","EnvironmentChooser","ScriptChooser","CommandEditor","TimeFilters","value","now","end","timeline","inputKind","event","sDate","eDate","_a","rDate","stop","recurringEnd","kind","data","recurring","Api","response","activityTime","error","commandString","_hoisted_3","_hoisted_5","_hoisted_11","_createElementBlock","_createVNode","_component_v_dialog","$options","$event","_component_v_card","_component_v_toolbar","_component_v_spacer","$props","_openBlock","_component_v_btn","_component_v_stepper","$data","_component_v_card_text","_createElementVNode","_component_v_select","_component_v_text_field","_component_v_textarea","_component_v_row","_ctx","_component_v_checkbox","_createBlock","_component_v_col","_cache","_toDisplayString","_hoisted_6","_hoisted_7","_component_script_chooser","_component_environment_chooser","_hoisted_8","_component_v_card_title","_hoisted_10","_component_v_icon","_component_command_editor","_component_v_card_actions","_withCtx","props","item","_component_v_list_item","_mergeProps","DeleteItem","api","index","_component_v_table","_hoisted_1","_Fragment","_renderList","meta","i","ColorSelectForm","MetadataInputForm","k","color","metadata","result","element","_hoisted_4","_component_color_select_form","_component_metadata_input_form","description","desc","ActivityCreateDialog","MetadataCreateDialog","NoteCreateDialog","rows","key","deleteIndex","uuid","dialog","url","_component_v_data_table","_createTextVNode","_component_activity_create_dialog","_component_metadata_create_dialog","_component_note_create_dialog"],"mappings":"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","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";const _=require("./UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B-k6legU.cjs"),D=require("./timeFilters-CJFxfjqN.cjs"),e=require("vue"),x=require("./CustomIcon-eie3rPKh.cjs"),b=require("./ScriptChooser-BzQcgW8g.cjs");require("single-spa");const S=require("./parse-DwfgQboe.cjs"),F=require("./addMonths-n1tnl3ab.cjs"),N=require("./format-B22VpiOS.cjs");function K(a,t,i){const{years:d=0,months:o=0,weeks:n=0,days:l=0,hours:s=0,minutes:V=0,seconds:m=0}=t,u=N.toDate(a,i==null?void 0:i.in),p=o||d?F.addMonths(u,o+d*12):u,C=l||n?S.addDays(p,l+n*7):p,f=V+s*60,w=(m+f*60)*1e3;return N.constructFrom(a,+C+w)}const k={props:{date:{type:String},time:{type:String},timeZone:{type:String}},data(){return{startDate:"",startTime:"",endDate:"",endTime:""}},methods:{calcStartDateTime:function(){this.date?(this.startDate=this.date,this.endDate=this.date):(this.startDate=N.format(new Date,"yyyy-MM-dd"),this.endDate=N.format(new Date,"yyyy-MM-dd"));let a=1e3*60*30,t=null;this.time?(t=S.parse(this.time,"HH:mm:ss",new Date),t=new Date(Math.floor(t.getTime()/a)*a)):t=new Date(Math.ceil(new Date().getTime()/a)*a),this.startTime=N.format(t,"HH:mm:ss"),this.endTime=N.format(K(t,{minutes:30}),"HH:mm:ss")}}},R={components:{EnvironmentChooser:b.EnvironmentChooser,ScriptChooser:b.ScriptChooser,CommandEditor:b.CommandEditor},mixins:[k,D.TimeFilters],props:{modelValue:Boolean,timelines:{type:Array,required:!0},activity:{type:Object,default:null}},data(){return{timeline:null,dialogStep:1,kind:"",types:["COMMAND","SCRIPT","RESERVE"],activityData:"",activityEnvironment:[],customTitle:"",notes:"",rules:{required:a=>!!a||"Required"},recurring:!1,recurringEndDate:null,recurringEndTime:null,frequency:90,timeSpan:"minutes",timeSpans:["minutes","hours","days"],showCommandDialog:!1,dialogTitle:"Add Command",dialogError:"",dialogCmdString:null}},computed:{timeError:function(){const a=new Date,t=Date.parse(`${this.startDate}T${this.startTime}`),i=Date.parse(`${this.endDate}T${this.endTime}`);return t===i?"Invalid start, end time. Activity must have different start and end times.":a>t?"Invalid start time. Activity must be in the future.":t>i?"Invalid start time. Activity start before end.":null},typeError:function(){return this.timeline?this.kind!=="RESERVE"&&!this.activityData?"No data is selected or inputted":null:"Activity must have a timeline selected."},timelineNames:function(){return this.timelines.map(a=>a.name)},show:{get(){return this.modelValue},set(a){this.$emit("update:modelValue",a)}},validationError:function(){return!!this.timeError||!this.timeline}},mounted:function(){this.updateValues()},methods:{changeKind:function(a){a!==this.kind&&(this.kind=a,this.activityData="")},fileHandler:function(a){this.activityData=a},updateValues:function(){var a;if(this.dialogStep=1,this.activity){this.timeline=this.activity.name;const t=new Date(this.activity.start*1e3),i=new Date(this.activity.stop*1e3);if(this.startDate=this.formatDate(t,this.timeZone),this.startTime=this.formatTimeHMS(t,this.timeZone),this.endDate=this.formatDate(i,this.timeZone),this.endTime=this.formatTimeHMS(i,this.timeZone),this.kind=this.activity.kind.toUpperCase(),this.activityData=this.activity.data[this.activity.kind],this.activityEnvironment=this.activity.data.environment,this.customTitle=this.activity.data.customTitle||"",this.notes=this.activity.data.notes||"",(a=this.activity.recurring)!=null&&a.uuid){this.recurring=!0;const d=new Date(this.activity.recurring.end*1e3);this.recurringEndDate=this.formatDate(d,this.timeZone),this.recurringEndTime=this.formatTimeHMS(d,this.timeZone),this.frequency=this.activity.recurring.frequency,this.timeSpan=this.activity.recurring.span}}else this.calcStartDateTime(),this.recurringEndDate=this.startDate,this.recurringEndTime=this.startTime,this.kind="",this.activityData="",this.activityEnvironment=[],this.customTitle="",this.notes="",this.timeline=this.timelineNames[0]},clearHandler:function(){this.show=!this.show},submitHandler(){let a=null,t=null,i=null;this.timeZone==="local"?(a=new Date(this.startDate+" "+this.startTime).toISOString(),t=new Date(this.endDate+" "+this.endTime).toISOString(),this.recurring&&(i=new Date(this.recurringEndDate+" "+this.recurringEndTime).toISOString())):(a=new Date(this.startDate+" "+this.startTime+"Z").toISOString(),t=new Date(this.endDate+" "+this.endTime+"Z").toISOString(),this.recurring&&(i=new Date(this.recurringEndDate+" "+this.recurringEndTime+"Z").toISOString()));const d=this.kind.toLowerCase();let o={environment:this.activityEnvironment,customTitle:this.customTitle,notes:this.notes};o[d]=this.activityData;let n={};this.recurring&&(n={frequency:this.frequency,span:this.timeSpan,end:i}),this.activity?_.di.put(`/openc3-api/timeline/${this.activity.name}/activity/${this.activity.start}`,{data:{start:a,stop:t,kind:d,data:o,recurring:n}}).then(l=>{const s=this.formatSeconds(new Date(l.data.start*1e3));this.$notify.normal({title:"Updated Activity",body:`${s} (${l.data.start}) on timeline: ${l.data.name}`}),this.$emit("update",l.data),this.show=!this.show}).catch(l=>{this.show=!this.show}):_.di.post(`/openc3-api/timeline/${this.timeline}/activities`,{data:{start:a,stop:t,kind:d,data:o,recurring:n}}).then(l=>{const s=this.formatSeconds(new Date(l.data.start*1e3));this.$notify.normal({title:"Created Activity",body:`${s} (${l.data.start}) on timeline: ${l.data.name}`}),this.$emit("update",l.data),this.show=!this.show}).catch(l=>{this.show=!this.show}),this.clearHandler()},editItem:function(){this.dialogTitle="Edit Command",this.dialogCmdString=this.activityData,this.showCommandDialog=!0},closeCommandDialog:function(){this.showCommandDialog=!1,this.dialogCmdString=null,this.dialogError=""},clearDialogError:function(){this.dialogError=""},updateCommand:function(){let a="";try{a=this.$refs.commandEditor.getCmdString()}catch(t){this.dialogError=t.message||"Please fix command parameters";return}this.activityData=a,this.showCommandDialog=!1}}},z={key:0},P={key:1},j={class:"pr-2"},L=["textContent"],W={class:"pr-2"},G={key:0},J={key:1,class:"ma-3"},Q={key:2},X=["textContent"],Y={key:0,class:"error-message"},$={class:"flex-grow-1"};function ee(a,t,i,d,o,n){const l=e.resolveComponent("v-spacer"),s=e.resolveComponent("v-btn"),V=e.resolveComponent("v-toolbar"),m=e.resolveComponent("v-row"),u=e.resolveComponent("v-select"),p=e.resolveComponent("v-text-field"),C=e.resolveComponent("v-textarea"),f=e.resolveComponent("v-checkbox"),y=e.resolveComponent("v-col"),w=e.resolveComponent("v-card-text"),h=e.resolveComponent("script-chooser"),v=e.resolveComponent("environment-chooser"),E=e.resolveComponent("v-stepper"),c=e.resolveComponent("v-card"),g=e.resolveComponent("v-dialog"),I=e.resolveComponent("v-card-title"),H=e.resolveComponent("v-icon"),Z=e.resolveComponent("command-editor"),O=e.resolveComponent("v-card-actions");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(g,{modelValue:n.show,"onUpdate:modelValue":t[19]||(t[19]=r=>n.show=r),persistent:"",width:"600",onKeydown:e.withKeys(n.clearHandler,["esc"])},{default:e.withCtx(()=>[e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(V,{height:"24"},{default:e.withCtx(()=>[e.createVNode(l),i.activity?(e.openBlock(),e.createElementBlock("span",z,"Edit Activity")):(e.openBlock(),e.createElementBlock("span",P,"Create Activity")),e.createVNode(l),e.createVNode(s,{icon:"mdi-close-box",variant:"text",density:"compact","data-test":"close-note-icon",onClick:n.clearHandler},null,8,["onClick"])]),_:1}),e.createVNode(E,{modelValue:o.dialogStep,"onUpdate:modelValue":t[18]||(t[18]=r=>o.dialogStep=r),items:["Activity Times","Activity Type"]},e.createSlots({"item.1":e.withCtx(()=>[e.createVNode(w,null,{default:e.withCtx(()=>[e.createElementVNode("div",j,[e.createVNode(u,{modelValue:o.timeline,"onUpdate:modelValue":t[2]||(t[2]=r=>o.timeline=r),density:"compact","hide-details":"",variant:"outlined",items:n.timelineNames,label:"Timeline","data-test":"activity-select-timeline",class:"pb-2"},null,8,["modelValue","items"]),e.createVNode(p,{modelValue:o.customTitle,"onUpdate:modelValue":t[3]||(t[3]=r=>o.customTitle=r),type:"text",label:"Custom Title",class:"pb-2","data-test":"activity-custom-title","hide-details":"",variant:"outlined",density:"compact"},null,8,["modelValue"]),e.createVNode(C,{modelValue:o.notes,"onUpdate:modelValue":t[4]||(t[4]=r=>o.notes=r),label:"Notes",class:"py-2 mb-2","data-test":"activity-notes","hide-details":"",variant:"outlined",density:"compact",rows:"3"},null,8,["modelValue"]),e.createVNode(m,{dense:""},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:a.startDate,"onUpdate:modelValue":t[5]||(t[5]=r=>a.startDate=r),type:"date",label:"Start Date",class:"mx-1",rules:[o.rules.required],"data-test":"activity-start-date"},null,8,["modelValue","rules"]),e.createVNode(p,{modelValue:a.startTime,"onUpdate:modelValue":t[6]||(t[6]=r=>a.startTime=r),type:"time",step:"1",label:"Start Time",class:"mx-1",rules:[o.rules.required],"data-test":"activity-start-time"},null,8,["modelValue","rules"])]),_:1}),e.createVNode(m,{dense:""},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:a.endDate,"onUpdate:modelValue":t[7]||(t[7]=r=>a.endDate=r),type:"date",label:"End Date",class:"mx-1",rules:[o.rules.required],"data-test":"activity-end-date"},null,8,["modelValue","rules"]),e.createVNode(p,{modelValue:a.endTime,"onUpdate:modelValue":t[8]||(t[8]=r=>a.endTime=r),type:"time",step:"1",label:"End Time",class:"mx-1",rules:[o.rules.required],"data-test":"activity-end-time"},null,8,["modelValue","rules"])]),_:1}),e.createVNode(m,{class:"pl-3"},{default:e.withCtx(()=>[e.createVNode(f,{modelValue:o.recurring,"onUpdate:modelValue":t[9]||(t[9]=r=>o.recurring=r),disabled:!!i.activity,label:"Recurring","hide-details":"","data-test":"recurring"},null,8,["modelValue","disabled"])]),_:1}),o.recurring?(e.openBlock(),e.createBlock(m,{key:0},{default:e.withCtx(()=>[e.createVNode(y,null,{default:e.withCtx(()=>[...t[27]||(t[27]=[e.createElementVNode("div",{class:"repeat"},"Repeat every",-1)])]),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(p,{modelValue:o.frequency,"onUpdate:modelValue":t[10]||(t[10]=r=>o.frequency=r),disabled:!!i.activity,density:"compact",variant:"outlined","single-line":"","hide-details":"","data-test":"recurring-frequency"},null,8,["modelValue","disabled"])]),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(u,{modelValue:o.timeSpan,"onUpdate:modelValue":t[11]||(t[11]=r=>o.timeSpan=r),disabled:!!i.activity,items:o.timeSpans,style:{},"hide-details":"",density:"compact",variant:"outlined","data-test":"recurring-span"},null,8,["modelValue","disabled","items"])]),_:1})]),_:1})):e.createCommentVNode("",!0),o.recurring?(e.openBlock(),e.createBlock(m,{key:1,style:{"padding-bottom":"10px"}},{default:e.withCtx(()=>[e.createVNode(y,null,{default:e.withCtx(()=>[...t[28]||(t[28]=[e.createElementVNode("div",{class:"repeat"},"Ending",-1)])]),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(p,{modelValue:o.recurringEndDate,"onUpdate:modelValue":t[12]||(t[12]=r=>o.recurringEndDate=r),type:"date",label:"End Date",class:"mx-1",rules:[o.rules.required],disabled:!!i.activity,"data-test":"recurring-end-date"},null,8,["modelValue","rules","disabled"])]),_:1}),e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(p,{modelValue:o.recurringEndTime,"onUpdate:modelValue":t[13]||(t[13]=r=>o.recurringEndTime=r),type:"time",step:"1",label:"End Time",class:"mx-1",rules:[o.rules.required],disabled:!!i.activity,"data-test":"recurring-end-time"},null,8,["modelValue","rules","disabled"])]),_:1})]),_:1})):e.createCommentVNode("",!0),e.createVNode(m,null,{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("span",{class:"ma-2 text-red",textContent:e.toDisplayString(n.timeError)},null,8,L),[[e.vShow,n.timeError]])]),_:1})])]),_:1})]),"item.2":e.withCtx(()=>[e.createVNode(w,null,{default:e.withCtx(()=>[e.createElementVNode("div",W,[e.createVNode(u,{modelValue:o.kind,"onUpdate:modelValue":t[14]||(t[14]=r=>o.kind=r),density:"compact","hide-details":"",variant:"outlined",items:o.types,label:"Activity Type","data-test":"activity-select-type",class:"pb-2"},null,8,["modelValue","items"]),o.kind==="COMMAND"?(e.openBlock(),e.createElementBlock("div",G,[e.createVNode(C,{modelValue:o.activityData,"onUpdate:modelValue":t[15]||(t[15]=r=>o.activityData=r),label:"Command Input",rows:"1",readonly:"","auto-grow":"","data-test":"activity-cmd","onClick:control":t[16]||(t[16]=r=>n.editItem())},null,8,["modelValue"])])):o.kind==="SCRIPT"?(e.openBlock(),e.createElementBlock("div",J,[e.createVNode(h,{onFile:n.fileHandler},null,8,["onFile"]),e.createVNode(v,{modelValue:o.activityEnvironment,"onUpdate:modelValue":t[17]||(t[17]=r=>o.activityEnvironment=r)},null,8,["modelValue"])])):(e.openBlock(),e.createElementBlock("div",Q,[...t[29]||(t[29]=[e.createElementVNode("span",{class:"ma-2"}," No required input ",-1)])])),e.withDirectives(e.createVNode(m,{class:"mt-2"},{default:e.withCtx(()=>[e.createElementVNode("span",{class:"ma-2 text-red",textContent:e.toDisplayString(n.typeError)},null,8,X)]),_:1},512),[[e.vShow,n.typeError]])])]),_:1})]),_:2},[o.dialogStep===1?{name:"actions",fn:e.withCtx(()=>[e.createVNode(m,{class:"ma-0 px-6 pb-4"},{default:e.withCtx(()=>[e.createVNode(l),e.createVNode(s,{color:"primary",disabled:n.validationError,onClick:t[0]||(t[0]=r=>o.dialogStep=2)},{default:e.withCtx(()=>[...t[23]||(t[23]=[e.createTextVNode(" Next ",-1)])]),_:1},8,["disabled"])]),_:1})]),key:"0"}:void 0,o.dialogStep===2?{name:"actions",fn:e.withCtx(()=>[e.createVNode(m,{class:"ma-0 px-6 pb-4"},{default:e.withCtx(()=>[e.createVNode(s,{variant:"text",onClick:t[1]||(t[1]=()=>o.dialogStep-=1)},{default:e.withCtx(()=>[...t[24]||(t[24]=[e.createTextVNode(" Previous ",-1)])]),_:1}),e.createVNode(l),e.createVNode(s,{variant:"outlined",class:"mr-4",onClick:n.clearHandler},{default:e.withCtx(()=>[...t[25]||(t[25]=[e.createTextVNode(" Cancel ",-1)])]),_:1},8,["onClick"]),e.createVNode(s,{type:"submit",color:"primary",disabled:!!a.error,onClick:e.withModifiers(n.submitHandler,["prevent"])},{default:e.withCtx(()=>[...t[26]||(t[26]=[e.createTextVNode(" Ok ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),key:"1"}:void 0]),1032,["modelValue"])]),_:1})]),_:1},8,["modelValue","onKeydown"]),e.createVNode(g,{modelValue:o.showCommandDialog,"onUpdate:modelValue":t[22]||(t[22]=r=>o.showCommandDialog=r),"max-width":"1200",persistent:"",scrollable:"",onKeydown:e.withKeys(n.closeCommandDialog,["esc"])},{default:e.withCtx(()=>[e.createVNode(c,null,{default:e.withCtx(()=>[e.createVNode(I,{class:"d-flex align-center"},{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(o.dialogTitle),1),e.createVNode(l),e.createVNode(s,{icon:"mdi-close",variant:"text",onClick:n.closeCommandDialog},null,8,["onClick"])]),_:1}),e.createVNode(w,{class:"pa-0"},{default:e.withCtx(()=>[o.dialogError?(e.openBlock(),e.createElementBlock("div",Y,[e.createVNode(H,{class:"mr-2",color:"error"},{default:e.withCtx(()=>[...t[30]||(t[30]=[e.createTextVNode("mdi-alert-circle",-1)])]),_:1}),e.createElementVNode("span",$,e.toDisplayString(o.dialogError),1),e.createVNode(s,{icon:"mdi-close",size:"small",variant:"text",color:"error",class:"ml-2",onClick:n.clearDialogError},null,8,["onClick"])])):e.createCommentVNode("",!0),e.createVNode(Z,{ref:"commandEditor","send-disabled":!1,"states-in-hex":a.statesInHex,"show-ignored-params":a.showIgnoredParams,"cmd-raw":a.cmdRaw,"cmd-string":o.dialogCmdString,"show-command-button":!1,onBuildCmd:t[20]||(t[20]=r=>n.updateCommand(r))},null,8,["states-in-hex","show-ignored-params","cmd-raw","cmd-string"])]),_:1}),e.createVNode(O,null,{default:e.withCtx(()=>[e.createVNode(l),e.createVNode(s,{variant:"outlined",onClick:n.closeCommandDialog},{default:e.withCtx(()=>[...t[31]||(t[31]=[e.createTextVNode(" Cancel ",-1)])]),_:1},8,["onClick"]),e.createVNode(s,{color:"primary",variant:"flat",onClick:t[21]||(t[21]=r=>n.updateCommand())},{default:e.withCtx(()=>[...t[32]||(t[32]=[e.createTextVNode(" Update Command ",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue","onKeydown"])])}const U=x._export_sfc(R,[["render",ee],["__scopeId","data-v-3f3dc578"]]),te={components:{},props:{modelValue:{type:String,required:!0}},computed:{color:{get(){return this.modelValue},set(a){this.$emit("update:modelValue",a)}},swatches:function(){return["#005a8f","#003784","#8F3400","#df1368","#ff5252","#df323b","#9f0010","#2d9437","#004700","#db7200","#802700","#0f2941"]}},methods:{}};function ae(a,t,i,d,o,n){const l=e.resolveComponent("v-icon"),s=e.resolveComponent("v-list-item"),V=e.resolveComponent("v-select");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(V,{label:"Color",items:n.swatches,modelValue:n.color,"onUpdate:modelValue":t[0]||(t[0]=m=>n.color=m)},{"prepend-inner":e.withCtx(()=>[e.createVNode(l,{color:n.color},{default:e.withCtx(()=>[...t[1]||(t[1]=[e.createTextVNode(" mdi-square ",-1)])]),_:1},8,["color"])]),item:e.withCtx(({props:m,item:u})=>[e.createVNode(s,e.mergeProps(m,{value:u.raw}),{prepend:e.withCtx(()=>[e.createVNode(l,{color:u.raw},{default:e.withCtx(()=>[...t[2]||(t[2]=[e.createTextVNode(" mdi-square ",-1)])]),_:1},8,["color"])]),_:2},1040,["value"])]),_:1},8,["items","modelValue"])])}const T=x._export_sfc(te,[["render",ae]]),B={methods:{deleteItem(a){let t=null,i="";switch(a.type.toLowerCase()){case"activity":i="activity",t=a.activity.start;break;case"metadata":i="metadata",t=a.metadata.start;break;case"note":i="notes",t=a.note.start;break}this.$dialog.confirm(`Are you sure you want to remove ${a.typeStr} at ${a.startStr}`,{okText:"Delete",cancelText:"Cancel"}).then(()=>_.di.delete(`/openc3-api/${i}/${t}`)).then(()=>{this.$emit("delete",a),this.$notify.normal({title:`Deleted ${a.typeStr}`,body:`Deleted ${a.typeStr} at ${a.startStr}`})}).catch(()=>{})}}},oe={components:{},props:{modelValue:{type:Array,required:!0}},data(){return{}},computed:{metadata:{get(){return this.modelValue},set(a){this.$emit("update:modelValue",a)}}},methods:{newMetadata:function(){this.metadata.push({key:"",value:""})},rm:function(a){this.metadata.splice(a,1)}}},ne={scope:"col",class:"text-right",width:"52px"};function ie(a,t,i,d,o,n){const l=e.resolveComponent("v-btn"),s=e.resolveComponent("v-text-field"),V=e.resolveComponent("v-table");return e.openBlock(),e.createElementBlock("div",null,[t[2]||(t[2]=e.createElementVNode("span",null," Add metadata key value(s)",-1)),e.createVNode(V,{density:"compact"},{default:e.withCtx(()=>[e.createElementVNode("tbody",null,[e.createElementVNode("tr",null,[t[0]||(t[0]=e.createElementVNode("th",{scope:"col",class:"text-left"},"Key",-1)),t[1]||(t[1]=e.createElementVNode("th",{scope:"col",class:"text-left"},"Value",-1)),e.createElementVNode("th",ne,[e.createVNode(l,{icon:"mdi-plus",variant:"text","data-test":"new-metadata-icon",onClick:n.newMetadata},null,8,["onClick"])])]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.metadata,(m,u)=>(e.openBlock(),e.createElementBlock("tr",{key:`tr-${u}`},[e.createElementVNode("td",null,[e.createVNode(s,{modelValue:m.key,"onUpdate:modelValue":p=>m.key=p,density:"compact",type:"text","hide-details":"","data-test":`key-${u}`},null,8,["modelValue","onUpdate:modelValue","data-test"])]),e.createElementVNode("td",null,[e.createVNode(s,{modelValue:m.value,"onUpdate:modelValue":p=>m.value=p,density:"compact",type:"text","hide-details":"","data-test":`value-${u}`},null,8,["modelValue","onUpdate:modelValue","data-test"])]),e.createElementVNode("td",null,[e.createVNode(l,{icon:"mdi-delete",variant:"text","data-test":`delete-metadata-icon-${u}`,onClick:p=>n.rm(u)},null,8,["data-test","onClick"])])]))),128))])]),_:1})])}const M=x._export_sfc(oe,[["render",ie]]),le={components:{ColorSelectForm:T,MetadataInputForm:M},mixins:[k,D.TimeFilters],props:{modelValue:Boolean,metadata:{type:Object,default:null}},data(){return{dialogStep:1,color:"#003784",metadataVals:[],rules:{required:a=>!!a||"Required"}}},computed:{typeError:function(){return this.color?this.metadataVals.length<1?"Please enter a value in the metadata table.":this.metadataVals.find(t=>t.key===""||t.value==="")?"Missing or empty key, value in the metadata table.":null:"A color is required."},show:{get(){return this.modelValue},set(a){this.$emit("update:modelValue",a)}}},mounted:function(){this.updateValues()},methods:{updateValues:function(){if(this.dialogStep=1,this.metadata){const a=new Date(this.metadata.start*1e3);this.startDate=this.formatDate(a,this.timeZone),this.startTime=this.formatTimeHMS(a,this.timeZone),this.color=this.metadata.color,this.metadataVals=Object.keys(this.metadata.metadata).map(t=>({key:t,value:this.metadata.metadata[t]}))}else this.calcStartDateTime(),this.color="#003784",this.metadataVals=[]},clearHandler:function(){this.show=!this.show},submitHandler(){const a=this.color,t=this.metadataVals.reduce((d,o)=>(d[o.key]=o.value,d),{}),i={color:a,metadata:t};this.timeZone==="local"?i.start=new Date(this.startDate+" "+this.startTime).toISOString():i.start=new Date(this.startDate+" "+this.startTime+"Z").toISOString(),this.metadata?_.di.put(`/openc3-api/metadata/${this.metadata.start}`,{data:i}).then(d=>{this.$notify.normal({title:"Updated Metadata",body:`Metadata updated: (${d.data.start})`}),this.$emit("update",d.data),this.show=!this.show}):_.di.post("/openc3-api/metadata",{data:i}).then(d=>{this.$notify.normal({title:"Created new Metadata",body:`Metadata: (${d.data.start})`}),this.$emit("update",d.data),this.show=!this.show})}}},re={key:0},se={key:1},de={class:"pa-2"},me={class:"pa-2"},ce={style:{"min-height":"200px"}},ue=["textContent"];function pe(a,t,i,d,o,n){const l=e.resolveComponent("v-spacer"),s=e.resolveComponent("v-btn"),V=e.resolveComponent("v-toolbar"),m=e.resolveComponent("v-row"),u=e.resolveComponent("color-select-form"),p=e.resolveComponent("v-text-field"),C=e.resolveComponent("v-card-text"),f=e.resolveComponent("metadata-input-form"),y=e.resolveComponent("v-stepper"),w=e.resolveComponent("v-card"),h=e.resolveComponent("v-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(h,{modelValue:n.show,"onUpdate:modelValue":t[6]||(t[6]=v=>n.show=v),persistent:"",width:"600",onKeydown:e.withKeys(n.clearHandler,["esc"])},{default:e.withCtx(()=>[e.createVNode(w,null,{default:e.withCtx(()=>[e.createVNode(V,{height:"24"},{default:e.withCtx(()=>[e.createVNode(l),i.metadata?(e.openBlock(),e.createElementBlock("span",re,"Update Metadata")):(e.openBlock(),e.createElementBlock("span",se,"Create Metadata")),e.createVNode(l),e.createVNode(s,{icon:"mdi-close-box",variant:"text",density:"compact","data-test":"close-metadata-icon",onClick:n.clearHandler},null,8,["onClick"])]),_:1}),e.createVNode(y,{modelValue:o.dialogStep,"onUpdate:modelValue":t[5]||(t[5]=v=>o.dialogStep=v),editable:"",items:["Metadata Times","Metadata Input"]},e.createSlots({"item.1":e.withCtx(()=>[e.createVNode(C,null,{default:e.withCtx(()=>[e.createElementVNode("div",de,[e.createVNode(u,{modelValue:o.color,"onUpdate:modelValue":t[1]||(t[1]=v=>o.color=v)},null,8,["modelValue"]),e.createVNode(m,{dense:""},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:a.startDate,"onUpdate:modelValue":t[2]||(t[2]=v=>a.startDate=v),type:"date",label:"Start Date",class:"mx-1",rules:[o.rules.required],"data-test":"metadata-start-date"},null,8,["modelValue","rules"]),e.createVNode(p,{modelValue:a.startTime,"onUpdate:modelValue":t[3]||(t[3]=v=>a.startTime=v),type:"time",step:"1",label:"Start Time",class:"mx-1",rules:[o.rules.required],"data-test":"metadata-start-time"},null,8,["modelValue","rules"])]),_:1})])]),_:1})]),"item.2":e.withCtx(()=>[e.createVNode(C,null,{default:e.withCtx(()=>[e.createElementVNode("div",me,[e.createElementVNode("div",ce,[e.createVNode(f,{modelValue:o.metadataVals,"onUpdate:modelValue":t[4]||(t[4]=v=>o.metadataVals=v)},null,8,["modelValue"])]),e.withDirectives(e.createVNode(m,null,{default:e.withCtx(()=>[e.createElementVNode("span",{class:"ma-2 text-red",textContent:e.toDisplayString(n.typeError)},null,8,ue)]),_:1},512),[[e.vShow,n.typeError]])])]),_:1})]),_:2},[o.dialogStep===2?{name:"actions",fn:e.withCtx(()=>[e.createVNode(m,{class:"ma-0 px-6 pb-4"},{default:e.withCtx(()=>[e.createVNode(s,{variant:"text",onClick:t[0]||(t[0]=()=>o.dialogStep-=1)},{default:e.withCtx(()=>[...t[7]||(t[7]=[e.createTextVNode(" Previous ",-1)])]),_:1}),e.createVNode(l),e.createVNode(s,{variant:"outlined",class:"mr-4",onClick:n.clearHandler},{default:e.withCtx(()=>[...t[8]||(t[8]=[e.createTextVNode(" Cancel ",-1)])]),_:1},8,["onClick"]),e.createVNode(s,{type:"submit",color:"primary",disabled:!!a.error,onClick:e.withModifiers(n.submitHandler,["prevent"])},{default:e.withCtx(()=>[...t[9]||(t[9]=[e.createTextVNode(" Ok ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),key:"0"}:void 0]),1032,["modelValue"])]),_:1})]),_:1},8,["modelValue","onKeydown"])])}const q=x._export_sfc(le,[["render",pe],["__scopeId","data-v-ec865663"]]),he={components:{ColorSelectForm:T},mixins:[k,D.TimeFilters],props:{modelValue:Boolean,note:{type:Object}},data(){return{dialogStep:1,description:"",color:"#8F3400",rules:{required:a=>!!a||"Required"}}},computed:{timeError:function(){let a,t;return this.timeZone==="local"?(a=new Date(this.startDate+" "+this.startTime),t=new Date(this.endDate+" "+this.endTime)):(a=new Date(this.startDate+" "+this.startTime+"Z"),t=new Date(this.endDate+" "+this.endTime+"Z")),a===t?"Invalid start, end time. Notes must have different start and end times.":a>t?"Invalid start time. Notes start before end.":null},typeError:function(){return this.color?this.description?null:"A description is required for a valid note.":"A color is required."},show:{get(){return this.modelValue},set(a){this.$emit("update:modelValue",a)}}},mounted:function(){this.updateValues()},methods:{updateValues:function(){if(this.dialogStep=1,this.note){const a=new Date(this.note.start*1e3);this.startDate=this.formatDate(a,this.timeZone),this.startTime=this.formatTimeHMS(a,this.timeZone);const t=new Date(this.note.stop*1e3);this.endDate=this.formatDate(t,this.timeZone),this.endTime=this.formatTimeHMS(t,this.timeZone),this.color=this.note.color,this.description=this.note.description}else this.calcStartDateTime(),this.color="#8F3400",this.description=""},clearHandler:function(){this.show=!this.show},submitHandler(){let a,t;this.timeZone==="local"?(a=new Date(this.startDate+" "+this.startTime).toISOString(),t=new Date(this.endDate+" "+this.endTime).toISOString()):(a=new Date(this.startDate+" "+this.startTime+"Z").toISOString(),t=new Date(this.endDate+" "+this.endTime+"Z").toISOString());const i=this.color,d=this.description;this.note?_.di.put(`/openc3-api/notes/${this.note.start}`,{data:{start:a,stop:t,color:i,description:d}}).then(o=>{const n=o.data.description.length>16?`${o.data.description.substring(0,16)}...`:o.data.description;this.$notify.normal({title:"Updated Note",body:`Note updated: (${o.data.start}): "${n}"`}),this.$emit("update",o.data),this.show=!this.show}):_.di.post("/openc3-api/notes",{data:{start:a,stop:t,color:i,description:d}}).then(o=>{const n=o.data.description.length>16?`${o.data.description.substring(0,16)}...`:o.data.description;this.$notify.normal({title:"Created new Note",body:`Note: (${o.data.start}) created: "${n}"`}),this.$emit("update",o.data),this.show=!this.show})}}},ve={key:0},Ve={key:1},ye={class:"pa-2"},Ce=["textContent"],we={class:"pa-2"},fe=["textContent"];function _e(a,t,i,d,o,n){const l=e.resolveComponent("v-spacer"),s=e.resolveComponent("v-btn"),V=e.resolveComponent("v-toolbar"),m=e.resolveComponent("v-row"),u=e.resolveComponent("v-text-field"),p=e.resolveComponent("v-card-text"),C=e.resolveComponent("color-select-form"),f=e.resolveComponent("v-stepper"),y=e.resolveComponent("v-card"),w=e.resolveComponent("v-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(w,{modelValue:n.show,"onUpdate:modelValue":t[8]||(t[8]=h=>n.show=h),persistent:"",width:"600",onKeydown:e.withKeys(n.clearHandler,["esc"])},{default:e.withCtx(()=>[e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(V,{height:"24"},{default:e.withCtx(()=>[e.createVNode(l),i.note?(e.openBlock(),e.createElementBlock("span",ve,"Update Note")):(e.openBlock(),e.createElementBlock("span",Ve,"Create Note")),e.createVNode(l),e.createVNode(s,{icon:"mdi-close-box",variant:"text",density:"compact","data-test":"close-note-icon",onClick:n.clearHandler},null,8,["onClick"])]),_:1}),e.createVNode(f,{modelValue:o.dialogStep,"onUpdate:modelValue":t[7]||(t[7]=h=>o.dialogStep=h),editable:"",items:["Note Times","Note Input"]},e.createSlots({"item.1":e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createElementVNode("div",ye,[e.createVNode(m,{dense:""},{default:e.withCtx(()=>[e.createVNode(u,{modelValue:a.startDate,"onUpdate:modelValue":t[1]||(t[1]=h=>a.startDate=h),type:"date",label:"Start Date",class:"mx-1",rules:[o.rules.required],"data-test":"note-start-date"},null,8,["modelValue","rules"]),e.createVNode(u,{modelValue:a.startTime,"onUpdate:modelValue":t[2]||(t[2]=h=>a.startTime=h),type:"time",step:"1",label:"Start Time",class:"mx-1",rules:[o.rules.required],"data-test":"note-start-time"},null,8,["modelValue","rules"])]),_:1}),e.createVNode(m,{dense:""},{default:e.withCtx(()=>[e.createVNode(u,{modelValue:a.endDate,"onUpdate:modelValue":t[3]||(t[3]=h=>a.endDate=h),type:"date",label:"End Date",class:"mx-1",rules:[o.rules.required],"data-test":"note-end-date"},null,8,["modelValue","rules"]),e.createVNode(u,{modelValue:a.endTime,"onUpdate:modelValue":t[4]||(t[4]=h=>a.endTime=h),type:"time",step:"1",label:"End Time",class:"mx-1",rules:[o.rules.required],"data-test":"note-end-time"},null,8,["modelValue","rules"])]),_:1}),e.createVNode(m,null,{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("span",{class:"ma-2 text-red",textContent:e.toDisplayString(n.timeError)},null,8,Ce),[[e.vShow,n.timeError]])]),_:1})])]),_:1})]),"item.2":e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createElementVNode("div",we,[e.createElementVNode("div",null,[e.createVNode(C,{modelValue:o.color,"onUpdate:modelValue":t[5]||(t[5]=h=>o.color=h)},null,8,["modelValue"])]),e.createElementVNode("div",null,[e.createVNode(u,{modelValue:o.description,"onUpdate:modelValue":t[6]||(t[6]=h=>o.description=h),type:"text",label:"Note Description","data-test":"note-description"},null,8,["modelValue"])]),e.withDirectives(e.createVNode(m,null,{default:e.withCtx(()=>[e.createElementVNode("span",{class:"ma-2 text-red",textContent:e.toDisplayString(n.typeError)},null,8,fe)]),_:1},512),[[e.vShow,n.typeError]])])]),_:1})]),_:2},[o.dialogStep===2?{name:"actions",fn:e.withCtx(()=>[e.createVNode(m,{class:"ma-0 px-6 pb-4"},{default:e.withCtx(()=>[e.createVNode(s,{variant:"text",onClick:t[0]||(t[0]=()=>o.dialogStep-=1)},{default:e.withCtx(()=>[...t[9]||(t[9]=[e.createTextVNode(" Previous ",-1)])]),_:1}),e.createVNode(l),e.createVNode(s,{variant:"outlined",class:"mr-4",onClick:n.clearHandler},{default:e.withCtx(()=>[...t[10]||(t[10]=[e.createTextVNode(" Cancel ",-1)])]),_:1},8,["onClick"]),e.createVNode(s,{type:"submit",color:"primary",disabled:!!a.error,onClick:e.withModifiers(n.submitHandler,["prevent"])},{default:e.withCtx(()=>[...t[11]||(t[11]=[e.createTextVNode(" Ok ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),key:"0"}:void 0]),1032,["modelValue"])]),_:1})]),_:1},8,["modelValue","onKeydown"])])}const A=x._export_sfc(he,[["render",_e],["__scopeId","data-v-996761dc"]]),Ne={components:{ActivityCreateDialog:U,MetadataCreateDialog:q,NoteCreateDialog:A},mixins:[D.TimeFilters,B],props:{events:{type:Array,required:!0},modelValue:{type:Boolean,required:!0},timeZone:{type:String,required:!0},types:{type:Array},newMetadata:{type:Boolean,default:!1}},data(){return{search:"",localEvents:[...this.events],eventHeaders:[{title:"Start",key:"start",width:215},{title:"Stop",key:"end",width:215},{title:"Type",key:"type"},{title:"Data",key:"data"},{title:"Actions",key:"actions",sortable:!1}],editActivity:{start:new Date,end:new Date},editMetadata:{start:new Date,end:new Date},editNote:{start:new Date,end:new Date},editIndex:0,showActivityUpdate:!1,showMetadataUpdate:!1,showNoteUpdate:!1,showMetadataCreate:!1}},computed:{show:{get(){return this.modelValue},set(a){this.$emit("update:modelValue",a)}}},created:function(){},methods:{close(){this.$emit("close"),this.show=!1},dataFormat(a){let t=a.name;switch(a.type){case"note":t=a.note.description;break;case"metadata":let i=[];Object.entries(a.metadata.metadata).forEach(([d,o])=>i.push(`${d}: ${o}`)),t=i.join(", ");break}return t},editAction(a){switch(this.editIndex=this.localEvents.findIndex(t=>t.type===a.type&&t.start===a.start),a.type){case"activity":this.editActivity=a.activity,this.showActivityUpdate=!0;break;case"metadata":this.editMetadata=a.metadata,this.showMetadataUpdate=!0;break;case"note":this.editNote=a.note,this.showNoteUpdate=!0;break}},deleteAction(a){let t=this.localEvents.findIndex(n=>n.type===a.type&&n.start===a.start),i=null,d=null,o=null;switch(a.type){case"activity":i=`timeline/${a.activity.name}/activity`,d=a.activity.start,o=a.activity.uuid;break;case"metadata":i="metadata",d=a.metadata.start;break;case"note":i="notes",d=a.note.start;break}this.$dialog.confirm(`Are you sure you want to remove ${a.type} at ${a.start}`,{okText:"Delete",cancelText:"Cancel"}).then(n=>{this.localEvents.splice(t,1);let l=`/openc3-api/${i}/${d}`;return o&&(l+=`/${o}`),_.di.delete(l)}).then(n=>{this.$emit("update"),this.$notify.normal({title:`Deleted ${a.type}`,body:`Deleted ${a.type} at ${d}`})}).catch(n=>{})},updateActivity(a){this.$emit("update"),this.localEvents[this.editIndex].activity=a},updateMetadata(a){this.$emit("update"),this.localEvents[this.editIndex].metadata=a},updateNote(a){this.$emit("update"),this.localEvents[this.editIndex].note=a},addMetadata(a){let t={name:"Metadata",start:new Date(a.start*1e3),end:new Date(a.start*1e3),color:a.color,type:a.type,timed:!0,metadata:a};this.localEvents.push(t)}}},xe={key:0},ge={key:1},De={key:0},ke={key:1};function Ee(a,t,i,d,o,n){const l=e.resolveComponent("v-spacer"),s=e.resolveComponent("v-btn"),V=e.resolveComponent("v-toolbar"),m=e.resolveComponent("v-text-field"),u=e.resolveComponent("v-row"),p=e.resolveComponent("v-card-title"),C=e.resolveComponent("v-data-table"),f=e.resolveComponent("v-card-actions"),y=e.resolveComponent("v-card"),w=e.resolveComponent("v-dialog"),h=e.resolveComponent("activity-create-dialog"),v=e.resolveComponent("metadata-create-dialog"),E=e.resolveComponent("note-create-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(w,{modelValue:n.show,"onUpdate:modelValue":t[2]||(t[2]=c=>n.show=c),persistent:"",width:"80vw",onKeydown:e.withKeys(n.close,["esc"])},{default:e.withCtx(()=>[e.createVNode(y,null,{default:e.withCtx(()=>[e.createVNode(V,{height:"24"},{default:e.withCtx(()=>[e.createVNode(l),i.newMetadata?(e.openBlock(),e.createElementBlock("span",xe,"Metadata")):(e.openBlock(),e.createElementBlock("span",ge,"Events")),e.createVNode(l),e.createVNode(s,{icon:"mdi-close-box",variant:"text",density:"compact","data-test":"close-metadata-icon","aria-label":"Close Dialog",onClick:n.close},null,8,["onClick"])]),_:1}),e.createVNode(p,null,{default:e.withCtx(()=>[e.createVNode(u,{class:"pa-3"},{default:e.withCtx(()=>[i.newMetadata?(e.openBlock(),e.createElementBlock("span",De,"Metadata")):(e.openBlock(),e.createElementBlock("span",ke,"Events")),e.createVNode(l),e.createVNode(m,{modelValue:o.search,"onUpdate:modelValue":t[0]||(t[0]=c=>o.search=c),label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",variant:"outlined",density:"compact","single-line":"","hide-details":""},null,8,["modelValue"])]),_:1})]),_:1}),e.createVNode(C,{headers:o.eventHeaders,items:o.localEvents,search:o.search},{"no-data":e.withCtx(()=>[...t[7]||(t[7]=[e.createElementVNode("span",null," No events ",-1)])]),"item.start":e.withCtx(({item:c})=>[e.createTextVNode(e.toDisplayString(a.formatDateTime(c.start,i.timeZone)),1)]),"item.end":e.withCtx(({item:c})=>[e.createTextVNode(e.toDisplayString(a.formatDateTime(c.end,i.timeZone)),1)]),"item.type":e.withCtx(({item:c})=>[e.createTextVNode(e.toDisplayString(c.type.charAt(0).toUpperCase()+c.type.slice(1)),1)]),"item.data":e.withCtx(({item:c})=>[e.createTextVNode(e.toDisplayString(n.dataFormat(c)),1)]),"item.actions":e.withCtx(({item:c})=>[e.createVNode(s,{icon:"mdi-pencil",variant:"text",size:"small",class:"mr-2","data-test":"edit-event","aria-label":"Edit Event",onClick:g=>n.editAction(c)},null,8,["onClick"]),e.createVNode(s,{icon:"mdi-delete",variant:"text",size:"small","data-test":"delete-event","aria-label":"Delete Event",onClick:g=>n.deleteAction(c)},null,8,["onClick"])]),_:1},8,["headers","items","search"]),e.createVNode(f,{class:"px-2"},{default:e.withCtx(()=>[e.createVNode(l),e.createVNode(s,{variant:"outlined","data-test":"close-event-list",onClick:n.close},{default:e.withCtx(()=>[...t[8]||(t[8]=[e.createTextVNode(" Close ",-1)])]),_:1},8,["onClick"]),i.newMetadata?(e.openBlock(),e.createBlock(s,{key:0,variant:"flat","data-test":"new-event",onClick:t[1]||(t[1]=c=>o.showMetadataCreate=!0)},{default:e.withCtx(()=>[...t[9]||(t[9]=[e.createTextVNode(" New Metadata ",-1)])]),_:1})):e.createCommentVNode("",!0)]),_:1})]),_:1})]),_:1},8,["modelValue","onKeydown"]),o.showActivityUpdate?(e.openBlock(),e.createBlock(h,{key:0,modelValue:o.showActivityUpdate,"onUpdate:modelValue":t[3]||(t[3]=c=>o.showActivityUpdate=c),activity:o.editActivity,"time-zone":i.timeZone,onUpdate:n.updateActivity},null,8,["modelValue","activity","time-zone","onUpdate"])):e.createCommentVNode("",!0),o.showMetadataUpdate?(e.openBlock(),e.createBlock(v,{key:1,modelValue:o.showMetadataUpdate,"onUpdate:modelValue":t[4]||(t[4]=c=>o.showMetadataUpdate=c),metadata:o.editMetadata,"time-zone":i.timeZone,onUpdate:n.updateMetadata},null,8,["modelValue","metadata","time-zone","onUpdate"])):e.createCommentVNode("",!0),o.showNoteUpdate?(e.openBlock(),e.createBlock(E,{key:2,modelValue:o.showNoteUpdate,"onUpdate:modelValue":t[5]||(t[5]=c=>o.showNoteUpdate=c),note:o.editNote,"time-zone":i.timeZone,onUpdate:n.updateNote},null,8,["modelValue","note","time-zone","onUpdate"])):e.createCommentVNode("",!0),o.showMetadataCreate?(e.openBlock(),e.createBlock(v,{key:3,modelValue:o.showMetadataCreate,"onUpdate:modelValue":t[6]||(t[6]=c=>o.showMetadataCreate=c),"time-zone":i.timeZone,onUpdate:n.addMetadata},null,8,["modelValue","time-zone","onUpdate"])):e.createCommentVNode("",!0)])}const be=x._export_sfc(Ne,[["render",Ee]]);exports.ActivityCreateDialog=U;exports.ColorSelectForm=T;exports.CreateDialog=k;exports.DeleteItem=B;exports.EventListDialog=be;exports.MetadataCreateDialog=q;exports.MetadataInputForm=M;exports.NoteCreateDialog=A;
2
+ //# sourceMappingURL=EventListDialog-CEDNXaKw.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventListDialog-CEDNXaKw.cjs","sources":["../../../node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/add.js","../src/tools/calendar/CreateDialog.js","../src/tools/calendar/ActivityCreateDialog.vue","../src/tools/calendar/ColorSelectForm.vue","../src/tools/calendar/DeleteItem.js","../src/tools/calendar/MetadataInputForm.vue","../src/tools/calendar/MetadataCreateDialog.vue","../src/tools/calendar/NoteCreateDialog.vue","../src/tools/calendar/EventListDialog.vue"],"sourcesContent":["import { addDays } from \"./addDays.js\";\nimport { addMonths } from \"./addMonths.js\";\nimport { constructFrom } from \"./constructFrom.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link add} function options.\n */\n\n/**\n * @name add\n * @category Common Helpers\n * @summary Add the specified years, months, weeks, days, hours, minutes, and seconds to the given date.\n *\n * @description\n * Add the specified years, months, weeks, days, hours, minutes, and seconds to the given date.\n *\n * @typeParam DateType - The `Date` type the function operates on. Gets inferred from passed arguments. Allows using extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param date - The date to be changed\n * @param duration - The object with years, months, weeks, days, hours, minutes, and seconds to be added.\n * @param options - An object with options\n *\n * @returns The new date with the seconds added\n *\n * @example\n * // Add the following duration to 1 September 2014, 10:19:50\n * const result = add(new Date(2014, 8, 1, 10, 19, 50), {\n * years: 2,\n * months: 9,\n * weeks: 1,\n * days: 7,\n * hours: 5,\n * minutes: 9,\n * seconds: 30,\n * })\n * //=> Thu Jun 15 2017 15:29:20\n */\nexport function add(date, duration, options) {\n const {\n years = 0,\n months = 0,\n weeks = 0,\n days = 0,\n hours = 0,\n minutes = 0,\n seconds = 0,\n } = duration;\n\n // Add years and months\n const _date = toDate(date, options?.in);\n const dateWithMonths =\n months || years ? addMonths(_date, months + years * 12) : _date;\n\n // Add weeks and days\n const dateWithDays =\n days || weeks ? addDays(dateWithMonths, days + weeks * 7) : dateWithMonths;\n\n // Add days, hours, minutes, and seconds\n const minutesToAdd = minutes + hours * 60;\n const secondsToAdd = seconds + minutesToAdd * 60;\n const msToAdd = secondsToAdd * 1000;\n\n return constructFrom(options?.in || date, +dateWithDays + msToAdd);\n}\n\n// Fallback for modularized imports:\nexport default add;\n","/*\n# Copyright 2023 OpenC3, Inc.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport { add, format, parse } from 'date-fns'\n\nexport default {\n props: {\n date: {\n type: String,\n },\n time: {\n type: String,\n },\n timeZone: {\n type: String,\n },\n },\n data() {\n return {\n startDate: '',\n startTime: '',\n endDate: '',\n endTime: '',\n }\n },\n methods: {\n calcStartDateTime: function () {\n if (this.date) {\n this.startDate = this.date\n this.endDate = this.date\n } else {\n this.startDate = format(new Date(), 'yyyy-MM-dd')\n this.endDate = format(new Date(), 'yyyy-MM-dd')\n }\n let ms = 1000 * 60 * 30 // 30 min\n let start = null\n if (this.time) {\n start = parse(this.time, 'HH:mm:ss', new Date())\n // Round down so the start is the beginning of the time box where they clicked\n start = new Date(Math.floor(start.getTime() / ms) * ms)\n } else {\n // Round up so the start is in the future\n start = new Date(Math.ceil(new Date().getTime() / ms) * ms)\n }\n this.startTime = format(start, 'HH:mm:ss')\n this.endTime = format(add(start, { minutes: 30 }), 'HH:mm:ss')\n },\n },\n}\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-dialog v-model=\"show\" persistent width=\"600\" @keydown.esc=\"clearHandler\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span v-if=\"activity\">Edit Activity</span>\n <span v-else>Create Activity</span>\n <v-spacer />\n <v-btn\n icon=\"mdi-close-box\"\n variant=\"text\"\n density=\"compact\"\n data-test=\"close-note-icon\"\n @click=\"clearHandler\"\n />\n </v-toolbar>\n <v-stepper\n v-model=\"dialogStep\"\n :items=\"['Activity Times', 'Activity Type']\"\n >\n <template v-if=\"dialogStep === 1\" #actions>\n <v-row class=\"ma-0 px-6 pb-4\">\n <v-spacer />\n <v-btn\n color=\"primary\"\n :disabled=\"validationError\"\n @click=\"dialogStep = 2\"\n >\n Next\n </v-btn>\n </v-row>\n </template>\n\n <template v-if=\"dialogStep === 2\" #actions>\n <v-row class=\"ma-0 px-6 pb-4\">\n <v-btn variant=\"text\" @click=\"() => (dialogStep -= 1)\">\n Previous\n </v-btn>\n <v-spacer />\n <v-btn variant=\"outlined\" class=\"mr-4\" @click=\"clearHandler\">\n Cancel\n </v-btn>\n <v-btn\n type=\"submit\"\n color=\"primary\"\n :disabled=\"!!error\"\n @click.prevent=\"submitHandler\"\n >\n Ok\n </v-btn>\n </v-row>\n </template>\n\n <template #item.1>\n <v-card-text>\n <div class=\"pr-2\">\n <v-select\n v-model=\"timeline\"\n density=\"compact\"\n hide-details\n variant=\"outlined\"\n :items=\"timelineNames\"\n label=\"Timeline\"\n data-test=\"activity-select-timeline\"\n class=\"pb-2\"\n >\n </v-select>\n <v-text-field\n v-model=\"customTitle\"\n type=\"text\"\n label=\"Custom Title\"\n class=\"pb-2\"\n data-test=\"activity-custom-title\"\n hide-details\n variant=\"outlined\"\n density=\"compact\"\n />\n <v-textarea\n v-model=\"notes\"\n label=\"Notes\"\n class=\"py-2 mb-2\"\n data-test=\"activity-notes\"\n hide-details\n variant=\"outlined\"\n density=\"compact\"\n rows=\"3\"\n />\n <v-row dense>\n <v-text-field\n v-model=\"startDate\"\n type=\"date\"\n label=\"Start Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"activity-start-date\"\n />\n <v-text-field\n v-model=\"startTime\"\n type=\"time\"\n step=\"1\"\n label=\"Start Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"activity-start-time\"\n />\n </v-row>\n <v-row dense>\n <v-text-field\n v-model=\"endDate\"\n type=\"date\"\n label=\"End Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"activity-end-date\"\n />\n <v-text-field\n v-model=\"endTime\"\n type=\"time\"\n step=\"1\"\n label=\"End Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"activity-end-time\"\n />\n </v-row>\n <v-row class=\"pl-3\">\n <v-checkbox\n v-model=\"recurring\"\n :disabled=\"!!activity\"\n label=\"Recurring\"\n hide-details\n data-test=\"recurring\"\n >\n </v-checkbox>\n </v-row>\n <v-row v-if=\"recurring\">\n <v-col>\n <div class=\"repeat\">Repeat every</div>\n </v-col>\n <v-col>\n <v-text-field\n v-model=\"frequency\"\n :disabled=\"!!activity\"\n density=\"compact\"\n variant=\"outlined\"\n single-line\n hide-details\n data-test=\"recurring-frequency\"\n /></v-col>\n <v-col>\n <v-select\n v-model=\"timeSpan\"\n :disabled=\"!!activity\"\n :items=\"timeSpans\"\n style=\"primary\"\n hide-details\n density=\"compact\"\n variant=\"outlined\"\n data-test=\"recurring-span\"\n />\n </v-col>\n </v-row>\n <v-row v-if=\"recurring\" style=\"padding-bottom: 10px\">\n <v-col>\n <div class=\"repeat\">Ending</div>\n </v-col>\n <v-col>\n <v-text-field\n v-model=\"recurringEndDate\"\n type=\"date\"\n label=\"End Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n :disabled=\"!!activity\"\n data-test=\"recurring-end-date\"\n /></v-col>\n <v-col>\n <v-text-field\n v-model=\"recurringEndTime\"\n type=\"time\"\n step=\"1\"\n label=\"End Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n :disabled=\"!!activity\"\n data-test=\"recurring-end-time\"\n /></v-col>\n </v-row>\n <v-row>\n <span\n v-show=\"timeError\"\n class=\"ma-2 text-red\"\n v-text=\"timeError\"\n />\n </v-row>\n </div>\n </v-card-text>\n </template>\n\n <template #item.2>\n <v-card-text>\n <div class=\"pr-2\">\n <v-select\n v-model=\"kind\"\n density=\"compact\"\n hide-details\n variant=\"outlined\"\n :items=\"types\"\n label=\"Activity Type\"\n data-test=\"activity-select-type\"\n class=\"pb-2\"\n >\n </v-select>\n <div v-if=\"kind === 'COMMAND'\">\n <v-textarea\n v-model=\"activityData\"\n label=\"Command Input\"\n rows=\"1\"\n readonly\n auto-grow\n data-test=\"activity-cmd\"\n @click:control=\"editItem()\"\n />\n </div>\n <div v-else-if=\"kind === 'SCRIPT'\" class=\"ma-3\">\n <script-chooser @file=\"fileHandler\" />\n <environment-chooser v-model=\"activityEnvironment\" />\n </div>\n <div v-else>\n <span class=\"ma-2\"> No required input </span>\n </div>\n <v-row v-show=\"typeError\" class=\"mt-2\">\n <span class=\"ma-2 text-red\" v-text=\"typeError\" />\n </v-row>\n </div>\n </v-card-text>\n </template>\n </v-stepper>\n </v-card>\n </v-dialog>\n\n <!-- Command Editor Dialog -->\n <v-dialog\n v-model=\"showCommandDialog\"\n max-width=\"1200\"\n persistent\n scrollable\n @keydown.esc=\"closeCommandDialog\"\n >\n <v-card>\n <v-card-title class=\"d-flex align-center\">\n <span>{{ dialogTitle }}</span>\n <v-spacer />\n <v-btn icon=\"mdi-close\" variant=\"text\" @click=\"closeCommandDialog\" />\n </v-card-title>\n <v-card-text class=\"pa-0\">\n <div v-if=\"dialogError\" class=\"error-message\">\n <v-icon class=\"mr-2\" color=\"error\">mdi-alert-circle</v-icon>\n <span class=\"flex-grow-1\">{{ dialogError }}</span>\n <v-btn\n icon=\"mdi-close\"\n size=\"small\"\n variant=\"text\"\n color=\"error\"\n class=\"ml-2\"\n @click=\"clearDialogError\"\n />\n </div>\n <command-editor\n ref=\"commandEditor\"\n :send-disabled=\"false\"\n :states-in-hex=\"statesInHex\"\n :show-ignored-params=\"showIgnoredParams\"\n :cmd-raw=\"cmdRaw\"\n :cmd-string=\"dialogCmdString\"\n :show-command-button=\"false\"\n @build-cmd=\"updateCommand($event)\"\n />\n </v-card-text>\n <v-card-actions>\n <v-spacer />\n <v-btn variant=\"outlined\" @click=\"closeCommandDialog\"> Cancel </v-btn>\n <v-btn color=\"primary\" variant=\"flat\" @click=\"updateCommand()\">\n Update Command\n </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n </div>\n</template>\n\n<script>\nimport { Api } from '@openc3/js-common/services'\nimport { EnvironmentChooser, ScriptChooser, CommandEditor } from '@/components'\nimport { TimeFilters } from '@/util'\nimport CreateDialog from './CreateDialog'\n\nexport default {\n components: {\n EnvironmentChooser,\n ScriptChooser,\n CommandEditor,\n },\n mixins: [CreateDialog, TimeFilters],\n props: {\n modelValue: Boolean,\n timelines: {\n type: Array,\n required: true,\n },\n activity: {\n type: Object,\n default: null,\n },\n },\n data() {\n return {\n timeline: null,\n dialogStep: 1,\n kind: '',\n types: ['COMMAND', 'SCRIPT', 'RESERVE'],\n activityData: '',\n activityEnvironment: [],\n customTitle: '',\n notes: '',\n rules: {\n required: (value) => !!value || 'Required',\n },\n recurring: false,\n recurringEndDate: null,\n recurringEndTime: null,\n frequency: 90,\n timeSpan: 'minutes',\n timeSpans: ['minutes', 'hours', 'days'],\n showCommandDialog: false,\n dialogTitle: 'Add Command',\n dialogError: '',\n dialogCmdString: null,\n }\n },\n computed: {\n timeError: function () {\n const now = new Date()\n const start = Date.parse(`${this.startDate}T${this.startTime}`)\n const end = Date.parse(`${this.endDate}T${this.endTime}`)\n if (start === end) {\n return 'Invalid start, end time. Activity must have different start and end times.'\n }\n if (now > start) {\n return 'Invalid start time. Activity must be in the future.'\n }\n if (start > end) {\n return 'Invalid start time. Activity start before end.'\n }\n return null\n },\n typeError: function () {\n if (!this.timeline) {\n return 'Activity must have a timeline selected.'\n }\n if (this.kind !== 'RESERVE' && !this.activityData) {\n return 'No data is selected or inputted'\n }\n return null\n },\n timelineNames: function () {\n return this.timelines.map((timeline) => {\n return timeline.name\n })\n },\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n validationError: function () {\n return !!this.timeError || !this.timeline\n },\n },\n mounted: function () {\n this.updateValues()\n },\n methods: {\n changeKind: function (inputKind) {\n if (inputKind === this.kind) {\n return\n }\n this.kind = inputKind\n this.activityData = ''\n },\n fileHandler: function (event) {\n this.activityData = event\n },\n updateValues: function () {\n this.dialogStep = 1\n if (this.activity) {\n this.timeline = this.activity.name\n const sDate = new Date(this.activity.start * 1000)\n const eDate = new Date(this.activity.stop * 1000)\n this.startDate = this.formatDate(sDate, this.timeZone)\n this.startTime = this.formatTimeHMS(sDate, this.timeZone)\n this.endDate = this.formatDate(eDate, this.timeZone)\n this.endTime = this.formatTimeHMS(eDate, this.timeZone)\n this.kind = this.activity.kind.toUpperCase()\n this.activityData = this.activity.data[this.activity.kind]\n this.activityEnvironment = this.activity.data.environment\n this.customTitle = this.activity.data.customTitle || ''\n this.notes = this.activity.data.notes || ''\n if (this.activity.recurring?.uuid) {\n this.recurring = true\n const rDate = new Date(this.activity.recurring.end * 1000)\n this.recurringEndDate = this.formatDate(rDate, this.timeZone)\n this.recurringEndTime = this.formatTimeHMS(rDate, this.timeZone)\n this.frequency = this.activity.recurring.frequency\n this.timeSpan = this.activity.recurring.span\n }\n } else {\n this.calcStartDateTime()\n this.recurringEndDate = this.startDate\n this.recurringEndTime = this.startTime\n this.kind = ''\n this.activityData = ''\n this.activityEnvironment = []\n this.customTitle = ''\n this.notes = ''\n this.timeline = this.timelineNames[0]\n }\n },\n clearHandler: function () {\n this.show = !this.show\n },\n submitHandler() {\n // Call the api to create a new activity to add to the activities array\n let start = null\n let stop = null // API takes stop instead of end\n let recurringEnd = null\n if (this.timeZone === 'local') {\n start = new Date(this.startDate + ' ' + this.startTime).toISOString()\n stop = new Date(this.endDate + ' ' + this.endTime).toISOString()\n if (this.recurring) {\n recurringEnd = new Date(\n this.recurringEndDate + ' ' + this.recurringEndTime,\n ).toISOString()\n }\n } else {\n start = new Date(\n this.startDate + ' ' + this.startTime + 'Z',\n ).toISOString()\n stop = new Date(this.endDate + ' ' + this.endTime + 'Z').toISOString()\n if (this.recurring) {\n recurringEnd = new Date(\n this.recurringEndDate + ' ' + this.recurringEndTime + 'Z',\n ).toISOString()\n }\n }\n const kind = this.kind.toLowerCase()\n let data = {\n environment: this.activityEnvironment,\n customTitle: this.customTitle,\n notes: this.notes,\n }\n data[kind] = this.activityData\n let recurring = {}\n if (this.recurring) {\n recurring = {\n frequency: this.frequency,\n span: this.timeSpan,\n end: recurringEnd,\n }\n }\n if (this.activity) {\n Api.put(\n `/openc3-api/timeline/${this.activity.name}/activity/${this.activity.start}`,\n {\n data: { start, stop, kind, data, recurring },\n },\n )\n .then((response) => {\n const activityTime = this.formatSeconds(\n new Date(response.data.start * 1000),\n )\n this.$notify.normal({\n title: 'Updated Activity',\n body: `${activityTime} (${response.data.start}) on timeline: ${response.data.name}`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n .catch((error) => {\n this.show = !this.show\n })\n } else {\n Api.post(`/openc3-api/timeline/${this.timeline}/activities`, {\n data: { start, stop, kind, data, recurring },\n })\n .then((response) => {\n const activityTime = this.formatSeconds(\n new Date(response.data.start * 1000),\n )\n this.$notify.normal({\n title: 'Created Activity',\n body: `${activityTime} (${response.data.start}) on timeline: ${response.data.name}`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n .catch((error) => {\n this.show = !this.show\n })\n }\n // We don't do the $emit or set show here because it has to be in the callback\n this.clearHandler()\n },\n editItem: function () {\n // Set up dialog for editing\n this.dialogTitle = 'Edit Command'\n this.dialogCmdString = this.activityData\n this.showCommandDialog = true\n },\n closeCommandDialog: function () {\n this.showCommandDialog = false\n this.dialogCmdString = null\n this.dialogError = ''\n },\n clearDialogError: function () {\n this.dialogError = ''\n },\n updateCommand: function () {\n let commandString = ''\n try {\n commandString = this.$refs.commandEditor.getCmdString()\n } catch (error) {\n this.dialogError = error.message || 'Please fix command parameters'\n return\n }\n this.activityData = commandString\n this.showCommandDialog = false\n },\n },\n}\n</script>\n\n<style scoped>\n.repeat {\n padding-top: 10px;\n text-align: right;\n}\n\n.v-stepper--vertical .v-stepper__content {\n width: auto;\n margin: 0px 0px 0px 36px;\n padding: 0px;\n}\n</style>\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-select label=\"Color\" :items=\"swatches\" v-model=\"color\">\n <template v-slot:prepend-inner>\n <v-icon :color=\"color\"> mdi-square </v-icon>\n </template>\n <template v-slot:item=\"{ props, item }\">\n <v-list-item v-bind=\"props\" :value=\"item.raw\">\n <template v-slot:prepend>\n <v-icon :color=\"item.raw\"> mdi-square </v-icon>\n </template>\n </v-list-item>\n </template>\n </v-select>\n </div>\n</template>\n\n<script>\nexport default {\n components: {},\n props: {\n modelValue: {\n type: String,\n required: true,\n },\n },\n computed: {\n color: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n swatches: function () {\n return [\n '#005a8f',\n '#003784',\n '#8F3400',\n '#df1368',\n '#ff5252',\n '#df323b',\n '#9f0010',\n '#2d9437',\n '#004700',\n '#db7200',\n '#802700',\n '#0f2941',\n ]\n },\n },\n methods: {},\n}\n</script>\n","/*\n# Copyright 2023 OpenC3, Inc.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nimport { Api } from '@openc3/js-common/services'\n\nexport default {\n methods: {\n deleteItem(item) {\n let start = null\n let api = ''\n switch (item.type.toLowerCase()) {\n case 'activity':\n api = 'activity'\n start = item.activity.start\n break\n case 'metadata':\n api = 'metadata'\n start = item.metadata.start\n break\n case 'note':\n api = 'notes'\n start = item.note.start\n break\n }\n this.$dialog\n .confirm(\n `Are you sure you want to remove ${item.typeStr} at ${item.startStr}`,\n {\n okText: 'Delete',\n cancelText: 'Cancel',\n },\n )\n .then(() => {\n return Api.delete(`/openc3-api/${api}/${start}`)\n })\n .then(() => {\n this.$emit('delete', item)\n this.$notify.normal({\n title: `Deleted ${item.typeStr}`,\n body: `Deleted ${item.typeStr} at ${item.startStr}`,\n })\n })\n .catch(() => {})\n },\n },\n}\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2025, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <span> Add metadata key value(s)</span>\n <v-table density=\"compact\">\n <tbody>\n <tr>\n <th scope=\"col\" class=\"text-left\">Key</th>\n <th scope=\"col\" class=\"text-left\">Value</th>\n <th scope=\"col\" class=\"text-right\" width=\"52px\">\n <v-btn\n icon=\"mdi-plus\"\n variant=\"text\"\n data-test=\"new-metadata-icon\"\n @click=\"newMetadata\"\n />\n </th>\n </tr>\n <tr v-for=\"(meta, i) in metadata\" :key=\"`tr-${i}`\">\n <td>\n <v-text-field\n v-model=\"meta.key\"\n density=\"compact\"\n type=\"text\"\n hide-details\n :data-test=\"`key-${i}`\"\n />\n </td>\n <td>\n <v-text-field\n v-model=\"meta.value\"\n density=\"compact\"\n type=\"text\"\n hide-details\n :data-test=\"`value-${i}`\"\n />\n </td>\n <td>\n <v-btn\n icon=\"mdi-delete\"\n variant=\"text\"\n :data-test=\"`delete-metadata-icon-${i}`\"\n @click=\"rm(i)\"\n />\n </td>\n </tr>\n </tbody>\n </v-table>\n </div>\n</template>\n\n<script>\nexport default {\n components: {},\n props: {\n modelValue: {\n type: Array,\n required: true,\n },\n },\n data() {\n return {}\n },\n computed: {\n metadata: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n },\n methods: {\n newMetadata: function () {\n this.metadata.push({\n key: '',\n value: '',\n })\n },\n rm: function (index) {\n this.metadata.splice(index, 1)\n },\n },\n}\n</script>\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-dialog v-model=\"show\" persistent width=\"600\" @keydown.esc=\"clearHandler\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span v-if=\"metadata\">Update Metadata</span>\n <span v-else>Create Metadata</span>\n <v-spacer />\n <v-btn\n icon=\"mdi-close-box\"\n variant=\"text\"\n density=\"compact\"\n data-test=\"close-metadata-icon\"\n @click=\"clearHandler\"\n />\n </v-toolbar>\n <v-stepper\n v-model=\"dialogStep\"\n editable\n :items=\"['Metadata Times', 'Metadata Input']\"\n >\n <template v-if=\"dialogStep === 2\" #actions>\n <v-row class=\"ma-0 px-6 pb-4\">\n <v-btn variant=\"text\" @click=\"() => (dialogStep -= 1)\">\n Previous\n </v-btn>\n <v-spacer />\n <v-btn variant=\"outlined\" class=\"mr-4\" @click=\"clearHandler\">\n Cancel\n </v-btn>\n <v-btn\n type=\"submit\"\n color=\"primary\"\n :disabled=\"!!error\"\n @click.prevent=\"submitHandler\"\n >\n Ok\n </v-btn>\n </v-row>\n </template>\n\n <template #item.1>\n <v-card-text>\n <div class=\"pa-2\">\n <color-select-form v-model=\"color\" />\n <v-row dense>\n <v-text-field\n v-model=\"startDate\"\n type=\"date\"\n label=\"Start Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"metadata-start-date\"\n />\n <v-text-field\n v-model=\"startTime\"\n type=\"time\"\n step=\"1\"\n label=\"Start Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"metadata-start-time\"\n />\n </v-row>\n </div>\n </v-card-text>\n </template>\n\n <template #item.2>\n <v-card-text>\n <div class=\"pa-2\">\n <div style=\"min-height: 200px\">\n <metadata-input-form v-model=\"metadataVals\" />\n </div>\n <v-row v-show=\"typeError\">\n <span class=\"ma-2 text-red\" v-text=\"typeError\" />\n </v-row>\n </div>\n </v-card-text>\n </template>\n </v-stepper>\n </v-card>\n </v-dialog>\n </div>\n</template>\n\n<script>\nimport { Api } from '@openc3/js-common/services'\nimport { TimeFilters } from '@/util'\nimport ColorSelectForm from './ColorSelectForm.vue'\nimport CreateDialog from './CreateDialog'\nimport MetadataInputForm from './MetadataInputForm.vue'\n\nexport default {\n components: {\n ColorSelectForm,\n MetadataInputForm,\n },\n mixins: [CreateDialog, TimeFilters],\n props: {\n modelValue: Boolean,\n metadata: {\n type: Object,\n default: null,\n },\n },\n data() {\n return {\n dialogStep: 1,\n color: '#003784',\n metadataVals: [],\n rules: {\n required: (value) => !!value || 'Required',\n },\n }\n },\n computed: {\n typeError: function () {\n if (!this.color) {\n return 'A color is required.'\n }\n if (this.metadataVals.length < 1) {\n return 'Please enter a value in the metadata table.'\n }\n const emptyKeyValue = this.metadataVals.find(\n (meta) => meta.key === '' || meta.value === '',\n )\n if (emptyKeyValue) {\n return 'Missing or empty key, value in the metadata table.'\n }\n return null\n },\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n },\n mounted: function () {\n this.updateValues()\n },\n methods: {\n updateValues: function () {\n this.dialogStep = 1\n if (this.metadata) {\n const sDate = new Date(this.metadata.start * 1000)\n this.startDate = this.formatDate(sDate, this.timeZone)\n this.startTime = this.formatTimeHMS(sDate, this.timeZone)\n this.color = this.metadata.color\n this.metadataVals = Object.keys(this.metadata.metadata).map((k) => {\n return { key: k, value: this.metadata.metadata[k] }\n })\n } else {\n this.calcStartDateTime()\n this.color = '#003784'\n this.metadataVals = []\n }\n },\n clearHandler: function () {\n this.show = !this.show\n },\n submitHandler() {\n const color = this.color\n const metadata = this.metadataVals.reduce((result, element) => {\n result[element.key] = element.value\n return result\n }, {})\n const data = { color, metadata }\n if (this.timeZone === 'local') {\n data.start = new Date(\n this.startDate + ' ' + this.startTime,\n ).toISOString()\n } else {\n data.start = new Date(\n this.startDate + ' ' + this.startTime + 'Z',\n ).toISOString()\n }\n if (this.metadata) {\n Api.put(`/openc3-api/metadata/${this.metadata.start}`, {\n data,\n }).then((response) => {\n this.$notify.normal({\n title: 'Updated Metadata',\n body: `Metadata updated: (${response.data.start})`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n } else {\n Api.post('/openc3-api/metadata', {\n data,\n }).then((response) => {\n this.$notify.normal({\n title: 'Created new Metadata',\n body: `Metadata: (${response.data.start})`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n }\n // We don't do the $emit or set show here because it has to be in the callback\n },\n },\n}\n</script>\n\n<style scoped>\n.v-stepper--vertical .v-stepper__content {\n width: auto;\n margin: 0px 0px 0px 36px;\n padding: 0px;\n}\n</style>\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-dialog v-model=\"show\" persistent width=\"600\" @keydown.esc=\"clearHandler\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span v-if=\"note\">Update Note</span>\n <span v-else>Create Note</span>\n <v-spacer />\n <v-btn\n icon=\"mdi-close-box\"\n variant=\"text\"\n density=\"compact\"\n data-test=\"close-note-icon\"\n @click=\"clearHandler\"\n />\n </v-toolbar>\n <v-stepper\n v-model=\"dialogStep\"\n editable\n :items=\"['Note Times', 'Note Input']\"\n >\n <template v-if=\"dialogStep === 2\" #actions>\n <v-row class=\"ma-0 px-6 pb-4\">\n <v-btn variant=\"text\" @click=\"() => (dialogStep -= 1)\">\n Previous\n </v-btn>\n <v-spacer />\n <v-btn variant=\"outlined\" class=\"mr-4\" @click=\"clearHandler\">\n Cancel\n </v-btn>\n <v-btn\n type=\"submit\"\n color=\"primary\"\n :disabled=\"!!error\"\n @click.prevent=\"submitHandler\"\n >\n Ok\n </v-btn>\n </v-row>\n </template>\n\n <template #item.1>\n <v-card-text>\n <div class=\"pa-2\">\n <v-row dense>\n <v-text-field\n v-model=\"startDate\"\n type=\"date\"\n label=\"Start Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"note-start-date\"\n />\n <v-text-field\n v-model=\"startTime\"\n type=\"time\"\n step=\"1\"\n label=\"Start Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"note-start-time\"\n />\n </v-row>\n <v-row dense>\n <v-text-field\n v-model=\"endDate\"\n type=\"date\"\n label=\"End Date\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"note-end-date\"\n />\n <v-text-field\n v-model=\"endTime\"\n type=\"time\"\n step=\"1\"\n label=\"End Time\"\n class=\"mx-1\"\n :rules=\"[rules.required]\"\n data-test=\"note-end-time\"\n />\n </v-row>\n <v-row>\n <span\n v-show=\"timeError\"\n class=\"ma-2 text-red\"\n v-text=\"timeError\"\n />\n </v-row>\n </div>\n </v-card-text>\n </template>\n\n <template #item.2>\n <v-card-text>\n <div class=\"pa-2\">\n <div>\n <color-select-form v-model=\"color\" />\n </div>\n <div>\n <v-text-field\n v-model=\"description\"\n type=\"text\"\n label=\"Note Description\"\n data-test=\"note-description\"\n />\n </div>\n <v-row v-show=\"typeError\">\n <span class=\"ma-2 text-red\" v-text=\"typeError\" />\n </v-row>\n </div>\n </v-card-text>\n </template>\n </v-stepper>\n </v-card>\n </v-dialog>\n </div>\n</template>\n\n<script>\nimport { Api } from '@openc3/js-common/services'\nimport { TimeFilters } from '@/util'\nimport ColorSelectForm from './ColorSelectForm.vue'\nimport CreateDialog from './CreateDialog'\n\nexport default {\n components: {\n ColorSelectForm,\n },\n mixins: [CreateDialog, TimeFilters],\n props: {\n modelValue: Boolean,\n note: {\n type: Object,\n },\n },\n data() {\n return {\n dialogStep: 1,\n description: '',\n color: '#8F3400',\n rules: {\n required: (value) => !!value || 'Required',\n },\n }\n },\n computed: {\n timeError: function () {\n let start\n let end\n if (this.timeZone === 'local') {\n start = new Date(this.startDate + ' ' + this.startTime)\n end = new Date(this.endDate + ' ' + this.endTime)\n } else {\n start = new Date(this.startDate + ' ' + this.startTime + 'Z')\n end = new Date(this.endDate + ' ' + this.endTime + 'Z')\n }\n if (start === end) {\n return 'Invalid start, end time. Notes must have different start and end times.'\n }\n if (start > end) {\n return 'Invalid start time. Notes start before end.'\n }\n return null\n },\n typeError: function () {\n if (!this.color) {\n return 'A color is required.'\n }\n if (!this.description) {\n return 'A description is required for a valid note.'\n }\n return null\n },\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n },\n mounted: function () {\n this.updateValues()\n },\n methods: {\n updateValues: function () {\n this.dialogStep = 1\n if (this.note) {\n const sDate = new Date(this.note.start * 1000)\n this.startDate = this.formatDate(sDate, this.timeZone)\n this.startTime = this.formatTimeHMS(sDate, this.timeZone)\n const eDate = new Date(this.note.stop * 1000)\n this.endDate = this.formatDate(eDate, this.timeZone)\n this.endTime = this.formatTimeHMS(eDate, this.timeZone)\n this.color = this.note.color\n this.description = this.note.description\n } else {\n this.calcStartDateTime()\n this.color = '#8F3400'\n this.description = ''\n }\n },\n clearHandler: function () {\n this.show = !this.show\n },\n submitHandler() {\n let start\n let stop // API takes stop rather than end\n if (this.timeZone === 'local') {\n start = new Date(this.startDate + ' ' + this.startTime).toISOString()\n stop = new Date(this.endDate + ' ' + this.endTime).toISOString()\n } else {\n start = new Date(\n this.startDate + ' ' + this.startTime + 'Z',\n ).toISOString()\n stop = new Date(this.endDate + ' ' + this.endTime + 'Z').toISOString()\n }\n const color = this.color\n const description = this.description\n if (this.note) {\n Api.put(`/openc3-api/notes/${this.note.start}`, {\n data: { start, stop, color, description },\n }).then((response) => {\n const desc =\n response.data.description.length > 16\n ? `${response.data.description.substring(0, 16)}...`\n : response.data.description\n this.$notify.normal({\n title: 'Updated Note',\n body: `Note updated: (${response.data.start}): \"${desc}\"`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n } else {\n Api.post('/openc3-api/notes', {\n data: { start, stop, color, description },\n }).then((response) => {\n const desc =\n response.data.description.length > 16\n ? `${response.data.description.substring(0, 16)}...`\n : response.data.description\n this.$notify.normal({\n title: 'Created new Note',\n body: `Note: (${response.data.start}) created: \"${desc}\"`,\n })\n this.$emit('update', response.data)\n this.show = !this.show\n })\n }\n // We don't do the $emit or set show here because it has to be in the callback\n },\n },\n}\n</script>\n\n<style scoped>\n.v-stepper--vertical .v-stepper__content {\n width: auto;\n margin: 0px 0px 0px 36px;\n padding: 0px;\n}\n</style>\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-dialog v-model=\"show\" persistent width=\"80vw\" @keydown.esc=\"close\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span v-if=\"newMetadata\">Metadata</span><span v-else>Events</span>\n <v-spacer />\n <v-btn\n icon=\"mdi-close-box\"\n variant=\"text\"\n density=\"compact\"\n data-test=\"close-metadata-icon\"\n aria-label=\"Close Dialog\"\n @click=\"close\"\n />\n </v-toolbar>\n <v-card-title>\n <v-row class=\"pa-3\">\n <span v-if=\"newMetadata\">Metadata</span><span v-else>Events</span>\n <v-spacer />\n <v-text-field\n v-model=\"search\"\n label=\"Search\"\n prepend-inner-icon=\"mdi-magnify\"\n clearable\n variant=\"outlined\"\n density=\"compact\"\n single-line\n hide-details\n />\n </v-row>\n </v-card-title>\n <v-data-table\n :headers=\"eventHeaders\"\n :items=\"localEvents\"\n :search=\"search\"\n >\n <template #no-data>\n <span> No events </span>\n </template>\n <template #item.start=\"{ item }\">\n {{ formatDateTime(item.start, timeZone) }}\n </template>\n <template #item.end=\"{ item }\">\n {{ formatDateTime(item.end, timeZone) }}\n </template>\n <template #item.type=\"{ item }\">\n {{ item.type.charAt(0).toUpperCase() + item.type.slice(1) }}\n </template>\n <template #item.data=\"{ item }\">\n {{ dataFormat(item) }}\n </template>\n <template #item.actions=\"{ item }\">\n <v-btn\n icon=\"mdi-pencil\"\n variant=\"text\"\n size=\"small\"\n class=\"mr-2\"\n data-test=\"edit-event\"\n aria-label=\"Edit Event\"\n @click=\"editAction(item)\"\n />\n <v-btn\n icon=\"mdi-delete\"\n variant=\"text\"\n size=\"small\"\n data-test=\"delete-event\"\n aria-label=\"Delete Event\"\n @click=\"deleteAction(item)\"\n />\n </template>\n </v-data-table>\n <v-card-actions class=\"px-2\">\n <v-spacer />\n <v-btn variant=\"outlined\" data-test=\"close-event-list\" @click=\"close\">\n Close\n </v-btn>\n <v-btn\n v-if=\"newMetadata\"\n variant=\"flat\"\n data-test=\"new-event\"\n @click=\"showMetadataCreate = true\"\n >\n New Metadata\n </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n <!-- Edit existing events -->\n <activity-create-dialog\n v-if=\"showActivityUpdate\"\n v-model=\"showActivityUpdate\"\n :activity=\"editActivity\"\n :time-zone=\"timeZone\"\n @update=\"updateActivity\"\n />\n <metadata-create-dialog\n v-if=\"showMetadataUpdate\"\n v-model=\"showMetadataUpdate\"\n :metadata=\"editMetadata\"\n :time-zone=\"timeZone\"\n @update=\"updateMetadata\"\n />\n <note-create-dialog\n v-if=\"showNoteUpdate\"\n v-model=\"showNoteUpdate\"\n :note=\"editNote\"\n :time-zone=\"timeZone\"\n @update=\"updateNote\"\n />\n <!-- Create new metadata -->\n <metadata-create-dialog\n v-if=\"showMetadataCreate\"\n v-model=\"showMetadataCreate\"\n :time-zone=\"timeZone\"\n @update=\"addMetadata\"\n />\n </div>\n</template>\n\n<script>\nimport { Api } from '@openc3/js-common/services'\nimport { TimeFilters } from '@/util'\nimport ActivityCreateDialog from './ActivityCreateDialog.vue'\nimport DeleteItem from './DeleteItem'\nimport MetadataCreateDialog from './MetadataCreateDialog.vue'\nimport NoteCreateDialog from './NoteCreateDialog.vue'\n\nexport default {\n components: {\n ActivityCreateDialog,\n MetadataCreateDialog,\n NoteCreateDialog,\n },\n mixins: [TimeFilters, DeleteItem],\n props: {\n events: {\n type: Array,\n required: true,\n },\n modelValue: {\n type: Boolean,\n required: true,\n },\n timeZone: {\n type: String,\n required: true,\n },\n types: {\n type: Array,\n },\n newMetadata: {\n type: Boolean,\n default: false,\n },\n },\n data() {\n return {\n search: '',\n localEvents: [...this.events],\n eventHeaders: [\n { title: 'Start', key: 'start', width: 215 },\n { title: 'Stop', key: 'end', width: 215 },\n { title: 'Type', key: 'type' },\n { title: 'Data', key: 'data' },\n { title: 'Actions', key: 'actions', sortable: false },\n ],\n editActivity: { start: new Date(), end: new Date() },\n editMetadata: { start: new Date(), end: new Date() },\n editNote: { start: new Date(), end: new Date() },\n editIndex: 0,\n showActivityUpdate: false,\n showMetadataUpdate: false,\n showNoteUpdate: false,\n showMetadataCreate: false,\n }\n },\n computed: {\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n },\n created: function () {\n // TODO: Switch to vue3 syntax\n // this.$on('delete', (item) => {\n // let index = this.localEvents.findIndex((element) => {\n // return element.type === item.type && element.start === item.start\n // })\n // this.localEvents.splice(index, 1)\n // })\n },\n methods: {\n close() {\n this.$emit('close')\n this.show = false\n },\n dataFormat(event) {\n let data = event.name\n switch (event.type) {\n case 'note':\n data = event.note.description\n break\n case 'metadata':\n let rows = []\n Object.entries(event.metadata.metadata).forEach(([key, value]) =>\n rows.push(`${key}: ${value}`),\n )\n data = rows.join(', ')\n break\n }\n return data\n },\n editAction(item) {\n this.editIndex = this.localEvents.findIndex((element) => {\n return element.type === item.type && element.start === item.start\n })\n switch (item.type) {\n case 'activity':\n this.editActivity = item.activity\n this.showActivityUpdate = true\n break\n case 'metadata':\n this.editMetadata = item.metadata\n this.showMetadataUpdate = true\n break\n case 'note':\n this.editNote = item.note\n this.showNoteUpdate = true\n break\n }\n },\n deleteAction(item) {\n let deleteIndex = this.localEvents.findIndex((element) => {\n return element.type === item.type && element.start === item.start\n })\n let api = null\n let start = null\n let uuid = null\n switch (item.type) {\n case 'activity':\n api = `timeline/${item.activity.name}/activity`\n start = item.activity.start\n uuid = item.activity.uuid\n break\n case 'metadata':\n api = 'metadata'\n start = item.metadata.start\n break\n case 'note':\n api = 'notes'\n start = item.note.start\n break\n }\n\n this.$dialog\n .confirm(\n `Are you sure you want to remove ${item.type} at ${item.start}`,\n {\n okText: 'Delete',\n cancelText: 'Cancel',\n },\n )\n .then((dialog) => {\n this.localEvents.splice(deleteIndex, 1)\n let url = `/openc3-api/${api}/${start}`\n if (uuid) {\n url += `/${uuid}`\n }\n return Api.delete(url)\n })\n .then((response) => {\n this.$emit('update')\n this.$notify.normal({\n title: `Deleted ${item.type}`,\n body: `Deleted ${item.type} at ${start}`,\n })\n })\n .catch((error) => {\n // TODO: It returns true on cancel?\n })\n },\n updateActivity(item) {\n this.$emit('update')\n this.localEvents[this.editIndex].activity = item\n },\n updateMetadata(item) {\n this.$emit('update')\n this.localEvents[this.editIndex].metadata = item\n },\n updateNote(item) {\n this.$emit('update')\n this.localEvents[this.editIndex].note = item\n },\n addMetadata(item) {\n // TODO: This is how Calendar creates new metadata items via makeMetadataEvent\n let metadata = {\n name: 'Metadata',\n start: new Date(item.start * 1000),\n end: new Date(item.start * 1000),\n color: item.color,\n type: item.type,\n timed: true,\n metadata: item,\n }\n this.localEvents.push(metadata)\n },\n },\n}\n</script>\n"],"names":["add","date","duration","options","years","months","weeks","days","hours","minutes","seconds","_date","toDate","dateWithMonths","addMonths","dateWithDays","addDays","minutesToAdd","msToAdd","constructFrom","CreateDialog","format","ms","start","parse","_sfc_main","EnvironmentChooser","ScriptChooser","CommandEditor","TimeFilters","value","now","end","timeline","inputKind","event","sDate","eDate","_a","rDate","stop","recurringEnd","kind","data","recurring","Api","response","activityTime","error","commandString","_hoisted_3","_hoisted_5","_hoisted_11","_createElementBlock","_createVNode","_component_v_dialog","$options","$event","_component_v_card","_component_v_toolbar","_component_v_spacer","$props","_openBlock","_component_v_btn","_component_v_stepper","$data","_component_v_card_text","_createElementVNode","_component_v_select","_component_v_text_field","_component_v_textarea","_component_v_row","_ctx","_component_v_checkbox","_createBlock","_component_v_col","_cache","_toDisplayString","_hoisted_6","_hoisted_7","_component_script_chooser","_component_environment_chooser","_hoisted_8","_component_v_card_title","_hoisted_10","_component_v_icon","_component_command_editor","_component_v_card_actions","_withCtx","props","item","_component_v_list_item","_mergeProps","DeleteItem","api","index","_component_v_table","_hoisted_1","_Fragment","_renderList","meta","i","ColorSelectForm","MetadataInputForm","k","color","metadata","result","element","_hoisted_4","_component_color_select_form","_component_metadata_input_form","description","desc","ActivityCreateDialog","MetadataCreateDialog","NoteCreateDialog","rows","key","deleteIndex","uuid","dialog","url","_component_v_data_table","_createTextVNode","_component_activity_create_dialog","_component_metadata_create_dialog","_component_note_create_dialog"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./Widget-HC1_yuQg.cjs"),o=require("./ValueWidget-BmXm9dYt.cjs"),t=require("vue"),i=require("./CustomIcon-Bop2mEnu.cjs"),r=4,c={components:{ValueWidget:o.default},mixins:[n.Widget],computed:{getParameters(){return[this.parameters[0],this.parameters[1],this.parameters[2],this.parameters[4]]}},created(){this.setWidth(parseInt(this.parameters[5])+r,"ch",12+r)}};function m(e,u,p,d,g,s){const a=t.resolveComponent("value-widget");return t.openBlock(),t.createElementBlock("div",{ref:"container",class:"d-flex flex-row",style:t.normalizeStyle(e.computedStyle)},[t.createVNode(a,t.mergeProps(e.$attrs,{parameters:s.getParameters,settings:e.appliedSettings,"screen-values":e.screenValues,"screen-time-zone":e.screenTimeZone,"format-string":e.parameters[3]}),null,16,["parameters","settings","screen-values","screen-time-zone","format-string"])],4)}const l=i._export_sfc(c,[["render",m]]);exports.default=l;
2
- //# sourceMappingURL=FormatvalueWidget-ulLzg1E-.cjs.map
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./Widget-DghDRiv6.cjs"),o=require("./ValueWidget-CyN11MWT.cjs"),t=require("vue"),i=require("./CustomIcon-eie3rPKh.cjs"),r=4,c={components:{ValueWidget:o.default},mixins:[n.Widget],computed:{getParameters(){return[this.parameters[0],this.parameters[1],this.parameters[2],this.parameters[4]]}},created(){this.setWidth(parseInt(this.parameters[5])+r,"ch",12+r)}};function m(e,u,p,d,g,s){const a=t.resolveComponent("value-widget");return t.openBlock(),t.createElementBlock("div",{ref:"container",class:"d-flex flex-row",style:t.normalizeStyle(e.computedStyle)},[t.createVNode(a,t.mergeProps(e.$attrs,{parameters:s.getParameters,settings:e.appliedSettings,"screen-values":e.screenValues,"screen-time-zone":e.screenTimeZone,"format-string":e.parameters[3]}),null,16,["parameters","settings","screen-values","screen-time-zone","format-string"])],4)}const l=i._export_sfc(c,[["render",m]]);exports.default=l;
2
+ //# sourceMappingURL=FormatvalueWidget-DJkp_gM_.cjs.map