@openc3/vue-common 7.0.0-rc2 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (454) hide show
  1. package/dist/{ArrayWidget-D0_mEwbG.cjs → ArrayWidget-BsAUsmBz.cjs} +2 -2
  2. package/dist/{ArrayWidget-D0_mEwbG.cjs.map → ArrayWidget-BsAUsmBz.cjs.map} +1 -1
  3. package/dist/{ArrayWidget-BfXFA16h.js → ArrayWidget-D2UrA5Db.js} +4 -4
  4. package/dist/{ArrayWidget-BfXFA16h.js.map → ArrayWidget-D2UrA5Db.js.map} +1 -1
  5. package/dist/{ArrayplotWidget-CrkUt8nf.js → ArrayplotWidget-CDNRxI2F.js} +3 -3
  6. package/dist/{ArrayplotWidget-CrkUt8nf.js.map → ArrayplotWidget-CDNRxI2F.js.map} +1 -1
  7. package/dist/{ArrayplotWidget-ixbndTIr.cjs → ArrayplotWidget-ChHMy5_L.cjs} +2 -2
  8. package/dist/{ArrayplotWidget-ixbndTIr.cjs.map → ArrayplotWidget-ChHMy5_L.cjs.map} +1 -1
  9. package/dist/{BarColumn-D5XXk4Pw.cjs → BarColumn-e-sSkSvE.cjs} +2 -2
  10. package/dist/BarColumn-e-sSkSvE.cjs.map +1 -0
  11. package/dist/{BarColumn-CB-tgZUT.js → BarColumn-nSFR2LZF.js} +6 -6
  12. package/dist/BarColumn-nSFR2LZF.js.map +1 -0
  13. package/dist/{BlockWidget-76H_uaBo.js → BlockWidget-C-WB0Q2m.js} +4 -4
  14. package/dist/{BlockWidget-76H_uaBo.js.map → BlockWidget-C-WB0Q2m.js.map} +1 -1
  15. package/dist/{BlockWidget-w3lmbO_0.cjs → BlockWidget-DJpyQiec.cjs} +2 -2
  16. package/dist/{BlockWidget-w3lmbO_0.cjs.map → BlockWidget-DJpyQiec.cjs.map} +1 -1
  17. package/dist/{ButtonWidget-CL09OQq_.js → ButtonWidget-rS7sVb7m.js} +14 -14
  18. package/dist/{ButtonWidget-CL09OQq_.js.map → ButtonWidget-rS7sVb7m.js.map} +1 -1
  19. package/dist/{ButtonWidget-MeyUohLj.cjs → ButtonWidget-rkOE5b8G.cjs} +3 -3
  20. package/dist/{ButtonWidget-MeyUohLj.cjs.map → ButtonWidget-rkOE5b8G.cjs.map} +1 -1
  21. package/dist/{CanvasWidget-DN04dkIP.js → CanvasWidget-DuWolVCW.js} +2 -2
  22. package/dist/{CanvasWidget-DN04dkIP.js.map → CanvasWidget-DuWolVCW.js.map} +1 -1
  23. package/dist/{CanvasWidget-DFwpzAHp.cjs → CanvasWidget-Dv7_QUJY.cjs} +2 -2
  24. package/dist/{CanvasWidget-DFwpzAHp.cjs.map → CanvasWidget-Dv7_QUJY.cjs.map} +1 -1
  25. package/dist/{CanvasdotWidget-DD5jlEoi.js → CanvasdotWidget-B42YizA1.js} +2 -2
  26. package/dist/{CanvasdotWidget-DD5jlEoi.js.map → CanvasdotWidget-B42YizA1.js.map} +1 -1
  27. package/dist/{CanvasdotWidget-BC_P3TrQ.cjs → CanvasdotWidget-E1OgFBVZ.cjs} +2 -2
  28. package/dist/{CanvasdotWidget-BC_P3TrQ.cjs.map → CanvasdotWidget-E1OgFBVZ.cjs.map} +1 -1
  29. package/dist/{CanvasimageWidget-BGC5DEyb.js → CanvasimageWidget-DMHdDTSs.js} +3 -3
  30. package/dist/{CanvasimageWidget-BGC5DEyb.js.map → CanvasimageWidget-DMHdDTSs.js.map} +1 -1
  31. package/dist/{CanvasimageWidget-Ba8CzBeA.cjs → CanvasimageWidget-ysw78z4C.cjs} +2 -2
  32. package/dist/{CanvasimageWidget-Ba8CzBeA.cjs.map → CanvasimageWidget-ysw78z4C.cjs.map} +1 -1
  33. package/dist/{CanvasimagevalueWidget-C4V30F-k.cjs → CanvasimagevalueWidget-Bc-VYXe7.cjs} +2 -2
  34. package/dist/{CanvasimagevalueWidget-C4V30F-k.cjs.map → CanvasimagevalueWidget-Bc-VYXe7.cjs.map} +1 -1
  35. package/dist/{CanvasimagevalueWidget-BP7cAs0Z.js → CanvasimagevalueWidget-ns-5S1HA.js} +3 -3
  36. package/dist/{CanvasimagevalueWidget-BP7cAs0Z.js.map → CanvasimagevalueWidget-ns-5S1HA.js.map} +1 -1
  37. package/dist/{CanvaslabelWidget-7kIhAM0A.cjs → CanvaslabelWidget-6h59qJY8.cjs} +2 -2
  38. package/dist/{CanvaslabelWidget-7kIhAM0A.cjs.map → CanvaslabelWidget-6h59qJY8.cjs.map} +1 -1
  39. package/dist/{CanvaslabelWidget-Cl--mh6r.js → CanvaslabelWidget-DElES3gU.js} +2 -2
  40. package/dist/{CanvaslabelWidget-Cl--mh6r.js.map → CanvaslabelWidget-DElES3gU.js.map} +1 -1
  41. package/dist/{CanvaslabelvalueWidget-CgYr_qcI.js → CanvaslabelvalueWidget-B2B5KlUm.js} +2 -2
  42. package/dist/{CanvaslabelvalueWidget-CgYr_qcI.js.map → CanvaslabelvalueWidget-B2B5KlUm.js.map} +1 -1
  43. package/dist/{CanvaslabelvalueWidget-SbtBYdGj.cjs → CanvaslabelvalueWidget-BLIgF8xi.cjs} +2 -2
  44. package/dist/{CanvaslabelvalueWidget-SbtBYdGj.cjs.map → CanvaslabelvalueWidget-BLIgF8xi.cjs.map} +1 -1
  45. package/dist/{CanvaslineWidget-CKBFMLKb.cjs → CanvaslineWidget-CxZGCwVF.cjs} +2 -2
  46. package/dist/{CanvaslineWidget-CKBFMLKb.cjs.map → CanvaslineWidget-CxZGCwVF.cjs.map} +1 -1
  47. package/dist/{CanvaslineWidget-BygI_uzn.js → CanvaslineWidget-DaHxgGyM.js} +2 -2
  48. package/dist/{CanvaslineWidget-BygI_uzn.js.map → CanvaslineWidget-DaHxgGyM.js.map} +1 -1
  49. package/dist/{CanvaslinevalueWidget-Bsg-kroQ.cjs → CanvaslinevalueWidget-BljeuN4S.cjs} +2 -2
  50. package/dist/{CanvaslinevalueWidget-Bsg-kroQ.cjs.map → CanvaslinevalueWidget-BljeuN4S.cjs.map} +1 -1
  51. package/dist/{CanvaslinevalueWidget-ChL9-ZOz.js → CanvaslinevalueWidget-CrtDsSOP.js} +2 -2
  52. package/dist/{CanvaslinevalueWidget-ChL9-ZOz.js.map → CanvaslinevalueWidget-CrtDsSOP.js.map} +1 -1
  53. package/dist/{CheckbuttonWidget-Cxj4agsS.js → CheckbuttonWidget-BK4SgIu7.js} +2 -2
  54. package/dist/{CheckbuttonWidget-Cxj4agsS.js.map → CheckbuttonWidget-BK4SgIu7.js.map} +1 -1
  55. package/dist/{CheckbuttonWidget-xjIBJ8JT.cjs → CheckbuttonWidget-By46VH2e.cjs} +2 -2
  56. package/dist/{CheckbuttonWidget-xjIBJ8JT.cjs.map → CheckbuttonWidget-By46VH2e.cjs.map} +1 -1
  57. package/dist/{ClassificationBanners-Ag0cW8Wi.cjs → ClassificationBanners-CHQX3t7t.cjs} +2 -2
  58. package/dist/{ClassificationBanners-Ag0cW8Wi.cjs.map → ClassificationBanners-CHQX3t7t.cjs.map} +1 -1
  59. package/dist/{ClassificationBanners-BEBrvuzq.js → ClassificationBanners-DGl2HUKd.js} +2 -2
  60. package/dist/{ClassificationBanners-BEBrvuzq.js.map → ClassificationBanners-DGl2HUKd.js.map} +1 -1
  61. package/dist/{ComboboxWidget-CLVDTsRT.cjs → ComboboxWidget-CHFTOmhZ.cjs} +2 -2
  62. package/dist/{ComboboxWidget-CLVDTsRT.cjs.map → ComboboxWidget-CHFTOmhZ.cjs.map} +1 -1
  63. package/dist/{ComboboxWidget-DXlOmRS6.js → ComboboxWidget-CciRWuKq.js} +2 -2
  64. package/dist/{ComboboxWidget-DXlOmRS6.js.map → ComboboxWidget-CciRWuKq.js.map} +1 -1
  65. package/dist/{CriticalCmdDialog-De7KJBQR.cjs → CriticalCmdDialog-BWrwpTNK.cjs} +2 -2
  66. package/dist/{CriticalCmdDialog-De7KJBQR.cjs.map → CriticalCmdDialog-BWrwpTNK.cjs.map} +1 -1
  67. package/dist/{CriticalCmdDialog-DTok3HnF.js → CriticalCmdDialog-C5EZDRSZ.js} +3 -3
  68. package/dist/{CriticalCmdDialog-DTok3HnF.js.map → CriticalCmdDialog-C5EZDRSZ.js.map} +1 -1
  69. package/dist/{DateWidget-DCebkHzD.cjs → DateWidget-Bb6juAYs.cjs} +2 -2
  70. package/dist/{DateWidget-DCebkHzD.cjs.map → DateWidget-Bb6juAYs.cjs.map} +1 -1
  71. package/dist/{DateWidget-CYPRbvuk.js → DateWidget-DwgQ3Jik.js} +2 -2
  72. package/dist/{DateWidget-CYPRbvuk.js.map → DateWidget-DwgQ3Jik.js.map} +1 -1
  73. package/dist/{DetailsDialog-BI3oNhTn.js → DetailsDialog-CspQjoR5.js} +160 -141
  74. package/dist/DetailsDialog-CspQjoR5.js.map +1 -0
  75. package/dist/DetailsDialog-D_my0nhs.cjs +2 -0
  76. package/dist/DetailsDialog-D_my0nhs.cjs.map +1 -0
  77. package/dist/{EventListDialog-BMw8Gl-0.js → EventListDialog-DL2HHNQG.js} +19 -16
  78. package/dist/EventListDialog-DL2HHNQG.js.map +1 -0
  79. package/dist/EventListDialog-DO32zY2U.cjs +2 -0
  80. package/dist/EventListDialog-DO32zY2U.cjs.map +1 -0
  81. package/dist/{FilechecksumWidget-C6duPUFo.js → FilechecksumWidget-BS281Q0h.js} +19 -19
  82. package/dist/{FilechecksumWidget-C6duPUFo.js.map → FilechecksumWidget-BS281Q0h.js.map} +1 -1
  83. package/dist/{FilechecksumWidget-ccksLFy0.cjs → FilechecksumWidget-DMpuLZJ5.cjs} +2 -2
  84. package/dist/{FilechecksumWidget-ccksLFy0.cjs.map → FilechecksumWidget-DMpuLZJ5.cjs.map} +1 -1
  85. package/dist/{FiledisplayWidget-Cu1sQoZu.cjs → FiledisplayWidget-BoD7LuLP.cjs} +2 -2
  86. package/dist/{FiledisplayWidget-Cu1sQoZu.cjs.map → FiledisplayWidget-BoD7LuLP.cjs.map} +1 -1
  87. package/dist/{FiledisplayWidget-Cu2tLm6D.js → FiledisplayWidget-C9YdXDdv.js} +4 -4
  88. package/dist/{FiledisplayWidget-Cu2tLm6D.js.map → FiledisplayWidget-C9YdXDdv.js.map} +1 -1
  89. package/dist/FormatvalueWidget-DfvTVSs-.cjs +2 -0
  90. package/dist/{FormatvalueWidget-npk9X-15.cjs.map → FormatvalueWidget-DfvTVSs-.cjs.map} +1 -1
  91. package/dist/{FormatvalueWidget-I_0Qa6C6.js → FormatvalueWidget-dfmQfrNA.js} +13 -11
  92. package/dist/{FormatvalueWidget-I_0Qa6C6.js.map → FormatvalueWidget-dfmQfrNA.js.map} +1 -1
  93. package/dist/{Graph-BdLZrFnQ.js → Graph-BTtGIbYG.js} +389 -335
  94. package/dist/Graph-BTtGIbYG.js.map +1 -0
  95. package/dist/Graph-Cy2LrwoK.cjs +2 -0
  96. package/dist/Graph-Cy2LrwoK.cjs.map +1 -0
  97. package/dist/{GraphWidget-BvEeKc4C.js → GraphWidget-CWJ4Yb26.js} +2 -2
  98. package/dist/{GraphWidget-BvEeKc4C.js.map → GraphWidget-CWJ4Yb26.js.map} +1 -1
  99. package/dist/{GraphWidget-D3bjqKwr.cjs → GraphWidget-XjxjI3og.cjs} +2 -2
  100. package/dist/{GraphWidget-D3bjqKwr.cjs.map → GraphWidget-XjxjI3og.cjs.map} +1 -1
  101. package/dist/{HorizontalWidget-D83EJ_-6.cjs → HorizontalWidget-BeW4b13V.cjs} +2 -2
  102. package/dist/{HorizontalWidget-D83EJ_-6.cjs.map → HorizontalWidget-BeW4b13V.cjs.map} +1 -1
  103. package/dist/{HorizontalWidget-BtdfnZMK.js → HorizontalWidget-DFAqF95S.js} +2 -2
  104. package/dist/{HorizontalWidget-BtdfnZMK.js.map → HorizontalWidget-DFAqF95S.js.map} +1 -1
  105. package/dist/{HorizontalboxWidget-BsXYMyz7.js → HorizontalboxWidget-CL1xEhDj.js} +5 -5
  106. package/dist/{HorizontalboxWidget-BsXYMyz7.js.map → HorizontalboxWidget-CL1xEhDj.js.map} +1 -1
  107. package/dist/{HorizontalboxWidget-CEIySQlg.cjs → HorizontalboxWidget-DdPv_6qb.cjs} +2 -2
  108. package/dist/{HorizontalboxWidget-CEIySQlg.cjs.map → HorizontalboxWidget-DdPv_6qb.cjs.map} +1 -1
  109. package/dist/{HorizontallineWidget-B-SvqwyU.cjs → HorizontallineWidget-BdWOnioI.cjs} +2 -2
  110. package/dist/{HorizontallineWidget-B-SvqwyU.cjs.map → HorizontallineWidget-BdWOnioI.cjs.map} +1 -1
  111. package/dist/{HorizontallineWidget-DCfxLDB6.js → HorizontallineWidget-DPiADCAy.js} +2 -2
  112. package/dist/{HorizontallineWidget-DCfxLDB6.js.map → HorizontallineWidget-DPiADCAy.js.map} +1 -1
  113. package/dist/{IframeWidget-xzoq2o7Z.js → IframeWidget-BsDu4b17.js} +2 -2
  114. package/dist/{IframeWidget-xzoq2o7Z.js.map → IframeWidget-BsDu4b17.js.map} +1 -1
  115. package/dist/{IframeWidget-c-9N6GGF.cjs → IframeWidget-Z12pG6JT.cjs} +2 -2
  116. package/dist/{IframeWidget-c-9N6GGF.cjs.map → IframeWidget-Z12pG6JT.cjs.map} +1 -1
  117. package/dist/{ImageLoader-Cj6nNt7z.js → ImageLoader-CT4rnwWn.js} +2 -2
  118. package/dist/{ImageLoader-Cj6nNt7z.js.map → ImageLoader-CT4rnwWn.js.map} +1 -1
  119. package/dist/{ImageLoader-DfFljBse.cjs → ImageLoader-CZ0Wx_Ua.cjs} +2 -2
  120. package/dist/{ImageLoader-DfFljBse.cjs.map → ImageLoader-CZ0Wx_Ua.cjs.map} +1 -1
  121. package/dist/{ImageviewerWidget-Cajx4RLs.js → ImageviewerWidget-BQbrz2WL.js} +2 -2
  122. package/dist/{ImageviewerWidget-Cajx4RLs.js.map → ImageviewerWidget-BQbrz2WL.js.map} +1 -1
  123. package/dist/{ImageviewerWidget-ClWuV9To.cjs → ImageviewerWidget-CtJzQn0e.cjs} +2 -2
  124. package/dist/{ImageviewerWidget-ClWuV9To.cjs.map → ImageviewerWidget-CtJzQn0e.cjs.map} +1 -1
  125. package/dist/{InterfacesTab-wj7bhYZ0.cjs → InterfacesTab-A0g0y1n1.cjs} +2 -2
  126. package/dist/{InterfacesTab-wj7bhYZ0.cjs.map → InterfacesTab-A0g0y1n1.cjs.map} +1 -1
  127. package/dist/{InterfacesTab-CWxzXFzp.js → InterfacesTab-COKNyeUu.js} +5 -5
  128. package/dist/{InterfacesTab-CWxzXFzp.js.map → InterfacesTab-COKNyeUu.js.map} +1 -1
  129. package/dist/{LabelWidget-BADrtfQr.js → LabelWidget-D5-IFUYW.js} +2 -2
  130. package/dist/{LabelWidget-BADrtfQr.js.map → LabelWidget-D5-IFUYW.js.map} +1 -1
  131. package/dist/{LabelWidget-Ce37S_Fm.cjs → LabelWidget-rH3SsItK.cjs} +2 -2
  132. package/dist/{LabelWidget-Ce37S_Fm.cjs.map → LabelWidget-rH3SsItK.cjs.map} +1 -1
  133. package/dist/{LabelledWidget-spC_mMaz.cjs → LabelledWidget-Bca_qNSP.cjs} +2 -2
  134. package/dist/{LabelledWidget-spC_mMaz.cjs.map → LabelledWidget-Bca_qNSP.cjs.map} +1 -1
  135. package/dist/{LabelledWidget-DJfuld1A.js → LabelledWidget-Dt9miRtB.js} +4 -4
  136. package/dist/{LabelledWidget-DJfuld1A.js.map → LabelledWidget-Dt9miRtB.js.map} +1 -1
  137. package/dist/{LabelprogressbarWidget-Dua-yQPl.js → LabelprogressbarWidget-BNFgTq4D.js} +4 -4
  138. package/dist/{LabelprogressbarWidget-Dua-yQPl.js.map → LabelprogressbarWidget-BNFgTq4D.js.map} +1 -1
  139. package/dist/{LabelprogressbarWidget-CKPuMKh0.cjs → LabelprogressbarWidget-hyK9Vqsl.cjs} +2 -2
  140. package/dist/{LabelprogressbarWidget-CKPuMKh0.cjs.map → LabelprogressbarWidget-hyK9Vqsl.cjs.map} +1 -1
  141. package/dist/{LabelsparklineWidget-eKiHy9w4.js → LabelsparklineWidget-BByxev6X.js} +4 -4
  142. package/dist/{LabelsparklineWidget-eKiHy9w4.js.map → LabelsparklineWidget-BByxev6X.js.map} +1 -1
  143. package/dist/{LabelsparklineWidget-Cx3t3YKW.cjs → LabelsparklineWidget-BxkxEVwQ.cjs} +2 -2
  144. package/dist/{LabelsparklineWidget-Cx3t3YKW.cjs.map → LabelsparklineWidget-BxkxEVwQ.cjs.map} +1 -1
  145. package/dist/{LabelvalueWidget-BUB3KJDX.js → LabelvalueWidget-BM6L9bVw.js} +4 -4
  146. package/dist/{LabelvalueWidget-BUB3KJDX.js.map → LabelvalueWidget-BM6L9bVw.js.map} +1 -1
  147. package/dist/{LabelvalueWidget-DoOlcQVx.cjs → LabelvalueWidget-DEGmbKMG.cjs} +2 -2
  148. package/dist/{LabelvalueWidget-DoOlcQVx.cjs.map → LabelvalueWidget-DEGmbKMG.cjs.map} +1 -1
  149. package/dist/{LabelvaluedescWidget-cE1Vk7vq.cjs → LabelvaluedescWidget-B7bGqqeO.cjs} +2 -2
  150. package/dist/{LabelvaluedescWidget-cE1Vk7vq.cjs.map → LabelvaluedescWidget-B7bGqqeO.cjs.map} +1 -1
  151. package/dist/{LabelvaluedescWidget-CjvG_UpY.js → LabelvaluedescWidget-DeBRjYXs.js} +5 -5
  152. package/dist/{LabelvaluedescWidget-CjvG_UpY.js.map → LabelvaluedescWidget-DeBRjYXs.js.map} +1 -1
  153. package/dist/{LabelvaluelimitsbarWidget-CtMQd5KQ.js → LabelvaluelimitsbarWidget-CqV0-c3G.js} +4 -4
  154. package/dist/{LabelvaluelimitsbarWidget-CtMQd5KQ.js.map → LabelvaluelimitsbarWidget-CqV0-c3G.js.map} +1 -1
  155. package/dist/{LabelvaluelimitsbarWidget-DpneFMil.cjs → LabelvaluelimitsbarWidget-DzEc9ZZr.cjs} +2 -2
  156. package/dist/{LabelvaluelimitsbarWidget-DpneFMil.cjs.map → LabelvaluelimitsbarWidget-DzEc9ZZr.cjs.map} +1 -1
  157. package/dist/{LabelvaluelimitscolumnWidget-DPeXqlfx.js → LabelvaluelimitscolumnWidget-Bz0PKTIV.js} +5 -5
  158. package/dist/{LabelvaluelimitscolumnWidget-DPeXqlfx.js.map → LabelvaluelimitscolumnWidget-Bz0PKTIV.js.map} +1 -1
  159. package/dist/{LabelvaluelimitscolumnWidget-B1nC50lt.cjs → LabelvaluelimitscolumnWidget-C0-v0q7a.cjs} +2 -2
  160. package/dist/{LabelvaluelimitscolumnWidget-B1nC50lt.cjs.map → LabelvaluelimitscolumnWidget-C0-v0q7a.cjs.map} +1 -1
  161. package/dist/{LabelvaluerangebarWidget-uglFf01b.cjs → LabelvaluerangebarWidget-CWhsb5gm.cjs} +2 -2
  162. package/dist/{LabelvaluerangebarWidget-uglFf01b.cjs.map → LabelvaluerangebarWidget-CWhsb5gm.cjs.map} +1 -1
  163. package/dist/{LabelvaluerangebarWidget-Bsndqu5o.js → LabelvaluerangebarWidget-DKuAJHLm.js} +4 -4
  164. package/dist/{LabelvaluerangebarWidget-Bsndqu5o.js.map → LabelvaluerangebarWidget-DKuAJHLm.js.map} +1 -1
  165. package/dist/{Layout-CpqPTtxp.js → Layout-LSeXBY_W.js} +2 -2
  166. package/dist/{Layout-CpqPTtxp.js.map → Layout-LSeXBY_W.js.map} +1 -1
  167. package/dist/{Layout-BJWisBf5.cjs → Layout-QcVHlWPp.cjs} +2 -2
  168. package/dist/{Layout-BJWisBf5.cjs.map → Layout-QcVHlWPp.cjs.map} +1 -1
  169. package/dist/{LedWidget-Cps5RaQ9.js → LedWidget-CH4Il9R7.js} +4 -4
  170. package/dist/{LedWidget-Cps5RaQ9.js.map → LedWidget-CH4Il9R7.js.map} +1 -1
  171. package/dist/{LedWidget-DjLL2qYw.cjs → LedWidget-CJwBssHl.cjs} +2 -2
  172. package/dist/{LedWidget-DjLL2qYw.cjs.map → LedWidget-CJwBssHl.cjs.map} +1 -1
  173. package/dist/{LimitsBar-CxTRY26H.cjs → LimitsBar-B0O6RMrG.cjs} +2 -2
  174. package/dist/{LimitsBar-CxTRY26H.cjs.map → LimitsBar-B0O6RMrG.cjs.map} +1 -1
  175. package/dist/{LimitsBar-CmUsJfsd.js → LimitsBar-BelAQFD0.js} +2 -2
  176. package/dist/{LimitsBar-CmUsJfsd.js.map → LimitsBar-BelAQFD0.js.map} +1 -1
  177. package/dist/LimitsColor-5sx13hYN.cjs +2 -0
  178. package/dist/LimitsColor-5sx13hYN.cjs.map +1 -0
  179. package/dist/LimitsColor-CBcpB-la.js +43 -0
  180. package/dist/LimitsColor-CBcpB-la.js.map +1 -0
  181. package/dist/{LimitsbarWidget-BGmYIhDO.cjs → LimitsbarWidget--AwjBbtb.cjs} +2 -2
  182. package/dist/{LimitsbarWidget-BGmYIhDO.cjs.map → LimitsbarWidget--AwjBbtb.cjs.map} +1 -1
  183. package/dist/{LimitsbarWidget-DU8L1muK.js → LimitsbarWidget-PkPqlyxL.js} +3 -3
  184. package/dist/{LimitsbarWidget-DU8L1muK.js.map → LimitsbarWidget-PkPqlyxL.js.map} +1 -1
  185. package/dist/LimitscolorWidget-1D2myv8a.cjs +2 -0
  186. package/dist/LimitscolorWidget-1D2myv8a.cjs.map +1 -0
  187. package/dist/LimitscolorWidget-BlA15g4A.js +179 -0
  188. package/dist/LimitscolorWidget-BlA15g4A.js.map +1 -0
  189. package/dist/{LimitscolumnWidget-DlMHRwh3.js → LimitscolumnWidget-PT917BA0.js} +2 -2
  190. package/dist/{LimitscolumnWidget-DlMHRwh3.js.map → LimitscolumnWidget-PT917BA0.js.map} +1 -1
  191. package/dist/{LimitscolumnWidget-D4XsdyiO.cjs → LimitscolumnWidget-_QPf3cUQ.cjs} +2 -2
  192. package/dist/{LimitscolumnWidget-D4XsdyiO.cjs.map → LimitscolumnWidget-_QPf3cUQ.cjs.map} +1 -1
  193. package/dist/{LinegraphWidget-C5o9B_PX.js → LinegraphWidget-BW7kS_6G.js} +4 -4
  194. package/dist/{LinegraphWidget-C5o9B_PX.js.map → LinegraphWidget-BW7kS_6G.js.map} +1 -1
  195. package/dist/{LinegraphWidget-DNLFkuva.cjs → LinegraphWidget-DfXd3959.cjs} +2 -2
  196. package/dist/{LinegraphWidget-DNLFkuva.cjs.map → LinegraphWidget-DfXd3959.cjs.map} +1 -1
  197. package/dist/{MatrixbycolumnsWidget-sXRvVukg.js → MatrixbycolumnsWidget-BGNsZvjv.js} +3 -3
  198. package/dist/{MatrixbycolumnsWidget-sXRvVukg.js.map → MatrixbycolumnsWidget-BGNsZvjv.js.map} +1 -1
  199. package/dist/{MatrixbycolumnsWidget-BX001JXC.cjs → MatrixbycolumnsWidget-oRYGFSEt.cjs} +2 -2
  200. package/dist/{MatrixbycolumnsWidget-BX001JXC.cjs.map → MatrixbycolumnsWidget-oRYGFSEt.cjs.map} +1 -1
  201. package/dist/{MicroservicesTab-h-myrNWR.js → MicroservicesTab-CiEGGavF.js} +3 -3
  202. package/dist/{MicroservicesTab-h-myrNWR.js.map → MicroservicesTab-CiEGGavF.js.map} +1 -1
  203. package/dist/{MicroservicesTab-a-glK9U3.cjs → MicroservicesTab-DvDK2hPW.cjs} +3 -3
  204. package/dist/{MicroservicesTab-a-glK9U3.cjs.map → MicroservicesTab-DvDK2hPW.cjs.map} +1 -1
  205. package/dist/{OpenC3TimePicker-DJFOQgY_.js → OpenC3TimePicker-CkaALgy9.js} +2 -2
  206. package/dist/{OpenC3TimePicker-DJFOQgY_.js.map → OpenC3TimePicker-CkaALgy9.js.map} +1 -1
  207. package/dist/{OpenC3TimePicker-D8a4_nHu.cjs → OpenC3TimePicker-bbdbKTv_.cjs} +2 -2
  208. package/dist/{OpenC3TimePicker-D8a4_nHu.cjs.map → OpenC3TimePicker-bbdbKTv_.cjs.map} +1 -1
  209. package/dist/{Openc3Screen-B2IwESpD.js → Openc3Screen-BnM1bNOB.js} +71 -72
  210. package/dist/{Openc3Screen-B2IwESpD.js.map → Openc3Screen-BnM1bNOB.js.map} +1 -1
  211. package/dist/{Openc3Screen-ERXOSMh1.cjs → Openc3Screen-DoOAFAlJ.cjs} +5 -5
  212. package/dist/{Openc3Screen-ERXOSMh1.cjs.map → Openc3Screen-DoOAFAlJ.cjs.map} +1 -1
  213. package/dist/{OutputDialog-JHy7LBTb.js → OutputDialog-BY-TZNRl.js} +4 -4
  214. package/dist/{OutputDialog-JHy7LBTb.js.map → OutputDialog-BY-TZNRl.js.map} +1 -1
  215. package/dist/{OutputDialog-CP7FRxxv.cjs → OutputDialog-R3Xj3_yw.cjs} +2 -2
  216. package/dist/{OutputDialog-CP7FRxxv.cjs.map → OutputDialog-R3Xj3_yw.cjs.map} +1 -1
  217. package/dist/PackagesTab-2Mu7yvxU.cjs +2 -0
  218. package/dist/{PackagesTab-ONxpjnC_.cjs.map → PackagesTab-2Mu7yvxU.cjs.map} +1 -1
  219. package/dist/{PackagesTab-CfCLRhzT.js → PackagesTab-DGrqIo_Z.js} +10 -10
  220. package/dist/{PackagesTab-CfCLRhzT.js.map → PackagesTab-DGrqIo_Z.js.map} +1 -1
  221. package/dist/PluginsTab-BXjVe_81.js +1740 -0
  222. package/dist/PluginsTab-BXjVe_81.js.map +1 -0
  223. package/dist/PluginsTab-R6i60Pih.cjs +6 -0
  224. package/dist/PluginsTab-R6i60Pih.cjs.map +1 -0
  225. package/dist/{ProgressbarWidget-C1Q4Gt5Q.js → ProgressbarWidget-Cy_ad8mb.js} +2 -2
  226. package/dist/{ProgressbarWidget-C1Q4Gt5Q.js.map → ProgressbarWidget-Cy_ad8mb.js.map} +1 -1
  227. package/dist/{ProgressbarWidget-C0tMl_LR.cjs → ProgressbarWidget-XAy4iHgC.cjs} +2 -2
  228. package/dist/{ProgressbarWidget-C0tMl_LR.cjs.map → ProgressbarWidget-XAy4iHgC.cjs.map} +1 -1
  229. package/dist/{RadiobuttonWidget-Dhcet_r5.js → RadiobuttonWidget-aJBIz45y.js} +2 -2
  230. package/dist/{RadiobuttonWidget-Dhcet_r5.js.map → RadiobuttonWidget-aJBIz45y.js.map} +1 -1
  231. package/dist/{RadiobuttonWidget-SqDhREzf.cjs → RadiobuttonWidget-fAqkUUTb.cjs} +2 -2
  232. package/dist/{RadiobuttonWidget-SqDhREzf.cjs.map → RadiobuttonWidget-fAqkUUTb.cjs.map} +1 -1
  233. package/dist/{RadiogroupWidget-DI1D1BRJ.cjs → RadiogroupWidget-BuYMyBQd.cjs} +2 -2
  234. package/dist/{RadiogroupWidget-DI1D1BRJ.cjs.map → RadiogroupWidget-BuYMyBQd.cjs.map} +1 -1
  235. package/dist/{RadiogroupWidget-CjrXZjdl.js → RadiogroupWidget-DNRlJnPE.js} +2 -2
  236. package/dist/{RadiogroupWidget-CjrXZjdl.js.map → RadiogroupWidget-DNRlJnPE.js.map} +1 -1
  237. package/dist/{RangebarWidget-14uZ2825.cjs → RangebarWidget-gcukfXnM.cjs} +2 -2
  238. package/dist/RangebarWidget-gcukfXnM.cjs.map +1 -0
  239. package/dist/{RangebarWidget-C461bAvq.js → RangebarWidget-h4YItqPF.js} +8 -8
  240. package/dist/RangebarWidget-h4YItqPF.js.map +1 -0
  241. package/dist/{RedisTab-IeIY08Nw.cjs → RedisTab-0V8f-hs1.cjs} +2 -2
  242. package/dist/{RedisTab-IeIY08Nw.cjs.map → RedisTab-0V8f-hs1.cjs.map} +1 -1
  243. package/dist/{RedisTab-BiflYEPO.js → RedisTab-BmZWA0OG.js} +15 -15
  244. package/dist/{RedisTab-BiflYEPO.js.map → RedisTab-BmZWA0OG.js.map} +1 -1
  245. package/dist/{RollupWidget-kmBW8757.js → RollupWidget-CnxDQRQ0.js} +2 -2
  246. package/dist/{RollupWidget-kmBW8757.js.map → RollupWidget-CnxDQRQ0.js.map} +1 -1
  247. package/dist/{RollupWidget-CI3lSfnk.cjs → RollupWidget-ZerASRD3.cjs} +2 -2
  248. package/dist/{RollupWidget-CI3lSfnk.cjs.map → RollupWidget-ZerASRD3.cjs.map} +1 -1
  249. package/dist/{RoutersTab-CZB-Jj_D.cjs → RoutersTab-CY-SmZd4.cjs} +2 -2
  250. package/dist/{RoutersTab-CZB-Jj_D.cjs.map → RoutersTab-CY-SmZd4.cjs.map} +1 -1
  251. package/dist/{RoutersTab-Dpg6xwE9.js → RoutersTab-Db28gKLP.js} +3 -3
  252. package/dist/{RoutersTab-Dpg6xwE9.js.map → RoutersTab-Db28gKLP.js.map} +1 -1
  253. package/dist/{ScriptChooser-BLsPk7_c.js → ScriptChooser-Bl0wisob.js} +182 -128
  254. package/dist/ScriptChooser-Bl0wisob.js.map +1 -0
  255. package/dist/ScriptChooser-CI4lAYZ1.cjs +2 -0
  256. package/dist/ScriptChooser-CI4lAYZ1.cjs.map +1 -0
  257. package/dist/{ScrollwindowWidget-B-ogJ1hO.cjs → ScrollwindowWidget-BJkQ5uX_.cjs} +2 -2
  258. package/dist/{ScrollwindowWidget-B-ogJ1hO.cjs.map → ScrollwindowWidget-BJkQ5uX_.cjs.map} +1 -1
  259. package/dist/{ScrollwindowWidget-DqexVHaY.js → ScrollwindowWidget-DFkTJ2Ue.js} +2 -2
  260. package/dist/{ScrollwindowWidget-DqexVHaY.js.map → ScrollwindowWidget-DFkTJ2Ue.js.map} +1 -1
  261. package/dist/{SecretsTab-LyEVxDfM.cjs → SecretsTab-B8YTrfQ2.cjs} +2 -2
  262. package/dist/{SecretsTab-LyEVxDfM.cjs.map → SecretsTab-B8YTrfQ2.cjs.map} +1 -1
  263. package/dist/{SecretsTab-CqloYezi.js → SecretsTab-DTdVLi0I.js} +4 -4
  264. package/dist/{SecretsTab-CqloYezi.js.map → SecretsTab-DTdVLi0I.js.map} +1 -1
  265. package/dist/{SettingsTab-DN8wG7j8.js → SettingsTab-CnybxvVj.js} +152 -139
  266. package/dist/SettingsTab-CnybxvVj.js.map +1 -0
  267. package/dist/SettingsTab-_SJLhuk0.cjs +3 -0
  268. package/dist/SettingsTab-_SJLhuk0.cjs.map +1 -0
  269. package/dist/{SignalWidget-CBpKkkdh.cjs → SignalWidget-DC7-NIOj.cjs} +2 -2
  270. package/dist/{SignalWidget-CBpKkkdh.cjs.map → SignalWidget-DC7-NIOj.cjs.map} +1 -1
  271. package/dist/{SignalWidget-DHGdWn0D.js → SignalWidget-jYpXSIfD.js} +2 -2
  272. package/dist/{SignalWidget-DHGdWn0D.js.map → SignalWidget-jYpXSIfD.js.map} +1 -1
  273. package/dist/{SimpleTextDialog-CK4Tl4hP.cjs → SimpleTextDialog-DLdHGmmb.cjs} +2 -2
  274. package/dist/{SimpleTextDialog-CK4Tl4hP.cjs.map → SimpleTextDialog-DLdHGmmb.cjs.map} +1 -1
  275. package/dist/{SimpleTextDialog-CP0v1gSj.js → SimpleTextDialog-Dd3BoNG-.js} +2 -2
  276. package/dist/{SimpleTextDialog-CP0v1gSj.js.map → SimpleTextDialog-Dd3BoNG-.js.map} +1 -1
  277. package/dist/{SpacerWidget-DjPk3E9O.cjs → SpacerWidget-BwwxG8k3.cjs} +2 -2
  278. package/dist/{SpacerWidget-DjPk3E9O.cjs.map → SpacerWidget-BwwxG8k3.cjs.map} +1 -1
  279. package/dist/{SpacerWidget-DzUeDtYi.js → SpacerWidget-CUqvml6o.js} +2 -2
  280. package/dist/{SpacerWidget-DzUeDtYi.js.map → SpacerWidget-CUqvml6o.js.map} +1 -1
  281. package/dist/{SparklineWidget-rqphJPpw.cjs → SparklineWidget-05TlKC-x.cjs} +2 -2
  282. package/dist/{SparklineWidget-rqphJPpw.cjs.map → SparklineWidget-05TlKC-x.cjs.map} +1 -1
  283. package/dist/{SparklineWidget-BfUk2lrY.js → SparklineWidget-CVf1TtjV.js} +4 -4
  284. package/dist/{SparklineWidget-BfUk2lrY.js.map → SparklineWidget-CVf1TtjV.js.map} +1 -1
  285. package/dist/{TabbookWidget-CJqXi4kG.js → TabbookWidget-CTUEpDnn.js} +2 -2
  286. package/dist/{TabbookWidget-CJqXi4kG.js.map → TabbookWidget-CTUEpDnn.js.map} +1 -1
  287. package/dist/{TabbookWidget-DMtbO8Lj.cjs → TabbookWidget-oZre4A6Y.cjs} +2 -2
  288. package/dist/{TabbookWidget-DMtbO8Lj.cjs.map → TabbookWidget-oZre4A6Y.cjs.map} +1 -1
  289. package/dist/TargetPacketItemChooser-BvXBVNLj.cjs +2 -0
  290. package/dist/TargetPacketItemChooser-BvXBVNLj.cjs.map +1 -0
  291. package/dist/{TargetPacketItemChooser-DUODHxax.js → TargetPacketItemChooser-CS2Vvi2U.js} +22 -22
  292. package/dist/TargetPacketItemChooser-CS2Vvi2U.js.map +1 -0
  293. package/dist/{TargetsTab-BxVAyeCA.cjs → TargetsTab-Bc7-iav6.cjs} +2 -2
  294. package/dist/{TargetsTab-BxVAyeCA.cjs.map → TargetsTab-Bc7-iav6.cjs.map} +1 -1
  295. package/dist/{TargetsTab-CG8KNOmE.js → TargetsTab-CGv0GwAF.js} +12 -12
  296. package/dist/{TargetsTab-CG8KNOmE.js.map → TargetsTab-CGv0GwAF.js.map} +1 -1
  297. package/dist/{TextboxWidget-BEgAKlC8.js → TextboxWidget-B0Y1W7GP.js} +4 -4
  298. package/dist/{TextboxWidget-BEgAKlC8.js.map → TextboxWidget-B0Y1W7GP.js.map} +1 -1
  299. package/dist/{TextboxWidget-DVg3_YDk.cjs → TextboxWidget-qSbx4xxD.cjs} +2 -2
  300. package/dist/{TextboxWidget-DVg3_YDk.cjs.map → TextboxWidget-qSbx4xxD.cjs.map} +1 -1
  301. package/dist/{TextfieldWidget-C84uT4WC.js → TextfieldWidget-B8TAf9oU.js} +2 -2
  302. package/dist/{TextfieldWidget-C84uT4WC.js.map → TextfieldWidget-B8TAf9oU.js.map} +1 -1
  303. package/dist/{TextfieldWidget-BJpj8zB4.cjs → TextfieldWidget-cCG7BQ25.cjs} +2 -2
  304. package/dist/{TextfieldWidget-BJpj8zB4.cjs.map → TextfieldWidget-cCG7BQ25.cjs.map} +1 -1
  305. package/dist/{TimeWidget-f5fOoYyh.cjs → TimeWidget-DNkhFoZO.cjs} +2 -2
  306. package/dist/{TimeWidget-f5fOoYyh.cjs.map → TimeWidget-DNkhFoZO.cjs.map} +1 -1
  307. package/dist/{TimeWidget-B1C7VXsk.js → TimeWidget-DewVXks0.js} +3 -3
  308. package/dist/{TimeWidget-B1C7VXsk.js.map → TimeWidget-DewVXks0.js.map} +1 -1
  309. package/dist/{TitleWidget-NPq7zAwI.js → TitleWidget-BAq2LGJF.js} +2 -2
  310. package/dist/{TitleWidget-NPq7zAwI.js.map → TitleWidget-BAq2LGJF.js.map} +1 -1
  311. package/dist/{TitleWidget-nTDE0RIC.cjs → TitleWidget-ChGb6BJW.cjs} +2 -2
  312. package/dist/{TitleWidget-nTDE0RIC.cjs.map → TitleWidget-ChGb6BJW.cjs.map} +1 -1
  313. package/dist/ToolsTab-CB_6hFQF.cjs +2 -0
  314. package/dist/ToolsTab-CB_6hFQF.cjs.map +1 -0
  315. package/dist/{ToolsTab-jE3-AcI0.js → ToolsTab-USmbUvDq.js} +247 -231
  316. package/dist/ToolsTab-USmbUvDq.js.map +1 -0
  317. package/dist/{TopBar-knn2yGed.js → TopBar-B4RDkLs-.js} +2 -2
  318. package/dist/{TopBar-knn2yGed.js.map → TopBar-B4RDkLs-.js.map} +1 -1
  319. package/dist/{TopBar-CnMJSCD4.cjs → TopBar-DzL3L4ih.cjs} +2 -2
  320. package/dist/{TopBar-CnMJSCD4.cjs.map → TopBar-DzL3L4ih.cjs.map} +1 -1
  321. package/dist/TsdbTab-0aYlysh5.js +125 -0
  322. package/dist/TsdbTab-0aYlysh5.js.map +1 -0
  323. package/dist/TsdbTab-H64XGfOO.cjs +2 -0
  324. package/dist/TsdbTab-H64XGfOO.cjs.map +1 -0
  325. package/dist/{UpgradeToEnterpriseDialog-Cs663G4x.cjs → UpgradeToEnterpriseDialog-BBRXrLrL.cjs} +2 -2
  326. package/dist/{UpgradeToEnterpriseDialog-Cs663G4x.cjs.map → UpgradeToEnterpriseDialog-BBRXrLrL.cjs.map} +1 -1
  327. package/dist/{UpgradeToEnterpriseDialog-BwWDur-C.js → UpgradeToEnterpriseDialog-DTmnp8xy.js} +2 -2
  328. package/dist/{UpgradeToEnterpriseDialog-BwWDur-C.js.map → UpgradeToEnterpriseDialog-DTmnp8xy.js.map} +1 -1
  329. package/dist/{UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-B75KLE6R.js → UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-CDTSzdb-.js} +3790 -3699
  330. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-CDTSzdb-.js.map +1 -0
  331. package/dist/{UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-BBqfsHYh.cjs → UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-MfH160rD.cjs} +29 -29
  332. package/dist/{UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-BBqfsHYh.cjs.map → UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-MfH160rD.cjs.map} +1 -1
  333. package/dist/VWidget-0KwtSssI.js +191 -0
  334. package/dist/VWidget-0KwtSssI.js.map +1 -0
  335. package/dist/VWidget-SWmlQP30.cjs +2 -0
  336. package/dist/VWidget-SWmlQP30.cjs.map +1 -0
  337. package/dist/{ValueWidget-CpygRYKj.js → ValueWidget-BGNqaaRs.js} +4 -4
  338. package/dist/{ValueWidget-CpygRYKj.js.map → ValueWidget-BGNqaaRs.js.map} +1 -1
  339. package/dist/{ValueWidget-Bzds4cWd.cjs → ValueWidget-BfxZq1LD.cjs} +2 -2
  340. package/dist/{ValueWidget-Bzds4cWd.cjs.map → ValueWidget-BfxZq1LD.cjs.map} +1 -1
  341. package/dist/{ValuelimitsbarWidget-CROYfqTR.js → ValuelimitsbarWidget-B6mH4PdF.js} +4 -4
  342. package/dist/{ValuelimitsbarWidget-CROYfqTR.js.map → ValuelimitsbarWidget-B6mH4PdF.js.map} +1 -1
  343. package/dist/{ValuelimitsbarWidget-CeA4_9vz.cjs → ValuelimitsbarWidget-m5fBewLy.cjs} +2 -2
  344. package/dist/{ValuelimitsbarWidget-CeA4_9vz.cjs.map → ValuelimitsbarWidget-m5fBewLy.cjs.map} +1 -1
  345. package/dist/{ValuelimitscolumnWidget-Vn80PsIX.cjs → ValuelimitscolumnWidget-D_5XZhiD.cjs} +2 -2
  346. package/dist/{ValuelimitscolumnWidget-Vn80PsIX.cjs.map → ValuelimitscolumnWidget-D_5XZhiD.cjs.map} +1 -1
  347. package/dist/{ValuelimitscolumnWidget-PCaulvxr.js → ValuelimitscolumnWidget-DlX90_-6.js} +4 -4
  348. package/dist/{ValuelimitscolumnWidget-PCaulvxr.js.map → ValuelimitscolumnWidget-DlX90_-6.js.map} +1 -1
  349. package/dist/{ValuerangebarWidget-DjFTQ2yf.cjs → ValuerangebarWidget-C3XFFRhf.cjs} +2 -2
  350. package/dist/{ValuerangebarWidget-DjFTQ2yf.cjs.map → ValuerangebarWidget-C3XFFRhf.cjs.map} +1 -1
  351. package/dist/{ValuerangebarWidget-Bn9vuPz4.js → ValuerangebarWidget-C9xyLOJO.js} +4 -4
  352. package/dist/{ValuerangebarWidget-Bn9vuPz4.js.map → ValuerangebarWidget-C9xyLOJO.js.map} +1 -1
  353. package/dist/{VerticalWidget-CW7HqXPz.js → VerticalWidget-0UbbE2g3.js} +2 -2
  354. package/dist/{VerticalWidget-CW7HqXPz.js.map → VerticalWidget-0UbbE2g3.js.map} +1 -1
  355. package/dist/{VerticalWidget-Cw5zklAW.cjs → VerticalWidget-D-U8cue6.cjs} +2 -2
  356. package/dist/{VerticalWidget-Cw5zklAW.cjs.map → VerticalWidget-D-U8cue6.cjs.map} +1 -1
  357. package/dist/{VerticalboxWidget-CLuqkhUX.cjs → VerticalboxWidget-C4nkJhEd.cjs} +2 -2
  358. package/dist/{VerticalboxWidget-CLuqkhUX.cjs.map → VerticalboxWidget-C4nkJhEd.cjs.map} +1 -1
  359. package/dist/{VerticalboxWidget-D12SNEH1.js → VerticalboxWidget-efbeOAKE.js} +5 -5
  360. package/dist/{VerticalboxWidget-D12SNEH1.js.map → VerticalboxWidget-efbeOAKE.js.map} +1 -1
  361. package/dist/{Widget-Cj7mgG8B.js → Widget-CGePksBA.js} +2 -2
  362. package/dist/{Widget-Cj7mgG8B.js.map → Widget-CGePksBA.js.map} +1 -1
  363. package/dist/{Widget-C5yVe7V0.cjs → Widget-D0drYWOT.cjs} +2 -2
  364. package/dist/{Widget-C5yVe7V0.cjs.map → Widget-D0drYWOT.cjs.map} +1 -1
  365. package/dist/components.cjs +2 -2
  366. package/dist/components.cjs.map +1 -1
  367. package/dist/components.js +23 -23
  368. package/dist/components.js.map +1 -1
  369. package/dist/index-BJrYCoCB.js +2550 -0
  370. package/dist/index-BJrYCoCB.js.map +1 -0
  371. package/dist/index-C7Uj4U87.js +1883 -0
  372. package/dist/index-C7Uj4U87.js.map +1 -0
  373. package/dist/index-Cmp6oZpm.cjs +7 -0
  374. package/dist/index-Cmp6oZpm.cjs.map +1 -0
  375. package/dist/index-DqKiZufS.cjs +7 -0
  376. package/dist/index-DqKiZufS.cjs.map +1 -0
  377. package/dist/plugins.cjs +2 -2
  378. package/dist/plugins.cjs.map +1 -1
  379. package/dist/plugins.js +27 -27
  380. package/dist/plugins.js.map +1 -1
  381. package/dist/purify.es-4pyphLiB.cjs +3 -0
  382. package/dist/purify.es-4pyphLiB.cjs.map +1 -0
  383. package/dist/{purify.es-DcWaZU6I.js → purify.es-BPDBzHtc.js} +115 -115
  384. package/dist/purify.es-BPDBzHtc.js.map +1 -0
  385. package/dist/{settings-DRbrVc8H.js → settings-CjmDHCpE.js} +2 -2
  386. package/dist/{settings-DRbrVc8H.js.map → settings-CjmDHCpE.js.map} +1 -1
  387. package/dist/{settings-BAxfkWAJ.cjs → settings-l1j_GGzu.cjs} +2 -2
  388. package/dist/{settings-BAxfkWAJ.cjs.map → settings-l1j_GGzu.cjs.map} +1 -1
  389. package/dist/tools/admin.cjs +1 -6
  390. package/dist/tools/admin.cjs.map +1 -1
  391. package/dist/tools/admin.js +6 -2788
  392. package/dist/tools/admin.js.map +1 -1
  393. package/dist/tools/base.cjs +1 -1
  394. package/dist/tools/base.cjs.map +1 -1
  395. package/dist/tools/base.js +110 -89
  396. package/dist/tools/base.js.map +1 -1
  397. package/dist/tools/calendar.cjs +1 -1
  398. package/dist/tools/calendar.js +1 -1
  399. package/dist/tools/scriptrunner.cjs +8 -8
  400. package/dist/tools/scriptrunner.cjs.map +1 -1
  401. package/dist/tools/scriptrunner.js +1478 -1070
  402. package/dist/tools/scriptrunner.js.map +1 -1
  403. package/dist/vue-common.css +1 -1
  404. package/dist/widgets.cjs +1 -1
  405. package/dist/widgets.js +73 -70
  406. package/dist/widgets.js.map +1 -1
  407. package/package.json +12 -12
  408. package/dist/BarColumn-CB-tgZUT.js.map +0 -1
  409. package/dist/BarColumn-D5XXk4Pw.cjs.map +0 -1
  410. package/dist/DetailsDialog-BI3oNhTn.js.map +0 -1
  411. package/dist/DetailsDialog-fCmZJxvS.cjs +0 -2
  412. package/dist/DetailsDialog-fCmZJxvS.cjs.map +0 -1
  413. package/dist/EventListDialog-BMw8Gl-0.js.map +0 -1
  414. package/dist/EventListDialog-Dn5Kb-n3.cjs +0 -2
  415. package/dist/EventListDialog-Dn5Kb-n3.cjs.map +0 -1
  416. package/dist/FormatvalueWidget-npk9X-15.cjs +0 -2
  417. package/dist/Graph-B2Riixiv.cjs +0 -2
  418. package/dist/Graph-B2Riixiv.cjs.map +0 -1
  419. package/dist/Graph-BdLZrFnQ.js.map +0 -1
  420. package/dist/LimitscolorWidget-CdXYGMdR.cjs +0 -2
  421. package/dist/LimitscolorWidget-CdXYGMdR.cjs.map +0 -1
  422. package/dist/LimitscolorWidget-DRUPC2IF.js +0 -159
  423. package/dist/LimitscolorWidget-DRUPC2IF.js.map +0 -1
  424. package/dist/PackagesTab-ONxpjnC_.cjs +0 -2
  425. package/dist/PluginsTab-BQ0LCHQp.js +0 -1561
  426. package/dist/PluginsTab-BQ0LCHQp.js.map +0 -1
  427. package/dist/PluginsTab-crv4-PWb.cjs +0 -6
  428. package/dist/PluginsTab-crv4-PWb.cjs.map +0 -1
  429. package/dist/RangebarWidget-14uZ2825.cjs.map +0 -1
  430. package/dist/RangebarWidget-C461bAvq.js.map +0 -1
  431. package/dist/ScriptChooser-B6bc-chN.cjs +0 -2
  432. package/dist/ScriptChooser-B6bc-chN.cjs.map +0 -1
  433. package/dist/ScriptChooser-BLsPk7_c.js.map +0 -1
  434. package/dist/SettingsTab-CfJUZWp0.cjs +0 -3
  435. package/dist/SettingsTab-CfJUZWp0.cjs.map +0 -1
  436. package/dist/SettingsTab-DN8wG7j8.js.map +0 -1
  437. package/dist/TargetPacketItemChooser-B8TPlfAu.cjs +0 -2
  438. package/dist/TargetPacketItemChooser-B8TPlfAu.cjs.map +0 -1
  439. package/dist/TargetPacketItemChooser-DUODHxax.js.map +0 -1
  440. package/dist/ToolsTab-DXN-84u5.cjs +0 -2
  441. package/dist/ToolsTab-DXN-84u5.cjs.map +0 -1
  442. package/dist/ToolsTab-jE3-AcI0.js.map +0 -1
  443. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-B75KLE6R.js.map +0 -1
  444. package/dist/VWidget-BU-OM9DB.js +0 -190
  445. package/dist/VWidget-BU-OM9DB.js.map +0 -1
  446. package/dist/VWidget-HIRYll0F.cjs +0 -2
  447. package/dist/VWidget-HIRYll0F.cjs.map +0 -1
  448. package/dist/index-Cq7Gm1QU.cjs +0 -7
  449. package/dist/index-Cq7Gm1QU.cjs.map +0 -1
  450. package/dist/index-D3xlpZgv.js +0 -1794
  451. package/dist/index-D3xlpZgv.js.map +0 -1
  452. package/dist/purify.es-B336bjAn.cjs +0 -3
  453. package/dist/purify.es-B336bjAn.cjs.map +0 -1
  454. package/dist/purify.es-DcWaZU6I.js.map +0 -1
@@ -1,1561 +0,0 @@
1
- import { l as S, p as K } from "./UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-B75KLE6R.js";
2
- import { resolveComponent as l, createElementBlock as x, openBlock as a, Fragment as V, renderSlot as ee, createVNode as n, withCtx as s, createElementVNode as u, toDisplayString as w, normalizeProps as F, guardReactiveProps as B, createBlock as v, createCommentVNode as D, createTextVNode as _, renderList as E, mergeProps as A, normalizeClass as j, withModifiers as H } from "vue";
3
- import { _ as O } from "./CustomIcon-Cg3jCA_l.js";
4
- import "./store-CO68rDJT.js";
5
- import "single-spa";
6
- import { S as te } from "./SimpleTextDialog-CP0v1gSj.js";
7
- import { ModifiedPluginDialog as ne, PluginDialog as ie } from "./tools/admin.js";
8
- import { S as oe } from "./settings-DRbrVc8H.js";
9
- import { f as le, t as se } from "./format-CJYjW-xx.js";
10
- const re = "store_url", z = "https://store.openc3.com", R = {
11
- props: {
12
- id: Number,
13
- name: String,
14
- title: String,
15
- // titleSlug: String,
16
- author: String,
17
- // authorSlug: String,
18
- description: String,
19
- keywords: Array,
20
- img_path: String,
21
- // Set for local plugins
22
- image_url: String,
23
- // Set for app store plugins
24
- licenses: Array,
25
- // rating: Number,
26
- // downloads: Number,
27
- homepage: String,
28
- repository: String,
29
- gem_url: String,
30
- checksum: String
31
- },
32
- data: function() {
33
- return {
34
- _api: new K(),
35
- _storeUrl: "",
36
- imageContents: null
37
- };
38
- },
39
- computed: {
40
- plugin: function() {
41
- return {
42
- id: this.id,
43
- name: this.name,
44
- title: this.title,
45
- // titleSlug: this.titleSlug,
46
- author: this.author,
47
- // authorSlug: this.authorSlug,
48
- description: this.description,
49
- keywords: this.keywords,
50
- img_path: this.img_path,
51
- image_url: this.image_url,
52
- licenses: this.licenses,
53
- // rating: this.rating,
54
- // downloads: this.downloads,
55
- homepage: this.homepage,
56
- repository: this.repository,
57
- gem_url: this.gem_url,
58
- checksum: this.checksum
59
- };
60
- },
61
- imageContentsWithMimeType: function() {
62
- if (this.imageContents) {
63
- const e = {
64
- "image/bmp": [66, 77],
65
- "image/jpeg": [255, 216, 255],
66
- "image/png": [137, 80, 78, 71],
67
- "image/gif": [71, 73, 70, 56],
68
- "image/webp": [82, 73, 70, 70]
69
- }, t = new TextEncoder().encode(globalThis.atob(this.imageContents.slice(0, 6))).slice(1), r = Object.entries(e).find(([g, i]) => i.every((o, d) => o === t[d]));
70
- if (r) {
71
- const [g] = r;
72
- return `data:${g};base64,${this.imageContents}`;
73
- }
74
- }
75
- },
76
- storeLink: function() {
77
- return this.hasStoreListing ? new URL(`/cosmos_plugins/${this.id}`, this._storeUrl) : null;
78
- },
79
- hasStoreListing: function() {
80
- return !!this.id;
81
- },
82
- hasDetails: function() {
83
- return this.hasStoreListing ? !0 : !!this.title && !!this.description;
84
- },
85
- isPluginInstalled: function() {
86
- return !!this.name;
87
- }
88
- },
89
- created: async function() {
90
- try {
91
- this._storeUrl = await this._api.get_setting(re) || z;
92
- } catch {
93
- this._storeUrl = z;
94
- }
95
- if (this.img_path)
96
- try {
97
- const e = new URLSearchParams({
98
- volume: "OPENC3_GEMS_VOLUME",
99
- scope: globalThis.openc3Scope
100
- }), { data: t } = await S.get(
101
- `/openc3-api/storage/download_file/${encodeURIComponent(this.img_path)}?${e}`
102
- );
103
- this.imageContents = t.contents;
104
- } catch {
105
- }
106
- }
107
- }, ae = {
108
- mixins: [R],
109
- props: {
110
- modelValue: Boolean
111
- },
112
- emits: ["triggerInstall", "triggerUninstall", "update:modelValue"],
113
- data() {
114
- return {
115
- showDialog: !1,
116
- showCopiedTooltip: !1
117
- };
118
- },
119
- computed: {
120
- isDialogOpen: {
121
- get: function() {
122
- return this.modelValue || this.showDialog;
123
- },
124
- set: function(e) {
125
- this.showDialog = e, this.$emit("update:modelValue", e);
126
- }
127
- },
128
- formattedStoreLink: function() {
129
- return this._storeUrl.split("://").at(-1);
130
- }
131
- },
132
- methods: {
133
- openDialog: function() {
134
- this.isDialogOpen = !0;
135
- },
136
- closeDialog: function() {
137
- this.isDialogOpen = !1;
138
- },
139
- install: function() {
140
- this.$emit("triggerInstall", this.gemUrl);
141
- },
142
- uninstall: function() {
143
- this.$emit("triggerUninstall", this.gemUrl);
144
- },
145
- copyChecksum: function() {
146
- navigator.clipboard.writeText(this.checksum), this.showCopiedTooltip = !0, setTimeout(() => {
147
- this.showCopiedTooltip = !1;
148
- }, 1e3);
149
- }
150
- }
151
- }, ue = ["textContent"], ce = ["textContent"], pe = { class: "mt-3 text-caption" }, de = {
152
- key: 1,
153
- class: "font-italic"
154
- }, me = { class: "mt-3 text-caption font-italic" };
155
- function ge(e, t, r, g, i, o) {
156
- const d = l("v-spacer"), p = l("v-btn"), c = l("v-tooltip"), k = l("v-toolbar"), P = l("v-card-subtitle"), b = l("v-img"), f = l("v-chip"), C = l("v-text-field"), T = l("v-card-text"), U = l("v-card-actions"), I = l("v-card"), m = l("v-dialog");
157
- return a(), x(V, null, [
158
- ee(e.$slots, "activator", {
159
- props: { onClick: o.openDialog }
160
- }),
161
- n(m, {
162
- modelValue: o.isDialogOpen,
163
- "onUpdate:modelValue": t[2] || (t[2] = (y) => o.isDialogOpen = y),
164
- "max-width": "500"
165
- }, {
166
- default: s(() => [
167
- n(I, null, {
168
- default: s(() => [
169
- n(k, { height: "24" }, {
170
- default: s(() => [
171
- n(d),
172
- u("span", {
173
- textContent: w(e.title)
174
- }, null, 8, ue),
175
- n(d),
176
- n(c, { location: "top" }, {
177
- activator: s(({ props: y }) => [
178
- u("div", F(B(y)), [
179
- n(p, {
180
- href: e.storeLink,
181
- target: "_blank",
182
- icon: "mdi-open-in-new",
183
- size: "small",
184
- variant: "plain"
185
- }, null, 8, ["href"])
186
- ], 16)
187
- ]),
188
- default: s(() => [
189
- u("span", null, " View at " + w(o.formattedStoreLink), 1)
190
- ]),
191
- _: 1
192
- }),
193
- n(p, {
194
- icon: "mdi-close-box",
195
- variant: "text",
196
- density: "compact",
197
- onClick: o.closeDialog
198
- }, null, 8, ["onClick"])
199
- ]),
200
- _: 1
201
- }),
202
- n(P, { class: "d-flex align-center justify-content-space-between" }, {
203
- default: s(() => [
204
- u("div", null, w(e.author), 1)
205
- ]),
206
- _: 1
207
- }),
208
- n(T, null, {
209
- default: s(() => [
210
- e.image_url ? (a(), v(b, {
211
- key: 0,
212
- src: e.image_url
213
- }, null, 8, ["src"])) : D("", !0),
214
- e.imageContentsWithMimeType ? (a(), v(b, {
215
- key: 1,
216
- src: e.imageContentsWithMimeType
217
- }, null, 8, ["src"])) : D("", !0),
218
- u("div", {
219
- class: "mt-3",
220
- textContent: w(e.description)
221
- }, null, 8, ce),
222
- u("div", pe, [
223
- t[3] || (t[3] = _(" Keywords: ", -1)),
224
- e.keywords ? (a(!0), x(V, { key: 0 }, E(e.keywords, (y) => (a(), v(f, {
225
- key: y,
226
- variant: "flat",
227
- color: "primary",
228
- size: "x-small",
229
- class: "ml-1"
230
- }, {
231
- default: s(() => [
232
- _(w(y), 1)
233
- ]),
234
- _: 2
235
- }, 1024))), 128)) : (a(), x("span", de, " none "))
236
- ]),
237
- u("div", me, [
238
- t[4] || (t[4] = _(" Licenses: ", -1)),
239
- (a(!0), x(V, null, E(e.licenses, (y) => (a(), v(f, {
240
- key: y,
241
- size: "x-small",
242
- class: "ml-1"
243
- }, {
244
- default: s(() => [
245
- _(w(y), 1)
246
- ]),
247
- _: 2
248
- }, 1024))), 128))
249
- ]),
250
- n(C, {
251
- modelValue: e.checksum,
252
- "onUpdate:modelValue": t[1] || (t[1] = (y) => e.checksum = y),
253
- class: "mt-3",
254
- label: "SHA256",
255
- variant: "solo",
256
- density: "compact",
257
- "hide-details": "",
258
- readonly: ""
259
- }, {
260
- append: s(() => [
261
- n(c, {
262
- modelValue: i.showCopiedTooltip,
263
- "onUpdate:modelValue": t[0] || (t[0] = (y) => i.showCopiedTooltip = y),
264
- location: "top",
265
- "open-on-hover": !1
266
- }, {
267
- activator: s(({ props: y }) => [
268
- n(p, A(y, {
269
- icon: "mdi-content-copy",
270
- variant: "text",
271
- density: "compact",
272
- onClick: o.copyChecksum
273
- }), null, 16, ["onClick"])
274
- ]),
275
- default: s(() => [
276
- t[5] || (t[5] = u("span", null, "Copied!", -1))
277
- ]),
278
- _: 1
279
- }, 8, ["modelValue"])
280
- ]),
281
- _: 1
282
- }, 8, ["modelValue"])
283
- ]),
284
- _: 1
285
- }),
286
- n(U, { class: "justify-start px-6" }, {
287
- default: s(() => [
288
- e.isPluginInstalled ? (a(), v(p, {
289
- key: 0,
290
- text: "Uninstall",
291
- "append-icon": "mdi-puzzle-remove",
292
- variant: "outlined",
293
- color: "red",
294
- onClick: o.uninstall
295
- }, null, 8, ["onClick"])) : (a(), v(p, {
296
- key: 1,
297
- text: "Install",
298
- "append-icon": "mdi-puzzle-plus",
299
- variant: "elevated",
300
- onClick: o.install
301
- }, null, 8, ["onClick"])),
302
- e.repository ? (a(), v(p, {
303
- key: 2,
304
- text: "Repository",
305
- "append-icon": "mdi-open-in-new",
306
- variant: "outlined",
307
- href: e.repository,
308
- target: "_blank"
309
- }, null, 8, ["href"])) : D("", !0),
310
- e.homepage ? (a(), v(p, {
311
- key: 3,
312
- text: "Homepage",
313
- "append-icon": "mdi-open-in-new",
314
- variant: "outlined",
315
- href: e.homepage,
316
- target: "_blank"
317
- }, null, 8, ["href"])) : D("", !0)
318
- ]),
319
- _: 1
320
- })
321
- ]),
322
- _: 1
323
- })
324
- ]),
325
- _: 1
326
- }, 8, ["modelValue"])
327
- ], 64);
328
- }
329
- const q = /* @__PURE__ */ O(ae, [["render", ge]]), he = {
330
- components: {
331
- PluginDetailsDialog: q
332
- },
333
- mixins: [R],
334
- emits: ["triggerInstall"],
335
- methods: {
336
- install: function() {
337
- this.$emit("triggerInstall", this.plugin);
338
- }
339
- }
340
- }, fe = ["textContent"];
341
- function _e(e, t, r, g, i, o) {
342
- const d = l("v-card-title"), p = l("v-card-subtitle"), c = l("v-img"), k = l("v-card-text"), P = l("v-spacer"), b = l("v-btn"), f = l("v-card-actions"), C = l("v-card"), T = l("plugin-details-dialog");
343
- return a(), v(T, A(e.plugin, { onTriggerInstall: o.install }), {
344
- activator: s(({ props: U }) => [
345
- n(C, A(U, {
346
- height: "350",
347
- class: "d-flex flex-column"
348
- }), {
349
- default: s(() => [
350
- n(d, { class: "d-flex align-center justify-content-space-between" }, {
351
- default: s(() => [
352
- _(w(e.title), 1)
353
- ]),
354
- _: 1
355
- }),
356
- n(p, { class: "d-flex align-center justify-content-space-between" }, {
357
- default: s(() => [
358
- u("div", null, w(e.author), 1)
359
- ]),
360
- _: 1
361
- }),
362
- n(k, null, {
363
- default: s(() => [
364
- e.image_url ? (a(), v(c, {
365
- key: 0,
366
- src: e.image_url,
367
- "max-height": "160"
368
- }, null, 8, ["src"])) : D("", !0),
369
- u("div", {
370
- class: j({
371
- "truncate-description": !0,
372
- "truncate-2": !!e.image_url,
373
- "truncate-10": !e.image_url
374
- }),
375
- textContent: w(e.description)
376
- }, null, 10, fe)
377
- ]),
378
- _: 1
379
- }),
380
- n(P),
381
- n(f, { class: "flex-wrap" }, {
382
- default: s(() => [
383
- n(b, {
384
- text: "Install",
385
- "append-icon": "mdi-puzzle-plus",
386
- variant: "elevated",
387
- onClick: H(o.install, ["stop"])
388
- }, null, 8, ["onClick"])
389
- ]),
390
- _: 1
391
- })
392
- ]),
393
- _: 1
394
- }, 16)
395
- ]),
396
- _: 1
397
- }, 16, ["onTriggerInstall"]);
398
- }
399
- const ve = /* @__PURE__ */ O(he, [["render", _e], ["__scopeId", "data-v-85c63500"]]), L = "store_url", N = "store_api_key", M = "DEFAULT", we = "https://store.openc3.com", ye = {
400
- mixins: [oe],
401
- props: {
402
- modelValue: Boolean
403
- },
404
- emits: ["update:modelValue", "update:storeUrl"],
405
- data() {
406
- return {
407
- showDialog: !1,
408
- storeUrl: "",
409
- apiKey: null,
410
- isEnterprise: !1,
411
- showApiKeyAlert: !1,
412
- suppressApiKeyAlert: !1,
413
- rules: {
414
- required: (e) => !!e || "Required",
415
- url: (e) => {
416
- try {
417
- new URL(e);
418
- } catch {
419
- return "Not a valid URL";
420
- }
421
- return !0;
422
- }
423
- }
424
- };
425
- },
426
- computed: {
427
- accountSettingsUrl: function() {
428
- const e = this.storeUrl.replace(
429
- "host.docker.internal",
430
- "localhost"
431
- );
432
- return new URL("account", e);
433
- }
434
- },
435
- watch: {
436
- apiKey: function(e) {
437
- this.checkEnterpriseKey();
438
- },
439
- isEnterprise: function(e) {
440
- this.checkEnterpriseKey();
441
- },
442
- suppressApiKeyAlert: function(e) {
443
- localStorage.setItem("pluginStore.suppressApiKeyAlert", e);
444
- },
445
- modelValue: function(e) {
446
- e && (this.showDialog = e);
447
- },
448
- showDialog: function(e) {
449
- e || this.$emit("update:modelValue", e);
450
- }
451
- },
452
- created: function() {
453
- S.get("/openc3-api/info").then(({ data: e }) => {
454
- this.isEnterprise = e.enterprise;
455
- }), this.loadSetting(L, { scope: M }), this.loadSetting(N, { scope: M }), this.$emit("update:storeUrl", this.storeUrl);
456
- },
457
- methods: {
458
- checkEnterpriseKey: function() {
459
- this.isEnterprise && this.apiKey === "" && this.openApiKeyAlert();
460
- },
461
- openApiKeyAlert: function() {
462
- localStorage.getItem("pluginStore.suppressApiKeyAlert") !== "true" && (this.showApiKeyAlert = !0);
463
- },
464
- closeApiKeyAlert: function() {
465
- this.showApiKeyAlert = !1;
466
- },
467
- save: function() {
468
- this.saveSetting(L, this.storeUrl, {
469
- scope: M
470
- }), this.saveSetting(N, this.apiKey, {
471
- scope: M
472
- }), this.$emit("update:storeUrl", this.storeUrl), this.showDialog = !1;
473
- },
474
- parseSetting: function(e, { setting: t }) {
475
- switch (t) {
476
- case L:
477
- this.storeUrl = e || we;
478
- break;
479
- case N:
480
- this.apiKey = e || "";
481
- break;
482
- }
483
- }
484
- }
485
- }, xe = ["href"];
486
- function Pe(e, t, r, g, i, o) {
487
- const d = l("v-spacer"), p = l("v-toolbar"), c = l("v-alert"), k = l("v-text-field"), P = l("v-card-text"), b = l("v-btn"), f = l("v-card-actions"), C = l("v-card"), T = l("v-dialog"), U = l("v-icon"), I = l("v-checkbox");
488
- return a(), x(V, null, [
489
- n(T, {
490
- modelValue: i.showDialog,
491
- "onUpdate:modelValue": t[5] || (t[5] = (m) => i.showDialog = m),
492
- width: "600"
493
- }, {
494
- default: s(() => [
495
- n(p, { height: "24" }, {
496
- default: s(() => [
497
- n(d),
498
- t[8] || (t[8] = u("span", null, "Plugin Store Settings", -1)),
499
- n(d)
500
- ]),
501
- _: 1
502
- }),
503
- n(C, { class: "pa-3" }, {
504
- default: s(() => [
505
- n(c, {
506
- modelValue: e.errorLoading,
507
- "onUpdate:modelValue": t[0] || (t[0] = (m) => e.errorLoading = m),
508
- type: "error",
509
- closable: "",
510
- density: "compact"
511
- }, {
512
- default: s(() => [
513
- _(" Error loading previous configuration due to " + w(e.errorText), 1)
514
- ]),
515
- _: 1
516
- }, 8, ["modelValue"]),
517
- n(c, {
518
- modelValue: e.errorSaving,
519
- "onUpdate:modelValue": t[1] || (t[1] = (m) => e.errorSaving = m),
520
- type: "error",
521
- closable: "",
522
- density: "compact"
523
- }, {
524
- default: s(() => [
525
- _(" Error saving due to " + w(e.errorText), 1)
526
- ]),
527
- _: 1
528
- }, 8, ["modelValue"]),
529
- n(c, {
530
- modelValue: e.successSaving,
531
- "onUpdate:modelValue": t[2] || (t[2] = (m) => e.successSaving = m),
532
- type: "success",
533
- closable: "",
534
- density: "compact"
535
- }, {
536
- default: s(() => [...t[9] || (t[9] = [
537
- _(" Saved! ", -1)
538
- ])]),
539
- _: 1
540
- }, 8, ["modelValue"]),
541
- n(P, null, {
542
- default: s(() => [
543
- n(k, {
544
- modelValue: i.storeUrl,
545
- "onUpdate:modelValue": t[3] || (t[3] = (m) => i.storeUrl = m),
546
- label: "Store URL",
547
- rules: [i.rules.required, i.rules.url]
548
- }, null, 8, ["modelValue", "rules"]),
549
- n(k, {
550
- modelValue: i.apiKey,
551
- "onUpdate:modelValue": t[4] || (t[4] = (m) => i.apiKey = m),
552
- type: "password",
553
- label: "API Key"
554
- }, null, 8, ["modelValue"])
555
- ]),
556
- _: 1
557
- }),
558
- n(f, null, {
559
- default: s(() => [
560
- n(b, {
561
- color: "success",
562
- variant: "text",
563
- text: "Save",
564
- "data-test": "save-store-settings-btn",
565
- onClick: o.save
566
- }, null, 8, ["onClick"])
567
- ]),
568
- _: 1
569
- })
570
- ]),
571
- _: 1
572
- })
573
- ]),
574
- _: 1
575
- }, 8, ["modelValue"]),
576
- n(T, {
577
- modelValue: i.showApiKeyAlert,
578
- "onUpdate:modelValue": t[7] || (t[7] = (m) => i.showApiKeyAlert = m)
579
- }, {
580
- default: s(() => [
581
- n(C, { class: "pa-3" }, {
582
- default: s(() => [
583
- n(P, { class: "pb-0" }, {
584
- default: s(() => [
585
- t[11] || (t[11] = _(" You're using COSMOS Enterprise, but you haven't set an OpenC3 Store API key yet. You must set this to access Enterprise plugins. ", -1)),
586
- t[12] || (t[12] = u("br", null, null, -1)),
587
- t[13] || (t[13] = u("br", null, null, -1)),
588
- t[14] || (t[14] = _(" Visit the ", -1)),
589
- u("a", {
590
- href: o.accountSettingsUrl,
591
- target: "_blank"
592
- }, [
593
- t[10] || (t[10] = _(" OpenC3 Store account settings", -1)),
594
- n(U, {
595
- icon: "mdi-open-in-new",
596
- size: "x-small"
597
- })
598
- ], 8, xe),
599
- t[15] || (t[15] = _(" to generate an API key. Then, return here and open the Plugin Store settings with the ", -1)),
600
- n(U, {
601
- icon: "mdi-cog",
602
- size: "small"
603
- }),
604
- t[16] || (t[16] = _(" icon and paste your API key into the API key field. ", -1))
605
- ]),
606
- _: 1
607
- }),
608
- n(f, null, {
609
- default: s(() => [
610
- n(I, {
611
- modelValue: i.suppressApiKeyAlert,
612
- "onUpdate:modelValue": t[6] || (t[6] = (m) => i.suppressApiKeyAlert = m),
613
- class: "px-3",
614
- label: "Don't show this message again",
615
- "hide-details": ""
616
- }, null, 8, ["modelValue"]),
617
- n(b, {
618
- variant: "elevated",
619
- text: "OK",
620
- onClick: o.closeApiKeyAlert
621
- }, null, 8, ["onClick"])
622
- ]),
623
- _: 1
624
- })
625
- ]),
626
- _: 1
627
- })
628
- ]),
629
- _: 1
630
- }, 8, ["modelValue"])
631
- ], 64);
632
- }
633
- const ke = /* @__PURE__ */ O(ye, [["render", Pe]]), be = "https://store.openc3.com", Ce = {
634
- components: {
635
- PluginCard: ve,
636
- PluginStoreSettingsDialog: ke
637
- },
638
- emits: ["close", "triggerInstall"],
639
- data() {
640
- return {
641
- api: new K(),
642
- search: "",
643
- showSettingsDialog: !1,
644
- plugins: [],
645
- storeError: null,
646
- storeUrl: be
647
- };
648
- },
649
- computed: {
650
- filteredPlugins: function() {
651
- let e = this.plugins;
652
- return this.search.length && (e = e.filter(
653
- (t) => t.title.toLowerCase().includes(this.search.toLowerCase())
654
- )), e;
655
- },
656
- formattedStoreUrl: function() {
657
- return this.storeUrl.split("://").at(-1);
658
- }
659
- },
660
- mounted: function() {
661
- this.fetchPluginStoreData();
662
- },
663
- methods: {
664
- fetchPluginStoreData: function() {
665
- S.get("/openc3-api/pluginstore").then(({ data: e }) => {
666
- if (e.error) {
667
- const { title: t, body: r } = e;
668
- this.storeError = { title: t, body: r }, this.plugins = [];
669
- } else
670
- this.storeError = null, this.plugins = e;
671
- });
672
- },
673
- close: function() {
674
- this.$emit("close");
675
- },
676
- install: function(e) {
677
- this.$emit("triggerInstall", e), this.close();
678
- },
679
- openSettings: function() {
680
- this.showSettingsDialog = !0;
681
- },
682
- updatePluginStore: function(e) {
683
- this.storeUrl = e, this.api.update_plugin_store().then((t) => {
684
- this.fetchPluginStoreData();
685
- });
686
- }
687
- }
688
- }, Se = { class: "d-flex justify-content-space-between" }, Te = { class: "d-inline-flex align-center w-100" };
689
- function De(e, t, r, g, i, o) {
690
- const d = l("v-spacer"), p = l("v-btn"), c = l("v-tooltip"), k = l("v-text-field"), P = l("v-alert"), b = l("plugin-card"), f = l("v-col"), C = l("v-row"), T = l("v-container"), U = l("v-sheet"), I = l("plugin-store-settings-dialog");
691
- return a(), x(V, null, [
692
- n(U, {
693
- class: "pb-11 pt-8 px-8",
694
- height: "100%"
695
- }, {
696
- default: s(() => [
697
- u("div", Se, [
698
- t[2] || (t[2] = u("div", null, [
699
- u("div", { class: "text-h3 mb-3" }, "OpenC3 Plugin Store"),
700
- u("div", { class: "text-subtitle-1" }, " Browse plugins made by OpenC3 and the COSMOS community ")
701
- ], -1)),
702
- n(d),
703
- n(p, {
704
- icon: "mdi-cog",
705
- variant: "text",
706
- onClick: o.openSettings
707
- }, null, 8, ["onClick"]),
708
- n(c, { location: "top" }, {
709
- activator: s(({ props: m }) => [
710
- u("div", F(B(m)), [
711
- n(p, {
712
- href: i.storeUrl,
713
- target: "_blank",
714
- icon: "mdi-open-in-new",
715
- variant: "text",
716
- class: "mx-2"
717
- }, null, 8, ["href"])
718
- ], 16)
719
- ]),
720
- default: s(() => [
721
- u("span", null, " Open " + w(o.formattedStoreUrl), 1)
722
- ]),
723
- _: 1
724
- }),
725
- n(p, {
726
- icon: "mdi-close",
727
- variant: "text",
728
- onClick: o.close
729
- }, null, 8, ["onClick"])
730
- ]),
731
- u("div", Te, [
732
- n(k, {
733
- modelValue: i.search,
734
- "onUpdate:modelValue": t[0] || (t[0] = (m) => i.search = m),
735
- label: "Search",
736
- "prepend-inner-icon": "mdi-magnify",
737
- clearable: "",
738
- variant: "outlined",
739
- density: "compact",
740
- "single-line": "",
741
- "hide-details": "",
742
- "data-test": "search-plugin-store"
743
- }, null, 8, ["modelValue"])
744
- ]),
745
- n(d),
746
- t[3] || (t[3] = u("span", { class: "" }, " Click on a plugin to see more information about it ", -1)),
747
- i.storeError ? (a(), v(P, {
748
- key: 0,
749
- class: "mt-6",
750
- color: "error",
751
- title: i.storeError.title,
752
- text: i.storeError.body
753
- }, null, 8, ["title", "text"])) : (a(), v(T, { key: 1 }, {
754
- default: s(() => [
755
- n(C, null, {
756
- default: s(() => [
757
- (a(!0), x(V, null, E(o.filteredPlugins, (m) => (a(), v(f, {
758
- key: m.id,
759
- cols: "4"
760
- }, {
761
- default: s(() => [
762
- n(b, A({ ref_for: !0 }, m, { onTriggerInstall: o.install }), null, 16, ["onTriggerInstall"])
763
- ]),
764
- _: 2
765
- }, 1024))), 128))
766
- ]),
767
- _: 1
768
- })
769
- ]),
770
- _: 1
771
- }))
772
- ]),
773
- _: 1
774
- }),
775
- n(I, {
776
- modelValue: i.showSettingsDialog,
777
- "onUpdate:modelValue": t[1] || (t[1] = (m) => i.showSettingsDialog = m),
778
- "onUpdate:storeUrl": o.updatePluginStore
779
- }, null, 8, ["modelValue", "onUpdate:storeUrl"])
780
- ], 64);
781
- }
782
- const Ue = /* @__PURE__ */ O(Ce, [["render", De]]), Ve = {
783
- components: {
784
- PluginDetailsDialog: q
785
- },
786
- mixins: [R],
787
- props: {
788
- targets: {
789
- type: Array,
790
- default: () => []
791
- },
792
- isModified: Boolean,
793
- microservices: {
794
- type: Object,
795
- default: () => ({})
796
- }
797
- },
798
- emits: ["edit", "delete", "upgrade"],
799
- data() {
800
- return {
801
- showCard: !1
802
- };
803
- },
804
- computed: {
805
- displayTitle: function() {
806
- return this.title ? this.title : this.name.replace(/^openc3-cosmos-/, "").replace(/-?\d+\.\d+\.\d+(?:\.pre\.beta\d+\.\d+)?\.gem(?:__\d+)?$/, "");
807
- },
808
- getMicroservicesForPlugin: function() {
809
- const e = [];
810
- for (const [t, r] of Object.entries(
811
- this.microservices
812
- ))
813
- r.plugin === this.name && e.push(t);
814
- return e;
815
- },
816
- microserviceCount: function() {
817
- return this.getMicroservicesForPlugin.length;
818
- }
819
- },
820
- methods: {
821
- openDetails: function() {
822
- this.hasDetails && (this.showCard = !0);
823
- },
824
- downloadPlugin: function() {
825
- Api.post(`/openc3-api/packages/${this.name}/download`).then(
826
- (e) => {
827
- const t = window.atob(e.data.contents), r = new Uint8Array(t.length);
828
- for (let o = 0; o < t.length; ++o)
829
- r[o] = t.charCodeAt(o);
830
- const g = new Blob([r], { type: "application/zip" }), i = document.createElement("a");
831
- i.href = URL.createObjectURL(g), i.setAttribute("download", e.data.filename), i.click();
832
- }
833
- );
834
- },
835
- downloadTarget: function(e) {
836
- Api.post(`/openc3-api/targets/${e}/download`).then((t) => {
837
- const r = window.atob(t.data.contents), g = new Uint8Array(r.length);
838
- for (let d = 0; d < r.length; ++d)
839
- g[d] = r.charCodeAt(d);
840
- const i = new Blob([g], { type: "application/zip" }), o = document.createElement("a");
841
- o.href = URL.createObjectURL(i), o.setAttribute("download", t.data.filename), o.click();
842
- });
843
- },
844
- edit: function() {
845
- this.$emit("edit");
846
- },
847
- upgrade: function() {
848
- this.$emit("upgrade");
849
- },
850
- viewMicroservices: function() {
851
- const e = this.getMicroservicesForPlugin.join(",");
852
- this.$router.push({
853
- path: "/tools/admin/microservices",
854
- query: { services: e }
855
- });
856
- },
857
- deletePrompt: function() {
858
- this.showCard = !1, this.$emit("delete");
859
- }
860
- }
861
- }, Ae = ["textContent"], Ie = { class: "text-subtitle-2 v-list-item-subtitle pl-0" }, Oe = { key: 0 }, Ee = ["onClick", "textContent"], Me = ["textContent"];
862
- function Le(e, t, r, g, i, o) {
863
- const d = l("v-img"), p = l("v-icon"), c = l("v-list-item"), k = l("v-list"), P = l("v-menu"), b = l("plugin-details-dialog");
864
- return a(), x(V, null, [
865
- u("tr", {
866
- class: j({ "cursor-pointer": e.hasDetails }),
867
- "data-test": "plugin-list-item"
868
- }, [
869
- u("td", null, [
870
- e.imageContentsWithMimeType ? (a(), v(d, {
871
- key: 0,
872
- src: e.imageContentsWithMimeType,
873
- "max-height": "56",
874
- "min-width": "56"
875
- }, null, 8, ["src"])) : D("", !0)
876
- ]),
877
- u("td", null, [
878
- u("div", {
879
- class: "text-h6",
880
- onClick: t[0] || (t[0] = (...f) => o.openDetails && o.openDetails(...f)),
881
- textContent: w(o.displayTitle)
882
- }, null, 8, Ae),
883
- u("div", Ie, [
884
- r.isModified ? (a(), x(V, { key: 0 }, [
885
- _(" * ")
886
- ], 64)) : D("", !0),
887
- _(" " + w(e.name), 1)
888
- ]),
889
- r.targets?.length ? (a(), x("div", Oe, [
890
- (a(!0), x(V, null, E(r.targets, (f, C) => (a(), x("span", {
891
- key: C,
892
- class: "mr-2"
893
- }, [
894
- f.modified ? (a(), x("a", {
895
- key: 0,
896
- style: { cursor: "pointer" },
897
- onClick: H((T) => o.downloadTarget(f.name), ["prevent"]),
898
- textContent: w(f.name)
899
- }, null, 8, Ee)) : (a(), x("span", {
900
- key: 1,
901
- textContent: w(f.name)
902
- }, null, 8, Me))
903
- ]))), 128))
904
- ])) : D("", !0)
905
- ]),
906
- u("td", null, [
907
- n(P, null, {
908
- activator: s(({ props: f }) => [
909
- n(p, A(f, {
910
- icon: "mdi-dots-horizontal",
911
- "data-test": "plugin-actions"
912
- }), null, 16)
913
- ]),
914
- default: s(() => [
915
- n(k, null, {
916
- default: s(() => [
917
- n(c, {
918
- title: "Download",
919
- "prepend-icon": "mdi-download",
920
- "data-test": "download-plugin",
921
- onClick: o.downloadPlugin
922
- }, null, 8, ["onClick"]),
923
- n(c, {
924
- title: "Edit Details",
925
- "prepend-icon": "mdi-pencil",
926
- "data-test": "edit-plugin",
927
- onClick: o.edit
928
- }, null, 8, ["onClick"]),
929
- n(c, {
930
- title: "Upgrade",
931
- "prepend-icon": "mdi-update",
932
- "data-test": "upgrade-plugin",
933
- onClick: o.upgrade
934
- }, null, 8, ["onClick"]),
935
- n(c, {
936
- title: `View Microservices (${o.microserviceCount})`,
937
- "prepend-icon": "mdi-tab",
938
- "data-test": "view-microservices",
939
- onClick: o.viewMicroservices
940
- }, null, 8, ["title", "onClick"]),
941
- n(c, {
942
- title: "Delete",
943
- "prepend-icon": "mdi-delete",
944
- "data-test": "delete-plugin",
945
- onClick: o.deletePrompt
946
- }, null, 8, ["onClick"])
947
- ]),
948
- _: 1
949
- })
950
- ]),
951
- _: 1
952
- })
953
- ])
954
- ], 2),
955
- n(b, A({
956
- modelValue: i.showCard,
957
- "onUpdate:modelValue": t[1] || (t[1] = (f) => i.showCard = f)
958
- }, e.plugin, { onTriggerUninstall: o.deletePrompt }), null, 16, ["modelValue", "onTriggerUninstall"])
959
- ], 64);
960
- }
961
- const Ne = /* @__PURE__ */ O(Ve, [["render", Le]]), Ke = {
962
- components: {
963
- PluginListItem: Ne
964
- },
965
- props: {
966
- plugins: {
967
- type: Array,
968
- required: !0
969
- },
970
- targets: {
971
- type: Object,
972
- required: !0
973
- },
974
- showDefaultTools: {
975
- type: Boolean,
976
- default: !1
977
- },
978
- defaultPlugins: {
979
- type: Array,
980
- required: !0
981
- }
982
- },
983
- emits: ["edit", "delete", "upgrade"],
984
- data() {
985
- return {
986
- showPluginDetails: !1,
987
- detailPlugin: null,
988
- microservices: {}
989
- };
990
- },
991
- computed: {
992
- shownPlugins() {
993
- const e = [], t = [];
994
- return this.plugins.forEach((r) => {
995
- const o = r.name.split("__")[0].split("-").slice(0, -1).join("-");
996
- this.defaultPlugins.includes(o) ? t.push(r) : e.push(r);
997
- }), e.sort(
998
- (r, g) => r.name < g.name ? -1 : r.name > g.name ? 1 : 0
999
- ), this.showDefaultTools ? (t.sort(
1000
- (r, g) => r.name < g.name ? -1 : r.name > g.name ? 1 : 0
1001
- ), e.concat(t)) : e;
1002
- }
1003
- },
1004
- mounted() {
1005
- this.fetchMicroservices();
1006
- },
1007
- methods: {
1008
- showDetails: function(e) {
1009
- this.detailPlugin = e, this.showPluginDetails = !0;
1010
- },
1011
- pluginTargets: function(e) {
1012
- let t = [];
1013
- for (const r in this.targets)
1014
- this.targets[r].plugin === e && t.push(this.targets[r]);
1015
- return t;
1016
- },
1017
- isModified: function(e) {
1018
- return Object.entries(this.targets).some(([t, r]) => r.plugin === e && r.modified === !0);
1019
- },
1020
- editPlugin: function(e) {
1021
- this.$emit("edit", e);
1022
- },
1023
- upgradePlugin(e) {
1024
- this.$emit("upgrade", e);
1025
- },
1026
- deletePrompt: function(e) {
1027
- this.$emit("delete", e);
1028
- },
1029
- fetchMicroservices: function() {
1030
- S.get("/openc3-api/microservices/all").then((e) => {
1031
- this.microservices = e.data;
1032
- });
1033
- }
1034
- }
1035
- };
1036
- function je(e, t, r, g, i, o) {
1037
- const d = l("plugin-list-item"), p = l("v-data-table");
1038
- return a(), v(p, {
1039
- headers: [],
1040
- items: o.shownPlugins,
1041
- density: "compact",
1042
- class: "list",
1043
- "data-test": "plugin-list"
1044
- }, {
1045
- item: s(({ item: c }) => [
1046
- n(d, A(c, {
1047
- targets: o.pluginTargets(c.name),
1048
- "is-modified": o.isModified(c.name),
1049
- microservices: i.microservices,
1050
- onEdit: () => o.editPlugin(c.name),
1051
- onUpgrade: () => o.upgradePlugin(c.name),
1052
- onDelete: () => o.deletePrompt(c.name)
1053
- }), null, 16, ["targets", "is-modified", "microservices", "onEdit", "onUpgrade", "onDelete"])
1054
- ]),
1055
- _: 1
1056
- }, 8, ["items"]);
1057
- }
1058
- const Re = /* @__PURE__ */ O(Ke, [["render", je], ["__scopeId", "data-v-00ac40d3"]]), ze = {
1059
- components: {
1060
- PluginDialog: ie,
1061
- PluginList: Re,
1062
- PluginStore: Ue,
1063
- ModifiedPluginDialog: ne,
1064
- SimpleTextDialog: te
1065
- },
1066
- data() {
1067
- return {
1068
- // Control state
1069
- pluginName: null,
1070
- variables: {},
1071
- storeId: null,
1072
- minCosmosVersion: null,
1073
- pluginTxt: "",
1074
- file: null,
1075
- currentPlugin: null,
1076
- pluginHashTmp: null,
1077
- existingPluginTxt: null,
1078
- progress: 0,
1079
- pluginDelete: !1,
1080
- api: new K(),
1081
- plugins: [],
1082
- targets: {},
1083
- processes: {},
1084
- alert: "",
1085
- alertType: "success",
1086
- showAlert: !1,
1087
- showDownloadDialog: !1,
1088
- showProcessOutput: !1,
1089
- processOutput: "",
1090
- showPluginStore: !1,
1091
- showPluginDialog: !1,
1092
- showModifiedPluginDialog: !1,
1093
- showDefaultTools: !1,
1094
- // When updating update local_mode.rb, local_mode.py, plugins.p.spec.ts
1095
- defaultPlugins: [
1096
- "openc3-cosmos-tool-admin",
1097
- "openc3-cosmos-tool-bucketexplorer",
1098
- "openc3-cosmos-tool-cmdsender",
1099
- "openc3-cosmos-tool-cmdqueue",
1100
- // Enterprise only
1101
- "openc3-cosmos-tool-cmdhistory",
1102
- // Enterprise only
1103
- "openc3-cosmos-tool-cmdtlmserver",
1104
- "openc3-cosmos-tool-dataextractor",
1105
- "openc3-cosmos-tool-dataviewer",
1106
- "openc3-cosmos-tool-docs",
1107
- "openc3-cosmos-tool-handbooks",
1108
- "openc3-cosmos-tool-iframe",
1109
- "openc3-cosmos-tool-limitsmonitor",
1110
- "openc3-cosmos-tool-packetviewer",
1111
- "openc3-cosmos-tool-scriptrunner",
1112
- "openc3-cosmos-tool-tablemanager",
1113
- "openc3-cosmos-tool-tlmgrapher",
1114
- "openc3-cosmos-tool-tlmviewer",
1115
- "openc3-cosmos-enterprise-tool-admin",
1116
- // Enterprise only
1117
- "openc3-cosmos-tool-autonomic",
1118
- // Enterprise only
1119
- "openc3-cosmos-tool-calendar",
1120
- // Enterprise only
1121
- "openc3-cosmos-tool-grafana",
1122
- // Enterprise only
1123
- "openc3-cosmos-tool-logexplorer",
1124
- // Enterprise only
1125
- "openc3-cosmos-tool-notebooks",
1126
- // Enterprise only
1127
- "openc3-cosmos-tool-systemhealth",
1128
- // Enterprise only
1129
- "openc3-enterprise-tool-base",
1130
- // Enterprise only
1131
- "openc3-tool-base"
1132
- ]
1133
- };
1134
- },
1135
- watch: {
1136
- // watcher to reset the file input when the dialog is closed
1137
- showPluginDialog: function(e, t) {
1138
- e === !1 && (this.file = null, this.$refs.fileInput.value = null);
1139
- }
1140
- },
1141
- created() {
1142
- this.api.update_plugin_store();
1143
- },
1144
- mounted() {
1145
- this.update(), this.updateProcesses();
1146
- const e = this;
1147
- window.onpopstate = function() {
1148
- e.showPluginStore && (e.showPluginStore = !1, history.go(1));
1149
- };
1150
- },
1151
- methods: {
1152
- resetControlState: function() {
1153
- this.pluginName = null, this.variables = {}, this.storeId = null, this.minCosmosVersion = null, this.pluginTxt = "", this.file = null, this.currentPlugin = null, this.pluginHashTmp = null, this.existingPluginTxt = null, this.progress = 0, this.pluginDelete = !1;
1154
- },
1155
- pluginTargets: function(e) {
1156
- let t = [];
1157
- for (const r in this.targets)
1158
- this.targets[r].plugin === e && t.push(this.targets[r]);
1159
- return t;
1160
- },
1161
- isModified: function(e) {
1162
- return Object.entries(this.targets).some(([t, r]) => r.plugin === e && r.modified === !0);
1163
- },
1164
- showOutput: function(e) {
1165
- this.processOutput = e.output, this.showProcessOutput = !0;
1166
- },
1167
- update: function() {
1168
- S.get("/openc3-api/plugins/all").then((e) => {
1169
- this.plugins = Object.entries(e.data).map(
1170
- ([t, r]) => r
1171
- );
1172
- }), S.get("/openc3-api/targets_modified").then((e) => {
1173
- this.targets = e.data;
1174
- });
1175
- },
1176
- updateProcesses: function() {
1177
- S.get("openc3-api/process_status/plugin_?substr=true").then(
1178
- (e) => {
1179
- this.processes = e.data, Object.keys(this.processes).length > 0 && setTimeout(() => {
1180
- this.updateProcesses(), this.update();
1181
- }, 5e3);
1182
- }
1183
- );
1184
- },
1185
- formatDate(e) {
1186
- return le(
1187
- se(Number.parseInt(e) / 1e6),
1188
- "yyyy-MM-dd HH:mm:ss.SSS"
1189
- );
1190
- },
1191
- upload: function(e = null, t = null) {
1192
- const r = e ? "put" : "post", g = e ? `/openc3-api/plugins/${e}` : "/openc3-api/plugins", i = new FormData();
1193
- t === null ? i.append("plugin", this.file, this.file.name) : i.append("store_id", t.id);
1194
- let o = this;
1195
- S[r](g, {
1196
- data: i,
1197
- headers: { "Content-Type": "multipart/form-data" },
1198
- onUploadProgress: function(p) {
1199
- let c = Math.round(
1200
- p.loaded * 100 / p.total
1201
- );
1202
- o.progress = c;
1203
- }
1204
- }).then((p) => {
1205
- this.progress = 100, this.alert = "Uploaded file", this.alertType = "success", this.showAlert = !0, setTimeout(() => {
1206
- this.showAlert = !1;
1207
- }, 5e3), this.update();
1208
- let c = null;
1209
- p.data.existing_plugin_txt_lines !== void 0 && (c = p.data.existing_plugin_txt_lines.join(`
1210
- `));
1211
- let k = p.data.plugin_txt_lines.join(`
1212
- `);
1213
- this.pluginName = p.data.name, this.variables = p.data.variables, this.storeId = p.data.store_id, this.minCosmosVersion = p.data.minimum_cosmos_version, this.pluginTxt = k, this.existingPluginTxt = c, this.showPluginDialog = !0, this.file = void 0;
1214
- }).catch((p) => {
1215
- this.currentPlugin = null, this.file = void 0;
1216
- });
1217
- },
1218
- pluginCallback: function(e) {
1219
- this.showPluginDialog = !1, this.currentPlugin !== null && (e.name = this.currentPlugin), this.pluginHashTmp = e, this.isModified(this.currentPlugin) ? (this.pluginDelete = !1, this.showModifiedPluginDialog = !0) : this.pluginInstall();
1220
- },
1221
- modifiedSubmit: async function(e) {
1222
- if (e === !0)
1223
- for (let t of this.pluginTargets(this.currentPlugin))
1224
- t.modified == !0 && await S.post(`/openc3-api/targets/${t.name}/delete_modified`);
1225
- this.pluginDelete ? this.deletePlugin(this.currentPlugin) : this.pluginInstall();
1226
- },
1227
- pluginInstall: function() {
1228
- S.post(`/openc3-api/plugins/install/${this.pluginName}`, {
1229
- data: {
1230
- plugin_hash: JSON.stringify(this.pluginHashTmp)
1231
- }
1232
- }).then((e) => {
1233
- this.alert = `Started installing plugin ${this.pluginName} ...`, this.alertType = "success", this.showAlert = !0, this.currentPlugin = null, this.file = void 0, this.variables = {}, this.pluginTxt = "", this.existingPluginTxt = null, this.storeId = null, setTimeout(() => {
1234
- this.showAlert = !1, this.updateProcesses();
1235
- }, 5e3), this.update();
1236
- });
1237
- },
1238
- editPlugin: function(e) {
1239
- this.resetControlState(), S.get(`/openc3-api/plugins/${e}`).then((t) => {
1240
- let r = null;
1241
- t.data.existing_plugin_txt_lines !== void 0 && (r = t.data.existing_plugin_txt_lines.join(`
1242
- `)), this.pluginName = t.data.name, this.variables = t.data.variables, this.pluginTxt = t.data.plugin_txt_lines.join(`
1243
- `), this.existingPluginTxt = r, this.showPluginDialog = !0;
1244
- });
1245
- },
1246
- deletePrompt: function(e) {
1247
- this.resetControlState(), this.$dialog.confirm(`Are you sure you want to remove: ${e}`, {
1248
- okText: "Delete",
1249
- cancelText: "Cancel"
1250
- }).then((t) => {
1251
- this.isModified(e) ? (this.currentPlugin = e, this.pluginDelete = !0, this.showModifiedPluginDialog = !0) : this.deletePlugin(e);
1252
- });
1253
- },
1254
- deletePlugin: function(e) {
1255
- this.alert = `Removing plugin ${e} ...`, this.alertType = "success", this.showAlert = !0, S.delete(`/openc3-api/plugins/${e}`).then((t) => {
1256
- setTimeout(() => {
1257
- this.showAlert = !1, this.updateProcesses();
1258
- }, 5e3);
1259
- }), this.update();
1260
- },
1261
- upgradePlugin(e) {
1262
- this.resetControlState(), this.currentPlugin = e, this.$refs.fileInput.click();
1263
- },
1264
- selectFile() {
1265
- this.resetControlState(), this.$refs.fileInput.click();
1266
- },
1267
- fileChange(e) {
1268
- const t = e.target.files;
1269
- if (t.length > 0)
1270
- if (this.file = t[0], this.currentPlugin !== null)
1271
- if (this.file.name.split(".gem")[0] == this.currentPlugin.split(".gem")[0])
1272
- this.$dialog.confirm(
1273
- `The new gem ${this.file.name} appears to be identical to the existing ${this.currentPlugin}. Install?`,
1274
- {
1275
- okText: "Ok",
1276
- cancelText: "Cancel"
1277
- }
1278
- ).then(() => {
1279
- this.upload(this.currentPlugin);
1280
- }).catch((r) => {
1281
- });
1282
- else {
1283
- let r = this.file.name.split("-"), g = r.findIndex((d) => d.includes(".")), i = r.slice(0, g).join("-");
1284
- r = this.currentPlugin.split("-"), g = r.findIndex((d) => d.includes("."));
1285
- let o = r.slice(0, g).join("-");
1286
- i !== o ? this.$dialog.confirm(
1287
- `The new gem base name ${i} doesn't match the existing ${o}. Install?`,
1288
- {
1289
- okText: "Ok",
1290
- cancelText: "Cancel"
1291
- }
1292
- ).then(() => {
1293
- this.upload(this.currentPlugin);
1294
- }) : this.upload(this.currentPlugin);
1295
- }
1296
- else
1297
- this.upload();
1298
- else
1299
- this.$refs.fileInput.value = null;
1300
- },
1301
- openStore() {
1302
- this.resetControlState(), this.showPluginStore = !0;
1303
- }
1304
- }
1305
- }, Fe = { class: "mt-2" }, Be = ["textContent"], He = ["textContent"];
1306
- function qe(e, t, r, g, i, o) {
1307
- const d = l("v-btn"), p = l("v-icon"), c = l("v-col"), k = l("rux-progress"), P = l("v-row"), b = l("v-divider"), f = l("v-alert"), C = l("v-list-item-title"), T = l("v-list-item-subtitle"), U = l("v-progress-circular"), I = l("v-tooltip"), m = l("v-list-item"), y = l("v-list"), G = l("v-switch"), W = l("plugin-list"), Y = l("plugin-dialog"), J = l("modified-plugin-dialog"), Q = l("simple-text-dialog"), X = l("plugin-store"), Z = l("v-bottom-sheet");
1308
- return a(), x("div", null, [
1309
- n(P, {
1310
- "no-gutters": "",
1311
- align: "center",
1312
- class: "px-2"
1313
- }, {
1314
- default: s(() => [
1315
- n(c, { class: "pa-2 mt-2" }, {
1316
- default: s(() => [
1317
- n(d, {
1318
- "append-icon": "mdi-store",
1319
- onClick: o.openStore
1320
- }, {
1321
- default: s(() => [...t[9] || (t[9] = [
1322
- _(" Browse Plugins ", -1)
1323
- ])]),
1324
- _: 1
1325
- }, 8, ["onClick"]),
1326
- n(d, {
1327
- "append-icon": "mdi-paperclip",
1328
- class: "mx-2",
1329
- onClick: o.selectFile
1330
- }, {
1331
- default: s(() => [...t[10] || (t[10] = [
1332
- _(" Install From File ", -1)
1333
- ])]),
1334
- _: 1
1335
- }, 8, ["onClick"]),
1336
- u("input", {
1337
- ref: "fileInput",
1338
- accept: ".gem",
1339
- style: { display: "none" },
1340
- type: "file",
1341
- onChange: t[0] || (t[0] = (...h) => o.fileChange && o.fileChange(...h))
1342
- }, null, 544),
1343
- t[14] || (t[14] = u("br", null, null, -1)),
1344
- u("p", Fe, [
1345
- t[12] || (t[12] = _(" Note: Use ", -1)),
1346
- n(p, null, {
1347
- default: s(() => [...t[11] || (t[11] = [
1348
- _(" mdi-dots-horizontal ", -1)
1349
- ])]),
1350
- _: 1
1351
- }),
1352
- t[13] || (t[13] = _(" in the Installed Plugins list to upgrade existing plugins ", -1))
1353
- ])
1354
- ]),
1355
- _: 1
1356
- }),
1357
- n(c, {
1358
- class: "ml-4 mr-2",
1359
- cols: "4"
1360
- }, {
1361
- default: s(() => [
1362
- n(k, { value: i.progress }, null, 8, ["value"])
1363
- ]),
1364
- _: 1
1365
- })
1366
- ]),
1367
- _: 1
1368
- }),
1369
- n(P, {
1370
- "no-gutters": "",
1371
- class: "px-2"
1372
- }, {
1373
- default: s(() => [
1374
- n(c, {
1375
- align: "right",
1376
- class: "mr-2"
1377
- }, {
1378
- default: s(() => [...t[15] || (t[15] = [
1379
- u("div", null, "* indicates a modified plugin", -1),
1380
- u("div", null, "Click target link to download modifications", -1)
1381
- ])]),
1382
- _: 1
1383
- })
1384
- ]),
1385
- _: 1
1386
- }),
1387
- n(b),
1388
- n(f, {
1389
- modelValue: i.showAlert,
1390
- "onUpdate:modelValue": t[1] || (t[1] = (h) => i.showAlert = h),
1391
- closable: "",
1392
- type: i.alertType,
1393
- text: i.alert,
1394
- "data-test": "plugin-alert"
1395
- }, null, 8, ["modelValue", "type", "text"]),
1396
- Object.keys(i.processes).length > 0 ? (a(), v(y, {
1397
- key: 0,
1398
- class: "list",
1399
- "data-test": "process-list"
1400
- }, {
1401
- default: s(() => [
1402
- n(P, {
1403
- "no-gutters": "",
1404
- class: "px-4"
1405
- }, {
1406
- default: s(() => [
1407
- n(c, { class: "text-h5" }, {
1408
- default: s(() => [...t[16] || (t[16] = [
1409
- _(" Process List ", -1)
1410
- ])]),
1411
- _: 1
1412
- }),
1413
- n(c, { align: "right" }, {
1414
- default: s(() => [...t[17] || (t[17] = [
1415
- u("div", null, "Showing last 10 min of activity", -1)
1416
- ])]),
1417
- _: 1
1418
- })
1419
- ]),
1420
- _: 1
1421
- }),
1422
- (a(!0), x(V, null, E(i.processes, (h) => (a(), x("div", {
1423
- key: h.name
1424
- }, [
1425
- n(m, null, {
1426
- append: s(() => [
1427
- h.state === "Running" ? (a(), v(U, {
1428
- key: 0,
1429
- indeterminate: "",
1430
- color: "primary"
1431
- })) : (a(), v(I, {
1432
- key: 1,
1433
- "open-delay": 600,
1434
- location: "top"
1435
- }, {
1436
- activator: s(({ props: $ }) => [
1437
- n(d, A({ ref_for: !0 }, $, {
1438
- icon: "mdi-eye",
1439
- variant: "text",
1440
- "aria-label": "Show Output",
1441
- "data-test": "show-output",
1442
- onClick: (Ge) => o.showOutput(h)
1443
- }), null, 16, ["onClick"])
1444
- ]),
1445
- default: s(() => [
1446
- t[18] || (t[18] = u("span", null, " Show Output ", -1))
1447
- ]),
1448
- _: 2
1449
- }, 1024))
1450
- ]),
1451
- default: s(() => [
1452
- n(C, null, {
1453
- default: s(() => [
1454
- u("span", {
1455
- class: j(h.state.toLowerCase()),
1456
- textContent: w(
1457
- `Processing ${h.process_type}: ${h.detail} - ${h.state}`
1458
- )
1459
- }, null, 10, Be)
1460
- ]),
1461
- _: 2
1462
- }, 1024),
1463
- n(T, null, {
1464
- default: s(() => [
1465
- u("span", {
1466
- textContent: w(" Updated At: " + o.formatDate(h.updated_at))
1467
- }, null, 8, He)
1468
- ]),
1469
- _: 2
1470
- }, 1024)
1471
- ]),
1472
- _: 2
1473
- }, 1024),
1474
- n(b)
1475
- ]))), 128))
1476
- ]),
1477
- _: 1
1478
- })) : D("", !0),
1479
- n(P, {
1480
- "no-gutters": "",
1481
- class: "px-4"
1482
- }, {
1483
- default: s(() => [
1484
- n(c, { class: "text-h5" }, {
1485
- default: s(() => [...t[19] || (t[19] = [
1486
- _(" Installed Plugins ", -1)
1487
- ])]),
1488
- _: 1
1489
- }),
1490
- n(c, { class: "v-col-auto" }, {
1491
- default: s(() => [
1492
- n(G, {
1493
- modelValue: i.showDefaultTools,
1494
- "onUpdate:modelValue": t[2] || (t[2] = (h) => i.showDefaultTools = h),
1495
- label: "Show Default Tools",
1496
- density: "compact",
1497
- "hide-details": "",
1498
- "data-test": "show-default-tools"
1499
- }, null, 8, ["modelValue"])
1500
- ]),
1501
- _: 1
1502
- })
1503
- ]),
1504
- _: 1
1505
- }),
1506
- n(W, {
1507
- plugins: i.plugins,
1508
- targets: i.targets,
1509
- "show-default-tools": i.showDefaultTools,
1510
- "default-plugins": i.defaultPlugins,
1511
- onEdit: o.editPlugin,
1512
- onUpgrade: o.upgradePlugin,
1513
- onDelete: o.deletePrompt
1514
- }, null, 8, ["plugins", "targets", "show-default-tools", "default-plugins", "onEdit", "onUpgrade", "onDelete"]),
1515
- i.showPluginDialog ? (a(), v(Y, {
1516
- key: 1,
1517
- modelValue: i.showPluginDialog,
1518
- "onUpdate:modelValue": t[3] || (t[3] = (h) => i.showPluginDialog = h),
1519
- "plugin-name": i.pluginName,
1520
- variables: i.variables,
1521
- "plugin-txt": i.pluginTxt,
1522
- "existing-plugin-txt": i.existingPluginTxt,
1523
- "store-id": i.storeId,
1524
- "min-cosmos-version": i.minCosmosVersion,
1525
- onCallback: o.pluginCallback
1526
- }, null, 8, ["modelValue", "plugin-name", "variables", "plugin-txt", "existing-plugin-txt", "store-id", "min-cosmos-version", "onCallback"])) : D("", !0),
1527
- i.showModifiedPluginDialog ? (a(), v(J, {
1528
- key: 2,
1529
- modelValue: i.showModifiedPluginDialog,
1530
- "onUpdate:modelValue": t[4] || (t[4] = (h) => i.showModifiedPluginDialog = h),
1531
- "plugin-name": i.currentPlugin,
1532
- targets: o.pluginTargets(i.currentPlugin),
1533
- "plugin-delete": i.pluginDelete,
1534
- onSubmit: o.modifiedSubmit
1535
- }, null, 8, ["modelValue", "plugin-name", "targets", "plugin-delete", "onSubmit"])) : D("", !0),
1536
- n(Q, {
1537
- modelValue: i.showProcessOutput,
1538
- "onUpdate:modelValue": t[5] || (t[5] = (h) => i.showProcessOutput = h),
1539
- title: "Process Output",
1540
- text: i.processOutput
1541
- }, null, 8, ["modelValue", "text"]),
1542
- n(Z, {
1543
- modelValue: i.showPluginStore,
1544
- "onUpdate:modelValue": t[8] || (t[8] = (h) => i.showPluginStore = h),
1545
- fullscreen: ""
1546
- }, {
1547
- default: s(() => [
1548
- n(X, {
1549
- onClose: t[6] || (t[6] = () => i.showPluginStore = !1),
1550
- onTriggerInstall: t[7] || (t[7] = (h) => o.upload(null, h))
1551
- })
1552
- ]),
1553
- _: 1
1554
- }, 8, ["modelValue"])
1555
- ]);
1556
- }
1557
- const nt = /* @__PURE__ */ O(ze, [["render", qe], ["__scopeId", "data-v-0e178853"]]);
1558
- export {
1559
- nt as default
1560
- };
1561
- //# sourceMappingURL=PluginsTab-BQ0LCHQp.js.map