@openc3/vue-common 6.2.0 → 6.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (405) hide show
  1. package/dist/ArrayWidget-BIQi_bWC.cjs +3 -0
  2. package/dist/ArrayWidget-BIQi_bWC.cjs.map +1 -0
  3. package/dist/ArrayWidget-BxEO5hEG.js +106 -0
  4. package/dist/ArrayWidget-BxEO5hEG.js.map +1 -0
  5. package/dist/ArrayplotWidget-B_VPoV4v.js +199 -0
  6. package/dist/ArrayplotWidget-B_VPoV4v.js.map +1 -0
  7. package/dist/ArrayplotWidget-Donxhd8_.cjs +2 -0
  8. package/dist/ArrayplotWidget-Donxhd8_.cjs.map +1 -0
  9. package/dist/AstroStatus-CILMWL6F.cjs +2 -0
  10. package/dist/AstroStatus-CILMWL6F.cjs.map +1 -0
  11. package/dist/AstroStatus-CY9VkeTN.js +40 -0
  12. package/dist/AstroStatus-CY9VkeTN.js.map +1 -0
  13. package/dist/BarColumn-C9dkpg2O.js +108 -0
  14. package/dist/BarColumn-C9dkpg2O.js.map +1 -0
  15. package/dist/BarColumn-CyRSZHMh.cjs +2 -0
  16. package/dist/BarColumn-CyRSZHMh.cjs.map +1 -0
  17. package/dist/BlockWidget-CuefOin6.js +112 -0
  18. package/dist/BlockWidget-CuefOin6.js.map +1 -0
  19. package/dist/BlockWidget-DPLN1jgj.cjs +3 -0
  20. package/dist/BlockWidget-DPLN1jgj.cjs.map +1 -0
  21. package/dist/ButtonWidget-B6HM0Doo.js +166 -0
  22. package/dist/ButtonWidget-B6HM0Doo.js.map +1 -0
  23. package/dist/ButtonWidget-DccYzIY3.cjs +3 -0
  24. package/dist/ButtonWidget-DccYzIY3.cjs.map +1 -0
  25. package/dist/CanvasWidget-BzTU9rc9.cjs +2 -0
  26. package/dist/CanvasWidget-BzTU9rc9.cjs.map +1 -0
  27. package/dist/CanvasWidget-DZQGG-yQ.js +39 -0
  28. package/dist/CanvasWidget-DZQGG-yQ.js.map +1 -0
  29. package/dist/CanvasdotWidget-6wuCSnw_.js +19 -0
  30. package/dist/CanvasdotWidget-6wuCSnw_.js.map +1 -0
  31. package/dist/CanvasdotWidget-B7VTS1QI.cjs +2 -0
  32. package/dist/CanvasdotWidget-B7VTS1QI.cjs.map +1 -0
  33. package/dist/CanvasimageWidget-BwYpfmDE.cjs +2 -0
  34. package/dist/CanvasimageWidget-BwYpfmDE.cjs.map +1 -0
  35. package/dist/CanvasimageWidget-mhcPpAuN.js +58 -0
  36. package/dist/CanvasimageWidget-mhcPpAuN.js.map +1 -0
  37. package/dist/CanvasimagevalueWidget-Cx-dH8Gc.js +107 -0
  38. package/dist/CanvasimagevalueWidget-Cx-dH8Gc.js.map +1 -0
  39. package/dist/CanvasimagevalueWidget-E_NsZ82T.cjs +2 -0
  40. package/dist/CanvasimagevalueWidget-E_NsZ82T.cjs.map +1 -0
  41. package/dist/CanvaslabelWidget-BBDuXWfU.cjs +2 -0
  42. package/dist/CanvaslabelWidget-BBDuXWfU.cjs.map +1 -0
  43. package/dist/CanvaslabelWidget-CQZCeohU.js +23 -0
  44. package/dist/CanvaslabelWidget-CQZCeohU.js.map +1 -0
  45. package/dist/CanvaslabelvalueWidget-CwmYDCjr.js +42 -0
  46. package/dist/CanvaslabelvalueWidget-CwmYDCjr.js.map +1 -0
  47. package/dist/CanvaslabelvalueWidget-DAdu7ujn.cjs +2 -0
  48. package/dist/CanvaslabelvalueWidget-DAdu7ujn.cjs.map +1 -0
  49. package/dist/CanvaslineWidget-Bv5da1Vy.cjs +2 -0
  50. package/dist/CanvaslineWidget-Bv5da1Vy.cjs.map +1 -0
  51. package/dist/CanvaslineWidget-nTP3fJB4.js +28 -0
  52. package/dist/CanvaslineWidget-nTP3fJB4.js.map +1 -0
  53. package/dist/CanvaslinevalueWidget-BVfUB96K.cjs +2 -0
  54. package/dist/CanvaslinevalueWidget-BVfUB96K.cjs.map +1 -0
  55. package/dist/CanvaslinevalueWidget-C3sJnjLQ.js +44 -0
  56. package/dist/CanvaslinevalueWidget-C3sJnjLQ.js.map +1 -0
  57. package/dist/CheckbuttonWidget-5-8YDsQL.js +37 -0
  58. package/dist/CheckbuttonWidget-5-8YDsQL.js.map +1 -0
  59. package/dist/CheckbuttonWidget-BGqD-BGc.cjs +2 -0
  60. package/dist/CheckbuttonWidget-BGqD-BGc.cjs.map +1 -0
  61. package/dist/ComboboxWidget-DoHMlSAr.cjs +2 -0
  62. package/dist/ComboboxWidget-DoHMlSAr.cjs.map +1 -0
  63. package/dist/ComboboxWidget-DzBL8h9f.js +37 -0
  64. package/dist/ComboboxWidget-DzBL8h9f.js.map +1 -0
  65. package/dist/CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-BHFhmbuH.cjs +2 -0
  66. package/dist/CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-BHFhmbuH.cjs.map +1 -0
  67. package/dist/CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-CHgC5LLL.js +10 -0
  68. package/dist/CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-CHgC5LLL.js.map +1 -0
  69. package/dist/CriticalCmdDialog-DLEasFsx.js +270 -0
  70. package/dist/CriticalCmdDialog-DLEasFsx.js.map +1 -0
  71. package/dist/CriticalCmdDialog-DoLBrU2k.cjs +2 -0
  72. package/dist/CriticalCmdDialog-DoLBrU2k.cjs.map +1 -0
  73. package/dist/DateWidget-CW7Od7lB.js +40 -0
  74. package/dist/DateWidget-CW7Od7lB.js.map +1 -0
  75. package/dist/DateWidget-DKZz1J9J.cjs +2 -0
  76. package/dist/DateWidget-DKZz1J9J.cjs.map +1 -0
  77. package/dist/DetailsDialog-BvbziA7Y.js +767 -0
  78. package/dist/DetailsDialog-BvbziA7Y.js.map +1 -0
  79. package/dist/DetailsDialog-CiuQYvJK.cjs +2 -0
  80. package/dist/DetailsDialog-CiuQYvJK.cjs.map +1 -0
  81. package/dist/DynamicWidget-3wHr6Ng-.cjs +2 -0
  82. package/dist/DynamicWidget-3wHr6Ng-.cjs.map +1 -0
  83. package/dist/DynamicWidget-gFSYxzvT.js +35 -0
  84. package/dist/DynamicWidget-gFSYxzvT.js.map +1 -0
  85. package/dist/FormatvalueWidget-CGpnTqVH.js +44 -0
  86. package/dist/FormatvalueWidget-CGpnTqVH.js.map +1 -0
  87. package/dist/FormatvalueWidget-DFrbeKb9.cjs +2 -0
  88. package/dist/FormatvalueWidget-DFrbeKb9.cjs.map +1 -0
  89. package/dist/Graph-3rkhFP3G.js +1983 -0
  90. package/dist/Graph-3rkhFP3G.js.map +1 -0
  91. package/dist/Graph-C3vGMcos.cjs +2 -0
  92. package/dist/Graph-C3vGMcos.cjs.map +1 -0
  93. package/dist/GraphWidget-22NxFa9k.cjs +2 -0
  94. package/dist/GraphWidget-22NxFa9k.cjs.map +1 -0
  95. package/dist/GraphWidget-Dycey-mj.js +130 -0
  96. package/dist/GraphWidget-Dycey-mj.js.map +1 -0
  97. package/dist/HorizontalWidget-BBeB0eBI.cjs +2 -0
  98. package/dist/HorizontalWidget-BBeB0eBI.cjs.map +1 -0
  99. package/dist/HorizontalWidget-D31NRWy5.js +41 -0
  100. package/dist/HorizontalWidget-D31NRWy5.js.map +1 -0
  101. package/dist/HorizontalboxWidget-Br8dSVHD.js +38 -0
  102. package/dist/HorizontalboxWidget-Br8dSVHD.js.map +1 -0
  103. package/dist/HorizontalboxWidget-DsdzrCJx.cjs +2 -0
  104. package/dist/HorizontalboxWidget-DsdzrCJx.cjs.map +1 -0
  105. package/dist/HorizontallineWidget-BCKOQase.cjs +2 -0
  106. package/dist/HorizontallineWidget-BCKOQase.cjs.map +1 -0
  107. package/dist/HorizontallineWidget-CbxREBYI.js +11 -0
  108. package/dist/HorizontallineWidget-CbxREBYI.js.map +1 -0
  109. package/dist/IframeWidget-CZwsTgvX.cjs +2 -0
  110. package/dist/IframeWidget-CZwsTgvX.cjs.map +1 -0
  111. package/dist/IframeWidget-Ctj8OIcG.js +90 -0
  112. package/dist/IframeWidget-Ctj8OIcG.js.map +1 -0
  113. package/dist/ImageLoader-BrNrCBvi.js +36 -0
  114. package/dist/ImageLoader-BrNrCBvi.js.map +1 -0
  115. package/dist/ImageLoader-D_Gq-KxR.cjs +2 -0
  116. package/dist/ImageLoader-D_Gq-KxR.cjs.map +1 -0
  117. package/dist/ImageviewerWidget-DwRPFSLR.cjs +2 -0
  118. package/dist/ImageviewerWidget-DwRPFSLR.cjs.map +1 -0
  119. package/dist/ImageviewerWidget-XrsqxmLo.js +37 -0
  120. package/dist/ImageviewerWidget-XrsqxmLo.js.map +1 -0
  121. package/dist/InterfacesTab-CLaicsHA.cjs +2 -0
  122. package/dist/InterfacesTab-CLaicsHA.cjs.map +1 -0
  123. package/dist/InterfacesTab-DAeNlGlB.js +93 -0
  124. package/dist/InterfacesTab-DAeNlGlB.js.map +1 -0
  125. package/dist/LabelWidget-C-s8OVmA.cjs +2 -0
  126. package/dist/LabelWidget-C-s8OVmA.cjs.map +1 -0
  127. package/dist/LabelWidget-t7I87dp7.js +48 -0
  128. package/dist/LabelWidget-t7I87dp7.js.map +1 -0
  129. package/dist/LabelledWidget-C7TDf92M.js +42 -0
  130. package/dist/LabelledWidget-C7TDf92M.js.map +1 -0
  131. package/dist/LabelledWidget-DUpHxc9z.cjs +2 -0
  132. package/dist/LabelledWidget-DUpHxc9z.cjs.map +1 -0
  133. package/dist/LabelprogressbarWidget-D6cpayCR.cjs +2 -0
  134. package/dist/LabelprogressbarWidget-D6cpayCR.cjs.map +1 -0
  135. package/dist/LabelprogressbarWidget-wwLURt1u.js +43 -0
  136. package/dist/LabelprogressbarWidget-wwLURt1u.js.map +1 -0
  137. package/dist/LabelsparklineWidget-B3awLUyP.js +44 -0
  138. package/dist/LabelsparklineWidget-B3awLUyP.js.map +1 -0
  139. package/dist/LabelsparklineWidget-CJRnLETe.cjs +2 -0
  140. package/dist/LabelsparklineWidget-CJRnLETe.cjs.map +1 -0
  141. package/dist/LabelvalueWidget-Zx_yHCtl.js +58 -0
  142. package/dist/LabelvalueWidget-Zx_yHCtl.js.map +1 -0
  143. package/dist/LabelvalueWidget-owiMSCYl.cjs +2 -0
  144. package/dist/LabelvalueWidget-owiMSCYl.cjs.map +1 -0
  145. package/dist/LabelvaluedescWidget-BBSBh4vI.js +59 -0
  146. package/dist/LabelvaluedescWidget-BBSBh4vI.js.map +1 -0
  147. package/dist/LabelvaluedescWidget-MRmZBUc0.cjs +2 -0
  148. package/dist/LabelvaluedescWidget-MRmZBUc0.cjs.map +1 -0
  149. package/dist/LabelvaluelimitsbarWidget-BQ2XYPNE.cjs +2 -0
  150. package/dist/LabelvaluelimitsbarWidget-BQ2XYPNE.cjs.map +1 -0
  151. package/dist/LabelvaluelimitsbarWidget-CZueHYWG.js +57 -0
  152. package/dist/LabelvaluelimitsbarWidget-CZueHYWG.js.map +1 -0
  153. package/dist/LabelvaluelimitscolumnWidget-BTvzyQMq.js +47 -0
  154. package/dist/LabelvaluelimitscolumnWidget-BTvzyQMq.js.map +1 -0
  155. package/dist/LabelvaluelimitscolumnWidget-DNmVpU8J.cjs +2 -0
  156. package/dist/LabelvaluelimitscolumnWidget-DNmVpU8J.cjs.map +1 -0
  157. package/dist/LabelvaluerangebarWidget-BhYTBgDq.js +79 -0
  158. package/dist/LabelvaluerangebarWidget-BhYTBgDq.js.map +1 -0
  159. package/dist/LabelvaluerangebarWidget-DL0U8cbw.cjs +2 -0
  160. package/dist/LabelvaluerangebarWidget-DL0U8cbw.cjs.map +1 -0
  161. package/dist/Layout-Bh7VzCZd.js +14 -0
  162. package/dist/Layout-Bh7VzCZd.js.map +1 -0
  163. package/dist/Layout-DRL0EeSA.cjs +2 -0
  164. package/dist/Layout-DRL0EeSA.cjs.map +1 -0
  165. package/dist/LedWidget-B8rjFe1b.cjs +2 -0
  166. package/dist/LedWidget-B8rjFe1b.cjs.map +1 -0
  167. package/dist/LedWidget-CxJjJBBS.js +71 -0
  168. package/dist/LedWidget-CxJjJBBS.js.map +1 -0
  169. package/dist/LimitsbarWidget-CYIH8fdp.cjs +2 -0
  170. package/dist/LimitsbarWidget-CYIH8fdp.cjs.map +1 -0
  171. package/dist/LimitsbarWidget-Djui0IpK.js +69 -0
  172. package/dist/LimitsbarWidget-Djui0IpK.js.map +1 -0
  173. package/dist/LimitscolorWidget-CS0wpX9A.cjs +2 -0
  174. package/dist/LimitscolorWidget-CS0wpX9A.cjs.map +1 -0
  175. package/dist/LimitscolorWidget-DdmvKzmx.js +63 -0
  176. package/dist/LimitscolorWidget-DdmvKzmx.js.map +1 -0
  177. package/dist/LimitscolumnWidget-C_UW6xKq.cjs +2 -0
  178. package/dist/LimitscolumnWidget-C_UW6xKq.cjs.map +1 -0
  179. package/dist/LimitscolumnWidget-Cc19IEjq.js +66 -0
  180. package/dist/LimitscolumnWidget-Cc19IEjq.js.map +1 -0
  181. package/dist/LinegraphWidget-8td_PqgU.cjs +2 -0
  182. package/dist/LinegraphWidget-8td_PqgU.cjs.map +1 -0
  183. package/dist/LinegraphWidget-BtieJxeL.js +39 -0
  184. package/dist/LinegraphWidget-BtieJxeL.js.map +1 -0
  185. package/dist/MatrixbycolumnsWidget-CGOeCNW2.cjs +2 -0
  186. package/dist/MatrixbycolumnsWidget-CGOeCNW2.cjs.map +1 -0
  187. package/dist/MatrixbycolumnsWidget-DnExVRF8.js +56 -0
  188. package/dist/MatrixbycolumnsWidget-DnExVRF8.js.map +1 -0
  189. package/dist/MicroservicesTab-IbTmbPxO.js +268 -0
  190. package/dist/MicroservicesTab-IbTmbPxO.js.map +1 -0
  191. package/dist/MicroservicesTab-uMC8NebS.cjs +2 -0
  192. package/dist/MicroservicesTab-uMC8NebS.cjs.map +1 -0
  193. package/dist/OutputDialog-B4Q0QMJ1.cjs +2 -0
  194. package/dist/OutputDialog-B4Q0QMJ1.cjs.map +1 -0
  195. package/dist/OutputDialog-Ci5OT_fH.js +245 -0
  196. package/dist/OutputDialog-Ci5OT_fH.js.map +1 -0
  197. package/dist/PackagesTab-BX8YP3H1.js +332 -0
  198. package/dist/PackagesTab-BX8YP3H1.js.map +1 -0
  199. package/dist/PackagesTab-eYbk2vw7.cjs +2 -0
  200. package/dist/PackagesTab-eYbk2vw7.cjs.map +1 -0
  201. package/dist/PluginsTab-Ck3DvEGm.cjs +6 -0
  202. package/dist/PluginsTab-Ck3DvEGm.cjs.map +1 -0
  203. package/dist/PluginsTab-Ds3jk64b.js +599 -0
  204. package/dist/PluginsTab-Ds3jk64b.js.map +1 -0
  205. package/dist/ProgressbarWidget-CUIAYySg.cjs +2 -0
  206. package/dist/ProgressbarWidget-CUIAYySg.cjs.map +1 -0
  207. package/dist/ProgressbarWidget-DIfqhHRE.js +46 -0
  208. package/dist/ProgressbarWidget-DIfqhHRE.js.map +1 -0
  209. package/dist/RadiobuttonWidget-Cjk1JAP_.cjs +2 -0
  210. package/dist/RadiobuttonWidget-Cjk1JAP_.cjs.map +1 -0
  211. package/dist/RadiobuttonWidget-QzIkNP7m.js +34 -0
  212. package/dist/RadiobuttonWidget-QzIkNP7m.js.map +1 -0
  213. package/dist/RadiogroupWidget-B4lkYWaC.cjs +2 -0
  214. package/dist/RadiogroupWidget-B4lkYWaC.cjs.map +1 -0
  215. package/dist/RadiogroupWidget-Ci9sCX39.js +48 -0
  216. package/dist/RadiogroupWidget-Ci9sCX39.js.map +1 -0
  217. package/dist/RangebarWidget-CN0YuHqy.js +67 -0
  218. package/dist/RangebarWidget-CN0YuHqy.js.map +1 -0
  219. package/dist/RangebarWidget-nl0rzj93.cjs +2 -0
  220. package/dist/RangebarWidget-nl0rzj93.cjs.map +1 -0
  221. package/dist/RedisTab-CVimDkIE.js +135 -0
  222. package/dist/RedisTab-CVimDkIE.js.map +1 -0
  223. package/dist/RedisTab-DhS4GHDj.cjs +2 -0
  224. package/dist/RedisTab-DhS4GHDj.cjs.map +1 -0
  225. package/dist/RollupWidget-Bgudi_bt.cjs +2 -0
  226. package/dist/RollupWidget-Bgudi_bt.cjs.map +1 -0
  227. package/dist/RollupWidget-y4jBtJB2.js +83 -0
  228. package/dist/RollupWidget-y4jBtJB2.js.map +1 -0
  229. package/dist/RoutersTab-CzO10cVP.cjs +2 -0
  230. package/dist/RoutersTab-CzO10cVP.cjs.map +1 -0
  231. package/dist/RoutersTab-Dki_66av.js +95 -0
  232. package/dist/RoutersTab-Dki_66av.js.map +1 -0
  233. package/dist/ScriptChooser-BNm_zXxX.cjs +2 -0
  234. package/dist/ScriptChooser-BNm_zXxX.cjs.map +1 -0
  235. package/dist/ScriptChooser-l5i8c8KP.js +199 -0
  236. package/dist/ScriptChooser-l5i8c8KP.js.map +1 -0
  237. package/dist/ScrollwindowWidget-BIiV7xwi.cjs +2 -0
  238. package/dist/ScrollwindowWidget-BIiV7xwi.cjs.map +1 -0
  239. package/dist/ScrollwindowWidget-CBzYk4Y3.js +45 -0
  240. package/dist/ScrollwindowWidget-CBzYk4Y3.js.map +1 -0
  241. package/dist/SecretsTab-BSzFZ81X.cjs +2 -0
  242. package/dist/SecretsTab-BSzFZ81X.cjs.map +1 -0
  243. package/dist/SecretsTab-BjviaTxh.js +202 -0
  244. package/dist/SecretsTab-BjviaTxh.js.map +1 -0
  245. package/dist/SettingsTab-Bo_dYXgb.js +1382 -0
  246. package/dist/SettingsTab-Bo_dYXgb.js.map +1 -0
  247. package/dist/SettingsTab-DH8LAAoG.cjs +3 -0
  248. package/dist/SettingsTab-DH8LAAoG.cjs.map +1 -0
  249. package/dist/SignalWidget-CvZkvejy.cjs +2 -0
  250. package/dist/SignalWidget-CvZkvejy.cjs.map +1 -0
  251. package/dist/SignalWidget-DQ5Uc2uV.js +66 -0
  252. package/dist/SignalWidget-DQ5Uc2uV.js.map +1 -0
  253. package/dist/SimpleTextDialog-CheuP_ls.js +108 -0
  254. package/dist/SimpleTextDialog-CheuP_ls.js.map +1 -0
  255. package/dist/SimpleTextDialog-DmeNMMCR.cjs +2 -0
  256. package/dist/SimpleTextDialog-DmeNMMCR.cjs.map +1 -0
  257. package/dist/SpacerWidget-6rsc_dSM.js +19 -0
  258. package/dist/SpacerWidget-6rsc_dSM.js.map +1 -0
  259. package/dist/SpacerWidget-BBJR6HBQ.cjs +2 -0
  260. package/dist/SpacerWidget-BBJR6HBQ.cjs.map +1 -0
  261. package/dist/SparklineWidget-BxBLnjAO.cjs +2 -0
  262. package/dist/SparklineWidget-BxBLnjAO.cjs.map +1 -0
  263. package/dist/SparklineWidget-CZtvu2ss.js +48 -0
  264. package/dist/SparklineWidget-CZtvu2ss.js.map +1 -0
  265. package/dist/TabbookWidget-DNALU0jl.js +66 -0
  266. package/dist/TabbookWidget-DNALU0jl.js.map +1 -0
  267. package/dist/TabbookWidget-DyFQnA10.cjs +2 -0
  268. package/dist/TabbookWidget-DyFQnA10.cjs.map +1 -0
  269. package/dist/TargetsTab-Cd8U1aN_.js +129 -0
  270. package/dist/TargetsTab-Cd8U1aN_.js.map +1 -0
  271. package/dist/TargetsTab-DMiOliqg.cjs +2 -0
  272. package/dist/TargetsTab-DMiOliqg.cjs.map +1 -0
  273. package/dist/TextBoxDialog-DvUf3Cak.cjs +2 -0
  274. package/dist/TextBoxDialog-DvUf3Cak.cjs.map +1 -0
  275. package/dist/TextBoxDialog-fHkDTtzI.js +110 -0
  276. package/dist/TextBoxDialog-fHkDTtzI.js.map +1 -0
  277. package/dist/TextboxWidget-5hqPj74D.js +93 -0
  278. package/dist/TextboxWidget-5hqPj74D.js.map +1 -0
  279. package/dist/TextboxWidget-D6lW_dsU.cjs +2 -0
  280. package/dist/TextboxWidget-D6lW_dsU.cjs.map +1 -0
  281. package/dist/TextfieldWidget-Df0ANSiU.js +37 -0
  282. package/dist/TextfieldWidget-Df0ANSiU.js.map +1 -0
  283. package/dist/TextfieldWidget-iHN7-fyF.cjs +2 -0
  284. package/dist/TextfieldWidget-iHN7-fyF.cjs.map +1 -0
  285. package/dist/TimeWidget-C3NZqTEG.cjs +2 -0
  286. package/dist/TimeWidget-C3NZqTEG.cjs.map +1 -0
  287. package/dist/TimeWidget-C6XQMUG2.js +40 -0
  288. package/dist/TimeWidget-C6XQMUG2.js.map +1 -0
  289. package/dist/TitleWidget-B9SPUlbW.js +26 -0
  290. package/dist/TitleWidget-B9SPUlbW.js.map +1 -0
  291. package/dist/TitleWidget-CWZs33c4.cjs +2 -0
  292. package/dist/TitleWidget-CWZs33c4.cjs.map +1 -0
  293. package/dist/ToolsTab-CUpUmkZL.cjs +7 -0
  294. package/dist/ToolsTab-CUpUmkZL.cjs.map +1 -0
  295. package/dist/ToolsTab-Cgpb2nAW.js +1521 -0
  296. package/dist/ToolsTab-Cgpb2nAW.js.map +1 -0
  297. package/dist/TopBar-DuXL27iD.cjs +2 -0
  298. package/dist/TopBar-DuXL27iD.cjs.map +1 -0
  299. package/dist/TopBar-F1jHuFan.js +248 -0
  300. package/dist/TopBar-F1jHuFan.js.map +1 -0
  301. package/dist/UpgradeToEnterpriseDialog-DVcAH30Y.js +95 -0
  302. package/dist/UpgradeToEnterpriseDialog-DVcAH30Y.js.map +1 -0
  303. package/dist/UpgradeToEnterpriseDialog-DfIKahNK.cjs +2 -0
  304. package/dist/UpgradeToEnterpriseDialog-DfIKahNK.cjs.map +1 -0
  305. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-DJX55UPj.cjs +1417 -0
  306. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-DJX55UPj.cjs.map +1 -0
  307. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-iq-jp8dD.js +26941 -0
  308. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-iq-jp8dD.js.map +1 -0
  309. package/dist/VWidget-C2x_zSC2.cjs +2 -0
  310. package/dist/VWidget-C2x_zSC2.cjs.map +1 -0
  311. package/dist/VWidget-C4spAawK.js +323 -0
  312. package/dist/VWidget-C4spAawK.js.map +1 -0
  313. package/dist/ValueWidget-D4RrYVEK.js +116 -0
  314. package/dist/ValueWidget-D4RrYVEK.js.map +1 -0
  315. package/dist/ValueWidget-Do3Yn47P.cjs +2 -0
  316. package/dist/ValueWidget-Do3Yn47P.cjs.map +1 -0
  317. package/dist/ValuelimitsbarWidget-Bc9_Vj_f.js +41 -0
  318. package/dist/ValuelimitsbarWidget-Bc9_Vj_f.js.map +1 -0
  319. package/dist/ValuelimitsbarWidget-DJuh7FOs.cjs +2 -0
  320. package/dist/ValuelimitsbarWidget-DJuh7FOs.cjs.map +1 -0
  321. package/dist/ValuelimitscolumnWidget-BFpG-H7v.cjs +2 -0
  322. package/dist/ValuelimitscolumnWidget-BFpG-H7v.cjs.map +1 -0
  323. package/dist/ValuelimitscolumnWidget-DHKIL7sf.js +40 -0
  324. package/dist/ValuelimitscolumnWidget-DHKIL7sf.js.map +1 -0
  325. package/dist/ValuerangebarWidget-BlZSaiXo.cjs +2 -0
  326. package/dist/ValuerangebarWidget-BlZSaiXo.cjs.map +1 -0
  327. package/dist/ValuerangebarWidget-CecQRIok.js +65 -0
  328. package/dist/ValuerangebarWidget-CecQRIok.js.map +1 -0
  329. package/dist/VerticalWidget--8UErB4q.cjs +2 -0
  330. package/dist/VerticalWidget--8UErB4q.cjs.map +1 -0
  331. package/dist/VerticalWidget-D8jUFxjS.js +40 -0
  332. package/dist/VerticalWidget-D8jUFxjS.js.map +1 -0
  333. package/dist/VerticalboxWidget-B4eGUSYH.js +37 -0
  334. package/dist/VerticalboxWidget-B4eGUSYH.js.map +1 -0
  335. package/dist/VerticalboxWidget-cxHq1WKQ.cjs +2 -0
  336. package/dist/VerticalboxWidget-cxHq1WKQ.cjs.map +1 -0
  337. package/dist/Widget-DNf52jRQ.cjs +2 -0
  338. package/dist/Widget-DNf52jRQ.cjs.map +1 -0
  339. package/dist/Widget-fRCERxGf.js +197 -0
  340. package/dist/Widget-fRCERxGf.js.map +1 -0
  341. package/dist/addMonths-BtG7uZLJ.js +19 -0
  342. package/dist/addMonths-BtG7uZLJ.js.map +1 -0
  343. package/dist/addMonths-n1tnl3ab.cjs +2 -0
  344. package/dist/addMonths-n1tnl3ab.cjs.map +1 -0
  345. package/dist/components.cjs +7 -0
  346. package/dist/components.cjs.map +1 -0
  347. package/dist/components.js +2973 -0
  348. package/dist/components.js.map +1 -0
  349. package/dist/fileIcon-BduOQcTc.cjs +2 -0
  350. package/dist/fileIcon-BduOQcTc.cjs.map +1 -0
  351. package/dist/fileIcon-DqRHb1_Z.js +22 -0
  352. package/dist/fileIcon-DqRHb1_Z.js.map +1 -0
  353. package/dist/format-B22VpiOS.cjs +2 -0
  354. package/dist/format-B22VpiOS.cjs.map +1 -0
  355. package/dist/format-CVeawcIv.js +1295 -0
  356. package/dist/format-CVeawcIv.js.map +1 -0
  357. package/dist/getDefaultOptions-Batab9o8.cjs +2 -0
  358. package/dist/getDefaultOptions-Batab9o8.cjs.map +1 -0
  359. package/dist/getDefaultOptions-BhSDk-Jo.js +8 -0
  360. package/dist/getDefaultOptions-BhSDk-Jo.js.map +1 -0
  361. package/dist/icons/status-dark.png +0 -0
  362. package/dist/icons/status-dark.xcf +0 -0
  363. package/dist/icons/status-light.png +0 -0
  364. package/dist/icons.cjs +2 -0
  365. package/dist/icons.cjs.map +1 -0
  366. package/dist/icons.js +157 -0
  367. package/dist/icons.js.map +1 -0
  368. package/dist/index-Bz_jHTkl.cjs +7 -0
  369. package/dist/index-Bz_jHTkl.cjs.map +1 -0
  370. package/dist/index-CFQnWdPA.js +1705 -0
  371. package/dist/index-CFQnWdPA.js.map +1 -0
  372. package/dist/parse-DnkEsW-3.js +1603 -0
  373. package/dist/parse-DnkEsW-3.js.map +1 -0
  374. package/dist/parse-DwfgQboe.cjs +2 -0
  375. package/dist/parse-DwfgQboe.cjs.map +1 -0
  376. package/dist/plugins.cjs +9 -0
  377. package/dist/plugins.cjs.map +1 -0
  378. package/dist/plugins.js +772 -0
  379. package/dist/plugins.js.map +1 -0
  380. package/dist/timeFilters-8SaYvcH0.cjs +2 -0
  381. package/dist/timeFilters-8SaYvcH0.cjs.map +1 -0
  382. package/dist/timeFilters-CRYpYDdf.js +622 -0
  383. package/dist/timeFilters-CRYpYDdf.js.map +1 -0
  384. package/dist/tools/admin.cjs +13 -0
  385. package/dist/tools/admin.cjs.map +1 -0
  386. package/dist/tools/admin.js +1944 -0
  387. package/dist/tools/admin.js.map +1 -0
  388. package/dist/tools/base.cjs +2 -0
  389. package/dist/tools/base.cjs.map +1 -0
  390. package/dist/tools/base.js +1683 -0
  391. package/dist/tools/base.js.map +1 -0
  392. package/dist/tools/calendar.cjs +2 -0
  393. package/dist/tools/calendar.cjs.map +1 -0
  394. package/dist/tools/calendar.js +1586 -0
  395. package/dist/tools/calendar.js.map +1 -0
  396. package/dist/util.cjs +2 -0
  397. package/dist/util.cjs.map +1 -0
  398. package/dist/util.js +9 -0
  399. package/dist/util.js.map +1 -0
  400. package/dist/vue-common.css +1 -0
  401. package/dist/widgets.cjs +2 -0
  402. package/dist/widgets.cjs.map +1 -0
  403. package/dist/widgets.js +132 -0
  404. package/dist/widgets.js.map +1 -0
  405. package/package.json +2 -2
@@ -0,0 +1,270 @@
1
+ import { a as h } from "./index-CFQnWdPA.js";
2
+ import { a as u } from "./UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-iq-jp8dD.js";
3
+ import { resolveComponent as a, createBlock as f, openBlock as _, withCtx as s, createVNode as t, createElementVNode as T, createCommentVNode as k, createTextVNode as d, toDisplayString as c, withModifiers as y } from "vue";
4
+ import { _ as U } from "./CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-CHgC5LLL.js";
5
+ const S = {
6
+ props: {
7
+ uuid: String,
8
+ cmdUser: String,
9
+ cmdString: String,
10
+ persistent: {
11
+ type: Boolean,
12
+ default: !1
13
+ },
14
+ modelValue: Boolean
15
+ // modelValue is the default prop when using v-model
16
+ },
17
+ data() {
18
+ return {
19
+ updater: null,
20
+ username: null,
21
+ password: null,
22
+ canApprove: !1,
23
+ error: !1,
24
+ errorText: ""
25
+ };
26
+ },
27
+ computed: {
28
+ show: {
29
+ get() {
30
+ return this.modelValue;
31
+ },
32
+ set(o) {
33
+ this.$emit("update:modelValue", o);
34
+ }
35
+ },
36
+ formValid: function() {
37
+ return !!this.password && !!this.username;
38
+ },
39
+ disableButtons: function() {
40
+ return !this.formValid && !this.canApprove;
41
+ }
42
+ },
43
+ beforeUnmount() {
44
+ clearInterval(this.updater), this.updater = null, this.canApprove = !1, this.username = null, this.password = null;
45
+ },
46
+ watch: {
47
+ // Create a watcher on value which is the indicator to display the dialog
48
+ // If value is true we request the details from the server
49
+ // If this is a tlm dialog we setup an interval to get the telemetry values
50
+ modelValue: function(o, e) {
51
+ o ? (u.get("/openc3-api/criticalcmd/canapprove/" + this.uuid).then(
52
+ (r) => {
53
+ r.data.status === "ok" && (this.canApprove = !0);
54
+ }
55
+ ), this.updater = setInterval(() => {
56
+ this.uuid ? u.get("/openc3-api/criticalcmd/status/" + this.uuid).then(
57
+ (r) => {
58
+ r.data.status !== "WAITING" && (this.$emit("status", r.data.status), this.show = !1);
59
+ }
60
+ ) : this.show = !1;
61
+ }, 1e3)) : (clearInterval(this.updater), this.updater = null, this.canApprove = !1, this.username = null, this.password = null);
62
+ }
63
+ },
64
+ methods: {
65
+ async approve() {
66
+ if (this.canApprove)
67
+ await u.post("/openc3-api/criticalcmd/approve/" + this.uuid, {}).then(
68
+ (o) => {
69
+ o.status == 200 && (this.$emit("status", "APPROVED"), this.show = !1, this.error = !1);
70
+ }
71
+ );
72
+ else {
73
+ let o = await this.getKeycloakToken();
74
+ h.post(
75
+ "/openc3-api/criticalcmd/approve/" + this.uuid,
76
+ {},
77
+ {
78
+ headers: {
79
+ Authorization: o,
80
+ "Content-Type": "application/json"
81
+ },
82
+ params: {
83
+ scope: window.openc3Scope
84
+ },
85
+ timeout: 5e3
86
+ }
87
+ ).then((e) => {
88
+ this.$emit("status", "APPROVED"), this.show = !1, this.error = !1;
89
+ }).catch((e) => {
90
+ this.error = !0, e.response ? this.errorText = e.response.data.message : this.errorText = e.message;
91
+ });
92
+ }
93
+ },
94
+ async reject() {
95
+ if (this.canApprove)
96
+ await u.post("/openc3-api/criticalcmd/reject/" + this.uuid, {}).then(
97
+ (o) => {
98
+ o.status == 200 && (this.$emit("status", "REJECTED"), this.show = !1, this.error = !1);
99
+ }
100
+ );
101
+ else {
102
+ let o = await this.getKeycloakToken();
103
+ (await h.post(
104
+ "/openc3-api/criticalcmd/reject/" + this.uuid,
105
+ {},
106
+ {
107
+ headers: {
108
+ Authorization: o,
109
+ "Content-Type": "application/json"
110
+ },
111
+ params: {
112
+ scope: window.openc3Scope
113
+ },
114
+ timeout: 5e3
115
+ }
116
+ )).status == 200 && (this.$emit("status", "REJECTED"), this.show = !1, this.error = !1);
117
+ }
118
+ },
119
+ async getKeycloakToken() {
120
+ return (await h.post(
121
+ localStorage.keycloakUrl + "/realms/" + localStorage.keycloakRealm + "/protocol/openid-connect/token",
122
+ {
123
+ username: this.username,
124
+ password: this.password,
125
+ client_id: localStorage.keycloakClientId,
126
+ grant_type: "password",
127
+ scope: "openid"
128
+ },
129
+ {
130
+ headers: {
131
+ "Content-Type": "application/x-www-form-urlencoded"
132
+ },
133
+ timeout: 5e3
134
+ }
135
+ )).data.access_token;
136
+ }
137
+ }
138
+ };
139
+ function E(o, e, r, j, l, n) {
140
+ const m = a("v-spacer"), V = a("v-toolbar"), g = a("v-alert"), p = a("v-row"), v = a("v-text-field"), w = a("v-btn"), b = a("v-container"), x = a("v-card-text"), C = a("v-card"), A = a("v-dialog");
141
+ return _(), f(A, {
142
+ persistent: r.persistent,
143
+ modelValue: n.show,
144
+ "onUpdate:modelValue": e[3] || (e[3] = (i) => n.show = i),
145
+ width: "600"
146
+ }, {
147
+ default: s(() => [
148
+ t(C, null, {
149
+ default: s(() => [
150
+ t(V, { height: "24" }, {
151
+ default: s(() => [
152
+ t(m),
153
+ e[4] || (e[4] = T("span", null, " Waiting for Critical Command Approval ", -1)),
154
+ t(m)
155
+ ]),
156
+ _: 1
157
+ }),
158
+ t(x, null, {
159
+ default: s(() => [
160
+ t(b, { fluid: "" }, {
161
+ default: s(() => [
162
+ t(g, {
163
+ type: "error",
164
+ modelValue: l.error,
165
+ "onUpdate:modelValue": e[0] || (e[0] = (i) => l.error = i),
166
+ dismissible: ""
167
+ }, {
168
+ default: s(() => [
169
+ d(c(l.errorText), 1)
170
+ ]),
171
+ _: 1
172
+ }, 8, ["modelValue"]),
173
+ t(p, {
174
+ class: "pt-4",
175
+ style: { color: "white" }
176
+ }, {
177
+ default: s(() => [
178
+ d("User " + c(r.cmdUser) + " is waiting for approval to execute: ", 1)
179
+ ]),
180
+ _: 1
181
+ }),
182
+ t(p, {
183
+ class: "pa-4",
184
+ style: { color: "white" }
185
+ }, {
186
+ default: s(() => [
187
+ d(c(r.cmdString), 1)
188
+ ]),
189
+ _: 1
190
+ }),
191
+ t(p, { class: "text-subtitle-2" }, {
192
+ default: s(() => [
193
+ d("UUID: " + c(r.uuid), 1)
194
+ ]),
195
+ _: 1
196
+ }),
197
+ l.canApprove ? k("", !0) : (_(), f(p, { key: 0 }, {
198
+ default: s(() => [
199
+ t(v, {
200
+ modelValue: l.username,
201
+ "onUpdate:modelValue": e[1] || (e[1] = (i) => l.username = i),
202
+ label: "Username",
203
+ "data-test": "username"
204
+ }, null, 8, ["modelValue"])
205
+ ]),
206
+ _: 1
207
+ })),
208
+ l.canApprove ? k("", !0) : (_(), f(p, { key: 1 }, {
209
+ default: s(() => [
210
+ t(v, {
211
+ modelValue: l.password,
212
+ "onUpdate:modelValue": e[2] || (e[2] = (i) => l.password = i),
213
+ type: "password",
214
+ label: "Password",
215
+ "data-test": "password"
216
+ }, null, 8, ["modelValue"])
217
+ ]),
218
+ _: 1
219
+ })),
220
+ t(p, { class: "pt-2" }, {
221
+ default: s(() => [
222
+ t(m),
223
+ t(w, {
224
+ type: "submit",
225
+ onClick: y(n.reject, ["prevent"]),
226
+ class: "mx-2",
227
+ color: "secondary",
228
+ outlined: "",
229
+ disabled: n.disableButtons,
230
+ "data-test": "reject"
231
+ }, {
232
+ default: s(() => e[5] || (e[5] = [
233
+ d(" Reject ")
234
+ ])),
235
+ _: 1
236
+ }, 8, ["onClick", "disabled"]),
237
+ t(w, {
238
+ type: "submit",
239
+ onClick: y(n.approve, ["prevent"]),
240
+ class: "mx-2",
241
+ color: "primary",
242
+ disabled: n.disableButtons,
243
+ "data-test": "approve"
244
+ }, {
245
+ default: s(() => e[6] || (e[6] = [
246
+ d(" Approve ")
247
+ ])),
248
+ _: 1
249
+ }, 8, ["onClick", "disabled"])
250
+ ]),
251
+ _: 1
252
+ })
253
+ ]),
254
+ _: 1
255
+ })
256
+ ]),
257
+ _: 1
258
+ })
259
+ ]),
260
+ _: 1
261
+ })
262
+ ]),
263
+ _: 1
264
+ }, 8, ["persistent", "modelValue"]);
265
+ }
266
+ const N = /* @__PURE__ */ U(S, [["render", E], ["__scopeId", "data-v-edfbf188"]]);
267
+ export {
268
+ N as C
269
+ };
270
+ //# sourceMappingURL=CriticalCmdDialog-DLEasFsx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CriticalCmdDialog-DLEasFsx.js","sources":["../src/components/CriticalCmdDialog.vue"],"sourcesContent":["<!--\n# Copyright 2024 OpenC3, Inc.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <v-dialog :persistent=\"persistent\" v-model=\"show\" width=\"600\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span> Waiting for Critical Command Approval </span>\n <v-spacer />\n </v-toolbar>\n\n <v-card-text>\n <v-container fluid>\n <v-alert type=\"error\" v-model=\"error\" dismissible>\n {{ errorText }}\n </v-alert>\n <v-row class=\"pt-4\" style=\"color: white\"\n >User {{ cmdUser }} is waiting for approval to execute:\n </v-row>\n <v-row class=\"pa-4\" style=\"color: white\">{{ cmdString }}</v-row>\n <v-row class=\"text-subtitle-2\">UUID: {{ uuid }}</v-row>\n\n <v-row v-if=\"!canApprove\">\n <v-text-field\n v-model=\"username\"\n label=\"Username\"\n data-test=\"username\"\n />\n </v-row>\n <v-row v-if=\"!canApprove\">\n <v-text-field\n v-model=\"password\"\n type=\"password\"\n label=\"Password\"\n data-test=\"password\"\n />\n </v-row>\n <v-row class=\"pt-2\">\n <v-spacer />\n <v-btn\n type=\"submit\"\n @click.prevent=\"reject\"\n class=\"mx-2\"\n color=\"secondary\"\n outlined\n :disabled=\"disableButtons\"\n data-test=\"reject\"\n >\n Reject\n </v-btn>\n <v-btn\n type=\"submit\"\n @click.prevent=\"approve\"\n class=\"mx-2\"\n color=\"primary\"\n :disabled=\"disableButtons\"\n data-test=\"approve\"\n >\n Approve\n </v-btn>\n </v-row>\n </v-container>\n </v-card-text>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nimport axios from 'axios'\nimport { Api } from '@openc3/js-common/services'\n\nexport default {\n props: {\n uuid: String,\n cmdUser: String,\n cmdString: String,\n persistent: {\n type: Boolean,\n default: false,\n },\n modelValue: Boolean, // modelValue is the default prop when using v-model\n },\n data() {\n return {\n updater: null,\n username: null,\n password: null,\n canApprove: false,\n error: false,\n errorText: '',\n }\n },\n computed: {\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value) // update:modelValue is the default event when using v-model\n },\n },\n formValid: function () {\n return !!this.password && !!this.username\n },\n disableButtons: function () {\n return !this.formValid && !this.canApprove\n },\n },\n beforeUnmount() {\n clearInterval(this.updater)\n this.updater = null\n this.canApprove = false\n this.username = null\n this.password = null\n },\n watch: {\n // Create a watcher on value which is the indicator to display the dialog\n // If value is true we request the details from the server\n // If this is a tlm dialog we setup an interval to get the telemetry values\n modelValue: function (newValue, oldValue) {\n if (newValue) {\n // Check if we can approve without username/password\n Api.get('/openc3-api/criticalcmd/canapprove/' + this.uuid).then(\n (response) => {\n if (response.data.status === 'ok') {\n this.canApprove = true\n }\n },\n )\n\n // Clear if approved/rejected\n this.updater = setInterval(() => {\n if (this.uuid) {\n Api.get('/openc3-api/criticalcmd/status/' + this.uuid).then(\n (response) => {\n if (response.data.status !== 'WAITING') {\n this.$emit('status', response.data.status)\n this.show = false\n }\n },\n )\n } else {\n this.show = false\n }\n }, 1000)\n } else {\n clearInterval(this.updater)\n this.updater = null\n this.canApprove = false\n this.username = null\n this.password = null\n }\n },\n },\n methods: {\n async approve() {\n if (this.canApprove) {\n await Api.post('/openc3-api/criticalcmd/approve/' + this.uuid, {}).then(\n (response) => {\n if (response.status == 200) {\n this.$emit('status', 'APPROVED')\n this.show = false\n this.error = false\n }\n },\n )\n } else {\n let token = await this.getKeycloakToken()\n axios\n .post(\n '/openc3-api/criticalcmd/approve/' + this.uuid,\n {},\n {\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n params: {\n scope: window.openc3Scope,\n },\n timeout: 5000,\n },\n )\n .then((_response) => {\n this.$emit('status', 'APPROVED')\n this.show = false\n this.error = false\n })\n .catch((error) => {\n this.error = true\n if (error.response) {\n this.errorText = error.response.data.message\n } else {\n this.errorText = error.message\n }\n })\n }\n },\n async reject() {\n if (this.canApprove) {\n await Api.post('/openc3-api/criticalcmd/reject/' + this.uuid, {}).then(\n (response) => {\n if (response.status == 200) {\n this.$emit('status', 'REJECTED')\n this.show = false\n this.error = false\n }\n },\n )\n } else {\n let token = await this.getKeycloakToken()\n const response = await axios.post(\n '/openc3-api/criticalcmd/reject/' + this.uuid,\n {},\n {\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n params: {\n scope: window.openc3Scope,\n },\n timeout: 5000,\n },\n )\n if (response.status == 200) {\n this.$emit('status', 'REJECTED')\n this.show = false\n this.error = false\n }\n }\n },\n async getKeycloakToken() {\n const response = await axios.post(\n localStorage.keycloakUrl +\n '/realms/' +\n localStorage.keycloakRealm +\n '/protocol/openid-connect/token',\n {\n username: this.username,\n password: this.password,\n client_id: localStorage.keycloakClientId,\n grant_type: 'password',\n scope: 'openid',\n },\n {\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n timeout: 5000,\n },\n )\n return response.data.access_token\n },\n },\n}\n</script>\n\n<style scoped>\n.label {\n font-weight: bold;\n text-transform: capitalize;\n}\n:deep(.v-input--selection-controls) {\n padding: 0px;\n margin: 0px;\n}\n</style>\n"],"names":["_sfc_main","value","newValue","oldValue","Api","response","token","axios","_response","error","_createBlock","_component_v_dialog","$props","$options","_cache","$event","_withCtx","_createVNode","_component_v_card","_component_v_toolbar","_component_v_spacer","_createElementVNode","_component_v_card_text","_component_v_container","_component_v_alert","$data","_createTextVNode","_toDisplayString","_component_v_row","_createCommentVNode","_openBlock","_component_v_text_field","_component_v_btn","_withModifiers"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";const c=require("./index-Bz_jHTkl.cjs"),l=require("./UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-DJX55UPj.cjs"),e=require("vue"),V=require("./CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-BHFhmbuH.cjs"),C={props:{uuid:String,cmdUser:String,cmdString:String,persistent:{type:Boolean,default:!1},modelValue:Boolean},data(){return{updater:null,username:null,password:null,canApprove:!1,error:!1,errorText:""}},computed:{show:{get(){return this.modelValue},set(o){this.$emit("update:modelValue",o)}},formValid:function(){return!!this.password&&!!this.username},disableButtons:function(){return!this.formValid&&!this.canApprove}},beforeUnmount(){clearInterval(this.updater),this.updater=null,this.canApprove=!1,this.username=null,this.password=null},watch:{modelValue:function(o,t){o?(l.ui.get("/openc3-api/criticalcmd/canapprove/"+this.uuid).then(s=>{s.data.status==="ok"&&(this.canApprove=!0)}),this.updater=setInterval(()=>{this.uuid?l.ui.get("/openc3-api/criticalcmd/status/"+this.uuid).then(s=>{s.data.status!=="WAITING"&&(this.$emit("status",s.data.status),this.show=!1)}):this.show=!1},1e3)):(clearInterval(this.updater),this.updater=null,this.canApprove=!1,this.username=null,this.password=null)}},methods:{async approve(){if(this.canApprove)await l.ui.post("/openc3-api/criticalcmd/approve/"+this.uuid,{}).then(o=>{o.status==200&&(this.$emit("status","APPROVED"),this.show=!1,this.error=!1)});else{let o=await this.getKeycloakToken();c.axios.post("/openc3-api/criticalcmd/approve/"+this.uuid,{},{headers:{Authorization:o,"Content-Type":"application/json"},params:{scope:window.openc3Scope},timeout:5e3}).then(t=>{this.$emit("status","APPROVED"),this.show=!1,this.error=!1}).catch(t=>{this.error=!0,t.response?this.errorText=t.response.data.message:this.errorText=t.message})}},async reject(){if(this.canApprove)await l.ui.post("/openc3-api/criticalcmd/reject/"+this.uuid,{}).then(o=>{o.status==200&&(this.$emit("status","REJECTED"),this.show=!1,this.error=!1)});else{let o=await this.getKeycloakToken();(await c.axios.post("/openc3-api/criticalcmd/reject/"+this.uuid,{},{headers:{Authorization:o,"Content-Type":"application/json"},params:{scope:window.openc3Scope},timeout:5e3})).status==200&&(this.$emit("status","REJECTED"),this.show=!1,this.error=!1)}},async getKeycloakToken(){return(await c.axios.post(localStorage.keycloakUrl+"/realms/"+localStorage.keycloakRealm+"/protocol/openid-connect/token",{username:this.username,password:this.password,client_id:localStorage.keycloakClientId,grant_type:"password",scope:"openid"},{headers:{"Content-Type":"application/x-www-form-urlencoded"},timeout:5e3})).data.access_token}}};function x(o,t,s,y,a,i){const d=e.resolveComponent("v-spacer"),m=e.resolveComponent("v-toolbar"),h=e.resolveComponent("v-alert"),n=e.resolveComponent("v-row"),p=e.resolveComponent("v-text-field"),u=e.resolveComponent("v-btn"),_=e.resolveComponent("v-container"),f=e.resolveComponent("v-card-text"),v=e.resolveComponent("v-card"),w=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(w,{persistent:s.persistent,modelValue:i.show,"onUpdate:modelValue":t[3]||(t[3]=r=>i.show=r),width:"600"},{default:e.withCtx(()=>[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(m,{height:"24"},{default:e.withCtx(()=>[e.createVNode(d),t[4]||(t[4]=e.createElementVNode("span",null," Waiting for Critical Command Approval ",-1)),e.createVNode(d)]),_:1}),e.createVNode(f,null,{default:e.withCtx(()=>[e.createVNode(_,{fluid:""},{default:e.withCtx(()=>[e.createVNode(h,{type:"error",modelValue:a.error,"onUpdate:modelValue":t[0]||(t[0]=r=>a.error=r),dismissible:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(a.errorText),1)]),_:1},8,["modelValue"]),e.createVNode(n,{class:"pt-4",style:{color:"white"}},{default:e.withCtx(()=>[e.createTextVNode("User "+e.toDisplayString(s.cmdUser)+" is waiting for approval to execute: ",1)]),_:1}),e.createVNode(n,{class:"pa-4",style:{color:"white"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.cmdString),1)]),_:1}),e.createVNode(n,{class:"text-subtitle-2"},{default:e.withCtx(()=>[e.createTextVNode("UUID: "+e.toDisplayString(s.uuid),1)]),_:1}),a.canApprove?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:0},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:a.username,"onUpdate:modelValue":t[1]||(t[1]=r=>a.username=r),label:"Username","data-test":"username"},null,8,["modelValue"])]),_:1})),a.canApprove?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(n,{key:1},{default:e.withCtx(()=>[e.createVNode(p,{modelValue:a.password,"onUpdate:modelValue":t[2]||(t[2]=r=>a.password=r),type:"password",label:"Password","data-test":"password"},null,8,["modelValue"])]),_:1})),e.createVNode(n,{class:"pt-2"},{default:e.withCtx(()=>[e.createVNode(d),e.createVNode(u,{type:"submit",onClick:e.withModifiers(i.reject,["prevent"]),class:"mx-2",color:"secondary",outlined:"",disabled:i.disableButtons,"data-test":"reject"},{default:e.withCtx(()=>t[5]||(t[5]=[e.createTextVNode(" Reject ")])),_:1},8,["onClick","disabled"]),e.createVNode(u,{type:"submit",onClick:e.withModifiers(i.approve,["prevent"]),class:"mx-2",color:"primary",disabled:i.disableButtons,"data-test":"approve"},{default:e.withCtx(()=>t[6]||(t[6]=[e.createTextVNode(" Approve ")])),_:1},8,["onClick","disabled"])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1},8,["persistent","modelValue"])}const g=V._export_sfc(C,[["render",x],["__scopeId","data-v-edfbf188"]]);exports.CriticalCmdDialog=g;
2
+ //# sourceMappingURL=CriticalCmdDialog-DoLBrU2k.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CriticalCmdDialog-DoLBrU2k.cjs","sources":["../src/components/CriticalCmdDialog.vue"],"sourcesContent":["<!--\n# Copyright 2024 OpenC3, Inc.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <v-dialog :persistent=\"persistent\" v-model=\"show\" width=\"600\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span> Waiting for Critical Command Approval </span>\n <v-spacer />\n </v-toolbar>\n\n <v-card-text>\n <v-container fluid>\n <v-alert type=\"error\" v-model=\"error\" dismissible>\n {{ errorText }}\n </v-alert>\n <v-row class=\"pt-4\" style=\"color: white\"\n >User {{ cmdUser }} is waiting for approval to execute:\n </v-row>\n <v-row class=\"pa-4\" style=\"color: white\">{{ cmdString }}</v-row>\n <v-row class=\"text-subtitle-2\">UUID: {{ uuid }}</v-row>\n\n <v-row v-if=\"!canApprove\">\n <v-text-field\n v-model=\"username\"\n label=\"Username\"\n data-test=\"username\"\n />\n </v-row>\n <v-row v-if=\"!canApprove\">\n <v-text-field\n v-model=\"password\"\n type=\"password\"\n label=\"Password\"\n data-test=\"password\"\n />\n </v-row>\n <v-row class=\"pt-2\">\n <v-spacer />\n <v-btn\n type=\"submit\"\n @click.prevent=\"reject\"\n class=\"mx-2\"\n color=\"secondary\"\n outlined\n :disabled=\"disableButtons\"\n data-test=\"reject\"\n >\n Reject\n </v-btn>\n <v-btn\n type=\"submit\"\n @click.prevent=\"approve\"\n class=\"mx-2\"\n color=\"primary\"\n :disabled=\"disableButtons\"\n data-test=\"approve\"\n >\n Approve\n </v-btn>\n </v-row>\n </v-container>\n </v-card-text>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nimport axios from 'axios'\nimport { Api } from '@openc3/js-common/services'\n\nexport default {\n props: {\n uuid: String,\n cmdUser: String,\n cmdString: String,\n persistent: {\n type: Boolean,\n default: false,\n },\n modelValue: Boolean, // modelValue is the default prop when using v-model\n },\n data() {\n return {\n updater: null,\n username: null,\n password: null,\n canApprove: false,\n error: false,\n errorText: '',\n }\n },\n computed: {\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value) // update:modelValue is the default event when using v-model\n },\n },\n formValid: function () {\n return !!this.password && !!this.username\n },\n disableButtons: function () {\n return !this.formValid && !this.canApprove\n },\n },\n beforeUnmount() {\n clearInterval(this.updater)\n this.updater = null\n this.canApprove = false\n this.username = null\n this.password = null\n },\n watch: {\n // Create a watcher on value which is the indicator to display the dialog\n // If value is true we request the details from the server\n // If this is a tlm dialog we setup an interval to get the telemetry values\n modelValue: function (newValue, oldValue) {\n if (newValue) {\n // Check if we can approve without username/password\n Api.get('/openc3-api/criticalcmd/canapprove/' + this.uuid).then(\n (response) => {\n if (response.data.status === 'ok') {\n this.canApprove = true\n }\n },\n )\n\n // Clear if approved/rejected\n this.updater = setInterval(() => {\n if (this.uuid) {\n Api.get('/openc3-api/criticalcmd/status/' + this.uuid).then(\n (response) => {\n if (response.data.status !== 'WAITING') {\n this.$emit('status', response.data.status)\n this.show = false\n }\n },\n )\n } else {\n this.show = false\n }\n }, 1000)\n } else {\n clearInterval(this.updater)\n this.updater = null\n this.canApprove = false\n this.username = null\n this.password = null\n }\n },\n },\n methods: {\n async approve() {\n if (this.canApprove) {\n await Api.post('/openc3-api/criticalcmd/approve/' + this.uuid, {}).then(\n (response) => {\n if (response.status == 200) {\n this.$emit('status', 'APPROVED')\n this.show = false\n this.error = false\n }\n },\n )\n } else {\n let token = await this.getKeycloakToken()\n axios\n .post(\n '/openc3-api/criticalcmd/approve/' + this.uuid,\n {},\n {\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n params: {\n scope: window.openc3Scope,\n },\n timeout: 5000,\n },\n )\n .then((_response) => {\n this.$emit('status', 'APPROVED')\n this.show = false\n this.error = false\n })\n .catch((error) => {\n this.error = true\n if (error.response) {\n this.errorText = error.response.data.message\n } else {\n this.errorText = error.message\n }\n })\n }\n },\n async reject() {\n if (this.canApprove) {\n await Api.post('/openc3-api/criticalcmd/reject/' + this.uuid, {}).then(\n (response) => {\n if (response.status == 200) {\n this.$emit('status', 'REJECTED')\n this.show = false\n this.error = false\n }\n },\n )\n } else {\n let token = await this.getKeycloakToken()\n const response = await axios.post(\n '/openc3-api/criticalcmd/reject/' + this.uuid,\n {},\n {\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n params: {\n scope: window.openc3Scope,\n },\n timeout: 5000,\n },\n )\n if (response.status == 200) {\n this.$emit('status', 'REJECTED')\n this.show = false\n this.error = false\n }\n }\n },\n async getKeycloakToken() {\n const response = await axios.post(\n localStorage.keycloakUrl +\n '/realms/' +\n localStorage.keycloakRealm +\n '/protocol/openid-connect/token',\n {\n username: this.username,\n password: this.password,\n client_id: localStorage.keycloakClientId,\n grant_type: 'password',\n scope: 'openid',\n },\n {\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n timeout: 5000,\n },\n )\n return response.data.access_token\n },\n },\n}\n</script>\n\n<style scoped>\n.label {\n font-weight: bold;\n text-transform: capitalize;\n}\n:deep(.v-input--selection-controls) {\n padding: 0px;\n margin: 0px;\n}\n</style>\n"],"names":["_sfc_main","value","newValue","oldValue","Api","response","token","axios","_response","error","_createBlock","_component_v_dialog","$props","$options","_cache","$event","_withCtx","_createVNode","_component_v_card","_component_v_toolbar","_component_v_spacer","_createElementVNode","_component_v_card_text","_component_v_container","_component_v_alert","$data","_createTextVNode","_toDisplayString","_component_v_row","_createCommentVNode","_openBlock","_component_v_text_field","_component_v_btn","_withModifiers"],"mappings":"sQAuFKA,EAAU,CACb,MAAO,CACL,KAAM,OACN,QAAS,OACT,UAAW,OACX,WAAY,CACV,KAAM,QACN,QAAS,EACV,EACD,WAAY,OACb,EACD,MAAO,CACL,MAAO,CACL,QAAS,KACT,SAAU,KACV,SAAU,KACV,WAAY,GACZ,MAAO,GACP,UAAW,EACb,CACD,EACD,SAAU,CACR,KAAM,CACJ,KAAM,CACJ,OAAO,KAAK,UACb,EACD,IAAIC,EAAO,CACT,KAAK,MAAM,oBAAqBA,CAAK,CACtC,CACF,EACD,UAAW,UAAY,CACrB,MAAO,CAAC,CAAC,KAAK,UAAY,CAAC,CAAC,KAAK,QAClC,EACD,eAAgB,UAAY,CAC1B,MAAO,CAAC,KAAK,WAAa,CAAC,KAAK,UACjC,CACF,EACD,eAAgB,CACd,cAAc,KAAK,OAAO,EAC1B,KAAK,QAAU,KACf,KAAK,WAAa,GAClB,KAAK,SAAW,KAChB,KAAK,SAAW,IACjB,EACD,MAAO,CAIL,WAAY,SAAUC,EAAUC,EAAU,CACpCD,GAEFE,EAAAA,GAAI,IAAI,sCAAwC,KAAK,IAAI,EAAE,KACxDC,GAAa,CACRA,EAAS,KAAK,SAAW,OAC3B,KAAK,WAAa,GAErB,CACH,EAGA,KAAK,QAAU,YAAY,IAAM,CAC3B,KAAK,KACPD,EAAAA,GAAI,IAAI,kCAAoC,KAAK,IAAI,EAAE,KACpDC,GAAa,CACRA,EAAS,KAAK,SAAW,YAC3B,KAAK,MAAM,SAAUA,EAAS,KAAK,MAAM,EACzC,KAAK,KAAO,GAEf,CACH,EAEA,KAAK,KAAO,EAEhB,EAAG,GAAI,IAEP,cAAc,KAAK,OAAO,EAC1B,KAAK,QAAU,KACf,KAAK,WAAa,GAClB,KAAK,SAAW,KAChB,KAAK,SAAW,KAEnB,CACF,EACD,QAAS,CACP,MAAM,SAAU,CACd,GAAI,KAAK,WACP,MAAMD,EAAAA,GAAI,KAAK,mCAAqC,KAAK,KAAM,CAAE,CAAA,EAAE,KAChEC,GAAa,CACRA,EAAS,QAAU,MACrB,KAAK,MAAM,SAAU,UAAU,EAC/B,KAAK,KAAO,GACZ,KAAK,MAAQ,GAEhB,CACH,MACK,CACL,IAAIC,EAAQ,MAAM,KAAK,iBAAgB,EACvCC,EAAAA,MACG,KACC,mCAAqC,KAAK,KAC1C,CAAE,EACF,CACE,QAAS,CACP,cAAeD,EACf,eAAgB,kBACjB,EACD,OAAQ,CACN,MAAO,OAAO,WACf,EACD,QAAS,GACV,CACH,EACC,KAAME,GAAc,CACnB,KAAK,MAAM,SAAU,UAAU,EAC/B,KAAK,KAAO,GACZ,KAAK,MAAQ,EACd,CAAA,EACA,MAAOC,GAAU,CAChB,KAAK,MAAQ,GACTA,EAAM,SACR,KAAK,UAAYA,EAAM,SAAS,KAAK,QAErC,KAAK,UAAYA,EAAM,OAE1B,CAAA,CACL,CACD,EACD,MAAM,QAAS,CACb,GAAI,KAAK,WACP,MAAML,EAAAA,GAAI,KAAK,kCAAoC,KAAK,KAAM,CAAE,CAAA,EAAE,KAC/DC,GAAa,CACRA,EAAS,QAAU,MACrB,KAAK,MAAM,SAAU,UAAU,EAC/B,KAAK,KAAO,GACZ,KAAK,MAAQ,GAEhB,CACH,MACK,CACL,IAAIC,EAAQ,MAAM,KAAK,iBAAgB,GACtB,MAAMC,EAAAA,MAAM,KAC3B,kCAAoC,KAAK,KACzC,CAAE,EACF,CACE,QAAS,CACP,cAAeD,EACf,eAAgB,kBACjB,EACD,OAAQ,CACN,MAAO,OAAO,WACf,EACD,QAAS,GACV,CACH,GACa,QAAU,MACrB,KAAK,MAAM,SAAU,UAAU,EAC/B,KAAK,KAAO,GACZ,KAAK,MAAQ,GAEjB,CACD,EACD,MAAM,kBAAmB,CAoBvB,OAnBiB,MAAMC,EAAAA,MAAM,KAC3B,aAAa,YACX,WACA,aAAa,cACb,iCACF,CACE,SAAU,KAAK,SACf,SAAU,KAAK,SACf,UAAW,aAAa,iBACxB,WAAY,WACZ,MAAO,QACR,EACD,CACE,QAAS,CACP,eAAgB,mCACjB,EACD,QAAS,GACV,CACH,GACgB,KAAK,YACtB,CACF,CACH,iYA5PEG,EA6DW,YAAAC,EAAA,CA7DA,WAAYC,EAAU,WAnBnC,WAmB8CC,EAAI,KAnBlD,sBAAAC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAmB8CF,EAAI,KAAAE,GAAE,MAAM,QAnB1D,QAAAC,EAAA,QAoBI,IA2DS,CA3DTC,EA2DS,YAAAC,EAAA,KAAA,CA/Eb,QAAAF,EAAA,QAqBM,IAIY,CAJZC,EAAAA,YAIYE,EAAA,CAJD,OAAO,IAAI,EAAA,CArB5B,QAAAH,EAAA,QAsBQ,IAAY,CAAZC,EAAAA,YAAYG,CAAA,EACZN,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAO,qBAAoD,YAA9C,0CAAuC,EAAA,GAC7CJ,EAAAA,YAAYG,CAAA,IAxBpB,EAAA,IA2BMH,EAmDc,YAAAK,EAAA,KAAA,CA9EpB,QAAAN,EAAA,QA4BQ,IAiDc,CAjDdC,EAAAA,YAiDcM,EAAA,CAjDD,MAAA,EAAK,EAAA,CA5B1B,QAAAP,EAAA,QA6BU,IAEU,CAFVC,EAAAA,YAEUO,EAAA,CAFD,KAAK,QA7BxB,WA6ByCC,EAAK,MA7B9C,sBAAAX,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GA6ByCU,EAAK,MAAAV,GAAE,YAAA,KA7BhD,QAAAC,EAAA,QA8BY,IAAe,CA9B3BU,EAAAA,gBAAAC,EAAA,gBA8BeF,EAAS,SAAA,EAAA,CAAA,IA9BxB,EAAA,qBAgCUR,EAAAA,YAEQW,EAAA,CAFD,MAAM,OAAO,MAAA,CAAoB,MAAA,OAAA,IAhClD,QAAAZ,EAAA,QAiCa,IAAK,CAjClBU,EAAA,gBAiCa,QAAKC,EAAA,gBAAGf,EAAO,OAAA,EAAG,wCACrB,CAAA,IAlCV,EAAA,IAmCUK,EAAAA,YAAgEW,EAAA,CAAzD,MAAM,OAAO,MAAA,CAAoB,MAAA,OAAA,IAnClD,QAAAZ,EAAA,QAmCmD,IAAe,CAnClEU,EAAAA,gBAAAC,EAAA,gBAmCsDf,EAAS,SAAA,EAAA,CAAA,IAnC/D,EAAA,IAoCUK,EAAAA,YAAuDW,EAAA,CAAhD,MAAM,iBAAiB,EAAA,CApCxC,QAAAZ,EAAA,QAoCyC,IAAM,CApC/CU,EAAAA,gBAoCyC,2BAASd,EAAI,IAAA,EAAA,CAAA,IApCtD,EAAA,IAsCwBa,EAAU,WAtClCI,EAAA,mBAAA,GAAA,EAAA,GAsCUC,EAAA,UAAA,EAAApB,EAAAA,YAMQkB,GA5ClB,IAAA,CAAA,EAAA,CAAA,QAAAZ,EAAA,QAuCY,IAIE,CAJFC,EAAAA,YAIEc,EAAA,CA3Cd,WAwCuBN,EAAQ,SAxC/B,sBAAAX,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAwCuBU,EAAQ,SAAAV,GACjB,MAAM,WACN,YAAU,qCA1CxB,EAAA,KA6CwBU,EAAU,WA7ClCI,EAAA,mBAAA,GAAA,EAAA,GA6CUC,EAAA,UAAA,EAAApB,EAAAA,YAOQkB,GApDlB,IAAA,CAAA,EAAA,CAAA,QAAAZ,EAAA,QA8CY,IAKE,CALFC,EAAAA,YAKEc,EAAA,CAnDd,WA+CuBN,EAAQ,SA/C/B,sBAAAX,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GA+CuBU,EAAQ,SAAAV,GACjB,KAAK,WACL,MAAM,WACN,YAAU,qCAlDxB,EAAA,KAqDUE,EAAAA,YAuBQW,EAAA,CAvBD,MAAM,MAAM,EAAA,CArD7B,QAAAZ,EAAA,QAsDY,IAAY,CAAZC,EAAAA,YAAYG,CAAA,EACZH,EAAAA,YAUQe,EAAA,CATN,KAAK,SACJ,QAzDfC,EAAAA,cAyD8BpB,EAAM,OAAA,CAAA,SAAA,CAAA,EACtB,MAAM,OACN,MAAM,YACN,SAAA,GACC,SAAUA,EAAc,eACzB,YAAU,WA9DxB,QAAAG,EAAA,QA+Da,IAEDF,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAA,CAjEZY,EAAAA,gBA+Da,UAED,KAjEZ,EAAA,6BAkEYT,EAAAA,YASQe,EAAA,CARN,KAAK,SACJ,QApEfC,EAAAA,cAoE8BpB,EAAO,QAAA,CAAA,SAAA,CAAA,EACvB,MAAM,OACN,MAAM,UACL,SAAUA,EAAc,eACzB,YAAU,YAxExB,QAAAG,EAAA,QAyEa,IAEDF,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAA,CA3EZY,EAAAA,gBAyEa,WAED,KA3EZ,EAAA,+BAAA,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,EAAA"}
@@ -0,0 +1,40 @@
1
+ import { W as r } from "./Widget-fRCERxGf.js";
2
+ import { T as s } from "./timeFilters-CRYpYDdf.js";
3
+ import { resolveComponent as i, createBlock as n, openBlock as d, normalizeStyle as m } from "vue";
4
+ import { _ as p } from "./CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-CHgC5LLL.js";
5
+ const u = {
6
+ mixins: [r, s],
7
+ data() {
8
+ return {
9
+ label: "Date",
10
+ dateValue: ""
11
+ };
12
+ },
13
+ created() {
14
+ this.parameters[0] && (this.label = this.parameters[0]), this.dateValue = this.formatDate(/* @__PURE__ */ new Date(), this.screenTimeZone);
15
+ },
16
+ methods: {
17
+ text() {
18
+ return this.dateValue;
19
+ },
20
+ date() {
21
+ return this.dateValue;
22
+ }
23
+ }
24
+ };
25
+ function f(a, t, c, _, e, h) {
26
+ const l = i("v-text-field");
27
+ return d(), n(l, {
28
+ modelValue: e.dateValue,
29
+ "onUpdate:modelValue": t[0] || (t[0] = (o) => e.dateValue = o),
30
+ label: e.label,
31
+ style: m(a.computedStyle),
32
+ type: "date",
33
+ "hide-details": ""
34
+ }, null, 8, ["modelValue", "label", "style"]);
35
+ }
36
+ const D = /* @__PURE__ */ p(u, [["render", f]]);
37
+ export {
38
+ D as default
39
+ };
40
+ //# sourceMappingURL=DateWidget-CW7Od7lB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateWidget-CW7Od7lB.js","sources":["../src/widgets/DateWidget.vue"],"sourcesContent":["<!--\n# Copyright 2024 OpenC3, Inc.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <v-text-field\n v-model=\"dateValue\"\n :label=\"label\"\n :style=\"computedStyle\"\n type=\"date\"\n hide-details\n />\n</template>\n\n<script>\nimport Widget from './Widget'\nimport { TimeFilters } from '@/util'\n\nexport default {\n mixins: [Widget, TimeFilters],\n data() {\n return {\n label: 'Date',\n dateValue: '',\n }\n },\n created() {\n if (this.parameters[0]) {\n this.label = this.parameters[0]\n }\n this.dateValue = this.formatDate(new Date(), this.screenTimeZone)\n },\n methods: {\n text() {\n return this.dateValue\n },\n date() {\n return this.dateValue\n },\n },\n}\n</script>\n"],"names":["_sfc_main","Widget","TimeFilters","_createBlock","_component_v_text_field","$data","_cache","$event","_normalizeStyle","_ctx"],"mappings":";;;;AAgCA,MAAKA,IAAU;AAAA,EACb,QAAQ,CAACC,GAAQC,CAAW;AAAA,EAC5B,OAAO;AACL,WAAO;AAAA,MACL,OAAO;AAAA,MACP,WAAW;AAAA,IACb;AAAA,EACD;AAAA,EACD,UAAU;AACR,IAAI,KAAK,WAAW,CAAC,MACnB,KAAK,QAAQ,KAAK,WAAW,CAAC,IAEhC,KAAK,YAAY,KAAK,WAAW,oBAAI,KAAI,GAAI,KAAK,cAAc;AAAA,EACjE;AAAA,EACD,SAAS;AAAA,IACP,OAAO;AACL,aAAO,KAAK;AAAA,IACb;AAAA,IACD,OAAO;AACL,aAAO,KAAK;AAAA,IACb;AAAA,EACF;AACH;;;cAnCEC,EAMEC,GAAA;AAAA,IAzBJ,YAoBaC,EAAS;AAAA,IApBtB,uBAAAC,EAAA,CAAA,MAAAA,EAAA,CAAA,IAAA,CAAAC,MAoBaF,EAAS,YAAAE;AAAA,IACjB,OAAOF,EAAK;AAAA,IACZ,OAtBLG,EAsBYC,EAAa,aAAA;AAAA,IACrB,MAAK;AAAA,IACL,gBAAA;AAAA;;;"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./Widget-DNf52jRQ.cjs"),i=require("./timeFilters-8SaYvcH0.cjs"),e=require("vue"),n=require("./CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-BHFhmbuH.cjs"),u={mixins:[o.Widget,i.TimeFilters],data(){return{label:"Date",dateValue:""}},created(){this.parameters[0]&&(this.label=this.parameters[0]),this.dateValue=this.formatDate(new Date,this.screenTimeZone)},methods:{text(){return this.dateValue},date(){return this.dateValue}}};function d(a,l,m,_,t,p){const r=e.resolveComponent("v-text-field");return e.openBlock(),e.createBlock(r,{modelValue:t.dateValue,"onUpdate:modelValue":l[0]||(l[0]=s=>t.dateValue=s),label:t.label,style:e.normalizeStyle(a.computedStyle),type:"date","hide-details":""},null,8,["modelValue","label","style"])}const c=n._export_sfc(u,[["render",d]]);exports.default=c;
2
+ //# sourceMappingURL=DateWidget-DKZz1J9J.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateWidget-DKZz1J9J.cjs","sources":["../src/widgets/DateWidget.vue"],"sourcesContent":["<!--\n# Copyright 2024 OpenC3, Inc.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <v-text-field\n v-model=\"dateValue\"\n :label=\"label\"\n :style=\"computedStyle\"\n type=\"date\"\n hide-details\n />\n</template>\n\n<script>\nimport Widget from './Widget'\nimport { TimeFilters } from '@/util'\n\nexport default {\n mixins: [Widget, TimeFilters],\n data() {\n return {\n label: 'Date',\n dateValue: '',\n }\n },\n created() {\n if (this.parameters[0]) {\n this.label = this.parameters[0]\n }\n this.dateValue = this.formatDate(new Date(), this.screenTimeZone)\n },\n methods: {\n text() {\n return this.dateValue\n },\n date() {\n return this.dateValue\n },\n },\n}\n</script>\n"],"names":["_sfc_main","Widget","TimeFilters","_createBlock","_component_v_text_field","$data","_cache","$event","_normalizeStyle","_ctx"],"mappings":"4QAgCKA,EAAU,CACb,OAAQ,CAACC,EAAM,OAAEC,aAAW,EAC5B,MAAO,CACL,MAAO,CACL,MAAO,OACP,UAAW,EACb,CACD,EACD,SAAU,CACJ,KAAK,WAAW,CAAC,IACnB,KAAK,MAAQ,KAAK,WAAW,CAAC,GAEhC,KAAK,UAAY,KAAK,WAAW,IAAI,KAAQ,KAAK,cAAc,CACjE,EACD,QAAS,CACP,MAAO,CACL,OAAO,KAAK,SACb,EACD,MAAO,CACL,OAAO,KAAK,SACb,CACF,CACH,0FAnCEC,EAME,YAAAC,EAAA,CAzBJ,WAoBaC,EAAS,UApBtB,sBAAAC,EAAA,CAAA,IAAAA,EAAA,CAAA,EAAAC,GAoBaF,EAAS,UAAAE,GACjB,MAAOF,EAAK,MACZ,MAtBLG,EAAAA,eAsBYC,EAAa,aAAA,EACrB,KAAK,OACL,eAAA"}