@openc3/vue-common 6.4.1 → 6.4.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 (356) hide show
  1. package/dist/{ArrayWidget-CeyoPOhk.js → ArrayWidget-D0fKsdTb.js} +4 -4
  2. package/dist/{ArrayWidget-CeyoPOhk.js.map → ArrayWidget-D0fKsdTb.js.map} +1 -1
  3. package/dist/{ArrayWidget-C7qsXQC9.cjs → ArrayWidget-F8xL9dRA.cjs} +2 -2
  4. package/dist/{ArrayWidget-C7qsXQC9.cjs.map → ArrayWidget-F8xL9dRA.cjs.map} +1 -1
  5. package/dist/{ArrayplotWidget-BEw4fJPY.js → ArrayplotWidget-BmRSuGhA.js} +3 -3
  6. package/dist/{ArrayplotWidget-BEw4fJPY.js.map → ArrayplotWidget-BmRSuGhA.js.map} +1 -1
  7. package/dist/{ArrayplotWidget-S4tyM6zU.cjs → ArrayplotWidget-D6_PhmMa.cjs} +2 -2
  8. package/dist/{ArrayplotWidget-S4tyM6zU.cjs.map → ArrayplotWidget-D6_PhmMa.cjs.map} +1 -1
  9. package/dist/{BarColumn-B2FQVNoP.cjs → BarColumn-DO5zpCu2.cjs} +2 -2
  10. package/dist/{BarColumn-B2FQVNoP.cjs.map → BarColumn-DO5zpCu2.cjs.map} +1 -1
  11. package/dist/{BarColumn-CIWppEH6.js → BarColumn-DtYw6Gmq.js} +3 -3
  12. package/dist/{BarColumn-CIWppEH6.js.map → BarColumn-DtYw6Gmq.js.map} +1 -1
  13. package/dist/{BlockWidget-EZBTae9s.cjs → BlockWidget-CbuJPszc.cjs} +2 -2
  14. package/dist/{BlockWidget-EZBTae9s.cjs.map → BlockWidget-CbuJPszc.cjs.map} +1 -1
  15. package/dist/{BlockWidget-DRtBkPat.js → BlockWidget-Dpxbw455.js} +4 -4
  16. package/dist/{BlockWidget-DRtBkPat.js.map → BlockWidget-Dpxbw455.js.map} +1 -1
  17. package/dist/{ButtonWidget-4GORf9BG.js → ButtonWidget-8iOpXmpp.js} +4 -4
  18. package/dist/{ButtonWidget-4GORf9BG.js.map → ButtonWidget-8iOpXmpp.js.map} +1 -1
  19. package/dist/{ButtonWidget-C0UM4M51.cjs → ButtonWidget-DB464bRo.cjs} +2 -2
  20. package/dist/{ButtonWidget-C0UM4M51.cjs.map → ButtonWidget-DB464bRo.cjs.map} +1 -1
  21. package/dist/{CanvasWidget-VW1uHIU0.js → CanvasWidget-B0iU38rA.js} +2 -2
  22. package/dist/{CanvasWidget-VW1uHIU0.js.map → CanvasWidget-B0iU38rA.js.map} +1 -1
  23. package/dist/{CanvasWidget-77u4rg8R.cjs → CanvasWidget-D4iIs915.cjs} +2 -2
  24. package/dist/{CanvasWidget-77u4rg8R.cjs.map → CanvasWidget-D4iIs915.cjs.map} +1 -1
  25. package/dist/{CanvasdotWidget-unc83V9l.js → CanvasdotWidget-C9viSVBs.js} +2 -2
  26. package/dist/{CanvasdotWidget-unc83V9l.js.map → CanvasdotWidget-C9viSVBs.js.map} +1 -1
  27. package/dist/{CanvasdotWidget-B4olJsKr.cjs → CanvasdotWidget-DG6qDFlh.cjs} +2 -2
  28. package/dist/{CanvasdotWidget-B4olJsKr.cjs.map → CanvasdotWidget-DG6qDFlh.cjs.map} +1 -1
  29. package/dist/{CanvasimageWidget-BPk3GdGV.cjs → CanvasimageWidget-BJhOpZ3q.cjs} +2 -2
  30. package/dist/{CanvasimageWidget-BPk3GdGV.cjs.map → CanvasimageWidget-BJhOpZ3q.cjs.map} +1 -1
  31. package/dist/{CanvasimageWidget-CNPV5Ale.js → CanvasimageWidget-CFiCpITu.js} +3 -3
  32. package/dist/{CanvasimageWidget-CNPV5Ale.js.map → CanvasimageWidget-CFiCpITu.js.map} +1 -1
  33. package/dist/{CanvasimagevalueWidget-DpPDDitX.cjs → CanvasimagevalueWidget-D-4P_8Gh.cjs} +2 -2
  34. package/dist/{CanvasimagevalueWidget-DpPDDitX.cjs.map → CanvasimagevalueWidget-D-4P_8Gh.cjs.map} +1 -1
  35. package/dist/{CanvasimagevalueWidget-DsQbSZt_.js → CanvasimagevalueWidget-fu6vbAY0.js} +3 -3
  36. package/dist/{CanvasimagevalueWidget-DsQbSZt_.js.map → CanvasimagevalueWidget-fu6vbAY0.js.map} +1 -1
  37. package/dist/{CanvaslabelWidget-CjKvr47x.cjs → CanvaslabelWidget-1OS-a3F4.cjs} +2 -2
  38. package/dist/{CanvaslabelWidget-CjKvr47x.cjs.map → CanvaslabelWidget-1OS-a3F4.cjs.map} +1 -1
  39. package/dist/{CanvaslabelWidget-B-5KAkZr.js → CanvaslabelWidget-BVqHq3Vp.js} +2 -2
  40. package/dist/{CanvaslabelWidget-B-5KAkZr.js.map → CanvaslabelWidget-BVqHq3Vp.js.map} +1 -1
  41. package/dist/{CanvaslabelvalueWidget-DX-b_55r.js → CanvaslabelvalueWidget-BOFa8-NU.js} +2 -2
  42. package/dist/{CanvaslabelvalueWidget-DX-b_55r.js.map → CanvaslabelvalueWidget-BOFa8-NU.js.map} +1 -1
  43. package/dist/{CanvaslabelvalueWidget-C0jdjHxr.cjs → CanvaslabelvalueWidget-C3vVvK2b.cjs} +2 -2
  44. package/dist/{CanvaslabelvalueWidget-C0jdjHxr.cjs.map → CanvaslabelvalueWidget-C3vVvK2b.cjs.map} +1 -1
  45. package/dist/{CanvaslineWidget-C-4EjDkj.cjs → CanvaslineWidget-Cr8MsDUl.cjs} +2 -2
  46. package/dist/{CanvaslineWidget-C-4EjDkj.cjs.map → CanvaslineWidget-Cr8MsDUl.cjs.map} +1 -1
  47. package/dist/{CanvaslineWidget-DiNWzbpu.js → CanvaslineWidget-l3ko0QXk.js} +2 -2
  48. package/dist/{CanvaslineWidget-DiNWzbpu.js.map → CanvaslineWidget-l3ko0QXk.js.map} +1 -1
  49. package/dist/{CanvaslinevalueWidget-Du9pwAN7.js → CanvaslinevalueWidget-BCZoO-Z6.js} +2 -2
  50. package/dist/{CanvaslinevalueWidget-Du9pwAN7.js.map → CanvaslinevalueWidget-BCZoO-Z6.js.map} +1 -1
  51. package/dist/{CanvaslinevalueWidget-x81dANpk.cjs → CanvaslinevalueWidget-DRowns-E.cjs} +2 -2
  52. package/dist/{CanvaslinevalueWidget-x81dANpk.cjs.map → CanvaslinevalueWidget-DRowns-E.cjs.map} +1 -1
  53. package/dist/{CheckbuttonWidget--QM-segm.js → CheckbuttonWidget-BN7e1d5b.js} +2 -2
  54. package/dist/{CheckbuttonWidget--QM-segm.js.map → CheckbuttonWidget-BN7e1d5b.js.map} +1 -1
  55. package/dist/{CheckbuttonWidget-LWSGbUuH.cjs → CheckbuttonWidget-Cy9VUV7t.cjs} +2 -2
  56. package/dist/{CheckbuttonWidget-LWSGbUuH.cjs.map → CheckbuttonWidget-Cy9VUV7t.cjs.map} +1 -1
  57. package/dist/{ComboboxWidget-BDpHIcCo.js → ComboboxWidget-Bb5RGXDB.js} +2 -2
  58. package/dist/{ComboboxWidget-BDpHIcCo.js.map → ComboboxWidget-Bb5RGXDB.js.map} +1 -1
  59. package/dist/{ComboboxWidget-DR8EmM6T.cjs → ComboboxWidget-DbQwLEJY.cjs} +2 -2
  60. package/dist/{ComboboxWidget-DR8EmM6T.cjs.map → ComboboxWidget-DbQwLEJY.cjs.map} +1 -1
  61. package/dist/{CriticalCmdDialog-D4-eoA3P.js → CriticalCmdDialog-BUHsxfpO.js} +2 -2
  62. package/dist/{CriticalCmdDialog-D4-eoA3P.js.map → CriticalCmdDialog-BUHsxfpO.js.map} +1 -1
  63. package/dist/{CriticalCmdDialog-Ct5WeIW_.cjs → CriticalCmdDialog-p0ZMNHpv.cjs} +2 -2
  64. package/dist/{CriticalCmdDialog-Ct5WeIW_.cjs.map → CriticalCmdDialog-p0ZMNHpv.cjs.map} +1 -1
  65. package/dist/{DateWidget-CBzHYk5i.cjs → DateWidget-Cv3Uzbyr.cjs} +2 -2
  66. package/dist/{DateWidget-CBzHYk5i.cjs.map → DateWidget-Cv3Uzbyr.cjs.map} +1 -1
  67. package/dist/{DateWidget-BCmQNavZ.js → DateWidget-Dggqab-F.js} +2 -2
  68. package/dist/{DateWidget-BCmQNavZ.js.map → DateWidget-Dggqab-F.js.map} +1 -1
  69. package/dist/{DetailsDialog-OMd7LWdZ.js → DetailsDialog-BhSAQDSK.js} +2 -2
  70. package/dist/{DetailsDialog-OMd7LWdZ.js.map → DetailsDialog-BhSAQDSK.js.map} +1 -1
  71. package/dist/{DetailsDialog-T9G076-B.cjs → DetailsDialog-CSUO0ibv.cjs} +2 -2
  72. package/dist/{DetailsDialog-T9G076-B.cjs.map → DetailsDialog-CSUO0ibv.cjs.map} +1 -1
  73. package/dist/{EventListDialog-COOwwkxk.cjs → EventListDialog-C7RuZnvD.cjs} +2 -2
  74. package/dist/{EventListDialog-COOwwkxk.cjs.map → EventListDialog-C7RuZnvD.cjs.map} +1 -1
  75. package/dist/{EventListDialog-ankpCg-n.js → EventListDialog-CSxz4nmr.js} +3 -3
  76. package/dist/{EventListDialog-ankpCg-n.js.map → EventListDialog-CSxz4nmr.js.map} +1 -1
  77. package/dist/{FormatvalueWidget-CPn5mDHY.js → FormatvalueWidget-B9_PbzY2.js} +3 -3
  78. package/dist/{FormatvalueWidget-CPn5mDHY.js.map → FormatvalueWidget-B9_PbzY2.js.map} +1 -1
  79. package/dist/{FormatvalueWidget-wjsl4ty0.cjs → FormatvalueWidget-VYVvrtya.cjs} +2 -2
  80. package/dist/{FormatvalueWidget-wjsl4ty0.cjs.map → FormatvalueWidget-VYVvrtya.cjs.map} +1 -1
  81. package/dist/{Graph-vUcIyyTp.js → Graph-B29y4d5A.js} +2 -2
  82. package/dist/{Graph-vUcIyyTp.js.map → Graph-B29y4d5A.js.map} +1 -1
  83. package/dist/{Graph-hTOB_jv2.cjs → Graph-B2Ir-2Ot.cjs} +2 -2
  84. package/dist/{Graph-hTOB_jv2.cjs.map → Graph-B2Ir-2Ot.cjs.map} +1 -1
  85. package/dist/{GraphWidget-D3rDXvA8.cjs → GraphWidget-BsiCtRsJ.cjs} +2 -2
  86. package/dist/{GraphWidget-D3rDXvA8.cjs.map → GraphWidget-BsiCtRsJ.cjs.map} +1 -1
  87. package/dist/{GraphWidget-Cl97QQYm.js → GraphWidget-oBxPa3EB.js} +2 -2
  88. package/dist/{GraphWidget-Cl97QQYm.js.map → GraphWidget-oBxPa3EB.js.map} +1 -1
  89. package/dist/{HorizontalWidget-CtTkQHl-.js → HorizontalWidget-BWgZL_Oz.js} +2 -2
  90. package/dist/{HorizontalWidget-CtTkQHl-.js.map → HorizontalWidget-BWgZL_Oz.js.map} +1 -1
  91. package/dist/{HorizontalWidget-72nrDrwn.cjs → HorizontalWidget-wn07kYWX.cjs} +2 -2
  92. package/dist/{HorizontalWidget-72nrDrwn.cjs.map → HorizontalWidget-wn07kYWX.cjs.map} +1 -1
  93. package/dist/{HorizontalboxWidget-C8kuEm-u.cjs → HorizontalboxWidget-BQLGULQ-.cjs} +2 -2
  94. package/dist/{HorizontalboxWidget-C8kuEm-u.cjs.map → HorizontalboxWidget-BQLGULQ-.cjs.map} +1 -1
  95. package/dist/{HorizontalboxWidget-Dn9zVn4r.js → HorizontalboxWidget-yMYUnNB8.js} +5 -5
  96. package/dist/{HorizontalboxWidget-Dn9zVn4r.js.map → HorizontalboxWidget-yMYUnNB8.js.map} +1 -1
  97. package/dist/{HorizontallineWidget-BBvYWaP7.js → HorizontallineWidget-C4zMx7z2.js} +2 -2
  98. package/dist/{HorizontallineWidget-BBvYWaP7.js.map → HorizontallineWidget-C4zMx7z2.js.map} +1 -1
  99. package/dist/{HorizontallineWidget-Bs_p5rzY.cjs → HorizontallineWidget-CfrV_K28.cjs} +2 -2
  100. package/dist/{HorizontallineWidget-Bs_p5rzY.cjs.map → HorizontallineWidget-CfrV_K28.cjs.map} +1 -1
  101. package/dist/{IframeWidget-BmZOip3U.js → IframeWidget-DA4P_mJT.js} +2 -2
  102. package/dist/{IframeWidget-BmZOip3U.js.map → IframeWidget-DA4P_mJT.js.map} +1 -1
  103. package/dist/{IframeWidget-Bhl0G51c.cjs → IframeWidget-DeNDRzqB.cjs} +2 -2
  104. package/dist/{IframeWidget-Bhl0G51c.cjs.map → IframeWidget-DeNDRzqB.cjs.map} +1 -1
  105. package/dist/{ImageLoader-CXV42ZAx.cjs → ImageLoader-mxOVUyj1.cjs} +2 -2
  106. package/dist/{ImageLoader-CXV42ZAx.cjs.map → ImageLoader-mxOVUyj1.cjs.map} +1 -1
  107. package/dist/{ImageLoader-wYNaGuuz.js → ImageLoader-rvd9t-mk.js} +2 -2
  108. package/dist/{ImageLoader-wYNaGuuz.js.map → ImageLoader-rvd9t-mk.js.map} +1 -1
  109. package/dist/{ImageviewerWidget-ByuTqBHq.js → ImageviewerWidget-B1wK0hK4.js} +2 -2
  110. package/dist/{ImageviewerWidget-ByuTqBHq.js.map → ImageviewerWidget-B1wK0hK4.js.map} +1 -1
  111. package/dist/{ImageviewerWidget-BAK_GlYK.cjs → ImageviewerWidget-CV76ouHz.cjs} +2 -2
  112. package/dist/{ImageviewerWidget-BAK_GlYK.cjs.map → ImageviewerWidget-CV76ouHz.cjs.map} +1 -1
  113. package/dist/{InterfacesTab-BbsiYwEX.js → InterfacesTab-CVvIDSTG.js} +3 -3
  114. package/dist/{InterfacesTab-BbsiYwEX.js.map → InterfacesTab-CVvIDSTG.js.map} +1 -1
  115. package/dist/{InterfacesTab-CnQLkjoz.cjs → InterfacesTab-DHoYHLxF.cjs} +2 -2
  116. package/dist/{InterfacesTab-CnQLkjoz.cjs.map → InterfacesTab-DHoYHLxF.cjs.map} +1 -1
  117. package/dist/{LabelWidget-BP72ze-R.cjs → LabelWidget-BobQDS5m.cjs} +2 -2
  118. package/dist/{LabelWidget-BP72ze-R.cjs.map → LabelWidget-BobQDS5m.cjs.map} +1 -1
  119. package/dist/{LabelWidget-Dmb5F5j-.js → LabelWidget-CY0saBoK.js} +2 -2
  120. package/dist/{LabelWidget-Dmb5F5j-.js.map → LabelWidget-CY0saBoK.js.map} +1 -1
  121. package/dist/{LabelledWidget-DV1IbbPS.js → LabelledWidget-B3ZOYaGy.js} +4 -4
  122. package/dist/{LabelledWidget-DV1IbbPS.js.map → LabelledWidget-B3ZOYaGy.js.map} +1 -1
  123. package/dist/{LabelledWidget-DIflzlDv.cjs → LabelledWidget-Dp4fjHpu.cjs} +2 -2
  124. package/dist/{LabelledWidget-DIflzlDv.cjs.map → LabelledWidget-Dp4fjHpu.cjs.map} +1 -1
  125. package/dist/{LabelprogressbarWidget-B18EaMhU.cjs → LabelprogressbarWidget-1BF_rNsT.cjs} +2 -2
  126. package/dist/{LabelprogressbarWidget-B18EaMhU.cjs.map → LabelprogressbarWidget-1BF_rNsT.cjs.map} +1 -1
  127. package/dist/{LabelprogressbarWidget-BHBDYVZp.js → LabelprogressbarWidget-CmXcESTg.js} +4 -4
  128. package/dist/{LabelprogressbarWidget-BHBDYVZp.js.map → LabelprogressbarWidget-CmXcESTg.js.map} +1 -1
  129. package/dist/{LabelsparklineWidget-BaoIdd7s.js → LabelsparklineWidget-D_yrQrn6.js} +4 -4
  130. package/dist/{LabelsparklineWidget-BaoIdd7s.js.map → LabelsparklineWidget-D_yrQrn6.js.map} +1 -1
  131. package/dist/{LabelsparklineWidget-Bdft2p6Y.cjs → LabelsparklineWidget-DgzZAWfI.cjs} +2 -2
  132. package/dist/{LabelsparklineWidget-Bdft2p6Y.cjs.map → LabelsparklineWidget-DgzZAWfI.cjs.map} +1 -1
  133. package/dist/{LabelvalueWidget-DiqMgePn.cjs → LabelvalueWidget-T6FC3w0l.cjs} +2 -2
  134. package/dist/{LabelvalueWidget-DiqMgePn.cjs.map → LabelvalueWidget-T6FC3w0l.cjs.map} +1 -1
  135. package/dist/{LabelvalueWidget-wuW55zQP.js → LabelvalueWidget-dNaNfsBE.js} +4 -4
  136. package/dist/{LabelvalueWidget-wuW55zQP.js.map → LabelvalueWidget-dNaNfsBE.js.map} +1 -1
  137. package/dist/{LabelvaluedescWidget-BBHwqvj4.js → LabelvaluedescWidget-3vNoH6Mc.js} +5 -5
  138. package/dist/{LabelvaluedescWidget-BBHwqvj4.js.map → LabelvaluedescWidget-3vNoH6Mc.js.map} +1 -1
  139. package/dist/{LabelvaluedescWidget-fN9XLm-N.cjs → LabelvaluedescWidget-Cb7UqEa-.cjs} +2 -2
  140. package/dist/{LabelvaluedescWidget-fN9XLm-N.cjs.map → LabelvaluedescWidget-Cb7UqEa-.cjs.map} +1 -1
  141. package/dist/{LabelvaluelimitsbarWidget-77Rc3lCf.js → LabelvaluelimitsbarWidget-7VppYVIN.js} +4 -4
  142. package/dist/{LabelvaluelimitsbarWidget-77Rc3lCf.js.map → LabelvaluelimitsbarWidget-7VppYVIN.js.map} +1 -1
  143. package/dist/{LabelvaluelimitsbarWidget-Dp5qsue9.cjs → LabelvaluelimitsbarWidget-Bi43GWx7.cjs} +2 -2
  144. package/dist/{LabelvaluelimitsbarWidget-Dp5qsue9.cjs.map → LabelvaluelimitsbarWidget-Bi43GWx7.cjs.map} +1 -1
  145. package/dist/{LabelvaluelimitscolumnWidget-nounrACl.js → LabelvaluelimitscolumnWidget-BZ6nwifg.js} +5 -5
  146. package/dist/{LabelvaluelimitscolumnWidget-nounrACl.js.map → LabelvaluelimitscolumnWidget-BZ6nwifg.js.map} +1 -1
  147. package/dist/{LabelvaluelimitscolumnWidget-uR4QE_cm.cjs → LabelvaluelimitscolumnWidget-CtTEiWPR.cjs} +2 -2
  148. package/dist/{LabelvaluelimitscolumnWidget-uR4QE_cm.cjs.map → LabelvaluelimitscolumnWidget-CtTEiWPR.cjs.map} +1 -1
  149. package/dist/{LabelvaluerangebarWidget-MVkSnTVH.cjs → LabelvaluerangebarWidget-C5w7sRFw.cjs} +2 -2
  150. package/dist/{LabelvaluerangebarWidget-MVkSnTVH.cjs.map → LabelvaluerangebarWidget-C5w7sRFw.cjs.map} +1 -1
  151. package/dist/{LabelvaluerangebarWidget-B83Jj5Q1.js → LabelvaluerangebarWidget-IyuXLNsw.js} +4 -4
  152. package/dist/{LabelvaluerangebarWidget-B83Jj5Q1.js.map → LabelvaluerangebarWidget-IyuXLNsw.js.map} +1 -1
  153. package/dist/{Layout-ByQC7nQ3.js → Layout-BqMhhhws.js} +2 -2
  154. package/dist/{Layout-ByQC7nQ3.js.map → Layout-BqMhhhws.js.map} +1 -1
  155. package/dist/Layout-DUWX7PWw.cjs +2 -0
  156. package/dist/{Layout-CFJMHNqy.cjs.map → Layout-DUWX7PWw.cjs.map} +1 -1
  157. package/dist/{LedWidget-ghzR6jZJ.cjs → LedWidget-ByRkD33m.cjs} +2 -2
  158. package/dist/{LedWidget-ghzR6jZJ.cjs.map → LedWidget-ByRkD33m.cjs.map} +1 -1
  159. package/dist/{LedWidget-Cccb8YTk.js → LedWidget-DSxpmIOK.js} +4 -4
  160. package/dist/{LedWidget-Cccb8YTk.js.map → LedWidget-DSxpmIOK.js.map} +1 -1
  161. package/dist/{LimitsbarWidget-D1EBBwX1.js → LimitsbarWidget-BoPTdVV5.js} +2 -2
  162. package/dist/{LimitsbarWidget-D1EBBwX1.js.map → LimitsbarWidget-BoPTdVV5.js.map} +1 -1
  163. package/dist/{LimitsbarWidget-Dg2_T5OY.cjs → LimitsbarWidget-DAZA6YDH.cjs} +2 -2
  164. package/dist/{LimitsbarWidget-Dg2_T5OY.cjs.map → LimitsbarWidget-DAZA6YDH.cjs.map} +1 -1
  165. package/dist/{LimitscolorWidget--1aPSNVB.js → LimitscolorWidget-Bt3qOvrv.js} +2 -2
  166. package/dist/{LimitscolorWidget--1aPSNVB.js.map → LimitscolorWidget-Bt3qOvrv.js.map} +1 -1
  167. package/dist/{LimitscolorWidget-D9mHLFOs.cjs → LimitscolorWidget-ECUDD3Yg.cjs} +2 -2
  168. package/dist/{LimitscolorWidget-D9mHLFOs.cjs.map → LimitscolorWidget-ECUDD3Yg.cjs.map} +1 -1
  169. package/dist/{LimitscolumnWidget-swnMNApm.js → LimitscolumnWidget-Ce6YnUBz.js} +2 -2
  170. package/dist/{LimitscolumnWidget-swnMNApm.js.map → LimitscolumnWidget-Ce6YnUBz.js.map} +1 -1
  171. package/dist/{LimitscolumnWidget-D18x3aW-.cjs → LimitscolumnWidget-DrsRK8l_.cjs} +2 -2
  172. package/dist/{LimitscolumnWidget-D18x3aW-.cjs.map → LimitscolumnWidget-DrsRK8l_.cjs.map} +1 -1
  173. package/dist/{LinegraphWidget-BdCc6zps.cjs → LinegraphWidget-BK03y7ev.cjs} +2 -2
  174. package/dist/{LinegraphWidget-BdCc6zps.cjs.map → LinegraphWidget-BK03y7ev.cjs.map} +1 -1
  175. package/dist/{LinegraphWidget-BbI-wOnq.js → LinegraphWidget-XAbg0jj2.js} +4 -4
  176. package/dist/{LinegraphWidget-BbI-wOnq.js.map → LinegraphWidget-XAbg0jj2.js.map} +1 -1
  177. package/dist/{MatrixbycolumnsWidget-Bx2qMr8P.js → MatrixbycolumnsWidget-5MgJFZtz.js} +3 -3
  178. package/dist/{MatrixbycolumnsWidget-Bx2qMr8P.js.map → MatrixbycolumnsWidget-5MgJFZtz.js.map} +1 -1
  179. package/dist/{MatrixbycolumnsWidget-CuhTHsdb.cjs → MatrixbycolumnsWidget-Cl1-0jWU.cjs} +2 -2
  180. package/dist/{MatrixbycolumnsWidget-CuhTHsdb.cjs.map → MatrixbycolumnsWidget-Cl1-0jWU.cjs.map} +1 -1
  181. package/dist/{MicroservicesTab-7mVRcHEj.cjs → MicroservicesTab-DLAy8cBq.cjs} +2 -2
  182. package/dist/{MicroservicesTab-7mVRcHEj.cjs.map → MicroservicesTab-DLAy8cBq.cjs.map} +1 -1
  183. package/dist/{MicroservicesTab-CtI7BEt0.js → MicroservicesTab-DlnZ9h0y.js} +3 -3
  184. package/dist/{MicroservicesTab-CtI7BEt0.js.map → MicroservicesTab-DlnZ9h0y.js.map} +1 -1
  185. package/dist/{Openc3Screen-DFYYhHt7.js → Openc3Screen-1vPogvfj.js} +125 -115
  186. package/dist/Openc3Screen-1vPogvfj.js.map +1 -0
  187. package/dist/Openc3Screen-DERmiz3g.cjs +5 -0
  188. package/dist/Openc3Screen-DERmiz3g.cjs.map +1 -0
  189. package/dist/{OutputDialog-Dft9Xm4R.cjs → OutputDialog-BUc85qgI.cjs} +2 -2
  190. package/dist/{OutputDialog-Dft9Xm4R.cjs.map → OutputDialog-BUc85qgI.cjs.map} +1 -1
  191. package/dist/{OutputDialog-CqD5uI0m.js → OutputDialog-aZe2HT6j.js} +2 -2
  192. package/dist/{OutputDialog-CqD5uI0m.js.map → OutputDialog-aZe2HT6j.js.map} +1 -1
  193. package/dist/{PackagesTab-DhMk-fi5.js → PackagesTab-D5hNxd_X.js} +3 -3
  194. package/dist/{PackagesTab-DhMk-fi5.js.map → PackagesTab-D5hNxd_X.js.map} +1 -1
  195. package/dist/{PackagesTab-BxP1kiSR.cjs → PackagesTab-D9h8f-Rc.cjs} +2 -2
  196. package/dist/{PackagesTab-BxP1kiSR.cjs.map → PackagesTab-D9h8f-Rc.cjs.map} +1 -1
  197. package/dist/{PluginsTab-DxxEqPCA.js → PluginsTab-BP8DYqd-.js} +3 -3
  198. package/dist/{PluginsTab-DxxEqPCA.js.map → PluginsTab-BP8DYqd-.js.map} +1 -1
  199. package/dist/{PluginsTab-BKJo5vK-.cjs → PluginsTab-swaGuthJ.cjs} +2 -2
  200. package/dist/{PluginsTab-BKJo5vK-.cjs.map → PluginsTab-swaGuthJ.cjs.map} +1 -1
  201. package/dist/{ProgressbarWidget-7rJeuX6H.js → ProgressbarWidget-CDwDOFIy.js} +2 -2
  202. package/dist/{ProgressbarWidget-7rJeuX6H.js.map → ProgressbarWidget-CDwDOFIy.js.map} +1 -1
  203. package/dist/{ProgressbarWidget-DLvbQ0g-.cjs → ProgressbarWidget-giMKlGsU.cjs} +2 -2
  204. package/dist/{ProgressbarWidget-DLvbQ0g-.cjs.map → ProgressbarWidget-giMKlGsU.cjs.map} +1 -1
  205. package/dist/{RadiobuttonWidget-C15SchQH.cjs → RadiobuttonWidget-CDPV19UM.cjs} +2 -2
  206. package/dist/{RadiobuttonWidget-C15SchQH.cjs.map → RadiobuttonWidget-CDPV19UM.cjs.map} +1 -1
  207. package/dist/{RadiobuttonWidget-DsEw3JiU.js → RadiobuttonWidget-cQ8V8LaD.js} +2 -2
  208. package/dist/{RadiobuttonWidget-DsEw3JiU.js.map → RadiobuttonWidget-cQ8V8LaD.js.map} +1 -1
  209. package/dist/{RadiogroupWidget-DhfbTvQ8.js → RadiogroupWidget-BvRnuGA2.js} +2 -2
  210. package/dist/{RadiogroupWidget-DhfbTvQ8.js.map → RadiogroupWidget-BvRnuGA2.js.map} +1 -1
  211. package/dist/{RadiogroupWidget-BZS_MkSP.cjs → RadiogroupWidget-DPYowBpl.cjs} +2 -2
  212. package/dist/{RadiogroupWidget-BZS_MkSP.cjs.map → RadiogroupWidget-DPYowBpl.cjs.map} +1 -1
  213. package/dist/{RangebarWidget-bBSBfvHk.cjs → RangebarWidget-DtjrqC3F.cjs} +2 -2
  214. package/dist/{RangebarWidget-bBSBfvHk.cjs.map → RangebarWidget-DtjrqC3F.cjs.map} +1 -1
  215. package/dist/{RangebarWidget-BEGvSL_K.js → RangebarWidget-aHmgV0qs.js} +2 -2
  216. package/dist/{RangebarWidget-BEGvSL_K.js.map → RangebarWidget-aHmgV0qs.js.map} +1 -1
  217. package/dist/{RedisTab-Bq8Frctp.js → RedisTab-D1-HQK-m.js} +2 -2
  218. package/dist/{RedisTab-Bq8Frctp.js.map → RedisTab-D1-HQK-m.js.map} +1 -1
  219. package/dist/{RedisTab-CWYntIvy.cjs → RedisTab-DcFz87gW.cjs} +2 -2
  220. package/dist/{RedisTab-CWYntIvy.cjs.map → RedisTab-DcFz87gW.cjs.map} +1 -1
  221. package/dist/{RollupWidget-BZhspgWd.js → RollupWidget-D1jUPrUQ.js} +2 -2
  222. package/dist/{RollupWidget-BZhspgWd.js.map → RollupWidget-D1jUPrUQ.js.map} +1 -1
  223. package/dist/{RollupWidget-BueYskqE.cjs → RollupWidget-Dw2GIsBR.cjs} +2 -2
  224. package/dist/{RollupWidget-BueYskqE.cjs.map → RollupWidget-Dw2GIsBR.cjs.map} +1 -1
  225. package/dist/{RoutersTab-Bg6dpAXr.js → RoutersTab-CF0ADapt.js} +3 -3
  226. package/dist/{RoutersTab-Bg6dpAXr.js.map → RoutersTab-CF0ADapt.js.map} +1 -1
  227. package/dist/{RoutersTab-DOseaOsv.cjs → RoutersTab-DJDjAIQf.cjs} +2 -2
  228. package/dist/{RoutersTab-DOseaOsv.cjs.map → RoutersTab-DJDjAIQf.cjs.map} +1 -1
  229. package/dist/{ScriptChooser-CHkObjcT.cjs → ScriptChooser-CPzgZtTN.cjs} +2 -2
  230. package/dist/{ScriptChooser-CHkObjcT.cjs.map → ScriptChooser-CPzgZtTN.cjs.map} +1 -1
  231. package/dist/{ScriptChooser-DBkFAc6E.js → ScriptChooser-IegS44oT.js} +2 -2
  232. package/dist/{ScriptChooser-DBkFAc6E.js.map → ScriptChooser-IegS44oT.js.map} +1 -1
  233. package/dist/{ScrollwindowWidget-CJmuGHai.cjs → ScrollwindowWidget-C79nSa0g.cjs} +2 -2
  234. package/dist/{ScrollwindowWidget-CJmuGHai.cjs.map → ScrollwindowWidget-C79nSa0g.cjs.map} +1 -1
  235. package/dist/{ScrollwindowWidget-qZ3nhhVU.js → ScrollwindowWidget-Cn0o3b4E.js} +3 -3
  236. package/dist/{ScrollwindowWidget-qZ3nhhVU.js.map → ScrollwindowWidget-Cn0o3b4E.js.map} +1 -1
  237. package/dist/{SecretsTab-vdm8oj9_.js → SecretsTab-BAIHxgdM.js} +2 -2
  238. package/dist/{SecretsTab-vdm8oj9_.js.map → SecretsTab-BAIHxgdM.js.map} +1 -1
  239. package/dist/{SecretsTab-B49h9PhL.cjs → SecretsTab-BVpqbRn5.cjs} +2 -2
  240. package/dist/{SecretsTab-B49h9PhL.cjs.map → SecretsTab-BVpqbRn5.cjs.map} +1 -1
  241. package/dist/{SettingsTab-C05e6-Xm.js → SettingsTab-C2k0BDcX.js} +3 -3
  242. package/dist/{SettingsTab-C05e6-Xm.js.map → SettingsTab-C2k0BDcX.js.map} +1 -1
  243. package/dist/{SettingsTab-fmHVuOps.cjs → SettingsTab-J1frSo-9.cjs} +2 -2
  244. package/dist/{SettingsTab-fmHVuOps.cjs.map → SettingsTab-J1frSo-9.cjs.map} +1 -1
  245. package/dist/{SignalWidget-Bh14Zrch.js → SignalWidget-BQBzqdU-.js} +2 -2
  246. package/dist/{SignalWidget-Bh14Zrch.js.map → SignalWidget-BQBzqdU-.js.map} +1 -1
  247. package/dist/{SignalWidget-J3LFoUd-.cjs → SignalWidget-sAMVlO9e.cjs} +2 -2
  248. package/dist/{SignalWidget-J3LFoUd-.cjs.map → SignalWidget-sAMVlO9e.cjs.map} +1 -1
  249. package/dist/{SimpleTextDialog-plHG7LGh.js → SimpleTextDialog-3EEsXpGl.js} +2 -2
  250. package/dist/{SimpleTextDialog-plHG7LGh.js.map → SimpleTextDialog-3EEsXpGl.js.map} +1 -1
  251. package/dist/{SimpleTextDialog-CSsm9IoB.cjs → SimpleTextDialog-sOMrzIs7.cjs} +2 -2
  252. package/dist/{SimpleTextDialog-CSsm9IoB.cjs.map → SimpleTextDialog-sOMrzIs7.cjs.map} +1 -1
  253. package/dist/{SpacerWidget-D_NE46jZ.js → SpacerWidget-C0RmQY3t.js} +2 -2
  254. package/dist/{SpacerWidget-D_NE46jZ.js.map → SpacerWidget-C0RmQY3t.js.map} +1 -1
  255. package/dist/{SpacerWidget-CzqLoBdY.cjs → SpacerWidget-C5x4sFAQ.cjs} +2 -2
  256. package/dist/{SpacerWidget-CzqLoBdY.cjs.map → SpacerWidget-C5x4sFAQ.cjs.map} +1 -1
  257. package/dist/{SparklineWidget-CJEEJdZ-.js → SparklineWidget-BTH9rvcX.js} +4 -4
  258. package/dist/{SparklineWidget-CJEEJdZ-.js.map → SparklineWidget-BTH9rvcX.js.map} +1 -1
  259. package/dist/{SparklineWidget-DDRhatn7.cjs → SparklineWidget-CfA39olv.cjs} +2 -2
  260. package/dist/{SparklineWidget-DDRhatn7.cjs.map → SparklineWidget-CfA39olv.cjs.map} +1 -1
  261. package/dist/{TabbookWidget-C8k2kKLX.cjs → TabbookWidget-BrPTbXrU.cjs} +2 -2
  262. package/dist/{TabbookWidget-C8k2kKLX.cjs.map → TabbookWidget-BrPTbXrU.cjs.map} +1 -1
  263. package/dist/{TabbookWidget-C-SU65IF.js → TabbookWidget-C-aDdEoD.js} +2 -2
  264. package/dist/{TabbookWidget-C-SU65IF.js.map → TabbookWidget-C-aDdEoD.js.map} +1 -1
  265. package/dist/{TargetsTab-pU_wu9d-.cjs → TargetsTab-BV-eELWM.cjs} +2 -2
  266. package/dist/{TargetsTab-pU_wu9d-.cjs.map → TargetsTab-BV-eELWM.cjs.map} +1 -1
  267. package/dist/{TargetsTab-DyfyM9sC.js → TargetsTab-DAmlfJ9Z.js} +3 -3
  268. package/dist/{TargetsTab-DyfyM9sC.js.map → TargetsTab-DAmlfJ9Z.js.map} +1 -1
  269. package/dist/{TextboxWidget-Dn1Ds-b0.js → TextboxWidget-Dd2ccpUQ.js} +4 -4
  270. package/dist/{TextboxWidget-Dn1Ds-b0.js.map → TextboxWidget-Dd2ccpUQ.js.map} +1 -1
  271. package/dist/{TextboxWidget-CRDu77NK.cjs → TextboxWidget-Lw5glGxY.cjs} +2 -2
  272. package/dist/{TextboxWidget-CRDu77NK.cjs.map → TextboxWidget-Lw5glGxY.cjs.map} +1 -1
  273. package/dist/{TextfieldWidget-DGdD6b_-.cjs → TextfieldWidget-CTsiRDIJ.cjs} +2 -2
  274. package/dist/{TextfieldWidget-DGdD6b_-.cjs.map → TextfieldWidget-CTsiRDIJ.cjs.map} +1 -1
  275. package/dist/{TextfieldWidget-C0C7NL53.js → TextfieldWidget-DY3aFTnP.js} +2 -2
  276. package/dist/{TextfieldWidget-C0C7NL53.js.map → TextfieldWidget-DY3aFTnP.js.map} +1 -1
  277. package/dist/{TimeWidget-BlZoS24B.cjs → TimeWidget-CB1jqQSZ.cjs} +2 -2
  278. package/dist/{TimeWidget-BlZoS24B.cjs.map → TimeWidget-CB1jqQSZ.cjs.map} +1 -1
  279. package/dist/{TimeWidget-AFOTVB4w.js → TimeWidget-C_site21.js} +2 -2
  280. package/dist/{TimeWidget-AFOTVB4w.js.map → TimeWidget-C_site21.js.map} +1 -1
  281. package/dist/{TitleWidget-CbS_wrQw.js → TitleWidget-Bx81VfQD.js} +2 -2
  282. package/dist/{TitleWidget-CbS_wrQw.js.map → TitleWidget-Bx81VfQD.js.map} +1 -1
  283. package/dist/{TitleWidget-DDEnHVPP.cjs → TitleWidget-E91xUafI.cjs} +2 -2
  284. package/dist/{TitleWidget-DDEnHVPP.cjs.map → TitleWidget-E91xUafI.cjs.map} +1 -1
  285. package/dist/{ToolsTab-DCRNrlhT.cjs → ToolsTab-Bu3XUxr9.cjs} +2 -2
  286. package/dist/{ToolsTab-DCRNrlhT.cjs.map → ToolsTab-Bu3XUxr9.cjs.map} +1 -1
  287. package/dist/{ToolsTab-BvpoO0wt.js → ToolsTab-CW_TQ53O.js} +3 -3
  288. package/dist/{ToolsTab-BvpoO0wt.js.map → ToolsTab-CW_TQ53O.js.map} +1 -1
  289. package/dist/{TopBar-AjYGyx8W.js → TopBar-C9ro4_7Q.js} +2 -2
  290. package/dist/{TopBar-AjYGyx8W.js.map → TopBar-C9ro4_7Q.js.map} +1 -1
  291. package/dist/{TopBar-vznpQjGN.cjs → TopBar-CkCLoFp7.cjs} +2 -2
  292. package/dist/{TopBar-vznpQjGN.cjs.map → TopBar-CkCLoFp7.cjs.map} +1 -1
  293. package/dist/{UpgradeToEnterpriseDialog-CMVEjihv.js → UpgradeToEnterpriseDialog-BH0WHey-.js} +2 -2
  294. package/dist/{UpgradeToEnterpriseDialog-CMVEjihv.js.map → UpgradeToEnterpriseDialog-BH0WHey-.js.map} +1 -1
  295. package/dist/{UpgradeToEnterpriseDialog-1fVtqbze.cjs → UpgradeToEnterpriseDialog-EaQZfck4.cjs} +2 -2
  296. package/dist/{UpgradeToEnterpriseDialog-1fVtqbze.cjs.map → UpgradeToEnterpriseDialog-EaQZfck4.cjs.map} +1 -1
  297. package/dist/{UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B98GsSQS.cjs → UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-CHXJm9wA.cjs} +4 -4
  298. package/dist/{UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B98GsSQS.cjs.map → UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-CHXJm9wA.cjs.map} +1 -1
  299. package/dist/{UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-BOiUmW4q.js → UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-xI8cv5P5.js} +9 -4
  300. package/dist/{UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-BOiUmW4q.js.map → UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-xI8cv5P5.js.map} +1 -1
  301. package/dist/{VWidget-CMKh-tv6.cjs → VWidget-CRqTUgEv.cjs} +2 -2
  302. package/dist/{VWidget-CMKh-tv6.cjs.map → VWidget-CRqTUgEv.cjs.map} +1 -1
  303. package/dist/{VWidget-BlF_o-7Z.js → VWidget-DuUens7G.js} +2 -2
  304. package/dist/{VWidget-BlF_o-7Z.js.map → VWidget-DuUens7G.js.map} +1 -1
  305. package/dist/{ValueWidget-K7SCPEB6.cjs → ValueWidget-CN-B9LDi.cjs} +2 -2
  306. package/dist/{ValueWidget-K7SCPEB6.cjs.map → ValueWidget-CN-B9LDi.cjs.map} +1 -1
  307. package/dist/{ValueWidget-DFUfM5tw.js → ValueWidget-cbjxVV3B.js} +4 -4
  308. package/dist/{ValueWidget-DFUfM5tw.js.map → ValueWidget-cbjxVV3B.js.map} +1 -1
  309. package/dist/{ValuelimitsbarWidget-DcY2NV9X.cjs → ValuelimitsbarWidget-BLHVD0qM.cjs} +2 -2
  310. package/dist/{ValuelimitsbarWidget-DcY2NV9X.cjs.map → ValuelimitsbarWidget-BLHVD0qM.cjs.map} +1 -1
  311. package/dist/{ValuelimitsbarWidget-CALgABsT.js → ValuelimitsbarWidget-cQb2o_xH.js} +4 -4
  312. package/dist/{ValuelimitsbarWidget-CALgABsT.js.map → ValuelimitsbarWidget-cQb2o_xH.js.map} +1 -1
  313. package/dist/{ValuelimitscolumnWidget-Bs91VFLz.js → ValuelimitscolumnWidget-BBTuSCK9.js} +4 -4
  314. package/dist/{ValuelimitscolumnWidget-Bs91VFLz.js.map → ValuelimitscolumnWidget-BBTuSCK9.js.map} +1 -1
  315. package/dist/{ValuelimitscolumnWidget-DQKvlGap.cjs → ValuelimitscolumnWidget-DqGxHe2k.cjs} +2 -2
  316. package/dist/{ValuelimitscolumnWidget-DQKvlGap.cjs.map → ValuelimitscolumnWidget-DqGxHe2k.cjs.map} +1 -1
  317. package/dist/{ValuerangebarWidget-C7WHyR2h.js → ValuerangebarWidget-Ct7iGtu0.js} +4 -4
  318. package/dist/{ValuerangebarWidget-C7WHyR2h.js.map → ValuerangebarWidget-Ct7iGtu0.js.map} +1 -1
  319. package/dist/{ValuerangebarWidget-DnWuvusw.cjs → ValuerangebarWidget-xMsUfp1H.cjs} +2 -2
  320. package/dist/{ValuerangebarWidget-DnWuvusw.cjs.map → ValuerangebarWidget-xMsUfp1H.cjs.map} +1 -1
  321. package/dist/{VerticalWidget-COP5oVCK.js → VerticalWidget-DJn02myf.js} +2 -2
  322. package/dist/{VerticalWidget-COP5oVCK.js.map → VerticalWidget-DJn02myf.js.map} +1 -1
  323. package/dist/{VerticalWidget-eMN4dvxL.cjs → VerticalWidget-DiW_FZuh.cjs} +2 -2
  324. package/dist/{VerticalWidget-eMN4dvxL.cjs.map → VerticalWidget-DiW_FZuh.cjs.map} +1 -1
  325. package/dist/{VerticalboxWidget-CDPoOx4C.js → VerticalboxWidget-DHQMxtF3.js} +5 -5
  326. package/dist/{VerticalboxWidget-CDPoOx4C.js.map → VerticalboxWidget-DHQMxtF3.js.map} +1 -1
  327. package/dist/{VerticalboxWidget-UIBpyEz_.cjs → VerticalboxWidget-miKFocA3.cjs} +2 -2
  328. package/dist/{VerticalboxWidget-UIBpyEz_.cjs.map → VerticalboxWidget-miKFocA3.cjs.map} +1 -1
  329. package/dist/{Widget-Cg0pAxSF.cjs → Widget-BMqF6Utz.cjs} +2 -2
  330. package/dist/{Widget-Cg0pAxSF.cjs.map → Widget-BMqF6Utz.cjs.map} +1 -1
  331. package/dist/{Widget-cmJ76_g1.js → Widget-CP2CtyUr.js} +2 -2
  332. package/dist/{Widget-cmJ76_g1.js.map → Widget-CP2CtyUr.js.map} +1 -1
  333. package/dist/components.cjs +2 -2
  334. package/dist/components.cjs.map +1 -1
  335. package/dist/components.js +84 -76
  336. package/dist/components.js.map +1 -1
  337. package/dist/plugins.cjs +2 -2
  338. package/dist/plugins.cjs.map +1 -1
  339. package/dist/plugins.js +116 -110
  340. package/dist/plugins.js.map +1 -1
  341. package/dist/tools/admin.cjs +1 -1
  342. package/dist/tools/admin.js +12 -12
  343. package/dist/tools/base.cjs +1 -1
  344. package/dist/tools/base.js +2 -2
  345. package/dist/tools/calendar.cjs +1 -1
  346. package/dist/tools/calendar.js +1 -1
  347. package/dist/tools/scriptrunner.cjs +1 -1
  348. package/dist/tools/scriptrunner.js +8 -8
  349. package/dist/vue-common.css +1 -1
  350. package/dist/widgets.cjs +1 -1
  351. package/dist/widgets.js +63 -63
  352. package/package.json +2 -2
  353. package/dist/Layout-CFJMHNqy.cjs +0 -2
  354. package/dist/Openc3Screen-B4X70CVP.cjs +0 -5
  355. package/dist/Openc3Screen-B4X70CVP.cjs.map +0 -1
  356. package/dist/Openc3Screen-DFYYhHt7.js.map +0 -1
@@ -1,8 +1,8 @@
1
1
  import { a as we } from "../index-qCq0L4jN.js";
2
2
  import { resolveComponent as m, createBlock as M, openBlock as E, withCtx as g, createVNode as c, createElementVNode as T, createElementBlock as V, createTextVNode as S, Fragment as G, renderList as $, createCommentVNode as j, toDisplayString as A, withModifiers as H, withDirectives as ye, vShow as ve, toRaw as xe } from "vue";
3
3
  import { _ as q } from "../CustomIcon-h5X7369N.js";
4
- import { b as I, l as Ce } from "../UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-BOiUmW4q.js";
5
- import { A as U, T as Ee } from "../TopBar-AjYGyx8W.js";
4
+ import { b as I, l as Ce } from "../UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-xI8cv5P5.js";
5
+ import { A as U, T as Ee } from "../TopBar-C9ro4_7Q.js";
6
6
  import "single-spa";
7
7
  const Le = {
8
8
  props: {
@@ -556,61 +556,61 @@ const ct = /* @__PURE__ */ q(Pe, [["render", Fe]]), Ue = [
556
556
  displayName: "Plugins",
557
557
  name: "PluginsTab",
558
558
  path: "plugins",
559
- component: () => import("../PluginsTab-DxxEqPCA.js")
559
+ component: () => import("../PluginsTab-BP8DYqd-.js")
560
560
  },
561
561
  {
562
562
  displayName: "Targets",
563
563
  name: "TargetsTab",
564
564
  path: "targets",
565
- component: () => import("../TargetsTab-DyfyM9sC.js")
565
+ component: () => import("../TargetsTab-DAmlfJ9Z.js")
566
566
  },
567
567
  {
568
568
  displayName: "Interfaces",
569
569
  name: "InterfacesTab",
570
570
  path: "interfaces",
571
- component: () => import("../InterfacesTab-BbsiYwEX.js")
571
+ component: () => import("../InterfacesTab-CVvIDSTG.js")
572
572
  },
573
573
  {
574
574
  displayName: "Routers",
575
575
  name: "RoutersTab",
576
576
  path: "routers",
577
- component: () => import("../RoutersTab-Bg6dpAXr.js")
577
+ component: () => import("../RoutersTab-CF0ADapt.js")
578
578
  },
579
579
  {
580
580
  displayName: "Microservices",
581
581
  name: "MicroservicesTab",
582
582
  path: "microservices",
583
- component: () => import("../MicroservicesTab-CtI7BEt0.js")
583
+ component: () => import("../MicroservicesTab-DlnZ9h0y.js")
584
584
  },
585
585
  {
586
586
  displayName: "Packages",
587
587
  name: "PackagesTab",
588
588
  path: "packages",
589
- component: () => import("../PackagesTab-DhMk-fi5.js")
589
+ component: () => import("../PackagesTab-D5hNxd_X.js")
590
590
  },
591
591
  {
592
592
  displayName: "Tools",
593
593
  name: "ToolsTab",
594
594
  path: "tools",
595
- component: () => import("../ToolsTab-BvpoO0wt.js")
595
+ component: () => import("../ToolsTab-CW_TQ53O.js")
596
596
  },
597
597
  {
598
598
  displayName: "Redis",
599
599
  name: "RedisTab",
600
600
  path: "redis",
601
- component: () => import("../RedisTab-Bq8Frctp.js")
601
+ component: () => import("../RedisTab-D1-HQK-m.js")
602
602
  },
603
603
  {
604
604
  displayName: "Secrets",
605
605
  name: "SecretsTab",
606
606
  path: "secrets",
607
- component: () => import("../SecretsTab-vdm8oj9_.js")
607
+ component: () => import("../SecretsTab-BAIHxgdM.js")
608
608
  },
609
609
  {
610
610
  displayName: "Settings",
611
611
  name: "SettingsTab",
612
612
  path: "settings",
613
- component: () => import("../SettingsTab-C05e6-Xm.js")
613
+ component: () => import("../SettingsTab-C2k0BDcX.js")
614
614
  }
615
615
  ], He = {
616
616
  components: {
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("../UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B98GsSQS.cjs"),e=require("vue"),y=require("../CustomIcon-Bop2mEnu.cjs"),U=require("single-spa"),B=require("../UpgradeToEnterpriseDialog-1fVtqbze.cjs"),h=require("../format-B22VpiOS.cjs"),S=require("../icons.cjs"),X=require("../AstroStatus-CILMWL6F.cjs"),Y=require("../index-DcL65Mqb.cjs");function T(t,o){const n=+h.toDate(t)-+h.toDate(o);return n<0?-1:n>0?1:n}function j(t){return h.constructFrom(t,Date.now())}function q(t,o,n){const[a,s]=h.normalizeDates(n==null?void 0:n.in,t,o),i=a.getFullYear()-s.getFullYear(),d=a.getMonth()-s.getMonth();return i*12+d}function Z(t){return o=>{const a=(t?Math[t]:Math.trunc)(o);return a===0?0:a}}function W(t,o){return+h.toDate(t)-+h.toDate(o)}function $(t,o){const n=h.toDate(t,o==null?void 0:o.in);return n.setHours(23,59,59,999),n}function J(t,o){const n=h.toDate(t,o==null?void 0:o.in),a=n.getMonth();return n.setFullYear(n.getFullYear(),a+1,0),n.setHours(23,59,59,999),n}function G(t,o){const n=h.toDate(t,o==null?void 0:o.in);return+$(n,o)==+J(n,o)}function K(t,o,n){const[a,s,i]=h.normalizeDates(n==null?void 0:n.in,t,t,o),d=T(s,i),r=Math.abs(q(s,i));if(r<1)return 0;s.getMonth()===1&&s.getDate()>27&&s.setDate(30),s.setMonth(s.getMonth()-d*r);let c=T(s,i)===-d;G(a)&&r===1&&T(a,i)===1&&(c=!1);const u=d*(r-+c);return u===0?0:u}function Q(t,o,n){const a=W(t,o)/1e3;return Z(n==null?void 0:n.roundingMethod)(a)}function ee(t,o,n){const a=h.getDefaultOptions(),s=(n==null?void 0:n.locale)??a.locale??h.enUS,i=2520,d=T(t,o);if(isNaN(d))throw new RangeError("Invalid time value");const r=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:d}),[c,u]=h.normalizeDates(n==null?void 0:n.in,...d>0?[o,t]:[t,o]),m=Q(u,c),g=(h.getTimezoneOffsetInMilliseconds(u)-h.getTimezoneOffsetInMilliseconds(c))/1e3,p=Math.round((m-g)/60);let _;if(p<2)return n!=null&&n.includeSeconds?m<5?s.formatDistance("lessThanXSeconds",5,r):m<10?s.formatDistance("lessThanXSeconds",10,r):m<20?s.formatDistance("lessThanXSeconds",20,r):m<40?s.formatDistance("halfAMinute",0,r):m<60?s.formatDistance("lessThanXMinutes",1,r):s.formatDistance("xMinutes",1,r):p===0?s.formatDistance("lessThanXMinutes",1,r):s.formatDistance("xMinutes",p,r);if(p<45)return s.formatDistance("xMinutes",p,r);if(p<90)return s.formatDistance("aboutXHours",1,r);if(p<h.minutesInDay){const v=Math.round(p/60);return s.formatDistance("aboutXHours",v,r)}else{if(p<i)return s.formatDistance("xDays",1,r);if(p<h.minutesInMonth){const v=Math.round(p/h.minutesInDay);return s.formatDistance("xDays",v,r)}else if(p<h.minutesInMonth*2)return _=Math.round(p/h.minutesInMonth),s.formatDistance("aboutXMonths",_,r)}if(_=K(u,c),_<12){const v=Math.round(p/h.minutesInMonth);return s.formatDistance("xMonths",v,r)}else{const v=_%12,k=Math.trunc(_/12);return v<3?s.formatDistance("aboutXYears",k,r):v<9?s.formatDistance("overXYears",k,r):s.formatDistance("almostXYears",k+1,r)}}function te(t,o){return ee(t,j(t),o)}const oe={data:function(){return{localDate:new Date,displayLocal:localStorage.clock_zone==="local",display24h:!localStorage.clock_12h,dateMode:localStorage.clock_dateMode||"monthFirst",intervalCount:0,showMenu:!1,menuX:0,menuY:0}},computed:{utcDate:function(){return new Date(this.localDate.getTime()+this.localDate.getTimezoneOffset()*6e4)},formatString:function(){let t;switch(this.dateMode){case"monthFirst":t="LL/dd/yyy";break;case"dayFirst":t="dd/LL/yyy";break;case"number":t="D";break}let o;return this.display24h?o="HH:mm:ss":o="hh:mm:ss a",`${t} ${o}`}},watch:{displayLocal:function(t){localStorage.clock_zone=t?"local":"utc"},display24h:function(t){t?delete localStorage.clock_12h:localStorage.clock_12h=!0},dateMode:function(t){t.match(/^monthFirst$|^dayFirst$|^number$/)&&(localStorage.clock_dateMode=t)}},created:function(){setInterval(()=>{this.intervalCount++,this.localDate=new Date},this.intervalCount<10?100:1e3)},methods:{openMenu:function(t){t.preventDefault(),this.showMenu=!1,this.menuX=t.clientX,this.menuY=t.clientY,this.$nextTick(()=>{this.showMenu=!0})},toggleDisplayLocal:function(){this.displayLocal=!this.displayLocal},toggleDisplay24h:function(){this.display24h=!this.display24h},setMonthFirst:function(){this.dateMode="monthFirst"},setDayFirst:function(){this.dateMode="dayFirst"},setNumber:function(){this.dateMode="number"},formatDate:function(t,o){return h.format(t,o,{useAdditionalDayOfYearTokens:!0})}}};function ne(t,o,n,a,s,i){const d=e.resolveComponent("v-list-item-title"),r=e.resolveComponent("v-list-item"),c=e.resolveComponent("v-divider"),u=e.resolveComponent("v-list"),m=e.resolveComponent("v-menu");return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("span",{style:{cursor:"context-menu"},class:"font-weight-bold",onContextmenu:o[0]||(o[0]=(...g)=>i.openMenu&&i.openMenu(...g))},e.toDisplayString(i.formatDate(t.displayLocal?t.localDate:i.utcDate,i.formatString))+" ("+e.toDisplayString(t.displayLocal?"local":"UTC")+") ",33),e.createVNode(m,{modelValue:t.showMenu,"onUpdate:modelValue":o[1]||(o[1]=g=>t.showMenu=g),target:[t.menuX,t.menuY]},{default:e.withCtx(()=>[e.createVNode(u,null,{default:e.withCtx(()=>[e.createVNode(r,null,{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.toggleDisplayLocal},{default:e.withCtx(()=>[e.createTextVNode(" Display "+e.toDisplayString(t.displayLocal?"UTC":"local time"),1)]),_:1},8,["onClick"])]),_:1}),e.createVNode(c),e.createVNode(r,null,{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.toggleDisplay24h},{default:e.withCtx(()=>[e.createTextVNode(" Display "+e.toDisplayString(t.display24h?12:24)+" hour clock ",1)]),_:1},8,["onClick"])]),_:1}),e.createVNode(c),t.dateMode!=="monthFirst"?(e.openBlock(),e.createBlock(r,{key:0},{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.setMonthFirst},{default:e.withCtx(()=>o[2]||(o[2]=[e.createTextVNode(" Display mm/dd/yyyy ")])),_:1},8,["onClick"])]),_:1})):e.createCommentVNode("",!0),t.dateMode!=="dayFirst"?(e.openBlock(),e.createBlock(r,{key:1},{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.setDayFirst},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Display dd/mm/yyyy ")])),_:1},8,["onClick"])]),_:1})):e.createCommentVNode("",!0),t.dateMode!=="number"?(e.openBlock(),e.createBlock(r,{key:2},{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.setNumber},{default:e.withCtx(()=>o[4]||(o[4]=[e.createTextVNode(" Display day of year ")])),_:1},8,["onClick"])]),_:1})):e.createCommentVNode("",!0)]),_:1})]),_:1},8,["modelValue","target"])])}const L=y._export_sfc(oe,[["render",ne]]),se={components:{ClockFooter:L,UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},data(){return{icon:"/img/icon.png",edition:"",enterprise:!1,license:"",sourceUrl:"",version:"",showUpgradeToEnterpriseDialog:!1,chromeless:this.$route.query.chromeless}},computed:{footerClass(){return this.enterprise?"enterprise":"core"}},created:function(){this.getSourceUrl(),N.li.get("/openc3-api/info").then(t=>{t.data.enterprise?this.edition="COSMOS Enterprise":this.edition="COSMOS Core",this.enterprise=t.data.enterprise,this.license=t.data.license,this.version=t.data.version})},methods:{getSourceUrl:function(){new N.pi().get_settings(["source_url"]).then(t=>{this.sourceUrl=t[0]})},upgrade:function(){this.enterprise||(this.showUpgradeToEnterpriseDialog=!0)}}},ie=["src"],ae=["href"],re={class:"justify-right"};function le(t,o,n,a,s,i){const d=e.resolveComponent("v-spacer"),r=e.resolveComponent("clock-footer"),c=e.resolveComponent("upgrade-to-enterprise-dialog"),u=e.resolveComponent("v-footer");return s.chromeless?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u,{key:0,id:"footer",app:"",height:"33"},{default:e.withCtx(()=>[e.createElementVNode("img",{src:s.icon,alt:"OpenC3"},null,8,ie),e.createElementVNode("span",{class:e.normalizeClass(i.footerClass),onClick:o[0]||(o[0]=(...m)=>i.upgrade&&i.upgrade(...m))}," OpenC3 "+e.toDisplayString(s.edition)+" "+e.toDisplayString(s.version)+" © 2025 - License: "+e.toDisplayString(s.license),3),e.createVNode(d),e.createElementVNode("a",{href:s.sourceUrl,class:"text-white text-decoration-underline"}," Source ",8,ae),e.createVNode(d),e.createElementVNode("div",re,[e.createVNode(r)]),e.createVNode(c,{modelValue:s.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[1]||(o[1]=m=>s.showUpgradeToEnterpriseDialog=m),reason:"Enterprise is Commercially Licensed"},null,8,["modelValue"])]),_:1}))}const ce=y._export_sfc(se,[["render",le],["__scopeId","data-v-e5a3338e"]]),b=1e3,{highestLevel:de,orderByLevel:ue,groupByLevel:pe}=X.AstroStatus,me={components:{AstroStatusIndicator:S.AstroStatusIndicator},props:{size:{type:[String,Number],default:26}},data:function(){return{AstroStatusColors:S.AstroStatusColors,alerts:[],cable:new N.di,scriptCable:new N.di("/script-api/cable"),subscription:null,scriptSubscription:null,numScripts:0,notifications:[],showNotificationPane:!1,toastNotification:{},notificationDialog:!1,selectedNotification:{},settingsDialog:!1,showToast:!0}},computed:{activeScripts:function(){return`Scripts: ${this.numScripts}`},notificationVsAlert:function(){return"notifications"},iconStatus:function(){if(this.unreadNotifications.length===0)return"off";const t=this.unreadNotifications.map(o=>o.level).filter((o,n,a)=>a.indexOf(o)===n);return S.UnknownToAstroStatus[de(t)]},readNotifications:function(){return this.notifications.filter(t=>t.read).sort((t,o)=>o.time-t.time)},unreadNotifications:function(){return this.notifications.filter(t=>!t.read).sort((t,o)=>o.time-t.time)},unreadCount:function(){return this.unreadNotifications.length},notificationList:function(){const t=pe(this.unreadNotifications);let o=ue(Object.keys(t),n=>n).flatMap(n=>[{header:n.charAt(0).toUpperCase()+n.slice(1)},...t[n]]);return this.readNotifications.length&&(o=o.concat([{header:"Read"},...this.readNotifications])),o}},watch:{showNotificationPane:function(t){t||(this.selectedNotification.message?(this.notificationDialog=!1,this.selectedNotification={}):this.markAllAsRead())},showToast:function(t){localStorage.notoast=!t}},created:function(){this.showToast=localStorage.notoast==="false",this.subscribe(),this.alerts=this.$store.state.notifyHistory,N.li.get("/script-api/running-script").then(t=>{this.numScripts=t.data.total})},unmounted:function(){this.subscription&&this.subscription.unsubscribe(),this.scriptSubscription&&this.scriptSubscription.unsubscribe(),this.cable.disconnect(),this.scriptCable.disconnect()},methods:{getStatus:function(t){return S.UnknownToAstroStatus[t]},markAllAsRead:function(){this.notifications.forEach(t=>{t.read=!0,(!localStorage.lastReadNotification||localStorage.lastReadNotification<t.msg_id)&&(localStorage.lastReadNotification=t.msg_id)})},clearNotifications:function(){this.markAllAsRead(),this.notifications=[],localStorage.notificationStreamOffset=localStorage.lastReadNotification,this.showNotificationPane=!1},toggleNotificationPane:function(){this.showNotificationPane=!this.showNotificationPane},toggleSettingsDialog:function(){this.settingsDialog=!this.settingsDialog},openDialog:function(t,o=!1){t.read=!0,(!localStorage.lastReadNotification||localStorage.lastReadNotification<t.msg_id)&&(localStorage.lastReadNotification=t.msg_id),this.selectedNotification=t,this.notificationDialog=!0},navigate:function(t){window.open(t,"_blank")},subscribe:function(){this.cable.createSubscription("MessagesChannel",window.openc3Scope,{received:t=>this.receiveMessage(t)},{start_offset:localStorage.notificationStreamOffset||localStorage.lastReadNotification,types:["notification","alert","ephemeral"]}).then(t=>{this.subscription=t}),this.scriptCable.createSubscription("AllScriptsChannel",window.openc3Scope,{received:t=>this.receiveScript(t)}).then(t=>{this.scriptSubscription=t})},receiveMessage:function(t){this.cable.recordPing(),t.length>b&&t.splice(0,t.length-b);let o=t.filter(a=>a.type==="ephemeral");o&&o.length>0&&(t=t.filter(a=>a.type!=="ephemeral"),o.forEach(a=>{this.$emit("ephemeral",a)}));let n=!1;if(t.forEach(a=>{a.read=a.msg_id<=localStorage.lastReadNotification,a.level=a.level||"INFO",!a.read&&["FATAL","ERROR","WARN"].includes(a.level)&&(n=!0,this.toastNotification=a)}),this.showToast&&n){let a=5e3;["FATAL","ERROR"].includes(this.toastNotification.level)&&(a=null),this.$notify&&this.$notify[this.toastNotification.level]({...this.toastNotification,type:"notification",duration:a,saveToHistory:!1})}this.notifications.length+t.length>b&&this.notifications.splice(0,this.notifications.length+t.length-b),this.notifications=this.notifications.concat(t)},receiveScript:function(t){this.cable.recordPing(),this.numScripts=t.active_scripts},formatShortDateTime:function(t){if(!t)return"";const o=new Date(t/1e6);return te(o,{addSuffix:!0})}}};function fe(t,o,n,a,s,i){const d=e.resolveComponent("v-overlay"),r=e.resolveComponent("rux-monitoring-icon"),c=e.resolveComponent("v-spacer"),u=e.resolveComponent("v-btn"),m=e.resolveComponent("v-tooltip"),g=e.resolveComponent("v-card-title"),p=e.resolveComponent("v-card-text"),_=e.resolveComponent("v-divider"),v=e.resolveComponent("v-list-subheader"),k=e.resolveComponent("rux-status"),V=e.resolveComponent("v-list-item-title"),C=e.resolveComponent("v-list-item-subtitle"),w=e.resolveComponent("v-list-item"),D=e.resolveComponent("v-list"),x=e.resolveComponent("v-card"),l=e.resolveComponent("v-menu"),E=e.resolveComponent("astro-status-indicator"),R=e.resolveComponent("v-card-subtitle"),z=e.resolveComponent("v-icon"),A=e.resolveComponent("v-card-actions"),O=e.resolveComponent("v-dialog"),H=e.resolveComponent("v-switch");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,{"model-value":t.showNotificationPane,class:"overlay"},null,8,["model-value"]),e.createVNode(l,{modelValue:t.showNotificationPane,"onUpdate:modelValue":o[0]||(o[0]=f=>t.showNotificationPane=f),transition:"slide-y-transition","close-on-content-click":!1,offset:[12,102]},{activator:e.withCtx(({props:f})=>[e.createVNode(r,e.mergeProps(f,{class:"rux-icon",icon:i.notificationVsAlert,label:"Notifications",sublabel:i.activeScripts,status:i.iconStatus,notifications:i.unreadNotifications.length}),null,16,["icon","sublabel","status","notifications"])]),default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>[e.createVNode(g,{class:"d-flex align-center justify-content-space-between"},{default:e.withCtx(()=>[o[7]||(o[7]=e.createElementVNode("span",null," Notifications ",-1)),e.createVNode(c),e.createVNode(m,{"open-delay":600,location:"top"},{activator:e.withCtx(({props:f})=>[e.createElementVNode("div",e.normalizeProps(e.guardReactiveProps(f)),[e.createVNode(u,{class:"ml-1",icon:"mdi-notification-clear-all ",variant:"text","data-test":"clear-notifications","aria-label":"Dismiss All Notifications",onClick:i.clearNotifications},null,8,["onClick"])],16)]),default:e.withCtx(()=>[o[6]||(o[6]=e.createElementVNode("span",null," Dismiss All Notifications ",-1))]),_:1}),e.createVNode(u,{icon:"astro:settings",variant:"text",class:"ml-1","data-test":"notification-settings","aria-label":"Notification Settings",onClick:i.toggleSettingsDialog},null,8,["onClick"])]),_:1}),t.notifications.length===0?(e.openBlock(),e.createBlock(p,{key:0},{default:e.withCtx(()=>o[8]||(o[8]=[e.createTextVNode(" No notifications ")])),_:1})):(e.openBlock(),e.createBlock(D,{key:1,lines:"two",width:"420","max-height":"80vh",class:"overflow-y-auto","data-test":"notification-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.notificationList,(f,M)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[f.header?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[M!==0?(e.openBlock(),e.createBlock(_,{key:M,class:"mb-2"})):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(v,{key:f.header},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.header),1)]),_:2},1024))],64)):(e.openBlock(),e.createBlock(w,{key:`notification-${M}`,class:"pl-2",onClick:Ge=>i.openDialog(f)},{prepend:e.withCtx(()=>[e.createVNode(k,{class:"px-2",status:i.getStatus(f.level)},null,8,["status"])]),default:e.withCtx(()=>[e.createVNode(V,{class:e.normalizeClass({"text--secondary":f.read,"text-wrap":!0})},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.message),1)]),_:2},1032,["class"]),e.createVNode(C,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.formatShortDateTime(f.time)),1)]),_:2},1024)]),_:2},1032,["onClick"]))],64))),256))]),_:1}))]),_:1})]),_:1},8,["modelValue"]),e.createVNode(O,{modelValue:t.notificationDialog,"onUpdate:modelValue":o[3]||(o[3]=f=>t.notificationDialog=f),width:"600"},{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.selectedNotification.message)+" ",1),e.createVNode(c),e.createVNode(E,{status:t.selectedNotification.level||"INFO"},null,8,["status"])]),_:1}),e.createVNode(R,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.formatShortDateTime(t.selectedNotification.time)),1)]),_:1}),e.createVNode(_),e.createVNode(A,null,{default:e.withCtx(()=>[t.selectedNotification.url?(e.openBlock(),e.createBlock(u,{key:0,color:"primary",variant:"text",onClick:o[1]||(o[1]=f=>i.navigate(t.selectedNotification.url))},{default:e.withCtx(()=>[o[10]||(o[10]=e.createTextVNode(" Open ")),e.createVNode(z,{end:""},{default:e.withCtx(()=>o[9]||(o[9]=[e.createTextVNode(" mdi-open-in-new ")])),_:1})]),_:1})):e.createCommentVNode("",!0),e.createVNode(u,{color:"primary",variant:"text",onClick:o[2]||(o[2]=f=>t.notificationDialog=!1)},{default:e.withCtx(()=>o[11]||(o[11]=[e.createTextVNode(" Close ")])),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),e.createVNode(O,{modelValue:t.settingsDialog,"onUpdate:modelValue":o[5]||(o[5]=f=>t.settingsDialog=f),width:"600"},{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>o[12]||(o[12]=[e.createTextVNode(" Notification settings ")])),_:1}),e.createVNode(p,null,{default:e.withCtx(()=>[e.createVNode(H,{modelValue:t.showToast,"onUpdate:modelValue":o[4]||(o[4]=f=>t.showToast=f),label:"Show toasts",color:"primary"},null,8,["modelValue"])]),_:1}),e.createVNode(_),e.createVNode(A,null,{default:e.withCtx(()=>[e.createVNode(u,{color:"primary",variant:"text",onClick:i.toggleSettingsDialog},{default:e.withCtx(()=>o[13]||(o[13]=[e.createTextVNode(" Close ")])),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}const F=y._export_sfc(me,[["render",fe],["__scopeId","data-v-0d6257f1"]]),he={components:{UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},data:function(){return{scopes:["DEFAULT"],scope:"DEFAULT",showUpgradeToEnterpriseDialog:!1}}};function _e(t,o,n,a,s,i){const d=e.resolveComponent("v-select"),r=e.resolveComponent("upgrade-to-enterprise-dialog");return e.openBlock(),e.createElementBlock("div",{style:{cursor:"pointer"},onClick:o[2]||(o[2]=c=>t.showUpgradeToEnterpriseDialog=!0)},[e.createVNode(d,{modelValue:t.scope,"onUpdate:modelValue":o[0]||(o[0]=c=>t.scope=c),items:t.scopes,disabled:t.scopes.length<=1,label:"Scope",density:"compact",variant:"outlined","hide-details":"",style:{"max-width":"150px"}},null,8,["modelValue","items","disabled"]),e.createVNode(r,{modelValue:t.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[1]||(o[1]=c=>t.showUpgradeToEnterpriseDialog=c),reason:"Enterprise allows additional Scopes"},null,8,["modelValue"])])}const I=y._export_sfc(he,[["render",_e]]),ve={components:{UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},props:{size:{type:[String,Number],default:26}},data:function(){let t=OpenC3Auth.user();return{api:new N.pi,showUserMenu:!1,authenticated:!!localStorage.openc3Token,name:t.name,username:t.preferred_username,showUpgradeToEnterpriseDialog:!1,activeUsers:["None"],newsFeed:!1,news:[]}},computed:{unreadNews:function(){return this.news.filter(t=>!t.read)}},watch:{showUserMenu:function(t,o){t===!0&&(this.news.length>0&&(this.news.forEach(n=>{n.read=!0}),localStorage.lastNewsRead=this.news[0].date),this.name!=="Anonymous"&&N.li.get("/openc3-api/users/active").then(n=>{this.activeUsers=n.data.filter(a=>!a.includes(this.name)),this.activeUsers.length===0&&(this.activeUsers=["None"])}))}},created:function(){this.api.get_setting("news_feed").then(t=>{t&&(this.newsFeed=t,this.newsFeed&&(this.fetchNews(),setInterval(this.fetchNews,60*60*1e3)))}).catch(t=>{})},methods:{refreshNews(){this.api.update_news().then(()=>{this.fetchNews()})},formatDate(t){return t.split("T")[0]},fetchNews:function(){N.li.get("/openc3-api/news").then(t=>{this.news=t.data.sort((o,n)=>Date.parse(n.date)-Date.parse(o.date)),localStorage.lastNewsRead&&this.news.forEach(o=>{o.read=Date.parse(o.date)<=Date.parse(localStorage.lastNewsRead)})})},logout:function(){OpenC3Auth.logout(),N.li.put(`/openc3-api/users/logout/${this.username}`)},login:function(){OpenC3Auth.login(location.href)},roles:function(){return this.name==="Anonymous"?"Admin":OpenC3Auth.userroles().map(t=>this.capitalize(t)).sort().join(", ")},capitalize:function(t){return t.charAt(0).toUpperCase()+t.slice(1)}}},ge={style:{"text-align":"center",margin:"5px"}},we={key:0},Ne={class:"roles"},Ce={class:"pb-3 roles"},ke={key:1},ye={key:0,class:"pa-3"},Ve={key:2},De={key:0},xe={class:"news-title"},Se={class:"news-date"},be=["innerHTML"];function Te(t,o,n,a,s,i){const d=e.resolveComponent("v-overlay"),r=e.resolveComponent("rux-monitoring-icon"),c=e.resolveComponent("v-btn"),u=e.resolveComponent("v-row"),m=e.resolveComponent("v-card-text"),g=e.resolveComponent("v-col"),p=e.resolveComponent("v-list-item-title"),_=e.resolveComponent("v-list-item"),v=e.resolveComponent("v-list"),k=e.resolveComponent("v-card"),V=e.resolveComponent("v-menu"),C=e.resolveComponent("upgrade-to-enterprise-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,{"model-value":t.showUserMenu,class:"overlay"},null,8,["model-value"]),e.createVNode(V,{modelValue:t.showUserMenu,"onUpdate:modelValue":o[1]||(o[1]=w=>t.showUserMenu=w),transition:"slide-y-transition","close-on-content-click":!1,offset:20},{activator:e.withCtx(({props:w})=>[e.createVNode(r,e.mergeProps(w,{class:"rux-icon",icon:"person",status:"off",label:t.name,sublabel:i.roles(),notifications:i.unreadNews.length}),null,16,["label","sublabel","notifications"])]),default:e.withCtx(()=>[e.createVNode(k,null,{default:e.withCtx(()=>[e.createVNode(m,{class:"text-center"},{default:e.withCtx(()=>[e.createElementVNode("div",ge,e.toDisplayString(t.name),1),t.name!=="Anonymous"?(e.openBlock(),e.createElementBlock("div",we,[e.createElementVNode("div",Ne,"Username: "+e.toDisplayString(t.username),1),e.createElementVNode("div",Ce,"Roles: "+e.toDisplayString(i.roles()),1)])):e.createCommentVNode("",!0),t.authenticated?(e.openBlock(),e.createElementBlock("div",ke,[e.createVNode(c,{block:"",color:"primary",onClick:i.logout},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Logout ")])),_:1},8,["onClick"]),t.name!=="Anonymous"?(e.openBlock(),e.createElementBlock("div",ye,[e.createVNode(u,{class:"pt-3 user-title"},{default:e.withCtx(()=>o[4]||(o[4]=[e.createTextVNode("Other Active Users:")])),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.activeUsers,(w,D)=>(e.openBlock(),e.createBlock(u,{key:D,class:"user"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(w),1)]),_:2},1024))),128))])):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",Ve,[e.createVNode(c,{block:"",color:"primary",onClick:i.login},{default:e.withCtx(()=>o[5]||(o[5]=[e.createTextVNode(" Login ")])),_:1},8,["onClick"])])),t.name==="Anonymous"?(e.openBlock(),e.createElementBlock("div",{key:3,class:"pt-2 link",onClick:o[0]||(o[0]=w=>t.showUpgradeToEnterpriseDialog=!0)},o[6]||(o[6]=[e.createTextVNode(" Click to learn more about"),e.createElementVNode("br",null,null,-1),e.createTextVNode(" COSMOS Enterprise ")]))):e.createCommentVNode("",!0)]),_:1}),t.newsFeed?(e.openBlock(),e.createElementBlock("div",De,[e.createVNode(u,{"no-gutters":"",class:"news-header"},{default:e.withCtx(()=>[e.createVNode(g,{cols:"auto",class:"me-auto"},{default:e.withCtx(()=>o[7]||(o[7]=[e.createTextVNode("COSMOS News")])),_:1}),e.createVNode(g,{cols:"auto"},{default:e.withCtx(()=>[e.createVNode(c,{color:"primary",density:"compact",block:"",onClick:i.refreshNews},{default:e.withCtx(()=>o[8]||(o[8]=[e.createTextVNode(" Refresh ")])),_:1},8,["onClick"])]),_:1})]),_:1}),e.createVNode(v,{lines:"two",width:"420","max-height":"75vh",class:"overflow-y-auto","data-test":"news-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.news,(w,D)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`news-${D}`},[o[9]||(o[9]=e.createElementVNode("hr",null,null,-1)),e.createVNode(_,{class:"pl-2"},{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createElementVNode("span",xe,e.toDisplayString(w.title),1),e.createElementVNode("span",Se,e.toDisplayString(i.formatDate(w.date)),1)]),_:2},1024),e.createElementVNode("div",{innerHTML:w.body},null,8,be)]),_:2},1024)],64))),128))]),_:1})])):e.createCommentVNode("",!0)]),_:1})]),_:1},8,["modelValue"]),e.createVNode(C,{modelValue:t.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[2]||(o[2]=w=>t.showUpgradeToEnterpriseDialog=w),reason:"Enterprise has individual users with RBAC"},null,8,["modelValue"])])}const P=y._export_sfc(ve,[["render",Te],["__scopeId","data-v-57255d4e"]]),Be={components:{Notifications:F,ScopeSelector:I,UserMenu:P,UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},props:{edition:{type:String,default:""}},data(){return{api:new N.pi,timeZone:"local",subtitle:null,astro:{hideClock:!1},items:[],drawer:!0,appNav:{},logo:"/img/logo.png",initiallyOpen:[],showUpgradeToEnterpriseDialog:!1,chromeless:this.$route.query.chromeless}},computed:{shownTools:function(){let t={};for(let o of Object.keys(this.appNav))this.appNav[o].shown&&this.appNav[o].category!=="Admin"&&(t[o]=this.appNav[o]);return t},adminTools:function(){let t={};for(let o of Object.keys(this.appNav))this.appNav[o].shown&&this.appNav[o].category==="Admin"&&(t[o]=this.appNav[o]);return t},astroTimeZone:function(){return this.timeZone==="local"?Intl.DateTimeFormat().resolvedOptions().timeZone:this.timeZone}},created(){this.api.get_setting("astro").then(t=>{t&&(this.astro=JSON.parse(t))}).catch(t=>{}),this.api.get_setting("subtitle").then(t=>{t&&(this.subtitle=t)}).catch(t=>{}),this.api.get_setting("time_zone").then(t=>{t&&(this.timeZone=t)}).catch(t=>{}),N.li.get("/openc3-api/tools/all",{params:{scope:"DEFAULT"}}).then(t=>{this.appNav=t.data;let o=1;for(let n of Object.keys(this.appNav)){if(this.appNav[n].shown){if(this.appNav[n].category&&this.appNav[n].category!=="Admin"){this.initiallyOpen.includes(this.appNav[n].category)||this.initiallyOpen.push(this.appNav[n].category);const a=this.items.filter(s=>s.name===this.appNav[n].category);a.length===0?(this.items.push({id:o,name:this.appNav[n].category,children:[{id:o+1,name:this.appNav[n].name,icon:this.appNav[n].icon,url:this.appNav[n].url,inline_url:this.appNav[n].inline_url,window:this.appNav[n].window}]}),o++):a[0].children.push({id:o,name:this.appNav[n].name,icon:this.appNav[n].icon,url:this.appNav[n].url,inline_url:this.appNav[n].inline_url,window:this.appNav[n].window})}else this.appNav[n].category||this.items.push({id:o,name:this.appNav[n].name,icon:this.appNav[n].icon,url:this.appNav[n].url,inline_url:this.appNav[n].inline_url,window:this.appNav[n].window});o++}if(this.appNav[n].inline_url&&this.appNav[n].window==="INLINE"&&this.appNav[n].folder_name&&this.appNav[n].folder_name!=="base"){let a=this.appNav[n].folder_name,s="@openc3/tool-"+a;U.registerApplication({name:s,app:()=>System.import(s),activeWhen:["/tools/"+a]})}}U.start({urlRerouteOnly:!0}),setInterval(()=>{OpenC3Auth.updateToken(120).then(function(n){n&&OpenC3Auth.setTokens()})},6e4)})},methods:{navigateToUrl:U.navigateToUrl,newTabUrl(t){let o=null;try{t.url[0]=="/"&&t.url[1]!="/"?o=new URL(t.url,window.location.origin):o=new URL(t.url),o.searchParams.set("scope",window.openc3Scope)}catch(n){window.$cosmosNotify.serious({title:`Invalid URL '${t.url}' for tool ${t.name}`,message:n.message}),o.href="/"}return o.href}}},Ee=["src"],Me={style:{"text-align":"center","font-size":"18pt"}},Ue=["href","onClick"],Ae=["href"],Oe=["href","onClick"],Le=["href","onClick"],Fe=["href"],Ie=["href"],Pe=["href"],Re=["href"];function ze(t,o,n,a,s,i){const d=e.resolveComponent("v-btn"),r=e.resolveComponent("v-divider"),c=e.resolveComponent("v-icon"),u=e.resolveComponent("v-treeview"),m=e.resolveComponent("v-navigation-drawer"),g=e.resolveComponent("rux-icon"),p=e.resolveComponent("v-row"),_=e.resolveComponent("v-col"),v=e.resolveComponent("rux-clock"),k=e.resolveComponent("v-spacer"),V=e.resolveComponent("scope-selector"),C=e.resolveComponent("notifications"),w=e.resolveComponent("user-menu"),D=e.resolveComponent("v-app-bar"),x=e.resolveComponent("upgrade-to-enterprise-dialog");return e.openBlock(),e.createElementBlock("div",null,[s.chromeless?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(m,{key:0,"model-value":s.drawer,id:"openc3-nav-drawer"},{default:e.withCtx(()=>[e.createElementVNode("img",{src:s.logo,class:"logo",alt:"OpenC3"},null,8,Ee),e.createElementVNode("div",{class:"cosmos",onClick:o[0]||(o[0]=l=>s.showUpgradeToEnterpriseDialog=!0)}," COSMOS "),e.createElementVNode("div",Me,e.toDisplayString(s.subtitle),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.adminTools,(l,E)=>(e.openBlock(),e.createElementBlock("div",{key:E,class:"ma-3"},[e.createVNode(d,{block:"",size:"small",href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"]),class:"fixcenter",color:"primary"},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Admin Console ")])),_:2},1032,["href","onClick"])]))),128)),e.createVNode(r),e.createVNode(u,{items:s.items,opened:s.initiallyOpen,"item-value":"name",density:"compact","open-on-click":""},{prepend:e.withCtx(({item:l})=>[l.icon?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[l.window==="INLINE"?(e.openBlock(),e.createElementBlock("a",{key:0,href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"])},[e.createVNode(c,{class:"mr-2"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.icon),1)]),_:2},1024)],8,Ue)):(e.openBlock(),e.createElementBlock("a",{key:1,href:l.url},[e.createVNode(c,{class:"mr-2"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.icon),1)]),_:2},1024)],8,Ae))],64)):e.createCommentVNode("",!0)]),title:e.withCtx(({item:l})=>[l.icon?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[l.window==="INLINE"?(e.openBlock(),e.createElementBlock("a",{key:0,href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"])},e.toDisplayString(l.name),9,Le)):l.window==="IFRAME"?(e.openBlock(),e.createElementBlock("a",{key:1,href:"/tools/iframe?title="+encodeURIComponent(l.name)+"&url="+l.url},e.toDisplayString(l.name),9,Fe)):l.window==="SAME"?(e.openBlock(),e.createElementBlock("a",{key:2,href:l.url},e.toDisplayString(l.name),9,Ie)):(e.openBlock(),e.createElementBlock("a",{key:3,href:l.url,target:"_blank"},e.toDisplayString(l.name),9,Pe))],64)):(e.openBlock(),e.createElementBlock("a",{key:0,href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"])},e.toDisplayString(l.name),9,Oe))]),append:e.withCtx(({item:l})=>[l.icon?(e.openBlock(),e.createElementBlock("a",{key:0,href:i.newTabUrl(l),target:"_blank"},[e.createVNode(c,null,{default:e.withCtx(()=>o[4]||(o[4]=[e.createTextVNode("mdi-open-in-new")])),_:1})],8,Re)):e.createCommentVNode("",!0)]),_:1},8,["items","opened"])]),_:1},8,["model-value"])),s.chromeless?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(D,{key:1,id:"openc3-app-toolbar"},{default:e.withCtx(()=>[e.createVNode(p,{class:"flex-nowrap",justify:"space-between","no-gutters":""},{default:e.withCtx(()=>[e.createVNode(_,{"align-self":"start"},{default:e.withCtx(()=>[e.createVNode(p,{class:"flex-nowrap"},{default:e.withCtx(()=>[e.createVNode(g,{class:"ml-3 mr-2 pa-2",size:"small",icon:"apps",onClick:o[1]||(o[1]=l=>s.drawer=!s.drawer)}),o[5]||(o[5]=e.createElementVNode("span",{id:"openc3-menu"},null,-1))]),_:1})]),_:1}),e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(p,{class:"clock flex-nowrap mt-0"},{default:e.withCtx(()=>[s.astro.hideClock?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(v,{key:0,"date-in":"",timezone:i.astroTimeZone},null,8,["timezone"]))]),_:1})]),_:1}),e.createVNode(_,{"align-self":"center",class:"mt-2"},{default:e.withCtx(()=>[e.createVNode(p,{class:"flex-nowrap"},{default:e.withCtx(()=>[e.createVNode(k),e.createVNode(V,{class:"mr-6 mt-4"}),e.createVNode(C,{class:"mr-6","data-test":"notifications"}),e.createVNode(w,{class:"mr-6"})]),_:1})]),_:1})]),_:1})]),_:1})),e.createVNode(x,{modelValue:s.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[2]||(o[2]=l=>s.showUpgradeToEnterpriseDialog=l),reason:"Enterprise adds Calendar and Autonomic"},null,8,["modelValue"])])}const He=y._export_sfc(Be,[["render",ze],["__scopeId","data-v-9ca3d95a"]]),Xe={data:function(){return{classification:{text:"",fontColor:"white",backgroundColor:"red",topHeight:0,bottomHeight:0}}},computed:{classificationStyles:function(){return[`--classification-text:"${this.classification.text}";`,`--classification-font-color:${this.classification.fontColor};`,`--classification-background-color:${this.classification.backgroundColor};`,`--classification-height-top:${this.classification.topHeight}px;`,`--classification-height-bottom:${this.classification.bottomHeight}px;`].join("")}},created:function(){new N.pi().get_setting("classification_banner").then(o=>{o&&(this.classification=JSON.parse(o))}).catch(o=>{})}},Ye={data(){return{isSet:!0,password:"",confirmPassword:"",oldPassword:"",reset:!1,alert:"",alertType:"success",showAlert:!1}},computed:{options:function(){return{noAuth:!0,noScope:!0}},rules:function(){return{matchPassword:()=>this.password===this.confirmPassword||"Passwords must match"}},formValid:function(){return this.reset?this.isSet?!!this.oldPassword&&!!this.password&&this.password===this.confirmPassword:!!this.password&&this.password===this.confirmPassword:!!this.password}},created:function(){N.li.get("/openc3-api/auth/token-exists",this.options).then(t=>{this.isSet=!!t.data.result,this.isSet||(this.reset=!0)})},mounted:function(){localStorage.openc3Token&&this.verifyPassword(localStorage.openc3Token,!0)},methods:{showReset:function(){this.reset=!0},login:function(t){localStorage.openc3Token=t.data;const o=new URLSearchParams(window.location.search).get("redirect");o!=null&&o.startsWith("/tools/")?window.location=decodeURI(o):window.location="/"},verifyPassword:function(t,o){t||(t=this.password),this.showAlert=!1,N.li.post("/openc3-api/auth/verify",{data:{token:t},...this.options}).then(n=>{this.login(n)}).catch(n=>{(n==null?void 0:n.status)===401?this.alert="Incorrect password":this.alert=n.message||"Something went wrong...",this.alertType="warning",this.showAlert=!o})},setPassword:function(){this.showAlert=!1,N.li.post("/openc3-api/auth/set",{data:{old_token:this.oldPassword,token:this.password},...this.options}).then(t=>{this.login(t)}).catch(t=>{this.alert=`Invalid password: ${t.response.data.message}`,this.alertType="warning",this.showAlert=!0})}}};function je(t,o,n,a,s,i){const d=e.resolveComponent("v-card-title"),r=e.resolveComponent("v-card-subtitle"),c=e.resolveComponent("v-text-field"),u=e.resolveComponent("v-btn"),m=e.resolveComponent("v-spacer"),g=e.resolveComponent("v-row"),p=e.resolveComponent("v-container"),_=e.resolveComponent("v-form"),v=e.resolveComponent("v-card-text"),k=e.resolveComponent("v-alert"),V=e.resolveComponent("v-card");return e.openBlock(),e.createBlock(V,null,{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>o[5]||(o[5]=[e.createTextVNode(" Login ")])),_:1}),e.createVNode(r,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.isSet?"Enter the":"Create a")+" password to begin using OpenC3 ",1)]),_:1}),e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(_,null,{default:e.withCtx(()=>[s.isSet&&s.reset?(e.openBlock(),e.createBlock(c,{key:0,modelValue:s.oldPassword,"onUpdate:modelValue":o[0]||(o[0]=C=>s.oldPassword=C),type:"password",label:"Old Password"},null,8,["modelValue"])):e.createCommentVNode("",!0),e.createVNode(c,{modelValue:s.password,"onUpdate:modelValue":o[1]||(o[1]=C=>s.password=C),type:"password",label:`${!s.isSet||s.reset?"New ":""}Password`,"data-test":"new-password"},null,8,["modelValue","label"]),s.reset?(e.openBlock(),e.createBlock(c,{key:1,modelValue:s.confirmPassword,"onUpdate:modelValue":o[2]||(o[2]=C=>s.confirmPassword=C),rules:[i.rules.matchPassword],type:"password",label:"Confirm Password","data-test":"confirm-password"},null,8,["modelValue","rules"])):e.createCommentVNode("",!0),s.reset?(e.openBlock(),e.createBlock(u,{key:2,type:"submit",onClick:e.withModifiers(i.setPassword,["prevent"]),size:"large",color:s.isSet?"warn":"success",disabled:!i.formValid,"data-test":"set-password"},{default:e.withCtx(()=>o[6]||(o[6]=[e.createTextVNode(" Set ")])),_:1},8,["onClick","color","disabled"])):(e.openBlock(),e.createBlock(p,{key:3},{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(u,{type:"submit",onClick:o[3]||(o[3]=e.withModifiers(()=>i.verifyPassword(),["prevent"])),size:"large",color:"success",disabled:!i.formValid},{default:e.withCtx(()=>o[7]||(o[7]=[e.createTextVNode(" Login ")])),_:1},8,["disabled"]),e.createVNode(m),e.createVNode(u,{variant:"text",size:"small",onClick:i.showReset},{default:e.withCtx(()=>o[8]||(o[8]=[e.createTextVNode(" Change Password ")])),_:1},8,["onClick"])]),_:1})]),_:1}))]),_:1})]),_:1}),e.createVNode(k,{type:s.alertType,modelValue:s.showAlert,"onUpdate:modelValue":o[4]||(o[4]=C=>s.showAlert=C),closable:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.alert),1)]),_:1},8,["type","modelValue"])]),_:1})}const qe=y._export_sfc(Ye,[["render",je]]),Ze=3e3,We={data:function(){return{dismissed:!1,suppress:!1,discrepancy:0}},created:function(){this.suppress=localStorage.suppresswarning__clock_out_of_sync_with_server==="true",this.suppress||Y.axios.get("/openc3-api/time").then(t=>{this.discrepancy=t.data.now_nsec/1e6-Date.now()}).catch(t=>{this.dismissed=!0})},methods:{dismiss:function(){localStorage.suppresswarning__clock_out_of_sync_with_server=this.suppress,this.dismissed=!0}},computed:{approximateDiscrepancySec:function(){return(this.discrepancy/1e3).toFixed()},dialog:function(){return!this.dismissed&&Math.abs(this.discrepancy)>=Ze}}};function $e(t,o,n,a,s,i){const d=e.resolveComponent("v-card-title"),r=e.resolveComponent("v-checkbox"),c=e.resolveComponent("v-card-text"),u=e.resolveComponent("v-divider"),m=e.resolveComponent("v-btn"),g=e.resolveComponent("v-card-actions"),p=e.resolveComponent("v-card"),_=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(_,{modelValue:i.dialog,"onUpdate:modelValue":o[1]||(o[1]=v=>i.dialog=v),width:"500"},{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>o[2]||(o[2]=[e.createTextVNode(" Clock out of sync ")])),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createTextVNode(" We've detected that your clock is approximately "+e.toDisplayString(Math.abs(i.approximateDiscrepancySec))+" seconds "+e.toDisplayString(i.approximateDiscrepancySec>0?"behind":"ahead of")+" server time. This can cause issues and might have unknown side effects. ",1),e.createVNode(r,{modelValue:t.suppress,"onUpdate:modelValue":o[0]||(o[0]=v=>t.suppress=v),label:"Don't show this again"},null,8,["modelValue"])]),_:1}),e.createVNode(u),e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(m,{color:"primary",variant:"text",onClick:i.dismiss},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Dismiss ")])),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])}const Je=y._export_sfc(We,[["render",$e]]);exports.AppFooter=ce;exports.AppNav=He;exports.ClassificationBanners=Xe;exports.ClockFooter=L;exports.Login=qe;exports.Notifications=F;exports.ScopeSelector=I;exports.TimeCheck=Je;exports.UserMenu=P;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("../UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-CHXJm9wA.cjs"),e=require("vue"),y=require("../CustomIcon-Bop2mEnu.cjs"),U=require("single-spa"),B=require("../UpgradeToEnterpriseDialog-EaQZfck4.cjs"),h=require("../format-B22VpiOS.cjs"),S=require("../icons.cjs"),X=require("../AstroStatus-CILMWL6F.cjs"),Y=require("../index-DcL65Mqb.cjs");function T(t,o){const n=+h.toDate(t)-+h.toDate(o);return n<0?-1:n>0?1:n}function j(t){return h.constructFrom(t,Date.now())}function q(t,o,n){const[a,s]=h.normalizeDates(n==null?void 0:n.in,t,o),i=a.getFullYear()-s.getFullYear(),d=a.getMonth()-s.getMonth();return i*12+d}function Z(t){return o=>{const a=(t?Math[t]:Math.trunc)(o);return a===0?0:a}}function W(t,o){return+h.toDate(t)-+h.toDate(o)}function $(t,o){const n=h.toDate(t,o==null?void 0:o.in);return n.setHours(23,59,59,999),n}function J(t,o){const n=h.toDate(t,o==null?void 0:o.in),a=n.getMonth();return n.setFullYear(n.getFullYear(),a+1,0),n.setHours(23,59,59,999),n}function G(t,o){const n=h.toDate(t,o==null?void 0:o.in);return+$(n,o)==+J(n,o)}function K(t,o,n){const[a,s,i]=h.normalizeDates(n==null?void 0:n.in,t,t,o),d=T(s,i),r=Math.abs(q(s,i));if(r<1)return 0;s.getMonth()===1&&s.getDate()>27&&s.setDate(30),s.setMonth(s.getMonth()-d*r);let c=T(s,i)===-d;G(a)&&r===1&&T(a,i)===1&&(c=!1);const u=d*(r-+c);return u===0?0:u}function Q(t,o,n){const a=W(t,o)/1e3;return Z(n==null?void 0:n.roundingMethod)(a)}function ee(t,o,n){const a=h.getDefaultOptions(),s=(n==null?void 0:n.locale)??a.locale??h.enUS,i=2520,d=T(t,o);if(isNaN(d))throw new RangeError("Invalid time value");const r=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:d}),[c,u]=h.normalizeDates(n==null?void 0:n.in,...d>0?[o,t]:[t,o]),m=Q(u,c),g=(h.getTimezoneOffsetInMilliseconds(u)-h.getTimezoneOffsetInMilliseconds(c))/1e3,p=Math.round((m-g)/60);let _;if(p<2)return n!=null&&n.includeSeconds?m<5?s.formatDistance("lessThanXSeconds",5,r):m<10?s.formatDistance("lessThanXSeconds",10,r):m<20?s.formatDistance("lessThanXSeconds",20,r):m<40?s.formatDistance("halfAMinute",0,r):m<60?s.formatDistance("lessThanXMinutes",1,r):s.formatDistance("xMinutes",1,r):p===0?s.formatDistance("lessThanXMinutes",1,r):s.formatDistance("xMinutes",p,r);if(p<45)return s.formatDistance("xMinutes",p,r);if(p<90)return s.formatDistance("aboutXHours",1,r);if(p<h.minutesInDay){const v=Math.round(p/60);return s.formatDistance("aboutXHours",v,r)}else{if(p<i)return s.formatDistance("xDays",1,r);if(p<h.minutesInMonth){const v=Math.round(p/h.minutesInDay);return s.formatDistance("xDays",v,r)}else if(p<h.minutesInMonth*2)return _=Math.round(p/h.minutesInMonth),s.formatDistance("aboutXMonths",_,r)}if(_=K(u,c),_<12){const v=Math.round(p/h.minutesInMonth);return s.formatDistance("xMonths",v,r)}else{const v=_%12,k=Math.trunc(_/12);return v<3?s.formatDistance("aboutXYears",k,r):v<9?s.formatDistance("overXYears",k,r):s.formatDistance("almostXYears",k+1,r)}}function te(t,o){return ee(t,j(t),o)}const oe={data:function(){return{localDate:new Date,displayLocal:localStorage.clock_zone==="local",display24h:!localStorage.clock_12h,dateMode:localStorage.clock_dateMode||"monthFirst",intervalCount:0,showMenu:!1,menuX:0,menuY:0}},computed:{utcDate:function(){return new Date(this.localDate.getTime()+this.localDate.getTimezoneOffset()*6e4)},formatString:function(){let t;switch(this.dateMode){case"monthFirst":t="LL/dd/yyy";break;case"dayFirst":t="dd/LL/yyy";break;case"number":t="D";break}let o;return this.display24h?o="HH:mm:ss":o="hh:mm:ss a",`${t} ${o}`}},watch:{displayLocal:function(t){localStorage.clock_zone=t?"local":"utc"},display24h:function(t){t?delete localStorage.clock_12h:localStorage.clock_12h=!0},dateMode:function(t){t.match(/^monthFirst$|^dayFirst$|^number$/)&&(localStorage.clock_dateMode=t)}},created:function(){setInterval(()=>{this.intervalCount++,this.localDate=new Date},this.intervalCount<10?100:1e3)},methods:{openMenu:function(t){t.preventDefault(),this.showMenu=!1,this.menuX=t.clientX,this.menuY=t.clientY,this.$nextTick(()=>{this.showMenu=!0})},toggleDisplayLocal:function(){this.displayLocal=!this.displayLocal},toggleDisplay24h:function(){this.display24h=!this.display24h},setMonthFirst:function(){this.dateMode="monthFirst"},setDayFirst:function(){this.dateMode="dayFirst"},setNumber:function(){this.dateMode="number"},formatDate:function(t,o){return h.format(t,o,{useAdditionalDayOfYearTokens:!0})}}};function ne(t,o,n,a,s,i){const d=e.resolveComponent("v-list-item-title"),r=e.resolveComponent("v-list-item"),c=e.resolveComponent("v-divider"),u=e.resolveComponent("v-list"),m=e.resolveComponent("v-menu");return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("span",{style:{cursor:"context-menu"},class:"font-weight-bold",onContextmenu:o[0]||(o[0]=(...g)=>i.openMenu&&i.openMenu(...g))},e.toDisplayString(i.formatDate(t.displayLocal?t.localDate:i.utcDate,i.formatString))+" ("+e.toDisplayString(t.displayLocal?"local":"UTC")+") ",33),e.createVNode(m,{modelValue:t.showMenu,"onUpdate:modelValue":o[1]||(o[1]=g=>t.showMenu=g),target:[t.menuX,t.menuY]},{default:e.withCtx(()=>[e.createVNode(u,null,{default:e.withCtx(()=>[e.createVNode(r,null,{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.toggleDisplayLocal},{default:e.withCtx(()=>[e.createTextVNode(" Display "+e.toDisplayString(t.displayLocal?"UTC":"local time"),1)]),_:1},8,["onClick"])]),_:1}),e.createVNode(c),e.createVNode(r,null,{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.toggleDisplay24h},{default:e.withCtx(()=>[e.createTextVNode(" Display "+e.toDisplayString(t.display24h?12:24)+" hour clock ",1)]),_:1},8,["onClick"])]),_:1}),e.createVNode(c),t.dateMode!=="monthFirst"?(e.openBlock(),e.createBlock(r,{key:0},{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.setMonthFirst},{default:e.withCtx(()=>o[2]||(o[2]=[e.createTextVNode(" Display mm/dd/yyyy ")])),_:1},8,["onClick"])]),_:1})):e.createCommentVNode("",!0),t.dateMode!=="dayFirst"?(e.openBlock(),e.createBlock(r,{key:1},{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.setDayFirst},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Display dd/mm/yyyy ")])),_:1},8,["onClick"])]),_:1})):e.createCommentVNode("",!0),t.dateMode!=="number"?(e.openBlock(),e.createBlock(r,{key:2},{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.setNumber},{default:e.withCtx(()=>o[4]||(o[4]=[e.createTextVNode(" Display day of year ")])),_:1},8,["onClick"])]),_:1})):e.createCommentVNode("",!0)]),_:1})]),_:1},8,["modelValue","target"])])}const L=y._export_sfc(oe,[["render",ne]]),se={components:{ClockFooter:L,UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},data(){return{icon:"/img/icon.png",edition:"",enterprise:!1,license:"",sourceUrl:"",version:"",showUpgradeToEnterpriseDialog:!1,chromeless:this.$route.query.chromeless}},computed:{footerClass(){return this.enterprise?"enterprise":"core"}},created:function(){this.getSourceUrl(),N.li.get("/openc3-api/info").then(t=>{t.data.enterprise?this.edition="COSMOS Enterprise":this.edition="COSMOS Core",this.enterprise=t.data.enterprise,this.license=t.data.license,this.version=t.data.version})},methods:{getSourceUrl:function(){new N.pi().get_settings(["source_url"]).then(t=>{this.sourceUrl=t[0]})},upgrade:function(){this.enterprise||(this.showUpgradeToEnterpriseDialog=!0)}}},ie=["src"],ae=["href"],re={class:"justify-right"};function le(t,o,n,a,s,i){const d=e.resolveComponent("v-spacer"),r=e.resolveComponent("clock-footer"),c=e.resolveComponent("upgrade-to-enterprise-dialog"),u=e.resolveComponent("v-footer");return s.chromeless?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u,{key:0,id:"footer",app:"",height:"33"},{default:e.withCtx(()=>[e.createElementVNode("img",{src:s.icon,alt:"OpenC3"},null,8,ie),e.createElementVNode("span",{class:e.normalizeClass(i.footerClass),onClick:o[0]||(o[0]=(...m)=>i.upgrade&&i.upgrade(...m))}," OpenC3 "+e.toDisplayString(s.edition)+" "+e.toDisplayString(s.version)+" © 2025 - License: "+e.toDisplayString(s.license),3),e.createVNode(d),e.createElementVNode("a",{href:s.sourceUrl,class:"text-white text-decoration-underline"}," Source ",8,ae),e.createVNode(d),e.createElementVNode("div",re,[e.createVNode(r)]),e.createVNode(c,{modelValue:s.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[1]||(o[1]=m=>s.showUpgradeToEnterpriseDialog=m),reason:"Enterprise is Commercially Licensed"},null,8,["modelValue"])]),_:1}))}const ce=y._export_sfc(se,[["render",le],["__scopeId","data-v-e5a3338e"]]),b=1e3,{highestLevel:de,orderByLevel:ue,groupByLevel:pe}=X.AstroStatus,me={components:{AstroStatusIndicator:S.AstroStatusIndicator},props:{size:{type:[String,Number],default:26}},data:function(){return{AstroStatusColors:S.AstroStatusColors,alerts:[],cable:new N.di,scriptCable:new N.di("/script-api/cable"),subscription:null,scriptSubscription:null,numScripts:0,notifications:[],showNotificationPane:!1,toastNotification:{},notificationDialog:!1,selectedNotification:{},settingsDialog:!1,showToast:!0}},computed:{activeScripts:function(){return`Scripts: ${this.numScripts}`},notificationVsAlert:function(){return"notifications"},iconStatus:function(){if(this.unreadNotifications.length===0)return"off";const t=this.unreadNotifications.map(o=>o.level).filter((o,n,a)=>a.indexOf(o)===n);return S.UnknownToAstroStatus[de(t)]},readNotifications:function(){return this.notifications.filter(t=>t.read).sort((t,o)=>o.time-t.time)},unreadNotifications:function(){return this.notifications.filter(t=>!t.read).sort((t,o)=>o.time-t.time)},unreadCount:function(){return this.unreadNotifications.length},notificationList:function(){const t=pe(this.unreadNotifications);let o=ue(Object.keys(t),n=>n).flatMap(n=>[{header:n.charAt(0).toUpperCase()+n.slice(1)},...t[n]]);return this.readNotifications.length&&(o=o.concat([{header:"Read"},...this.readNotifications])),o}},watch:{showNotificationPane:function(t){t||(this.selectedNotification.message?(this.notificationDialog=!1,this.selectedNotification={}):this.markAllAsRead())},showToast:function(t){localStorage.notoast=!t}},created:function(){this.showToast=localStorage.notoast==="false",this.subscribe(),this.alerts=this.$store.state.notifyHistory,N.li.get("/script-api/running-script").then(t=>{this.numScripts=t.data.total})},unmounted:function(){this.subscription&&this.subscription.unsubscribe(),this.scriptSubscription&&this.scriptSubscription.unsubscribe(),this.cable.disconnect(),this.scriptCable.disconnect()},methods:{getStatus:function(t){return S.UnknownToAstroStatus[t]},markAllAsRead:function(){this.notifications.forEach(t=>{t.read=!0,(!localStorage.lastReadNotification||localStorage.lastReadNotification<t.msg_id)&&(localStorage.lastReadNotification=t.msg_id)})},clearNotifications:function(){this.markAllAsRead(),this.notifications=[],localStorage.notificationStreamOffset=localStorage.lastReadNotification,this.showNotificationPane=!1},toggleNotificationPane:function(){this.showNotificationPane=!this.showNotificationPane},toggleSettingsDialog:function(){this.settingsDialog=!this.settingsDialog},openDialog:function(t,o=!1){t.read=!0,(!localStorage.lastReadNotification||localStorage.lastReadNotification<t.msg_id)&&(localStorage.lastReadNotification=t.msg_id),this.selectedNotification=t,this.notificationDialog=!0},navigate:function(t){window.open(t,"_blank")},subscribe:function(){this.cable.createSubscription("MessagesChannel",window.openc3Scope,{received:t=>this.receiveMessage(t)},{start_offset:localStorage.notificationStreamOffset||localStorage.lastReadNotification,types:["notification","alert","ephemeral"]}).then(t=>{this.subscription=t}),this.scriptCable.createSubscription("AllScriptsChannel",window.openc3Scope,{received:t=>this.receiveScript(t)}).then(t=>{this.scriptSubscription=t})},receiveMessage:function(t){this.cable.recordPing(),t.length>b&&t.splice(0,t.length-b);let o=t.filter(a=>a.type==="ephemeral");o&&o.length>0&&(t=t.filter(a=>a.type!=="ephemeral"),o.forEach(a=>{this.$emit("ephemeral",a)}));let n=!1;if(t.forEach(a=>{a.read=a.msg_id<=localStorage.lastReadNotification,a.level=a.level||"INFO",!a.read&&["FATAL","ERROR","WARN"].includes(a.level)&&(n=!0,this.toastNotification=a)}),this.showToast&&n){let a=5e3;["FATAL","ERROR"].includes(this.toastNotification.level)&&(a=null),this.$notify&&this.$notify[this.toastNotification.level]({...this.toastNotification,type:"notification",duration:a,saveToHistory:!1})}this.notifications.length+t.length>b&&this.notifications.splice(0,this.notifications.length+t.length-b),this.notifications=this.notifications.concat(t)},receiveScript:function(t){this.cable.recordPing(),this.numScripts=t.active_scripts},formatShortDateTime:function(t){if(!t)return"";const o=new Date(t/1e6);return te(o,{addSuffix:!0})}}};function fe(t,o,n,a,s,i){const d=e.resolveComponent("v-overlay"),r=e.resolveComponent("rux-monitoring-icon"),c=e.resolveComponent("v-spacer"),u=e.resolveComponent("v-btn"),m=e.resolveComponent("v-tooltip"),g=e.resolveComponent("v-card-title"),p=e.resolveComponent("v-card-text"),_=e.resolveComponent("v-divider"),v=e.resolveComponent("v-list-subheader"),k=e.resolveComponent("rux-status"),V=e.resolveComponent("v-list-item-title"),C=e.resolveComponent("v-list-item-subtitle"),w=e.resolveComponent("v-list-item"),D=e.resolveComponent("v-list"),x=e.resolveComponent("v-card"),l=e.resolveComponent("v-menu"),E=e.resolveComponent("astro-status-indicator"),R=e.resolveComponent("v-card-subtitle"),z=e.resolveComponent("v-icon"),A=e.resolveComponent("v-card-actions"),O=e.resolveComponent("v-dialog"),H=e.resolveComponent("v-switch");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,{"model-value":t.showNotificationPane,class:"overlay"},null,8,["model-value"]),e.createVNode(l,{modelValue:t.showNotificationPane,"onUpdate:modelValue":o[0]||(o[0]=f=>t.showNotificationPane=f),transition:"slide-y-transition","close-on-content-click":!1,offset:[12,102]},{activator:e.withCtx(({props:f})=>[e.createVNode(r,e.mergeProps(f,{class:"rux-icon",icon:i.notificationVsAlert,label:"Notifications",sublabel:i.activeScripts,status:i.iconStatus,notifications:i.unreadNotifications.length}),null,16,["icon","sublabel","status","notifications"])]),default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>[e.createVNode(g,{class:"d-flex align-center justify-content-space-between"},{default:e.withCtx(()=>[o[7]||(o[7]=e.createElementVNode("span",null," Notifications ",-1)),e.createVNode(c),e.createVNode(m,{"open-delay":600,location:"top"},{activator:e.withCtx(({props:f})=>[e.createElementVNode("div",e.normalizeProps(e.guardReactiveProps(f)),[e.createVNode(u,{class:"ml-1",icon:"mdi-notification-clear-all ",variant:"text","data-test":"clear-notifications","aria-label":"Dismiss All Notifications",onClick:i.clearNotifications},null,8,["onClick"])],16)]),default:e.withCtx(()=>[o[6]||(o[6]=e.createElementVNode("span",null," Dismiss All Notifications ",-1))]),_:1}),e.createVNode(u,{icon:"astro:settings",variant:"text",class:"ml-1","data-test":"notification-settings","aria-label":"Notification Settings",onClick:i.toggleSettingsDialog},null,8,["onClick"])]),_:1}),t.notifications.length===0?(e.openBlock(),e.createBlock(p,{key:0},{default:e.withCtx(()=>o[8]||(o[8]=[e.createTextVNode(" No notifications ")])),_:1})):(e.openBlock(),e.createBlock(D,{key:1,lines:"two",width:"420","max-height":"80vh",class:"overflow-y-auto","data-test":"notification-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.notificationList,(f,M)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[f.header?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[M!==0?(e.openBlock(),e.createBlock(_,{key:M,class:"mb-2"})):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(v,{key:f.header},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.header),1)]),_:2},1024))],64)):(e.openBlock(),e.createBlock(w,{key:`notification-${M}`,class:"pl-2",onClick:Ge=>i.openDialog(f)},{prepend:e.withCtx(()=>[e.createVNode(k,{class:"px-2",status:i.getStatus(f.level)},null,8,["status"])]),default:e.withCtx(()=>[e.createVNode(V,{class:e.normalizeClass({"text--secondary":f.read,"text-wrap":!0})},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.message),1)]),_:2},1032,["class"]),e.createVNode(C,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.formatShortDateTime(f.time)),1)]),_:2},1024)]),_:2},1032,["onClick"]))],64))),256))]),_:1}))]),_:1})]),_:1},8,["modelValue"]),e.createVNode(O,{modelValue:t.notificationDialog,"onUpdate:modelValue":o[3]||(o[3]=f=>t.notificationDialog=f),width:"600"},{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.selectedNotification.message)+" ",1),e.createVNode(c),e.createVNode(E,{status:t.selectedNotification.level||"INFO"},null,8,["status"])]),_:1}),e.createVNode(R,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.formatShortDateTime(t.selectedNotification.time)),1)]),_:1}),e.createVNode(_),e.createVNode(A,null,{default:e.withCtx(()=>[t.selectedNotification.url?(e.openBlock(),e.createBlock(u,{key:0,color:"primary",variant:"text",onClick:o[1]||(o[1]=f=>i.navigate(t.selectedNotification.url))},{default:e.withCtx(()=>[o[10]||(o[10]=e.createTextVNode(" Open ")),e.createVNode(z,{end:""},{default:e.withCtx(()=>o[9]||(o[9]=[e.createTextVNode(" mdi-open-in-new ")])),_:1})]),_:1})):e.createCommentVNode("",!0),e.createVNode(u,{color:"primary",variant:"text",onClick:o[2]||(o[2]=f=>t.notificationDialog=!1)},{default:e.withCtx(()=>o[11]||(o[11]=[e.createTextVNode(" Close ")])),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),e.createVNode(O,{modelValue:t.settingsDialog,"onUpdate:modelValue":o[5]||(o[5]=f=>t.settingsDialog=f),width:"600"},{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>o[12]||(o[12]=[e.createTextVNode(" Notification settings ")])),_:1}),e.createVNode(p,null,{default:e.withCtx(()=>[e.createVNode(H,{modelValue:t.showToast,"onUpdate:modelValue":o[4]||(o[4]=f=>t.showToast=f),label:"Show toasts",color:"primary"},null,8,["modelValue"])]),_:1}),e.createVNode(_),e.createVNode(A,null,{default:e.withCtx(()=>[e.createVNode(u,{color:"primary",variant:"text",onClick:i.toggleSettingsDialog},{default:e.withCtx(()=>o[13]||(o[13]=[e.createTextVNode(" Close ")])),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}const F=y._export_sfc(me,[["render",fe],["__scopeId","data-v-0d6257f1"]]),he={components:{UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},data:function(){return{scopes:["DEFAULT"],scope:"DEFAULT",showUpgradeToEnterpriseDialog:!1}}};function _e(t,o,n,a,s,i){const d=e.resolveComponent("v-select"),r=e.resolveComponent("upgrade-to-enterprise-dialog");return e.openBlock(),e.createElementBlock("div",{style:{cursor:"pointer"},onClick:o[2]||(o[2]=c=>t.showUpgradeToEnterpriseDialog=!0)},[e.createVNode(d,{modelValue:t.scope,"onUpdate:modelValue":o[0]||(o[0]=c=>t.scope=c),items:t.scopes,disabled:t.scopes.length<=1,label:"Scope",density:"compact",variant:"outlined","hide-details":"",style:{"max-width":"150px"}},null,8,["modelValue","items","disabled"]),e.createVNode(r,{modelValue:t.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[1]||(o[1]=c=>t.showUpgradeToEnterpriseDialog=c),reason:"Enterprise allows additional Scopes"},null,8,["modelValue"])])}const I=y._export_sfc(he,[["render",_e]]),ve={components:{UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},props:{size:{type:[String,Number],default:26}},data:function(){let t=OpenC3Auth.user();return{api:new N.pi,showUserMenu:!1,authenticated:!!localStorage.openc3Token,name:t.name,username:t.preferred_username,showUpgradeToEnterpriseDialog:!1,activeUsers:["None"],newsFeed:!1,news:[]}},computed:{unreadNews:function(){return this.news.filter(t=>!t.read)}},watch:{showUserMenu:function(t,o){t===!0&&(this.news.length>0&&(this.news.forEach(n=>{n.read=!0}),localStorage.lastNewsRead=this.news[0].date),this.name!=="Anonymous"&&N.li.get("/openc3-api/users/active").then(n=>{this.activeUsers=n.data.filter(a=>!a.includes(this.name)),this.activeUsers.length===0&&(this.activeUsers=["None"])}))}},created:function(){this.api.get_setting("news_feed").then(t=>{t&&(this.newsFeed=t,this.newsFeed&&(this.fetchNews(),setInterval(this.fetchNews,60*60*1e3)))}).catch(t=>{})},methods:{refreshNews(){this.api.update_news().then(()=>{this.fetchNews()})},formatDate(t){return t.split("T")[0]},fetchNews:function(){N.li.get("/openc3-api/news").then(t=>{this.news=t.data.sort((o,n)=>Date.parse(n.date)-Date.parse(o.date)),localStorage.lastNewsRead&&this.news.forEach(o=>{o.read=Date.parse(o.date)<=Date.parse(localStorage.lastNewsRead)})})},logout:function(){OpenC3Auth.logout(),N.li.put(`/openc3-api/users/logout/${this.username}`)},login:function(){OpenC3Auth.login(location.href)},roles:function(){return this.name==="Anonymous"?"Admin":OpenC3Auth.userroles().map(t=>this.capitalize(t)).sort().join(", ")},capitalize:function(t){return t.charAt(0).toUpperCase()+t.slice(1)}}},ge={style:{"text-align":"center",margin:"5px"}},we={key:0},Ne={class:"roles"},Ce={class:"pb-3 roles"},ke={key:1},ye={key:0,class:"pa-3"},Ve={key:2},De={key:0},xe={class:"news-title"},Se={class:"news-date"},be=["innerHTML"];function Te(t,o,n,a,s,i){const d=e.resolveComponent("v-overlay"),r=e.resolveComponent("rux-monitoring-icon"),c=e.resolveComponent("v-btn"),u=e.resolveComponent("v-row"),m=e.resolveComponent("v-card-text"),g=e.resolveComponent("v-col"),p=e.resolveComponent("v-list-item-title"),_=e.resolveComponent("v-list-item"),v=e.resolveComponent("v-list"),k=e.resolveComponent("v-card"),V=e.resolveComponent("v-menu"),C=e.resolveComponent("upgrade-to-enterprise-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,{"model-value":t.showUserMenu,class:"overlay"},null,8,["model-value"]),e.createVNode(V,{modelValue:t.showUserMenu,"onUpdate:modelValue":o[1]||(o[1]=w=>t.showUserMenu=w),transition:"slide-y-transition","close-on-content-click":!1,offset:20},{activator:e.withCtx(({props:w})=>[e.createVNode(r,e.mergeProps(w,{class:"rux-icon",icon:"person",status:"off",label:t.name,sublabel:i.roles(),notifications:i.unreadNews.length}),null,16,["label","sublabel","notifications"])]),default:e.withCtx(()=>[e.createVNode(k,null,{default:e.withCtx(()=>[e.createVNode(m,{class:"text-center"},{default:e.withCtx(()=>[e.createElementVNode("div",ge,e.toDisplayString(t.name),1),t.name!=="Anonymous"?(e.openBlock(),e.createElementBlock("div",we,[e.createElementVNode("div",Ne,"Username: "+e.toDisplayString(t.username),1),e.createElementVNode("div",Ce,"Roles: "+e.toDisplayString(i.roles()),1)])):e.createCommentVNode("",!0),t.authenticated?(e.openBlock(),e.createElementBlock("div",ke,[e.createVNode(c,{block:"",color:"primary",onClick:i.logout},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Logout ")])),_:1},8,["onClick"]),t.name!=="Anonymous"?(e.openBlock(),e.createElementBlock("div",ye,[e.createVNode(u,{class:"pt-3 user-title"},{default:e.withCtx(()=>o[4]||(o[4]=[e.createTextVNode("Other Active Users:")])),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.activeUsers,(w,D)=>(e.openBlock(),e.createBlock(u,{key:D,class:"user"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(w),1)]),_:2},1024))),128))])):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",Ve,[e.createVNode(c,{block:"",color:"primary",onClick:i.login},{default:e.withCtx(()=>o[5]||(o[5]=[e.createTextVNode(" Login ")])),_:1},8,["onClick"])])),t.name==="Anonymous"?(e.openBlock(),e.createElementBlock("div",{key:3,class:"pt-2 link",onClick:o[0]||(o[0]=w=>t.showUpgradeToEnterpriseDialog=!0)},o[6]||(o[6]=[e.createTextVNode(" Click to learn more about"),e.createElementVNode("br",null,null,-1),e.createTextVNode(" COSMOS Enterprise ")]))):e.createCommentVNode("",!0)]),_:1}),t.newsFeed?(e.openBlock(),e.createElementBlock("div",De,[e.createVNode(u,{"no-gutters":"",class:"news-header"},{default:e.withCtx(()=>[e.createVNode(g,{cols:"auto",class:"me-auto"},{default:e.withCtx(()=>o[7]||(o[7]=[e.createTextVNode("COSMOS News")])),_:1}),e.createVNode(g,{cols:"auto"},{default:e.withCtx(()=>[e.createVNode(c,{color:"primary",density:"compact",block:"",onClick:i.refreshNews},{default:e.withCtx(()=>o[8]||(o[8]=[e.createTextVNode(" Refresh ")])),_:1},8,["onClick"])]),_:1})]),_:1}),e.createVNode(v,{lines:"two",width:"420","max-height":"75vh",class:"overflow-y-auto","data-test":"news-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.news,(w,D)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`news-${D}`},[o[9]||(o[9]=e.createElementVNode("hr",null,null,-1)),e.createVNode(_,{class:"pl-2"},{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createElementVNode("span",xe,e.toDisplayString(w.title),1),e.createElementVNode("span",Se,e.toDisplayString(i.formatDate(w.date)),1)]),_:2},1024),e.createElementVNode("div",{innerHTML:w.body},null,8,be)]),_:2},1024)],64))),128))]),_:1})])):e.createCommentVNode("",!0)]),_:1})]),_:1},8,["modelValue"]),e.createVNode(C,{modelValue:t.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[2]||(o[2]=w=>t.showUpgradeToEnterpriseDialog=w),reason:"Enterprise has individual users with RBAC"},null,8,["modelValue"])])}const P=y._export_sfc(ve,[["render",Te],["__scopeId","data-v-57255d4e"]]),Be={components:{Notifications:F,ScopeSelector:I,UserMenu:P,UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},props:{edition:{type:String,default:""}},data(){return{api:new N.pi,timeZone:"local",subtitle:null,astro:{hideClock:!1},items:[],drawer:!0,appNav:{},logo:"/img/logo.png",initiallyOpen:[],showUpgradeToEnterpriseDialog:!1,chromeless:this.$route.query.chromeless}},computed:{shownTools:function(){let t={};for(let o of Object.keys(this.appNav))this.appNav[o].shown&&this.appNav[o].category!=="Admin"&&(t[o]=this.appNav[o]);return t},adminTools:function(){let t={};for(let o of Object.keys(this.appNav))this.appNav[o].shown&&this.appNav[o].category==="Admin"&&(t[o]=this.appNav[o]);return t},astroTimeZone:function(){return this.timeZone==="local"?Intl.DateTimeFormat().resolvedOptions().timeZone:this.timeZone}},created(){this.api.get_setting("astro").then(t=>{t&&(this.astro=JSON.parse(t))}).catch(t=>{}),this.api.get_setting("subtitle").then(t=>{t&&(this.subtitle=t)}).catch(t=>{}),this.api.get_setting("time_zone").then(t=>{t&&(this.timeZone=t)}).catch(t=>{}),N.li.get("/openc3-api/tools/all",{params:{scope:"DEFAULT"}}).then(t=>{this.appNav=t.data;let o=1;for(let n of Object.keys(this.appNav)){if(this.appNav[n].shown){if(this.appNav[n].category&&this.appNav[n].category!=="Admin"){this.initiallyOpen.includes(this.appNav[n].category)||this.initiallyOpen.push(this.appNav[n].category);const a=this.items.filter(s=>s.name===this.appNav[n].category);a.length===0?(this.items.push({id:o,name:this.appNav[n].category,children:[{id:o+1,name:this.appNav[n].name,icon:this.appNav[n].icon,url:this.appNav[n].url,inline_url:this.appNav[n].inline_url,window:this.appNav[n].window}]}),o++):a[0].children.push({id:o,name:this.appNav[n].name,icon:this.appNav[n].icon,url:this.appNav[n].url,inline_url:this.appNav[n].inline_url,window:this.appNav[n].window})}else this.appNav[n].category||this.items.push({id:o,name:this.appNav[n].name,icon:this.appNav[n].icon,url:this.appNav[n].url,inline_url:this.appNav[n].inline_url,window:this.appNav[n].window});o++}if(this.appNav[n].inline_url&&this.appNav[n].window==="INLINE"&&this.appNav[n].folder_name&&this.appNav[n].folder_name!=="base"){let a=this.appNav[n].folder_name,s="@openc3/tool-"+a;U.registerApplication({name:s,app:()=>System.import(s),activeWhen:["/tools/"+a]})}}U.start({urlRerouteOnly:!0}),setInterval(()=>{OpenC3Auth.updateToken(120).then(function(n){n&&OpenC3Auth.setTokens()})},6e4)})},methods:{navigateToUrl:U.navigateToUrl,newTabUrl(t){let o=null;try{t.url[0]=="/"&&t.url[1]!="/"?o=new URL(t.url,window.location.origin):o=new URL(t.url),o.searchParams.set("scope",window.openc3Scope)}catch(n){window.$cosmosNotify.serious({title:`Invalid URL '${t.url}' for tool ${t.name}`,message:n.message}),o.href="/"}return o.href}}},Ee=["src"],Me={style:{"text-align":"center","font-size":"18pt"}},Ue=["href","onClick"],Ae=["href"],Oe=["href","onClick"],Le=["href","onClick"],Fe=["href"],Ie=["href"],Pe=["href"],Re=["href"];function ze(t,o,n,a,s,i){const d=e.resolveComponent("v-btn"),r=e.resolveComponent("v-divider"),c=e.resolveComponent("v-icon"),u=e.resolveComponent("v-treeview"),m=e.resolveComponent("v-navigation-drawer"),g=e.resolveComponent("rux-icon"),p=e.resolveComponent("v-row"),_=e.resolveComponent("v-col"),v=e.resolveComponent("rux-clock"),k=e.resolveComponent("v-spacer"),V=e.resolveComponent("scope-selector"),C=e.resolveComponent("notifications"),w=e.resolveComponent("user-menu"),D=e.resolveComponent("v-app-bar"),x=e.resolveComponent("upgrade-to-enterprise-dialog");return e.openBlock(),e.createElementBlock("div",null,[s.chromeless?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(m,{key:0,"model-value":s.drawer,id:"openc3-nav-drawer"},{default:e.withCtx(()=>[e.createElementVNode("img",{src:s.logo,class:"logo",alt:"OpenC3"},null,8,Ee),e.createElementVNode("div",{class:"cosmos",onClick:o[0]||(o[0]=l=>s.showUpgradeToEnterpriseDialog=!0)}," COSMOS "),e.createElementVNode("div",Me,e.toDisplayString(s.subtitle),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.adminTools,(l,E)=>(e.openBlock(),e.createElementBlock("div",{key:E,class:"ma-3"},[e.createVNode(d,{block:"",size:"small",href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"]),class:"fixcenter",color:"primary"},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Admin Console ")])),_:2},1032,["href","onClick"])]))),128)),e.createVNode(r),e.createVNode(u,{items:s.items,opened:s.initiallyOpen,"item-value":"name",density:"compact","open-on-click":""},{prepend:e.withCtx(({item:l})=>[l.icon?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[l.window==="INLINE"?(e.openBlock(),e.createElementBlock("a",{key:0,href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"])},[e.createVNode(c,{class:"mr-2"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.icon),1)]),_:2},1024)],8,Ue)):(e.openBlock(),e.createElementBlock("a",{key:1,href:l.url},[e.createVNode(c,{class:"mr-2"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.icon),1)]),_:2},1024)],8,Ae))],64)):e.createCommentVNode("",!0)]),title:e.withCtx(({item:l})=>[l.icon?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[l.window==="INLINE"?(e.openBlock(),e.createElementBlock("a",{key:0,href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"])},e.toDisplayString(l.name),9,Le)):l.window==="IFRAME"?(e.openBlock(),e.createElementBlock("a",{key:1,href:"/tools/iframe?title="+encodeURIComponent(l.name)+"&url="+l.url},e.toDisplayString(l.name),9,Fe)):l.window==="SAME"?(e.openBlock(),e.createElementBlock("a",{key:2,href:l.url},e.toDisplayString(l.name),9,Ie)):(e.openBlock(),e.createElementBlock("a",{key:3,href:l.url,target:"_blank"},e.toDisplayString(l.name),9,Pe))],64)):(e.openBlock(),e.createElementBlock("a",{key:0,href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"])},e.toDisplayString(l.name),9,Oe))]),append:e.withCtx(({item:l})=>[l.icon?(e.openBlock(),e.createElementBlock("a",{key:0,href:i.newTabUrl(l),target:"_blank"},[e.createVNode(c,null,{default:e.withCtx(()=>o[4]||(o[4]=[e.createTextVNode("mdi-open-in-new")])),_:1})],8,Re)):e.createCommentVNode("",!0)]),_:1},8,["items","opened"])]),_:1},8,["model-value"])),s.chromeless?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(D,{key:1,id:"openc3-app-toolbar"},{default:e.withCtx(()=>[e.createVNode(p,{class:"flex-nowrap",justify:"space-between","no-gutters":""},{default:e.withCtx(()=>[e.createVNode(_,{"align-self":"start"},{default:e.withCtx(()=>[e.createVNode(p,{class:"flex-nowrap"},{default:e.withCtx(()=>[e.createVNode(g,{class:"ml-3 mr-2 pa-2",size:"small",icon:"apps",onClick:o[1]||(o[1]=l=>s.drawer=!s.drawer)}),o[5]||(o[5]=e.createElementVNode("span",{id:"openc3-menu"},null,-1))]),_:1})]),_:1}),e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(p,{class:"clock flex-nowrap mt-0"},{default:e.withCtx(()=>[s.astro.hideClock?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(v,{key:0,"date-in":"",timezone:i.astroTimeZone},null,8,["timezone"]))]),_:1})]),_:1}),e.createVNode(_,{"align-self":"center",class:"mt-2"},{default:e.withCtx(()=>[e.createVNode(p,{class:"flex-nowrap"},{default:e.withCtx(()=>[e.createVNode(k),e.createVNode(V,{class:"mr-6 mt-4"}),e.createVNode(C,{class:"mr-6","data-test":"notifications"}),e.createVNode(w,{class:"mr-6"})]),_:1})]),_:1})]),_:1})]),_:1})),e.createVNode(x,{modelValue:s.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[2]||(o[2]=l=>s.showUpgradeToEnterpriseDialog=l),reason:"Enterprise adds Calendar and Autonomic"},null,8,["modelValue"])])}const He=y._export_sfc(Be,[["render",ze],["__scopeId","data-v-9ca3d95a"]]),Xe={data:function(){return{classification:{text:"",fontColor:"white",backgroundColor:"red",topHeight:0,bottomHeight:0}}},computed:{classificationStyles:function(){return[`--classification-text:"${this.classification.text}";`,`--classification-font-color:${this.classification.fontColor};`,`--classification-background-color:${this.classification.backgroundColor};`,`--classification-height-top:${this.classification.topHeight}px;`,`--classification-height-bottom:${this.classification.bottomHeight}px;`].join("")}},created:function(){new N.pi().get_setting("classification_banner").then(o=>{o&&(this.classification=JSON.parse(o))}).catch(o=>{})}},Ye={data(){return{isSet:!0,password:"",confirmPassword:"",oldPassword:"",reset:!1,alert:"",alertType:"success",showAlert:!1}},computed:{options:function(){return{noAuth:!0,noScope:!0}},rules:function(){return{matchPassword:()=>this.password===this.confirmPassword||"Passwords must match"}},formValid:function(){return this.reset?this.isSet?!!this.oldPassword&&!!this.password&&this.password===this.confirmPassword:!!this.password&&this.password===this.confirmPassword:!!this.password}},created:function(){N.li.get("/openc3-api/auth/token-exists",this.options).then(t=>{this.isSet=!!t.data.result,this.isSet||(this.reset=!0)})},mounted:function(){localStorage.openc3Token&&this.verifyPassword(localStorage.openc3Token,!0)},methods:{showReset:function(){this.reset=!0},login:function(t){localStorage.openc3Token=t.data;const o=new URLSearchParams(window.location.search).get("redirect");o!=null&&o.startsWith("/tools/")?window.location=decodeURI(o):window.location="/"},verifyPassword:function(t,o){t||(t=this.password),this.showAlert=!1,N.li.post("/openc3-api/auth/verify",{data:{token:t},...this.options}).then(n=>{this.login(n)}).catch(n=>{(n==null?void 0:n.status)===401?this.alert="Incorrect password":this.alert=n.message||"Something went wrong...",this.alertType="warning",this.showAlert=!o})},setPassword:function(){this.showAlert=!1,N.li.post("/openc3-api/auth/set",{data:{old_token:this.oldPassword,token:this.password},...this.options}).then(t=>{this.login(t)}).catch(t=>{this.alert=`Invalid password: ${t.response.data.message}`,this.alertType="warning",this.showAlert=!0})}}};function je(t,o,n,a,s,i){const d=e.resolveComponent("v-card-title"),r=e.resolveComponent("v-card-subtitle"),c=e.resolveComponent("v-text-field"),u=e.resolveComponent("v-btn"),m=e.resolveComponent("v-spacer"),g=e.resolveComponent("v-row"),p=e.resolveComponent("v-container"),_=e.resolveComponent("v-form"),v=e.resolveComponent("v-card-text"),k=e.resolveComponent("v-alert"),V=e.resolveComponent("v-card");return e.openBlock(),e.createBlock(V,null,{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>o[5]||(o[5]=[e.createTextVNode(" Login ")])),_:1}),e.createVNode(r,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.isSet?"Enter the":"Create a")+" password to begin using OpenC3 ",1)]),_:1}),e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(_,null,{default:e.withCtx(()=>[s.isSet&&s.reset?(e.openBlock(),e.createBlock(c,{key:0,modelValue:s.oldPassword,"onUpdate:modelValue":o[0]||(o[0]=C=>s.oldPassword=C),type:"password",label:"Old Password"},null,8,["modelValue"])):e.createCommentVNode("",!0),e.createVNode(c,{modelValue:s.password,"onUpdate:modelValue":o[1]||(o[1]=C=>s.password=C),type:"password",label:`${!s.isSet||s.reset?"New ":""}Password`,"data-test":"new-password"},null,8,["modelValue","label"]),s.reset?(e.openBlock(),e.createBlock(c,{key:1,modelValue:s.confirmPassword,"onUpdate:modelValue":o[2]||(o[2]=C=>s.confirmPassword=C),rules:[i.rules.matchPassword],type:"password",label:"Confirm Password","data-test":"confirm-password"},null,8,["modelValue","rules"])):e.createCommentVNode("",!0),s.reset?(e.openBlock(),e.createBlock(u,{key:2,type:"submit",onClick:e.withModifiers(i.setPassword,["prevent"]),size:"large",color:s.isSet?"warn":"success",disabled:!i.formValid,"data-test":"set-password"},{default:e.withCtx(()=>o[6]||(o[6]=[e.createTextVNode(" Set ")])),_:1},8,["onClick","color","disabled"])):(e.openBlock(),e.createBlock(p,{key:3},{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(u,{type:"submit",onClick:o[3]||(o[3]=e.withModifiers(()=>i.verifyPassword(),["prevent"])),size:"large",color:"success",disabled:!i.formValid},{default:e.withCtx(()=>o[7]||(o[7]=[e.createTextVNode(" Login ")])),_:1},8,["disabled"]),e.createVNode(m),e.createVNode(u,{variant:"text",size:"small",onClick:i.showReset},{default:e.withCtx(()=>o[8]||(o[8]=[e.createTextVNode(" Change Password ")])),_:1},8,["onClick"])]),_:1})]),_:1}))]),_:1})]),_:1}),e.createVNode(k,{type:s.alertType,modelValue:s.showAlert,"onUpdate:modelValue":o[4]||(o[4]=C=>s.showAlert=C),closable:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.alert),1)]),_:1},8,["type","modelValue"])]),_:1})}const qe=y._export_sfc(Ye,[["render",je]]),Ze=3e3,We={data:function(){return{dismissed:!1,suppress:!1,discrepancy:0}},created:function(){this.suppress=localStorage.suppresswarning__clock_out_of_sync_with_server==="true",this.suppress||Y.axios.get("/openc3-api/time").then(t=>{this.discrepancy=t.data.now_nsec/1e6-Date.now()}).catch(t=>{this.dismissed=!0})},methods:{dismiss:function(){localStorage.suppresswarning__clock_out_of_sync_with_server=this.suppress,this.dismissed=!0}},computed:{approximateDiscrepancySec:function(){return(this.discrepancy/1e3).toFixed()},dialog:function(){return!this.dismissed&&Math.abs(this.discrepancy)>=Ze}}};function $e(t,o,n,a,s,i){const d=e.resolveComponent("v-card-title"),r=e.resolveComponent("v-checkbox"),c=e.resolveComponent("v-card-text"),u=e.resolveComponent("v-divider"),m=e.resolveComponent("v-btn"),g=e.resolveComponent("v-card-actions"),p=e.resolveComponent("v-card"),_=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(_,{modelValue:i.dialog,"onUpdate:modelValue":o[1]||(o[1]=v=>i.dialog=v),width:"500"},{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>o[2]||(o[2]=[e.createTextVNode(" Clock out of sync ")])),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createTextVNode(" We've detected that your clock is approximately "+e.toDisplayString(Math.abs(i.approximateDiscrepancySec))+" seconds "+e.toDisplayString(i.approximateDiscrepancySec>0?"behind":"ahead of")+" server time. This can cause issues and might have unknown side effects. ",1),e.createVNode(r,{modelValue:t.suppress,"onUpdate:modelValue":o[0]||(o[0]=v=>t.suppress=v),label:"Don't show this again"},null,8,["modelValue"])]),_:1}),e.createVNode(u),e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(m,{color:"primary",variant:"text",onClick:i.dismiss},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Dismiss ")])),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])}const Je=y._export_sfc(We,[["render",$e]]);exports.AppFooter=ce;exports.AppNav=He;exports.ClassificationBanners=Xe;exports.ClockFooter=L;exports.Login=qe;exports.Notifications=F;exports.ScopeSelector=I;exports.TimeCheck=Je;exports.UserMenu=P;
2
2
  //# sourceMappingURL=base.cjs.map
@@ -1,8 +1,8 @@
1
- import { p as X, l as A, d as q } from "../UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-BOiUmW4q.js";
1
+ import { p as X, l as A, d as q } from "../UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-xI8cv5P5.js";
2
2
  import { resolveComponent as a, createElementBlock as _, openBlock as c, createElementVNode as b, createVNode as n, toDisplayString as h, withCtx as s, createBlock as S, createCommentVNode as C, createTextVNode as f, normalizeClass as Q, normalizeProps as se, guardReactiveProps as ie, Fragment as V, renderList as H, mergeProps as ee, withModifiers as P } from "vue";
3
3
  import { _ as O } from "../CustomIcon-h5X7369N.js";
4
4
  import { navigateToUrl as ae, registerApplication as re, start as le } from "single-spa";
5
- import { U as Y } from "../UpgradeToEnterpriseDialog-CMVEjihv.js";
5
+ import { U as Y } from "../UpgradeToEnterpriseDialog-BH0WHey-.js";
6
6
  import { t as R, c as ce, n as Z, g as ue, e as de, b as J, d as G, h as I, f as fe } from "../format-CVeawcIv.js";
7
7
  import { AstroStatusIndicator as pe, UnknownToAstroStatus as K, AstroStatusColors as me } from "../icons.js";
8
8
  import { A as he } from "../AstroStatus-CY9VkeTN.js";
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../EventListDialog-COOwwkxk.cjs");exports.ActivityCreateDialog=e.ActivityCreateDialog;exports.ColorSelectForm=e.ColorSelectForm;exports.CreateDialog=e.CreateDialog;exports.DeleteItem=e.DeleteItem;exports.EventListDialog=e.EventListDialog;exports.MetadataCreateDialog=e.MetadataCreateDialog;exports.MetadataInputForm=e.MetadataInputForm;exports.NoteCreateDialog=e.NoteCreateDialog;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../EventListDialog-C7RuZnvD.cjs");exports.ActivityCreateDialog=e.ActivityCreateDialog;exports.ColorSelectForm=e.ColorSelectForm;exports.CreateDialog=e.CreateDialog;exports.DeleteItem=e.DeleteItem;exports.EventListDialog=e.EventListDialog;exports.MetadataCreateDialog=e.MetadataCreateDialog;exports.MetadataInputForm=e.MetadataInputForm;exports.NoteCreateDialog=e.NoteCreateDialog;
2
2
  //# sourceMappingURL=calendar.cjs.map
@@ -1,4 +1,4 @@
1
- import { A as t, C as o, a as r, D as s, E as i, M as l, b as D, N as C } from "../EventListDialog-ankpCg-n.js";
1
+ import { A as t, C as o, a as r, D as s, E as i, M as l, b as D, N as C } from "../EventListDialog-CSxz4nmr.js";
2
2
  export {
3
3
  t as ActivityCreateDialog,
4
4
  o as ColorSelectForm,
@@ -1,4 +1,4 @@
1
- "use strict";var De=Object.defineProperty;var Ce=i=>{throw TypeError(i)};var Ie=(i,t,s)=>t in i?De(i,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):i[t]=s;var ge=(i,t,s)=>Ie(i,typeof t!="symbol"?t+"":t,s),Ve=(i,t,s)=>t.has(i)||Ce("Cannot "+s);var B=(i,t,s)=>(Ve(i,t,"read from private field"),s?s.call(i):t.get(i)),I=(i,t,s)=>t.has(i)?Ce("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(i):t.set(i,s),A=(i,t,s,l)=>(Ve(i,t,"write to private field"),l?l.call(i,s):t.set(i,s),s);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("../UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B98GsSQS.cjs"),e=require("vue"),D=require("../CustomIcon-Bop2mEnu.cjs"),Pe=require("../timeFilters-CJFxfjqN.cjs");require("single-spa");const Ee=require("../OutputDialog-Dft9Xm4R.cjs"),te=require("../format-B22VpiOS.cjs"),Ue=require("../index-DcL65Mqb.cjs"),ve=require("../TopBar-vznpQjGN.cjs"),ze=require("../CriticalCmdDialog-Ct5WeIW_.cjs"),we=require("../Openc3Screen-B4X70CVP.cjs"),Fe=require("../fileIcon-BduOQcTc.cjs"),Ae=require("../SimpleTextDialog-CSsm9IoB.cjs"),Le=require("../EventListDialog-COOwwkxk.cjs"),He=require("../ScriptChooser-CHkObjcT.cjs"),qe={components:{OutputDialog:Ee.OutputDialog},mixins:[Pe.TimeFilters],props:{tabId:Number,curTab:Number,connectInNewTab:Boolean},data(){return{api:null,timeZone:"local",activeTab:"completed",downloadScript:null,refreshTimer:null,runningSearch:"",runningScripts:[],runningTotal:0,runningLoading:!1,runningPage:1,runningItemsPerPage:10,runningHeaders:[{title:"Connect",key:"connect",sortable:!1,filterable:!1},{title:"Id",key:"name"},{title:"User",key:"user_display"},{title:"Filename",key:"filename"},{title:"Start Time",key:"start_time_formatted"},{title:"Duration",key:"duration"},{title:"State",key:"state"},{title:"Stop",key:"stop",sortable:!1,filterable:!1}],completedSearch:"",completedScripts:[],completedTotal:0,completedLoading:!1,completedPage:1,completedItemsPerPage:10,completedHeaders:[{title:"Id",key:"name"},{title:"User",key:"user_display"},{title:"Filename",key:"filename"},{title:"Start Time",key:"start_time_formatted"},{title:"Duration",key:"duration"},{title:"State",key:"state"},{title:"Log",key:"log",sortable:!1,filterable:!1},{title:"Report",key:"report",sortable:!1,filterable:!1}],showDialog:!1,dialogName:"",dialogContent:"",dialogFilename:""}},watch:{activeTab(i){i==="running"?this.getRunningScripts():i==="completed"&&this.getCompletedScripts()}},created(){this.api=new C.pi,this.api.get_setting("time_zone").then(i=>{i&&(this.timeZone=i)}).catch(i=>{}),this.getRunningScripts(),this.getCompletedScripts(),this.refreshTimer=setInterval(()=>{this.activeTab==="running"&&this.getRunningScripts()},5e3)},beforeUnmount(){this.refreshTimer&&clearInterval(this.refreshTimer)},methods:{getRunningScripts:function(){this.runningLoading=!0;const i=(this.runningPage-1)*this.runningItemsPerPage;C.li.get(`/script-api/running-script?scope=DEFAULT&offset=${i}&limit=${this.runningItemsPerPage}`).then(t=>{const s=t.data.items||[],l=new Date;s.forEach(o=>{if(o.user_display=`${o.user_full_name} (${o.username})`,o.start_time){const n=new Date(o.start_time),a=l-n;if(o.start_time_formatted=this.formatDateTimeHMS(n,this.timeZone),a<0)o.duration="N/A";else if(a<1e3)o.duration="< 1s";else if(a<6e4)o.duration=`${Math.round(a/1e3)}s`;else if(a<36e5){const p=Math.floor(a/6e4),d=Math.round(a%6e4/1e3);o.duration=`${p}m ${d}s`}else{const p=Math.floor(a/36e5),d=Math.floor(a%36e5/6e4),f=Math.round(a%6e4/1e3);o.duration=`${p}h ${d}m ${f}s`}}else o.duration="N/A"}),this.runningScripts=s,this.runningTotal=t.data.total||s.length,this.runningLoading=!1}).catch(t=>{this.runningLoading=!1,this.$notify.caution({title:"Error Loading Running Scripts",body:t.message})})},updateRunningPage:function(i){this.runningPage=i,this.getRunningScripts()},updateRunningItemsPerPage:function(i){this.runningItemsPerPage=i,this.runningPage=1,this.getRunningScripts()},getCompletedScripts:function(){this.completedLoading=!0;const i=(this.completedPage-1)*this.completedItemsPerPage;C.li.get(`/script-api/completed-scripts?scope=DEFAULT&offset=${i}&limit=${this.completedItemsPerPage}`).then(t=>{const s=t.data.items||[];s.forEach(l=>{if(l.user_display=`${l.user_full_name} (${l.username})`,l.start_time&&l.end_time){const o=new Date(l.start_time),a=new Date(l.end_time)-o;if(l.start_time_formatted=this.formatDateTimeHMS(o,this.timeZone),a<0)l.duration="N/A";else if(a<1e3)l.duration="< 1s";else if(a<6e4)l.duration=`${Math.round(a/1e3)}s`;else if(a<36e5){const p=Math.floor(a/6e4),d=Math.round(a%6e4/1e3);l.duration=`${p}m ${d}s`}else{const p=Math.floor(a/36e5),d=Math.floor(a%36e5/6e4),f=Math.round(a%6e4/1e3);l.duration=`${p}h ${d}m ${f}s`}}else l.duration="N/A"}),this.completedScripts=s,this.completedTotal=t.data.total||s.length,this.completedLoading=!1}).catch(t=>{this.completedLoading=!1,this.$notify.caution({title:"Error Loading Completed Scripts",body:t.message})})},updateCompletedPage:function(i){this.completedPage=i,this.getCompletedScripts()},updateCompletedItemsPerPage:function(i){this.completedItemsPerPage=i,this.completedPage=1,this.getCompletedScripts()},showScript:function(i){this.dialogContent=JSON.stringify(i,null,2),this.dialogName="Script: "+i.name,this.dialogFilename="",this.showDialog=!0},connectScript:function(i){this.$emit("disconnect");const t={name:"ScriptRunner",params:{id:i.name}};if(this.connectInNewTab){let{href:s}=this.$router.resolve(t);window.open(s,"_blank")}else this.$router.push(t),this.$emit("close")},deleteScript:function(i){this.$dialog.confirm(`Are you sure you want to stop script: ${i.name} ${i.filename}?
1
+ "use strict";var De=Object.defineProperty;var Ce=i=>{throw TypeError(i)};var Ie=(i,t,s)=>t in i?De(i,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):i[t]=s;var ge=(i,t,s)=>Ie(i,typeof t!="symbol"?t+"":t,s),Ve=(i,t,s)=>t.has(i)||Ce("Cannot "+s);var B=(i,t,s)=>(Ve(i,t,"read from private field"),s?s.call(i):t.get(i)),I=(i,t,s)=>t.has(i)?Ce("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(i):t.set(i,s),A=(i,t,s,l)=>(Ve(i,t,"write to private field"),l?l.call(i,s):t.set(i,s),s);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("../UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-CHXJm9wA.cjs"),e=require("vue"),D=require("../CustomIcon-Bop2mEnu.cjs"),Pe=require("../timeFilters-CJFxfjqN.cjs");require("single-spa");const Ee=require("../OutputDialog-BUc85qgI.cjs"),te=require("../format-B22VpiOS.cjs"),Ue=require("../index-DcL65Mqb.cjs"),ve=require("../TopBar-CkCLoFp7.cjs"),ze=require("../CriticalCmdDialog-p0ZMNHpv.cjs"),we=require("../Openc3Screen-DERmiz3g.cjs"),Fe=require("../fileIcon-BduOQcTc.cjs"),Ae=require("../SimpleTextDialog-sOMrzIs7.cjs"),Le=require("../EventListDialog-C7RuZnvD.cjs"),He=require("../ScriptChooser-CPzgZtTN.cjs"),qe={components:{OutputDialog:Ee.OutputDialog},mixins:[Pe.TimeFilters],props:{tabId:Number,curTab:Number,connectInNewTab:Boolean},data(){return{api:null,timeZone:"local",activeTab:"completed",downloadScript:null,refreshTimer:null,runningSearch:"",runningScripts:[],runningTotal:0,runningLoading:!1,runningPage:1,runningItemsPerPage:10,runningHeaders:[{title:"Connect",key:"connect",sortable:!1,filterable:!1},{title:"Id",key:"name"},{title:"User",key:"user_display"},{title:"Filename",key:"filename"},{title:"Start Time",key:"start_time_formatted"},{title:"Duration",key:"duration"},{title:"State",key:"state"},{title:"Stop",key:"stop",sortable:!1,filterable:!1}],completedSearch:"",completedScripts:[],completedTotal:0,completedLoading:!1,completedPage:1,completedItemsPerPage:10,completedHeaders:[{title:"Id",key:"name"},{title:"User",key:"user_display"},{title:"Filename",key:"filename"},{title:"Start Time",key:"start_time_formatted"},{title:"Duration",key:"duration"},{title:"State",key:"state"},{title:"Log",key:"log",sortable:!1,filterable:!1},{title:"Report",key:"report",sortable:!1,filterable:!1}],showDialog:!1,dialogName:"",dialogContent:"",dialogFilename:""}},watch:{activeTab(i){i==="running"?this.getRunningScripts():i==="completed"&&this.getCompletedScripts()}},created(){this.api=new C.pi,this.api.get_setting("time_zone").then(i=>{i&&(this.timeZone=i)}).catch(i=>{}),this.getRunningScripts(),this.getCompletedScripts(),this.refreshTimer=setInterval(()=>{this.activeTab==="running"&&this.getRunningScripts()},5e3)},beforeUnmount(){this.refreshTimer&&clearInterval(this.refreshTimer)},methods:{getRunningScripts:function(){this.runningLoading=!0;const i=(this.runningPage-1)*this.runningItemsPerPage;C.li.get(`/script-api/running-script?scope=DEFAULT&offset=${i}&limit=${this.runningItemsPerPage}`).then(t=>{const s=t.data.items||[],l=new Date;s.forEach(o=>{if(o.user_display=`${o.user_full_name} (${o.username})`,o.start_time){const n=new Date(o.start_time),a=l-n;if(o.start_time_formatted=this.formatDateTimeHMS(n,this.timeZone),a<0)o.duration="N/A";else if(a<1e3)o.duration="< 1s";else if(a<6e4)o.duration=`${Math.round(a/1e3)}s`;else if(a<36e5){const p=Math.floor(a/6e4),d=Math.round(a%6e4/1e3);o.duration=`${p}m ${d}s`}else{const p=Math.floor(a/36e5),d=Math.floor(a%36e5/6e4),f=Math.round(a%6e4/1e3);o.duration=`${p}h ${d}m ${f}s`}}else o.duration="N/A"}),this.runningScripts=s,this.runningTotal=t.data.total||s.length,this.runningLoading=!1}).catch(t=>{this.runningLoading=!1,this.$notify.caution({title:"Error Loading Running Scripts",body:t.message})})},updateRunningPage:function(i){this.runningPage=i,this.getRunningScripts()},updateRunningItemsPerPage:function(i){this.runningItemsPerPage=i,this.runningPage=1,this.getRunningScripts()},getCompletedScripts:function(){this.completedLoading=!0;const i=(this.completedPage-1)*this.completedItemsPerPage;C.li.get(`/script-api/completed-scripts?scope=DEFAULT&offset=${i}&limit=${this.completedItemsPerPage}`).then(t=>{const s=t.data.items||[];s.forEach(l=>{if(l.user_display=`${l.user_full_name} (${l.username})`,l.start_time&&l.end_time){const o=new Date(l.start_time),a=new Date(l.end_time)-o;if(l.start_time_formatted=this.formatDateTimeHMS(o,this.timeZone),a<0)l.duration="N/A";else if(a<1e3)l.duration="< 1s";else if(a<6e4)l.duration=`${Math.round(a/1e3)}s`;else if(a<36e5){const p=Math.floor(a/6e4),d=Math.round(a%6e4/1e3);l.duration=`${p}m ${d}s`}else{const p=Math.floor(a/36e5),d=Math.floor(a%36e5/6e4),f=Math.round(a%6e4/1e3);l.duration=`${p}h ${d}m ${f}s`}}else l.duration="N/A"}),this.completedScripts=s,this.completedTotal=t.data.total||s.length,this.completedLoading=!1}).catch(t=>{this.completedLoading=!1,this.$notify.caution({title:"Error Loading Completed Scripts",body:t.message})})},updateCompletedPage:function(i){this.completedPage=i,this.getCompletedScripts()},updateCompletedItemsPerPage:function(i){this.completedItemsPerPage=i,this.completedPage=1,this.getCompletedScripts()},showScript:function(i){this.dialogContent=JSON.stringify(i,null,2),this.dialogName="Script: "+i.name,this.dialogFilename="",this.showDialog=!0},connectScript:function(i){this.$emit("disconnect");const t={name:"ScriptRunner",params:{id:i.name}};if(this.connectInNewTab){let{href:s}=this.$router.resolve(t);window.open(s,"_blank")}else this.$router.push(t),this.$emit("close")},deleteScript:function(i){this.$dialog.confirm(`Are you sure you want to stop script: ${i.name} ${i.filename}?
2
2
  `,{okText:"Stop",cancelText:"Cancel"}).then(t=>C.li.post(`/script-api/running-script/${i.name}/delete`)).then(t=>{this.$notify.normal({body:`Stopped script: ${i.name} ${i.filename}`}),this.getRunningScripts()}).catch(t=>{t!==!0&&this.$notify.caution({body:`Failed to stop script: ${i.name} ${i.filename}`})})},viewScriptLog:function(i,t){let s=null;t==="report"?(this.dialogName="Report",s=i.report):(this.dialogName="Log",s=i.log),C.li.get(`/openc3-api/storage/download_file/${encodeURIComponent(s)}?bucket=OPENC3_LOGS_BUCKET`).then(l=>{const o=s.split("/");this.dialogFilename=o[o.length-1],this.dialogContent=window.atob(l.data.contents),this.showDialog=!0})},downloadScriptLog:function(i,t){let s=null;t==="report"?(this.dialogName="Report",s=i.report):(this.dialogName="Log",s=i.log),this.downloadScript=i,C.li.get(`/openc3-api/storage/download/${encodeURIComponent(s)}?bucket=OPENC3_LOGS_BUCKET`).then(l=>{const o=s.split("/"),n=o[o.length-1],a=document.createElement("a");a.href=l.data.url,a.setAttribute("download",n),a.click(),this.downloadScript=null}).catch(()=>{this.$notify.caution({title:`Unable to download log ${s}`,body:`You may be able to download this log manually from the 'logs' bucket at ${s}`})})}}},Ge={key:0},je={key:1};function Ke(i,t,s,l,o,n){const a=e.resolveComponent("v-tab"),p=e.resolveComponent("v-tabs"),d=e.resolveComponent("v-spacer"),f=e.resolveComponent("v-btn"),w=e.resolveComponent("v-text-field"),_=e.resolveComponent("v-row"),v=e.resolveComponent("v-card-title"),x=e.resolveComponent("v-icon"),b=e.resolveComponent("v-data-table-server"),V=e.resolveComponent("v-window-item"),g=e.resolveComponent("v-window"),S=e.resolveComponent("v-card"),M=e.resolveComponent("output-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(S,{flat:"",class:"tab-card"},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:o.activeTab,"onUpdate:modelValue":t[0]||(t[0]=y=>o.activeTab=y),"bg-color":"var(--color-background-base-default)"},{default:e.withCtx(()=>[e.createVNode(a,{value:"running"},{default:e.withCtx(()=>t[6]||(t[6]=[e.createTextVNode("Running Scripts")])),_:1}),e.createVNode(a,{value:"completed"},{default:e.withCtx(()=>t[7]||(t[7]=[e.createTextVNode("Completed Scripts")])),_:1})]),_:1},8,["modelValue"]),e.createVNode(g,{modelValue:o.activeTab,"onUpdate:modelValue":t[3]||(t[3]=y=>o.activeTab=y)},{default:e.withCtx(()=>[e.createVNode(V,{value:"running"},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(_,{dense:""},{default:e.withCtx(()=>[e.createVNode(d),e.createVNode(f,{class:"mr-3",color:"primary",onClick:n.getRunningScripts},{default:e.withCtx(()=>t[8]||(t[8]=[e.createTextVNode("Refresh")])),_:1},8,["onClick"]),e.createVNode(w,{modelValue:o.runningSearch,"onUpdate:modelValue":t[1]||(t[1]=y=>o.runningSearch=y),class:"pt-0 search",label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",variant:"outlined",density:"compact","single-line":"","hide-details":"","data-test":"running-search",style:{"max-width":"300px"}},null,8,["modelValue"])]),_:1})]),_:1}),e.createVNode(b,{headers:o.runningHeaders,items:o.runningScripts,"items-length":o.runningTotal,loading:o.runningLoading,search:o.runningSearch,density:"compact","data-test":"running-scripts","items-per-page":o.runningItemsPerPage,page:o.runningPage,"items-per-page-options":[10,25,50],class:"script-table","onUpdate:page":n.updateRunningPage,"onUpdate:itemsPerPage":n.updateRunningItemsPerPage},{"item.name":e.withCtx(({item:y})=>[e.createVNode(f,{color:"primary",density:"comfortable",onClick:E=>n.showScript(y)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y.name),1)]),_:2},1032,["onClick"])]),"item.connect":e.withCtx(({item:y})=>[e.createVNode(f,{color:"primary",onClick:E=>n.connectScript(y)},{default:e.withCtx(()=>[t[10]||(t[10]=e.createElementVNode("span",null,"Connect",-1)),e.withDirectives(e.createVNode(x,{end:""},{default:e.withCtx(()=>t[9]||(t[9]=[e.createTextVNode(" mdi-open-in-new ")])),_:1},512),[[e.vShow,s.connectInNewTab]])]),_:2},1032,["onClick"])]),"item.stop":e.withCtx(({item:y})=>[e.createVNode(f,{color:"primary",onClick:E=>n.deleteScript(y)},{default:e.withCtx(()=>[t[12]||(t[12]=e.createElementVNode("span",null,"Stop",-1)),e.createVNode(x,{end:""},{default:e.withCtx(()=>t[11]||(t[11]=[e.createTextVNode(" mdi-close-circle-outline ")])),_:1})]),_:2},1032,["onClick"])]),_:1},8,["headers","items","items-length","loading","search","items-per-page","page","onUpdate:page","onUpdate:itemsPerPage"])]),_:1}),e.createVNode(V,{value:"completed"},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(_,{dense:""},{default:e.withCtx(()=>[e.createVNode(d),e.createVNode(f,{class:"mr-3",color:"primary",onClick:n.getCompletedScripts},{default:e.withCtx(()=>t[13]||(t[13]=[e.createTextVNode("Refresh")])),_:1},8,["onClick"]),e.createVNode(w,{modelValue:o.completedSearch,"onUpdate:modelValue":t[2]||(t[2]=y=>o.completedSearch=y),class:"pt-0 search",label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",variant:"outlined",density:"compact","single-line":"","hide-details":"",style:{"max-width":"300px"}},null,8,["modelValue"])]),_:1})]),_:1}),e.createVNode(b,{headers:o.completedHeaders,items:o.completedScripts,"items-length":o.completedTotal,loading:o.completedLoading,search:o.completedSearch,density:"compact","data-test":"completed-scripts","items-per-page":o.completedItemsPerPage,page:o.completedPage,"items-per-page-options":[10,25,50],class:"script-table","onUpdate:page":n.updateCompletedPage,"onUpdate:itemsPerPage":n.updateCompletedItemsPerPage},{"item.name":e.withCtx(({item:y})=>[e.createVNode(f,{color:"primary",density:"comfortable",onClick:E=>n.showScript(y)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(y.name),1)]),_:2},1032,["onClick"])]),"item.log":e.withCtx(({item:y})=>[e.createVNode(f,{color:"primary",density:"comfortable",icon:"mdi-eye",onClick:E=>n.viewScriptLog(y,"log")},null,8,["onClick"]),e.createVNode(f,{color:"primary",density:"comfortable",icon:"mdi-file-download-outline",disabled:o.downloadScript,loading:o.downloadScript&&o.downloadScript.name===y.name,onClick:E=>n.downloadScriptLog(y,"log")},null,8,["disabled","loading","onClick"])]),"item.report":e.withCtx(({item:y})=>[y.report?(e.openBlock(),e.createElementBlock("div",je,[e.createVNode(f,{color:"primary",density:"comfortable",icon:"mdi-eye",onClick:E=>n.viewScriptLog(y,"report")},null,8,["onClick"]),e.createVNode(f,{color:"primary",density:"comfortable",icon:"mdi-file-download-outline",disabled:o.downloadScript,loading:o.downloadScript&&o.downloadScript.name===y.name,onClick:E=>n.downloadScriptLog(y,"report")},null,8,["disabled","loading","onClick"])])):(e.openBlock(),e.createElementBlock("div",Ge,t[14]||(t[14]=[e.createElementVNode("span",null,"N/A",-1)])))]),_:1},8,["headers","items","items-length","loading","search","items-per-page","page","onUpdate:page","onUpdate:itemsPerPage"])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o.showDialog?(e.openBlock(),e.createBlock(M,{key:0,modelValue:o.showDialog,"onUpdate:modelValue":t[4]||(t[4]=y=>o.showDialog=y),content:o.dialogContent,type:"Script",name:o.dialogName,filename:o.dialogFilename,onSubmit:t[5]||(t[5]=y=>o.showDialog=!1)},null,8,["modelValue","content","name","filename"])):e.createCommentVNode("",!0)])}const Te=D._export_sfc(qe,[["render",Ke]]),We={props:{modelValue:{type:Array,required:!0}},data(){return{search:"",headers:[{title:"Message",value:"message",sortable:!1}],messageOrderOptions:["Newest on Top","Newest on Bottom"],messageOrder:"Newest on Top"}},computed:{messages:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}}},watch:{messageOrder:function(i,t){this.$emit("sort",i)}},methods:{messageClass(i){return i.match(/(CHECK|WAIT): .*(success|was within range.*) with value/)?"openc3-green":i.match(/(CHECK|WAIT): .*(failed|failed to be within range.*) with value/)?"openc3-red":""},downloadLog(){const i=this.messages.map(l=>l.message).join(`
3
3
  `),t=new Blob([i],{type:"text/plain"}),s=document.createElement("a");s.href=URL.createObjectURL(t),s.setAttribute("download",te.format(Date.now(),"yyyy_MM_dd_HH_mm_ss")+"_sr_message_log.txt"),s.click()},clearLog:function(){this.$dialog.confirm("Are you sure you want to clear the log?",{okText:"Clear",cancelText:"Cancel"}).then(i=>{this.messages=[]}).catch(function(i){})}}};function Je(i,t,s,l,o,n){const a=e.resolveComponent("v-btn"),p=e.resolveComponent("v-spacer"),d=e.resolveComponent("v-select"),f=e.resolveComponent("v-text-field"),w=e.resolveComponent("v-row"),_=e.resolveComponent("v-card-title"),v=e.resolveComponent("v-data-table"),x=e.resolveComponent("v-card");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(x,null,{default:e.withCtx(()=>[e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(w,{class:"pt-2"},{default:e.withCtx(()=>[e.createVNode(a,{class:"mx-2",icon:"mdi-download",variant:"text","data-test":"download-log","aria-label":"Download Log",onClick:n.downloadLog},null,8,["onClick"]),t[2]||(t[2]=e.createTextVNode(" Script Messages ")),e.createVNode(p),e.createVNode(d,{modelValue:o.messageOrder,"onUpdate:modelValue":t[0]||(t[0]=b=>o.messageOrder=b),density:"compact","hide-details":"",variant:"outlined",items:o.messageOrderOptions,class:"mr-2",style:{"max-width":"200px"},"data-test":"message-order"},null,8,["modelValue","items"]),e.createVNode(p),e.createVNode(f,{modelValue:o.search,"onUpdate:modelValue":t[1]||(t[1]=b=>o.search=b),label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",variant:"outlined",density:"compact","single-line":"","hide-details":"",class:"search","data-test":"search-messages"},null,8,["modelValue"]),e.createVNode(a,{class:"mx-2",icon:"mdi-delete-sweep",variant:"text","data-test":"clear-log","aria-label":"Clear Log",onClick:n.clearLog},null,8,["onClick"])]),_:1})]),_:1}),e.createVNode(v,{id:"script-log-messages",style:{overflow:"auto"},headers:o.headers,items:n.messages,search:o.search,"items-per-page":-1,"hide-default-footer":"",density:"compact","data-test":"output-messages"},{"item.message":e.withCtx(({item:b})=>[e.createElementVNode("div",{class:e.normalizeClass(n.messageClass(b.message))},e.toDisplayString(b.message),3)]),_:1},8,["headers","items","search"])]),_:1})])}const Be=D._export_sfc(We,[["render",Je]]),Ye={__name:"splitpanes",props:{horizontal:{type:Boolean,default:!1},pushOtherPanes:{type:Boolean,default:!0},maximizePanes:{type:Boolean,default:!0},rtl:{type:Boolean,default:!1},firstSplitter:{type:Boolean,default:!1}},emits:["ready","resize","resized","pane-click","pane-maximize","pane-add","pane-remove","splitter-click","splitter-dblclick"],setup(i,{emit:t}){const s=t,l=i,o=e.useSlots(),n=e.ref([]),a=e.computed(()=>n.value.reduce((r,c)=>(r[~~c.id]=c)&&r,{})),p=e.computed(()=>n.value.length),d=e.ref(null),f=e.ref(!1),w=e.ref({mouseDown:!1,dragging:!1,activeSplitter:null,cursorOffset:0}),_=e.ref({splitter:null,timeoutId:null}),v=e.computed(()=>({[`splitpanes splitpanes--${l.horizontal?"horizontal":"vertical"}`]:!0,"splitpanes--dragging":w.value.dragging})),x=()=>{document.addEventListener("mousemove",g,{passive:!1}),document.addEventListener("mouseup",S),"ontouchstart"in window&&(document.addEventListener("touchmove",g,{passive:!1}),document.addEventListener("touchend",S))},b=()=>{document.removeEventListener("mousemove",g,{passive:!1}),document.removeEventListener("mouseup",S),"ontouchstart"in window&&(document.removeEventListener("touchmove",g,{passive:!1}),document.removeEventListener("touchend",S))},V=(r,c)=>{const h=r.target.closest(".splitpanes__splitter");if(h){const{left:u,top:m}=h.getBoundingClientRect(),{clientX:k,clientY:N}="ontouchstart"in window&&r.touches?r.touches[0]:r;w.value.cursorOffset=l.horizontal?N-m:k-u}x(),w.value.mouseDown=!0,w.value.activeSplitter=c},g=r=>{w.value.mouseDown&&(r.preventDefault(),w.value.dragging=!0,requestAnimationFrame(()=>{re(se(r)),R("resize",{event:r},!0)}))},S=r=>{w.value.dragging&&R("resized",{event:r},!0),w.value.mouseDown=!1,w.value.activeSplitter=null,setTimeout(()=>{w.value.dragging=!1,b()},100)},M=(r,c)=>{"ontouchstart"in window&&(r.preventDefault(),_.value.splitter===c?(clearTimeout(_.value.timeoutId),_.value.timeoutId=null,y(r,c),_.value.splitter=null):(_.value.splitter=c,_.value.timeoutId=setTimeout(()=>_.value.splitter=null,500))),w.value.dragging||R("splitter-click",{event:r,index:c},!0)},y=(r,c)=>{if(R("splitter-dblclick",{event:r,index:c},!0),l.maximizePanes){let h=0;n.value=n.value.map((u,m)=>(u.size=m===c?u.max:u.min,m!==c&&(h+=u.min),u)),n.value[c].size-=h,R("pane-maximize",{event:r,index:c,pane:n.value[c]}),R("resized",{event:r,index:c},!0)}},E=(r,c)=>{R("pane-click",{event:r,index:a.value[c].index,pane:a.value[c]})},se=r=>{const c=d.value.getBoundingClientRect(),{clientX:h,clientY:u}="ontouchstart"in window&&r.touches?r.touches[0]:r;return{x:h-(l.horizontal?0:w.value.cursorOffset)-c.left,y:u-(l.horizontal?w.value.cursorOffset:0)-c.top}},ne=r=>{r=r[l.horizontal?"y":"x"];const c=d.value[l.horizontal?"clientHeight":"clientWidth"];return l.rtl&&!l.horizontal&&(r=c-r),r*100/c},re=r=>{const c=w.value.activeSplitter;let h={prevPanesSize:X(c),nextPanesSize:U(c),prevReachedMinPanes:0,nextReachedMinPanes:0};const u=0+(l.pushOtherPanes?0:h.prevPanesSize),m=100-(l.pushOtherPanes?0:h.nextPanesSize),k=Math.max(Math.min(ne(r),m),u);let N=[c,c+1],T=n.value[N[0]]||null,O=n.value[N[1]]||null;const ke=T.max<100&&k>=T.max+h.prevPanesSize,Oe=O.max<100&&k<=100-(O.max+U(c+1));if(ke||Oe){ke?(T.size=T.max,O.size=Math.max(100-T.max-h.prevPanesSize-h.nextPanesSize,0)):(T.size=Math.max(100-O.max-h.prevPanesSize-U(c+1),0),O.size=O.max);return}if(l.pushOtherPanes){const xe=Z(h,k);if(!xe)return;({sums:h,panesToResize:N}=xe),T=n.value[N[0]]||null,O=n.value[N[1]]||null}T!==null&&(T.size=Math.min(Math.max(k-h.prevPanesSize-h.prevReachedMinPanes,T.min),T.max)),O!==null&&(O.size=Math.min(Math.max(100-k-h.nextPanesSize-h.nextReachedMinPanes,O.min),O.max))},Z=(r,c)=>{const h=w.value.activeSplitter,u=[h,h+1];return c<r.prevPanesSize+n.value[u[0]].min&&(u[0]=Q(h).index,r.prevReachedMinPanes=0,u[0]<h&&n.value.forEach((m,k)=>{k>u[0]&&k<=h&&(m.size=m.min,r.prevReachedMinPanes+=m.min)}),r.prevPanesSize=X(u[0]),u[0]===void 0)?(r.prevReachedMinPanes=0,n.value[0].size=n.value[0].min,n.value.forEach((m,k)=>{k>0&&k<=h&&(m.size=m.min,r.prevReachedMinPanes+=m.min)}),n.value[u[1]].size=100-r.prevReachedMinPanes-n.value[0].min-r.prevPanesSize-r.nextPanesSize,null):c>100-r.nextPanesSize-n.value[u[1]].min&&(u[1]=$(h).index,r.nextReachedMinPanes=0,u[1]>h+1&&n.value.forEach((m,k)=>{k>h&&k<u[1]&&(m.size=m.min,r.nextReachedMinPanes+=m.min)}),r.nextPanesSize=U(u[1]-1),u[1]===void 0)?(r.nextReachedMinPanes=0,n.value.forEach((m,k)=>{k<p.value-1&&k>=h+1&&(m.size=m.min,r.nextReachedMinPanes+=m.min)}),n.value[u[0]].size=100-r.prevPanesSize-U(u[0]-1),null):{sums:r,panesToResize:u}},X=r=>n.value.reduce((c,h,u)=>c+(u<r?h.size:0),0),U=r=>n.value.reduce((c,h,u)=>c+(u>r+1?h.size:0),0),Q=r=>[...n.value].reverse().find(c=>c.index<r&&c.size>c.min)||{},$=r=>n.value.find(c=>c.index>r+1&&c.size>c.min)||{},le=()=>{var r;const c=Array.from(((r=d.value)==null?void 0:r.children)||[]);for(const h of c){const u=h.classList.contains("splitpanes__pane"),m=h.classList.contains("splitpanes__splitter");!u&&!m&&(h.remove(),console.warn("Splitpanes: Only <pane> elements are allowed at the root of <splitpanes>. One of your DOM nodes was removed."))}},ee=(r,c,h=!1)=>{const u=r-1,m=document.createElement("div");m.classList.add("splitpanes__splitter"),h||(m.onmousedown=k=>V(k,u),typeof window<"u"&&"ontouchstart"in window&&(m.ontouchstart=k=>V(k,u)),m.onclick=k=>M(k,u+1)),m.ondblclick=k=>y(k,u+1),c.parentNode.insertBefore(m,c)},ae=r=>{r.onmousedown=void 0,r.onclick=void 0,r.ondblclick=void 0,r.remove()},F=()=>{var r;const c=Array.from(((r=d.value)==null?void 0:r.children)||[]);for(const u of c)u.className.includes("splitpanes__splitter")&&ae(u);let h=0;for(const u of c)u.className.includes("splitpanes__pane")&&(!h&&l.firstSplitter?ee(h,u,!0):h&&ee(h,u),h++)},de=({uid:r,...c})=>{const h=a.value[r];for(const[u,m]of Object.entries(c))h[u]=m},ce=r=>{var c;let h=-1;Array.from(((c=d.value)==null?void 0:c.children)||[]).some(u=>(u.className.includes("splitpanes__pane")&&h++,u.isSameNode(r.el))),n.value.splice(h,0,{...r,index:h}),n.value.forEach((u,m)=>u.index=m),f.value&&e.nextTick(()=>{F(),L({addedPane:n.value[h]}),R("pane-add",{pane:n.value[h]})})},ue=r=>{const c=n.value.findIndex(u=>u.id===r);n.value[c].el=null;const h=n.value.splice(c,1)[0];n.value.forEach((u,m)=>u.index=m),e.nextTick(()=>{F(),R("pane-remove",{pane:h}),L({removedPane:{...h}})})},L=(r={})=>{!r.addedPane&&!r.removedPane?me():n.value.some(c=>c.givenSize!==null||c.min||c.max<100)?he(r):pe(),f.value&&R("resized")},pe=()=>{const r=100/p.value;let c=0;const h=[],u=[];for(const m of n.value)m.size=Math.max(Math.min(r,m.max),m.min),c-=m.size,m.size>=m.max&&h.push(m.id),m.size<=m.min&&u.push(m.id);c>.1&&H(c,h,u)},me=()=>{let r=100;const c=[],h=[];let u=0;for(const k of n.value)r-=k.size,k.givenSize!==null&&u++,k.size>=k.max&&c.push(k.id),k.size<=k.min&&h.push(k.id);let m=100;if(r>.1){for(const k of n.value)k.givenSize===null&&(k.size=Math.max(Math.min(r/(p.value-u),k.max),k.min)),m-=k.size;m>.1&&H(m,c,h)}},he=({addedPane:r,removedPane:c}={})=>{let h=100/p.value,u=0;const m=[],k=[];((r==null?void 0:r.givenSize)??null)!==null&&(h=(100-r.givenSize)/(p.value-1));for(const N of n.value)u-=N.size,N.size>=N.max&&m.push(N.id),N.size<=N.min&&k.push(N.id);if(!(Math.abs(u)<.1)){for(const N of n.value)(r==null?void 0:r.givenSize)!==null&&(r==null?void 0:r.id)===N.id||(N.size=Math.max(Math.min(h,N.max),N.min)),u-=N.size,N.size>=N.max&&m.push(N.id),N.size<=N.min&&k.push(N.id);u>.1&&H(u,m,k)}},H=(r,c,h)=>{let u;r>0?u=r/(p.value-c.length):u=r/(p.value-h.length),n.value.forEach((m,k)=>{if(r>0&&!c.includes(m.id)){const N=Math.max(Math.min(m.size+u,m.max),m.min),T=N-m.size;r-=T,m.size=N}else if(!h.includes(m.id)){const N=Math.max(Math.min(m.size+u,m.max),m.min),T=N-m.size;r-=T,m.size=N}}),Math.abs(r)>.1&&e.nextTick(()=>{f.value&&console.warn("Splitpanes: Could not resize panes correctly due to their constraints.")})},R=(r,c=void 0,h=!1)=>{const u=(c==null?void 0:c.index)??w.value.activeSplitter??null;s(r,{...c,...u!==null&&{index:u},...h&&u!==null&&{prevPane:n.value[u-(l.firstSplitter?1:0)],nextPane:n.value[u+(l.firstSplitter?0:1)]},panes:n.value.map(m=>({min:m.min,max:m.max,size:m.size}))})};e.watch(()=>l.firstSplitter,()=>F()),e.onMounted(()=>{le(),F(),L(),R("ready"),f.value=!0}),e.onBeforeUnmount(()=>f.value=!1);const fe=()=>{var r;return e.h("div",{ref:d,class:v.value},(r=o.default)==null?void 0:r.call(o))};return e.provide("panes",n),e.provide("indexedPanes",a),e.provide("horizontal",e.computed(()=>l.horizontal)),e.provide("requestUpdate",de),e.provide("onPaneAdd",ce),e.provide("onPaneRemove",ue),e.provide("onPaneClick",E),(r,c)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(fe)))}},Ze={__name:"pane",props:{size:{type:[Number,String]},minSize:{type:[Number,String],default:0},maxSize:{type:[Number,String],default:100}},setup(i){var t;const s=i,l=e.inject("requestUpdate"),o=e.inject("onPaneAdd"),n=e.inject("horizontal"),a=e.inject("onPaneRemove"),p=e.inject("onPaneClick"),d=(t=e.getCurrentInstance())==null?void 0:t.uid,f=e.inject("indexedPanes"),w=e.computed(()=>f.value[d]),_=e.ref(null),v=e.computed(()=>{const g=isNaN(s.size)||s.size===void 0?0:parseFloat(s.size);return Math.max(Math.min(g,b.value),x.value)}),x=e.computed(()=>{const g=parseFloat(s.minSize);return isNaN(g)?0:g}),b=e.computed(()=>{const g=parseFloat(s.maxSize);return isNaN(g)?100:g}),V=e.computed(()=>{var g;return`${n.value?"height":"width"}: ${(g=w.value)==null?void 0:g.size}%`});return e.watch(()=>v.value,g=>l({uid:d,size:g})),e.watch(()=>x.value,g=>l({uid:d,min:g})),e.watch(()=>b.value,g=>l({uid:d,max:g})),e.onMounted(()=>{o({id:d,el:_.value,min:x.value,max:b.value,givenSize:s.size===void 0?null:v.value,size:v.value})}),e.onBeforeUnmount(()=>a(d)),(g,S)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"paneEl",ref:_,class:"splitpanes__pane",onClick:S[0]||(S[0]=M=>e.unref(p)(M,g._.uid)),style:e.normalizeStyle(V.value)},[e.renderSlot(g.$slots,"default")],4))}},Xe={props:{question:{type:String,required:!0},default:{type:String,default:null},password:{type:Boolean,default:!1},answerRequired:{type:Boolean,default:!0},modelValue:Boolean},data(){return{inputValue:"",valid:!1,rules:[i=>!!i||"Required"]}},computed:{show:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}}},created(){this.default&&(this.valid=!0,this.inputValue=this.default),this.answerRequired===!1&&(this.valid=!0,this.rules=[i=>!0])},methods:{submitHandler:function(){this.$emit("response",this.inputValue)},cancelHandler:function(){this.$emit("response","Cancel")}}},Qe={class:"pa-2"},$e={class:"question"};function et(i,t,s,l,o,n){const a=e.resolveComponent("v-spacer"),p=e.resolveComponent("v-toolbar"),d=e.resolveComponent("v-text-field"),f=e.resolveComponent("v-card-text"),w=e.resolveComponent("v-btn"),_=e.resolveComponent("v-card-actions"),v=e.resolveComponent("v-form"),x=e.resolveComponent("v-card"),b=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(b,{modelValue:n.show,"onUpdate:modelValue":t[2]||(t[2]=V=>n.show=V),persistent:"",width:"600"},{default:e.withCtx(()=>[e.createVNode(x,null,{default:e.withCtx(()=>[e.createVNode(v,{modelValue:o.valid,"onUpdate:modelValue":t[1]||(t[1]=V=>o.valid=V),onSubmit:e.withModifiers(n.submitHandler,["prevent"])},{default:e.withCtx(()=>[e.createVNode(p,{height:"24"},{default:e.withCtx(()=>[e.createVNode(a),t[3]||(t[3]=e.createElementVNode("span",null," User Input Required ",-1)),e.createVNode(a)]),_:1}),e.createElementVNode("div",Qe,[e.createVNode(f,null,{default:e.withCtx(()=>[e.createElementVNode("div",$e,e.toDisplayString(s.question),1),e.createVNode(d,{modelValue:o.inputValue,"onUpdate:modelValue":t[0]||(t[0]=V=>o.inputValue=V),autofocus:"","data-test":"ask-value-input",type:s.password?"password":"text",rules:o.rules},null,8,["modelValue","type","rules"])]),_:1})]),e.createVNode(_,{class:"px-2"},{default:e.withCtx(()=>[e.createVNode(a),e.createVNode(w,{variant:"outlined","data-test":"ask-cancel",onClick:n.cancelHandler},{default:e.withCtx(()=>t[4]||(t[4]=[e.createTextVNode(" Cancel ")])),_:1},8,["onClick"]),e.createVNode(w,{variant:"flat",type:"submit","data-test":"ask-ok",disabled:!o.valid,onClick:e.withModifiers(n.submitHandler,["prevent"])},{default:e.withCtx(()=>t[5]||(t[5]=[e.createTextVNode(" Ok ")])),_:1},8,["disabled","onClick"])]),_:1})]),_:1},8,["modelValue","onSubmit"])]),_:1})]),_:1},8,["modelValue"])}const tt=D._export_sfc(Xe,[["render",et],["__scopeId","data-v-ae138b51"]]),it={props:{title:{type:String,required:!0},message:{type:String,default:null},filter:{type:String,default:"*"},multiple:{type:Boolean,default:!1},modelValue:Boolean},data(){return{inputValue:null,valid:null,rules:[i=>this.multiple?i.length!=0||"Required":!!i||"Required"]}},computed:{show:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}}},methods:{submitHandler:function(){Array.isArray(this.inputValue)||(this.inputValue=[this.inputValue]),this.$emit("response",this.inputValue)},cancelHandler:function(){this.$emit("response","Cancel")}}},ot={class:"pa-2"},st={class:"title"},nt=["textContent"];function rt(i,t,s,l,o,n){const a=e.resolveComponent("v-spacer"),p=e.resolveComponent("v-toolbar"),d=e.resolveComponent("v-row"),f=e.resolveComponent("v-file-input"),w=e.resolveComponent("v-card-text"),_=e.resolveComponent("v-btn"),v=e.resolveComponent("v-card-actions"),x=e.resolveComponent("v-form"),b=e.resolveComponent("v-card"),V=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(V,{modelValue:n.show,"onUpdate:modelValue":t[2]||(t[2]=g=>n.show=g),persistent:"",width:"600"},{default:e.withCtx(()=>[e.createVNode(b,null,{default:e.withCtx(()=>[e.createVNode(x,{modelValue:o.valid,"onUpdate:modelValue":t[1]||(t[1]=g=>o.valid=g),onSubmit:e.withModifiers(n.submitHandler,["prevent"])},{default:e.withCtx(()=>[e.createVNode(p,{height:"24"},{default:e.withCtx(()=>[e.createVNode(a),t[3]||(t[3]=e.createElementVNode("span",null," File Dialog ",-1)),e.createVNode(a)]),_:1}),e.createElementVNode("div",ot,[e.createVNode(w,null,{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>[e.createElementVNode("span",st,e.toDisplayString(s.title),1)]),_:1}),s.message?(e.openBlock(),e.createBlock(d,{key:0},{default:e.withCtx(()=>[e.createElementVNode("span",{class:"ma-3",style:{"white-space":"pre-line"},textContent:e.toDisplayString(s.message)},null,8,nt)]),_:1})):e.createCommentVNode("",!0),e.createVNode(d,{class:"my-1"},{default:e.withCtx(()=>[e.createVNode(f,{modelValue:o.inputValue,"onUpdate:modelValue":t[0]||(t[0]=g=>o.inputValue=g),label:"Choose File",rules:o.rules,autofocus:"","data-test":"file-input",accept:s.filter,"small-chips":"",multiple:s.multiple},null,8,["modelValue","rules","accept","multiple"])]),_:1})]),_:1})]),e.createVNode(v,{class:"px-2"},{default:e.withCtx(()=>[e.createVNode(a),e.createVNode(_,{variant:"outlined","data-test":"file-cancel",onClick:n.cancelHandler},{default:e.withCtx(()=>t[4]||(t[4]=[e.createTextVNode(" Cancel ")])),_:1},8,["onClick"]),e.createVNode(_,{variant:"flat",type:"submit","data-test":"file-ok",disabled:!o.valid,onClick:e.withModifiers(n.submitHandler,["prevent"])},{default:e.withCtx(()=>t[5]||(t[5]=[e.createTextVNode(" Ok ")])),_:1},8,["disabled","onClick"])]),_:1})]),_:1},8,["modelValue","onSubmit"])]),_:1})]),_:1},8,["modelValue"])}const lt=D._export_sfc(it,[["render",rt],["__scopeId","data-v-40c2cac1"]]),at={props:{modelValue:{type:Boolean,required:!0},title:{type:String,required:!0},text:{type:String,required:!0},width:{type:String,required:!0}},computed:{show:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}}},methods:{}},dt=["textContent"],ct={class:"pa-2"},ut=["textContent"];function pt(i,t,s,l,o,n){const a=e.resolveComponent("v-spacer"),p=e.resolveComponent("v-toolbar"),d=e.resolveComponent("v-row"),f=e.resolveComponent("v-card-text"),w=e.resolveComponent("v-btn"),_=e.resolveComponent("v-card-actions"),v=e.resolveComponent("v-card"),x=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(x,{modelValue:n.show,"onUpdate:modelValue":t[1]||(t[1]=b=>n.show=b),width:s.width},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(p,{height:"24"},{default:e.withCtx(()=>[e.createVNode(a),e.createElementVNode("span",{style:{"white-space":"pre-line"},textContent:e.toDisplayString(s.title)},null,8,dt),e.createVNode(a)]),_:1}),e.createElementVNode("div",ct,[e.createVNode(f,null,{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.text,(b,V)=>(e.openBlock(),e.createBlock(d,{"no-gutters":"",key:V},{default:e.withCtx(()=>[e.createElementVNode("span",{style:{"white-space":"pre-line"},textContent:e.toDisplayString(b)},null,8,ut)]),_:2},1024))),128))]),_:1})]),e.createVNode(_,{class:"px-2"},{default:e.withCtx(()=>[e.createVNode(a),e.createVNode(w,{variant:"flat",onClick:t[0]||(t[0]=b=>n.show=!n.show)},{default:e.withCtx(()=>t[2]||(t[2]=[e.createTextVNode(" Ok ")])),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue","width"])}const mt=D._export_sfc(at,[["render",pt]]),ht={components:{},props:{modelValue:{type:Boolean,required:!0}},data(){return{api:null,overrides:[],search:"",headers:[{text:"Target",value:"target_name"},{text:"Packet",value:"packet_name"},{text:"Item",value:"item_name"},{text:"Type",value:"value_type"},{text:"Value",value:"value"},{text:"Delete",value:"delete"}]}},computed:{show:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}}},created:function(){this.api=new C.pi,this.getOverrides()},methods:{getOverrides:function(){this.api.get_overrides().then(i=>{this.overrides=i})},clearOverrides:function(){const i=[...new Map(this.overrides.map(t=>[`${t.target_name}__${t.packet_name}__${t.item_name}`,t])).values()];for(let t of i)this.api.normalize_tlm(t.target_name,t.packet_name,t.item_name,"ALL").then(s=>{this.overrides=[]})},deleteOverride:function(i){this.api.normalize_tlm(i.target_name,i.packet_name,i.item_name,i.value_type).then(t=>{let s=this.overrides.indexOf(i);this.overrides.splice(s,1)})}}},ft={class:"pa-2"};function gt(i,t,s,l,o,n){const a=e.resolveComponent("v-spacer"),p=e.resolveComponent("v-toolbar"),d=e.resolveComponent("v-btn"),f=e.resolveComponent("v-text-field"),w=e.resolveComponent("v-row"),_=e.resolveComponent("v-data-table"),v=e.resolveComponent("v-card-text"),x=e.resolveComponent("v-card-actions"),b=e.resolveComponent("v-card"),V=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(V,{modelValue:n.show,"onUpdate:modelValue":t[2]||(t[2]=g=>n.show=g),width:"1000"},{default:e.withCtx(()=>[e.createVNode(b,null,{default:e.withCtx(()=>[e.createVNode(p,{height:"24"},{default:e.withCtx(()=>[e.createVNode(a),t[3]||(t[3]=e.createElementVNode("span",null,"Overrides",-1)),e.createVNode(a)]),_:1}),e.createElementVNode("div",ft,[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(w,{class:"ma-1"},{default:e.withCtx(()=>[e.createVNode(d,{color:"primary","data-test":"overrides-dialog-clear-all",onClick:n.clearOverrides},{default:e.withCtx(()=>t[4]||(t[4]=[e.createTextVNode(" Clear All Overrides ")])),_:1},8,["onClick"]),e.createVNode(a),e.createVNode(f,{modelValue:o.search,"onUpdate:modelValue":t[0]||(t[0]=g=>o.search=g),label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",variant:"outlined",density:"compact","single-line":"","hide-details":""},null,8,["modelValue"])]),_:1}),e.createVNode(_,{headers:o.headers,items:o.overrides,search:o.search,"items-per-page-options":[100],"multi-sort":"",density:"compact"},{"item.delete":e.withCtx(({item:g})=>[e.createVNode(d,{icon:"mdi-delete",variant:"text","aria-label":"Delete Override",onClick:S=>n.deleteOverride(g)},null,8,["onClick"])]),_:1},8,["headers","items","search"])]),_:1})]),e.createVNode(x,{class:"px-2"},{default:e.withCtx(()=>[e.createVNode(a),e.createVNode(d,{variant:"flat","data-test":"overrides-dialog-ok",onClick:t[1]||(t[1]=g=>n.show=!n.show)},{default:e.withCtx(()=>t[5]||(t[5]=[e.createTextVNode(" Ok ")])),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])}const vt=D._export_sfc(ht,[["render",gt]]),wt={props:{title:{type:String,default:"Prompt Dialog"},subtitle:{type:String,default:""},message:{type:String,required:!0},details:{type:String,default:""},buttons:{type:Array,default:()=>[]},layout:{type:String,default:"horizontal"},multiple:{type:Boolean,default:!1,required:!1},modelValue:Boolean},data(){return{selectOkDisabled:!0,selectedItem:null}},computed:{show:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}},layoutClass(){let i="px-2 d-flex align-start";return this.layout==="vertical"?`${i} flex-column`:`${i} flex-row`}},methods:{submitWrapper:function(i){this.selectedItem=i,this.submitHandler()},submitHandler:function(){this.$emit("response",this.selectedItem)},cancelHandler:function(){this.$emit("response","Cancel")}}},_t=["textContent"],bt={class:"pa-2"},kt=["textContent"],xt=["textContent"],Ct={key:0},Vt={key:1};function yt(i,t,s,l,o,n){const a=e.resolveComponent("v-spacer"),p=e.resolveComponent("v-toolbar"),d=e.resolveComponent("v-card-subtitle"),f=e.resolveComponent("v-row"),w=e.resolveComponent("v-card-text"),_=e.resolveComponent("v-select"),v=e.resolveComponent("v-btn"),x=e.resolveComponent("v-card-actions"),b=e.resolveComponent("v-card"),V=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(V,{modelValue:n.show,"onUpdate:modelValue":t[2]||(t[2]=g=>n.show=g),persistent:"",width:"600"},{default:e.withCtx(()=>[e.createVNode(b,null,{default:e.withCtx(()=>[e.createVNode(p,{height:"24"},{default:e.withCtx(()=>[e.createVNode(a),e.createElementVNode("span",{class:"text",textContent:e.toDisplayString(s.title)},null,8,_t),e.createVNode(a)]),_:1}),e.createElementVNode("div",bt,[e.createVNode(w,{class:"text"},{default:e.withCtx(()=>[s.subtitle?(e.openBlock(),e.createBlock(f,{key:0},{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.subtitle),1)]),_:1})]),_:1})):e.createCommentVNode("",!0),e.createVNode(f,{class:"mt-1"},{default:e.withCtx(()=>[e.createElementVNode("span",{textContent:e.toDisplayString(s.message)},null,8,kt)]),_:1}),s.details?(e.openBlock(),e.createBlock(f,{key:1,class:"mt-1"},{default:e.withCtx(()=>[e.createElementVNode("span",{textContent:e.toDisplayString(s.details)},null,8,xt)]),_:1})):e.createCommentVNode("",!0)]),_:1})]),s.layout==="combo"?(e.openBlock(),e.createElementBlock("div",Ct,[e.createVNode(f,{class:"ma-2"},{default:e.withCtx(()=>[e.createVNode(_,{modelValue:o.selectedItem,"onUpdate:modelValue":[t[0]||(t[0]=g=>o.selectedItem=g),t[1]||(t[1]=g=>o.selectOkDisabled=!1)],label:"Select",color:"secondary",class:"ma-1","data-test":"prompt-select",items:s.buttons,multiple:s.multiple===!0},null,8,["modelValue","items","multiple"])]),_:1}),e.createVNode(x,{class:"px-2"},{default:e.withCtx(()=>[e.createVNode(a),e.createVNode(v,{variant:"outlined","data-test":"prompt-cancel",onClick:n.cancelHandler},{default:e.withCtx(()=>t[3]||(t[3]=[e.createTextVNode(" Cancel ")])),_:1},8,["onClick"]),e.createVNode(v,{variant:"flat","data-test":"prompt-ok",disabled:o.selectOkDisabled,onClick:n.submitHandler},{default:e.withCtx(()=>t[4]||(t[4]=[e.createTextVNode(" Ok ")])),_:1},8,["disabled","onClick"])]),_:1})])):(e.openBlock(),e.createElementBlock("div",Vt,[e.createVNode(x,{class:e.normalizeClass(n.layoutClass)},{default:e.withCtx(()=>[e.createVNode(a),e.createVNode(v,{variant:"outlined","data-test":"prompt-cancel",onClick:n.cancelHandler},{default:e.withCtx(()=>t[5]||(t[5]=[e.createTextVNode(" Cancel ")])),_:1},8,["onClick"]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.buttons,(g,S)=>(e.openBlock(),e.createElementBlock("div",{key:S},[e.createVNode(v,{variant:"flat","data-test":`prompt-${g.text}`,onClick:M=>n.submitWrapper(g.value)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(g.text),1)]),_:2},1032,["data-test","onClick"])]))),128))]),_:1},8,["class"])]))]),_:1})]),_:1},8,["modelValue"])}const Nt=D._export_sfc(wt,[["render",yt],["__scopeId","data-v-3c1d359a"]]),St={components:{},props:{modelValue:{type:Boolean,required:!0},text:{type:String,required:!0}},computed:{show:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}}},mounted(){setTimeout(()=>{this.$refs.okButton.$el.focus()})},methods:{downloadResults(){const i=new Blob([this.text],{type:"text/plain"}),t=document.createElement("a");t.href=URL.createObjectURL(i),t.setAttribute("download",te.format(Date.now(),"yyyy_MM_dd_HH_mm_ss")+"_suite_results.txt"),t.click()}}},Et={class:"pa-2"};function Tt(i,t,s,l,o,n){const a=e.resolveComponent("v-spacer"),p=e.resolveComponent("v-toolbar"),d=e.resolveComponent("v-textarea"),f=e.resolveComponent("v-card-text"),w=e.resolveComponent("v-btn"),_=e.resolveComponent("v-card-actions"),v=e.resolveComponent("v-card"),x=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(x,{modelValue:n.show,"onUpdate:modelValue":t[1]||(t[1]=b=>n.show=b),scrollable:"",width:"800"},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(p,{height:"24"},{default:e.withCtx(()=>[e.createVNode(a),t[2]||(t[2]=e.createElementVNode("span",null," Script Results ",-1)),e.createVNode(a)]),_:1}),e.createElementVNode("div",Et,[e.createVNode(f,{style:{width:"100%","max-height":"80vh",overflow:"auto"}},{default:e.withCtx(()=>[e.createVNode(d,{readonly:"","hide-details":"",density:"compact","auto-grow":"","model-value":s.text},null,8,["model-value"])]),_:1})]),e.createVNode(_,{class:"px-2"},{default:e.withCtx(()=>[e.createVNode(a),e.createVNode(w,{variant:"outlined",onClick:n.downloadResults},{default:e.withCtx(()=>t[3]||(t[3]=[e.createTextVNode(" Download ")])),_:1},8,["onClick"]),e.createVNode(w,{ref:"okButton",variant:"flat",onClick:t[0]||(t[0]=b=>n.show=!n.show)},{default:e.withCtx(()=>t[4]||(t[4]=[e.createTextVNode(" Ok ")])),_:1},512)]),_:1})]),_:1})]),_:1},8,["modelValue"])}const Bt=D._export_sfc(St,[["render",Tt]]),Rt={components:{EnvironmentChooser:He.EnvironmentChooser},props:{modelValue:{type:Boolean,required:!0},inputEnvironment:{type:Array,required:!0}},data(){return{selected:[]}},computed:{show:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}}},mounted:function(){this.loadEnvironment()},methods:{loadEnvironment:function(){this.selected=[...this.inputEnvironment]},updateEnvironment:function(){this.$emit("environment",this.selected),this.show=!this.show},cancel:function(){this.show=!this.show}}},Mt={class:"pa-2"};function Ot(i,t,s,l,o,n){const a=e.resolveComponent("v-spacer"),p=e.resolveComponent("v-toolbar"),d=e.resolveComponent("environment-chooser"),f=e.resolveComponent("v-card-text"),w=e.resolveComponent("v-btn"),_=e.resolveComponent("v-card-actions"),v=e.resolveComponent("v-card"),x=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(x,{modelValue:n.show,"onUpdate:modelValue":t[1]||(t[1]=b=>n.show=b),width:"600"},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(p,{height:"24"},{default:e.withCtx(()=>[e.createVNode(a),t[2]||(t[2]=e.createElementVNode("span",null,"Script Environment Variables",-1)),e.createVNode(a)]),_:1}),e.createElementVNode("div",Mt,[e.createVNode(f,null,{default:e.withCtx(()=>[e.createVNode(d,{modelValue:o.selected,"onUpdate:modelValue":t[0]||(t[0]=b=>o.selected=b)},null,8,["modelValue"])]),_:1})]),e.createVNode(_,{class:"px-2"},{default:e.withCtx(()=>[e.createVNode(a),e.createVNode(w,{variant:"outlined","data-test":"environment-dialog-cancel",onClick:n.cancel},{default:e.withCtx(()=>t[3]||(t[3]=[e.createTextVNode(" Cancel ")])),_:1},8,["onClick"]),e.createVNode(w,{variant:"flat","data-test":"environment-dialog-save",disabled:!!i.inputError,onClick:n.updateEnvironment},{default:e.withCtx(()=>t[4]||(t[4]=[e.createTextVNode(" Save ")])),_:1},8,["disabled","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])}const Dt=D._export_sfc(Rt,[["render",Ot]]),It={props:{suiteMap:{type:Object,required:!0},disableButtons:{type:Boolean,required:!0},filename:{type:String,required:!0}},data(){return{suites:[],groups:[],scripts:[],suite:"",group:"",script:"",options:["pauseOnError","manual","continueAfterError"],userInfo:{}}},computed:{checkedManualTooltip(){return this.filename.endsWith(".py")?"Checked sets the RunningScript.manual variable to True":"Checked sets the $manual variable to true"},uncheckedManualTooltip(){return this.filename.endsWith(".py")?"Unchecked sets the RunningScript.manual variable to False":"Unchecked sets the $manual variable to false"},setupSuiteEnabled(){return!!(this.suite&&this.suiteMap[this.suite].setup)},teardownSuiteEnabled(){return!!(this.suite&&this.suiteMap[this.suite].teardown)},setupGroupEnabled(){return!!(this.suite&&this.group&&this.suiteMap[this.suite].groups[this.group].setup)},teardownGroupEnabled(){return!!(this.suite&&this.group&&this.suiteMap[this.suite].groups[this.group].teardown)},scriptNames(){return this.scripts.map(i=>({title:i.replace(/^(script_|test_)/,""),value:i}))}},watch:{suiteMap:{handler:function(i,t){this.updateSuiteMap()},deep:!0}},created(){this.userInfo=JSON.parse(localStorage.script_runner__userinfo),this.initSuites(),this.$emit("loaded")},methods:{updateSuiteMap(){this.suites=Object.keys(this.suiteMap),this.suiteMap[this.suite]==null||this.suiteMap[this.suite].groups[this.group]==null?this.initSuites():(this.groups=Object.keys(this.suiteMap[this.suite].groups),this.scripts=this.suiteMap[this.suite].groups[this.group].scripts)},initSuites(){this.suites=Object.keys(this.suiteMap),this.suiteChanged(this.suites[0])},suiteChanged(i){this.suite=i,this.group="",this.script="",this.groups=Object.keys(this.suiteMap[i].groups),this.groupChanged(this.groups[0])},groupChanged(i){this.group=i,this.script="",this.scripts=this.suiteMap[this.suite].groups[i].scripts,this.scriptChanged(this.scripts[0])},scriptChanged(i){this.script=i}}},Pt={id:"tr-container"};function Ut(i,t,s,l,o,n){const a=e.resolveComponent("v-checkbox"),p=e.resolveComponent("v-tooltip"),d=e.resolveComponent("v-col"),f=e.resolveComponent("v-row"),w=e.resolveComponent("v-select"),_=e.resolveComponent("v-btn");return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",Pt,[e.createVNode(f,{"no-gutters":"",align:"center"},{default:e.withCtx(()=>[e.createVNode(d,{cols:"4"},{default:e.withCtx(()=>[e.createVNode(f,{"no-gutters":""},{default:e.withCtx(()=>[e.createVNode(d,{cols:"6"},{default:e.withCtx(()=>[e.createVNode(p,{"open-delay":600,location:"top"},{activator:e.withCtx(({props:v})=>[e.createElementVNode("div",e.normalizeProps(e.guardReactiveProps(v)),[e.createVNode(a,{modelValue:o.options,"onUpdate:modelValue":t[0]||(t[0]=x=>o.options=x),label:"Pause on Error",value:"pauseOnError","hide-details":"","data-test":"pause-on-error"},null,8,["modelValue"])],16)]),default:e.withCtx(()=>[t[16]||(t[16]=e.createElementVNode("span",null,[e.createTextVNode(" Checked pauses the script when an error is encountered"),e.createElementVNode("br"),e.createTextVNode(" Unchecked continues without user interaction ")],-1))]),_:1})]),_:1}),e.createVNode(d,{cols:"6"},{default:e.withCtx(()=>[e.createVNode(p,{"open-delay":600,location:"top"},{activator:e.withCtx(({props:v})=>[e.createElementVNode("div",e.normalizeProps(e.guardReactiveProps(v)),[e.createVNode(a,{modelValue:o.options,"onUpdate:modelValue":t[1]||(t[1]=x=>o.options=x),label:"Manual",value:"manual","hide-details":"","data-test":"manual"},null,8,["modelValue"])],16)]),default:e.withCtx(()=>[e.createElementVNode("span",null,[e.createTextVNode(e.toDisplayString(n.checkedManualTooltip),1),t[17]||(t[17]=e.createElementVNode("br",null,null,-1)),e.createTextVNode(" "+e.toDisplayString(n.uncheckedManualTooltip),1)])]),_:1})]),_:1})]),_:1})]),_:1}),e.createVNode(d,{cols:"8"},{default:e.withCtx(()=>[e.createVNode(f,{"no-gutters":"",justify:"end"},{default:e.withCtx(()=>[e.createVNode(d,{cols:"5"},{default:e.withCtx(()=>[e.createVNode(w,{modelValue:o.suite,"onUpdate:modelValue":[t[2]||(t[2]=v=>o.suite=v),n.suiteChanged],label:"Suite:",class:"mb-2 mr-2","hide-details":"",density:"compact",variant:"outlined",items:o.suites,"data-test":"select-suite"},null,8,["modelValue","items","onUpdate:modelValue"])]),_:1}),e.createVNode(d,{cols:"auto"},{default:e.withCtx(()=>[e.createVNode(_,{color:"primary",class:"mr-2",disabled:s.disableButtons||!o.userInfo.execute,"data-test":"start-suite",onClick:t[3]||(t[3]=v=>i.$emit("button",{method:"start",suite:o.suite,options:o.options}))},{default:e.withCtx(()=>t[18]||(t[18]=[e.createTextVNode(" Start ")])),_:1},8,["disabled"]),e.createVNode(_,{color:"primary",class:"mr-2","data-test":"setup-suite",disabled:s.disableButtons||!n.setupSuiteEnabled||!o.userInfo.execute,onClick:t[4]||(t[4]=v=>i.$emit("button",{method:"setup",suite:o.suite,options:o.options}))},{default:e.withCtx(()=>t[19]||(t[19]=[e.createTextVNode(" Setup ")])),_:1},8,["disabled"]),e.createVNode(_,{color:"primary","data-test":"teardown-suite",disabled:s.disableButtons||!n.teardownSuiteEnabled||!o.userInfo.execute,onClick:t[5]||(t[5]=v=>i.$emit("button",{method:"teardown",suite:o.suite,options:o.options}))},{default:e.withCtx(()=>t[20]||(t[20]=[e.createTextVNode(" Teardown ")])),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1})]),_:1}),e.createVNode(f,{"no-gutters":""},{default:e.withCtx(()=>[e.createVNode(d,{cols:"4"},{default:e.withCtx(()=>[e.createVNode(f,{"no-gutters":""},{default:e.withCtx(()=>[e.createVNode(d,{cols:"6"},{default:e.withCtx(()=>[e.createVNode(p,{"open-delay":600,location:"top"},{activator:e.withCtx(({props:v})=>[e.createElementVNode("div",e.normalizeProps(e.guardReactiveProps(v)),[e.createVNode(a,{modelValue:o.options,"onUpdate:modelValue":t[6]||(t[6]=x=>o.options=x),label:"Continue after Error",value:"continueAfterError","hide-details":"","data-test":"continue-after-error"},null,8,["modelValue"])],16)]),default:e.withCtx(()=>[t[21]||(t[21]=e.createElementVNode("span",null,[e.createTextVNode(" Checked allows the script to continue when an error is encountered"),e.createElementVNode("br"),e.createTextVNode(" Unchecked forces the current script to end ")],-1))]),_:1})]),_:1}),e.createVNode(d,{cols:"6"},{default:e.withCtx(()=>[e.createVNode(p,{"open-delay":600,location:"top"},{activator:e.withCtx(({props:v})=>[e.createElementVNode("div",e.normalizeProps(e.guardReactiveProps(v)),[e.createVNode(a,{modelValue:o.options,"onUpdate:modelValue":t[7]||(t[7]=x=>o.options=x),label:"Loop",value:"loop","hide-details":"","data-test":"loop"},null,8,["modelValue"])],16)]),default:e.withCtx(()=>[t[22]||(t[22]=e.createElementVNode("span",null,[e.createTextVNode(" Checked continuously executes until explicitly stopped"),e.createElementVNode("br"),e.createTextVNode(" Unchecked executes only the started script(s) ")],-1))]),_:1})]),_:1})]),_:1})]),_:1}),e.createVNode(d,{cols:"8"},{default:e.withCtx(()=>[e.createVNode(f,{"no-gutters":"",justify:"end"},{default:e.withCtx(()=>[e.createVNode(d,{cols:"5"},{default:e.withCtx(()=>[e.createVNode(w,{modelValue:o.group,"onUpdate:modelValue":[t[8]||(t[8]=v=>o.group=v),n.groupChanged],label:"Group:",class:"mb-2 mr-2","hide-details":"",density:"compact",variant:"outlined",items:o.groups,"data-test":"select-group"},null,8,["modelValue","items","onUpdate:modelValue"])]),_:1}),e.createVNode(d,{cols:"auto"},{default:e.withCtx(()=>[e.createVNode(_,{color:"primary",class:"mr-2",disabled:s.disableButtons||!o.userInfo.execute,"data-test":"start-group",onClick:t[9]||(t[9]=v=>i.$emit("button",{method:"start",suite:o.suite,group:o.group,options:o.options}))},{default:e.withCtx(()=>t[23]||(t[23]=[e.createTextVNode(" Start ")])),_:1},8,["disabled"]),e.createVNode(_,{color:"primary",class:"mr-2","data-test":"setup-group",disabled:s.disableButtons||!n.setupGroupEnabled||!o.userInfo.execute,onClick:t[10]||(t[10]=v=>i.$emit("button",{method:"setup",suite:o.suite,group:o.group,options:o.options}))},{default:e.withCtx(()=>t[24]||(t[24]=[e.createTextVNode(" Setup ")])),_:1},8,["disabled"]),e.createVNode(_,{color:"primary","data-test":"teardown-group",disabled:s.disableButtons||!n.teardownGroupEnabled||!o.userInfo.execute,onClick:t[11]||(t[11]=v=>i.$emit("button",{method:"teardown",suite:o.suite,group:o.group,options:o.options}))},{default:e.withCtx(()=>t[25]||(t[25]=[e.createTextVNode(" Teardown ")])),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1})]),_:1}),e.createVNode(f,{"no-gutters":""},{default:e.withCtx(()=>[e.createVNode(d,{cols:"4"},{default:e.withCtx(()=>[e.createVNode(f,{"no-gutters":""},{default:e.withCtx(()=>[e.createVNode(d,{cols:"6"},{default:e.withCtx(()=>[e.createVNode(p,{"open-delay":600,location:"top"},{activator:e.withCtx(({props:v})=>[e.createElementVNode("div",e.normalizeProps(e.guardReactiveProps(v)),[e.createVNode(a,{modelValue:o.options,"onUpdate:modelValue":t[12]||(t[12]=x=>o.options=x),label:"Abort after Error",value:"abortAfterError","hide-details":"","data-test":"abort-after-error"},null,8,["modelValue"])],16)]),default:e.withCtx(()=>[t[26]||(t[26]=e.createElementVNode("span",null,[e.createTextVNode(" Checked stops additional script execution when an error is encountered"),e.createElementVNode("br"),e.createTextVNode(" Unchecked allows additional scripts to execute ")],-1))]),_:1})]),_:1}),e.createVNode(d,{cols:"6"},{default:e.withCtx(()=>[e.createVNode(p,{"open-delay":600,location:"top"},{activator:e.withCtx(({props:v})=>[e.createElementVNode("div",e.normalizeProps(e.guardReactiveProps(v)),[e.createVNode(a,{modelValue:o.options,"onUpdate:modelValue":t[13]||(t[13]=x=>o.options=x),disabled:!o.options.includes("loop"),label:"Break Loop on Error",value:"breakLoopOnError","hide-details":"","data-test":"break-loop-on-error"},null,8,["modelValue","disabled"])],16)]),default:e.withCtx(()=>[t[27]||(t[27]=e.createElementVNode("span",null,[e.createTextVNode(" Checked breaks the loop option when an error is encountered"),e.createElementVNode("br"),e.createTextVNode(" Unchecked allows the loop to run continuously"),e.createElementVNode("br"),e.createTextVNode(" Note: Abort after Error still breaks the loop ")],-1))]),_:1})]),_:1})]),_:1})]),_:1}),e.createVNode(d,{cols:"8"},{default:e.withCtx(()=>[e.createVNode(f,{"no-gutters":"",justify:"end"},{default:e.withCtx(()=>[e.createVNode(d,{cols:"5"},{default:e.withCtx(()=>[e.createVNode(w,{modelValue:o.script,"onUpdate:modelValue":[t[14]||(t[14]=v=>o.script=v),n.scriptChanged],label:"Script:",class:"mb-2 mr-2","hide-details":"",density:"compact",variant:"outlined",items:n.scriptNames,"item-title":"title","item-value":"value","data-test":"select-script"},null,8,["modelValue","items","onUpdate:modelValue"])]),_:1}),e.createVNode(d,{cols:"auto"},{default:e.withCtx(()=>[e.createVNode(_,{color:"primary",class:"mr-2",disabled:s.disableButtons||!o.userInfo.execute,"data-test":"start-script",onClick:t[15]||(t[15]=v=>i.$emit("button",{method:"start",suite:o.suite,group:o.group,script:o.script,options:o.options}))},{default:e.withCtx(()=>t[28]||(t[28]=[e.createTextVNode(" Start ")])),_:1},8,["disabled"]),e.createVNode(_,{color:"primary",class:"mr-2 invisible"},{default:e.withCtx(()=>t[29]||(t[29]=[e.createTextVNode(" Setup ")])),_:1}),e.createVNode(_,{color:"primary",class:"invisible"},{default:e.withCtx(()=>t[30]||(t[30]=[e.createTextVNode(" Teardown ")])),_:1})]),_:1})]),_:1})]),_:1})]),_:1})])])}const Re=D._export_sfc(It,[["render",Ut],["__scopeId","data-v-5cecdf51"]]),be=i=>C.li.get(`/openc3-api/autocomplete/keywords/${i}`),zt=i=>C.li.get(`/openc3-api/autocomplete/data/${i}`),ye=(i,t)=>i.reduce((s,l)=>{const o=t(l);return s[o]?s[o].push(l):s[o]=[l],s},{}),Ft=i=>{const t="(^|[{\\(\\s])",s=`[\\s\\(]f?['"]`,l="(\\S+\\s?){0,3}";return new RegExp(`${t}${i}${s}${l}$`)};class Me{constructor(t,s=()=>{},l=()=>{}){this.keywordExpressions=[],this.autocompleteData=[],be(t).then(o=>{this.keywordExpressions=o.data.map(Ft),l()}),zt(t).then(o=>{this.autocompleteData=o.data,s()})}getCompletions(t,s,l,o,n){let a=[];const p=s.doc.$lines[l.row].slice(0,l.column);this.keywordExpressions.some(d=>p.match(d))&&(a=this.autocompleteData),n(null,[...a])}}class At extends Me{constructor(){super("cmd")}}class Lt extends Me{constructor(){super("tlm",()=>{this.groupedPacketData=this.autocompleteData.reduce((t,s)=>{const l=s.caption.match(/\S+\s\S+/)[0],o=s.snippet.replace(`${l} `,""),n={caption:o,snippet:o,meta:"item"};return t[l]?t[l].push(n):t[l]=[n],t},{}),this.packets=Object.keys(this.groupedPacketData).map(t=>({caption:t,snippet:t,meta:"packet"}))})}getCompletions(t,s,l,o,n){let a=[];const p=s.doc.$lines[l.row].slice(0,l.column);if(this.keywordExpressions.some(d=>p.match(d))){const d=Object.keys(this.groupedPacketData).find(f=>p.includes(f));d?a=this.groupedPacketData[d]:a=this.packets}n(null,a)}}const Ne=i=>{const t="(^|[{\\(\\s])",s="((\\s.+)|(\\(.+\\)))";return new RegExp(`${t}${i}${s}`)},Ht=/\{/,qt=/['"],\s?['"]/;class Gt{constructor(){this.api=new C.pi,this.targets={},this.api.get_target_names().then(t=>{t.forEach(s=>{this.targets[s]={cmd:null,tlm:null}})}),this.cmdKeywordExpressions=[],be("cmd").then(t=>{this.cmdKeywordExpressions=t.data.map(Ne)}),this.tlmKeywordExpressions=[],be("tlm").then(t=>{this.tlmKeywordExpressions=t.data.map(Ne)})}async checkText(t){const{linesToCheck:s,linesToSkip:l}=t.split(`
4
4
  `).reduce((n,a,p)=>{if(a=a.trim(),a.match(/^#/))return n;const d=this.cmdKeywordExpressions.reduce((g,S)=>g||a.match(S),null),f=this.tlmKeywordExpressions.reduce((g,S)=>g||a.match(S),null);if(!d&&!f)return n;let w=d||f,_=w.length;w=w[_-1];const v=w.substring(w.match(/[\(\s)]/).index+1).replace(/\)+.*$/,"");if(v.match(Ht))return n.linesToSkip.push(p+1),n;const x=!!v.match(qt),b=v.split(x?",":" ");if(b.length<2)return n;const V={target:b[0],packet:b[1]};if(f)V.item=b[2];else{const g=b.slice(2);x?V.params=g.map(S=>S.split("=>")[0]):V.params=g.filter((S,M)=>M%2)}for(const g in V)typeof V[g]=="string"?V[g]=V[g].replace(/['"]/g,"").trim():V[g]=V[g].map(S=>S.replace(/['"]/g,"").trim());return n.linesToCheck.push({line:a,mnemonic:V,lineNumber:p+1}),n},{linesToCheck:[],linesToSkip:[]}),o=await this._checkLines(s);return{skipped:l.sort(),problems:o.sort((n,a)=>n.lineNumber-a.lineNumber)}}async _checkLines(t){const s=[],l=ye(t,o=>o.mnemonic.target);for(const o in l){if(!this.targets[o]){for(const a of l[o])s.push({...a,error:`Target "${o}" does not exist.`});continue}const n=ye(l[o],a=>a.mnemonic.packet);for(const a in n)for(const p of n[a]){const d=p.mnemonic.item?"tlm":"cmd";if(!this.targets[o][d]){const w=p.mnemonic.item?"get_all_tlm":"get_all_cmds",_=await this.api[w](o);this.targets[o][d]=_.reduce((v,x)=>(v[x.packet_name]=x.items.map(b=>b.name),v),{})}const f=this.targets[o][d][a];if(!f){s.push({...p,error:`${d==="tlm"?"Packet":"Command"} "${o} ${a}" does not exist.`});continue}if(p.mnemonic.item){if(!f.some(w=>w===p.mnemonic.item)){s.push({...p,error:`Item "${o} ${a} ${p.mnemonic.item}" does not exist.`});continue}}else for(const w of p.mnemonic.params)if(!f.some(_=>_===w)){s.push({...p,error:`Command "${o} ${a}" param "${w}" does not exist.`});continue}}}return s}}var z,G,j,K,W,ie,J,Y,oe;class jt{constructor(t,{pattern:s,text:l,type:o}){I(this,z);I(this,G);I(this,j);I(this,K);I(this,W);ge(this,"refresh",()=>{const t=B(this,G).session;B(this,oe).call(this,t);const s={lines:t.doc.$lines,action:"insert",start:{row:0},end:{row:t.doc.$lines.length}};this.annotate(s,t)});ge(this,"annotate",(t,s)=>{var l,o;if(t.lines.length>1)switch(t.action){case"insert":B(this,Y).call(this,s,t.start.row,t.lines.length-1);break;case"remove":B(this,Y).call(this,s,t.start.row+1,-t.lines.length+1);break}for(let n=t.start.row;n<=t.end.row;n++){let a=(o=(l=s.doc.$lines[n])==null?void 0:l.match(B(this,j)))==null?void 0:o.index;a!==void 0?(a!==0&&(a+=1),B(this,ie).call(this,s,{row:n,column:a,text:B(this,K),type:B(this,W),openc3Id:B(this,z)})):t.action==="remove"&&B(this,J).call(this,s,n)}});I(this,ie,(t,s)=>{B(this,J).call(this,t,s.row),t.setAnnotations([...t.getAnnotations(),s])});I(this,J,(t,s)=>{t.setAnnotations(t.getAnnotations().filter(l=>l.openc3Id!==B(this,z)||l.row!==s))});I(this,Y,(t,s,l)=>{t.setAnnotations(t.getAnnotations().map(o=>(o.row>s&&(o.row+=l),o)))});I(this,oe,t=>{t.setAnnotations(t.getAnnotations().filter(s=>s.openc3Id!==B(this,z)))});A(this,z,`regexAnnotator-${Math.floor(Math.random()*1e7)}`),A(this,G,t),A(this,j,s),A(this,K,l),A(this,W,o)}}z=new WeakMap,G=new WeakMap,j=new WeakMap,K=new WeakMap,W=new WeakMap,ie=new WeakMap,J=new WeakMap,Y=new WeakMap,oe=new WeakMap;class Kt extends jt{constructor(t){const s="(^|[{\\s])",l="sleep",o="[\\(\\s]";super(t,{pattern:new RegExp(`${s}${l}${o}`),text:"Use `wait` instead of `sleep` in OpenC3 scripts",type:"warning"})}}const Se="__TEMP__",P="<Untitled>",_e="Start",Wt="Go",q="Pause",Jt="Retry",Yt={components:{FileOpenSaveDialog:we.FileOpenSaveDialog,Openc3Screen:we.Openc3Screen,EnvironmentDialog:we.EnvironmentDialog,Splitpanes:Ye,Pane:Ze,TopBar:ve.TopBar,AskDialog:tt,FileDialog:lt,InformationDialog:mt,EventListDialog:Le.EventListDialog,OverridesDialog:vt,PromptDialog:Nt,ResultsDialog:Bt,ScriptEnvironmentDialog:Dt,SimpleTextDialog:Ae.SimpleTextDialog,SuiteRunner:Re,RunningScripts:Te,ScriptLogMessages:Be,CriticalCmdDialog:ze.CriticalCmdDialog},mixins:[Ee.AceEditorModes],beforeRouteUpdate:function(i,t,s){i.params.id?this.tryLoadRunningScript(i.params.id).then(s):s()},props:{inline:{type:Boolean,default:!1},body:{type:String,default:null}},emits:["alert","script-id"],data(){return{title:"Script Runner",suiteRunner:!1,disableSuiteButtons:!1,suiteMap:{},filenameSelect:null,currentFilename:null,showSave:!1,showAlert:!1,alertType:null,alertText:"",state:null,scriptId:null,startOrGoButton:_e,startOrGoDisabled:!1,envDisabled:!1,pauseOrRetryButton:q,pauseOrRetryDisabled:!1,stopDisabled:!1,showEnvironment:!1,showDebug:!1,debug:"",debugHistory:[],debugHistoryIndex:0,showDisconnect:!1,files:{},breakpoints:{},enableStackTraces:!1,filename:P,readOnlyUser:!1,executeUser:!0,saveAllowed:!0,tempFilename:null,fileModified:"",fileOpen:!1,lockedBy:null,showEditingToast:!1,showSaveAs:!1,areYouSure:!1,subscription:null,cable:null,fatal:!1,updateInterval:null,receivedEvents:[],messages:[],messagesNewestOnTop:!0,maxArrayLength:200,Range:ace.require("ace/range").Range,ask:{show:!1,question:"",default:null,password:!1,answerRequired:!0,callback:()=>{}},file:{show:!1,message:"",directory:null,filter:"*",multiple:!1,callback:()=>{}},prompt:{show:!1,title:"",subtitle:"",message:"",details:"",buttons:null,layout:"horizontal",callback:()=>{}},information:{show:!1,title:"",text:[],width:"600"},inputMetadata:{show:!1,events:[],callback:()=>{}},results:{show:!1,text:""},scriptEnvironment:{show:!1,env:[]},showSuiteError:!1,suiteError:"",executeSelectionMenu:!1,menuX:0,menuY:0,mnemonicChecker:new Gt,showScripts:!1,showOverrides:!1,activePromptId:"",api:null,timeZone:"local",screens:[],screenKeywords:null,idCounter:0,updateCounter:0,recent:[],waitingInterval:null,waitingTime:0,waitingStart:0,criticalCmdUuid:null,criticalCmdString:null,criticalCmdUser:null,displayCriticalCmd:!1}},computed:{stateTimer:function(){return this.state==="waiting"||this.state==="paused"?`${this.state} ${this.waitingTime}s`:this.state},fileList:function(){const i=Object.keys(this.files);return i.push(this.fullFilename),[...new Set(i)]},environmentModified:function(){return this.scriptEnvironment.env.length>0},isLocked:function(){return!!this.lockedBy},fullFilename:function(){return this.currentFilename?this.currentFilename:this.filename===P?P:`${this.filename} ${this.fileModified}`.trim()},filenameOrBlank:function(){return this.filename===P?"":this.filename},menus:function(){return[{label:"File",items:[{label:"New File",icon:"mdi-file-plus",disabled:this.scriptId||this.readOnlyUser,command:()=>{this.newFile()}},{label:"New Suite",icon:"mdi-file-document-plus",disabled:this.scriptId||this.readOnlyUser,subMenu:[{label:"Ruby",icon:"mdi-language-ruby",command:()=>{this.newRubyTestSuite()}},{label:"Python",icon:"mdi-language-python",command:()=>{this.newPythonTestSuite()}}]},{label:"Open File",icon:"mdi-folder-open",disabled:this.scriptId,command:()=>{this.openFile()}},{label:"Open Recent",icon:"mdi-folder-open",disabled:this.scriptId,subMenu:this.recent},{divider:!0},{label:"Save File",icon:"mdi-content-save",disabled:this.scriptId||this.readOnlyUser,command:()=>{this.saveFile()}},{label:"Save As...",icon:"mdi-content-save",disabled:this.scriptId||this.readOnlyUser,command:()=>{this.saveAs()}},{divider:!0},{label:"Download",icon:"mdi-cloud-download",disabled:this.scriptId,command:()=>{this.download()}},{divider:!0},{label:"Delete File",icon:"mdi-delete",disabled:this.scriptId||this.readOnlyUser,command:()=>{this.delete()}}]},{label:"Edit",items:[{label:"Find",icon:"mdi-magnify",command:()=>{this.editor.execCommand("find")}},{label:"Replace",icon:"mdi-find-replace",disabled:this.scriptId,command:()=>{this.editor.execCommand("replace")}},{label:"Set Line Delay",icon:"mdi-invoice-text-clock",disabled:this.scriptId,command:()=>{this.$dialog.open({title:"Info",text:"You can set the line delay in seconds using the api method set_line_delay().<br/><br/>The default line delay is 0.1 seconds between lines. Adding set_line_delay(0) to the top of your script will execute the script at maximum speed. However, this can make it difficult to see and pause the script. Executing set_line_delay(1) will cause a 1 second delay between lines.",okText:"OK",okClass:"primary",validateText:null,cancelText:null,html:!0})}}]},{label:"Script",items:[{label:"Execution Status",icon:"mdi-run",command:()=>{this.showScripts=!0}},{divider:!0},{label:"Global Environment",icon:"mdi-library",disabled:this.scriptId,command:()=>{this.showEnvironment=!this.showEnvironment}},{label:"Metadata",icon:"mdi-calendar",disabled:this.scriptId,command:()=>{this.inputMetadata.callback=()=>{},this.showMetadata()}},{label:"Overrides",icon:"mdi-swap-horizontal",command:()=>{this.showOverrides=!0}},{divider:!0},{label:"Syntax Check",icon:"mdi-file-check",disabled:this.scriptId,command:()=>{this.syntaxCheck()}},{label:"Mnemonic Check",icon:"mdi-spellcheck",disabled:this.scriptId,command:()=>{this.checkMnemonics()}},{label:"Instrumented Script",icon:"mdi-code-braces-box",disabled:this.scriptId,command:()=>{this.showInstrumented()}},{label:"Call Stack",icon:"mdi-format-list-numbered",disabled:!this.scriptId,command:()=>{this.showCallStack()}},{divider:!0},{label:"Toggle Debug",icon:"mdi-bug",command:()=>{this.toggleDebug()}},{label:"Toggle Disconnect",icon:"mdi-connection",disabled:this.scriptId,command:()=>{this.toggleDisconnect()}},{label:"Enable Stack Traces",checkbox:!0,checked:this.enableStackTraces,disabled:this.scriptId,command:()=>{this.enableStackTraces=!this.enableStackTraces}},{divider:!0},{label:"Delete All Breakpoints",icon:"mdi-delete-circle-outline",disabled:this.scriptId,command:()=>{this.deleteAllBreakpoints()}}]}]}},watch:{isLocked:function(i){this.showEditingToast=i,this.suiteRunner||(this.startOrGoDisabled=i),this.readOnlyUser==!1&&i==!1?this.editor.setReadOnly(i):this.editor.setReadOnly(!0)},fullFilename:function(i){this.filenameSelect=i,this.inline||(i===P?localStorage.removeItem("script_runner__filename"):localStorage.script_runner__filename=i)}},created:async function(){this.api=new C.pi,this.api.ensure_offline_access(),this.api.get_setting("time_zone").then(s=>{s&&(this.timeZone=s)}).catch(s=>{}),this.NEW_FILENAME=P;let i=OpenC3Auth.user(),t=OpenC3Auth.userroles();this.readOnlyUser=!0,this.executeUser=!1;for(let s of t)s!="viewer"&&(s=="admin"||s=="operator"?(this.readOnlyUser=!1,this.executeUser=!0):s=="runner"?this.executeUser=!0:await C.li.get(`/openc3-api/roles/${s}`).then(l=>{l.data!==null&&l.data.permissions!==void 0&&(l.data.permissions.some(o=>o.permission=="script_edit")&&(this.readOnlyUser=!1),l.data.permissions.some(o=>o.permission=="script_run")&&(this.executeUser=!0))}));if(this.inline||(localStorage.script_runner__userinfo=JSON.stringify({name:i.preferred_username,readOnly:this.readOnlyUser,execute:this.executeUser})),this.readOnlyUser==!0){this.alertType="info";let s=`User ${i.preferred_username} is read only`;this.executeUser&&(s+=" but can execute scripts"),this.alertText=s,this.showAlert=!0}C.li.get("/openc3-api/autocomplete/keywords/screen").then(s=>{this.screenKeywords=s.data}),this.inline&&(this.readOnly=!0)},mounted:async function(){var l,o;this.editor=ace.edit(this.$refs.editor),this.editor.setTheme("ace/theme/twilight");const i=this.buildRubyMode(),t=this.buildPythonMode();this.rubyMode=new i,this.pythonMode=new t,this.editor.session.setMode(this.rubyMode),this.editor.session.setTabSize(2),this.editor.session.setUseWrapMode(!0),this.editor.$blockScrolling=1/0,this.editor.setOption("enableBasicAutocompletion",!0),this.editor.setOption("enableLiveAutocompletion",!0),this.editor.completers=[new At,new Lt],this.editor.setHighlightActiveLine(!1),ve.AceEditorUtils.applyVimModeIfEnabled(this.editor,{saveFn:this.saveFile}),this.editor.focus(),this.editor.on("guttermousedown",this.toggleBreakpoint),this.editor.session.on("tokenizerUpdate",this.onChange),this.readOnlyUser&&(this.editor.setReadOnly(!0),this.editor.renderer.$cursorLayer.element.style.display="none");const s=new Kt(this.editor);this.editor.session.on("change",(n,a)=>{s.annotate(n,a),this.updateBreakpoints(n,a)}),this.editor.container.addEventListener("resize",this.doResize),this.editor.container.addEventListener("keydown",this.keydown),window.addEventListener("resize",this.calcHeight),this.calcHeight(),this.cable=new C.di("/script-api/cable"),!this.inline&&localStorage.script_runner__recent&&(this.recent=JSON.parse(localStorage.script_runner__recent),this.recent=this.recent.map(n=>({...n,command:async a=>{this.filename=a.label,await this.reloadFile()}}))),this.inline?this.body&&(this.editor.setValue(this.body),this.editor.clearSelection()):(l=this.$route.query)!=null&&l.file?(this.filename=this.$route.query.file,await this.reloadFile()):(o=this.$route.params)!=null&&o.id?await this.tryLoadRunningScript(this.$route.params.id):(this.scriptId=sessionStorage.getItem("script_runner__script_id"),this.scriptId?await this.tryLoadRunningScript(this.scriptId):localStorage.script_runner__filename&&(this.filename=localStorage.script_runner__filename,await this.reloadFile(!1))),this.updateInterval=setInterval(async()=>{this.processReceived()},100)},beforeUnmount(){this.scriptId&&!this.inline&&sessionStorage.setItem("script_runner__script_id",this.scriptId),this.editor.destroy(),this.editor.container.remove()},unmounted(){this.unlockFile(),this.updateInterval!=null&&clearInterval(this.updateInterval),this.subscription&&(this.subscription.unsubscribe(),this.subscription=null),this.cable.disconnect()},methods:{toggleVimMode(){ve.AceEditorUtils.toggleVimMode(this.editor)},doResize(){this.editor.resize(),this.$nextTick(()=>{this.calcHeight()})},calcHeight(){const i=document.getElementsByClassName("editorbox")[0],t=Math.max(document.documentElement.offsetHeight,window.innerHeight||0);let s=0;i&&(s=i.offsetHeight);let l=0;const o=document.getElementsByClassName("suite-runner")[0];o&&(l=o.offsetHeight);let n=document.getElementById("script-log-messages");n&&(n.style.height=`${t-s-l}px`)},scriptDisconnect(){this.subscription&&(this.subscription.unsubscribe(),this.subscription=null),this.receivedEvents.length=0},showMetadata(){C.li.get("/openc3-api/metadata").then(i=>{this.inputMetadata.events=i.data.map(t=>({name:"Metadata",start:new Date(t.start*1e3),end:new Date(t.start*1e3),color:t.color,type:t.type,timed:!0,metadata:t})),this.inputMetadata.show=!0})},messageSortOrder(i){i==="Newest on Top"&&this.messagesNewestOnTop===!1?(this.messagesNewestOnTop=!0,this.messages.reverse()):i==="Newest on Bottom"&&this.messagesNewestOnTop===!0&&(this.messagesNewestOnTop=!1,this.messages.reverse())},fileNameChanged(i){i=i.split("*")[0],this.editor.setValue(this.files[i].content),this.restoreBreakpoints(i),this.editor.clearSelection(),this.removeAllMarkers(),this.editor.session.addMarker(new this.Range(this.files[i].lineNo-1,0,this.files[i].lineNo-1,1),`${this.state}Marker`,"fullLine"),this.editor.gotoLine(this.files[i].lineNo)},tryLoadRunningScript:function(i){return C.li.get(`/script-api/running-script/${i}`).then(t=>{if(t.data){let s=t.data.state;s!=="completed"&&s!=="completed_errors"&&s!=="stopped"&&s!=="crashed"&&s!=="killed"?(this.filename=t.data.filename,this.tryLoadSuites(t),this.initScriptStart(),this.scriptStart(i)):(this.$notify.caution({title:`Script ${i} has already completed`,body:"Check the Completed Scripts below ..."}),this.scriptComplete(),this.showScripts=!0)}else this.$notify.caution({title:`Running Script ${i} not found`,body:"Check the Completed Scripts below ..."}),this.scriptComplete(),this.showScripts=!0})},tryLoadSuites:function(i){i.data.suite_runner&&(this.startOrGoDisabled=!0,this.suiteRunner=!0,this.suiteMap=JSON.parse(i.data.suite_runner)),this.doResize()},showExecuteSelectionMenu:function(i){this.menuX=i.pageX,this.menuY=i.pageY,this.executeSelectionMenu=!0},runFromCursor:function(){const i=this.editor.getCursorPosition().row+1;this.scriptId?C.li.post(`/script-api/running-script/${this.scriptId}/executewhilepaused`,{data:{args:[this.filenameSelect,i]}}):this.start(null,null,i)},executeSelection:function(){const i=this.editor.getSelectionRange();let t=i.start.row+1,s=i.end.row+1;i.end.column===0&&(s-=1),this.scriptId?C.li.post(`/script-api/running-script/${this.scriptId}/executewhilepaused`,{data:{args:[this.filenameSelect,t,s]}}):this.start(null,null,t,s)},clearBreakpoints:function(){this.editor.session.clearBreakpoints()},toggleBreakpoint:function(i){if(!this.scriptId){const t=i.getDocumentPosition().row;i.editor.session.getBreakpoints(t,0)[t]?i.editor.session.clearBreakpoint(t):i.editor.session.setBreakpoint(t)}},updateBreakpoints:function(i,t){if(i.lines.length<=1)return;const s=this.getBreakpointRows(t).filter(n=>i.start.column===0&&n===i.start.row||n>i.start.row);let l=[],o=0;switch(i.action){case"insert":o=i.lines.length-1,s.reverse();break;case"remove":o=-i.lines.length+1,l=[...Array(i.lines.length).keys()].map(n=>n+i.start.row);break}s.forEach(n=>{t.clearBreakpoint(n),l.includes(n)||t.setBreakpoint(n+o)})},getBreakpointRows:function(i=this.editor.session){return i.getBreakpoints().map((t,s)=>t&&s).filter(Number.isInteger)},restoreBreakpoints:function(i){var t;this.clearBreakpoints(),(t=this.breakpoints[i])==null||t.forEach(s=>{this.editor.session.setBreakpoint(s)})},deleteAllBreakpoints:function(){this.$dialog.confirm("Permanently delete all breakpoints for ALL scripts?",{okText:"Delete",cancelText:"Cancel"}).then(i=>C.li.delete("/script-api/breakpoints/delete/all")).then(i=>{this.clearBreakpoints()})},suiteRunnerButton(i){this.startOrGoButton===_e?this.start(i,"suiteRunner"):this.go(i,"suiteRunner")},async keydown(i){this.scriptId||this.editor.getReadOnly()===!0||(i.metaKey||i.ctrlKey)&&i.keyCode===83&&(i.shiftKey?(i.preventDefault(),this.saveAs()):(i.preventDefault(),await this.saveFile()))},onChange(i){this.scriptId||this.editor.getReadOnly()===!0||(this.editor.session.getUndoManager().canUndo()?this.fileModified="*":this.fileModified="")},checkMnemonics:function(){this.mnemonicChecker.checkText(this.editor.getValue()).then(({skipped:i,problems:t})=>{let s="";if(t.length){const l=t.map(o=>`${o.lineNumber}: ${o.error}`).join("<br/>");s+=`<strong>The following lines have problems:</strong><br/>${l}<br/><br/>`}i.length&&(s+="<strong>Mnemonics with string interpolation were not checked.</strong>"),s===""&&(s="<strong>Everything looks good!</strong>"),this.$dialog.alert(s.trim(),{html:!0})})},initScriptStart(){this.disableSuiteButtons=!0,this.startOrGoDisabled=!0,this.envDisabled=!0,this.pauseOrRetryDisabled=!0,this.stopDisabled=!0,this.state="Connecting...",this.startOrGoButton=Wt,this.editor.setReadOnly(!0)},scriptStart(i){this.$emit("script-id",i),this.scriptId=i,this.cable.createSubscription("RunningScriptChannel",window.openc3Scope,{received:t=>this.received(t)},{id:this.scriptId}).then(t=>{this.subscription=t})},async scriptComplete(){this.state="stopped",this.fatal=!1,this.scriptId=null,sessionStorage.removeItem("script_runner__script_id"),this.currentFilename=null,this.files={},this.subscription&&(await this.subscription.unsubscribe(),this.subscription=null),this.receivedEvents.length=0,await this.reloadFile(),this.editor.session.getUndoManager().reset(),this.readOnlyUser==!1&&this.editor.setReadOnly(!1),this.disableSuiteButtons=!1,this.startOrGoButton=_e,this.pauseOrRetryButton=q,this.startOrGoDisabled=this.suiteRunner,this.envDisabled=!1,this.pauseOrRetryDisabled=!0,this.stopDisabled=!0},environmentHandler:function(i){this.scriptEnvironment.env=i},startHandler:function(){this.start()},async start(i=null,t=null,s=null,l=null){this.initScriptStart(),await this.saveFile("start"),this.saveAllowed=!1;let o=this.filename;this.filename===P&&(o=this.tempFilename);let n=`/script-api/scripts/${o}/run`;this.showDisconnect&&(n+="/disconnect");let a=this.scriptEnvironment.env;this.enableStackTraces&&(a=a.concat({key:"OPENC3_FULL_BACKTRACE",value:"1"}));let p={environment:a};t&&(p.suiteRunner=i),s!==null&&(p.line_no=s),l!==null&&(p.end_line_no=l),C.li.post(n,{data:p}).then(d=>{this.scriptStart(d.data)}).catch(d=>{this.scriptComplete()})},go(){this.filenameSelect=this.currentFilename,this.fileNameChanged(this.currentFilename),C.li.post(`/script-api/running-script/${this.scriptId}/go`)},pauseOrRetry(){this.pauseOrRetryButton===q?C.li.post(`/script-api/running-script/${this.scriptId}/pause`):(this.pauseOrRetryButton=q,C.li.post(`/script-api/running-script/${this.scriptId}/retry`))},stop(){this.fatal?(this.removeAllMarkers(),this.scriptComplete()):C.li.post(`/script-api/running-script/${this.scriptId}/stop`)},step(){C.li.post(`/script-api/running-script/${this.scriptId}/step`)},handleWaiting(){if(this.state!=="waiting"&&this.state!=="paused")this.clearWaiting();else if(this.waitingInterval!==null)return;this.waitingStart=Date.now(),this.waitingInterval=setInterval(()=>{this.waitingTime=Math.round((Date.now()-this.waitingStart)/1e3)},1e3)},clearWaiting(){this.waitingTime=0,clearInterval(this.waitingInterval),this.waitingInterval=null},processLine(i){i.filename&&i.filename!==this.currentFilename&&(this.files[i.filename]?(this.currentFilename=i.filename,this.editor.setValue(this.files[i.filename].content),this.restoreBreakpoints(i.filename),this.editor.clearSelection()):(this.files[i.filename]={content:"",lineNo:0},C.li.get(`/script-api/scripts/${i.filename}`).then(s=>{this.files[i.filename]={content:s.data.contents,lineNo:0},this.breakpoints[i.filename]=s.data.breakpoints,this.restoreBreakpoints(i.filename),this.currentFilename=null}).catch(s=>{this.files[i.filename]=null}))),this.state=i.state;const t=this.editor.session.getMarkers();switch(this.state){case"running":this.handleWaiting(),this.startOrGoDisabled=!1,this.pauseOrRetryDisabled=!1,this.stopDisabled=!1,this.pauseOrRetryButton=q,this.removeAllMarkers(),this.editor.session.addMarker(new this.Range(i.line_no-1,0,i.line_no-1,1),"runningMarker","fullLine"),this.editor.gotoLine(i.line_no),this.files[i.filename].lineNo=i.line_no;break;case"crashed":this.fatal=!0;case"error":this.pauseOrRetryButton=Jt;case"breakpoint":case"waiting":case"paused":if(this.handleWaiting(),this.state=="fatal"?(this.startOrGoDisabled=!0,this.pauseOrRetryDisabled=!0):(this.startOrGoDisabled=!1,this.pauseOrRetryDisabled=!1),this.stopDisabled=!1,Object.keys(t).filter(l=>t[l].clazz===`${this.state}Marker`).length===0){this.removeAllMarkers();let l=i.line_no>0?i.line_no:1;this.editor.session.addMarker(new this.Range(l-1,0,l-1,1),`${this.state}Marker`,"fullLine"),this.editor.gotoLine(l),i.filename&&(this.files[i.filename].lineNo=l)}break}},processReceived(){let i=0;for(let t of this.receivedEvents){i+=1;let s=0;switch(t.type){case"file":this.files[t.filename]={content:t.text,lineNo:0},this.breakpoints[t.filename]=t.breakpoints,this.currentFilename===t.filename&&this.restoreBreakpoints(t.filename);break;case"line":this.processLine(t);break;case"output":for(const a of t.line.split(`