@openc3/vue-common 6.6.0 → 6.7.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.
- package/dist/{ArrayWidget-Ck6pzAyW.js → ArrayWidget-BSG8KEtf.js} +4 -4
- package/dist/{ArrayWidget-Ck6pzAyW.js.map → ArrayWidget-BSG8KEtf.js.map} +1 -1
- package/dist/{ArrayWidget-Bb_Ldxq7.cjs → ArrayWidget-B__t3xOt.cjs} +2 -2
- package/dist/{ArrayWidget-Bb_Ldxq7.cjs.map → ArrayWidget-B__t3xOt.cjs.map} +1 -1
- package/dist/ArrayplotWidget-BduWyJlL.cjs +2 -0
- package/dist/ArrayplotWidget-BduWyJlL.cjs.map +1 -0
- package/dist/{ArrayplotWidget-ntRLh6-B.js → ArrayplotWidget-WVu76Kqn.js} +22 -22
- package/dist/ArrayplotWidget-WVu76Kqn.js.map +1 -0
- package/dist/{BarColumn-Bgz2YJ59.js → BarColumn-Cflh9pUz.js} +3 -3
- package/dist/{BarColumn-Bgz2YJ59.js.map → BarColumn-Cflh9pUz.js.map} +1 -1
- package/dist/{BarColumn-DtRNuOpa.cjs → BarColumn-DVn9f2WO.cjs} +2 -2
- package/dist/{BarColumn-DtRNuOpa.cjs.map → BarColumn-DVn9f2WO.cjs.map} +1 -1
- package/dist/{BlockWidget-DGH3Zz5p.js → BlockWidget-B7ryWGCq.js} +4 -4
- package/dist/{BlockWidget-DGH3Zz5p.js.map → BlockWidget-B7ryWGCq.js.map} +1 -1
- package/dist/{BlockWidget-DOY5lVfa.cjs → BlockWidget-CRqA09Ve.cjs} +2 -2
- package/dist/{BlockWidget-DOY5lVfa.cjs.map → BlockWidget-CRqA09Ve.cjs.map} +1 -1
- package/dist/{ButtonWidget-D_tupiPB.js → ButtonWidget-BKih3ix9.js} +17 -13
- package/dist/{ButtonWidget-D_tupiPB.js.map → ButtonWidget-BKih3ix9.js.map} +1 -1
- package/dist/{ButtonWidget-CFyZXGt6.cjs → ButtonWidget-Bb46aUCR.cjs} +3 -3
- package/dist/{ButtonWidget-CFyZXGt6.cjs.map → ButtonWidget-Bb46aUCR.cjs.map} +1 -1
- package/dist/{CanvasWidget-CzG2jYQb.js → CanvasWidget-DT9xMSfb.js} +2 -2
- package/dist/{CanvasWidget-CzG2jYQb.js.map → CanvasWidget-DT9xMSfb.js.map} +1 -1
- package/dist/{CanvasWidget-C6dc7mUw.cjs → CanvasWidget-DT_vPAoc.cjs} +2 -2
- package/dist/{CanvasWidget-C6dc7mUw.cjs.map → CanvasWidget-DT_vPAoc.cjs.map} +1 -1
- package/dist/{CanvasdotWidget-0FAaw4G2.js → CanvasdotWidget-7H5Hvcn-.js} +2 -2
- package/dist/{CanvasdotWidget-0FAaw4G2.js.map → CanvasdotWidget-7H5Hvcn-.js.map} +1 -1
- package/dist/{CanvasdotWidget-9bBVHC1l.cjs → CanvasdotWidget-DNSQriVo.cjs} +2 -2
- package/dist/{CanvasdotWidget-9bBVHC1l.cjs.map → CanvasdotWidget-DNSQriVo.cjs.map} +1 -1
- package/dist/{CanvasimageWidget-CNJlzLqo.js → CanvasimageWidget-BbWYx6Gj.js} +3 -3
- package/dist/{CanvasimageWidget-CNJlzLqo.js.map → CanvasimageWidget-BbWYx6Gj.js.map} +1 -1
- package/dist/{CanvasimageWidget-DjvdDCRS.cjs → CanvasimageWidget-CfleScIF.cjs} +2 -2
- package/dist/{CanvasimageWidget-DjvdDCRS.cjs.map → CanvasimageWidget-CfleScIF.cjs.map} +1 -1
- package/dist/{CanvasimagevalueWidget-DudwwOD6.js → CanvasimagevalueWidget-Blvoe2X4.js} +3 -3
- package/dist/{CanvasimagevalueWidget-DudwwOD6.js.map → CanvasimagevalueWidget-Blvoe2X4.js.map} +1 -1
- package/dist/{CanvasimagevalueWidget-C1fI-ftP.cjs → CanvasimagevalueWidget-ouM4DBeD.cjs} +2 -2
- package/dist/{CanvasimagevalueWidget-C1fI-ftP.cjs.map → CanvasimagevalueWidget-ouM4DBeD.cjs.map} +1 -1
- package/dist/{CanvaslabelWidget-BZQp16dH.js → CanvaslabelWidget-BPx_Rm4o.js} +2 -2
- package/dist/{CanvaslabelWidget-BZQp16dH.js.map → CanvaslabelWidget-BPx_Rm4o.js.map} +1 -1
- package/dist/{CanvaslabelWidget--6Sjc4E8.cjs → CanvaslabelWidget-DB3qox5N.cjs} +2 -2
- package/dist/{CanvaslabelWidget--6Sjc4E8.cjs.map → CanvaslabelWidget-DB3qox5N.cjs.map} +1 -1
- package/dist/{CanvaslabelvalueWidget-DZCxsIKk.cjs → CanvaslabelvalueWidget-2k6TjSNj.cjs} +2 -2
- package/dist/{CanvaslabelvalueWidget-DZCxsIKk.cjs.map → CanvaslabelvalueWidget-2k6TjSNj.cjs.map} +1 -1
- package/dist/{CanvaslabelvalueWidget-CHS36Te9.js → CanvaslabelvalueWidget-DzdWvL0W.js} +2 -2
- package/dist/{CanvaslabelvalueWidget-CHS36Te9.js.map → CanvaslabelvalueWidget-DzdWvL0W.js.map} +1 -1
- package/dist/{CanvaslineWidget-nhKEAGhs.js → CanvaslineWidget-CqskilGk.js} +2 -2
- package/dist/{CanvaslineWidget-nhKEAGhs.js.map → CanvaslineWidget-CqskilGk.js.map} +1 -1
- package/dist/{CanvaslineWidget-Bn83Rb10.cjs → CanvaslineWidget-oAoznYZP.cjs} +2 -2
- package/dist/{CanvaslineWidget-Bn83Rb10.cjs.map → CanvaslineWidget-oAoznYZP.cjs.map} +1 -1
- package/dist/{CanvaslinevalueWidget-C6x_4Gc9.cjs → CanvaslinevalueWidget-BmyIxGNz.cjs} +2 -2
- package/dist/{CanvaslinevalueWidget-C6x_4Gc9.cjs.map → CanvaslinevalueWidget-BmyIxGNz.cjs.map} +1 -1
- package/dist/{CanvaslinevalueWidget-DsyIDkJy.js → CanvaslinevalueWidget-C0JIKdvZ.js} +2 -2
- package/dist/{CanvaslinevalueWidget-DsyIDkJy.js.map → CanvaslinevalueWidget-C0JIKdvZ.js.map} +1 -1
- package/dist/{CheckbuttonWidget-BvggsGZY.cjs → CheckbuttonWidget-C548xrRy.cjs} +2 -2
- package/dist/{CheckbuttonWidget-BvggsGZY.cjs.map → CheckbuttonWidget-C548xrRy.cjs.map} +1 -1
- package/dist/{CheckbuttonWidget-DCam7Jd0.js → CheckbuttonWidget-C9FbJx2v.js} +2 -2
- package/dist/{CheckbuttonWidget-DCam7Jd0.js.map → CheckbuttonWidget-C9FbJx2v.js.map} +1 -1
- package/dist/ClassificationBanners-BTdLBSfy.cjs +2 -0
- package/dist/ClassificationBanners-BTdLBSfy.cjs.map +1 -0
- package/dist/ClassificationBanners-CgJiwgTp.js +35 -0
- package/dist/ClassificationBanners-CgJiwgTp.js.map +1 -0
- package/dist/{ComboboxWidget-BS5WSbrK.cjs → ComboboxWidget-AErojGw0.cjs} +2 -2
- package/dist/{ComboboxWidget-BS5WSbrK.cjs.map → ComboboxWidget-AErojGw0.cjs.map} +1 -1
- package/dist/{ComboboxWidget-ZX-k-_aK.js → ComboboxWidget-BbNKT0s8.js} +2 -2
- package/dist/{ComboboxWidget-ZX-k-_aK.js.map → ComboboxWidget-BbNKT0s8.js.map} +1 -1
- package/dist/{CriticalCmdDialog-Dylpoz_4.js → CriticalCmdDialog-CF7Sqjdm.js} +11 -8
- package/dist/{CriticalCmdDialog-Dylpoz_4.js.map → CriticalCmdDialog-CF7Sqjdm.js.map} +1 -1
- package/dist/CriticalCmdDialog-N06JxCHg.cjs +2 -0
- package/dist/{CriticalCmdDialog-7tOK2XQk.cjs.map → CriticalCmdDialog-N06JxCHg.cjs.map} +1 -1
- package/dist/CustomIcon-Bop2mEnu.cjs.map +1 -1
- package/dist/CustomIcon-h5X7369N.js.map +1 -1
- package/dist/{DateWidget-DuJ5uC2t.js → DateWidget-CBMsdRUE.js} +2 -2
- package/dist/{DateWidget-DuJ5uC2t.js.map → DateWidget-CBMsdRUE.js.map} +1 -1
- package/dist/{DateWidget-jejbk2-G.cjs → DateWidget-CCIkDM9_.cjs} +2 -2
- package/dist/{DateWidget-jejbk2-G.cjs.map → DateWidget-CCIkDM9_.cjs.map} +1 -1
- package/dist/DetailsDialog-CVYBgZll.cjs +2 -0
- package/dist/DetailsDialog-CVYBgZll.cjs.map +1 -0
- package/dist/{DetailsDialog-BQE0TraI.js → DetailsDialog-DRVahE5z.js} +129 -97
- package/dist/DetailsDialog-DRVahE5z.js.map +1 -0
- package/dist/DynamicWidget-BWEVCUfd.cjs.map +1 -1
- package/dist/DynamicWidget-CfMtj7H8.js.map +1 -1
- package/dist/EventListDialog-CjYLRdkb.cjs +2 -0
- package/dist/{EventListDialog-CDcJcxy5.cjs.map → EventListDialog-CjYLRdkb.cjs.map} +1 -1
- package/dist/{EventListDialog-CGUFCrJF.js → EventListDialog-DDWL9gIQ.js} +46 -31
- package/dist/{EventListDialog-CGUFCrJF.js.map → EventListDialog-DDWL9gIQ.js.map} +1 -1
- package/dist/{FormatvalueWidget-DYICPNcx.js → FormatvalueWidget-BLWsqhIZ.js} +3 -3
- package/dist/{FormatvalueWidget-DYICPNcx.js.map → FormatvalueWidget-BLWsqhIZ.js.map} +1 -1
- package/dist/{FormatvalueWidget-wu7Q3sXu.cjs → FormatvalueWidget-BiaqheLJ.cjs} +2 -2
- package/dist/{FormatvalueWidget-wu7Q3sXu.cjs.map → FormatvalueWidget-BiaqheLJ.cjs.map} +1 -1
- package/dist/Graph-BiU56Qj2.js +2669 -0
- package/dist/Graph-BiU56Qj2.js.map +1 -0
- package/dist/Graph-CWjf71TK.cjs +2 -0
- package/dist/Graph-CWjf71TK.cjs.map +1 -0
- package/dist/{GraphWidget-cTVq29cY.js → GraphWidget-Ga0AEfrJ.js} +31 -44
- package/dist/{GraphWidget-cTVq29cY.js.map → GraphWidget-Ga0AEfrJ.js.map} +1 -1
- package/dist/GraphWidget-cfgX_skM.cjs +2 -0
- package/dist/{GraphWidget-CQjKAMPR.cjs.map → GraphWidget-cfgX_skM.cjs.map} +1 -1
- package/dist/{HorizontalWidget-v1pfd94Z.js → HorizontalWidget-CsVhLwZO.js} +6 -6
- package/dist/{HorizontalWidget-v1pfd94Z.js.map → HorizontalWidget-CsVhLwZO.js.map} +1 -1
- package/dist/HorizontalWidget-i6aqMSRv.cjs +2 -0
- package/dist/{HorizontalWidget--AkRJPlL.cjs.map → HorizontalWidget-i6aqMSRv.cjs.map} +1 -1
- package/dist/HorizontalboxWidget-B_S8mswF.cjs +2 -0
- package/dist/{HorizontalboxWidget-synL-Bar.cjs.map → HorizontalboxWidget-B_S8mswF.cjs.map} +1 -1
- package/dist/{HorizontalboxWidget-B06-c_n4.js → HorizontalboxWidget-xC6PADl3.js} +15 -15
- package/dist/{HorizontalboxWidget-B06-c_n4.js.map → HorizontalboxWidget-xC6PADl3.js.map} +1 -1
- package/dist/{HorizontallineWidget-lTr2JTFY.cjs → HorizontallineWidget-Cpys-185.cjs} +2 -2
- package/dist/{HorizontallineWidget-lTr2JTFY.cjs.map → HorizontallineWidget-Cpys-185.cjs.map} +1 -1
- package/dist/{HorizontallineWidget-DEODVJCk.js → HorizontallineWidget-NZIxmRVN.js} +2 -2
- package/dist/{HorizontallineWidget-DEODVJCk.js.map → HorizontallineWidget-NZIxmRVN.js.map} +1 -1
- package/dist/{IframeWidget-n8lNXrpt.js → IframeWidget-BgzjSfag.js} +2 -2
- package/dist/{IframeWidget-n8lNXrpt.js.map → IframeWidget-BgzjSfag.js.map} +1 -1
- package/dist/{IframeWidget-ByhwW9yG.cjs → IframeWidget-CCdvd8rg.cjs} +2 -2
- package/dist/{IframeWidget-ByhwW9yG.cjs.map → IframeWidget-CCdvd8rg.cjs.map} +1 -1
- package/dist/{ImageLoader-DBWVFtNu.cjs → ImageLoader-BIKl6vGc.cjs} +2 -2
- package/dist/{ImageLoader-DBWVFtNu.cjs.map → ImageLoader-BIKl6vGc.cjs.map} +1 -1
- package/dist/{ImageLoader-CfcErydq.js → ImageLoader-DbFVK1Ui.js} +2 -2
- package/dist/{ImageLoader-CfcErydq.js.map → ImageLoader-DbFVK1Ui.js.map} +1 -1
- package/dist/{ImageviewerWidget-DE8fj06Z.js → ImageviewerWidget-BnT5m-nw.js} +2 -2
- package/dist/{ImageviewerWidget-DE8fj06Z.js.map → ImageviewerWidget-BnT5m-nw.js.map} +1 -1
- package/dist/{ImageviewerWidget-D4mU6wLX.cjs → ImageviewerWidget-lnralJZa.cjs} +2 -2
- package/dist/{ImageviewerWidget-D4mU6wLX.cjs.map → ImageviewerWidget-lnralJZa.cjs.map} +1 -1
- package/dist/{InterfacesTab-BF-Wx5gk.js → InterfacesTab-Cd_RITVP.js} +3 -3
- package/dist/{InterfacesTab-BF-Wx5gk.js.map → InterfacesTab-Cd_RITVP.js.map} +1 -1
- package/dist/{InterfacesTab-DTAAIx-y.cjs → InterfacesTab-DjlzjJYG.cjs} +2 -2
- package/dist/{InterfacesTab-DTAAIx-y.cjs.map → InterfacesTab-DjlzjJYG.cjs.map} +1 -1
- package/dist/{LabelWidget-DQZqRxKF.cjs → LabelWidget-CRHSFVPT.cjs} +2 -2
- package/dist/{LabelWidget-DQZqRxKF.cjs.map → LabelWidget-CRHSFVPT.cjs.map} +1 -1
- package/dist/{LabelWidget-iUIJLhdA.js → LabelWidget-DSDYmz6X.js} +2 -2
- package/dist/{LabelWidget-iUIJLhdA.js.map → LabelWidget-DSDYmz6X.js.map} +1 -1
- package/dist/{LabelledWidget-9HWChRmv.cjs → LabelledWidget-BXf9cTf_.cjs} +2 -2
- package/dist/{LabelledWidget-9HWChRmv.cjs.map → LabelledWidget-BXf9cTf_.cjs.map} +1 -1
- package/dist/{LabelledWidget-KI6fMlsr.js → LabelledWidget-DMb-myxs.js} +4 -4
- package/dist/{LabelledWidget-KI6fMlsr.js.map → LabelledWidget-DMb-myxs.js.map} +1 -1
- package/dist/{LabelprogressbarWidget-DwzTP73u.cjs → LabelprogressbarWidget-BNHaAUXq.cjs} +2 -2
- package/dist/{LabelprogressbarWidget-DwzTP73u.cjs.map → LabelprogressbarWidget-BNHaAUXq.cjs.map} +1 -1
- package/dist/{LabelprogressbarWidget-C2lzmqBH.js → LabelprogressbarWidget-CkjDJBao.js} +4 -4
- package/dist/{LabelprogressbarWidget-C2lzmqBH.js.map → LabelprogressbarWidget-CkjDJBao.js.map} +1 -1
- package/dist/{LabelsparklineWidget-DMjBshq8.cjs → LabelsparklineWidget-BpHMkt-L.cjs} +2 -2
- package/dist/{LabelsparklineWidget-DMjBshq8.cjs.map → LabelsparklineWidget-BpHMkt-L.cjs.map} +1 -1
- package/dist/{LabelsparklineWidget-Ci6GGm29.js → LabelsparklineWidget-DBYPFz3Y.js} +4 -4
- package/dist/{LabelsparklineWidget-Ci6GGm29.js.map → LabelsparklineWidget-DBYPFz3Y.js.map} +1 -1
- package/dist/{LabelvalueWidget-mAb0eLA8.cjs → LabelvalueWidget-BFHYb64m.cjs} +2 -2
- package/dist/{LabelvalueWidget-mAb0eLA8.cjs.map → LabelvalueWidget-BFHYb64m.cjs.map} +1 -1
- package/dist/{LabelvalueWidget-oiW-JDw6.js → LabelvalueWidget-DlTkJC4i.js} +4 -4
- package/dist/{LabelvalueWidget-oiW-JDw6.js.map → LabelvalueWidget-DlTkJC4i.js.map} +1 -1
- package/dist/{LabelvaluedescWidget-CZJ0kZN-.cjs → LabelvaluedescWidget-CUld9MqE.cjs} +2 -2
- package/dist/{LabelvaluedescWidget-CZJ0kZN-.cjs.map → LabelvaluedescWidget-CUld9MqE.cjs.map} +1 -1
- package/dist/{LabelvaluedescWidget-Ck0AJ9g0.js → LabelvaluedescWidget-dRqnGZub.js} +5 -5
- package/dist/{LabelvaluedescWidget-Ck0AJ9g0.js.map → LabelvaluedescWidget-dRqnGZub.js.map} +1 -1
- package/dist/{LabelvaluelimitsbarWidget-DjBqYxRr.cjs → LabelvaluelimitsbarWidget-Br_PXH0r.cjs} +2 -2
- package/dist/{LabelvaluelimitsbarWidget-DjBqYxRr.cjs.map → LabelvaluelimitsbarWidget-Br_PXH0r.cjs.map} +1 -1
- package/dist/{LabelvaluelimitsbarWidget-aaVLaejn.js → LabelvaluelimitsbarWidget-CS4NAPJ1.js} +4 -4
- package/dist/{LabelvaluelimitsbarWidget-aaVLaejn.js.map → LabelvaluelimitsbarWidget-CS4NAPJ1.js.map} +1 -1
- package/dist/{LabelvaluelimitscolumnWidget-Uur6aqOg.js → LabelvaluelimitscolumnWidget-D9x4Ppv8.js} +5 -5
- package/dist/{LabelvaluelimitscolumnWidget-Uur6aqOg.js.map → LabelvaluelimitscolumnWidget-D9x4Ppv8.js.map} +1 -1
- package/dist/{LabelvaluelimitscolumnWidget-GputlDZq.cjs → LabelvaluelimitscolumnWidget-DjLG10C5.cjs} +2 -2
- package/dist/{LabelvaluelimitscolumnWidget-GputlDZq.cjs.map → LabelvaluelimitscolumnWidget-DjLG10C5.cjs.map} +1 -1
- package/dist/{LabelvaluerangebarWidget-Ci-n_hxk.cjs → LabelvaluerangebarWidget-CsUfrGAM.cjs} +2 -2
- package/dist/{LabelvaluerangebarWidget-Ci-n_hxk.cjs.map → LabelvaluerangebarWidget-CsUfrGAM.cjs.map} +1 -1
- package/dist/{LabelvaluerangebarWidget-Bs9locqu.js → LabelvaluerangebarWidget-Dhyng4-n.js} +4 -4
- package/dist/{LabelvaluerangebarWidget-Bs9locqu.js.map → LabelvaluerangebarWidget-Dhyng4-n.js.map} +1 -1
- package/dist/Layout-DDktMnzb.cjs +2 -0
- package/dist/{Layout-kOQnicRa.cjs.map → Layout-DDktMnzb.cjs.map} +1 -1
- package/dist/{Layout-1z8iJV5-.js → Layout-mWR35VAD.js} +2 -2
- package/dist/{Layout-1z8iJV5-.js.map → Layout-mWR35VAD.js.map} +1 -1
- package/dist/LedWidget-CCQWCw80.cjs +2 -0
- package/dist/LedWidget-CCQWCw80.cjs.map +1 -0
- package/dist/{LedWidget-BN8IgAxJ.js → LedWidget-D8cq4pUv.js} +6 -6
- package/dist/LedWidget-D8cq4pUv.js.map +1 -0
- package/dist/{LimitsbarWidget-Co5GAHro.cjs → LimitsbarWidget-D4O0LWuC.cjs} +2 -2
- package/dist/{LimitsbarWidget-Co5GAHro.cjs.map → LimitsbarWidget-D4O0LWuC.cjs.map} +1 -1
- package/dist/{LimitsbarWidget-BxxoKTjp.js → LimitsbarWidget-VGJnDuVM.js} +2 -2
- package/dist/{LimitsbarWidget-BxxoKTjp.js.map → LimitsbarWidget-VGJnDuVM.js.map} +1 -1
- package/dist/{LimitscolorWidget-BpTcgqRC.cjs → LimitscolorWidget-BvxsopUs.cjs} +2 -2
- package/dist/{LimitscolorWidget-BpTcgqRC.cjs.map → LimitscolorWidget-BvxsopUs.cjs.map} +1 -1
- package/dist/{LimitscolorWidget-DFDwf4In.js → LimitscolorWidget-CG6Pqi12.js} +2 -2
- package/dist/{LimitscolorWidget-DFDwf4In.js.map → LimitscolorWidget-CG6Pqi12.js.map} +1 -1
- package/dist/{LimitscolumnWidget-CdBh2mJu.js → LimitscolumnWidget-DjovQdiT.js} +2 -2
- package/dist/{LimitscolumnWidget-CdBh2mJu.js.map → LimitscolumnWidget-DjovQdiT.js.map} +1 -1
- package/dist/{LimitscolumnWidget-CqJJKDzz.cjs → LimitscolumnWidget-Z9JnMlDS.cjs} +2 -2
- package/dist/{LimitscolumnWidget-CqJJKDzz.cjs.map → LimitscolumnWidget-Z9JnMlDS.cjs.map} +1 -1
- package/dist/LinegraphWidget-B_ECNLzU.cjs +2 -0
- package/dist/LinegraphWidget-B_ECNLzU.cjs.map +1 -0
- package/dist/{LinegraphWidget-jXksfbPb.js → LinegraphWidget-DSWAhXgZ.js} +13 -13
- package/dist/LinegraphWidget-DSWAhXgZ.js.map +1 -0
- package/dist/{MatrixbycolumnsWidget-DCwxPjwS.js → MatrixbycolumnsWidget-C3cuhRxz.js} +4 -4
- package/dist/{MatrixbycolumnsWidget-DCwxPjwS.js.map → MatrixbycolumnsWidget-C3cuhRxz.js.map} +1 -1
- package/dist/MatrixbycolumnsWidget-CPFzRQN5.cjs +2 -0
- package/dist/{MatrixbycolumnsWidget-DxRhvPGv.cjs.map → MatrixbycolumnsWidget-CPFzRQN5.cjs.map} +1 -1
- package/dist/{MicroservicesTab-DGaTcj-y.cjs → MicroservicesTab-BGgwT56M.cjs} +2 -2
- package/dist/{MicroservicesTab-DGaTcj-y.cjs.map → MicroservicesTab-BGgwT56M.cjs.map} +1 -1
- package/dist/{MicroservicesTab-B-SdMwek.js → MicroservicesTab-Dbp02UlV.js} +4 -4
- package/dist/{MicroservicesTab-B-SdMwek.js.map → MicroservicesTab-Dbp02UlV.js.map} +1 -1
- package/dist/Openc3Screen-BP2oW88G.cjs +6 -0
- package/dist/Openc3Screen-BP2oW88G.cjs.map +1 -0
- package/dist/{Openc3Screen-BZN0Wtrm.js → Openc3Screen-CkdegNDJ.js} +438 -310
- package/dist/Openc3Screen-CkdegNDJ.js.map +1 -0
- package/dist/{OutputDialog-CxKDhrg6.cjs → OutputDialog-2CmOBAEE.cjs} +2 -2
- package/dist/{OutputDialog-CxKDhrg6.cjs.map → OutputDialog-2CmOBAEE.cjs.map} +1 -1
- package/dist/{OutputDialog-CcSp-Uqo.js → OutputDialog-M5Xc_DqH.js} +12 -11
- package/dist/{OutputDialog-CcSp-Uqo.js.map → OutputDialog-M5Xc_DqH.js.map} +1 -1
- package/dist/PackagesTab-Dwp6g8W0.cjs +2 -0
- package/dist/{PackagesTab-B4V2n4io.cjs.map → PackagesTab-Dwp6g8W0.cjs.map} +1 -1
- package/dist/{PackagesTab-Dx25CfF0.js → PackagesTab-HQCOIGZK.js} +30 -24
- package/dist/{PackagesTab-Dx25CfF0.js.map → PackagesTab-HQCOIGZK.js.map} +1 -1
- package/dist/PluginsTab-COKDXShE.cjs +6 -0
- package/dist/PluginsTab-COKDXShE.cjs.map +1 -0
- package/dist/PluginsTab-CZApRILr.js +1288 -0
- package/dist/PluginsTab-CZApRILr.js.map +1 -0
- package/dist/{ProgressbarWidget-C0AkbX_o.cjs → ProgressbarWidget-BADSYuUN.cjs} +2 -2
- package/dist/{ProgressbarWidget-C0AkbX_o.cjs.map → ProgressbarWidget-BADSYuUN.cjs.map} +1 -1
- package/dist/{ProgressbarWidget-Cdu5nJC3.js → ProgressbarWidget-oCgAEFBO.js} +2 -2
- package/dist/{ProgressbarWidget-Cdu5nJC3.js.map → ProgressbarWidget-oCgAEFBO.js.map} +1 -1
- package/dist/{RadiobuttonWidget-DslmJO31.cjs → RadiobuttonWidget-Bklx2_Au.cjs} +2 -2
- package/dist/{RadiobuttonWidget-DslmJO31.cjs.map → RadiobuttonWidget-Bklx2_Au.cjs.map} +1 -1
- package/dist/{RadiobuttonWidget-CZZGbvdG.js → RadiobuttonWidget-D4Dak3lc.js} +2 -2
- package/dist/{RadiobuttonWidget-CZZGbvdG.js.map → RadiobuttonWidget-D4Dak3lc.js.map} +1 -1
- package/dist/{RadiogroupWidget-CQN3v8Ip.js → RadiogroupWidget-Dbe9T4fp.js} +2 -2
- package/dist/{RadiogroupWidget-CQN3v8Ip.js.map → RadiogroupWidget-Dbe9T4fp.js.map} +1 -1
- package/dist/{RadiogroupWidget-DKgBAR9E.cjs → RadiogroupWidget-Z2S2tgjG.cjs} +2 -2
- package/dist/{RadiogroupWidget-DKgBAR9E.cjs.map → RadiogroupWidget-Z2S2tgjG.cjs.map} +1 -1
- package/dist/{RangebarWidget-Tq80I5zA.cjs → RangebarWidget-C0TpxFDi.cjs} +2 -2
- package/dist/{RangebarWidget-Tq80I5zA.cjs.map → RangebarWidget-C0TpxFDi.cjs.map} +1 -1
- package/dist/{RangebarWidget-dZN9WjoZ.js → RangebarWidget-CIVrgqrW.js} +2 -2
- package/dist/{RangebarWidget-dZN9WjoZ.js.map → RangebarWidget-CIVrgqrW.js.map} +1 -1
- package/dist/{RedisTab-CkSwEwTZ.js → RedisTab-B8U-vEQZ.js} +19 -16
- package/dist/{RedisTab-CkSwEwTZ.js.map → RedisTab-B8U-vEQZ.js.map} +1 -1
- package/dist/RedisTab-cgicWb81.cjs +2 -0
- package/dist/{RedisTab-CdiSo-CO.cjs.map → RedisTab-cgicWb81.cjs.map} +1 -1
- package/dist/{RollupWidget-CHdZAUCb.cjs → RollupWidget-BEDf-mfg.cjs} +2 -2
- package/dist/{RollupWidget-CHdZAUCb.cjs.map → RollupWidget-BEDf-mfg.cjs.map} +1 -1
- package/dist/{RollupWidget-i9DnNJl6.js → RollupWidget-CH1-XNLV.js} +2 -2
- package/dist/{RollupWidget-i9DnNJl6.js.map → RollupWidget-CH1-XNLV.js.map} +1 -1
- package/dist/{RoutersTab-Cp8wM-mS.cjs → RoutersTab-BA-KlYIm.cjs} +2 -2
- package/dist/{RoutersTab-Cp8wM-mS.cjs.map → RoutersTab-BA-KlYIm.cjs.map} +1 -1
- package/dist/{RoutersTab-DiYEI1Nq.js → RoutersTab-WKa6K7B8.js} +3 -3
- package/dist/{RoutersTab-DiYEI1Nq.js.map → RoutersTab-WKa6K7B8.js.map} +1 -1
- package/dist/{ScriptChooser-Cua8ObYv.js → ScriptChooser-B5TkGuZ4.js} +2 -2
- package/dist/{ScriptChooser-Cua8ObYv.js.map → ScriptChooser-B5TkGuZ4.js.map} +1 -1
- package/dist/{ScriptChooser-BnTP6ucF.cjs → ScriptChooser-LsboGSgh.cjs} +2 -2
- package/dist/{ScriptChooser-BnTP6ucF.cjs.map → ScriptChooser-LsboGSgh.cjs.map} +1 -1
- package/dist/{ScrollwindowWidget-54GU96Ve.js → ScrollwindowWidget-BwFG6Wn8.js} +15 -15
- package/dist/ScrollwindowWidget-BwFG6Wn8.js.map +1 -0
- package/dist/ScrollwindowWidget-DWxDmpFB.cjs +2 -0
- package/dist/ScrollwindowWidget-DWxDmpFB.cjs.map +1 -0
- package/dist/{SecretsTab-DY16usGc.cjs → SecretsTab-DKX5gLH_.cjs} +2 -2
- package/dist/{SecretsTab-DY16usGc.cjs.map → SecretsTab-DKX5gLH_.cjs.map} +1 -1
- package/dist/{SecretsTab-uWRVI1EE.js → SecretsTab-Vtvbb_1U.js} +7 -5
- package/dist/{SecretsTab-uWRVI1EE.js.map → SecretsTab-Vtvbb_1U.js.map} +1 -1
- package/dist/SettingsTab-Ch52foLm.cjs +3 -0
- package/dist/SettingsTab-Ch52foLm.cjs.map +1 -0
- package/dist/SettingsTab-DilFIQ3K.js +1817 -0
- package/dist/SettingsTab-DilFIQ3K.js.map +1 -0
- package/dist/{SignalWidget-COL8kXSJ.cjs → SignalWidget-1WqQFVq9.cjs} +2 -2
- package/dist/{SignalWidget-COL8kXSJ.cjs.map → SignalWidget-1WqQFVq9.cjs.map} +1 -1
- package/dist/{SignalWidget-B_kA9eCJ.js → SignalWidget-Gz2gHrUm.js} +2 -2
- package/dist/{SignalWidget-B_kA9eCJ.js.map → SignalWidget-Gz2gHrUm.js.map} +1 -1
- package/dist/{SimpleTextDialog-BWUqPlTv.cjs → SimpleTextDialog-BwOVWhRY.cjs} +2 -2
- package/dist/{SimpleTextDialog-BWUqPlTv.cjs.map → SimpleTextDialog-BwOVWhRY.cjs.map} +1 -1
- package/dist/{SimpleTextDialog-BulqUrdH.js → SimpleTextDialog-Cmtrmt79.js} +10 -9
- package/dist/{SimpleTextDialog-BulqUrdH.js.map → SimpleTextDialog-Cmtrmt79.js.map} +1 -1
- package/dist/{SpacerWidget-XoMPHak8.js → SpacerWidget-Bg7VDB0k.js} +2 -2
- package/dist/{SpacerWidget-XoMPHak8.js.map → SpacerWidget-Bg7VDB0k.js.map} +1 -1
- package/dist/{SpacerWidget-D_Ya_b1j.cjs → SpacerWidget-Bzp3aI40.cjs} +2 -2
- package/dist/{SpacerWidget-D_Ya_b1j.cjs.map → SpacerWidget-Bzp3aI40.cjs.map} +1 -1
- package/dist/{SparklineWidget-DQNsvEj9.js → SparklineWidget-D_b5rfJv.js} +4 -4
- package/dist/{SparklineWidget-DQNsvEj9.js.map → SparklineWidget-D_b5rfJv.js.map} +1 -1
- package/dist/{SparklineWidget-CRzXTS5z.cjs → SparklineWidget-kMWjVDrm.cjs} +2 -2
- package/dist/{SparklineWidget-CRzXTS5z.cjs.map → SparklineWidget-kMWjVDrm.cjs.map} +1 -1
- package/dist/{TabbookWidget-_HVA72t5.js → TabbookWidget-C30f9B6z.js} +2 -2
- package/dist/{TabbookWidget-_HVA72t5.js.map → TabbookWidget-C30f9B6z.js.map} +1 -1
- package/dist/{TabbookWidget-Bh-GDBXg.cjs → TabbookWidget-DlVrU3wK.cjs} +2 -2
- package/dist/{TabbookWidget-Bh-GDBXg.cjs.map → TabbookWidget-DlVrU3wK.cjs.map} +1 -1
- package/dist/{TargetsTab-BfoRYnTP.js → TargetsTab-CEPId9dL.js} +5 -4
- package/dist/{TargetsTab-BfoRYnTP.js.map → TargetsTab-CEPId9dL.js.map} +1 -1
- package/dist/{TargetsTab-CGE-jQAz.cjs → TargetsTab-uqjueXlq.cjs} +2 -2
- package/dist/{TargetsTab-CGE-jQAz.cjs.map → TargetsTab-uqjueXlq.cjs.map} +1 -1
- package/dist/{TextBoxDialog-DWt30tB8.cjs → TextBoxDialog--uIDsNPU.cjs} +2 -2
- package/dist/{TextBoxDialog-DWt30tB8.cjs.map → TextBoxDialog--uIDsNPU.cjs.map} +1 -1
- package/dist/{TextBoxDialog-C60jmnyN.js → TextBoxDialog-BlZ6MBoW.js} +4 -3
- package/dist/{TextBoxDialog-C60jmnyN.js.map → TextBoxDialog-BlZ6MBoW.js.map} +1 -1
- package/dist/{TextboxWidget-uDptDK_z.cjs → TextboxWidget-BJka_3dT.cjs} +2 -2
- package/dist/{TextboxWidget-uDptDK_z.cjs.map → TextboxWidget-BJka_3dT.cjs.map} +1 -1
- package/dist/{TextboxWidget-0JXn4bMH.js → TextboxWidget-CDqxsgys.js} +4 -4
- package/dist/{TextboxWidget-0JXn4bMH.js.map → TextboxWidget-CDqxsgys.js.map} +1 -1
- package/dist/{TextfieldWidget-B0FCskrL.cjs → TextfieldWidget-C7_48W7n.cjs} +2 -2
- package/dist/{TextfieldWidget-B0FCskrL.cjs.map → TextfieldWidget-C7_48W7n.cjs.map} +1 -1
- package/dist/{TextfieldWidget-BXr9MkVW.js → TextfieldWidget-CAyjKJs6.js} +2 -2
- package/dist/{TextfieldWidget-BXr9MkVW.js.map → TextfieldWidget-CAyjKJs6.js.map} +1 -1
- package/dist/{TimeWidget-C67uwMGH.js → TimeWidget-BQsP0G2X.js} +2 -2
- package/dist/{TimeWidget-C67uwMGH.js.map → TimeWidget-BQsP0G2X.js.map} +1 -1
- package/dist/{TimeWidget-q5tUvHC6.cjs → TimeWidget-WPWiADCI.cjs} +2 -2
- package/dist/{TimeWidget-q5tUvHC6.cjs.map → TimeWidget-WPWiADCI.cjs.map} +1 -1
- package/dist/{TitleWidget-t_YLgUMB.js → TitleWidget-DXVba53S.js} +2 -2
- package/dist/{TitleWidget-t_YLgUMB.js.map → TitleWidget-DXVba53S.js.map} +1 -1
- package/dist/{TitleWidget-REsd7MqR.cjs → TitleWidget-DavRJ5B5.cjs} +2 -2
- package/dist/{TitleWidget-REsd7MqR.cjs.map → TitleWidget-DavRJ5B5.cjs.map} +1 -1
- package/dist/{ToolsTab-DKYeIlXu.js → ToolsTab-CSmjz1H7.js} +6 -5
- package/dist/{ToolsTab-DKYeIlXu.js.map → ToolsTab-CSmjz1H7.js.map} +1 -1
- package/dist/{ToolsTab-CGztf9_j.cjs → ToolsTab-DUwXt5hn.cjs} +3 -3
- package/dist/{ToolsTab-CGztf9_j.cjs.map → ToolsTab-DUwXt5hn.cjs.map} +1 -1
- package/dist/TopBar-C5lQcY1W.cjs +2 -0
- package/dist/{TopBar-B0UcAtIW.cjs.map → TopBar-C5lQcY1W.cjs.map} +1 -1
- package/dist/{TopBar-BrCfgCxc.js → TopBar-D_2lT9RB.js} +14 -12
- package/dist/{TopBar-BrCfgCxc.js.map → TopBar-D_2lT9RB.js.map} +1 -1
- package/dist/UpgradeToEnterpriseDialog-BHDDrj0t.cjs +2 -0
- package/dist/{UpgradeToEnterpriseDialog-DJ3oth3I.cjs.map → UpgradeToEnterpriseDialog-BHDDrj0t.cjs.map} +1 -1
- package/dist/{UpgradeToEnterpriseDialog-CGyR2v7U.js → UpgradeToEnterpriseDialog-Cvt5MMTj.js} +19 -16
- package/dist/{UpgradeToEnterpriseDialog-CGyR2v7U.js.map → UpgradeToEnterpriseDialog-Cvt5MMTj.js.map} +1 -1
- package/dist/{UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-NIAkCgU6.js → UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-DWYRspHE.js} +12491 -12383
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-DWYRspHE.js.map +1 -0
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-mEnslAi4.cjs +1498 -0
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-mEnslAi4.cjs.map +1 -0
- package/dist/VWidget-C7V6pKTg.cjs +2 -0
- package/dist/VWidget-C7V6pKTg.cjs.map +1 -0
- package/dist/{VWidget-j2GIGGSX.js → VWidget-CFTCukCL.js} +16 -10
- package/dist/VWidget-CFTCukCL.js.map +1 -0
- package/dist/{ValueWidget-CjZeSiPQ.cjs → ValueWidget-5ulSOrPw.cjs} +2 -2
- package/dist/{ValueWidget-CjZeSiPQ.cjs.map → ValueWidget-5ulSOrPw.cjs.map} +1 -1
- package/dist/{ValueWidget-3jNtnh5i.js → ValueWidget-B-TWLPdM.js} +4 -4
- package/dist/{ValueWidget-3jNtnh5i.js.map → ValueWidget-B-TWLPdM.js.map} +1 -1
- package/dist/{ValuelimitsbarWidget-CkLbRP8P.cjs → ValuelimitsbarWidget-CTFVDwcL.cjs} +2 -2
- package/dist/{ValuelimitsbarWidget-CkLbRP8P.cjs.map → ValuelimitsbarWidget-CTFVDwcL.cjs.map} +1 -1
- package/dist/{ValuelimitsbarWidget-JSceOzGS.js → ValuelimitsbarWidget-jsDXdPdC.js} +4 -4
- package/dist/{ValuelimitsbarWidget-JSceOzGS.js.map → ValuelimitsbarWidget-jsDXdPdC.js.map} +1 -1
- package/dist/{ValuelimitscolumnWidget-DpU4BoB7.cjs → ValuelimitscolumnWidget-Du3Baz6G.cjs} +2 -2
- package/dist/{ValuelimitscolumnWidget-DpU4BoB7.cjs.map → ValuelimitscolumnWidget-Du3Baz6G.cjs.map} +1 -1
- package/dist/{ValuelimitscolumnWidget-HR1TNHwQ.js → ValuelimitscolumnWidget-I-uwnXM2.js} +4 -4
- package/dist/{ValuelimitscolumnWidget-HR1TNHwQ.js.map → ValuelimitscolumnWidget-I-uwnXM2.js.map} +1 -1
- package/dist/{ValuerangebarWidget-CpZYmUl_.cjs → ValuerangebarWidget-BjXDCLm3.cjs} +2 -2
- package/dist/{ValuerangebarWidget-CpZYmUl_.cjs.map → ValuerangebarWidget-BjXDCLm3.cjs.map} +1 -1
- package/dist/{ValuerangebarWidget-DnZrho8S.js → ValuerangebarWidget-OyhSTScu.js} +4 -4
- package/dist/{ValuerangebarWidget-DnZrho8S.js.map → ValuerangebarWidget-OyhSTScu.js.map} +1 -1
- package/dist/VerticalWidget-CKDTGmhp.cjs +2 -0
- package/dist/{VerticalWidget-CcJMMaK_.cjs.map → VerticalWidget-CKDTGmhp.cjs.map} +1 -1
- package/dist/{VerticalWidget-DJvoxqLE.js → VerticalWidget-CkFbX1Gq.js} +13 -13
- package/dist/{VerticalWidget-DJvoxqLE.js.map → VerticalWidget-CkFbX1Gq.js.map} +1 -1
- package/dist/VerticalboxWidget-D09UbA0I.cjs +2 -0
- package/dist/{VerticalboxWidget-CJR_mOLa.cjs.map → VerticalboxWidget-D09UbA0I.cjs.map} +1 -1
- package/dist/{VerticalboxWidget-CYYyLBoO.js → VerticalboxWidget-FEQgPM9r.js} +13 -13
- package/dist/{VerticalboxWidget-CYYyLBoO.js.map → VerticalboxWidget-FEQgPM9r.js.map} +1 -1
- package/dist/{Widget-Bn_S-zBo.js → Widget-C3-TBgP7.js} +4 -4
- package/dist/Widget-C3-TBgP7.js.map +1 -0
- package/dist/{Widget-O7wkmc39.cjs → Widget-CSBtgNwA.cjs} +2 -2
- package/dist/{Widget-O7wkmc39.cjs.map → Widget-CSBtgNwA.cjs.map} +1 -1
- package/dist/components.cjs +3 -3
- package/dist/components.cjs.map +1 -1
- package/dist/components.js +257 -804
- package/dist/components.js.map +1 -1
- package/dist/icons.cjs.map +1 -1
- package/dist/icons.js.map +1 -1
- package/dist/{index-qCq0L4jN.js → index-DDjz5VQq.js} +345 -327
- package/dist/index-DDjz5VQq.js.map +1 -0
- package/dist/index-DZh4NjG5.cjs +7 -0
- package/dist/index-DZh4NjG5.cjs.map +1 -0
- package/dist/plugins.cjs +2 -2
- package/dist/plugins.cjs.map +1 -1
- package/dist/plugins.js +184 -175
- package/dist/plugins.js.map +1 -1
- package/dist/settings-BboN1VLt.cjs +2 -0
- package/dist/settings-BboN1VLt.cjs.map +1 -0
- package/dist/settings-spKii1fI.js +34 -0
- package/dist/settings-spKii1fI.js.map +1 -0
- package/dist/tools/admin.cjs +3 -3
- package/dist/tools/admin.cjs.map +1 -1
- package/dist/tools/admin.js +90 -59
- package/dist/tools/admin.js.map +1 -1
- package/dist/tools/base.cjs +1 -1
- package/dist/tools/base.cjs.map +1 -1
- package/dist/tools/base.js +530 -474
- package/dist/tools/base.js.map +1 -1
- package/dist/tools/calendar.cjs +1 -1
- package/dist/tools/calendar.js +1 -1
- package/dist/tools/scriptrunner.cjs +7 -7
- package/dist/tools/scriptrunner.cjs.map +1 -1
- package/dist/tools/scriptrunner.js +344 -293
- package/dist/tools/scriptrunner.js.map +1 -1
- package/dist/vue-common.css +1 -1
- package/dist/widgets.cjs +1 -1
- package/dist/widgets.js +63 -63
- package/package.json +14 -14
- package/dist/ArrayplotWidget-DC41cpv1.cjs +0 -2
- package/dist/ArrayplotWidget-DC41cpv1.cjs.map +0 -1
- package/dist/ArrayplotWidget-ntRLh6-B.js.map +0 -1
- package/dist/CriticalCmdDialog-7tOK2XQk.cjs +0 -2
- package/dist/DetailsDialog-BQE0TraI.js.map +0 -1
- package/dist/DetailsDialog-DmKpPDNn.cjs +0 -2
- package/dist/DetailsDialog-DmKpPDNn.cjs.map +0 -1
- package/dist/EventListDialog-CDcJcxy5.cjs +0 -2
- package/dist/Graph-DCihpnT0.js +0 -1853
- package/dist/Graph-DCihpnT0.js.map +0 -1
- package/dist/Graph-mSqImgca.cjs +0 -2
- package/dist/Graph-mSqImgca.cjs.map +0 -1
- package/dist/GraphWidget-CQjKAMPR.cjs +0 -2
- package/dist/HorizontalWidget--AkRJPlL.cjs +0 -2
- package/dist/HorizontalboxWidget-synL-Bar.cjs +0 -2
- package/dist/Layout-kOQnicRa.cjs +0 -2
- package/dist/LedWidget-BN8IgAxJ.js.map +0 -1
- package/dist/LedWidget-BUTbyEBi.cjs +0 -2
- package/dist/LedWidget-BUTbyEBi.cjs.map +0 -1
- package/dist/LinegraphWidget-Bay0EtbI.cjs +0 -2
- package/dist/LinegraphWidget-Bay0EtbI.cjs.map +0 -1
- package/dist/LinegraphWidget-jXksfbPb.js.map +0 -1
- package/dist/MatrixbycolumnsWidget-DxRhvPGv.cjs +0 -2
- package/dist/Openc3Screen-BZN0Wtrm.js.map +0 -1
- package/dist/Openc3Screen-dtpBWZdA.cjs +0 -5
- package/dist/Openc3Screen-dtpBWZdA.cjs.map +0 -1
- package/dist/PackagesTab-B4V2n4io.cjs +0 -2
- package/dist/PluginsTab-DHO1tK2S.cjs +0 -6
- package/dist/PluginsTab-DHO1tK2S.cjs.map +0 -1
- package/dist/PluginsTab-lHDR5v6S.js +0 -562
- package/dist/PluginsTab-lHDR5v6S.js.map +0 -1
- package/dist/RedisTab-CdiSo-CO.cjs +0 -2
- package/dist/ScrollwindowWidget-54GU96Ve.js.map +0 -1
- package/dist/ScrollwindowWidget-C5_X-KwQ.cjs +0 -2
- package/dist/ScrollwindowWidget-C5_X-KwQ.cjs.map +0 -1
- package/dist/SettingsTab-BVnr4OtU.js +0 -1445
- package/dist/SettingsTab-BVnr4OtU.js.map +0 -1
- package/dist/SettingsTab-BkwaDhYo.cjs +0 -3
- package/dist/SettingsTab-BkwaDhYo.cjs.map +0 -1
- package/dist/TopBar-B0UcAtIW.cjs +0 -2
- package/dist/UpgradeToEnterpriseDialog-DJ3oth3I.cjs +0 -2
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-C_HFbtFB.cjs +0 -1497
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-C_HFbtFB.cjs.map +0 -1
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-NIAkCgU6.js.map +0 -1
- package/dist/VWidget-BMxLXtSO.cjs +0 -2
- package/dist/VWidget-BMxLXtSO.cjs.map +0 -1
- package/dist/VWidget-j2GIGGSX.js.map +0 -1
- package/dist/VerticalWidget-CcJMMaK_.cjs +0 -2
- package/dist/VerticalboxWidget-CJR_mOLa.cjs +0 -2
- package/dist/Widget-Bn_S-zBo.js.map +0 -1
- package/dist/index-DcL65Mqb.cjs +0 -7
- package/dist/index-DcL65Mqb.cjs.map +0 -1
- package/dist/index-qCq0L4jN.js.map +0 -1
|
@@ -1,562 +0,0 @@
|
|
|
1
|
-
import { l as c } from "./UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-NIAkCgU6.js";
|
|
2
|
-
import { resolveComponent as p, createElementBlock as m, openBlock as d, createVNode as i, createBlock as P, createCommentVNode as x, withCtx as a, createElementVNode as f, createTextVNode as _, toDisplayString as v, Fragment as y, renderList as D, normalizeClass as E, mergeProps as S, withModifiers as H } from "vue";
|
|
3
|
-
import { _ as z } from "./CustomIcon-h5X7369N.js";
|
|
4
|
-
import "single-spa";
|
|
5
|
-
import { S as J } from "./SimpleTextDialog-BulqUrdH.js";
|
|
6
|
-
import { ModifiedPluginDialog as q, PluginDialog as G } from "./tools/admin.js";
|
|
7
|
-
import { f as K, t as Q } from "./format-CVeawcIv.js";
|
|
8
|
-
const W = {
|
|
9
|
-
components: {
|
|
10
|
-
PluginDialog: G,
|
|
11
|
-
ModifiedPluginDialog: q,
|
|
12
|
-
SimpleTextDialog: J
|
|
13
|
-
},
|
|
14
|
-
data() {
|
|
15
|
-
return {
|
|
16
|
-
file: null,
|
|
17
|
-
currentPlugin: null,
|
|
18
|
-
plugins: [],
|
|
19
|
-
targets: [],
|
|
20
|
-
processes: {},
|
|
21
|
-
alert: "",
|
|
22
|
-
alertType: "success",
|
|
23
|
-
showAlert: !1,
|
|
24
|
-
pluginName: null,
|
|
25
|
-
variables: {},
|
|
26
|
-
pluginTxt: "",
|
|
27
|
-
pluginHashTmp: null,
|
|
28
|
-
existingPluginTxt: null,
|
|
29
|
-
showDownloadDialog: !1,
|
|
30
|
-
showProcessOutput: !1,
|
|
31
|
-
processOutput: "",
|
|
32
|
-
showPluginDialog: !1,
|
|
33
|
-
showModifiedPluginDialog: !1,
|
|
34
|
-
showDefaultTools: !1,
|
|
35
|
-
progress: 0,
|
|
36
|
-
pluginDelete: !1,
|
|
37
|
-
// When updating update local_mode.rb, local_mode.py, plugins.spec.ts
|
|
38
|
-
defaultPlugins: [
|
|
39
|
-
"openc3-cosmos-tool-admin",
|
|
40
|
-
"openc3-cosmos-tool-bucketexplorer",
|
|
41
|
-
"openc3-cosmos-tool-cmdsender",
|
|
42
|
-
"openc3-cosmos-tool-cmdhistory",
|
|
43
|
-
// Enterprise only
|
|
44
|
-
"openc3-cosmos-tool-cmdtlmserver",
|
|
45
|
-
"openc3-cosmos-tool-dataextractor",
|
|
46
|
-
"openc3-cosmos-tool-dataviewer",
|
|
47
|
-
"openc3-cosmos-tool-docs",
|
|
48
|
-
"openc3-cosmos-tool-handbooks",
|
|
49
|
-
"openc3-cosmos-tool-iframe",
|
|
50
|
-
"openc3-cosmos-tool-limitsmonitor",
|
|
51
|
-
"openc3-cosmos-tool-packetviewer",
|
|
52
|
-
"openc3-cosmos-tool-scriptrunner",
|
|
53
|
-
"openc3-cosmos-tool-tablemanager",
|
|
54
|
-
"openc3-cosmos-tool-tlmgrapher",
|
|
55
|
-
"openc3-cosmos-tool-tlmviewer",
|
|
56
|
-
"openc3-cosmos-enterprise-tool-admin",
|
|
57
|
-
// Enterprise only
|
|
58
|
-
"openc3-cosmos-tool-autonomic",
|
|
59
|
-
// Enterprise only
|
|
60
|
-
"openc3-cosmos-tool-calendar",
|
|
61
|
-
// Enterprise only
|
|
62
|
-
"openc3-cosmos-tool-grafana",
|
|
63
|
-
// Enterprise only
|
|
64
|
-
"openc3-cosmos-tool-systemhealth",
|
|
65
|
-
// Enterprise only
|
|
66
|
-
"openc3-enterprise-tool-base",
|
|
67
|
-
// Enterprise only
|
|
68
|
-
"openc3-tool-base"
|
|
69
|
-
]
|
|
70
|
-
};
|
|
71
|
-
},
|
|
72
|
-
computed: {
|
|
73
|
-
shownPlugins() {
|
|
74
|
-
let e = [];
|
|
75
|
-
for (let t of this.plugins) {
|
|
76
|
-
let r = t.split("__")[0].split("-");
|
|
77
|
-
r = r.slice(0, -1);
|
|
78
|
-
let l = r.join("-");
|
|
79
|
-
(!this.defaultPlugins.includes(l) || this.showDefaultTools) && e.push(t);
|
|
80
|
-
}
|
|
81
|
-
return e;
|
|
82
|
-
},
|
|
83
|
-
pluginTargets() {
|
|
84
|
-
return (e) => {
|
|
85
|
-
let t = [];
|
|
86
|
-
for (const u in this.targets)
|
|
87
|
-
this.targets[u].plugin === e && t.push(this.targets[u]);
|
|
88
|
-
return t;
|
|
89
|
-
};
|
|
90
|
-
},
|
|
91
|
-
isModified() {
|
|
92
|
-
return (e) => {
|
|
93
|
-
let t = !1;
|
|
94
|
-
for (const u in this.targets)
|
|
95
|
-
if (this.targets[u].plugin === e && this.targets[u].modified === !0) {
|
|
96
|
-
t = !0;
|
|
97
|
-
break;
|
|
98
|
-
}
|
|
99
|
-
return t;
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
},
|
|
103
|
-
watch: {
|
|
104
|
-
// watcher to reset the file input when the dialog is closed
|
|
105
|
-
showPluginDialog: function(e, t) {
|
|
106
|
-
e === !1 && (this.file = null, this.$refs.fileInput.value = null);
|
|
107
|
-
}
|
|
108
|
-
},
|
|
109
|
-
mounted() {
|
|
110
|
-
this.update(), this.updateProcesses();
|
|
111
|
-
},
|
|
112
|
-
methods: {
|
|
113
|
-
showOutput: function(e) {
|
|
114
|
-
this.processOutput = e.output, this.showProcessOutput = !0;
|
|
115
|
-
},
|
|
116
|
-
update: function() {
|
|
117
|
-
c.get("/openc3-api/plugins").then((e) => {
|
|
118
|
-
this.plugins = e.data;
|
|
119
|
-
}), c.get("/openc3-api/targets_modified").then((e) => {
|
|
120
|
-
this.targets = e.data;
|
|
121
|
-
});
|
|
122
|
-
},
|
|
123
|
-
updateProcesses: function() {
|
|
124
|
-
c.get("openc3-api/process_status/plugin_?substr=true").then(
|
|
125
|
-
(e) => {
|
|
126
|
-
this.processes = e.data, Object.keys(this.processes).length > 0 && setTimeout(() => {
|
|
127
|
-
this.updateProcesses(), this.update();
|
|
128
|
-
}, 5e3);
|
|
129
|
-
}
|
|
130
|
-
);
|
|
131
|
-
},
|
|
132
|
-
formatDate(e) {
|
|
133
|
-
return K(
|
|
134
|
-
Q(parseInt(e) / 1e6),
|
|
135
|
-
"yyyy-MM-dd HH:mm:ss.SSS"
|
|
136
|
-
);
|
|
137
|
-
},
|
|
138
|
-
upload: function(e = null) {
|
|
139
|
-
const t = e ? "put" : "post", u = e ? `/openc3-api/plugins/${e}` : "/openc3-api/plugins", r = new FormData();
|
|
140
|
-
r.append("plugin", this.file, this.file.name);
|
|
141
|
-
let l = this;
|
|
142
|
-
c[t](u, {
|
|
143
|
-
data: r,
|
|
144
|
-
headers: { "Content-Type": "multipart/form-data" },
|
|
145
|
-
onUploadProgress: function(n) {
|
|
146
|
-
let w = Math.round(
|
|
147
|
-
n.loaded * 100 / n.total
|
|
148
|
-
);
|
|
149
|
-
l.progress = w;
|
|
150
|
-
}
|
|
151
|
-
}).then((n) => {
|
|
152
|
-
this.progress = 100, this.alert = "Uploaded file", this.alertType = "success", this.showAlert = !0, setTimeout(() => {
|
|
153
|
-
this.showAlert = !1;
|
|
154
|
-
}, 5e3), this.update();
|
|
155
|
-
let w = null;
|
|
156
|
-
n.data.existing_plugin_txt_lines !== void 0 && (w = n.data.existing_plugin_txt_lines.join(`
|
|
157
|
-
`));
|
|
158
|
-
let h = n.data.plugin_txt_lines.join(`
|
|
159
|
-
`);
|
|
160
|
-
this.pluginName = n.data.name, this.variables = n.data.variables, this.pluginTxt = h, this.existingPluginTxt = w, this.showPluginDialog = !0, this.file = void 0;
|
|
161
|
-
}).catch((n) => {
|
|
162
|
-
this.currentPlugin = null, this.file = void 0;
|
|
163
|
-
});
|
|
164
|
-
},
|
|
165
|
-
pluginCallback: function(e) {
|
|
166
|
-
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();
|
|
167
|
-
},
|
|
168
|
-
modifiedSubmit: async function(e) {
|
|
169
|
-
if (e === !0)
|
|
170
|
-
for (let t of this.pluginTargets(this.currentPlugin))
|
|
171
|
-
t.modified == !0 && await c.post(`/openc3-api/targets/${t.name}/delete_modified`);
|
|
172
|
-
this.pluginDelete ? this.deletePlugin(this.currentPlugin) : this.pluginInstall();
|
|
173
|
-
},
|
|
174
|
-
pluginInstall: function() {
|
|
175
|
-
c.post(`/openc3-api/plugins/install/${this.pluginName}`, {
|
|
176
|
-
data: {
|
|
177
|
-
plugin_hash: JSON.stringify(this.pluginHashTmp)
|
|
178
|
-
}
|
|
179
|
-
}).then((e) => {
|
|
180
|
-
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, setTimeout(() => {
|
|
181
|
-
this.showAlert = !1, this.updateProcesses();
|
|
182
|
-
}, 5e3), this.update();
|
|
183
|
-
});
|
|
184
|
-
},
|
|
185
|
-
downloadTarget: function(e) {
|
|
186
|
-
c.post(`/openc3-api/targets/${e}/download`).then((t) => {
|
|
187
|
-
const u = window.atob(t.data.contents), r = new Uint8Array(u.length);
|
|
188
|
-
for (let n = 0; n < u.length; ++n)
|
|
189
|
-
r[n] = u.charCodeAt(n);
|
|
190
|
-
const l = new Blob([r], { type: "application/zip" }), s = document.createElement("a");
|
|
191
|
-
s.href = URL.createObjectURL(l), s.setAttribute("download", t.data.filename), s.click();
|
|
192
|
-
});
|
|
193
|
-
},
|
|
194
|
-
downloadPlugin: function(e) {
|
|
195
|
-
c.post(`/openc3-api/packages/${e}/download`).then((t) => {
|
|
196
|
-
const u = window.atob(t.data.contents), r = new Uint8Array(u.length);
|
|
197
|
-
for (let n = 0; n < u.length; ++n)
|
|
198
|
-
r[n] = u.charCodeAt(n);
|
|
199
|
-
const l = new Blob([r], { type: "application/zip" }), s = document.createElement("a");
|
|
200
|
-
s.href = URL.createObjectURL(l), s.setAttribute("download", t.data.filename), s.click();
|
|
201
|
-
});
|
|
202
|
-
},
|
|
203
|
-
editPlugin: function(e) {
|
|
204
|
-
c.get(`/openc3-api/plugins/${e}`).then((t) => {
|
|
205
|
-
let u = null;
|
|
206
|
-
t.data.existing_plugin_txt_lines !== void 0 && (u = t.data.existing_plugin_txt_lines.join(`
|
|
207
|
-
`));
|
|
208
|
-
let r = t.data.plugin_txt_lines.join(`
|
|
209
|
-
`);
|
|
210
|
-
this.pluginName = t.data.name, this.variables = t.data.variables, this.pluginTxt = r, this.existingPluginTxt = u, this.showPluginDialog = !0;
|
|
211
|
-
});
|
|
212
|
-
},
|
|
213
|
-
deletePrompt: function(e) {
|
|
214
|
-
this.$dialog.confirm(`Are you sure you want to remove: ${e}`, {
|
|
215
|
-
okText: "Delete",
|
|
216
|
-
cancelText: "Cancel"
|
|
217
|
-
}).then((t) => {
|
|
218
|
-
this.isModified(e) ? (this.currentPlugin = e, this.pluginDelete = !0, this.showModifiedPluginDialog = !0) : this.deletePlugin(e);
|
|
219
|
-
});
|
|
220
|
-
},
|
|
221
|
-
deletePlugin: function(e) {
|
|
222
|
-
this.alert = `Removing plugin ${e} ...`, this.alertType = "success", this.showAlert = !0, c.delete(`/openc3-api/plugins/${e}`).then((t) => {
|
|
223
|
-
setTimeout(() => {
|
|
224
|
-
this.showAlert = !1, this.updateProcesses();
|
|
225
|
-
}, 5e3);
|
|
226
|
-
}), this.update();
|
|
227
|
-
},
|
|
228
|
-
upgradePlugin(e) {
|
|
229
|
-
this.file = null, this.currentPlugin = e, this.progress = 0, this.$refs.fileInput.click();
|
|
230
|
-
},
|
|
231
|
-
selectFile() {
|
|
232
|
-
this.file = null, this.currentPlugin = null, this.progress = 0, this.$refs.fileInput.click();
|
|
233
|
-
},
|
|
234
|
-
fileChange(e) {
|
|
235
|
-
const t = e.target.files;
|
|
236
|
-
if (t.length > 0)
|
|
237
|
-
if (this.file = t[0], this.currentPlugin !== null)
|
|
238
|
-
if (this.file.name.split(".gem")[0] == this.currentPlugin.split(".gem")[0])
|
|
239
|
-
this.$dialog.confirm(
|
|
240
|
-
`The new gem ${this.file.name} appears to be identical to the existing ${this.currentPlugin}. Install?`,
|
|
241
|
-
{
|
|
242
|
-
okText: "Ok",
|
|
243
|
-
cancelText: "Cancel"
|
|
244
|
-
}
|
|
245
|
-
).then(() => {
|
|
246
|
-
this.upload(this.currentPlugin);
|
|
247
|
-
}).catch((u) => {
|
|
248
|
-
});
|
|
249
|
-
else {
|
|
250
|
-
let u = this.file.name.split("-"), r = u.findIndex((n) => n.includes(".")), l = u.slice(0, r).join("-");
|
|
251
|
-
u = this.currentPlugin.split("-"), r = u.findIndex((n) => n.includes("."));
|
|
252
|
-
let s = u.slice(0, r).join("-");
|
|
253
|
-
l !== s ? this.$dialog.confirm(
|
|
254
|
-
`The new gem base name ${l} doesn't match the existing ${s}. Install?`,
|
|
255
|
-
{
|
|
256
|
-
okText: "Ok",
|
|
257
|
-
cancelText: "Cancel"
|
|
258
|
-
}
|
|
259
|
-
).then(() => {
|
|
260
|
-
this.upload(this.currentPlugin);
|
|
261
|
-
}) : this.upload(this.currentPlugin);
|
|
262
|
-
}
|
|
263
|
-
else
|
|
264
|
-
this.upload();
|
|
265
|
-
else
|
|
266
|
-
this.$refs.fileInput.value = null;
|
|
267
|
-
}
|
|
268
|
-
}
|
|
269
|
-
}, X = ["textContent"], Y = ["textContent"], Z = { key: 0 }, $ = ["onClick"], tt = { key: 1 };
|
|
270
|
-
function et(e, t, u, r, l, s) {
|
|
271
|
-
const n = p("v-btn"), w = p("v-icon"), h = p("v-col"), U = p("rux-progress"), b = p("v-row"), M = p("v-checkbox"), T = p("v-divider"), j = p("v-alert"), C = p("v-list-item-title"), V = p("v-list-item-subtitle"), L = p("v-progress-circular"), A = p("v-tooltip"), N = p("v-list-item"), O = p("v-list"), F = p("plugin-dialog"), R = p("modified-plugin-dialog"), B = p("simple-text-dialog");
|
|
272
|
-
return d(), m("div", null, [
|
|
273
|
-
i(b, {
|
|
274
|
-
"no-gutters": "",
|
|
275
|
-
align: "center",
|
|
276
|
-
class: "px-2"
|
|
277
|
-
}, {
|
|
278
|
-
default: a(() => [
|
|
279
|
-
i(h, { class: "pa-2 mt-2" }, {
|
|
280
|
-
default: a(() => [
|
|
281
|
-
i(n, { onClick: s.selectFile }, {
|
|
282
|
-
default: a(() => t[6] || (t[6] = [
|
|
283
|
-
_("Install New Plugin")
|
|
284
|
-
])),
|
|
285
|
-
_: 1
|
|
286
|
-
}, 8, ["onClick"]),
|
|
287
|
-
f("input", {
|
|
288
|
-
ref: "fileInput",
|
|
289
|
-
style: { display: "none" },
|
|
290
|
-
type: "file",
|
|
291
|
-
onChange: t[0] || (t[0] = (...o) => s.fileChange && s.fileChange(...o))
|
|
292
|
-
}, null, 544),
|
|
293
|
-
t[8] || (t[8] = _(" Note: Use ")),
|
|
294
|
-
i(w, null, {
|
|
295
|
-
default: a(() => t[7] || (t[7] = [
|
|
296
|
-
_("mdi-update")
|
|
297
|
-
])),
|
|
298
|
-
_: 1
|
|
299
|
-
}),
|
|
300
|
-
t[9] || (t[9] = _(" to upgrade existing plugins "))
|
|
301
|
-
]),
|
|
302
|
-
_: 1
|
|
303
|
-
}),
|
|
304
|
-
i(h, {
|
|
305
|
-
class: "ml-4 mr-2",
|
|
306
|
-
cols: "4"
|
|
307
|
-
}, {
|
|
308
|
-
default: a(() => [
|
|
309
|
-
i(U, { value: l.progress }, null, 8, ["value"])
|
|
310
|
-
]),
|
|
311
|
-
_: 1
|
|
312
|
-
})
|
|
313
|
-
]),
|
|
314
|
-
_: 1
|
|
315
|
-
}),
|
|
316
|
-
i(b, {
|
|
317
|
-
"no-gutters": "",
|
|
318
|
-
class: "px-2"
|
|
319
|
-
}, {
|
|
320
|
-
default: a(() => [
|
|
321
|
-
i(h, null, {
|
|
322
|
-
default: a(() => [
|
|
323
|
-
i(M, {
|
|
324
|
-
modelValue: l.showDefaultTools,
|
|
325
|
-
"onUpdate:modelValue": t[1] || (t[1] = (o) => l.showDefaultTools = o),
|
|
326
|
-
label: "Show Default Tools",
|
|
327
|
-
class: "mt-0",
|
|
328
|
-
"data-test": "show-default-tools"
|
|
329
|
-
}, null, 8, ["modelValue"])
|
|
330
|
-
]),
|
|
331
|
-
_: 1
|
|
332
|
-
}),
|
|
333
|
-
i(h, {
|
|
334
|
-
align: "right",
|
|
335
|
-
class: "mr-2"
|
|
336
|
-
}, {
|
|
337
|
-
default: a(() => t[10] || (t[10] = [
|
|
338
|
-
f("div", null, "* indicates a modified plugin", -1),
|
|
339
|
-
f("div", null, "Click target link to download modifications", -1)
|
|
340
|
-
])),
|
|
341
|
-
_: 1
|
|
342
|
-
})
|
|
343
|
-
]),
|
|
344
|
-
_: 1
|
|
345
|
-
}),
|
|
346
|
-
i(T),
|
|
347
|
-
i(j, {
|
|
348
|
-
modelValue: l.showAlert,
|
|
349
|
-
"onUpdate:modelValue": t[2] || (t[2] = (o) => l.showAlert = o),
|
|
350
|
-
closable: "",
|
|
351
|
-
type: l.alertType,
|
|
352
|
-
"data-test": "plugin-alert"
|
|
353
|
-
}, {
|
|
354
|
-
default: a(() => [
|
|
355
|
-
_(v(l.alert), 1)
|
|
356
|
-
]),
|
|
357
|
-
_: 1
|
|
358
|
-
}, 8, ["modelValue", "type"]),
|
|
359
|
-
Object.keys(l.processes).length > 0 ? (d(), P(O, {
|
|
360
|
-
key: 0,
|
|
361
|
-
class: "list",
|
|
362
|
-
"data-test": "process-list"
|
|
363
|
-
}, {
|
|
364
|
-
default: a(() => [
|
|
365
|
-
i(b, {
|
|
366
|
-
"no-gutters": "",
|
|
367
|
-
class: "px-4"
|
|
368
|
-
}, {
|
|
369
|
-
default: a(() => [
|
|
370
|
-
i(h, { class: "text-h6" }, {
|
|
371
|
-
default: a(() => t[11] || (t[11] = [
|
|
372
|
-
_("Process List")
|
|
373
|
-
])),
|
|
374
|
-
_: 1
|
|
375
|
-
}),
|
|
376
|
-
i(h, { align: "right" }, {
|
|
377
|
-
default: a(() => t[12] || (t[12] = [
|
|
378
|
-
f("div", null, "Showing last 10 min of activity", -1)
|
|
379
|
-
])),
|
|
380
|
-
_: 1
|
|
381
|
-
})
|
|
382
|
-
]),
|
|
383
|
-
_: 1
|
|
384
|
-
}),
|
|
385
|
-
(d(!0), m(y, null, D(l.processes, (o) => (d(), m("div", {
|
|
386
|
-
key: o.name
|
|
387
|
-
}, [
|
|
388
|
-
i(N, null, {
|
|
389
|
-
append: a(() => [
|
|
390
|
-
o.state === "Running" ? (d(), P(L, {
|
|
391
|
-
key: 0,
|
|
392
|
-
indeterminate: "",
|
|
393
|
-
color: "primary"
|
|
394
|
-
})) : (d(), P(A, {
|
|
395
|
-
key: 1,
|
|
396
|
-
"open-delay": 600,
|
|
397
|
-
location: "top"
|
|
398
|
-
}, {
|
|
399
|
-
activator: a(({ props: k }) => [
|
|
400
|
-
i(n, S({ ref_for: !0 }, k, {
|
|
401
|
-
icon: "mdi-eye",
|
|
402
|
-
variant: "text",
|
|
403
|
-
"aria-label": "Show Output",
|
|
404
|
-
"data-test": "show-output",
|
|
405
|
-
onClick: (g) => s.showOutput(o)
|
|
406
|
-
}), null, 16, ["onClick"])
|
|
407
|
-
]),
|
|
408
|
-
default: a(() => [
|
|
409
|
-
t[13] || (t[13] = f("span", null, "Show Output", -1))
|
|
410
|
-
]),
|
|
411
|
-
_: 2
|
|
412
|
-
}, 1024))
|
|
413
|
-
]),
|
|
414
|
-
default: a(() => [
|
|
415
|
-
i(C, null, {
|
|
416
|
-
default: a(() => [
|
|
417
|
-
f("span", {
|
|
418
|
-
class: E(o.state.toLowerCase()),
|
|
419
|
-
textContent: v(
|
|
420
|
-
`Processing ${o.process_type}: ${o.detail} - ${o.state}`
|
|
421
|
-
)
|
|
422
|
-
}, null, 10, X)
|
|
423
|
-
]),
|
|
424
|
-
_: 2
|
|
425
|
-
}, 1024),
|
|
426
|
-
i(V, null, {
|
|
427
|
-
default: a(() => [
|
|
428
|
-
f("span", {
|
|
429
|
-
textContent: v(" Updated At: " + s.formatDate(o.updated_at))
|
|
430
|
-
}, null, 8, Y)
|
|
431
|
-
]),
|
|
432
|
-
_: 2
|
|
433
|
-
}, 1024)
|
|
434
|
-
]),
|
|
435
|
-
_: 2
|
|
436
|
-
}, 1024),
|
|
437
|
-
i(T)
|
|
438
|
-
]))), 128))
|
|
439
|
-
]),
|
|
440
|
-
_: 1
|
|
441
|
-
})) : x("", !0),
|
|
442
|
-
i(O, {
|
|
443
|
-
class: "list",
|
|
444
|
-
"data-test": "plugin-list"
|
|
445
|
-
}, {
|
|
446
|
-
default: a(() => [
|
|
447
|
-
i(b, { class: "px-4" }, {
|
|
448
|
-
default: a(() => [
|
|
449
|
-
i(h, { class: "text-h6" }, {
|
|
450
|
-
default: a(() => t[14] || (t[14] = [
|
|
451
|
-
_("Plugin List")
|
|
452
|
-
])),
|
|
453
|
-
_: 1
|
|
454
|
-
})
|
|
455
|
-
]),
|
|
456
|
-
_: 1
|
|
457
|
-
}),
|
|
458
|
-
(d(!0), m(y, null, D(s.shownPlugins, (o, k) => (d(), m("div", { key: k }, [
|
|
459
|
-
i(N, { "data-test": "plugin-list-item" }, {
|
|
460
|
-
append: a(() => [
|
|
461
|
-
i(n, {
|
|
462
|
-
icon: "mdi-download",
|
|
463
|
-
variant: "text",
|
|
464
|
-
"aria-label": "Download Plugin",
|
|
465
|
-
"data-test": "download-plugin",
|
|
466
|
-
onClick: (g) => s.downloadPlugin(o)
|
|
467
|
-
}, null, 8, ["onClick"]),
|
|
468
|
-
i(n, {
|
|
469
|
-
icon: "mdi-pencil",
|
|
470
|
-
variant: "text",
|
|
471
|
-
"aria-label": "Edit Plugin",
|
|
472
|
-
"data-test": "edit-plugin",
|
|
473
|
-
onClick: (g) => s.editPlugin(o)
|
|
474
|
-
}, null, 8, ["onClick"]),
|
|
475
|
-
i(A, {
|
|
476
|
-
"open-delay": 600,
|
|
477
|
-
location: "top"
|
|
478
|
-
}, {
|
|
479
|
-
activator: a(({ props: g }) => [
|
|
480
|
-
i(n, S({ ref_for: !0 }, g, {
|
|
481
|
-
icon: "mdi-update",
|
|
482
|
-
variant: "text",
|
|
483
|
-
"aria-label": "Upgrade Plugin",
|
|
484
|
-
"data-test": "upgrade-plugin",
|
|
485
|
-
onClick: (I) => s.upgradePlugin(o)
|
|
486
|
-
}), null, 16, ["onClick"])
|
|
487
|
-
]),
|
|
488
|
-
default: a(() => [
|
|
489
|
-
t[15] || (t[15] = f("span", null, "Upgrade Plugin", -1))
|
|
490
|
-
]),
|
|
491
|
-
_: 2
|
|
492
|
-
}, 1024),
|
|
493
|
-
i(n, {
|
|
494
|
-
icon: "mdi-delete",
|
|
495
|
-
variant: "text",
|
|
496
|
-
"aria-label": "Delete Plugin",
|
|
497
|
-
"data-test": "delete-plugin",
|
|
498
|
-
onClick: (g) => s.deletePrompt(o)
|
|
499
|
-
}, null, 8, ["onClick"])
|
|
500
|
-
]),
|
|
501
|
-
default: a(() => [
|
|
502
|
-
i(C, null, {
|
|
503
|
-
default: a(() => [
|
|
504
|
-
s.isModified(o) ? (d(), m("span", Z, "* ")) : x("", !0),
|
|
505
|
-
_(v(o), 1)
|
|
506
|
-
]),
|
|
507
|
-
_: 2
|
|
508
|
-
}, 1024),
|
|
509
|
-
s.pluginTargets(o).length !== 0 ? (d(), P(V, { key: 0 }, {
|
|
510
|
-
default: a(() => [
|
|
511
|
-
(d(!0), m(y, null, D(s.pluginTargets(o), (g, I) => (d(), m("span", {
|
|
512
|
-
key: I,
|
|
513
|
-
class: "mr-2"
|
|
514
|
-
}, [
|
|
515
|
-
g.modified ? (d(), m("a", {
|
|
516
|
-
key: 0,
|
|
517
|
-
onClick: H((lt) => s.downloadTarget(g.name), ["prevent"])
|
|
518
|
-
}, v(g.name), 9, $)) : (d(), m("span", tt, v(g.name), 1))
|
|
519
|
-
]))), 128))
|
|
520
|
-
]),
|
|
521
|
-
_: 2
|
|
522
|
-
}, 1024)) : x("", !0)
|
|
523
|
-
]),
|
|
524
|
-
_: 2
|
|
525
|
-
}, 1024),
|
|
526
|
-
k < l.plugins.length - 1 ? (d(), P(T, { key: k })) : x("", !0)
|
|
527
|
-
]))), 128))
|
|
528
|
-
]),
|
|
529
|
-
_: 1
|
|
530
|
-
}),
|
|
531
|
-
l.showPluginDialog ? (d(), P(F, {
|
|
532
|
-
key: 1,
|
|
533
|
-
modelValue: l.showPluginDialog,
|
|
534
|
-
"onUpdate:modelValue": t[3] || (t[3] = (o) => l.showPluginDialog = o),
|
|
535
|
-
"plugin-name": l.pluginName,
|
|
536
|
-
variables: l.variables,
|
|
537
|
-
"plugin-txt": l.pluginTxt,
|
|
538
|
-
"existing-plugin-txt": l.existingPluginTxt,
|
|
539
|
-
onCallback: s.pluginCallback
|
|
540
|
-
}, null, 8, ["modelValue", "plugin-name", "variables", "plugin-txt", "existing-plugin-txt", "onCallback"])) : x("", !0),
|
|
541
|
-
l.showModifiedPluginDialog ? (d(), P(R, {
|
|
542
|
-
key: 2,
|
|
543
|
-
modelValue: l.showModifiedPluginDialog,
|
|
544
|
-
"onUpdate:modelValue": t[4] || (t[4] = (o) => l.showModifiedPluginDialog = o),
|
|
545
|
-
"plugin-name": l.currentPlugin,
|
|
546
|
-
targets: s.pluginTargets(l.currentPlugin),
|
|
547
|
-
"plugin-delete": l.pluginDelete,
|
|
548
|
-
onSubmit: s.modifiedSubmit
|
|
549
|
-
}, null, 8, ["modelValue", "plugin-name", "targets", "plugin-delete", "onSubmit"])) : x("", !0),
|
|
550
|
-
i(B, {
|
|
551
|
-
modelValue: l.showProcessOutput,
|
|
552
|
-
"onUpdate:modelValue": t[5] || (t[5] = (o) => l.showProcessOutput = o),
|
|
553
|
-
title: "Process Output",
|
|
554
|
-
text: l.processOutput
|
|
555
|
-
}, null, 8, ["modelValue", "text"])
|
|
556
|
-
]);
|
|
557
|
-
}
|
|
558
|
-
const pt = /* @__PURE__ */ z(W, [["render", et], ["__scopeId", "data-v-73fe8603"]]);
|
|
559
|
-
export {
|
|
560
|
-
pt as default
|
|
561
|
-
};
|
|
562
|
-
//# sourceMappingURL=PluginsTab-lHDR5v6S.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PluginsTab-lHDR5v6S.js","sources":["../src/tools/admin/tabs/PluginsTab.vue"],"sourcesContent":["<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <v-row no-gutters align=\"center\" class=\"px-2\">\n <v-col class=\"pa-2 mt-2\">\n <v-btn @click=\"selectFile\">Install New Plugin</v-btn>\n <input\n ref=\"fileInput\"\n style=\"display: none\"\n type=\"file\"\n @change=\"fileChange\"\n />\n Note: Use <v-icon>mdi-update</v-icon> to upgrade existing plugins\n </v-col>\n <v-col class=\"ml-4 mr-2\" cols=\"4\">\n <rux-progress :value=\"progress\"></rux-progress>\n </v-col>\n </v-row>\n <v-row no-gutters class=\"px-2\">\n <v-col>\n <v-checkbox\n v-model=\"showDefaultTools\"\n label=\"Show Default Tools\"\n class=\"mt-0\"\n data-test=\"show-default-tools\"\n />\n </v-col>\n <v-col align=\"right\" class=\"mr-2\">\n <div>* indicates a modified plugin</div>\n <div>Click target link to download modifications</div>\n </v-col>\n </v-row>\n <v-divider />\n <!-- TODO This alert shows both success and failure. Make consistent with rest of OpenC3. -->\n <v-alert\n v-model=\"showAlert\"\n closable\n :type=\"alertType\"\n data-test=\"plugin-alert\"\n >{{ alert }}</v-alert\n >\n <v-list\n v-if=\"Object.keys(processes).length > 0\"\n class=\"list\"\n data-test=\"process-list\"\n >\n <v-row no-gutters class=\"px-4\"\n ><v-col class=\"text-h6\">Process List</v-col>\n <v-col align=\"right\">\n <!-- See openc3/lib/openc3/utilities/process_manager.rb CLEANUP_CYCLE_SECONDS -->\n <div>Showing last 10 min of activity</div>\n </v-col>\n </v-row>\n <div v-for=\"process in processes\" :key=\"process.name\">\n <v-list-item>\n <v-list-item-title>\n <span\n :class=\"process.state.toLowerCase()\"\n v-text=\"\n `Processing ${process.process_type}: ${process.detail} - ${process.state}`\n \"\n />\n </v-list-item-title>\n <v-list-item-subtitle>\n <span v-text=\"' Updated At: ' + formatDate(process.updated_at)\" />\n </v-list-item-subtitle>\n\n <template #append>\n <v-progress-circular\n v-if=\"process.state === 'Running'\"\n indeterminate\n color=\"primary\"\n />\n <v-tooltip v-else :open-delay=\"600\" location=\"top\">\n <template #activator=\"{ props }\">\n <v-btn\n v-bind=\"props\"\n icon=\"mdi-eye\"\n variant=\"text\"\n aria-label=\"Show Output\"\n data-test=\"show-output\"\n @click=\"showOutput(process)\"\n />\n </template>\n <span>Show Output</span>\n </v-tooltip>\n </template>\n </v-list-item>\n <v-divider />\n </div>\n </v-list>\n <v-list class=\"list\" data-test=\"plugin-list\">\n <v-row class=\"px-4\"><v-col class=\"text-h6\">Plugin List</v-col></v-row>\n <div v-for=\"(plugin, index) in shownPlugins\" :key=\"index\">\n <v-list-item data-test=\"plugin-list-item\">\n <v-list-item-title\n ><span v-if=\"isModified(plugin)\">* </span\n >{{ plugin }}</v-list-item-title\n >\n <v-list-item-subtitle v-if=\"pluginTargets(plugin).length !== 0\">\n <span\n v-for=\"(target, index) in pluginTargets(plugin)\"\n :key=\"index\"\n class=\"mr-2\"\n >\n <a\n v-if=\"target.modified\"\n @click.prevent=\"downloadTarget(target.name)\"\n >{{ target.name }}\n </a>\n <span v-else>{{ target.name }} </span>\n </span>\n </v-list-item-subtitle>\n\n <template #append>\n <v-btn\n icon=\"mdi-download\"\n variant=\"text\"\n aria-label=\"Download Plugin\"\n data-test=\"download-plugin\"\n @click=\"downloadPlugin(plugin)\"\n />\n <v-btn\n icon=\"mdi-pencil\"\n variant=\"text\"\n aria-label=\"Edit Plugin\"\n data-test=\"edit-plugin\"\n @click=\"editPlugin(plugin)\"\n />\n <v-tooltip :open-delay=\"600\" location=\"top\">\n <template #activator=\"{ props }\">\n <v-btn\n v-bind=\"props\"\n icon=\"mdi-update\"\n variant=\"text\"\n aria-label=\"Upgrade Plugin\"\n data-test=\"upgrade-plugin\"\n @click=\"upgradePlugin(plugin)\"\n />\n </template>\n <span>Upgrade Plugin</span>\n </v-tooltip>\n <v-btn\n icon=\"mdi-delete\"\n variant=\"text\"\n aria-label=\"Delete Plugin\"\n data-test=\"delete-plugin\"\n @click=\"deletePrompt(plugin)\"\n />\n </template>\n </v-list-item>\n <v-divider v-if=\"index < plugins.length - 1\" :key=\"index\" />\n </div>\n </v-list>\n <plugin-dialog\n v-if=\"showPluginDialog\"\n v-model=\"showPluginDialog\"\n :plugin-name=\"pluginName\"\n :variables=\"variables\"\n :plugin-txt=\"pluginTxt\"\n :existing-plugin-txt=\"existingPluginTxt\"\n @callback=\"pluginCallback\"\n />\n <modified-plugin-dialog\n v-if=\"showModifiedPluginDialog\"\n v-model=\"showModifiedPluginDialog\"\n :plugin-name=\"currentPlugin\"\n :targets=\"pluginTargets(currentPlugin)\"\n :plugin-delete=\"pluginDelete\"\n @submit=\"modifiedSubmit\"\n />\n <!-- <download-dialog v-model=\"showDownloadDialog\" /> -->\n <simple-text-dialog\n v-model=\"showProcessOutput\"\n title=\"Process Output\"\n :text=\"processOutput\"\n />\n </div>\n</template>\n\n<script>\nimport { toDate, format } from 'date-fns'\nimport { Api } from '@openc3/js-common/services'\nimport { SimpleTextDialog } from '@/components'\nimport { ModifiedPluginDialog, PluginDialog } from '@/tools/admin'\n\nexport default {\n components: {\n PluginDialog,\n ModifiedPluginDialog,\n SimpleTextDialog,\n },\n data() {\n return {\n file: null,\n currentPlugin: null,\n plugins: [],\n targets: [],\n processes: {},\n alert: '',\n alertType: 'success',\n showAlert: false,\n pluginName: null,\n variables: {},\n pluginTxt: '',\n pluginHashTmp: null,\n existingPluginTxt: null,\n showDownloadDialog: false,\n showProcessOutput: false,\n processOutput: '',\n showPluginDialog: false,\n showModifiedPluginDialog: false,\n showDefaultTools: false,\n progress: 0,\n pluginDelete: false,\n // When updating update local_mode.rb, local_mode.py, plugins.spec.ts\n defaultPlugins: [\n 'openc3-cosmos-tool-admin',\n 'openc3-cosmos-tool-bucketexplorer',\n 'openc3-cosmos-tool-cmdsender',\n 'openc3-cosmos-tool-cmdhistory', // Enterprise only\n 'openc3-cosmos-tool-cmdtlmserver',\n 'openc3-cosmos-tool-dataextractor',\n 'openc3-cosmos-tool-dataviewer',\n 'openc3-cosmos-tool-docs',\n 'openc3-cosmos-tool-handbooks',\n 'openc3-cosmos-tool-iframe',\n 'openc3-cosmos-tool-limitsmonitor',\n 'openc3-cosmos-tool-packetviewer',\n 'openc3-cosmos-tool-scriptrunner',\n 'openc3-cosmos-tool-tablemanager',\n 'openc3-cosmos-tool-tlmgrapher',\n 'openc3-cosmos-tool-tlmviewer',\n 'openc3-cosmos-enterprise-tool-admin', // Enterprise only\n 'openc3-cosmos-tool-autonomic', // Enterprise only\n 'openc3-cosmos-tool-calendar', // Enterprise only\n 'openc3-cosmos-tool-grafana', // Enterprise only\n 'openc3-cosmos-tool-systemhealth', // Enterprise only\n 'openc3-enterprise-tool-base', // Enterprise only\n 'openc3-tool-base',\n ],\n }\n },\n computed: {\n shownPlugins() {\n let result = []\n for (let plugin of this.plugins) {\n let pluginNameFirst = plugin.split('__')[0]\n let pluginNameSplit = pluginNameFirst.split('-')\n pluginNameSplit = pluginNameSplit.slice(0, -1)\n let pluginName = pluginNameSplit.join('-')\n if (\n !this.defaultPlugins.includes(pluginName) ||\n this.showDefaultTools\n ) {\n result.push(plugin)\n }\n }\n return result\n },\n pluginTargets() {\n return (plugin) => {\n let result = []\n for (const target in this.targets) {\n if (this.targets[target]['plugin'] === plugin) {\n result.push(this.targets[target])\n }\n }\n return result\n }\n },\n isModified() {\n return (plugin) => {\n let result = false\n for (const target in this.targets) {\n if (\n this.targets[target]['plugin'] === plugin &&\n this.targets[target]['modified'] === true\n ) {\n result = true\n break\n }\n }\n return result\n }\n },\n },\n watch: {\n // watcher to reset the file input when the dialog is closed\n showPluginDialog: function (newValue, oldValue) {\n if (newValue === false) {\n this.file = null\n this.$refs.fileInput.value = null\n }\n },\n },\n mounted() {\n this.update()\n this.updateProcesses()\n },\n methods: {\n showOutput: function (process) {\n this.processOutput = process.output\n this.showProcessOutput = true\n },\n update: function () {\n Api.get('/openc3-api/plugins').then((response) => {\n this.plugins = response.data\n })\n Api.get('/openc3-api/targets_modified').then((response) => {\n this.targets = response.data\n })\n },\n updateProcesses: function () {\n Api.get('openc3-api/process_status/plugin_?substr=true').then(\n (response) => {\n this.processes = response.data\n if (Object.keys(this.processes).length > 0) {\n setTimeout(() => {\n this.updateProcesses()\n this.update()\n }, 5000)\n }\n },\n )\n },\n formatDate(nanoSecs) {\n return format(\n toDate(parseInt(nanoSecs) / 1000000),\n 'yyyy-MM-dd HH:mm:ss.SSS',\n )\n },\n upload: function (existing = null) {\n const method = existing ? 'put' : 'post'\n const path = existing\n ? `/openc3-api/plugins/${existing}`\n : '/openc3-api/plugins'\n const formData = new FormData()\n formData.append('plugin', this.file, this.file.name)\n let self = this\n const promise = Api[method](path, {\n data: formData,\n headers: { 'Content-Type': 'multipart/form-data' },\n onUploadProgress: function (progressEvent) {\n let percentCompleted = Math.round(\n (progressEvent.loaded * 100) / progressEvent.total,\n )\n self.progress = percentCompleted\n },\n })\n promise\n .then((response) => {\n this.progress = 100\n this.alert = 'Uploaded file'\n this.alertType = 'success'\n this.showAlert = true\n setTimeout(() => {\n this.showAlert = false\n }, 5000)\n this.update()\n let existingPluginTxt = null\n if (response.data.existing_plugin_txt_lines !== undefined) {\n existingPluginTxt =\n response.data.existing_plugin_txt_lines.join('\\n')\n }\n let pluginTxt = response.data.plugin_txt_lines.join('\\n')\n ;(this.pluginName = response.data.name),\n (this.variables = response.data.variables),\n (this.pluginTxt = pluginTxt),\n (this.existingPluginTxt = existingPluginTxt)\n this.showPluginDialog = true\n this.file = undefined\n })\n .catch((error) => {\n this.currentPlugin = null\n this.file = undefined\n })\n },\n pluginCallback: function (pluginHash) {\n this.showPluginDialog = false\n if (this.currentPlugin !== null) {\n pluginHash['name'] = this.currentPlugin\n }\n this.pluginHashTmp = pluginHash\n if (this.isModified(this.currentPlugin)) {\n this.pluginDelete = false\n this.showModifiedPluginDialog = true\n } else {\n this.pluginInstall()\n }\n },\n modifiedSubmit: async function (deleteModified) {\n if (deleteModified === true) {\n for (let target of this.pluginTargets(this.currentPlugin)) {\n if (target.modified == true) {\n await Api.post(`/openc3-api/targets/${target.name}/delete_modified`)\n }\n }\n }\n if (this.pluginDelete) {\n this.deletePlugin(this.currentPlugin)\n } else {\n this.pluginInstall()\n }\n },\n pluginInstall: function () {\n Api.post(`/openc3-api/plugins/install/${this.pluginName}`, {\n data: {\n plugin_hash: JSON.stringify(this.pluginHashTmp),\n },\n }).then((response) => {\n this.alert = `Started installing plugin ${this.pluginName} ...`\n this.alertType = 'success'\n this.showAlert = true\n this.currentPlugin = null\n this.file = undefined\n this.variables = {}\n this.pluginTxt = ''\n this.existingPluginTxt = null\n setTimeout(() => {\n this.showAlert = false\n this.updateProcesses()\n }, 5000)\n this.update()\n })\n },\n downloadTarget: function (name) {\n Api.post(`/openc3-api/targets/${name}/download`).then((response) => {\n // Decode Base64 string\n const decodedData = window.atob(response.data.contents)\n // Create UNIT8ARRAY of size same as row data length\n const uInt8Array = new Uint8Array(decodedData.length)\n // Insert all character code into uInt8Array\n for (let i = 0; i < decodedData.length; ++i) {\n uInt8Array[i] = decodedData.charCodeAt(i)\n }\n const blob = new Blob([uInt8Array], { type: 'application/zip' })\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', response.data.filename)\n link.click()\n })\n },\n downloadPlugin: function (plugin) {\n Api.post(`/openc3-api/packages/${plugin}/download`).then((response) => {\n // Decode Base64 string\n const decodedData = window.atob(response.data.contents)\n // Create UNIT8ARRAY of size same as row data length\n const uInt8Array = new Uint8Array(decodedData.length)\n // Insert all character code into uInt8Array\n for (let i = 0; i < decodedData.length; ++i) {\n uInt8Array[i] = decodedData.charCodeAt(i)\n }\n const blob = new Blob([uInt8Array], { type: 'application/zip' })\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute('download', response.data.filename)\n link.click()\n })\n },\n editPlugin: function (plugin) {\n Api.get(`/openc3-api/plugins/${plugin}`).then((response) => {\n let existingPluginTxt = null\n if (response.data.existing_plugin_txt_lines !== undefined) {\n existingPluginTxt = response.data.existing_plugin_txt_lines.join('\\n')\n }\n let pluginTxt = response.data.plugin_txt_lines.join('\\n')\n ;(this.pluginName = response.data.name),\n (this.variables = response.data.variables),\n (this.pluginTxt = pluginTxt),\n (this.existingPluginTxt = existingPluginTxt)\n this.showPluginDialog = true\n })\n },\n deletePrompt: function (plugin) {\n this.$dialog\n .confirm(`Are you sure you want to remove: ${plugin}`, {\n okText: 'Delete',\n cancelText: 'Cancel',\n })\n .then((dialog) => {\n if (this.isModified(plugin)) {\n this.currentPlugin = plugin\n this.pluginDelete = true\n this.showModifiedPluginDialog = true\n } else {\n this.deletePlugin(plugin)\n }\n })\n },\n deletePlugin: function (plugin) {\n this.alert = `Removing plugin ${plugin} ...`\n this.alertType = 'success'\n this.showAlert = true\n Api.delete(`/openc3-api/plugins/${plugin}`).then((response) => {\n setTimeout(() => {\n this.showAlert = false\n this.updateProcesses()\n }, 5000)\n })\n this.update()\n },\n upgradePlugin(plugin) {\n this.file = null\n this.currentPlugin = plugin\n this.progress = 0\n this.$refs.fileInput.click()\n },\n selectFile() {\n this.file = null\n this.currentPlugin = null\n this.progress = 0\n this.$refs.fileInput.click()\n },\n fileChange(event) {\n const files = event.target.files\n if (files.length > 0) {\n this.file = files[0]\n if (this.currentPlugin !== null) {\n if (\n this.file.name.split('.gem')[0] ==\n this.currentPlugin.split('.gem')[0]\n ) {\n this.$dialog\n .confirm(\n `The new gem ${this.file.name} appears to be identical to the existing ${this.currentPlugin}. Install?`,\n {\n okText: 'Ok',\n cancelText: 'Cancel',\n },\n )\n .then(() => {\n this.upload(this.currentPlugin)\n })\n .catch((error) => {\n // do nothing\n })\n } else {\n // Split up the gem name to determine if this is an upgrade\n // or mistakenly trying to install a different gem\n // Gems are named like openc3-cosmos-demo-5.3.2.gem or\n // openc3-cosmos-pw-test-1.0.0.20230213074527.gem\n // So split on - and match everything until the first .\n let parts = this.file.name.split('-')\n let i = parts.findIndex((x) => x.includes('.'))\n let newName = parts.slice(0, i).join('-')\n parts = this.currentPlugin.split('-')\n i = parts.findIndex((x) => x.includes('.'))\n let existingName = parts.slice(0, i).join('-')\n if (newName !== existingName) {\n this.$dialog\n .confirm(\n `The new gem base name ${newName} doesn't match the existing ${existingName}. Install?`,\n {\n okText: 'Ok',\n cancelText: 'Cancel',\n },\n )\n .then(() => {\n this.upload(this.currentPlugin)\n })\n } else {\n this.upload(this.currentPlugin)\n }\n }\n } else {\n this.upload()\n }\n } else {\n // Reset the input element\n this.$refs.fileInput.value = null\n }\n },\n },\n}\n</script>\n\n<style scoped>\n.crashed {\n color: red;\n}\n.list {\n background-color: var(--color-background-surface-default) !important;\n overflow-x: hidden;\n}\n.v-theme--cosmosDark.v-list div:nth-child(odd) .v-list-item {\n background-color: var(--color-background-base-selected) !important;\n}\n</style>\n"],"names":["_sfc_main","PluginDialog","ModifiedPluginDialog","SimpleTextDialog","result","plugin","pluginNameSplit","pluginName","target","newValue","oldValue","process","Api","response","nanoSecs","format","toDate","existing","method","path","formData","self","progressEvent","percentCompleted","existingPluginTxt","pluginTxt","error","pluginHash","deleteModified","name","decodedData","uInt8Array","i","blob","link","dialog","event","files","parts","x","newName","existingName","_hoisted_1","_hoisted_2","_hoisted_4","_createElementBlock","_createVNode","_component_v_row","_withCtx","_component_v_col","_component_v_btn","$options","_cache","_createTextVNode","_createElementVNode","args","_component_v_icon","_component_rux_progress","$data","_component_v_checkbox","$event","_component_v_divider","_component_v_alert","_toDisplayString","_createBlock","_component_v_list","_openBlock","_Fragment","_renderList","_component_v_list_item","_component_v_progress_circular","_component_v_tooltip","props","_mergeProps","_component_v_list_item_title","_normalizeClass","_component_v_list_item_subtitle","_createCommentVNode","index","_hoisted_3","_withModifiers","_hoisted_5","_component_plugin_dialog","_component_modified_plugin_dialog","_component_simple_text_dialog"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const x=require("./UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-C_HFbtFB.cjs"),e=require("vue"),h=require("./CustomIcon-Bop2mEnu.cjs"),C={data(){return{redisCommandText:"",redisResponse:null,redisEndpoint:"/openc3-api/redis/exec",headers:[{text:"Redis",value:"redis",width:150},{text:"Command",value:"command"},{text:"Response",value:"response"}],commands:[]}},methods:{commandKeydown:function(n){n.key==="Enter"&&this.executeRaw()},executeRaw:function(){this.redisResponse=null,x.li.post(this.redisEndpoint,{data:this.redisCommandText,headers:{Accept:"application/json","Content-Type":"plain/text"}}).then(n=>{this.redisResponse=n.data.result;let t="Ephemeral";this.redisEndpoint==="/openc3-api/redis/exec"&&(t="Persistent"),this.commands.unshift({redis:t,command:this.redisCommandText,response:this.redisResponse})})}}},V={key:0,class:"monospace"};function f(n,t,b,w,o,d){const r=e.resolveComponent("v-card-title"),l=e.resolveComponent("v-card-subtitle"),i=e.resolveComponent("v-text-field"),c=e.resolveComponent("v-card-text"),m=e.resolveComponent("v-btn"),a=e.resolveComponent("v-radio"),p=e.resolveComponent("v-radio-group"),u=e.resolveComponent("v-card-actions"),_=e.resolveComponent("v-data-table"),v=e.resolveComponent("v-card");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(r,null,{default:e.withCtx(()=>t[2]||(t[2]=[e.createTextVNode(" Send Raw Redis Commands ")])),_:1}),e.createVNode(l,null,{default:e.withCtx(()=>t[3]||(t[3]=[e.createTextVNode(" THIS IS DANGEROUS. This allows you to interact directly with the underlying Redis database, making it easy to modify or delete data. "),e.createElementVNode("br",null,null,-1),e.createElementVNode("br",null,null,-1),e.createTextVNode(" Enter commands like you would at the Redis cli prompt: "),e.createElementVNode("code",null,"ping",-1),e.createTextVNode(" or "),e.createElementVNode("code",null,"hget openc3__settings version",-1)])),_:1}),e.createVNode(c,{class:"pb-0 ml-2"},{default:e.withCtx(()=>[e.createVNode(i,{label:"Redis command",class:"monospace",modelValue:o.redisCommandText,"onUpdate:modelValue":t[0]||(t[0]=s=>o.redisCommandText=s),onKeydown:d.commandKeydown},null,8,["modelValue","onKeydown"]),o.redisResponse?(e.openBlock(),e.createElementBlock("span",V," Response: "+e.toDisplayString(o.redisResponse),1)):e.createCommentVNode("",!0)]),_:1}),e.createVNode(u,{class:"px-2"},{default:e.withCtx(()=>[e.createVNode(m,{disabled:!o.redisCommandText.length,onClick:d.executeRaw,color:"success",variant:"text"},{default:e.withCtx(()=>t[4]||(t[4]=[e.createTextVNode(" Execute ")])),_:1},8,["disabled","onClick"]),e.createVNode(p,{modelValue:o.redisEndpoint,"onUpdate:modelValue":t[1]||(t[1]=s=>o.redisEndpoint=s),inline:"","hide-details":"",class:"mt-0"},{default:e.withCtx(()=>[e.createVNode(a,{label:"Persistent",value:"/openc3-api/redis/exec","data-test":"persistent-radio"}),e.createVNode(a,{label:"Ephemeral",value:"/openc3-api/redis/exec?ephemeral=1","data-test":"ephemeral-radio"})]),_:1},8,["modelValue"])]),_:1}),e.createVNode(_,{headers:o.headers,items:o.commands,class:"monospace","items-per-page":-1,"hide-default-footer":"",density:"compact",height:"45vh"},null,8,["headers","items"])]),_:1})])}const N=h._export_sfc(C,[["render",f],["__scopeId","data-v-28716ab0"]]);exports.default=N;
|
|
2
|
-
//# sourceMappingURL=RedisTab-CdiSo-CO.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollwindowWidget-54GU96Ve.js","sources":["../src/widgets/ScrollwindowWidget.vue"],"sourcesContent":["<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div ref=\"container\" :style=\"computedStyle\" class=\"overflow-y-auto\">\n <component\n v-bind=\"listeners\"\n v-for=\"(widget, index) in widgets\"\n :key=\"index\"\n :is=\"widget.type\"\n :target=\"widget.target\"\n :parameters=\"widget.parameters\"\n :settings=\"widget.settings\"\n :screen-values=\"screenValues\"\n :screen-time-zone=\"screenTimeZone\"\n :widgets=\"widget.widgets\"\n :name=\"widget.name\"\n :line=\"widget.line\"\n :line-number=\"widget.lineNumber\"\n />\n </div>\n</template>\n\n<script>\nimport Layout from './Layout'\nimport VerticalWidget from './VerticalWidget.vue'\n\nexport default {\n mixins: [Layout],\n components: {\n VerticalWidget,\n },\n created: function () {\n this.setHeight(this.parameters[0], 'px', 200)\n if (this.parameters[1]) {\n let margin = this.parameters[1]\n this.widgets.forEach((widget) => {\n // Don't push MARGIN on a widget that's already defined it\n const found = widget.settings.find(\n (setting) =>\n setting[0] === 'MARGIN' ||\n (setting[0] === 'RAW' &&\n setting[1].toUpperCase().includes('MARGIN')),\n )\n if (found === undefined) {\n widget.settings.push(['MARGIN', margin])\n }\n })\n }\n },\n}\n</script>\n"],"names":["_sfc_main","Layout","VerticalWidget","margin","widget","setting","_createElementBlock","_normalizeStyle","_ctx","_openBlock","_Fragment","_renderList","index","_createBlock","_resolveDynamicComponent","_mergeProps"],"mappings":";;;;AA8CA,MAAKA,IAAU;AAAA,EACb,QAAQ,CAACC,CAAM;AAAA,EACf,YAAY;AAAA,IACV,gBAAAC;AAAA;EAEF,SAAS,WAAY;AAEnB,QADA,KAAK,UAAU,KAAK,WAAW,CAAC,GAAG,MAAM,GAAG,GACxC,KAAK,WAAW,CAAC,GAAG;AACtB,UAAIC,IAAS,KAAK,WAAW,CAAC;AAC9B,WAAK,QAAQ,QAAQ,CAACC,MAAW;AAQ/B,QANcA,EAAO,SAAS;AAAA,UAC5B,CAACC,MACCA,EAAQ,CAAC,MAAM,YACdA,EAAQ,CAAC,MAAM,SACdA,EAAQ,CAAC,EAAE,YAAW,EAAG,SAAS,QAAQ;AAAA,QAChD,MACc,UACZD,EAAO,SAAS,KAAK,CAAC,UAAUD,CAAM,CAAC;AAAA,MAE3C,CAAC;AAAA,IACH;AAAA,EACF;AACF;;cA9CEG,EAgBM,OAAA;AAAA,IAhBD,KAAI;AAAA,IAAa,OAvBxBC,EAuB+BC,EAAA,aAAa;AAAA,IAAE,OAAM;AAAA;KAChDC,EAAA,EAAA,GAAAH,EAcEI,SAtCNC,EA0BgCH,EAAA,SA1BhC,CA0BcJ,GAAQQ,YAFlBC,EAxBJC,EA4BWV,EAAO,IAAI,GAJlBW,EAcE,EAtCN,SAAA,MAyBcP,EAAA,WAAS;AAAA,MAEhB,KAAKI;AAAA,MAEL,QAAQR,EAAO;AAAA,MACf,YAAYA,EAAO;AAAA,MACnB,UAAUA,EAAO;AAAA,MACjB,iBAAeI,EAAA;AAAA,MACf,oBAAkBA,EAAA;AAAA,MAClB,SAASJ,EAAO;AAAA,MAChB,MAAMA,EAAO;AAAA,MACb,MAAMA,EAAO;AAAA,MACb,eAAaA,EAAO;AAAA;;;;"}
|