@openc3/vue-common 6.3.0 → 6.4.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.
- package/dist/{ArrayWidget-DkjHrXsu.cjs → ArrayWidget-C7qsXQC9.cjs} +2 -2
- package/dist/{ArrayWidget-DkjHrXsu.cjs.map → ArrayWidget-C7qsXQC9.cjs.map} +1 -1
- package/dist/{ArrayWidget-BbsN1dzF.js → ArrayWidget-CeyoPOhk.js} +4 -4
- package/dist/{ArrayWidget-BbsN1dzF.js.map → ArrayWidget-CeyoPOhk.js.map} +1 -1
- package/dist/{ArrayplotWidget-CCKEyYIx.js → ArrayplotWidget-BEw4fJPY.js} +3 -3
- package/dist/{ArrayplotWidget-CCKEyYIx.js.map → ArrayplotWidget-BEw4fJPY.js.map} +1 -1
- package/dist/ArrayplotWidget-S4tyM6zU.cjs +2 -0
- package/dist/{ArrayplotWidget-COeaK_Lz.cjs.map → ArrayplotWidget-S4tyM6zU.cjs.map} +1 -1
- package/dist/BarColumn-B2FQVNoP.cjs +2 -0
- package/dist/{BarColumn-CJLW1nXy.cjs.map → BarColumn-B2FQVNoP.cjs.map} +1 -1
- package/dist/{BarColumn-C6p07yWK.js → BarColumn-CIWppEH6.js} +3 -3
- package/dist/{BarColumn-C6p07yWK.js.map → BarColumn-CIWppEH6.js.map} +1 -1
- package/dist/{BlockWidget-DlCHbqZX.js → BlockWidget-DRtBkPat.js} +4 -4
- package/dist/{BlockWidget-DlCHbqZX.js.map → BlockWidget-DRtBkPat.js.map} +1 -1
- package/dist/{BlockWidget-BFVYgbd_.cjs → BlockWidget-EZBTae9s.cjs} +2 -2
- package/dist/{BlockWidget-BFVYgbd_.cjs.map → BlockWidget-EZBTae9s.cjs.map} +1 -1
- package/dist/{ButtonWidget-CtfJzCBR.js → ButtonWidget-4GORf9BG.js} +14 -14
- package/dist/{ButtonWidget-CtfJzCBR.js.map → ButtonWidget-4GORf9BG.js.map} +1 -1
- package/dist/ButtonWidget-C0UM4M51.cjs +3 -0
- package/dist/{ButtonWidget-HN8UHsme.cjs.map → ButtonWidget-C0UM4M51.cjs.map} +1 -1
- package/dist/{CanvasWidget-CHmkxxMO.cjs → CanvasWidget-77u4rg8R.cjs} +2 -2
- package/dist/{CanvasWidget-CHmkxxMO.cjs.map → CanvasWidget-77u4rg8R.cjs.map} +1 -1
- package/dist/{CanvasWidget-CqRlXc4r.js → CanvasWidget-VW1uHIU0.js} +2 -2
- package/dist/{CanvasWidget-CqRlXc4r.js.map → CanvasWidget-VW1uHIU0.js.map} +1 -1
- package/dist/{CanvasdotWidget-B4bUcKRc.cjs → CanvasdotWidget-B4olJsKr.cjs} +2 -2
- package/dist/{CanvasdotWidget-B4bUcKRc.cjs.map → CanvasdotWidget-B4olJsKr.cjs.map} +1 -1
- package/dist/{CanvasdotWidget--Xr_KsZs.js → CanvasdotWidget-unc83V9l.js} +2 -2
- package/dist/{CanvasdotWidget--Xr_KsZs.js.map → CanvasdotWidget-unc83V9l.js.map} +1 -1
- package/dist/{CanvasimageWidget-B5YozXoI.cjs → CanvasimageWidget-BPk3GdGV.cjs} +2 -2
- package/dist/{CanvasimageWidget-B5YozXoI.cjs.map → CanvasimageWidget-BPk3GdGV.cjs.map} +1 -1
- package/dist/{CanvasimageWidget-BPlj5QYK.js → CanvasimageWidget-CNPV5Ale.js} +3 -3
- package/dist/{CanvasimageWidget-BPlj5QYK.js.map → CanvasimageWidget-CNPV5Ale.js.map} +1 -1
- package/dist/{CanvasimagevalueWidget-Dx1HnbEw.cjs → CanvasimagevalueWidget-DpPDDitX.cjs} +2 -2
- package/dist/{CanvasimagevalueWidget-Dx1HnbEw.cjs.map → CanvasimagevalueWidget-DpPDDitX.cjs.map} +1 -1
- package/dist/{CanvasimagevalueWidget-DVFGLt8f.js → CanvasimagevalueWidget-DsQbSZt_.js} +3 -3
- package/dist/{CanvasimagevalueWidget-DVFGLt8f.js.map → CanvasimagevalueWidget-DsQbSZt_.js.map} +1 -1
- package/dist/{CanvaslabelWidget-CYNqmyP0.js → CanvaslabelWidget-B-5KAkZr.js} +2 -2
- package/dist/{CanvaslabelWidget-CYNqmyP0.js.map → CanvaslabelWidget-B-5KAkZr.js.map} +1 -1
- package/dist/{CanvaslabelWidget-DgadQD-D.cjs → CanvaslabelWidget-CjKvr47x.cjs} +2 -2
- package/dist/{CanvaslabelWidget-DgadQD-D.cjs.map → CanvaslabelWidget-CjKvr47x.cjs.map} +1 -1
- package/dist/{CanvaslabelvalueWidget-C3k5gx5c.cjs → CanvaslabelvalueWidget-C0jdjHxr.cjs} +2 -2
- package/dist/{CanvaslabelvalueWidget-C3k5gx5c.cjs.map → CanvaslabelvalueWidget-C0jdjHxr.cjs.map} +1 -1
- package/dist/{CanvaslabelvalueWidget-B7yIDmsn.js → CanvaslabelvalueWidget-DX-b_55r.js} +2 -2
- package/dist/{CanvaslabelvalueWidget-B7yIDmsn.js.map → CanvaslabelvalueWidget-DX-b_55r.js.map} +1 -1
- package/dist/{CanvaslineWidget-CYHkes0a.cjs → CanvaslineWidget-C-4EjDkj.cjs} +2 -2
- package/dist/{CanvaslineWidget-CYHkes0a.cjs.map → CanvaslineWidget-C-4EjDkj.cjs.map} +1 -1
- package/dist/{CanvaslineWidget-BICdxX0Q.js → CanvaslineWidget-DiNWzbpu.js} +2 -2
- package/dist/{CanvaslineWidget-BICdxX0Q.js.map → CanvaslineWidget-DiNWzbpu.js.map} +1 -1
- package/dist/{CanvaslinevalueWidget-Cq-Ddh0P.js → CanvaslinevalueWidget-Du9pwAN7.js} +2 -2
- package/dist/{CanvaslinevalueWidget-Cq-Ddh0P.js.map → CanvaslinevalueWidget-Du9pwAN7.js.map} +1 -1
- package/dist/{CanvaslinevalueWidget-5DzhZ22p.cjs → CanvaslinevalueWidget-x81dANpk.cjs} +2 -2
- package/dist/{CanvaslinevalueWidget-5DzhZ22p.cjs.map → CanvaslinevalueWidget-x81dANpk.cjs.map} +1 -1
- package/dist/{CheckbuttonWidget-B74AWeaW.js → CheckbuttonWidget--QM-segm.js} +2 -2
- package/dist/{CheckbuttonWidget-B74AWeaW.js.map → CheckbuttonWidget--QM-segm.js.map} +1 -1
- package/dist/{CheckbuttonWidget-BCzsXnIF.cjs → CheckbuttonWidget-LWSGbUuH.cjs} +2 -2
- package/dist/{CheckbuttonWidget-BCzsXnIF.cjs.map → CheckbuttonWidget-LWSGbUuH.cjs.map} +1 -1
- package/dist/{ComboboxWidget-CtyKbEWb.js → ComboboxWidget-BDpHIcCo.js} +2 -2
- package/dist/{ComboboxWidget-CtyKbEWb.js.map → ComboboxWidget-BDpHIcCo.js.map} +1 -1
- package/dist/{ComboboxWidget-DQgDyDAC.cjs → ComboboxWidget-DR8EmM6T.cjs} +2 -2
- package/dist/{ComboboxWidget-DQgDyDAC.cjs.map → ComboboxWidget-DR8EmM6T.cjs.map} +1 -1
- package/dist/CriticalCmdDialog-Ct5WeIW_.cjs +2 -0
- package/dist/CriticalCmdDialog-Ct5WeIW_.cjs.map +1 -0
- package/dist/{CriticalCmdDialog-DPIZOBeP.js → CriticalCmdDialog-D4-eoA3P.js} +16 -16
- package/dist/CriticalCmdDialog-D4-eoA3P.js.map +1 -0
- package/dist/{DateWidget-BEVSczU8.js → DateWidget-BCmQNavZ.js} +3 -3
- package/dist/{DateWidget-BEVSczU8.js.map → DateWidget-BCmQNavZ.js.map} +1 -1
- package/dist/{DateWidget-BB4cIuUS.cjs → DateWidget-CBzHYk5i.cjs} +2 -2
- package/dist/{DateWidget-BB4cIuUS.cjs.map → DateWidget-CBzHYk5i.cjs.map} +1 -1
- package/dist/{DetailsDialog-DmEC5BTs.js → DetailsDialog-OMd7LWdZ.js} +18 -18
- package/dist/DetailsDialog-OMd7LWdZ.js.map +1 -0
- package/dist/DetailsDialog-T9G076-B.cjs +2 -0
- package/dist/DetailsDialog-T9G076-B.cjs.map +1 -0
- package/dist/EventListDialog-COOwwkxk.cjs +2 -0
- package/dist/EventListDialog-COOwwkxk.cjs.map +1 -0
- package/dist/{EventListDialog-CSMSmCIT.js → EventListDialog-ankpCg-n.js} +520 -593
- package/dist/EventListDialog-ankpCg-n.js.map +1 -0
- package/dist/FormatvalueWidget-CPn5mDHY.js +48 -0
- package/dist/FormatvalueWidget-CPn5mDHY.js.map +1 -0
- package/dist/FormatvalueWidget-wjsl4ty0.cjs +2 -0
- package/dist/FormatvalueWidget-wjsl4ty0.cjs.map +1 -0
- package/dist/Graph-hTOB_jv2.cjs +2 -0
- package/dist/Graph-hTOB_jv2.cjs.map +1 -0
- package/dist/{Graph-Bgo0cjl3.js → Graph-vUcIyyTp.js} +666 -801
- package/dist/Graph-vUcIyyTp.js.map +1 -0
- package/dist/{GraphWidget-DurWDmpg.js → GraphWidget-Cl97QQYm.js} +2 -2
- package/dist/{GraphWidget-DurWDmpg.js.map → GraphWidget-Cl97QQYm.js.map} +1 -1
- package/dist/{GraphWidget-sid4Ws9H.cjs → GraphWidget-D3rDXvA8.cjs} +2 -2
- package/dist/{GraphWidget-sid4Ws9H.cjs.map → GraphWidget-D3rDXvA8.cjs.map} +1 -1
- package/dist/{HorizontalWidget-_6IR0cR8.cjs → HorizontalWidget-72nrDrwn.cjs} +2 -2
- package/dist/{HorizontalWidget-_6IR0cR8.cjs.map → HorizontalWidget-72nrDrwn.cjs.map} +1 -1
- package/dist/{HorizontalWidget-Cd_wl1b3.js → HorizontalWidget-CtTkQHl-.js} +2 -2
- package/dist/{HorizontalWidget-Cd_wl1b3.js.map → HorizontalWidget-CtTkQHl-.js.map} +1 -1
- package/dist/{HorizontalboxWidget-zmnurtv1.cjs → HorizontalboxWidget-C8kuEm-u.cjs} +2 -2
- package/dist/{HorizontalboxWidget-zmnurtv1.cjs.map → HorizontalboxWidget-C8kuEm-u.cjs.map} +1 -1
- package/dist/{HorizontalboxWidget-BcMTFBU-.js → HorizontalboxWidget-Dn9zVn4r.js} +5 -5
- package/dist/{HorizontalboxWidget-BcMTFBU-.js.map → HorizontalboxWidget-Dn9zVn4r.js.map} +1 -1
- package/dist/{HorizontallineWidget-CXFqHclf.js → HorizontallineWidget-BBvYWaP7.js} +2 -2
- package/dist/{HorizontallineWidget-CXFqHclf.js.map → HorizontallineWidget-BBvYWaP7.js.map} +1 -1
- package/dist/{HorizontallineWidget-CM-6WqCj.cjs → HorizontallineWidget-Bs_p5rzY.cjs} +2 -2
- package/dist/{HorizontallineWidget-CM-6WqCj.cjs.map → HorizontallineWidget-Bs_p5rzY.cjs.map} +1 -1
- package/dist/{IframeWidget-EhncMob0.cjs → IframeWidget-Bhl0G51c.cjs} +2 -2
- package/dist/{IframeWidget-EhncMob0.cjs.map → IframeWidget-Bhl0G51c.cjs.map} +1 -1
- package/dist/{IframeWidget-BPerHCCa.js → IframeWidget-BmZOip3U.js} +2 -2
- package/dist/{IframeWidget-BPerHCCa.js.map → IframeWidget-BmZOip3U.js.map} +1 -1
- package/dist/ImageLoader-CXV42ZAx.cjs +2 -0
- package/dist/{ImageLoader-cRmBcpU9.cjs.map → ImageLoader-CXV42ZAx.cjs.map} +1 -1
- package/dist/{ImageLoader-4N-7Gj61.js → ImageLoader-wYNaGuuz.js} +2 -2
- package/dist/{ImageLoader-4N-7Gj61.js.map → ImageLoader-wYNaGuuz.js.map} +1 -1
- package/dist/{ImageviewerWidget-Bv3CreXd.cjs → ImageviewerWidget-BAK_GlYK.cjs} +2 -2
- package/dist/{ImageviewerWidget-Bv3CreXd.cjs.map → ImageviewerWidget-BAK_GlYK.cjs.map} +1 -1
- package/dist/{ImageviewerWidget-Cw_H_HmZ.js → ImageviewerWidget-ByuTqBHq.js} +2 -2
- package/dist/{ImageviewerWidget-Cw_H_HmZ.js.map → ImageviewerWidget-ByuTqBHq.js.map} +1 -1
- package/dist/InterfacesTab-BbsiYwEX.js +83 -0
- package/dist/InterfacesTab-BbsiYwEX.js.map +1 -0
- package/dist/InterfacesTab-CnQLkjoz.cjs +2 -0
- package/dist/InterfacesTab-CnQLkjoz.cjs.map +1 -0
- package/dist/{LabelWidget-mMcf5S8K.cjs → LabelWidget-BP72ze-R.cjs} +2 -2
- package/dist/{LabelWidget-mMcf5S8K.cjs.map → LabelWidget-BP72ze-R.cjs.map} +1 -1
- package/dist/{LabelWidget-xrmcVeq8.js → LabelWidget-Dmb5F5j-.js} +2 -2
- package/dist/{LabelWidget-xrmcVeq8.js.map → LabelWidget-Dmb5F5j-.js.map} +1 -1
- package/dist/{LabelledWidget-BoYCuDaH.cjs → LabelledWidget-DIflzlDv.cjs} +2 -2
- package/dist/{LabelledWidget-BoYCuDaH.cjs.map → LabelledWidget-DIflzlDv.cjs.map} +1 -1
- package/dist/{LabelledWidget-D48QoyMk.js → LabelledWidget-DV1IbbPS.js} +4 -4
- package/dist/{LabelledWidget-D48QoyMk.js.map → LabelledWidget-DV1IbbPS.js.map} +1 -1
- package/dist/{LabelprogressbarWidget-DiucKsT2.cjs → LabelprogressbarWidget-B18EaMhU.cjs} +2 -2
- package/dist/{LabelprogressbarWidget-DiucKsT2.cjs.map → LabelprogressbarWidget-B18EaMhU.cjs.map} +1 -1
- package/dist/{LabelprogressbarWidget-C_950t6g.js → LabelprogressbarWidget-BHBDYVZp.js} +4 -4
- package/dist/{LabelprogressbarWidget-C_950t6g.js.map → LabelprogressbarWidget-BHBDYVZp.js.map} +1 -1
- package/dist/{LabelsparklineWidget-0KXQyPoU.js → LabelsparklineWidget-BaoIdd7s.js} +4 -4
- package/dist/{LabelsparklineWidget-0KXQyPoU.js.map → LabelsparklineWidget-BaoIdd7s.js.map} +1 -1
- package/dist/{LabelsparklineWidget-A3MTEhQc.cjs → LabelsparklineWidget-Bdft2p6Y.cjs} +2 -2
- package/dist/{LabelsparklineWidget-A3MTEhQc.cjs.map → LabelsparklineWidget-Bdft2p6Y.cjs.map} +1 -1
- package/dist/{LabelvalueWidget-DnKoz0-N.cjs → LabelvalueWidget-DiqMgePn.cjs} +2 -2
- package/dist/{LabelvalueWidget-DnKoz0-N.cjs.map → LabelvalueWidget-DiqMgePn.cjs.map} +1 -1
- package/dist/{LabelvalueWidget-CQ06wWDK.js → LabelvalueWidget-wuW55zQP.js} +4 -4
- package/dist/{LabelvalueWidget-CQ06wWDK.js.map → LabelvalueWidget-wuW55zQP.js.map} +1 -1
- package/dist/{LabelvaluedescWidget-Bo8zT01X.js → LabelvaluedescWidget-BBHwqvj4.js} +9 -9
- package/dist/{LabelvaluedescWidget-Bo8zT01X.js.map → LabelvaluedescWidget-BBHwqvj4.js.map} +1 -1
- package/dist/LabelvaluedescWidget-fN9XLm-N.cjs +2 -0
- package/dist/{LabelvaluedescWidget-I6ljK--Y.cjs.map → LabelvaluedescWidget-fN9XLm-N.cjs.map} +1 -1
- package/dist/{LabelvaluelimitsbarWidget-BucTw8Yk.js → LabelvaluelimitsbarWidget-77Rc3lCf.js} +4 -4
- package/dist/{LabelvaluelimitsbarWidget-BucTw8Yk.js.map → LabelvaluelimitsbarWidget-77Rc3lCf.js.map} +1 -1
- package/dist/{LabelvaluelimitsbarWidget-Cb6i_Ixc.cjs → LabelvaluelimitsbarWidget-Dp5qsue9.cjs} +2 -2
- package/dist/{LabelvaluelimitsbarWidget-Cb6i_Ixc.cjs.map → LabelvaluelimitsbarWidget-Dp5qsue9.cjs.map} +1 -1
- package/dist/{LabelvaluelimitscolumnWidget-Dflb1hNd.js → LabelvaluelimitscolumnWidget-nounrACl.js} +5 -5
- package/dist/{LabelvaluelimitscolumnWidget-Dflb1hNd.js.map → LabelvaluelimitscolumnWidget-nounrACl.js.map} +1 -1
- package/dist/{LabelvaluelimitscolumnWidget-ClY5OxUC.cjs → LabelvaluelimitscolumnWidget-uR4QE_cm.cjs} +2 -2
- package/dist/{LabelvaluelimitscolumnWidget-ClY5OxUC.cjs.map → LabelvaluelimitscolumnWidget-uR4QE_cm.cjs.map} +1 -1
- package/dist/{LabelvaluerangebarWidget-D8cbfXFM.js → LabelvaluerangebarWidget-B83Jj5Q1.js} +4 -4
- package/dist/{LabelvaluerangebarWidget-D8cbfXFM.js.map → LabelvaluerangebarWidget-B83Jj5Q1.js.map} +1 -1
- package/dist/{LabelvaluerangebarWidget-9S5rVZaS.cjs → LabelvaluerangebarWidget-MVkSnTVH.cjs} +2 -2
- package/dist/{LabelvaluerangebarWidget-9S5rVZaS.cjs.map → LabelvaluerangebarWidget-MVkSnTVH.cjs.map} +1 -1
- package/dist/{Layout-Tf--nruw.js → Layout-ByQC7nQ3.js} +2 -2
- package/dist/{Layout-Tf--nruw.js.map → Layout-ByQC7nQ3.js.map} +1 -1
- package/dist/Layout-CFJMHNqy.cjs +2 -0
- package/dist/{Layout-DuCYyOw4.cjs.map → Layout-CFJMHNqy.cjs.map} +1 -1
- package/dist/{LedWidget-qH_FthkK.js → LedWidget-Cccb8YTk.js} +13 -10
- package/dist/LedWidget-Cccb8YTk.js.map +1 -0
- package/dist/LedWidget-ghzR6jZJ.cjs +2 -0
- package/dist/LedWidget-ghzR6jZJ.cjs.map +1 -0
- package/dist/{LimitsbarWidget-B9lAB2RD.js → LimitsbarWidget-D1EBBwX1.js} +10 -7
- package/dist/LimitsbarWidget-D1EBBwX1.js.map +1 -0
- package/dist/LimitsbarWidget-Dg2_T5OY.cjs +2 -0
- package/dist/LimitsbarWidget-Dg2_T5OY.cjs.map +1 -0
- package/dist/{LimitscolorWidget-c6Qa6su7.js → LimitscolorWidget--1aPSNVB.js} +2 -2
- package/dist/{LimitscolorWidget-c6Qa6su7.js.map → LimitscolorWidget--1aPSNVB.js.map} +1 -1
- package/dist/{LimitscolorWidget-DORhDxRo.cjs → LimitscolorWidget-D9mHLFOs.cjs} +2 -2
- package/dist/{LimitscolorWidget-DORhDxRo.cjs.map → LimitscolorWidget-D9mHLFOs.cjs.map} +1 -1
- package/dist/{LimitscolumnWidget-C9Uyg7Fh.cjs → LimitscolumnWidget-D18x3aW-.cjs} +2 -2
- package/dist/{LimitscolumnWidget-C9Uyg7Fh.cjs.map → LimitscolumnWidget-D18x3aW-.cjs.map} +1 -1
- package/dist/{LimitscolumnWidget-CcLs_443.js → LimitscolumnWidget-swnMNApm.js} +2 -2
- package/dist/{LimitscolumnWidget-CcLs_443.js.map → LimitscolumnWidget-swnMNApm.js.map} +1 -1
- package/dist/{LinegraphWidget-BSVYLFo1.js → LinegraphWidget-BbI-wOnq.js} +4 -4
- package/dist/{LinegraphWidget-BSVYLFo1.js.map → LinegraphWidget-BbI-wOnq.js.map} +1 -1
- package/dist/LinegraphWidget-BdCc6zps.cjs +2 -0
- package/dist/{LinegraphWidget-Bf8DIwEn.cjs.map → LinegraphWidget-BdCc6zps.cjs.map} +1 -1
- package/dist/{MatrixbycolumnsWidget-DXFpZTre.js → MatrixbycolumnsWidget-Bx2qMr8P.js} +3 -3
- package/dist/{MatrixbycolumnsWidget-DXFpZTre.js.map → MatrixbycolumnsWidget-Bx2qMr8P.js.map} +1 -1
- package/dist/MatrixbycolumnsWidget-CuhTHsdb.cjs +2 -0
- package/dist/{MatrixbycolumnsWidget-DpdFzNeP.cjs.map → MatrixbycolumnsWidget-CuhTHsdb.cjs.map} +1 -1
- package/dist/MicroservicesTab-7mVRcHEj.cjs +2 -0
- package/dist/MicroservicesTab-7mVRcHEj.cjs.map +1 -0
- package/dist/MicroservicesTab-CtI7BEt0.js +219 -0
- package/dist/MicroservicesTab-CtI7BEt0.js.map +1 -0
- package/dist/Openc3Screen-B4X70CVP.cjs +5 -0
- package/dist/Openc3Screen-B4X70CVP.cjs.map +1 -0
- package/dist/Openc3Screen-DFYYhHt7.js +1704 -0
- package/dist/Openc3Screen-DFYYhHt7.js.map +1 -0
- package/dist/{OutputDialog-zVPZiZay.js → OutputDialog-CqD5uI0m.js} +66 -78
- package/dist/OutputDialog-CqD5uI0m.js.map +1 -0
- package/dist/OutputDialog-Dft9Xm4R.cjs +2 -0
- package/dist/OutputDialog-Dft9Xm4R.cjs.map +1 -0
- package/dist/PackagesTab-BxP1kiSR.cjs +2 -0
- package/dist/PackagesTab-BxP1kiSR.cjs.map +1 -0
- package/dist/PackagesTab-DhMk-fi5.js +313 -0
- package/dist/PackagesTab-DhMk-fi5.js.map +1 -0
- package/dist/PluginsTab-BKJo5vK-.cjs +6 -0
- package/dist/PluginsTab-BKJo5vK-.cjs.map +1 -0
- package/dist/{PluginsTab-B64OvayB.js → PluginsTab-DxxEqPCA.js} +205 -244
- package/dist/PluginsTab-DxxEqPCA.js.map +1 -0
- package/dist/{ProgressbarWidget-iYGw8-Dc.js → ProgressbarWidget-7rJeuX6H.js} +2 -2
- package/dist/{ProgressbarWidget-iYGw8-Dc.js.map → ProgressbarWidget-7rJeuX6H.js.map} +1 -1
- package/dist/{ProgressbarWidget-fGWa6ipm.cjs → ProgressbarWidget-DLvbQ0g-.cjs} +2 -2
- package/dist/{ProgressbarWidget-fGWa6ipm.cjs.map → ProgressbarWidget-DLvbQ0g-.cjs.map} +1 -1
- package/dist/{RadiobuttonWidget-ZEPJbOp_.cjs → RadiobuttonWidget-C15SchQH.cjs} +2 -2
- package/dist/{RadiobuttonWidget-ZEPJbOp_.cjs.map → RadiobuttonWidget-C15SchQH.cjs.map} +1 -1
- package/dist/{RadiobuttonWidget-ytmoVZ3u.js → RadiobuttonWidget-DsEw3JiU.js} +2 -2
- package/dist/{RadiobuttonWidget-ytmoVZ3u.js.map → RadiobuttonWidget-DsEw3JiU.js.map} +1 -1
- package/dist/{RadiogroupWidget-EK4rEGUC.cjs → RadiogroupWidget-BZS_MkSP.cjs} +2 -2
- package/dist/{RadiogroupWidget-EK4rEGUC.cjs.map → RadiogroupWidget-BZS_MkSP.cjs.map} +1 -1
- package/dist/{RadiogroupWidget-CusMBhKH.js → RadiogroupWidget-DhfbTvQ8.js} +2 -2
- package/dist/{RadiogroupWidget-CusMBhKH.js.map → RadiogroupWidget-DhfbTvQ8.js.map} +1 -1
- package/dist/{RangebarWidget-D_zGTtCa.js → RangebarWidget-BEGvSL_K.js} +2 -2
- package/dist/{RangebarWidget-D_zGTtCa.js.map → RangebarWidget-BEGvSL_K.js.map} +1 -1
- package/dist/{RangebarWidget-DwIs-L5k.cjs → RangebarWidget-bBSBfvHk.cjs} +2 -2
- package/dist/{RangebarWidget-DwIs-L5k.cjs.map → RangebarWidget-bBSBfvHk.cjs.map} +1 -1
- package/dist/{RedisTab-CyPo6ADN.js → RedisTab-Bq8Frctp.js} +13 -13
- package/dist/{RedisTab-CyPo6ADN.js.map → RedisTab-Bq8Frctp.js.map} +1 -1
- package/dist/RedisTab-CWYntIvy.cjs +2 -0
- package/dist/{RedisTab-67UcKoPf.cjs.map → RedisTab-CWYntIvy.cjs.map} +1 -1
- package/dist/{RollupWidget-Dolsixyt.js → RollupWidget-BZhspgWd.js} +2 -2
- package/dist/{RollupWidget-Dolsixyt.js.map → RollupWidget-BZhspgWd.js.map} +1 -1
- package/dist/{RollupWidget-DC3OIP6G.cjs → RollupWidget-BueYskqE.cjs} +2 -2
- package/dist/{RollupWidget-DC3OIP6G.cjs.map → RollupWidget-BueYskqE.cjs.map} +1 -1
- package/dist/RoutersTab-Bg6dpAXr.js +85 -0
- package/dist/RoutersTab-Bg6dpAXr.js.map +1 -0
- package/dist/RoutersTab-DOseaOsv.cjs +2 -0
- package/dist/RoutersTab-DOseaOsv.cjs.map +1 -0
- package/dist/ScriptChooser-CHkObjcT.cjs +2 -0
- package/dist/ScriptChooser-CHkObjcT.cjs.map +1 -0
- package/dist/ScriptChooser-DBkFAc6E.js +176 -0
- package/dist/ScriptChooser-DBkFAc6E.js.map +1 -0
- package/dist/{ScrollwindowWidget-BWeqSUPc.cjs → ScrollwindowWidget-CJmuGHai.cjs} +2 -2
- package/dist/{ScrollwindowWidget-BWeqSUPc.cjs.map → ScrollwindowWidget-CJmuGHai.cjs.map} +1 -1
- package/dist/{ScrollwindowWidget-DV2nZuNi.js → ScrollwindowWidget-qZ3nhhVU.js} +3 -3
- package/dist/{ScrollwindowWidget-DV2nZuNi.js.map → ScrollwindowWidget-qZ3nhhVU.js.map} +1 -1
- package/dist/SecretsTab-B49h9PhL.cjs +2 -0
- package/dist/SecretsTab-B49h9PhL.cjs.map +1 -0
- package/dist/{SecretsTab-DVyyyGlG.js → SecretsTab-vdm8oj9_.js} +39 -49
- package/dist/SecretsTab-vdm8oj9_.js.map +1 -0
- package/dist/{SettingsTab-g29K6FyC.js → SettingsTab-C05e6-Xm.js} +3 -3
- package/dist/{SettingsTab-g29K6FyC.js.map → SettingsTab-C05e6-Xm.js.map} +1 -1
- package/dist/SettingsTab-fmHVuOps.cjs +3 -0
- package/dist/{SettingsTab-B1LvOLG2.cjs.map → SettingsTab-fmHVuOps.cjs.map} +1 -1
- package/dist/{SignalWidget-d9-6h85k.js → SignalWidget-Bh14Zrch.js} +16 -18
- package/dist/SignalWidget-Bh14Zrch.js.map +1 -0
- package/dist/{SignalWidget-RvRwpE8T.cjs → SignalWidget-J3LFoUd-.cjs} +2 -2
- package/dist/SignalWidget-J3LFoUd-.cjs.map +1 -0
- package/dist/SimpleTextDialog-CSsm9IoB.cjs +2 -0
- package/dist/SimpleTextDialog-CSsm9IoB.cjs.map +1 -0
- package/dist/SimpleTextDialog-plHG7LGh.js +97 -0
- package/dist/SimpleTextDialog-plHG7LGh.js.map +1 -0
- package/dist/{SpacerWidget-7_8bpLCb.cjs → SpacerWidget-CzqLoBdY.cjs} +2 -2
- package/dist/{SpacerWidget-7_8bpLCb.cjs.map → SpacerWidget-CzqLoBdY.cjs.map} +1 -1
- package/dist/{SpacerWidget-BH0p2OLi.js → SpacerWidget-D_NE46jZ.js} +2 -2
- package/dist/{SpacerWidget-BH0p2OLi.js.map → SpacerWidget-D_NE46jZ.js.map} +1 -1
- package/dist/{SparklineWidget-coxi9r2g.js → SparklineWidget-CJEEJdZ-.js} +4 -4
- package/dist/{SparklineWidget-coxi9r2g.js.map → SparklineWidget-CJEEJdZ-.js.map} +1 -1
- package/dist/SparklineWidget-DDRhatn7.cjs +2 -0
- package/dist/{SparklineWidget-60jVlbHA.cjs.map → SparklineWidget-DDRhatn7.cjs.map} +1 -1
- package/dist/{TabbookWidget-B1XKplGH.js → TabbookWidget-C-SU65IF.js} +2 -2
- package/dist/{TabbookWidget-B1XKplGH.js.map → TabbookWidget-C-SU65IF.js.map} +1 -1
- package/dist/{TabbookWidget-D1CVT9IK.cjs → TabbookWidget-C8k2kKLX.cjs} +2 -2
- package/dist/{TabbookWidget-D1CVT9IK.cjs.map → TabbookWidget-C8k2kKLX.cjs.map} +1 -1
- package/dist/TargetsTab-DyfyM9sC.js +117 -0
- package/dist/TargetsTab-DyfyM9sC.js.map +1 -0
- package/dist/TargetsTab-pU_wu9d-.cjs +2 -0
- package/dist/TargetsTab-pU_wu9d-.cjs.map +1 -0
- package/dist/TextBoxDialog-C60jmnyN.js +98 -0
- package/dist/TextBoxDialog-C60jmnyN.js.map +1 -0
- package/dist/TextBoxDialog-DWt30tB8.cjs +2 -0
- package/dist/TextBoxDialog-DWt30tB8.cjs.map +1 -0
- package/dist/TextboxWidget-CRDu77NK.cjs +2 -0
- package/dist/{TextboxWidget-BDG4NxRw.cjs.map → TextboxWidget-CRDu77NK.cjs.map} +1 -1
- package/dist/{TextboxWidget-C-_M2M4l.js → TextboxWidget-Dn1Ds-b0.js} +4 -4
- package/dist/{TextboxWidget-C-_M2M4l.js.map → TextboxWidget-Dn1Ds-b0.js.map} +1 -1
- package/dist/{TextfieldWidget-C08N4JE8.js → TextfieldWidget-C0C7NL53.js} +2 -2
- package/dist/{TextfieldWidget-C08N4JE8.js.map → TextfieldWidget-C0C7NL53.js.map} +1 -1
- package/dist/{TextfieldWidget-BGJv9Lox.cjs → TextfieldWidget-DGdD6b_-.cjs} +2 -2
- package/dist/{TextfieldWidget-BGJv9Lox.cjs.map → TextfieldWidget-DGdD6b_-.cjs.map} +1 -1
- package/dist/{TimeWidget-DtwdEcFg.js → TimeWidget-AFOTVB4w.js} +3 -3
- package/dist/{TimeWidget-DtwdEcFg.js.map → TimeWidget-AFOTVB4w.js.map} +1 -1
- package/dist/{TimeWidget-CGCOIouj.cjs → TimeWidget-BlZoS24B.cjs} +2 -2
- package/dist/{TimeWidget-CGCOIouj.cjs.map → TimeWidget-BlZoS24B.cjs.map} +1 -1
- package/dist/{TitleWidget-CT-aLcNb.js → TitleWidget-CbS_wrQw.js} +2 -2
- package/dist/{TitleWidget-CT-aLcNb.js.map → TitleWidget-CbS_wrQw.js.map} +1 -1
- package/dist/{TitleWidget-BljFH9RB.cjs → TitleWidget-DDEnHVPP.cjs} +2 -2
- package/dist/{TitleWidget-BljFH9RB.cjs.map → TitleWidget-DDEnHVPP.cjs.map} +1 -1
- package/dist/ToolsTab-BvpoO0wt.js +1501 -0
- package/dist/{ToolsTab-NveeVXz2.js.map → ToolsTab-BvpoO0wt.js.map} +1 -1
- package/dist/ToolsTab-DCRNrlhT.cjs +7 -0
- package/dist/{ToolsTab-RMTst_Sy.cjs.map → ToolsTab-DCRNrlhT.cjs.map} +1 -1
- package/dist/{TopBar-CnJNNJlV.js → TopBar-AjYGyx8W.js} +68 -64
- package/dist/TopBar-AjYGyx8W.js.map +1 -0
- package/dist/TopBar-vznpQjGN.cjs +2 -0
- package/dist/TopBar-vznpQjGN.cjs.map +1 -0
- package/dist/UpgradeToEnterpriseDialog-1fVtqbze.cjs +2 -0
- package/dist/UpgradeToEnterpriseDialog-1fVtqbze.cjs.map +1 -0
- package/dist/UpgradeToEnterpriseDialog-CMVEjihv.js +95 -0
- package/dist/UpgradeToEnterpriseDialog-CMVEjihv.js.map +1 -0
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B98GsSQS.cjs +1497 -0
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-B98GsSQS.cjs.map +1 -0
- package/dist/{WidgetComponents-C1lSLZ0I.js → UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-BOiUmW4q.js} +10636 -10597
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-BOiUmW4q.js.map +1 -0
- package/dist/{VWidget-DQqb7NVW.js → VWidget-BlF_o-7Z.js} +3 -3
- package/dist/{VWidget-DQqb7NVW.js.map → VWidget-BlF_o-7Z.js.map} +1 -1
- package/dist/{VWidget-2N2cOosI.cjs → VWidget-CMKh-tv6.cjs} +2 -2
- package/dist/{VWidget-2N2cOosI.cjs.map → VWidget-CMKh-tv6.cjs.map} +1 -1
- package/dist/{ValueWidget-C6RanBj3.js → ValueWidget-DFUfM5tw.js} +16 -14
- package/dist/ValueWidget-DFUfM5tw.js.map +1 -0
- package/dist/ValueWidget-K7SCPEB6.cjs +2 -0
- package/dist/ValueWidget-K7SCPEB6.cjs.map +1 -0
- package/dist/{ValuelimitsbarWidget-B3bvjfxc.js → ValuelimitsbarWidget-CALgABsT.js} +4 -4
- package/dist/{ValuelimitsbarWidget-B3bvjfxc.js.map → ValuelimitsbarWidget-CALgABsT.js.map} +1 -1
- package/dist/{ValuelimitsbarWidget-C0HROxrb.cjs → ValuelimitsbarWidget-DcY2NV9X.cjs} +2 -2
- package/dist/{ValuelimitsbarWidget-C0HROxrb.cjs.map → ValuelimitsbarWidget-DcY2NV9X.cjs.map} +1 -1
- package/dist/{ValuelimitscolumnWidget-QvhI6EcE.js → ValuelimitscolumnWidget-Bs91VFLz.js} +4 -4
- package/dist/{ValuelimitscolumnWidget-QvhI6EcE.js.map → ValuelimitscolumnWidget-Bs91VFLz.js.map} +1 -1
- package/dist/{ValuelimitscolumnWidget-CWvLfg8u.cjs → ValuelimitscolumnWidget-DQKvlGap.cjs} +2 -2
- package/dist/{ValuelimitscolumnWidget-CWvLfg8u.cjs.map → ValuelimitscolumnWidget-DQKvlGap.cjs.map} +1 -1
- package/dist/{ValuerangebarWidget-Dt3K9BnC.js → ValuerangebarWidget-C7WHyR2h.js} +4 -4
- package/dist/{ValuerangebarWidget-Dt3K9BnC.js.map → ValuerangebarWidget-C7WHyR2h.js.map} +1 -1
- package/dist/{ValuerangebarWidget-DyN78cQl.cjs → ValuerangebarWidget-DnWuvusw.cjs} +2 -2
- package/dist/{ValuerangebarWidget-DyN78cQl.cjs.map → ValuerangebarWidget-DnWuvusw.cjs.map} +1 -1
- package/dist/{VerticalWidget-BIIViZgI.js → VerticalWidget-COP5oVCK.js} +2 -2
- package/dist/{VerticalWidget-BIIViZgI.js.map → VerticalWidget-COP5oVCK.js.map} +1 -1
- package/dist/{VerticalWidget-CFTOu4H8.cjs → VerticalWidget-eMN4dvxL.cjs} +2 -2
- package/dist/{VerticalWidget-CFTOu4H8.cjs.map → VerticalWidget-eMN4dvxL.cjs.map} +1 -1
- package/dist/{VerticalboxWidget-DY72fLHW.js → VerticalboxWidget-CDPoOx4C.js} +5 -5
- package/dist/{VerticalboxWidget-DY72fLHW.js.map → VerticalboxWidget-CDPoOx4C.js.map} +1 -1
- package/dist/{VerticalboxWidget-Z8-DWI8t.cjs → VerticalboxWidget-UIBpyEz_.cjs} +2 -2
- package/dist/{VerticalboxWidget-Z8-DWI8t.cjs.map → VerticalboxWidget-UIBpyEz_.cjs.map} +1 -1
- package/dist/Widget-Cg0pAxSF.cjs +2 -0
- package/dist/Widget-Cg0pAxSF.cjs.map +1 -0
- package/dist/{Widget-oyqWpFXJ.js → Widget-cmJ76_g1.js} +3 -3
- package/dist/Widget-cmJ76_g1.js.map +1 -0
- package/dist/components.cjs +3 -3
- package/dist/components.cjs.map +1 -1
- package/dist/components.js +285 -318
- package/dist/components.js.map +1 -1
- package/dist/index-DcL65Mqb.cjs +7 -0
- package/dist/index-DcL65Mqb.cjs.map +1 -0
- package/dist/{index-DwP8ryNM.js → index-qCq0L4jN.js} +332 -323
- package/dist/index-qCq0L4jN.js.map +1 -0
- package/dist/plugins.cjs +2 -2
- package/dist/plugins.cjs.map +1 -1
- package/dist/plugins.js +94 -89
- package/dist/plugins.js.map +1 -1
- package/dist/{timeFilters-CRYpYDdf.js → timeFilters-BKnCM4rv.js} +139 -136
- package/dist/{timeFilters-CRYpYDdf.js.map → timeFilters-BKnCM4rv.js.map} +1 -1
- package/dist/timeFilters-CJFxfjqN.cjs +2 -0
- package/dist/{timeFilters-8SaYvcH0.cjs.map → timeFilters-CJFxfjqN.cjs.map} +1 -1
- package/dist/tools/admin.cjs +10 -10
- package/dist/tools/admin.cjs.map +1 -1
- package/dist/tools/admin.js +380 -406
- 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 +212 -215
- 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 -8
- package/dist/tools/scriptrunner.cjs.map +1 -1
- package/dist/tools/scriptrunner.js +2021 -2011
- package/dist/tools/scriptrunner.js.map +1 -1
- package/dist/util.cjs +1 -1
- package/dist/util.js +1 -1
- package/dist/vue-common.css +1 -1
- package/dist/widgets.cjs +1 -1
- package/dist/widgets.js +63 -63
- package/package.json +12 -12
- package/dist/ArrayplotWidget-COeaK_Lz.cjs +0 -2
- package/dist/BarColumn-CJLW1nXy.cjs +0 -2
- package/dist/ButtonWidget-HN8UHsme.cjs +0 -3
- package/dist/CriticalCmdDialog-BnxZlt7W.cjs +0 -2
- package/dist/CriticalCmdDialog-BnxZlt7W.cjs.map +0 -1
- package/dist/CriticalCmdDialog-DPIZOBeP.js.map +0 -1
- package/dist/DetailsDialog-DmEC5BTs.js.map +0 -1
- package/dist/DetailsDialog-mvxMFmgV.cjs +0 -2
- package/dist/DetailsDialog-mvxMFmgV.cjs.map +0 -1
- package/dist/EventListDialog-BHZLl28V.cjs +0 -2
- package/dist/EventListDialog-BHZLl28V.cjs.map +0 -1
- package/dist/EventListDialog-CSMSmCIT.js.map +0 -1
- package/dist/FormatvalueWidget-CdjCEAI7.cjs +0 -2
- package/dist/FormatvalueWidget-CdjCEAI7.cjs.map +0 -1
- package/dist/FormatvalueWidget-DN12xymS.js +0 -44
- package/dist/FormatvalueWidget-DN12xymS.js.map +0 -1
- package/dist/Graph-Bgo0cjl3.js.map +0 -1
- package/dist/Graph-Ujd2yaeI.cjs +0 -2
- package/dist/Graph-Ujd2yaeI.cjs.map +0 -1
- package/dist/ImageLoader-cRmBcpU9.cjs +0 -2
- package/dist/InterfacesTab-B4glsR9Z.js +0 -93
- package/dist/InterfacesTab-B4glsR9Z.js.map +0 -1
- package/dist/InterfacesTab-Co1Kd6Fa.cjs +0 -2
- package/dist/InterfacesTab-Co1Kd6Fa.cjs.map +0 -1
- package/dist/LabelvaluedescWidget-I6ljK--Y.cjs +0 -2
- package/dist/Layout-DuCYyOw4.cjs +0 -2
- package/dist/LedWidget-B2BcwiYF.cjs +0 -2
- package/dist/LedWidget-B2BcwiYF.cjs.map +0 -1
- package/dist/LedWidget-qH_FthkK.js.map +0 -1
- package/dist/LimitsbarWidget-B9lAB2RD.js.map +0 -1
- package/dist/LimitsbarWidget-CVCLFIhG.cjs +0 -2
- package/dist/LimitsbarWidget-CVCLFIhG.cjs.map +0 -1
- package/dist/LinegraphWidget-Bf8DIwEn.cjs +0 -2
- package/dist/MatrixbycolumnsWidget-DpdFzNeP.cjs +0 -2
- package/dist/MicroservicesTab-B5n-mN8G.cjs +0 -2
- package/dist/MicroservicesTab-B5n-mN8G.cjs.map +0 -1
- package/dist/MicroservicesTab-mCdS0v39.js +0 -264
- package/dist/MicroservicesTab-mCdS0v39.js.map +0 -1
- package/dist/Openc3Screen-BYhHaH_I.cjs +0 -5
- package/dist/Openc3Screen-BYhHaH_I.cjs.map +0 -1
- package/dist/Openc3Screen-Cud0OCFu.js +0 -1789
- package/dist/Openc3Screen-Cud0OCFu.js.map +0 -1
- package/dist/OutputDialog-DXoL9VPw.cjs +0 -2
- package/dist/OutputDialog-DXoL9VPw.cjs.map +0 -1
- package/dist/OutputDialog-zVPZiZay.js.map +0 -1
- package/dist/PackagesTab-CvT2JyMA.cjs +0 -2
- package/dist/PackagesTab-CvT2JyMA.cjs.map +0 -1
- package/dist/PackagesTab-SWcXumpK.js +0 -332
- package/dist/PackagesTab-SWcXumpK.js.map +0 -1
- package/dist/PluginsTab-B64OvayB.js.map +0 -1
- package/dist/PluginsTab-CfpwWsqv.cjs +0 -6
- package/dist/PluginsTab-CfpwWsqv.cjs.map +0 -1
- package/dist/RedisTab-67UcKoPf.cjs +0 -2
- package/dist/RoutersTab-BBPlFi_z.cjs +0 -2
- package/dist/RoutersTab-BBPlFi_z.cjs.map +0 -1
- package/dist/RoutersTab-Cs2dFVNA.js +0 -95
- package/dist/RoutersTab-Cs2dFVNA.js.map +0 -1
- package/dist/ScriptChooser-EV65rbWx.js +0 -199
- package/dist/ScriptChooser-EV65rbWx.js.map +0 -1
- package/dist/ScriptChooser-vyZwngrz.cjs +0 -2
- package/dist/ScriptChooser-vyZwngrz.cjs.map +0 -1
- package/dist/SecretsTab-0IFqUxNJ.cjs +0 -2
- package/dist/SecretsTab-0IFqUxNJ.cjs.map +0 -1
- package/dist/SecretsTab-DVyyyGlG.js.map +0 -1
- package/dist/SettingsTab-B1LvOLG2.cjs +0 -3
- package/dist/SignalWidget-RvRwpE8T.cjs.map +0 -1
- package/dist/SignalWidget-d9-6h85k.js.map +0 -1
- package/dist/SimpleTextDialog-Cpbt7Q-8.cjs +0 -2
- package/dist/SimpleTextDialog-Cpbt7Q-8.cjs.map +0 -1
- package/dist/SimpleTextDialog-pwN8oRy1.js +0 -107
- package/dist/SimpleTextDialog-pwN8oRy1.js.map +0 -1
- package/dist/SparklineWidget-60jVlbHA.cjs +0 -2
- package/dist/TargetsTab-BkBkXn9A.js +0 -129
- package/dist/TargetsTab-BkBkXn9A.js.map +0 -1
- package/dist/TargetsTab-C-m26Eqq.cjs +0 -2
- package/dist/TargetsTab-C-m26Eqq.cjs.map +0 -1
- package/dist/TextBoxDialog-DOJ5d2RM.js +0 -110
- package/dist/TextBoxDialog-DOJ5d2RM.js.map +0 -1
- package/dist/TextBoxDialog-DfMXg_5C.cjs +0 -2
- package/dist/TextBoxDialog-DfMXg_5C.cjs.map +0 -1
- package/dist/TextboxWidget-BDG4NxRw.cjs +0 -2
- package/dist/ToolsTab-NveeVXz2.js +0 -1521
- package/dist/ToolsTab-RMTst_Sy.cjs +0 -7
- package/dist/TopBar-CnJNNJlV.js.map +0 -1
- package/dist/TopBar-Cnmb6DyC.cjs +0 -2
- package/dist/TopBar-Cnmb6DyC.cjs.map +0 -1
- package/dist/UpgradeToEnterpriseDialog-BvfgoNB1.js +0 -94
- package/dist/UpgradeToEnterpriseDialog-BvfgoNB1.js.map +0 -1
- package/dist/UpgradeToEnterpriseDialog-sUipOVpB.cjs +0 -2
- package/dist/UpgradeToEnterpriseDialog-sUipOVpB.cjs.map +0 -1
- package/dist/ValueWidget-C6RanBj3.js.map +0 -1
- package/dist/ValueWidget-Cu7hgKja.cjs +0 -2
- package/dist/ValueWidget-Cu7hgKja.cjs.map +0 -1
- package/dist/Widget-ChoIB2dd.cjs +0 -2
- package/dist/Widget-ChoIB2dd.cjs.map +0 -1
- package/dist/Widget-oyqWpFXJ.js.map +0 -1
- package/dist/WidgetComponents-C1lSLZ0I.js.map +0 -1
- package/dist/WidgetComponents-utpQ592X.cjs +0 -1493
- package/dist/WidgetComponents-utpQ592X.cjs.map +0 -1
- package/dist/index-BX05anye.cjs +0 -7
- package/dist/index-BX05anye.cjs.map +0 -1
- package/dist/index-DwP8ryNM.js.map +0 -1
- package/dist/timeFilters-8SaYvcH0.cjs +0 -2
|
@@ -0,0 +1,1704 @@
|
|
|
1
|
+
import { l as I, p as P, b as A, W as G, f as X, g as Y } from "./UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_2c757408_lang-BOiUmW4q.js";
|
|
2
|
+
import { resolveComponent as a, createBlock as b, openBlock as m, withCtx as r, createVNode as s, createElementVNode as _, toDisplayString as k, createTextVNode as C, withModifiers as D, createElementBlock as T, Fragment as z, renderList as U, ref as H, computed as j, watch as B, createCommentVNode as V, withKeys as q, withDirectives as O, vShow as M, normalizeStyle as $, normalizeProps as N, guardReactiveProps as R } from "vue";
|
|
3
|
+
import { _ as F } from "./CustomIcon-h5X7369N.js";
|
|
4
|
+
import { f as J } from "./fileIcon-DqRHb1_Z.js";
|
|
5
|
+
import { A as W } from "./TopBar-AjYGyx8W.js";
|
|
6
|
+
class Q {
|
|
7
|
+
constructor() {
|
|
8
|
+
I.get("/openc3-api/autocomplete/data/screen").then((t) => {
|
|
9
|
+
this.autocompleteData = t.data;
|
|
10
|
+
}), this.api = new P();
|
|
11
|
+
}
|
|
12
|
+
async getCompletions(t, n, o, i, l) {
|
|
13
|
+
let p = n.getLine(o.row).slice(0, o.column).trimStart().split(/ (?![^<]*>)/), h = this.autocompleteData;
|
|
14
|
+
p.length > 1 && (h = h.find((g) => g.caption === p[0]));
|
|
15
|
+
let d = {}, c = !0;
|
|
16
|
+
if (h && h.params) {
|
|
17
|
+
h.params.length == p.length - 1 && (c = !1);
|
|
18
|
+
let g = h.params[p.length - 2];
|
|
19
|
+
if (g["Target name"])
|
|
20
|
+
h = (await this.api.get_target_names()).reduce(
|
|
21
|
+
(S, w) => (S[w] = 1, S),
|
|
22
|
+
{}
|
|
23
|
+
);
|
|
24
|
+
else if (g["Packet name"]) {
|
|
25
|
+
let x = p[p.length - 2];
|
|
26
|
+
h = (await this.api.get_all_tlm(x)).reduce(
|
|
27
|
+
(w, y) => (w[y.packet_name] = y.description, w),
|
|
28
|
+
{}
|
|
29
|
+
);
|
|
30
|
+
} else if (g["Item name"]) {
|
|
31
|
+
let x = p[p.length - 3], S = p[p.length - 2];
|
|
32
|
+
h = (await this.api.get_tlm(x, S)).items.reduce(
|
|
33
|
+
(y, u) => (y[u.name] = u.description, y),
|
|
34
|
+
{}
|
|
35
|
+
);
|
|
36
|
+
} else
|
|
37
|
+
h = g;
|
|
38
|
+
d = Object.keys(h || {}).map((x) => {
|
|
39
|
+
let S = {
|
|
40
|
+
value: x + (c ? " " : ""),
|
|
41
|
+
// We want the autoComplete to continue right up
|
|
42
|
+
// to the last parameter
|
|
43
|
+
command: c && "startAutocomplete"
|
|
44
|
+
};
|
|
45
|
+
return typeof h[x] == "string" && (S.meta = h[x]), S;
|
|
46
|
+
});
|
|
47
|
+
} else
|
|
48
|
+
d = h;
|
|
49
|
+
l(null, d);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
const ee = {
|
|
53
|
+
props: {
|
|
54
|
+
modelValue: Boolean,
|
|
55
|
+
target: {
|
|
56
|
+
type: String,
|
|
57
|
+
default: ""
|
|
58
|
+
},
|
|
59
|
+
screen: {
|
|
60
|
+
type: String,
|
|
61
|
+
default: ""
|
|
62
|
+
},
|
|
63
|
+
definition: {
|
|
64
|
+
type: String,
|
|
65
|
+
default: ""
|
|
66
|
+
},
|
|
67
|
+
keywords: {
|
|
68
|
+
type: Array,
|
|
69
|
+
default: () => []
|
|
70
|
+
},
|
|
71
|
+
errors: {
|
|
72
|
+
type: Array,
|
|
73
|
+
default: () => []
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
data() {
|
|
77
|
+
return {
|
|
78
|
+
file: null,
|
|
79
|
+
docsKeyword: "",
|
|
80
|
+
contextMenu: !1,
|
|
81
|
+
menuX: 0,
|
|
82
|
+
menuY: 0
|
|
83
|
+
};
|
|
84
|
+
},
|
|
85
|
+
computed: {
|
|
86
|
+
editErrors: function() {
|
|
87
|
+
if (this.definition === "" && !this.file)
|
|
88
|
+
return ["Input can not be blank."];
|
|
89
|
+
if (this.errors.length !== 0) {
|
|
90
|
+
let e = /* @__PURE__ */ new Set(), t = [];
|
|
91
|
+
const n = this.errors.toSorted(
|
|
92
|
+
(o, i) => o.lineNumber - i.lineNumber
|
|
93
|
+
);
|
|
94
|
+
for (const o of n) {
|
|
95
|
+
let i = `At ${o.lineNumber}: (${o.line}) ${o.message}.`;
|
|
96
|
+
o.usage && (i += ` Usage: ${o.usage}`), t.push(i), e.add(o.message);
|
|
97
|
+
}
|
|
98
|
+
return t;
|
|
99
|
+
}
|
|
100
|
+
return [];
|
|
101
|
+
},
|
|
102
|
+
show: {
|
|
103
|
+
get() {
|
|
104
|
+
return this.modelValue;
|
|
105
|
+
},
|
|
106
|
+
set(e) {
|
|
107
|
+
this.$emit("update:modelValue", e);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
mounted: function() {
|
|
112
|
+
this.editor = A.edit(this.$refs.editor), this.editor.setTheme("ace/theme/twilight");
|
|
113
|
+
const e = this.buildScreenMode();
|
|
114
|
+
this.editor.session.setMode(new e()), this.editor.session.setTabSize(2), this.editor.session.setUseWrapMode(!0), this.editor.$blockScrolling = 1 / 0, this.editor.setOption("enableBasicAutocompletion", !0), this.editor.setOption("enableLiveAutocompletion", !0), this.editor.completers = [new Q()], this.editor.setHighlightActiveLine(!1), this.editor.setValue(this.definition), this.editor.clearSelection(), W.applyVimModeIfEnabled(this.editor), this.editor.focus();
|
|
115
|
+
},
|
|
116
|
+
beforeUnmount() {
|
|
117
|
+
this.editor.destroy(), this.editor.container.remove();
|
|
118
|
+
},
|
|
119
|
+
methods: {
|
|
120
|
+
toggleVimMode: function() {
|
|
121
|
+
W.toggleVimMode(this.editor);
|
|
122
|
+
},
|
|
123
|
+
showContextMenu: function(e) {
|
|
124
|
+
this.menuX = e.pageX, this.menuY = e.pageY;
|
|
125
|
+
let t = this.editor.getCursorPosition(), n = this.editor.session.getTokenAt(t.row, t.column);
|
|
126
|
+
if (n) {
|
|
127
|
+
let o = n.value.trim();
|
|
128
|
+
o.includes(" ") ? this.docsKeyword = o.split(" ")[0] : this.docsKeyword = o, this.contextMenu = !0;
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
openDocumentation() {
|
|
132
|
+
window.open(
|
|
133
|
+
`${window.location.origin}/tools/staticdocs/docs/configuration/telemetry-screens#${this.docsKeyword.toLowerCase()}`,
|
|
134
|
+
"_blank"
|
|
135
|
+
);
|
|
136
|
+
},
|
|
137
|
+
buildScreenMode() {
|
|
138
|
+
let e = A.require("ace/lib/oop"), t = A.require(
|
|
139
|
+
"ace/mode/text_highlight_rules"
|
|
140
|
+
).TextHighlightRules, n = this.keywords.join("|"), o = function() {
|
|
141
|
+
this.$rules = {
|
|
142
|
+
start: [
|
|
143
|
+
{
|
|
144
|
+
token: "comment",
|
|
145
|
+
regex: "#.*$"
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
token: "string",
|
|
149
|
+
regex: '".*?"'
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
token: "string",
|
|
153
|
+
regex: "'.*?'"
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
token: "constant.numeric",
|
|
157
|
+
regex: "\\b\\d+(?:\\.\\d+)?\\b"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
token: "keyword",
|
|
161
|
+
regex: new RegExp(`^\\s*(${n})\\b`)
|
|
162
|
+
}
|
|
163
|
+
]
|
|
164
|
+
}, this.normalizeRules();
|
|
165
|
+
};
|
|
166
|
+
e.inherits(o, t);
|
|
167
|
+
let i = function() {
|
|
168
|
+
this.HighlightRules = o;
|
|
169
|
+
}, l = A.require("ace/mode/text").Mode;
|
|
170
|
+
return e.inherits(i, l), (function() {
|
|
171
|
+
this.$id = "ace/mode/openc3";
|
|
172
|
+
}).call(i.prototype), i;
|
|
173
|
+
},
|
|
174
|
+
downloadScreen: function() {
|
|
175
|
+
const e = new Blob([this.editor.getValue()], {
|
|
176
|
+
type: "text/plain"
|
|
177
|
+
}), t = document.createElement("a");
|
|
178
|
+
t.href = URL.createObjectURL(e), t.setAttribute("download", `${this.screen.toLowerCase()}.txt`), t.click();
|
|
179
|
+
},
|
|
180
|
+
loadFile: function() {
|
|
181
|
+
const e = new FileReader();
|
|
182
|
+
e.readAsText(this.file);
|
|
183
|
+
const t = this;
|
|
184
|
+
e.onload = function() {
|
|
185
|
+
t.editor.setValue(e.result), t.file = null;
|
|
186
|
+
};
|
|
187
|
+
},
|
|
188
|
+
deleteScreen: function() {
|
|
189
|
+
this.$dialog.confirm("Are you sure you want to delete this screen?!", {
|
|
190
|
+
okText: "Delete",
|
|
191
|
+
cancelText: "Cancel"
|
|
192
|
+
}).then((e) => {
|
|
193
|
+
this.$emit("delete");
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}, te = ["textContent"];
|
|
198
|
+
function ne(e, t, n, o, i, l) {
|
|
199
|
+
const f = a("v-btn"), v = a("v-spacer"), p = a("v-toolbar"), h = a("v-row"), d = a("v-file-input"), c = a("v-list-item-title"), g = a("v-list-item"), x = a("v-divider"), S = a("v-list"), w = a("v-menu"), y = a("v-card-text"), u = a("v-card"), Z = a("v-dialog");
|
|
200
|
+
return m(), b(Z, {
|
|
201
|
+
modelValue: l.show,
|
|
202
|
+
"onUpdate:modelValue": t[5] || (t[5] = (E) => l.show = E),
|
|
203
|
+
persistent: "",
|
|
204
|
+
width: "75vw"
|
|
205
|
+
}, {
|
|
206
|
+
default: r(() => [
|
|
207
|
+
s(u, null, {
|
|
208
|
+
default: r(() => [
|
|
209
|
+
s(p, { height: "24" }, {
|
|
210
|
+
default: r(() => [
|
|
211
|
+
s(f, {
|
|
212
|
+
class: "mx-2",
|
|
213
|
+
icon: "mdi-delete",
|
|
214
|
+
variant: "text",
|
|
215
|
+
density: "compact",
|
|
216
|
+
"data-test": "delete-screen-icon",
|
|
217
|
+
onClick: l.deleteScreen
|
|
218
|
+
}, null, 8, ["onClick"]),
|
|
219
|
+
s(v),
|
|
220
|
+
_("span", null, " Edit Screen: " + k(n.target) + " " + k(n.screen), 1),
|
|
221
|
+
s(v),
|
|
222
|
+
s(f, {
|
|
223
|
+
class: "mx-2",
|
|
224
|
+
icon: "mdi-download",
|
|
225
|
+
variant: "text",
|
|
226
|
+
density: "compact",
|
|
227
|
+
"data-test": "download-screen-icon",
|
|
228
|
+
onClick: l.downloadScreen
|
|
229
|
+
}, null, 8, ["onClick"])
|
|
230
|
+
]),
|
|
231
|
+
_: 1
|
|
232
|
+
}),
|
|
233
|
+
s(y, { style: { "max-height": "90vh" } }, {
|
|
234
|
+
default: r(() => [
|
|
235
|
+
s(h, { class: "mt-3" }, {
|
|
236
|
+
default: r(() => t[6] || (t[6] = [
|
|
237
|
+
C(" Upload a screen file. ")
|
|
238
|
+
])),
|
|
239
|
+
_: 1
|
|
240
|
+
}),
|
|
241
|
+
s(h, {
|
|
242
|
+
"no-gutters": "",
|
|
243
|
+
align: "center"
|
|
244
|
+
}, {
|
|
245
|
+
default: r(() => [
|
|
246
|
+
s(f, {
|
|
247
|
+
disabled: !i.file,
|
|
248
|
+
color: "primary",
|
|
249
|
+
class: "mr-3",
|
|
250
|
+
"data-test": "edit-screen-load",
|
|
251
|
+
onClick: l.loadFile
|
|
252
|
+
}, {
|
|
253
|
+
default: r(() => t[7] || (t[7] = [
|
|
254
|
+
C(" Load ")
|
|
255
|
+
])),
|
|
256
|
+
_: 1
|
|
257
|
+
}, 8, ["disabled", "onClick"]),
|
|
258
|
+
s(d, {
|
|
259
|
+
modelValue: i.file,
|
|
260
|
+
"onUpdate:modelValue": t[0] || (t[0] = (E) => i.file = E),
|
|
261
|
+
"truncate-length": "15",
|
|
262
|
+
accept: ".txt",
|
|
263
|
+
label: "Click to select .txt screen file."
|
|
264
|
+
}, null, 8, ["modelValue"])
|
|
265
|
+
]),
|
|
266
|
+
_: 1
|
|
267
|
+
}),
|
|
268
|
+
s(h, { class: "mb-2" }, {
|
|
269
|
+
default: r(() => t[8] || (t[8] = [
|
|
270
|
+
C(" Edit the screen definition. ")
|
|
271
|
+
])),
|
|
272
|
+
_: 1
|
|
273
|
+
}),
|
|
274
|
+
s(h, { class: "mb-2" }, {
|
|
275
|
+
default: r(() => [
|
|
276
|
+
_("pre", {
|
|
277
|
+
ref: "editor",
|
|
278
|
+
class: "editor",
|
|
279
|
+
onContextmenu: t[1] || (t[1] = D((...E) => l.showContextMenu && l.showContextMenu(...E), ["prevent"]))
|
|
280
|
+
}, null, 544),
|
|
281
|
+
s(w, {
|
|
282
|
+
modelValue: i.contextMenu,
|
|
283
|
+
"onUpdate:modelValue": t[2] || (t[2] = (E) => i.contextMenu = E),
|
|
284
|
+
target: [i.menuX, i.menuY]
|
|
285
|
+
}, {
|
|
286
|
+
default: r(() => [
|
|
287
|
+
s(S, null, {
|
|
288
|
+
default: r(() => [
|
|
289
|
+
s(g, { link: "" }, {
|
|
290
|
+
default: r(() => [
|
|
291
|
+
s(c, { onClick: l.openDocumentation }, {
|
|
292
|
+
default: r(() => [
|
|
293
|
+
C(k(i.docsKeyword) + " documentation ", 1)
|
|
294
|
+
]),
|
|
295
|
+
_: 1
|
|
296
|
+
}, 8, ["onClick"])
|
|
297
|
+
]),
|
|
298
|
+
_: 1
|
|
299
|
+
}),
|
|
300
|
+
s(x),
|
|
301
|
+
s(g, {
|
|
302
|
+
title: "Toggle Vim mode",
|
|
303
|
+
"prepend-icon": "extras:vim",
|
|
304
|
+
onClick: l.toggleVimMode
|
|
305
|
+
}, null, 8, ["onClick"])
|
|
306
|
+
]),
|
|
307
|
+
_: 1
|
|
308
|
+
})
|
|
309
|
+
]),
|
|
310
|
+
_: 1
|
|
311
|
+
}, 8, ["modelValue", "target"])
|
|
312
|
+
]),
|
|
313
|
+
_: 1
|
|
314
|
+
}),
|
|
315
|
+
s(h, { style: { "max-height": "120px", "overflow-y": "auto" } }, {
|
|
316
|
+
default: r(() => [
|
|
317
|
+
(m(!0), T(z, null, U(l.editErrors, (E, K) => (m(), T("div", { key: K }, [
|
|
318
|
+
_("span", {
|
|
319
|
+
class: "text-red",
|
|
320
|
+
textContent: k(E)
|
|
321
|
+
}, null, 8, te)
|
|
322
|
+
]))), 128))
|
|
323
|
+
]),
|
|
324
|
+
_: 1
|
|
325
|
+
}),
|
|
326
|
+
s(h, { class: "mt-5" }, {
|
|
327
|
+
default: r(() => [
|
|
328
|
+
t[11] || (t[11] = _("span", null, "Ctrl-space brings up autocomplete. Right click keywords for documentation.", -1)),
|
|
329
|
+
s(v),
|
|
330
|
+
s(f, {
|
|
331
|
+
class: "mx-2",
|
|
332
|
+
variant: "outlined",
|
|
333
|
+
"data-test": "edit-screen-cancel",
|
|
334
|
+
onClick: t[3] || (t[3] = (E) => e.$emit("cancel"))
|
|
335
|
+
}, {
|
|
336
|
+
default: r(() => t[9] || (t[9] = [
|
|
337
|
+
C(" Cancel ")
|
|
338
|
+
])),
|
|
339
|
+
_: 1
|
|
340
|
+
}),
|
|
341
|
+
s(f, {
|
|
342
|
+
class: "mx-2",
|
|
343
|
+
color: "primary",
|
|
344
|
+
"data-test": "edit-screen-save",
|
|
345
|
+
onClick: t[4] || (t[4] = (E) => e.$emit("save", e.editor.getValue()))
|
|
346
|
+
}, {
|
|
347
|
+
default: r(() => t[10] || (t[10] = [
|
|
348
|
+
C(" Save ")
|
|
349
|
+
])),
|
|
350
|
+
_: 1
|
|
351
|
+
})
|
|
352
|
+
]),
|
|
353
|
+
_: 1
|
|
354
|
+
})
|
|
355
|
+
]),
|
|
356
|
+
_: 1
|
|
357
|
+
})
|
|
358
|
+
]),
|
|
359
|
+
_: 1
|
|
360
|
+
})
|
|
361
|
+
]),
|
|
362
|
+
_: 1
|
|
363
|
+
}, 8, ["modelValue"]);
|
|
364
|
+
}
|
|
365
|
+
const ie = /* @__PURE__ */ F(ee, [["render", ne], ["__scopeId", "data-v-0caab967"]]), se = {
|
|
366
|
+
props: {
|
|
367
|
+
modelValue: Boolean
|
|
368
|
+
},
|
|
369
|
+
data() {
|
|
370
|
+
return {
|
|
371
|
+
alert: "",
|
|
372
|
+
alertType: "success",
|
|
373
|
+
showAlert: !1,
|
|
374
|
+
search: "",
|
|
375
|
+
key: "",
|
|
376
|
+
keyValue: "",
|
|
377
|
+
environment: [],
|
|
378
|
+
headers: [
|
|
379
|
+
{
|
|
380
|
+
text: "Key",
|
|
381
|
+
value: "key"
|
|
382
|
+
},
|
|
383
|
+
{
|
|
384
|
+
text: "Value",
|
|
385
|
+
value: "value"
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
text: "Actions",
|
|
389
|
+
value: "actions",
|
|
390
|
+
align: "end",
|
|
391
|
+
sortable: !1
|
|
392
|
+
}
|
|
393
|
+
]
|
|
394
|
+
};
|
|
395
|
+
},
|
|
396
|
+
computed: {
|
|
397
|
+
show: {
|
|
398
|
+
get() {
|
|
399
|
+
return this.modelValue;
|
|
400
|
+
},
|
|
401
|
+
set(e) {
|
|
402
|
+
this.$emit("update:modelValue", e);
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
},
|
|
406
|
+
mounted() {
|
|
407
|
+
this.update();
|
|
408
|
+
},
|
|
409
|
+
methods: {
|
|
410
|
+
alertHandler: function(e) {
|
|
411
|
+
this.alert = e.text, this.alertType = e.type, this.showAlert = !0;
|
|
412
|
+
},
|
|
413
|
+
update: function() {
|
|
414
|
+
I.get("/openc3-api/environment").then((e) => {
|
|
415
|
+
this.environment = e.data;
|
|
416
|
+
}).catch((e) => {
|
|
417
|
+
});
|
|
418
|
+
},
|
|
419
|
+
addEnvironment: function() {
|
|
420
|
+
I.post("/openc3-api/environment", {
|
|
421
|
+
data: {
|
|
422
|
+
key: this.key.toUpperCase(),
|
|
423
|
+
value: this.keyValue
|
|
424
|
+
}
|
|
425
|
+
}).then((e) => {
|
|
426
|
+
`${e.data.name}`, this.update();
|
|
427
|
+
}).catch((e) => {
|
|
428
|
+
const t = {
|
|
429
|
+
text: `Failed to add environment variable: ${e}`,
|
|
430
|
+
type: "error"
|
|
431
|
+
};
|
|
432
|
+
this.alertHandler(t);
|
|
433
|
+
}), this.key = "", this.keyValue = "";
|
|
434
|
+
},
|
|
435
|
+
deleteEnvironment: function(e) {
|
|
436
|
+
this.$dialog.confirm(`Are you sure you want to delete: ${e.key}=${e.value}`, {
|
|
437
|
+
okText: "Delete",
|
|
438
|
+
cancelText: "Cancel"
|
|
439
|
+
}).then((t) => I.delete(`/openc3-api/environment/${e.name}`)).then((t) => {
|
|
440
|
+
const n = {
|
|
441
|
+
text: `Removed environment variable: ${e.name}`,
|
|
442
|
+
type: "success"
|
|
443
|
+
};
|
|
444
|
+
this.alertHandler(n), this.update();
|
|
445
|
+
}).catch((t) => {
|
|
446
|
+
const n = {
|
|
447
|
+
text: `Failed to delete environment: ${t}`,
|
|
448
|
+
type: "error"
|
|
449
|
+
};
|
|
450
|
+
this.alertHandler(n);
|
|
451
|
+
});
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
}, le = { class: "pa-3" };
|
|
455
|
+
function oe(e, t, n, o, i, l) {
|
|
456
|
+
const f = a("v-spacer"), v = a("v-toolbar"), p = a("v-text-field"), h = a("v-row"), d = a("v-btn"), c = a("v-data-table"), g = a("v-col"), x = a("v-card-text"), S = a("v-card"), w = a("v-dialog");
|
|
457
|
+
return m(), b(w, {
|
|
458
|
+
modelValue: l.show,
|
|
459
|
+
"onUpdate:modelValue": t[4] || (t[4] = (y) => l.show = y),
|
|
460
|
+
width: "600"
|
|
461
|
+
}, {
|
|
462
|
+
default: r(() => [
|
|
463
|
+
s(S, null, {
|
|
464
|
+
default: r(() => [
|
|
465
|
+
_("form", {
|
|
466
|
+
onSubmit: t[3] || (t[3] = D((...y) => l.addEnvironment && l.addEnvironment(...y), ["prevent"]))
|
|
467
|
+
}, [
|
|
468
|
+
s(v, { height: "24" }, {
|
|
469
|
+
default: r(() => [
|
|
470
|
+
s(f),
|
|
471
|
+
t[5] || (t[5] = _("span", null, "Global Environment Variables", -1)),
|
|
472
|
+
s(f)
|
|
473
|
+
]),
|
|
474
|
+
_: 1
|
|
475
|
+
}),
|
|
476
|
+
s(x, null, {
|
|
477
|
+
default: r(() => [
|
|
478
|
+
_("div", le, [
|
|
479
|
+
s(h, {
|
|
480
|
+
dense: "",
|
|
481
|
+
class: "mb-2"
|
|
482
|
+
}, {
|
|
483
|
+
default: r(() => [
|
|
484
|
+
s(p, {
|
|
485
|
+
modelValue: i.search,
|
|
486
|
+
"onUpdate:modelValue": t[0] || (t[0] = (y) => i.search = y),
|
|
487
|
+
label: "search",
|
|
488
|
+
type: "text",
|
|
489
|
+
"data-test": "search",
|
|
490
|
+
"prepend-inner-icon": "mdi-magnify",
|
|
491
|
+
clearable: "",
|
|
492
|
+
variant: "outlined",
|
|
493
|
+
density: "compact",
|
|
494
|
+
"clear-icon": "mdi-close-circle-outline",
|
|
495
|
+
autofocus: "",
|
|
496
|
+
"single-line": "",
|
|
497
|
+
"hide-details": ""
|
|
498
|
+
}, null, 8, ["modelValue"])
|
|
499
|
+
]),
|
|
500
|
+
_: 1
|
|
501
|
+
}),
|
|
502
|
+
s(c, {
|
|
503
|
+
"item-key": "name",
|
|
504
|
+
"hide-default-header": "",
|
|
505
|
+
"data-test": "env-table",
|
|
506
|
+
search: i.search,
|
|
507
|
+
headers: i.headers,
|
|
508
|
+
items: i.environment,
|
|
509
|
+
"items-per-page": 5,
|
|
510
|
+
"items-per-page-options": [5]
|
|
511
|
+
}, {
|
|
512
|
+
"item.actions": r(({ item: y }) => [
|
|
513
|
+
s(d, {
|
|
514
|
+
icon: "mdi-delete",
|
|
515
|
+
variant: "text",
|
|
516
|
+
class: "mt-1",
|
|
517
|
+
"data-test": "item-delete",
|
|
518
|
+
"aria-label": "Delete Environment Variable",
|
|
519
|
+
onClick: (u) => l.deleteEnvironment(y)
|
|
520
|
+
}, null, 8, ["onClick"])
|
|
521
|
+
]),
|
|
522
|
+
_: 1
|
|
523
|
+
}, 8, ["search", "headers", "items"]),
|
|
524
|
+
s(h, { dense: "" }, {
|
|
525
|
+
default: r(() => [
|
|
526
|
+
s(g, null, {
|
|
527
|
+
default: r(() => [
|
|
528
|
+
s(p, {
|
|
529
|
+
modelValue: i.key,
|
|
530
|
+
"onUpdate:modelValue": t[1] || (t[1] = (y) => i.key = y),
|
|
531
|
+
label: "Key",
|
|
532
|
+
"data-test": "env-key"
|
|
533
|
+
}, null, 8, ["modelValue"])
|
|
534
|
+
]),
|
|
535
|
+
_: 1
|
|
536
|
+
}),
|
|
537
|
+
s(g, null, {
|
|
538
|
+
default: r(() => [
|
|
539
|
+
s(p, {
|
|
540
|
+
modelValue: i.keyValue,
|
|
541
|
+
"onUpdate:modelValue": t[2] || (t[2] = (y) => i.keyValue = y),
|
|
542
|
+
label: "Value",
|
|
543
|
+
"data-test": "env-value"
|
|
544
|
+
}, null, 8, ["modelValue"])
|
|
545
|
+
]),
|
|
546
|
+
_: 1
|
|
547
|
+
})
|
|
548
|
+
]),
|
|
549
|
+
_: 1
|
|
550
|
+
}),
|
|
551
|
+
s(h, { dense: "" }, {
|
|
552
|
+
default: r(() => [
|
|
553
|
+
s(d, {
|
|
554
|
+
block: "",
|
|
555
|
+
type: "submit",
|
|
556
|
+
color: "primary",
|
|
557
|
+
"data-test": "add-env",
|
|
558
|
+
disabled: !i.key || !i.keyValue,
|
|
559
|
+
onClick: D(l.addEnvironment, ["prevent"])
|
|
560
|
+
}, {
|
|
561
|
+
default: r(() => t[6] || (t[6] = [
|
|
562
|
+
C(" Add ")
|
|
563
|
+
])),
|
|
564
|
+
_: 1
|
|
565
|
+
}, 8, ["disabled", "onClick"])
|
|
566
|
+
]),
|
|
567
|
+
_: 1
|
|
568
|
+
})
|
|
569
|
+
])
|
|
570
|
+
]),
|
|
571
|
+
_: 1
|
|
572
|
+
})
|
|
573
|
+
], 32)
|
|
574
|
+
]),
|
|
575
|
+
_: 1
|
|
576
|
+
})
|
|
577
|
+
]),
|
|
578
|
+
_: 1
|
|
579
|
+
}, 8, ["modelValue"]);
|
|
580
|
+
}
|
|
581
|
+
const Ve = /* @__PURE__ */ F(se, [["render", oe]]), re = { class: "tree-node" }, ae = { class: "content-wrapper" }, de = ["tabindex"], ce = { key: 1 }, ue = {
|
|
582
|
+
key: 2,
|
|
583
|
+
class: "children"
|
|
584
|
+
}, he = {
|
|
585
|
+
__name: "TreeNode",
|
|
586
|
+
props: {
|
|
587
|
+
node: {
|
|
588
|
+
type: Object,
|
|
589
|
+
required: !0
|
|
590
|
+
},
|
|
591
|
+
search: {
|
|
592
|
+
type: String,
|
|
593
|
+
default: ""
|
|
594
|
+
},
|
|
595
|
+
type: {
|
|
596
|
+
type: String,
|
|
597
|
+
default: "open"
|
|
598
|
+
}
|
|
599
|
+
},
|
|
600
|
+
emits: ["nodeToggled", "request"],
|
|
601
|
+
setup(e, { emit: t }) {
|
|
602
|
+
const n = e, o = H(n.node.isOpen || !1), i = j(() => {
|
|
603
|
+
const d = (c) => {
|
|
604
|
+
var g;
|
|
605
|
+
return !n.search || c.path.toLowerCase().includes(n.search.toLowerCase()) ? !0 : !!((g = c.children) != null && g.some(d));
|
|
606
|
+
};
|
|
607
|
+
return d(n.node);
|
|
608
|
+
});
|
|
609
|
+
B(
|
|
610
|
+
() => n.node.isOpen,
|
|
611
|
+
(d) => {
|
|
612
|
+
o.value = d;
|
|
613
|
+
}
|
|
614
|
+
), B(
|
|
615
|
+
() => n.search,
|
|
616
|
+
(d) => {
|
|
617
|
+
d ? n.node.isOpen || v() : n.node.isOpen && v();
|
|
618
|
+
}
|
|
619
|
+
);
|
|
620
|
+
const l = t, f = (d) => {
|
|
621
|
+
d.children ? (v(), n.type === "save" && l("request", d)) : l("request", d);
|
|
622
|
+
}, v = () => {
|
|
623
|
+
n.node.children && (o.value = !o.value, n.node.isOpen = o.value, l("nodeToggled", n.node.id, o.value));
|
|
624
|
+
}, p = (d, c) => {
|
|
625
|
+
l("nodeToggled", d, c);
|
|
626
|
+
}, h = (d) => {
|
|
627
|
+
l("request", d);
|
|
628
|
+
};
|
|
629
|
+
return (d, c) => {
|
|
630
|
+
const g = a("v-icon"), x = a("v-btn"), S = a("tree-node", !0);
|
|
631
|
+
return m(), T("div", re, [
|
|
632
|
+
i.value ? (m(), T("div", {
|
|
633
|
+
key: 0,
|
|
634
|
+
class: "node-content",
|
|
635
|
+
onClick: c[2] || (c[2] = (w) => f(e.node))
|
|
636
|
+
}, [
|
|
637
|
+
_("div", ae, [
|
|
638
|
+
e.node.children ? (m(), b(g, {
|
|
639
|
+
key: 0,
|
|
640
|
+
class: "toggle-icon",
|
|
641
|
+
style: { "padding-right": "10px" }
|
|
642
|
+
}, {
|
|
643
|
+
default: r(() => [
|
|
644
|
+
C(k(e.node.isOpen ? "mdi-menu-down" : "mdi-menu-right"), 1)
|
|
645
|
+
]),
|
|
646
|
+
_: 1
|
|
647
|
+
})) : V("", !0),
|
|
648
|
+
e.node.children ? (m(), b(g, {
|
|
649
|
+
key: 1,
|
|
650
|
+
size: "small",
|
|
651
|
+
style: { "padding-right": "10px" }
|
|
652
|
+
}, {
|
|
653
|
+
default: r(() => c[3] || (c[3] = [
|
|
654
|
+
C(k("mdi-folder"))
|
|
655
|
+
])),
|
|
656
|
+
_: 1
|
|
657
|
+
})) : e.node.title.includes(".rb") ? (m(), b(g, {
|
|
658
|
+
key: 2,
|
|
659
|
+
size: "small",
|
|
660
|
+
style: { "padding-right": "10px" }
|
|
661
|
+
}, {
|
|
662
|
+
default: r(() => c[4] || (c[4] = [
|
|
663
|
+
C(k("mdi-language-ruby"))
|
|
664
|
+
])),
|
|
665
|
+
_: 1
|
|
666
|
+
})) : e.node.title.includes(".py") ? (m(), b(g, {
|
|
667
|
+
key: 3,
|
|
668
|
+
size: "small",
|
|
669
|
+
style: { "padding-right": "10px" }
|
|
670
|
+
}, {
|
|
671
|
+
default: r(() => c[5] || (c[5] = [
|
|
672
|
+
C(k("mdi-language-python"))
|
|
673
|
+
])),
|
|
674
|
+
_: 1
|
|
675
|
+
})) : (m(), b(g, {
|
|
676
|
+
key: 4,
|
|
677
|
+
size: "small",
|
|
678
|
+
style: { "padding-right": "10px" }
|
|
679
|
+
}, {
|
|
680
|
+
default: r(() => c[6] || (c[6] = [
|
|
681
|
+
C(k("mdi-file-document"))
|
|
682
|
+
])),
|
|
683
|
+
_: 1
|
|
684
|
+
})),
|
|
685
|
+
_("span", {
|
|
686
|
+
class: "title",
|
|
687
|
+
tabindex: e.node.children ? -1 : 0,
|
|
688
|
+
onKeyup: c[0] || (c[0] = q((w) => f(e.node), ["enter"]))
|
|
689
|
+
}, k(e.node.title), 41, de),
|
|
690
|
+
e.node.title === "__TEMP__" ? (m(), b(x, {
|
|
691
|
+
key: 5,
|
|
692
|
+
icon: "mdi-delete",
|
|
693
|
+
variant: "text",
|
|
694
|
+
style: { "margin-left": "auto" },
|
|
695
|
+
"aria-label": "Delete",
|
|
696
|
+
onClick: c[1] || (c[1] = (w) => l("delete"))
|
|
697
|
+
})) : V("", !0)
|
|
698
|
+
])
|
|
699
|
+
])) : (m(), T("div", ce)),
|
|
700
|
+
e.node.children && e.node.isOpen ? (m(), T("div", ue, [
|
|
701
|
+
(m(!0), T(z, null, U(e.node.children, (w) => (m(), b(S, {
|
|
702
|
+
key: w.id,
|
|
703
|
+
node: w,
|
|
704
|
+
search: e.search,
|
|
705
|
+
type: e.type,
|
|
706
|
+
onNodeToggled: p,
|
|
707
|
+
onRequest: h
|
|
708
|
+
}, null, 8, ["node", "search", "type"]))), 128))
|
|
709
|
+
])) : V("", !0)
|
|
710
|
+
]);
|
|
711
|
+
};
|
|
712
|
+
}
|
|
713
|
+
}, me = /* @__PURE__ */ F(he, [["__scopeId", "data-v-74233c4c"]]), fe = {
|
|
714
|
+
components: {
|
|
715
|
+
TreeNode: me
|
|
716
|
+
},
|
|
717
|
+
props: {
|
|
718
|
+
type: {
|
|
719
|
+
type: String,
|
|
720
|
+
required: !0,
|
|
721
|
+
validator: function(e) {
|
|
722
|
+
return ["open", "save"].indexOf(e) !== -1;
|
|
723
|
+
}
|
|
724
|
+
},
|
|
725
|
+
apiUrl: String,
|
|
726
|
+
// Base API URL for use with scripts or cmd-tlm
|
|
727
|
+
requireTargetParentDir: Boolean,
|
|
728
|
+
// Require that the save filename be nested in a directory with the name of a target
|
|
729
|
+
inputFilename: String,
|
|
730
|
+
// passed if this is a 'save' dialog
|
|
731
|
+
modelValue: Boolean
|
|
732
|
+
},
|
|
733
|
+
data() {
|
|
734
|
+
return {
|
|
735
|
+
tree: [],
|
|
736
|
+
items: [],
|
|
737
|
+
search: null,
|
|
738
|
+
selectedFile: null,
|
|
739
|
+
disableButtons: !1,
|
|
740
|
+
targets: [],
|
|
741
|
+
targetsRetrieved: [],
|
|
742
|
+
loading: !0
|
|
743
|
+
};
|
|
744
|
+
},
|
|
745
|
+
computed: {
|
|
746
|
+
show: {
|
|
747
|
+
get() {
|
|
748
|
+
return this.modelValue;
|
|
749
|
+
},
|
|
750
|
+
set(e) {
|
|
751
|
+
this.$emit("update:modelValue", e);
|
|
752
|
+
}
|
|
753
|
+
},
|
|
754
|
+
title: function() {
|
|
755
|
+
return this.type === "open" ? "File Open" : "File Save As...";
|
|
756
|
+
},
|
|
757
|
+
submit: function() {
|
|
758
|
+
return this.type === "open" ? "OPEN" : "SAVE";
|
|
759
|
+
},
|
|
760
|
+
helpText: function() {
|
|
761
|
+
return this.type === "open" ? "Click on folders to open them and then click a file to select it before clicking Open. Use the search box to filter the results. You can also Tab to the files and Enter to select." : "Click on the folder to save into. Then complete the filename path with the desired name. Use the search box to filter the results.";
|
|
762
|
+
},
|
|
763
|
+
error: function() {
|
|
764
|
+
if (this.selectedFile === "" || this.selectedFile === null)
|
|
765
|
+
return "No file selected must select a file";
|
|
766
|
+
if (!this.selectedFile.match(this.validFilenameRegex) || this.selectedFile.match(/\.\.|\/\/|\.\/|\/\./)) {
|
|
767
|
+
let e = `${this.selectedFile} is not a valid filename. Must `;
|
|
768
|
+
return this.requireTargetParentDir && (e += "be in a target directory and "), e += `only contain alphanumeric characters (including !-_.*) and a valid extension.
|
|
769
|
+
|
|
770
|
+
For example: TGT1/procedures/test.py or TGT2/lib/inst.rb`, e;
|
|
771
|
+
}
|
|
772
|
+
return this.type === "save" && this.selectedFile.match(/\*$/) ? `${this.selectedFile} is not a valid filename. Must not end in '*'.` : null;
|
|
773
|
+
},
|
|
774
|
+
validFilenameRegex: function() {
|
|
775
|
+
const e = "0-9a-zA-Z";
|
|
776
|
+
let n = `[${`${e}\\/\\!\\-\\_\\.\\*\\'\\(\\)`}]+\\.[${e}]+`;
|
|
777
|
+
return this.requireTargetParentDir && (n = `\\/?${`(${this.targets.join("|")})`}\\/${n}`), new RegExp(n);
|
|
778
|
+
}
|
|
779
|
+
},
|
|
780
|
+
created() {
|
|
781
|
+
I.get("/openc3-api/targets").then((e) => {
|
|
782
|
+
this.targets = e.data, this.targets.push("__TEMP__"), this.targets.forEach((t) => {
|
|
783
|
+
this.items.push({
|
|
784
|
+
id: t,
|
|
785
|
+
disabled: !0,
|
|
786
|
+
title: t,
|
|
787
|
+
children: [],
|
|
788
|
+
path: t
|
|
789
|
+
}), this.loadFiles(t);
|
|
790
|
+
}), this.loading = !1;
|
|
791
|
+
});
|
|
792
|
+
},
|
|
793
|
+
methods: {
|
|
794
|
+
calcIcon: function(e) {
|
|
795
|
+
return J(e);
|
|
796
|
+
},
|
|
797
|
+
loadFiles: function(e) {
|
|
798
|
+
I.get(this.apiUrl, { params: { target: e } }).then((t) => {
|
|
799
|
+
if (t.data.length === 0) {
|
|
800
|
+
this.items = this.items.filter((o) => o.id !== e);
|
|
801
|
+
return;
|
|
802
|
+
}
|
|
803
|
+
for (let o of t.data.sort())
|
|
804
|
+
this.filepath = o, this.insertFile(this.items, 2, o);
|
|
805
|
+
this.inputFilename && (this.selectedFile = this.inputFilename);
|
|
806
|
+
const n = this.items.findIndex((o) => o.id === e);
|
|
807
|
+
n !== -1 && (this.items[n].disabled = !1);
|
|
808
|
+
}).catch((t) => {
|
|
809
|
+
this.$emit("error", `Failed to connect to OpenC3. ${t}`);
|
|
810
|
+
});
|
|
811
|
+
},
|
|
812
|
+
clear: function() {
|
|
813
|
+
this.show = !1, this.overwrite = !1, this.disableButtons = !1;
|
|
814
|
+
},
|
|
815
|
+
activeFile: function(e) {
|
|
816
|
+
e.length === 0 ? this.selectedFile = null : (this.selectedFile = this.findItem(this.items, e.id), setTimeout(() => {
|
|
817
|
+
this.$refs.submitBtn.$el.focus();
|
|
818
|
+
}, 100));
|
|
819
|
+
},
|
|
820
|
+
findItem: function(e, t) {
|
|
821
|
+
for (let n of e) {
|
|
822
|
+
if (n.id === t)
|
|
823
|
+
return n.path;
|
|
824
|
+
if (n.children) {
|
|
825
|
+
const o = this.findItem(n.children, t);
|
|
826
|
+
if (o)
|
|
827
|
+
return o;
|
|
828
|
+
}
|
|
829
|
+
}
|
|
830
|
+
return null;
|
|
831
|
+
},
|
|
832
|
+
exists: function(e, t) {
|
|
833
|
+
let n = !1;
|
|
834
|
+
for (let o of e) {
|
|
835
|
+
if (o.path === t || o.path.length > 1 && o.path[o.path.length - 1] === "*" && o.path.slice(0, o.path.length - 1) === t)
|
|
836
|
+
return !0;
|
|
837
|
+
o.children && (n = n || this.exists(o.children, t));
|
|
838
|
+
}
|
|
839
|
+
return n;
|
|
840
|
+
},
|
|
841
|
+
success: function() {
|
|
842
|
+
this.selectedFile !== null && this.error === null && (this.type === "open" ? this.openSuccess() : this.saveSuccess());
|
|
843
|
+
},
|
|
844
|
+
deleteTemp: function() {
|
|
845
|
+
this.$dialog.confirm("Are you sure you want to delete all the temporary files?", {
|
|
846
|
+
okText: "Delete",
|
|
847
|
+
cancelText: "Cancel"
|
|
848
|
+
}).then((e) => I.delete("/script-api/scripts/temp_files")).then((e) => {
|
|
849
|
+
this.$emit("clear-temp"), this.loadFiles("__TEMP__");
|
|
850
|
+
}).catch((e) => {
|
|
851
|
+
this.$notify.serious({
|
|
852
|
+
title: "Error",
|
|
853
|
+
body: `Failed to remove script temporary files due to ${e}`
|
|
854
|
+
});
|
|
855
|
+
});
|
|
856
|
+
},
|
|
857
|
+
openSuccess: function() {
|
|
858
|
+
this.disableButtons = !0, I.get(`${this.apiUrl}/${this.selectedFile}`).then((e) => {
|
|
859
|
+
const t = {
|
|
860
|
+
name: this.selectedFile,
|
|
861
|
+
contents: e.data.contents
|
|
862
|
+
};
|
|
863
|
+
e.data.suites && (t.suites = JSON.parse(e.data.suites)), e.data.error && (t.error = e.data.error), e.data.success && (t.success = e.data.success);
|
|
864
|
+
const n = e.data.locked, o = e.data.breakpoints;
|
|
865
|
+
this.$emit("file", { file: t, locked: n, breakpoints: o }), this.clear();
|
|
866
|
+
}).catch((e) => {
|
|
867
|
+
this.$emit("error", `Failed to open ${this.selectedFile}. ${e}`), this.clear();
|
|
868
|
+
});
|
|
869
|
+
},
|
|
870
|
+
saveSuccess: function() {
|
|
871
|
+
this.exists(this.items, this.selectedFile) ? this.$dialog.confirm(`Are you sure you want to overwrite: ${this.selectedFile}`, {
|
|
872
|
+
okText: "Overwrite",
|
|
873
|
+
cancelText: "Cancel"
|
|
874
|
+
}).then((t) => {
|
|
875
|
+
this.$emit("filename", this.selectedFile), this.clear();
|
|
876
|
+
}).catch((t) => {
|
|
877
|
+
}) : (this.$emit("filename", this.selectedFile), this.clear());
|
|
878
|
+
},
|
|
879
|
+
insertFile: function(e, t, n) {
|
|
880
|
+
let o = n.split("/");
|
|
881
|
+
if (o.length === 1) {
|
|
882
|
+
e.push({
|
|
883
|
+
id: this.filepath,
|
|
884
|
+
title: o[0],
|
|
885
|
+
file: "ruby",
|
|
886
|
+
path: this.filepath
|
|
887
|
+
});
|
|
888
|
+
return;
|
|
889
|
+
}
|
|
890
|
+
const i = e.findIndex((l) => l.title === o[0]);
|
|
891
|
+
i === -1 ? (e.push({
|
|
892
|
+
id: this.filepath.split("/").slice(0, t - 1).join("/"),
|
|
893
|
+
title: o[0],
|
|
894
|
+
children: [],
|
|
895
|
+
path: this.filepath.split("/").slice(0, t - 1).join("/")
|
|
896
|
+
}), this.insertFile(
|
|
897
|
+
e[e.length - 1].children,
|
|
898
|
+
// Start from the node we just added
|
|
899
|
+
t + 1,
|
|
900
|
+
o.slice(1).join("/")
|
|
901
|
+
// Strip the first part of the path
|
|
902
|
+
)) : this.insertFile(
|
|
903
|
+
e[i].children,
|
|
904
|
+
t + 1,
|
|
905
|
+
o.slice(1).join("/")
|
|
906
|
+
);
|
|
907
|
+
}
|
|
908
|
+
}
|
|
909
|
+
}, pe = { class: "pa-3" }, ge = { class: "overflow-y-auto tree-container" };
|
|
910
|
+
function ve(e, t, n, o, i, l) {
|
|
911
|
+
const f = a("v-progress-circular"), v = a("v-overlay"), p = a("v-spacer"), h = a("v-toolbar"), d = a("v-row"), c = a("v-text-field"), g = a("tree-node"), x = a("v-btn"), S = a("v-card-text"), w = a("v-card"), y = a("v-dialog");
|
|
912
|
+
return m(), b(y, {
|
|
913
|
+
modelValue: l.show,
|
|
914
|
+
"onUpdate:modelValue": t[4] || (t[4] = (u) => l.show = u),
|
|
915
|
+
width: "600",
|
|
916
|
+
onKeydown: t[5] || (t[5] = q((u) => l.success(), ["enter"]))
|
|
917
|
+
}, {
|
|
918
|
+
default: r(() => [
|
|
919
|
+
s(w, null, {
|
|
920
|
+
default: r(() => [
|
|
921
|
+
s(v, { "model-value": i.loading }, {
|
|
922
|
+
default: r(() => [
|
|
923
|
+
s(f, {
|
|
924
|
+
indeterminate: "",
|
|
925
|
+
absolute: "",
|
|
926
|
+
size: "64"
|
|
927
|
+
})
|
|
928
|
+
]),
|
|
929
|
+
_: 1
|
|
930
|
+
}, 8, ["model-value"]),
|
|
931
|
+
_("form", {
|
|
932
|
+
onSubmit: t[3] || (t[3] = D((...u) => l.success && l.success(...u), ["prevent"]))
|
|
933
|
+
}, [
|
|
934
|
+
s(h, { height: "24" }, {
|
|
935
|
+
default: r(() => [
|
|
936
|
+
s(p),
|
|
937
|
+
_("span", null, k(l.title), 1),
|
|
938
|
+
s(p)
|
|
939
|
+
]),
|
|
940
|
+
_: 1
|
|
941
|
+
}),
|
|
942
|
+
s(S, null, {
|
|
943
|
+
default: r(() => [
|
|
944
|
+
_("div", pe, [
|
|
945
|
+
s(d, null, {
|
|
946
|
+
default: r(() => [
|
|
947
|
+
C(k(l.helpText), 1)
|
|
948
|
+
]),
|
|
949
|
+
_: 1
|
|
950
|
+
}),
|
|
951
|
+
s(d, {
|
|
952
|
+
dense: "",
|
|
953
|
+
class: "mt-5"
|
|
954
|
+
}, {
|
|
955
|
+
default: r(() => [
|
|
956
|
+
s(c, {
|
|
957
|
+
modelValue: i.search,
|
|
958
|
+
"onUpdate:modelValue": t[0] || (t[0] = (u) => i.search = u),
|
|
959
|
+
flat: "",
|
|
960
|
+
autofocus: "",
|
|
961
|
+
"hide-details": "",
|
|
962
|
+
clearable: "",
|
|
963
|
+
label: "Search",
|
|
964
|
+
"prepend-inner-icon": "mdi-magnify",
|
|
965
|
+
density: "compact",
|
|
966
|
+
"data-test": "file-open-save-search"
|
|
967
|
+
}, null, 8, ["modelValue"])
|
|
968
|
+
]),
|
|
969
|
+
_: 1
|
|
970
|
+
}),
|
|
971
|
+
_("div", ge, [
|
|
972
|
+
(m(!0), T(z, null, U(i.items, (u) => (m(), b(g, {
|
|
973
|
+
key: `${u.id}`,
|
|
974
|
+
node: u,
|
|
975
|
+
search: i.search,
|
|
976
|
+
type: n.type,
|
|
977
|
+
onRequest: l.activeFile,
|
|
978
|
+
onDelete: l.deleteTemp
|
|
979
|
+
}, null, 8, ["node", "search", "type", "onRequest", "onDelete"]))), 128))
|
|
980
|
+
]),
|
|
981
|
+
s(d, { class: "my-2" }, {
|
|
982
|
+
default: r(() => [
|
|
983
|
+
s(c, {
|
|
984
|
+
modelValue: i.selectedFile,
|
|
985
|
+
"onUpdate:modelValue": t[1] || (t[1] = (u) => i.selectedFile = u),
|
|
986
|
+
"hide-details": "",
|
|
987
|
+
label: "Filename",
|
|
988
|
+
"data-test": "file-open-save-filename",
|
|
989
|
+
disabled: n.type === "open"
|
|
990
|
+
}, null, 8, ["modelValue", "disabled"])
|
|
991
|
+
]),
|
|
992
|
+
_: 1
|
|
993
|
+
}),
|
|
994
|
+
s(d, { dense: "" }, {
|
|
995
|
+
default: r(() => [
|
|
996
|
+
O(_("div", {
|
|
997
|
+
class: "my-2 text-red",
|
|
998
|
+
style: { "white-space": "pre-line" }
|
|
999
|
+
}, k(l.error), 513), [
|
|
1000
|
+
[M, l.error]
|
|
1001
|
+
])
|
|
1002
|
+
]),
|
|
1003
|
+
_: 1
|
|
1004
|
+
}),
|
|
1005
|
+
s(d, { class: "mt-2" }, {
|
|
1006
|
+
default: r(() => [
|
|
1007
|
+
s(p),
|
|
1008
|
+
s(x, {
|
|
1009
|
+
variant: "outlined",
|
|
1010
|
+
class: "mx-2",
|
|
1011
|
+
"data-test": "file-open-save-cancel-btn",
|
|
1012
|
+
disabled: i.disableButtons,
|
|
1013
|
+
onClick: t[2] || (t[2] = (u) => l.show = !1)
|
|
1014
|
+
}, {
|
|
1015
|
+
default: r(() => t[6] || (t[6] = [
|
|
1016
|
+
C(" Cancel ")
|
|
1017
|
+
])),
|
|
1018
|
+
_: 1
|
|
1019
|
+
}, 8, ["disabled"]),
|
|
1020
|
+
s(x, {
|
|
1021
|
+
ref: "submitBtn",
|
|
1022
|
+
type: "submit",
|
|
1023
|
+
color: "primary",
|
|
1024
|
+
class: "mx-2",
|
|
1025
|
+
"data-test": "file-open-save-submit-btn",
|
|
1026
|
+
disabled: i.disableButtons || !!l.error,
|
|
1027
|
+
onClick: D(l.success, ["prevent"])
|
|
1028
|
+
}, {
|
|
1029
|
+
default: r(() => [
|
|
1030
|
+
C(k(l.submit), 1)
|
|
1031
|
+
]),
|
|
1032
|
+
_: 1
|
|
1033
|
+
}, 8, ["disabled", "onClick"])
|
|
1034
|
+
]),
|
|
1035
|
+
_: 1
|
|
1036
|
+
})
|
|
1037
|
+
])
|
|
1038
|
+
]),
|
|
1039
|
+
_: 1
|
|
1040
|
+
})
|
|
1041
|
+
], 32)
|
|
1042
|
+
]),
|
|
1043
|
+
_: 1
|
|
1044
|
+
})
|
|
1045
|
+
]),
|
|
1046
|
+
_: 1
|
|
1047
|
+
}, 8, ["modelValue"]);
|
|
1048
|
+
}
|
|
1049
|
+
const Te = /* @__PURE__ */ F(fe, [["render", ve]]), L = 20, ye = {
|
|
1050
|
+
components: {
|
|
1051
|
+
EditScreenDialog: ie
|
|
1052
|
+
},
|
|
1053
|
+
mixins: [G],
|
|
1054
|
+
props: {
|
|
1055
|
+
target: {
|
|
1056
|
+
type: String,
|
|
1057
|
+
default: ""
|
|
1058
|
+
},
|
|
1059
|
+
screen: {
|
|
1060
|
+
type: String,
|
|
1061
|
+
default: ""
|
|
1062
|
+
},
|
|
1063
|
+
definition: {
|
|
1064
|
+
type: String,
|
|
1065
|
+
default: ""
|
|
1066
|
+
},
|
|
1067
|
+
keywords: {
|
|
1068
|
+
type: Array,
|
|
1069
|
+
default: () => []
|
|
1070
|
+
},
|
|
1071
|
+
initialFloated: {
|
|
1072
|
+
type: Boolean,
|
|
1073
|
+
default: !1
|
|
1074
|
+
},
|
|
1075
|
+
initialTop: {
|
|
1076
|
+
type: Number,
|
|
1077
|
+
default: 0
|
|
1078
|
+
},
|
|
1079
|
+
initialLeft: {
|
|
1080
|
+
type: Number,
|
|
1081
|
+
default: 0
|
|
1082
|
+
},
|
|
1083
|
+
initialZ: {
|
|
1084
|
+
type: Number,
|
|
1085
|
+
default: 0
|
|
1086
|
+
},
|
|
1087
|
+
minZ: {
|
|
1088
|
+
type: Number,
|
|
1089
|
+
default: 0
|
|
1090
|
+
},
|
|
1091
|
+
fixFloated: {
|
|
1092
|
+
type: Boolean,
|
|
1093
|
+
default: !1
|
|
1094
|
+
},
|
|
1095
|
+
count: {
|
|
1096
|
+
type: Number,
|
|
1097
|
+
default: 0
|
|
1098
|
+
},
|
|
1099
|
+
showClose: {
|
|
1100
|
+
type: Boolean,
|
|
1101
|
+
default: !0
|
|
1102
|
+
},
|
|
1103
|
+
timeZone: {
|
|
1104
|
+
type: String,
|
|
1105
|
+
default: "local"
|
|
1106
|
+
},
|
|
1107
|
+
inline: {
|
|
1108
|
+
type: Boolean,
|
|
1109
|
+
default: !1
|
|
1110
|
+
}
|
|
1111
|
+
},
|
|
1112
|
+
data() {
|
|
1113
|
+
return {
|
|
1114
|
+
api: null,
|
|
1115
|
+
backup: "",
|
|
1116
|
+
currentDefinition: this.definition,
|
|
1117
|
+
editDialog: !1,
|
|
1118
|
+
expand: !0,
|
|
1119
|
+
configParser: null,
|
|
1120
|
+
configError: !1,
|
|
1121
|
+
currentLayout: null,
|
|
1122
|
+
layoutStack: [],
|
|
1123
|
+
namedWidgets: {},
|
|
1124
|
+
dynamicWidgets: [],
|
|
1125
|
+
width: null,
|
|
1126
|
+
height: null,
|
|
1127
|
+
staleTime: 30,
|
|
1128
|
+
cacheTimeout: 0.1,
|
|
1129
|
+
globalSettings: [],
|
|
1130
|
+
substitute: !1,
|
|
1131
|
+
original_target_name: null,
|
|
1132
|
+
force_substitute: !1,
|
|
1133
|
+
pollingPeriod: 1,
|
|
1134
|
+
errors: [],
|
|
1135
|
+
errorDialog: !1,
|
|
1136
|
+
screenKey: null,
|
|
1137
|
+
dragX: 0,
|
|
1138
|
+
dragY: 0,
|
|
1139
|
+
floated: this.initialFloated,
|
|
1140
|
+
top: this.initialTop,
|
|
1141
|
+
left: this.initialLeft,
|
|
1142
|
+
zIndex: this.initialZ,
|
|
1143
|
+
changeCounter: 0,
|
|
1144
|
+
screenItems: [],
|
|
1145
|
+
screenValues: {},
|
|
1146
|
+
updateCounter: 0,
|
|
1147
|
+
screenId: Y.uniqueId("openc3-screen_")
|
|
1148
|
+
};
|
|
1149
|
+
},
|
|
1150
|
+
computed: {
|
|
1151
|
+
error: function() {
|
|
1152
|
+
if (this.errorDialog && this.errors.length > 0) {
|
|
1153
|
+
let e = /* @__PURE__ */ new Set(), t = "";
|
|
1154
|
+
for (const n of this.errors) {
|
|
1155
|
+
if (e.has(n.message))
|
|
1156
|
+
continue;
|
|
1157
|
+
let o = `${n.time}: (${n.type}) ${n.message}
|
|
1158
|
+
`;
|
|
1159
|
+
t += o, e.add(n.message);
|
|
1160
|
+
}
|
|
1161
|
+
return t;
|
|
1162
|
+
}
|
|
1163
|
+
return null;
|
|
1164
|
+
},
|
|
1165
|
+
computedStyle() {
|
|
1166
|
+
var n;
|
|
1167
|
+
let e = {};
|
|
1168
|
+
const t = this.width || ((n = this.$refs.bar) == null ? void 0 : n.clientWidth);
|
|
1169
|
+
return this.floated && (e.position = "absolute", e.top = this.top + "px", e.left = this.left + "px", e.width = t + "px"), e;
|
|
1170
|
+
}
|
|
1171
|
+
},
|
|
1172
|
+
watch: {
|
|
1173
|
+
count: {
|
|
1174
|
+
handler(e, t) {
|
|
1175
|
+
this.currentDefinition = this.definition, this.rerender();
|
|
1176
|
+
}
|
|
1177
|
+
}
|
|
1178
|
+
},
|
|
1179
|
+
// Called when an error from any descendent component is captured
|
|
1180
|
+
// We need this because an error can occur from any of the children
|
|
1181
|
+
// in the widget stack and are typically thrown on create()
|
|
1182
|
+
errorCaptured(e, t, n) {
|
|
1183
|
+
return this.errors.length < L && (e.usage ? this.errors.push({
|
|
1184
|
+
type: "usage",
|
|
1185
|
+
message: e.message,
|
|
1186
|
+
usage: e.usage,
|
|
1187
|
+
line: e.line,
|
|
1188
|
+
lineNumber: e.lineNumber,
|
|
1189
|
+
time: (/* @__PURE__ */ new Date()).getTime()
|
|
1190
|
+
}) : this.errors.push({
|
|
1191
|
+
type: "error",
|
|
1192
|
+
message: e,
|
|
1193
|
+
time: (/* @__PURE__ */ new Date()).getTime()
|
|
1194
|
+
}), console.log(this.errors), this.configError = !0), !1;
|
|
1195
|
+
},
|
|
1196
|
+
created() {
|
|
1197
|
+
this.api = new P(), this.configParser = new X(), this.parseDefinition(), this.screenKey = Math.floor(Math.random() * 1e6);
|
|
1198
|
+
},
|
|
1199
|
+
mounted() {
|
|
1200
|
+
this.updateRefreshInterval(), this.floated && (this.$refs.bar.onmousedown = this.dragMouseDown, this.$refs.bar.parentElement.parentElement.style = "z-index: " + this.zIndex);
|
|
1201
|
+
},
|
|
1202
|
+
unmounted() {
|
|
1203
|
+
this.updater != null && (clearInterval(this.updater), this.updater = null);
|
|
1204
|
+
},
|
|
1205
|
+
methods: {
|
|
1206
|
+
// These are API methods that ButtonWidget uses to open and close screens
|
|
1207
|
+
open(e, t) {
|
|
1208
|
+
this.$parent.showScreen(e, t);
|
|
1209
|
+
},
|
|
1210
|
+
close(e, t) {
|
|
1211
|
+
this.$parent.closeScreenByName(e, t);
|
|
1212
|
+
},
|
|
1213
|
+
closeAll() {
|
|
1214
|
+
this.$parent.closeAll();
|
|
1215
|
+
},
|
|
1216
|
+
clearErrors: function() {
|
|
1217
|
+
this.errors = [], this.configError = !1;
|
|
1218
|
+
},
|
|
1219
|
+
updateRefreshInterval: function() {
|
|
1220
|
+
let e = this.pollingPeriod * 1e3;
|
|
1221
|
+
this.updater && clearInterval(this.updater), this.updater = setInterval(() => {
|
|
1222
|
+
this.update();
|
|
1223
|
+
}, e);
|
|
1224
|
+
},
|
|
1225
|
+
parseDefinition: function() {
|
|
1226
|
+
if (this.clearErrors(), this.namedWidgets = {}, this.layoutStack = [], this.dynamicWidgets = [], this.layoutStack.push({
|
|
1227
|
+
type: "VerticalWidget",
|
|
1228
|
+
parameters: [],
|
|
1229
|
+
widgets: []
|
|
1230
|
+
}), this.currentLayout = this.layoutStack[this.layoutStack.length - 1], this.configParser.parse_string(
|
|
1231
|
+
this.currentDefinition,
|
|
1232
|
+
"",
|
|
1233
|
+
!1,
|
|
1234
|
+
!0,
|
|
1235
|
+
(e, t, n, o) => {
|
|
1236
|
+
if (e)
|
|
1237
|
+
switch (e) {
|
|
1238
|
+
case "SCREEN":
|
|
1239
|
+
this.configParser.verify_num_parameters(
|
|
1240
|
+
3,
|
|
1241
|
+
4,
|
|
1242
|
+
`${e} <Width or AUTO> <Height or AUTO> <Polling Period>`
|
|
1243
|
+
), this.width = parseInt(t[0]), this.height = parseInt(t[1]), this.pollingPeriod = parseFloat(t[2]);
|
|
1244
|
+
break;
|
|
1245
|
+
case "END":
|
|
1246
|
+
this.configParser.verify_num_parameters(0, 0, `${e}`), this.layoutStack.pop(), this.currentLayout = this.layoutStack[this.layoutStack.length - 1];
|
|
1247
|
+
break;
|
|
1248
|
+
case "STALE_TIME":
|
|
1249
|
+
this.configParser.verify_num_parameters(
|
|
1250
|
+
1,
|
|
1251
|
+
1,
|
|
1252
|
+
`${e} <Time (s)>`
|
|
1253
|
+
), this.staleTime = parseInt(t[0]);
|
|
1254
|
+
break;
|
|
1255
|
+
case "SETTING":
|
|
1256
|
+
case "SUBSETTING":
|
|
1257
|
+
(this.currentLayout.widgets[this.currentLayout.widgets.length - 1] ?? this.currentLayout).settings.push(t);
|
|
1258
|
+
break;
|
|
1259
|
+
case "GLOBAL_SETTING":
|
|
1260
|
+
case "GLOBAL_SUBSETTING":
|
|
1261
|
+
this.globalSettings.push(t);
|
|
1262
|
+
break;
|
|
1263
|
+
default:
|
|
1264
|
+
this.processWidget(e, t, n, o);
|
|
1265
|
+
break;
|
|
1266
|
+
}
|
|
1267
|
+
}
|
|
1268
|
+
), typeof this.layoutStack[0] > "u") {
|
|
1269
|
+
let e = [], t = [];
|
|
1270
|
+
for (const n of this.dynamicWidgets)
|
|
1271
|
+
e.push(n.name), t.push(n.lineNumber);
|
|
1272
|
+
this.errors.length < L && (this.errors.push({
|
|
1273
|
+
type: "usage",
|
|
1274
|
+
message: `Unknown widget! Are these widgets: ${e.join(",")}?`,
|
|
1275
|
+
lineNumber: t.join(","),
|
|
1276
|
+
time: (/* @__PURE__ */ new Date()).getTime()
|
|
1277
|
+
}), this.configError = !0), this.layoutStack[0] = {
|
|
1278
|
+
type: "VerticalWidget",
|
|
1279
|
+
parameters: [],
|
|
1280
|
+
widgets: []
|
|
1281
|
+
};
|
|
1282
|
+
} else
|
|
1283
|
+
this.applyGlobalSettings(this.layoutStack[0].widgets);
|
|
1284
|
+
},
|
|
1285
|
+
openEdit: function() {
|
|
1286
|
+
this.backup = this.currentDefinition.repeat(1), this.editDialog = !0;
|
|
1287
|
+
},
|
|
1288
|
+
upScreen: function() {
|
|
1289
|
+
this.zIndex += 1, this.$refs.bar.parentElement.parentElement.style = "z-index: " + this.zIndex, this.$emit("drag-screen", [
|
|
1290
|
+
this.floated,
|
|
1291
|
+
this.top,
|
|
1292
|
+
this.left,
|
|
1293
|
+
this.zIndex
|
|
1294
|
+
]);
|
|
1295
|
+
},
|
|
1296
|
+
downScreen: function() {
|
|
1297
|
+
this.zIndex > this.minZ && (this.zIndex -= 1, this.$refs.bar.parentElement.parentElement.style = "z-index: " + this.zIndex, this.$emit("drag-screen", [
|
|
1298
|
+
this.floated,
|
|
1299
|
+
this.top,
|
|
1300
|
+
this.left,
|
|
1301
|
+
this.zIndex
|
|
1302
|
+
]));
|
|
1303
|
+
},
|
|
1304
|
+
floatScreen: function() {
|
|
1305
|
+
if (this.floated)
|
|
1306
|
+
this.$refs.bar.onmousedown = null, this.$refs.bar.parentElement.parentElement.style = "z-index: 0", this.floated = !1, this.$emit("unfloat-screen", [
|
|
1307
|
+
this.floated,
|
|
1308
|
+
this.top,
|
|
1309
|
+
this.left,
|
|
1310
|
+
this.zIndex
|
|
1311
|
+
]);
|
|
1312
|
+
else {
|
|
1313
|
+
let e = this.$refs.bar.parentElement.parentElement.parentElement.getBoundingClientRect(), t = this.$refs.bar.getBoundingClientRect();
|
|
1314
|
+
this.top = t.top - e.top - 5, this.left = t.left - e.left - 5, this.$refs.bar.onmousedown = this.dragMouseDown, this.$refs.bar.parentElement.parentElement.style = "z-index: " + this.zIndex, this.floated = !0, this.$emit("float-screen", [
|
|
1315
|
+
this.floated,
|
|
1316
|
+
this.top,
|
|
1317
|
+
this.left,
|
|
1318
|
+
this.zIndex
|
|
1319
|
+
]);
|
|
1320
|
+
}
|
|
1321
|
+
},
|
|
1322
|
+
dragMouseDown: function(e) {
|
|
1323
|
+
e = e || window.event, e.preventDefault(), this.dragX = e.clientX, this.dragY = e.clientY, document.onmouseup = this.closeDragElement, document.onmousemove = this.elementDrag;
|
|
1324
|
+
},
|
|
1325
|
+
elementDrag: function(e) {
|
|
1326
|
+
e = e || window.event, e.preventDefault();
|
|
1327
|
+
let t = this.dragX - e.clientX, n = this.dragY - e.clientY;
|
|
1328
|
+
this.dragX = e.clientX, this.dragY = e.clientY, this.top = this.$refs.bar.offsetTop - n, this.left = this.$refs.bar.offsetLeft - t, this.$emit("drag-screen", [
|
|
1329
|
+
this.floated,
|
|
1330
|
+
this.top,
|
|
1331
|
+
this.left,
|
|
1332
|
+
this.zIndex
|
|
1333
|
+
]);
|
|
1334
|
+
},
|
|
1335
|
+
closeDragElement: function() {
|
|
1336
|
+
document.onmouseup = null, document.onmousemove = null;
|
|
1337
|
+
},
|
|
1338
|
+
rerender: function() {
|
|
1339
|
+
this.parseDefinition(), this.updateRefreshInterval(), this.screenKey = Math.floor(Math.random() * 1e6), this.$nextTick(function() {
|
|
1340
|
+
this.clearErrors(), this.$emit("edit-screen");
|
|
1341
|
+
});
|
|
1342
|
+
},
|
|
1343
|
+
cancelEdit: function() {
|
|
1344
|
+
this.file = null, this.editDialog = !1, this.currentDefinition = this.backup, this.rerender();
|
|
1345
|
+
},
|
|
1346
|
+
saveEdit: function(e) {
|
|
1347
|
+
this.editDialog = !1, this.currentDefinition = e, this.rerender(), this.$nextTick(function() {
|
|
1348
|
+
I.post(
|
|
1349
|
+
"/openc3-api/screen/",
|
|
1350
|
+
{
|
|
1351
|
+
data: {
|
|
1352
|
+
scope: window.openc3Scope,
|
|
1353
|
+
target: this.target,
|
|
1354
|
+
screen: this.screen,
|
|
1355
|
+
text: this.currentDefinition
|
|
1356
|
+
}
|
|
1357
|
+
},
|
|
1358
|
+
0
|
|
1359
|
+
);
|
|
1360
|
+
});
|
|
1361
|
+
},
|
|
1362
|
+
deleteScreen: function() {
|
|
1363
|
+
this.editDialog = !1, I.delete(`/openc3-api/screen/${this.target}/${this.screen}`).then(
|
|
1364
|
+
(e) => {
|
|
1365
|
+
this.$emit("delete-screen");
|
|
1366
|
+
}
|
|
1367
|
+
);
|
|
1368
|
+
},
|
|
1369
|
+
minMaxTransition: function() {
|
|
1370
|
+
this.expand = !this.expand, this.$emit("min-max-screen");
|
|
1371
|
+
},
|
|
1372
|
+
processWidget: function(e, t, n, o) {
|
|
1373
|
+
let i = null;
|
|
1374
|
+
e === "NAMED_WIDGET" && (this.configParser.verify_num_parameters(
|
|
1375
|
+
2,
|
|
1376
|
+
null,
|
|
1377
|
+
`${e} <Widget Name> <Widget Type> <Widget Settings... (optional)>`
|
|
1378
|
+
), i = t[0].toUpperCase(), e = t[1].toUpperCase(), t = t.slice(2, t.length));
|
|
1379
|
+
const l = e.charAt(0).toUpperCase() + e.slice(1).toLowerCase() + "Widget";
|
|
1380
|
+
let f = [];
|
|
1381
|
+
if (f.push(["__SCREEN_ID__", this.screenId]), i !== null && f.push(["NAMED_WIDGET", i]), e === "VERTICAL" || e === "VERTICALBOX" || e === "HORIZONTAL" || e === "HORIZONTALBOX" || e === "MATRIXBYCOLUMNS" || e === "TABBOOK" || e === "TABITEM" || e === "CANVAS" || e === "RADIOGROUP" || e === "SCROLLWINDOW") {
|
|
1382
|
+
const v = {
|
|
1383
|
+
type: l,
|
|
1384
|
+
parameters: t,
|
|
1385
|
+
settings: f,
|
|
1386
|
+
screenValues: this.screenValues,
|
|
1387
|
+
screenTimeZone: this.timeZone,
|
|
1388
|
+
widgets: []
|
|
1389
|
+
};
|
|
1390
|
+
this.layoutStack.push(v), this.currentLayout.widgets.push(v), this.currentLayout = v;
|
|
1391
|
+
} else if (this.$options.components[l])
|
|
1392
|
+
this.currentLayout.widgets.push({
|
|
1393
|
+
type: l,
|
|
1394
|
+
target: this.target,
|
|
1395
|
+
parameters: t,
|
|
1396
|
+
settings: f,
|
|
1397
|
+
screenValues: this.screenValues,
|
|
1398
|
+
screenTimeZone: this.timeZone,
|
|
1399
|
+
line: n,
|
|
1400
|
+
lineNumber: o
|
|
1401
|
+
});
|
|
1402
|
+
else {
|
|
1403
|
+
let v = {
|
|
1404
|
+
type: "DynamicWidget",
|
|
1405
|
+
target: this.target,
|
|
1406
|
+
parameters: t,
|
|
1407
|
+
settings: f,
|
|
1408
|
+
screenValues: this.screenValues,
|
|
1409
|
+
screenTimeZone: this.timeZone,
|
|
1410
|
+
name: l,
|
|
1411
|
+
line: n,
|
|
1412
|
+
lineNumber: o
|
|
1413
|
+
};
|
|
1414
|
+
this.currentLayout.widgets.push(v), this.dynamicWidgets.push(v);
|
|
1415
|
+
}
|
|
1416
|
+
},
|
|
1417
|
+
applyGlobalSettings: function(e) {
|
|
1418
|
+
e.forEach((t) => {
|
|
1419
|
+
this.globalSettings.forEach((n) => {
|
|
1420
|
+
t.type.toLowerCase() === n[0].toLowerCase() + "widget" && (t.settings.find(
|
|
1421
|
+
(i) => i[0] === n[1]
|
|
1422
|
+
) || t.settings.push(n.slice(1)));
|
|
1423
|
+
}), t.widgets && this.applyGlobalSettings(t.widgets);
|
|
1424
|
+
});
|
|
1425
|
+
},
|
|
1426
|
+
update: function() {
|
|
1427
|
+
this.screenItems.length !== 0 && this.configError === !1 && this.api.get_tlm_values(this.screenItems, this.staleTime, this.cacheTimeout).then((e) => {
|
|
1428
|
+
this.clearErrors(), this.updateValues(e);
|
|
1429
|
+
}).catch((e) => {
|
|
1430
|
+
let t = JSON.stringify(e, null, 2);
|
|
1431
|
+
t.includes("no response received") || (this.configError = !0), this.errors.find((n) => n.message === t) || this.errors.length < L && this.errors.push({
|
|
1432
|
+
type: "error",
|
|
1433
|
+
message: t,
|
|
1434
|
+
time: (/* @__PURE__ */ new Date()).getTime()
|
|
1435
|
+
});
|
|
1436
|
+
});
|
|
1437
|
+
},
|
|
1438
|
+
updateValues: function(e) {
|
|
1439
|
+
this.updateCounter += 1;
|
|
1440
|
+
for (let t = 0; t < e.length; t++)
|
|
1441
|
+
e[t].push(this.updateCounter), this.screenValues[this.screenItems[t]] = e[t];
|
|
1442
|
+
},
|
|
1443
|
+
addItem: function(e) {
|
|
1444
|
+
this.screenItems.push(e), this.screenValues[e] = [null, null, 0];
|
|
1445
|
+
},
|
|
1446
|
+
deleteItem: function(e) {
|
|
1447
|
+
let t = this.screenItems.indexOf(e);
|
|
1448
|
+
this.screenItems.splice(t, 1);
|
|
1449
|
+
}
|
|
1450
|
+
}
|
|
1451
|
+
}, _e = {
|
|
1452
|
+
ref: "screen",
|
|
1453
|
+
class: "pa-1",
|
|
1454
|
+
style: { position: "relative" }
|
|
1455
|
+
}, be = {
|
|
1456
|
+
key: 1,
|
|
1457
|
+
class: "pa-1",
|
|
1458
|
+
style: { position: "relative" }
|
|
1459
|
+
};
|
|
1460
|
+
function xe(e, t, n, o, i, l) {
|
|
1461
|
+
const f = a("v-btn"), v = a("v-tooltip"), p = a("v-spacer"), h = a("v-toolbar"), d = a("v-overlay"), c = a("vertical-widget"), g = a("v-expand-transition"), x = a("v-card"), S = a("edit-screen-dialog"), w = a("v-textarea"), y = a("v-dialog");
|
|
1462
|
+
return m(), T("div", {
|
|
1463
|
+
ref: "bar",
|
|
1464
|
+
style: $(l.computedStyle)
|
|
1465
|
+
}, [
|
|
1466
|
+
n.inline ? V("", !0) : (m(), b(x, {
|
|
1467
|
+
key: 0,
|
|
1468
|
+
"min-height": i.height,
|
|
1469
|
+
"min-width": i.width,
|
|
1470
|
+
style: { cursor: "default" }
|
|
1471
|
+
}, {
|
|
1472
|
+
default: r(() => [
|
|
1473
|
+
s(h, { height: "24" }, {
|
|
1474
|
+
default: r(() => [
|
|
1475
|
+
O(s(f, {
|
|
1476
|
+
icon: "mdi-alert",
|
|
1477
|
+
variant: "text",
|
|
1478
|
+
density: "compact",
|
|
1479
|
+
"data-test": "error-graph-icon",
|
|
1480
|
+
"aria-label": "Show Errors",
|
|
1481
|
+
onClick: t[0] || (t[0] = () => {
|
|
1482
|
+
i.errorDialog = !0;
|
|
1483
|
+
})
|
|
1484
|
+
}, null, 512), [
|
|
1485
|
+
[M, i.errors.length !== 0]
|
|
1486
|
+
]),
|
|
1487
|
+
s(f, {
|
|
1488
|
+
icon: "mdi-pencil",
|
|
1489
|
+
variant: "text",
|
|
1490
|
+
density: "compact",
|
|
1491
|
+
"data-test": "edit-screen-icon",
|
|
1492
|
+
"aria-label": "Edit Screen",
|
|
1493
|
+
onClick: l.openEdit
|
|
1494
|
+
}, null, 8, ["onClick"]),
|
|
1495
|
+
n.fixFloated ? V("", !0) : (m(), b(v, {
|
|
1496
|
+
key: 0,
|
|
1497
|
+
"open-delay": 600,
|
|
1498
|
+
location: "top"
|
|
1499
|
+
}, {
|
|
1500
|
+
activator: r(({ props: u }) => [
|
|
1501
|
+
_("div", N(R(u)), [
|
|
1502
|
+
s(f, {
|
|
1503
|
+
icon: i.floated ? "mdi-balloon" : "mdi-view-grid-outline",
|
|
1504
|
+
variant: "text",
|
|
1505
|
+
"data-test": "float-screen-icon",
|
|
1506
|
+
"aria-label": i.floated ? "Unfloat Screen" : "Float Screen",
|
|
1507
|
+
onClick: l.floatScreen
|
|
1508
|
+
}, null, 8, ["icon", "aria-label", "onClick"])
|
|
1509
|
+
], 16)
|
|
1510
|
+
]),
|
|
1511
|
+
default: r(() => [
|
|
1512
|
+
_("span", null, k(i.floated ? "Unfloat Screen" : "Float Screen"), 1)
|
|
1513
|
+
]),
|
|
1514
|
+
_: 1
|
|
1515
|
+
})),
|
|
1516
|
+
i.floated ? (m(), b(v, {
|
|
1517
|
+
key: 1,
|
|
1518
|
+
"open-delay": 600,
|
|
1519
|
+
location: "top"
|
|
1520
|
+
}, {
|
|
1521
|
+
activator: r(({ props: u }) => [
|
|
1522
|
+
_("div", N(R(u)), [
|
|
1523
|
+
s(f, {
|
|
1524
|
+
icon: "mdi-arrow-up",
|
|
1525
|
+
variant: "text",
|
|
1526
|
+
"data-test": "up-screen-icon",
|
|
1527
|
+
"aria-label": "Move Screen Up",
|
|
1528
|
+
onClick: l.upScreen
|
|
1529
|
+
}, null, 8, ["onClick"])
|
|
1530
|
+
], 16)
|
|
1531
|
+
]),
|
|
1532
|
+
default: r(() => [
|
|
1533
|
+
t[8] || (t[8] = _("span", null, " Move Screen Up ", -1))
|
|
1534
|
+
]),
|
|
1535
|
+
_: 1
|
|
1536
|
+
})) : V("", !0),
|
|
1537
|
+
i.floated && i.zIndex > n.minZ ? (m(), b(v, {
|
|
1538
|
+
key: 2,
|
|
1539
|
+
"open-delay": 600,
|
|
1540
|
+
location: "top"
|
|
1541
|
+
}, {
|
|
1542
|
+
activator: r(({ props: u }) => [
|
|
1543
|
+
_("div", N(R(u)), [
|
|
1544
|
+
s(f, {
|
|
1545
|
+
icon: "mdi-arrow-down",
|
|
1546
|
+
variant: "text",
|
|
1547
|
+
"data-test": "down-screen-icon",
|
|
1548
|
+
"aria-label": "Move Screen Down",
|
|
1549
|
+
onClick: l.downScreen
|
|
1550
|
+
}, null, 8, ["onClick"])
|
|
1551
|
+
], 16)
|
|
1552
|
+
]),
|
|
1553
|
+
default: r(() => [
|
|
1554
|
+
t[9] || (t[9] = _("span", null, " Move Screen Down ", -1))
|
|
1555
|
+
]),
|
|
1556
|
+
_: 1
|
|
1557
|
+
})) : V("", !0),
|
|
1558
|
+
s(p),
|
|
1559
|
+
_("span", null, k(n.target) + " " + k(n.screen), 1),
|
|
1560
|
+
s(p),
|
|
1561
|
+
i.expand ? (m(), b(f, {
|
|
1562
|
+
key: 3,
|
|
1563
|
+
icon: "mdi-window-minimize",
|
|
1564
|
+
variant: "text",
|
|
1565
|
+
density: "compact",
|
|
1566
|
+
"data-test": "minimize-screen-icon",
|
|
1567
|
+
"aria-label": "Minimize Screen",
|
|
1568
|
+
onClick: l.minMaxTransition
|
|
1569
|
+
}, null, 8, ["onClick"])) : (m(), b(f, {
|
|
1570
|
+
key: 4,
|
|
1571
|
+
icon: "mdi-window-maximize",
|
|
1572
|
+
variant: "text",
|
|
1573
|
+
"data-test": "maximize-screen-icon",
|
|
1574
|
+
"aria-label": "Maximize Screen",
|
|
1575
|
+
onClick: l.minMaxTransition
|
|
1576
|
+
}, null, 8, ["onClick"])),
|
|
1577
|
+
n.showClose ? (m(), b(f, {
|
|
1578
|
+
key: 5,
|
|
1579
|
+
icon: "mdi-close-box",
|
|
1580
|
+
variant: "text",
|
|
1581
|
+
density: "compact",
|
|
1582
|
+
"data-test": "close-screen-icon",
|
|
1583
|
+
"aria-label": "Close Screen",
|
|
1584
|
+
onClick: t[1] || (t[1] = (u) => e.$emit("close-screen"))
|
|
1585
|
+
})) : V("", !0)
|
|
1586
|
+
]),
|
|
1587
|
+
_: 1
|
|
1588
|
+
}),
|
|
1589
|
+
i.editDialog ? V("", !0) : (m(), b(g, { key: 0 }, {
|
|
1590
|
+
default: r(() => [
|
|
1591
|
+
O(_("div", _e, [
|
|
1592
|
+
s(d, {
|
|
1593
|
+
style: { "pointer-events": "none" },
|
|
1594
|
+
"model-value": i.errors.length !== 0,
|
|
1595
|
+
opacity: "0.8",
|
|
1596
|
+
absolute: "",
|
|
1597
|
+
attach: "",
|
|
1598
|
+
"scroll-strategy": "none"
|
|
1599
|
+
}, null, 8, ["model-value"]),
|
|
1600
|
+
(m(), b(c, {
|
|
1601
|
+
key: i.screenKey,
|
|
1602
|
+
widgets: i.layoutStack[0].widgets,
|
|
1603
|
+
"screen-values": i.screenValues,
|
|
1604
|
+
"screen-time-zone": n.timeZone,
|
|
1605
|
+
onAddItem: l.addItem,
|
|
1606
|
+
onDeleteItem: l.deleteItem,
|
|
1607
|
+
onOpen: l.open,
|
|
1608
|
+
onClose: l.close,
|
|
1609
|
+
onCloseAll: l.closeAll
|
|
1610
|
+
}, null, 8, ["widgets", "screen-values", "screen-time-zone", "onAddItem", "onDeleteItem", "onOpen", "onClose", "onCloseAll"]))
|
|
1611
|
+
], 512), [
|
|
1612
|
+
[M, i.expand]
|
|
1613
|
+
])
|
|
1614
|
+
]),
|
|
1615
|
+
_: 1
|
|
1616
|
+
}))
|
|
1617
|
+
]),
|
|
1618
|
+
_: 1
|
|
1619
|
+
}, 8, ["min-height", "min-width"])),
|
|
1620
|
+
n.inline ? (m(), T("div", be, [
|
|
1621
|
+
s(d, {
|
|
1622
|
+
style: { "pointer-events": "none" },
|
|
1623
|
+
"model-value": i.errors.length !== 0,
|
|
1624
|
+
opacity: "0.8",
|
|
1625
|
+
absolute: "",
|
|
1626
|
+
attach: "",
|
|
1627
|
+
"scroll-strategy": "none"
|
|
1628
|
+
}, null, 8, ["model-value"]),
|
|
1629
|
+
O(s(f, {
|
|
1630
|
+
icon: "mdi-alert",
|
|
1631
|
+
variant: "text",
|
|
1632
|
+
density: "compact",
|
|
1633
|
+
"data-test": "error-graph-icon",
|
|
1634
|
+
"aria-label": "Show Errors",
|
|
1635
|
+
onClick: t[2] || (t[2] = () => {
|
|
1636
|
+
i.errorDialog = !0;
|
|
1637
|
+
})
|
|
1638
|
+
}, null, 512), [
|
|
1639
|
+
[M, i.errors.length !== 0]
|
|
1640
|
+
]),
|
|
1641
|
+
(m(), b(c, {
|
|
1642
|
+
key: i.screenKey,
|
|
1643
|
+
widgets: i.layoutStack[0].widgets,
|
|
1644
|
+
"screen-values": i.screenValues,
|
|
1645
|
+
"screen-time-zone": n.timeZone,
|
|
1646
|
+
onAddItem: l.addItem,
|
|
1647
|
+
onDeleteItem: l.deleteItem,
|
|
1648
|
+
onOpen: l.open,
|
|
1649
|
+
onClose: l.close,
|
|
1650
|
+
onCloseAll: l.closeAll
|
|
1651
|
+
}, null, 8, ["widgets", "screen-values", "screen-time-zone", "onAddItem", "onDeleteItem", "onOpen", "onClose", "onCloseAll"]))
|
|
1652
|
+
])) : V("", !0),
|
|
1653
|
+
i.editDialog ? (m(), b(S, {
|
|
1654
|
+
key: 2,
|
|
1655
|
+
modelValue: i.editDialog,
|
|
1656
|
+
"onUpdate:modelValue": t[3] || (t[3] = (u) => i.editDialog = u),
|
|
1657
|
+
target: n.target,
|
|
1658
|
+
screen: n.screen,
|
|
1659
|
+
definition: i.currentDefinition,
|
|
1660
|
+
keywords: n.keywords,
|
|
1661
|
+
errors: i.errors,
|
|
1662
|
+
onSave: t[4] || (t[4] = (u) => l.saveEdit(u)),
|
|
1663
|
+
onCancel: t[5] || (t[5] = (u) => l.cancelEdit()),
|
|
1664
|
+
onDelete: t[6] || (t[6] = (u) => l.deleteScreen())
|
|
1665
|
+
}, null, 8, ["modelValue", "target", "screen", "definition", "keywords", "errors"])) : V("", !0),
|
|
1666
|
+
s(y, {
|
|
1667
|
+
modelValue: i.errorDialog,
|
|
1668
|
+
"onUpdate:modelValue": t[7] || (t[7] = (u) => i.errorDialog = u),
|
|
1669
|
+
width: "60vw"
|
|
1670
|
+
}, {
|
|
1671
|
+
default: r(() => [
|
|
1672
|
+
s(h, { height: "24" }, {
|
|
1673
|
+
default: r(() => [
|
|
1674
|
+
s(p),
|
|
1675
|
+
_("span", null, " Screen: " + k(n.target) + " " + k(n.screen) + " Errors ", 1),
|
|
1676
|
+
s(p)
|
|
1677
|
+
]),
|
|
1678
|
+
_: 1
|
|
1679
|
+
}),
|
|
1680
|
+
s(x, null, {
|
|
1681
|
+
default: r(() => [
|
|
1682
|
+
s(w, {
|
|
1683
|
+
class: "errors",
|
|
1684
|
+
readonly: "",
|
|
1685
|
+
rows: "13",
|
|
1686
|
+
"model-value": l.error
|
|
1687
|
+
}, null, 8, ["model-value"])
|
|
1688
|
+
]),
|
|
1689
|
+
_: 1
|
|
1690
|
+
})
|
|
1691
|
+
]),
|
|
1692
|
+
_: 1
|
|
1693
|
+
}, 8, ["modelValue"])
|
|
1694
|
+
], 4);
|
|
1695
|
+
}
|
|
1696
|
+
const Ie = /* @__PURE__ */ F(ye, [["render", xe], ["__scopeId", "data-v-b9a096c9"]]);
|
|
1697
|
+
export {
|
|
1698
|
+
ie as E,
|
|
1699
|
+
Te as F,
|
|
1700
|
+
Ie as O,
|
|
1701
|
+
Q as S,
|
|
1702
|
+
Ve as a
|
|
1703
|
+
};
|
|
1704
|
+
//# sourceMappingURL=Openc3Screen-DFYYhHt7.js.map
|