@openc3/vue-common 6.2.0 → 6.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ArrayWidget-BIQi_bWC.cjs +3 -0
- package/dist/ArrayWidget-BIQi_bWC.cjs.map +1 -0
- package/dist/ArrayWidget-BxEO5hEG.js +106 -0
- package/dist/ArrayWidget-BxEO5hEG.js.map +1 -0
- package/dist/ArrayplotWidget-B_VPoV4v.js +199 -0
- package/dist/ArrayplotWidget-B_VPoV4v.js.map +1 -0
- package/dist/ArrayplotWidget-Donxhd8_.cjs +2 -0
- package/dist/ArrayplotWidget-Donxhd8_.cjs.map +1 -0
- package/dist/AstroStatus-CILMWL6F.cjs +2 -0
- package/dist/AstroStatus-CILMWL6F.cjs.map +1 -0
- package/dist/AstroStatus-CY9VkeTN.js +40 -0
- package/dist/AstroStatus-CY9VkeTN.js.map +1 -0
- package/dist/BarColumn-C9dkpg2O.js +108 -0
- package/dist/BarColumn-C9dkpg2O.js.map +1 -0
- package/dist/BarColumn-CyRSZHMh.cjs +2 -0
- package/dist/BarColumn-CyRSZHMh.cjs.map +1 -0
- package/dist/BlockWidget-CuefOin6.js +112 -0
- package/dist/BlockWidget-CuefOin6.js.map +1 -0
- package/dist/BlockWidget-DPLN1jgj.cjs +3 -0
- package/dist/BlockWidget-DPLN1jgj.cjs.map +1 -0
- package/dist/ButtonWidget-B6HM0Doo.js +166 -0
- package/dist/ButtonWidget-B6HM0Doo.js.map +1 -0
- package/dist/ButtonWidget-DccYzIY3.cjs +3 -0
- package/dist/ButtonWidget-DccYzIY3.cjs.map +1 -0
- package/dist/CanvasWidget-BzTU9rc9.cjs +2 -0
- package/dist/CanvasWidget-BzTU9rc9.cjs.map +1 -0
- package/dist/CanvasWidget-DZQGG-yQ.js +39 -0
- package/dist/CanvasWidget-DZQGG-yQ.js.map +1 -0
- package/dist/CanvasdotWidget-6wuCSnw_.js +19 -0
- package/dist/CanvasdotWidget-6wuCSnw_.js.map +1 -0
- package/dist/CanvasdotWidget-B7VTS1QI.cjs +2 -0
- package/dist/CanvasdotWidget-B7VTS1QI.cjs.map +1 -0
- package/dist/CanvasimageWidget-BwYpfmDE.cjs +2 -0
- package/dist/CanvasimageWidget-BwYpfmDE.cjs.map +1 -0
- package/dist/CanvasimageWidget-mhcPpAuN.js +58 -0
- package/dist/CanvasimageWidget-mhcPpAuN.js.map +1 -0
- package/dist/CanvasimagevalueWidget-Cx-dH8Gc.js +107 -0
- package/dist/CanvasimagevalueWidget-Cx-dH8Gc.js.map +1 -0
- package/dist/CanvasimagevalueWidget-E_NsZ82T.cjs +2 -0
- package/dist/CanvasimagevalueWidget-E_NsZ82T.cjs.map +1 -0
- package/dist/CanvaslabelWidget-BBDuXWfU.cjs +2 -0
- package/dist/CanvaslabelWidget-BBDuXWfU.cjs.map +1 -0
- package/dist/CanvaslabelWidget-CQZCeohU.js +23 -0
- package/dist/CanvaslabelWidget-CQZCeohU.js.map +1 -0
- package/dist/CanvaslabelvalueWidget-CwmYDCjr.js +42 -0
- package/dist/CanvaslabelvalueWidget-CwmYDCjr.js.map +1 -0
- package/dist/CanvaslabelvalueWidget-DAdu7ujn.cjs +2 -0
- package/dist/CanvaslabelvalueWidget-DAdu7ujn.cjs.map +1 -0
- package/dist/CanvaslineWidget-Bv5da1Vy.cjs +2 -0
- package/dist/CanvaslineWidget-Bv5da1Vy.cjs.map +1 -0
- package/dist/CanvaslineWidget-nTP3fJB4.js +28 -0
- package/dist/CanvaslineWidget-nTP3fJB4.js.map +1 -0
- package/dist/CanvaslinevalueWidget-BVfUB96K.cjs +2 -0
- package/dist/CanvaslinevalueWidget-BVfUB96K.cjs.map +1 -0
- package/dist/CanvaslinevalueWidget-C3sJnjLQ.js +44 -0
- package/dist/CanvaslinevalueWidget-C3sJnjLQ.js.map +1 -0
- package/dist/CheckbuttonWidget-5-8YDsQL.js +37 -0
- package/dist/CheckbuttonWidget-5-8YDsQL.js.map +1 -0
- package/dist/CheckbuttonWidget-BGqD-BGc.cjs +2 -0
- package/dist/CheckbuttonWidget-BGqD-BGc.cjs.map +1 -0
- package/dist/ComboboxWidget-DoHMlSAr.cjs +2 -0
- package/dist/ComboboxWidget-DoHMlSAr.cjs.map +1 -0
- package/dist/ComboboxWidget-DzBL8h9f.js +37 -0
- package/dist/ComboboxWidget-DzBL8h9f.js.map +1 -0
- package/dist/CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-BHFhmbuH.cjs +2 -0
- package/dist/CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-BHFhmbuH.cjs.map +1 -0
- package/dist/CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-CHgC5LLL.js +10 -0
- package/dist/CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-CHgC5LLL.js.map +1 -0
- package/dist/CriticalCmdDialog-DLEasFsx.js +270 -0
- package/dist/CriticalCmdDialog-DLEasFsx.js.map +1 -0
- package/dist/CriticalCmdDialog-DoLBrU2k.cjs +2 -0
- package/dist/CriticalCmdDialog-DoLBrU2k.cjs.map +1 -0
- package/dist/DateWidget-CW7Od7lB.js +40 -0
- package/dist/DateWidget-CW7Od7lB.js.map +1 -0
- package/dist/DateWidget-DKZz1J9J.cjs +2 -0
- package/dist/DateWidget-DKZz1J9J.cjs.map +1 -0
- package/dist/DetailsDialog-BvbziA7Y.js +767 -0
- package/dist/DetailsDialog-BvbziA7Y.js.map +1 -0
- package/dist/DetailsDialog-CiuQYvJK.cjs +2 -0
- package/dist/DetailsDialog-CiuQYvJK.cjs.map +1 -0
- package/dist/DynamicWidget-3wHr6Ng-.cjs +2 -0
- package/dist/DynamicWidget-3wHr6Ng-.cjs.map +1 -0
- package/dist/DynamicWidget-gFSYxzvT.js +35 -0
- package/dist/DynamicWidget-gFSYxzvT.js.map +1 -0
- package/dist/FormatvalueWidget-CGpnTqVH.js +44 -0
- package/dist/FormatvalueWidget-CGpnTqVH.js.map +1 -0
- package/dist/FormatvalueWidget-DFrbeKb9.cjs +2 -0
- package/dist/FormatvalueWidget-DFrbeKb9.cjs.map +1 -0
- package/dist/Graph-3rkhFP3G.js +1983 -0
- package/dist/Graph-3rkhFP3G.js.map +1 -0
- package/dist/Graph-C3vGMcos.cjs +2 -0
- package/dist/Graph-C3vGMcos.cjs.map +1 -0
- package/dist/GraphWidget-22NxFa9k.cjs +2 -0
- package/dist/GraphWidget-22NxFa9k.cjs.map +1 -0
- package/dist/GraphWidget-Dycey-mj.js +130 -0
- package/dist/GraphWidget-Dycey-mj.js.map +1 -0
- package/dist/HorizontalWidget-BBeB0eBI.cjs +2 -0
- package/dist/HorizontalWidget-BBeB0eBI.cjs.map +1 -0
- package/dist/HorizontalWidget-D31NRWy5.js +41 -0
- package/dist/HorizontalWidget-D31NRWy5.js.map +1 -0
- package/dist/HorizontalboxWidget-Br8dSVHD.js +38 -0
- package/dist/HorizontalboxWidget-Br8dSVHD.js.map +1 -0
- package/dist/HorizontalboxWidget-DsdzrCJx.cjs +2 -0
- package/dist/HorizontalboxWidget-DsdzrCJx.cjs.map +1 -0
- package/dist/HorizontallineWidget-BCKOQase.cjs +2 -0
- package/dist/HorizontallineWidget-BCKOQase.cjs.map +1 -0
- package/dist/HorizontallineWidget-CbxREBYI.js +11 -0
- package/dist/HorizontallineWidget-CbxREBYI.js.map +1 -0
- package/dist/IframeWidget-CZwsTgvX.cjs +2 -0
- package/dist/IframeWidget-CZwsTgvX.cjs.map +1 -0
- package/dist/IframeWidget-Ctj8OIcG.js +90 -0
- package/dist/IframeWidget-Ctj8OIcG.js.map +1 -0
- package/dist/ImageLoader-BrNrCBvi.js +36 -0
- package/dist/ImageLoader-BrNrCBvi.js.map +1 -0
- package/dist/ImageLoader-D_Gq-KxR.cjs +2 -0
- package/dist/ImageLoader-D_Gq-KxR.cjs.map +1 -0
- package/dist/ImageviewerWidget-DwRPFSLR.cjs +2 -0
- package/dist/ImageviewerWidget-DwRPFSLR.cjs.map +1 -0
- package/dist/ImageviewerWidget-XrsqxmLo.js +37 -0
- package/dist/ImageviewerWidget-XrsqxmLo.js.map +1 -0
- package/dist/InterfacesTab-CLaicsHA.cjs +2 -0
- package/dist/InterfacesTab-CLaicsHA.cjs.map +1 -0
- package/dist/InterfacesTab-DAeNlGlB.js +93 -0
- package/dist/InterfacesTab-DAeNlGlB.js.map +1 -0
- package/dist/LabelWidget-C-s8OVmA.cjs +2 -0
- package/dist/LabelWidget-C-s8OVmA.cjs.map +1 -0
- package/dist/LabelWidget-t7I87dp7.js +48 -0
- package/dist/LabelWidget-t7I87dp7.js.map +1 -0
- package/dist/LabelledWidget-C7TDf92M.js +42 -0
- package/dist/LabelledWidget-C7TDf92M.js.map +1 -0
- package/dist/LabelledWidget-DUpHxc9z.cjs +2 -0
- package/dist/LabelledWidget-DUpHxc9z.cjs.map +1 -0
- package/dist/LabelprogressbarWidget-D6cpayCR.cjs +2 -0
- package/dist/LabelprogressbarWidget-D6cpayCR.cjs.map +1 -0
- package/dist/LabelprogressbarWidget-wwLURt1u.js +43 -0
- package/dist/LabelprogressbarWidget-wwLURt1u.js.map +1 -0
- package/dist/LabelsparklineWidget-B3awLUyP.js +44 -0
- package/dist/LabelsparklineWidget-B3awLUyP.js.map +1 -0
- package/dist/LabelsparklineWidget-CJRnLETe.cjs +2 -0
- package/dist/LabelsparklineWidget-CJRnLETe.cjs.map +1 -0
- package/dist/LabelvalueWidget-Zx_yHCtl.js +58 -0
- package/dist/LabelvalueWidget-Zx_yHCtl.js.map +1 -0
- package/dist/LabelvalueWidget-owiMSCYl.cjs +2 -0
- package/dist/LabelvalueWidget-owiMSCYl.cjs.map +1 -0
- package/dist/LabelvaluedescWidget-BBSBh4vI.js +59 -0
- package/dist/LabelvaluedescWidget-BBSBh4vI.js.map +1 -0
- package/dist/LabelvaluedescWidget-MRmZBUc0.cjs +2 -0
- package/dist/LabelvaluedescWidget-MRmZBUc0.cjs.map +1 -0
- package/dist/LabelvaluelimitsbarWidget-BQ2XYPNE.cjs +2 -0
- package/dist/LabelvaluelimitsbarWidget-BQ2XYPNE.cjs.map +1 -0
- package/dist/LabelvaluelimitsbarWidget-CZueHYWG.js +57 -0
- package/dist/LabelvaluelimitsbarWidget-CZueHYWG.js.map +1 -0
- package/dist/LabelvaluelimitscolumnWidget-BTvzyQMq.js +47 -0
- package/dist/LabelvaluelimitscolumnWidget-BTvzyQMq.js.map +1 -0
- package/dist/LabelvaluelimitscolumnWidget-DNmVpU8J.cjs +2 -0
- package/dist/LabelvaluelimitscolumnWidget-DNmVpU8J.cjs.map +1 -0
- package/dist/LabelvaluerangebarWidget-BhYTBgDq.js +79 -0
- package/dist/LabelvaluerangebarWidget-BhYTBgDq.js.map +1 -0
- package/dist/LabelvaluerangebarWidget-DL0U8cbw.cjs +2 -0
- package/dist/LabelvaluerangebarWidget-DL0U8cbw.cjs.map +1 -0
- package/dist/Layout-Bh7VzCZd.js +14 -0
- package/dist/Layout-Bh7VzCZd.js.map +1 -0
- package/dist/Layout-DRL0EeSA.cjs +2 -0
- package/dist/Layout-DRL0EeSA.cjs.map +1 -0
- package/dist/LedWidget-B8rjFe1b.cjs +2 -0
- package/dist/LedWidget-B8rjFe1b.cjs.map +1 -0
- package/dist/LedWidget-CxJjJBBS.js +71 -0
- package/dist/LedWidget-CxJjJBBS.js.map +1 -0
- package/dist/LimitsbarWidget-CYIH8fdp.cjs +2 -0
- package/dist/LimitsbarWidget-CYIH8fdp.cjs.map +1 -0
- package/dist/LimitsbarWidget-Djui0IpK.js +69 -0
- package/dist/LimitsbarWidget-Djui0IpK.js.map +1 -0
- package/dist/LimitscolorWidget-CS0wpX9A.cjs +2 -0
- package/dist/LimitscolorWidget-CS0wpX9A.cjs.map +1 -0
- package/dist/LimitscolorWidget-DdmvKzmx.js +63 -0
- package/dist/LimitscolorWidget-DdmvKzmx.js.map +1 -0
- package/dist/LimitscolumnWidget-C_UW6xKq.cjs +2 -0
- package/dist/LimitscolumnWidget-C_UW6xKq.cjs.map +1 -0
- package/dist/LimitscolumnWidget-Cc19IEjq.js +66 -0
- package/dist/LimitscolumnWidget-Cc19IEjq.js.map +1 -0
- package/dist/LinegraphWidget-8td_PqgU.cjs +2 -0
- package/dist/LinegraphWidget-8td_PqgU.cjs.map +1 -0
- package/dist/LinegraphWidget-BtieJxeL.js +39 -0
- package/dist/LinegraphWidget-BtieJxeL.js.map +1 -0
- package/dist/MatrixbycolumnsWidget-CGOeCNW2.cjs +2 -0
- package/dist/MatrixbycolumnsWidget-CGOeCNW2.cjs.map +1 -0
- package/dist/MatrixbycolumnsWidget-DnExVRF8.js +56 -0
- package/dist/MatrixbycolumnsWidget-DnExVRF8.js.map +1 -0
- package/dist/MicroservicesTab-IbTmbPxO.js +268 -0
- package/dist/MicroservicesTab-IbTmbPxO.js.map +1 -0
- package/dist/MicroservicesTab-uMC8NebS.cjs +2 -0
- package/dist/MicroservicesTab-uMC8NebS.cjs.map +1 -0
- package/dist/OutputDialog-B4Q0QMJ1.cjs +2 -0
- package/dist/OutputDialog-B4Q0QMJ1.cjs.map +1 -0
- package/dist/OutputDialog-Ci5OT_fH.js +245 -0
- package/dist/OutputDialog-Ci5OT_fH.js.map +1 -0
- package/dist/PackagesTab-BX8YP3H1.js +332 -0
- package/dist/PackagesTab-BX8YP3H1.js.map +1 -0
- package/dist/PackagesTab-eYbk2vw7.cjs +2 -0
- package/dist/PackagesTab-eYbk2vw7.cjs.map +1 -0
- package/dist/PluginsTab-Ck3DvEGm.cjs +6 -0
- package/dist/PluginsTab-Ck3DvEGm.cjs.map +1 -0
- package/dist/PluginsTab-Ds3jk64b.js +599 -0
- package/dist/PluginsTab-Ds3jk64b.js.map +1 -0
- package/dist/ProgressbarWidget-CUIAYySg.cjs +2 -0
- package/dist/ProgressbarWidget-CUIAYySg.cjs.map +1 -0
- package/dist/ProgressbarWidget-DIfqhHRE.js +46 -0
- package/dist/ProgressbarWidget-DIfqhHRE.js.map +1 -0
- package/dist/RadiobuttonWidget-Cjk1JAP_.cjs +2 -0
- package/dist/RadiobuttonWidget-Cjk1JAP_.cjs.map +1 -0
- package/dist/RadiobuttonWidget-QzIkNP7m.js +34 -0
- package/dist/RadiobuttonWidget-QzIkNP7m.js.map +1 -0
- package/dist/RadiogroupWidget-B4lkYWaC.cjs +2 -0
- package/dist/RadiogroupWidget-B4lkYWaC.cjs.map +1 -0
- package/dist/RadiogroupWidget-Ci9sCX39.js +48 -0
- package/dist/RadiogroupWidget-Ci9sCX39.js.map +1 -0
- package/dist/RangebarWidget-CN0YuHqy.js +67 -0
- package/dist/RangebarWidget-CN0YuHqy.js.map +1 -0
- package/dist/RangebarWidget-nl0rzj93.cjs +2 -0
- package/dist/RangebarWidget-nl0rzj93.cjs.map +1 -0
- package/dist/RedisTab-CVimDkIE.js +135 -0
- package/dist/RedisTab-CVimDkIE.js.map +1 -0
- package/dist/RedisTab-DhS4GHDj.cjs +2 -0
- package/dist/RedisTab-DhS4GHDj.cjs.map +1 -0
- package/dist/RollupWidget-Bgudi_bt.cjs +2 -0
- package/dist/RollupWidget-Bgudi_bt.cjs.map +1 -0
- package/dist/RollupWidget-y4jBtJB2.js +83 -0
- package/dist/RollupWidget-y4jBtJB2.js.map +1 -0
- package/dist/RoutersTab-CzO10cVP.cjs +2 -0
- package/dist/RoutersTab-CzO10cVP.cjs.map +1 -0
- package/dist/RoutersTab-Dki_66av.js +95 -0
- package/dist/RoutersTab-Dki_66av.js.map +1 -0
- package/dist/ScriptChooser-BNm_zXxX.cjs +2 -0
- package/dist/ScriptChooser-BNm_zXxX.cjs.map +1 -0
- package/dist/ScriptChooser-l5i8c8KP.js +199 -0
- package/dist/ScriptChooser-l5i8c8KP.js.map +1 -0
- package/dist/ScrollwindowWidget-BIiV7xwi.cjs +2 -0
- package/dist/ScrollwindowWidget-BIiV7xwi.cjs.map +1 -0
- package/dist/ScrollwindowWidget-CBzYk4Y3.js +45 -0
- package/dist/ScrollwindowWidget-CBzYk4Y3.js.map +1 -0
- package/dist/SecretsTab-BSzFZ81X.cjs +2 -0
- package/dist/SecretsTab-BSzFZ81X.cjs.map +1 -0
- package/dist/SecretsTab-BjviaTxh.js +202 -0
- package/dist/SecretsTab-BjviaTxh.js.map +1 -0
- package/dist/SettingsTab-Bo_dYXgb.js +1382 -0
- package/dist/SettingsTab-Bo_dYXgb.js.map +1 -0
- package/dist/SettingsTab-DH8LAAoG.cjs +3 -0
- package/dist/SettingsTab-DH8LAAoG.cjs.map +1 -0
- package/dist/SignalWidget-CvZkvejy.cjs +2 -0
- package/dist/SignalWidget-CvZkvejy.cjs.map +1 -0
- package/dist/SignalWidget-DQ5Uc2uV.js +66 -0
- package/dist/SignalWidget-DQ5Uc2uV.js.map +1 -0
- package/dist/SimpleTextDialog-CheuP_ls.js +108 -0
- package/dist/SimpleTextDialog-CheuP_ls.js.map +1 -0
- package/dist/SimpleTextDialog-DmeNMMCR.cjs +2 -0
- package/dist/SimpleTextDialog-DmeNMMCR.cjs.map +1 -0
- package/dist/SpacerWidget-6rsc_dSM.js +19 -0
- package/dist/SpacerWidget-6rsc_dSM.js.map +1 -0
- package/dist/SpacerWidget-BBJR6HBQ.cjs +2 -0
- package/dist/SpacerWidget-BBJR6HBQ.cjs.map +1 -0
- package/dist/SparklineWidget-BxBLnjAO.cjs +2 -0
- package/dist/SparklineWidget-BxBLnjAO.cjs.map +1 -0
- package/dist/SparklineWidget-CZtvu2ss.js +48 -0
- package/dist/SparklineWidget-CZtvu2ss.js.map +1 -0
- package/dist/TabbookWidget-DNALU0jl.js +66 -0
- package/dist/TabbookWidget-DNALU0jl.js.map +1 -0
- package/dist/TabbookWidget-DyFQnA10.cjs +2 -0
- package/dist/TabbookWidget-DyFQnA10.cjs.map +1 -0
- package/dist/TargetsTab-Cd8U1aN_.js +129 -0
- package/dist/TargetsTab-Cd8U1aN_.js.map +1 -0
- package/dist/TargetsTab-DMiOliqg.cjs +2 -0
- package/dist/TargetsTab-DMiOliqg.cjs.map +1 -0
- package/dist/TextBoxDialog-DvUf3Cak.cjs +2 -0
- package/dist/TextBoxDialog-DvUf3Cak.cjs.map +1 -0
- package/dist/TextBoxDialog-fHkDTtzI.js +110 -0
- package/dist/TextBoxDialog-fHkDTtzI.js.map +1 -0
- package/dist/TextboxWidget-5hqPj74D.js +93 -0
- package/dist/TextboxWidget-5hqPj74D.js.map +1 -0
- package/dist/TextboxWidget-D6lW_dsU.cjs +2 -0
- package/dist/TextboxWidget-D6lW_dsU.cjs.map +1 -0
- package/dist/TextfieldWidget-Df0ANSiU.js +37 -0
- package/dist/TextfieldWidget-Df0ANSiU.js.map +1 -0
- package/dist/TextfieldWidget-iHN7-fyF.cjs +2 -0
- package/dist/TextfieldWidget-iHN7-fyF.cjs.map +1 -0
- package/dist/TimeWidget-C3NZqTEG.cjs +2 -0
- package/dist/TimeWidget-C3NZqTEG.cjs.map +1 -0
- package/dist/TimeWidget-C6XQMUG2.js +40 -0
- package/dist/TimeWidget-C6XQMUG2.js.map +1 -0
- package/dist/TitleWidget-B9SPUlbW.js +26 -0
- package/dist/TitleWidget-B9SPUlbW.js.map +1 -0
- package/dist/TitleWidget-CWZs33c4.cjs +2 -0
- package/dist/TitleWidget-CWZs33c4.cjs.map +1 -0
- package/dist/ToolsTab-CUpUmkZL.cjs +7 -0
- package/dist/ToolsTab-CUpUmkZL.cjs.map +1 -0
- package/dist/ToolsTab-Cgpb2nAW.js +1521 -0
- package/dist/ToolsTab-Cgpb2nAW.js.map +1 -0
- package/dist/TopBar-DuXL27iD.cjs +2 -0
- package/dist/TopBar-DuXL27iD.cjs.map +1 -0
- package/dist/TopBar-F1jHuFan.js +248 -0
- package/dist/TopBar-F1jHuFan.js.map +1 -0
- package/dist/UpgradeToEnterpriseDialog-DVcAH30Y.js +95 -0
- package/dist/UpgradeToEnterpriseDialog-DVcAH30Y.js.map +1 -0
- package/dist/UpgradeToEnterpriseDialog-DfIKahNK.cjs +2 -0
- package/dist/UpgradeToEnterpriseDialog-DfIKahNK.cjs.map +1 -0
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-DJX55UPj.cjs +1417 -0
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-DJX55UPj.cjs.map +1 -0
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-iq-jp8dD.js +26941 -0
- package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-iq-jp8dD.js.map +1 -0
- package/dist/VWidget-C2x_zSC2.cjs +2 -0
- package/dist/VWidget-C2x_zSC2.cjs.map +1 -0
- package/dist/VWidget-C4spAawK.js +323 -0
- package/dist/VWidget-C4spAawK.js.map +1 -0
- package/dist/ValueWidget-D4RrYVEK.js +116 -0
- package/dist/ValueWidget-D4RrYVEK.js.map +1 -0
- package/dist/ValueWidget-Do3Yn47P.cjs +2 -0
- package/dist/ValueWidget-Do3Yn47P.cjs.map +1 -0
- package/dist/ValuelimitsbarWidget-Bc9_Vj_f.js +41 -0
- package/dist/ValuelimitsbarWidget-Bc9_Vj_f.js.map +1 -0
- package/dist/ValuelimitsbarWidget-DJuh7FOs.cjs +2 -0
- package/dist/ValuelimitsbarWidget-DJuh7FOs.cjs.map +1 -0
- package/dist/ValuelimitscolumnWidget-BFpG-H7v.cjs +2 -0
- package/dist/ValuelimitscolumnWidget-BFpG-H7v.cjs.map +1 -0
- package/dist/ValuelimitscolumnWidget-DHKIL7sf.js +40 -0
- package/dist/ValuelimitscolumnWidget-DHKIL7sf.js.map +1 -0
- package/dist/ValuerangebarWidget-BlZSaiXo.cjs +2 -0
- package/dist/ValuerangebarWidget-BlZSaiXo.cjs.map +1 -0
- package/dist/ValuerangebarWidget-CecQRIok.js +65 -0
- package/dist/ValuerangebarWidget-CecQRIok.js.map +1 -0
- package/dist/VerticalWidget--8UErB4q.cjs +2 -0
- package/dist/VerticalWidget--8UErB4q.cjs.map +1 -0
- package/dist/VerticalWidget-D8jUFxjS.js +40 -0
- package/dist/VerticalWidget-D8jUFxjS.js.map +1 -0
- package/dist/VerticalboxWidget-B4eGUSYH.js +37 -0
- package/dist/VerticalboxWidget-B4eGUSYH.js.map +1 -0
- package/dist/VerticalboxWidget-cxHq1WKQ.cjs +2 -0
- package/dist/VerticalboxWidget-cxHq1WKQ.cjs.map +1 -0
- package/dist/Widget-DNf52jRQ.cjs +2 -0
- package/dist/Widget-DNf52jRQ.cjs.map +1 -0
- package/dist/Widget-fRCERxGf.js +197 -0
- package/dist/Widget-fRCERxGf.js.map +1 -0
- package/dist/addMonths-BtG7uZLJ.js +19 -0
- package/dist/addMonths-BtG7uZLJ.js.map +1 -0
- package/dist/addMonths-n1tnl3ab.cjs +2 -0
- package/dist/addMonths-n1tnl3ab.cjs.map +1 -0
- package/dist/components.cjs +7 -0
- package/dist/components.cjs.map +1 -0
- package/dist/components.js +2973 -0
- package/dist/components.js.map +1 -0
- package/dist/fileIcon-BduOQcTc.cjs +2 -0
- package/dist/fileIcon-BduOQcTc.cjs.map +1 -0
- package/dist/fileIcon-DqRHb1_Z.js +22 -0
- package/dist/fileIcon-DqRHb1_Z.js.map +1 -0
- package/dist/format-B22VpiOS.cjs +2 -0
- package/dist/format-B22VpiOS.cjs.map +1 -0
- package/dist/format-CVeawcIv.js +1295 -0
- package/dist/format-CVeawcIv.js.map +1 -0
- package/dist/getDefaultOptions-Batab9o8.cjs +2 -0
- package/dist/getDefaultOptions-Batab9o8.cjs.map +1 -0
- package/dist/getDefaultOptions-BhSDk-Jo.js +8 -0
- package/dist/getDefaultOptions-BhSDk-Jo.js.map +1 -0
- package/dist/icons/status-dark.png +0 -0
- package/dist/icons/status-dark.xcf +0 -0
- package/dist/icons/status-light.png +0 -0
- package/dist/icons.cjs +2 -0
- package/dist/icons.cjs.map +1 -0
- package/dist/icons.js +157 -0
- package/dist/icons.js.map +1 -0
- package/dist/index-Bz_jHTkl.cjs +7 -0
- package/dist/index-Bz_jHTkl.cjs.map +1 -0
- package/dist/index-CFQnWdPA.js +1705 -0
- package/dist/index-CFQnWdPA.js.map +1 -0
- package/dist/parse-DnkEsW-3.js +1603 -0
- package/dist/parse-DnkEsW-3.js.map +1 -0
- package/dist/parse-DwfgQboe.cjs +2 -0
- package/dist/parse-DwfgQboe.cjs.map +1 -0
- package/dist/plugins.cjs +9 -0
- package/dist/plugins.cjs.map +1 -0
- package/dist/plugins.js +772 -0
- package/dist/plugins.js.map +1 -0
- package/dist/timeFilters-8SaYvcH0.cjs +2 -0
- package/dist/timeFilters-8SaYvcH0.cjs.map +1 -0
- package/dist/timeFilters-CRYpYDdf.js +622 -0
- package/dist/timeFilters-CRYpYDdf.js.map +1 -0
- package/dist/tools/admin.cjs +13 -0
- package/dist/tools/admin.cjs.map +1 -0
- package/dist/tools/admin.js +1944 -0
- package/dist/tools/admin.js.map +1 -0
- package/dist/tools/base.cjs +2 -0
- package/dist/tools/base.cjs.map +1 -0
- package/dist/tools/base.js +1683 -0
- package/dist/tools/base.js.map +1 -0
- package/dist/tools/calendar.cjs +2 -0
- package/dist/tools/calendar.cjs.map +1 -0
- package/dist/tools/calendar.js +1586 -0
- package/dist/tools/calendar.js.map +1 -0
- package/dist/util.cjs +2 -0
- package/dist/util.cjs.map +1 -0
- package/dist/util.js +9 -0
- package/dist/util.js.map +1 -0
- package/dist/vue-common.css +1 -0
- package/dist/widgets.cjs +2 -0
- package/dist/widgets.cjs.map +1 -0
- package/dist/widgets.js +132 -0
- package/dist/widgets.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin.js","sources":["../../src/tools/admin/DownloadDialog.vue","../../src/tools/admin/EditDialog.vue","../../src/tools/admin/ModifiedPluginDialog.vue","../../src/tools/admin/tabs/index.js","../../src/tools/admin/OpenC3Admin.vue","../../../openc3-cosmos-ace-diff/dist/ace-diff.min.js","../../src/tools/admin/PluginDialog.vue"],"sourcesContent":["<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <v-dialog v-model=\"show\" width=\"600\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span> Download Gems </span>\n <v-spacer />\n </v-toolbar>\n <v-card-text>\n <div class=\"pa-3\">\n <v-row class=\"my-2\"> Select a download option </v-row>\n <v-row>\n <v-col>\n <div class=\"px-2\">\n <v-btn\n @click=\"searchGithub\"\n block\n data-test=\"searchGithub\"\n color=\"primary\"\n :disabled=\"disableSearch\"\n >\n Github\n <v-icon end theme=\"dark\"> mdi-github </v-icon>\n </v-btn>\n </div>\n </v-col>\n </v-row>\n <!---\n <v-row>\n <v-col>\n <div class=\"px-2\">\n <v-btn\n @click=\"searchRuby\"\n block\n data-test=\"searchRuby\"\n color=\"primary\"\n :disabled=\"disableSearch\"\n >\n RubyGems\n <v-icon right dark> mdi-heart </v-icon>\n </v-btn>\n </div>\n </v-col>\n </v-row>\n --->\n <v-row class=\"mt-5\"> Community Gems </v-row>\n <div class=\"mt-4\" v-if=\"listData.length < 1\">\n <v-row class=\"mx-2\">\n <span> I’m sorry, Dave. No gems available.... </span>\n </v-row>\n </div>\n <div class=\"mt-4\" v-else>\n <div v-for=\"(data, index) in listData\" :key=\"index\">\n <v-list-item>\n <v-list-item-title>{{ data.name }}</v-list-item-title>\n\n <v-list-item icon>\n <div v-if=\"activeDownload\">\n <v-progress-circular indeterminate color=\"primary\" />\n </div>\n <div v-else>\n <v-tooltip location=\"top\">\n <template v-slot:activator=\"{ props }\">\n <v-icon\n v-bind=\"props\"\n @click=\"downloadGem(data)\"\n :disabled=\"activeDownload\"\n >\n mdi-cloud-download\n </v-icon>\n </template>\n <span>Download Gem</span>\n </v-tooltip>\n </div>\n </v-list-item>\n </v-list-item>\n <v-divider v-if=\"index < listData.length - 1\" :key=\"index\" />\n </div>\n </div>\n </div>\n </v-card-text>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\n// Directly use axios since we need no authentication or scope\nimport axios from 'axios'\n\nexport default {\n props: {\n modelValue: Boolean,\n },\n data() {\n return {\n url: '',\n type: null,\n response: null,\n activeDownload: false,\n disableSearch: false,\n expanded: [],\n }\n },\n computed: {\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n listData: function () {\n if (!this.response) return []\n if (this.type === 'github') {\n return this.parseGithub()\n } else {\n return this.parseRuby()\n }\n },\n },\n methods: {\n parseGithub: function () {\n const gemRegEx = /\\w+.gem/\n return this.response.tree\n .filter((f) => gemRegEx.exec(f.path))\n .map((f) => {\n return {\n name: f.path,\n url: `https://raw.github.com/OpenC3/openc3-tools/main/${f.path}`,\n }\n })\n },\n getResponse: function () {\n this.disableSearch = true\n axios.get(this.url).then((response) => {\n this.response = response.data\n })\n setTimeout(() => {\n this.disableSearch = false\n }, 10000)\n },\n searchGithub: function () {\n this.type = 'github'\n this.url =\n 'https://api.github.com/repos/OpenC3/openc3-tools/git/trees/main?recursive=1'\n this.getResponse()\n },\n downloadGem: function (gem) {\n const link = document.createElement('a')\n link.href = gem.url\n link.setAttribute('download', gem.name)\n link.click()\n link.remove()\n },\n },\n}\n</script>\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <v-dialog :persistent=\"!readonly\" v-model=\"show\" width=\"80vw\">\n <v-card>\n <form v-on:submit.prevent=\"submit\">\n <v-toolbar height=\"24\">\n <v-spacer />\n <span v-text=\"title\" />\n <v-spacer />\n <div class=\"mx-2\">\n <v-tooltip location=\"top\">\n <template v-slot:activator=\"{ props }\">\n <div v-bind=\"props\">\n <v-icon data-test=\"downloadIcon\" @click=\"download\">\n mdi-download\n </v-icon>\n </div>\n </template>\n <span> Download </span>\n </v-tooltip>\n </div>\n </v-toolbar>\n\n <v-card-text>\n <div class=\"pa-3\">\n <div v-if=\"!readonly\">\n <v-row class=\"mt-3\"> Upload a file. </v-row>\n <v-row no-gutters align=\"center\">\n <v-col cols=\"3\">\n <v-btn\n block\n color=\"success\"\n @click=\"loadFile\"\n :disabled=\"!file || loadingFile || readonly\"\n :loading=\"loadingFile\"\n data-test=\"editScreenLoadBtn\"\n >\n Load\n <template v-slot:loader>\n <span>Loading...</span>\n </template>\n </v-btn>\n </v-col>\n <v-col cols=\"9\">\n <v-file-input\n v-model=\"file\"\n accept=\".json\"\n label=\"Click to select .json file.\"\n :disabled=\"readonly\"\n />\n </v-col>\n </v-row>\n </div>\n <v-row no-gutters>\n <pre class=\"editor\" ref=\"editor\"></pre>\n </v-row>\n <v-row class=\"my-3\">\n <span class=\"text-red\" v-show=\"error\" v-text=\"error\" />\n </v-row>\n <v-row>\n <v-spacer />\n <v-btn\n @click.prevent=\"close\"\n variant=\"outlined\"\n class=\"mx-2\"\n data-test=\"editCancelBtn\"\n >\n Cancel\n </v-btn>\n <v-btn\n v-if=\"!readonly\"\n class=\"mx-2\"\n color=\"primary\"\n type=\"submit\"\n data-test=\"editSubmitBtn\"\n :disabled=\"!!error || readonly\"\n >\n Save\n </v-btn>\n </v-row>\n </div>\n </v-card-text>\n </form>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nimport * as ace from 'ace-builds'\nimport 'ace-builds/src-min-noconflict/mode-ruby'\nimport 'ace-builds/src-min-noconflict/mode-json'\nimport 'ace-builds/src-min-noconflict/theme-twilight'\nimport 'ace-builds/src-min-noconflict/ext-language_tools'\nimport 'ace-builds/src-min-noconflict/ext-searchbox'\n\nexport default {\n props: {\n content: {\n type: String,\n required: true,\n },\n type: String,\n name: String,\n modelValue: Boolean,\n readonly: Boolean,\n },\n data() {\n return {\n editor: null,\n }\n },\n mounted() {\n const openPluginMode = this.buildPluginMode()\n this.editor = ace.edit(this.$refs.editor)\n this.editor.setTheme('ace/theme/twilight')\n this.editor.session.setMode(new openPluginMode())\n this.editor.session.setTabSize(2)\n this.editor.session.setUseWrapMode(true)\n this.editor.$blockScrolling = Infinity\n this.editor.setHighlightActiveLine(false)\n this.editor.setValue(this.content)\n this.editor.clearSelection()\n this.editor.focus()\n if (this.readonly) {\n this.editor.setReadOnly(true)\n }\n },\n beforeUnmount() {\n if (this.editor) {\n this.editor.destroy()\n }\n },\n computed: {\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n title: function () {\n return `${this.type}: ${this.name}`\n },\n error: function () {\n if (this.editor && this.editor.getValue() === '' && !this.file) {\n return 'Input can not be blank.'\n }\n return null\n },\n },\n methods: {\n submit: function () {\n this.$emit('submit', this.editor.getValue())\n this.show = !this.show\n },\n close: function () {\n this.show = !this.show\n },\n download: function () {\n const blob = new Blob([this.editor.getValue()], {\n type: 'text/plain',\n })\n // Make a link and then 'click' on it to start the download\n const link = document.createElement('a')\n link.href = URL.createObjectURL(blob)\n link.setAttribute(\n 'download',\n `${this.type.toLowerCase()}_${this.name.toLowerCase()}.json`,\n )\n link.click()\n },\n buildPluginMode() {\n let oop = ace.require('ace/lib/oop')\n let JsonHighlightRules = ace.require(\n 'ace/mode/json_highlight_rules',\n ).JsonHighlightRules\n\n let MatchingBraceOutdent = ace.require(\n 'ace/mode/matching_brace_outdent',\n ).MatchingBraceOutdent\n let CstyleBehaviour = ace.require(\n 'ace/mode/behaviour/cstyle',\n ).CstyleBehaviour\n let FoldMode = ace.require('ace/mode/folding/ruby').FoldMode\n let Mode = function () {\n this.HighlightRules = JsonHighlightRules\n this.$outdent = new MatchingBraceOutdent()\n this.$behaviour = new CstyleBehaviour()\n this.foldingRules = new FoldMode()\n this.indentKeywords = this.foldingRules.indentKeywords\n }\n let RubyMode = ace.require('ace/mode/ruby').Mode\n oop.inherits(Mode, RubyMode)\n ;(function () {\n this.$id = 'ace/mode/openc3'\n }).call(Mode.prototype)\n return Mode\n },\n },\n}\n</script>\n\n<style scoped>\n.editor {\n height: 50vh;\n width: 75vw;\n position: relative;\n font-size: 16px;\n}\n.v-textarea :deep(textarea) {\n padding: 5px;\n}\n</style>\n","<!--\n# Copyright 2024 OpenC3, Inc.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <v-dialog v-model=\"show\" width=\"600\">\n <v-card>\n <v-toolbar height=\"24\">\n <v-spacer />\n <span> Modified Plugin </span>\n <v-spacer />\n </v-toolbar>\n <v-card-text class=\"pa-3\">\n <div>\n Plugin {{ plugin }} was modified. Would you like to delete the\n existing modified files?\n </div>\n <v-list-item\n lines=\"two\"\n v-for=\"(target, index) in modifiedTargets\"\n :key=\"index\"\n >\n <v-list-item-title>{{ target.name }}</v-list-item-title>\n <v-list-item-subtitle\n v-for=\"(file, itemIndex) in target.files\"\n :key=\"itemIndex\"\n >{{ file }}</v-list-item-subtitle\n >\n </v-list-item>\n <v-checkbox\n v-model=\"deleteModified\"\n label=\"DELETE MODIFIED! THIS CAN NOT BE UNDONE!!!\"\n color=\"error\"\n data-test=\"modified-plugin-delete-checkbox\"\n />\n </v-card-text>\n <v-card-actions class=\"px-2\">\n <v-spacer />\n <v-btn\n variant=\"outlined\"\n data-test=\"modified-plugin-cancel\"\n @click=\"\n () => {\n show = false\n $emit('cancel')\n }\n \"\n >\n Cancel\n </v-btn>\n <v-btn\n variant=\"flat\"\n data-test=\"modified-plugin-submit\"\n @click=\"\n () => {\n show = false\n $emit('submit', deleteModified)\n }\n \"\n >\n Confirm\n </v-btn>\n </v-card-actions>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nimport { Api } from '@openc3/js-common/services'\n\nexport default {\n props: {\n modelValue: Boolean,\n plugin: String,\n targets: Array,\n pluginDelete: Boolean,\n },\n data() {\n return {\n modifiedTargets: [],\n deleteModified: false,\n }\n },\n computed: {\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n },\n created() {\n for (const target of this.targets) {\n Api.get(`/openc3-api/targets/${target.name}/modified_files`).then(\n (response) => {\n if (response.data.length !== 0) {\n // Only push targets which actually have modified files\n this.modifiedTargets.push({\n name: target.name,\n files: response.data,\n })\n }\n },\n )\n }\n },\n}\n</script>\n\n<style scoped></style>\n","/*\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n*/\n\nconst TabsList = [\n {\n displayName: 'Plugins',\n name: 'PluginsTab',\n path: 'plugins',\n component: () => import('./PluginsTab.vue'),\n },\n {\n displayName: 'Targets',\n name: 'TargetsTab',\n path: 'targets',\n component: () => import('./TargetsTab.vue'),\n },\n {\n displayName: 'Interfaces',\n name: 'InterfacesTab',\n path: 'interfaces',\n component: () => import('./InterfacesTab.vue'),\n },\n {\n displayName: 'Routers',\n name: 'RoutersTab',\n path: 'routers',\n component: () => import('./RoutersTab.vue'),\n },\n {\n displayName: 'Microservices',\n name: 'MicroservicesTab',\n path: 'microservices',\n component: () => import('./MicroservicesTab.vue'),\n },\n {\n displayName: 'Packages',\n name: 'PackagesTab',\n path: 'packages',\n component: () => import('./PackagesTab.vue'),\n },\n {\n displayName: 'Tools',\n name: 'ToolsTab',\n path: 'tools',\n component: () => import('./ToolsTab.vue'),\n },\n {\n displayName: 'Redis',\n name: 'RedisTab',\n path: 'redis',\n component: () => import('./RedisTab.vue'),\n },\n {\n displayName: 'Secrets',\n name: 'SecretsTab',\n path: 'secrets',\n component: () => import('./SecretsTab.vue'),\n },\n {\n displayName: 'Settings',\n name: 'SettingsTab',\n path: 'settings',\n component: () => import('./SettingsTab.vue'),\n },\n]\n\nexport { TabsList }\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2022, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <div>\n <top-bar :title=\"title\" />\n <v-card>\n <v-tabs v-model=\"curTab\" fixed-tabs>\n <v-tab v-for=\"(tab, index) in tabs\" :key=\"index\" :to=\"tab.path\">\n {{ tab.displayName }}\n </v-tab>\n </v-tabs>\n <router-view />\n </v-card>\n </div>\n</template>\n\n<script>\nimport { TopBar } from '@/components'\nimport { TabsList } from './tabs'\n\nexport default {\n components: {\n TopBar,\n },\n data() {\n return {\n title: 'Administrator Console',\n curTab: null,\n }\n },\n computed: {\n tabs: function () {\n return TabsList.map((tab) => {\n return {\n displayName: tab.displayName,\n path: { name: tab.name },\n }\n })\n },\n },\n}\n</script>\n","const g=function(){this.Diff_Timeout=1,this.Diff_EditCost=4,this.Match_Threshold=.5,this.Match_Distance=1e3,this.Patch_DeleteThreshold=.5,this.Patch_Margin=4,this.Match_MaxBits=32};g.Diff=function(t,e){this[0]=t,this[1]=e};g.Diff.prototype.length=2;g.Diff.prototype.toString=function(){return this[0]+\",\"+this[1]};g.prototype.diff_main=function(t,e,n,i){typeof i>\"u\"&&(this.Diff_Timeout<=0?i=Number.MAX_VALUE:i=new Date().getTime()+this.Diff_Timeout*1e3);let l=i;if(t==null||e==null)throw new Error(\"Null input. (diff_main)\");if(t==e)return t?[new g.Diff(0,t)]:[];typeof n>\"u\"&&(n=!0);let r=n,s=this.diff_commonPrefix(t,e),o=t.substring(0,s);t=t.substring(s),e=e.substring(s),s=this.diff_commonSuffix(t,e);let h=t.substring(t.length-s);t=t.substring(0,t.length-s),e=e.substring(0,e.length-s);let a=this.diff_compute_(t,e,r,l);return o&&a.unshift(new g.Diff(0,o)),h&&a.push(new g.Diff(0,h)),this.diff_cleanupMerge(a),a};g.prototype.diff_compute_=function(t,e,n,i){let l;if(!t)return[new g.Diff(1,e)];if(!e)return[new g.Diff(-1,t)];let r=t.length>e.length?t:e,s=t.length>e.length?e:t,o=r.indexOf(s);return o!=-1?(l=[new g.Diff(1,r.substring(0,o)),new g.Diff(0,s),new g.Diff(1,r.substring(o+s.length))],t.length>e.length&&(l[0][0]=l[2][0]=-1),l):s.length==1?[new g.Diff(-1,t),new g.Diff(1,e)]:n&&t.length>100&&e.length>100?this.diff_lineMode_(t,e,i):this.diff_bisect_(t,e,i)};g.prototype.diff_lineMode_=function(t,e,n){let i=this.diff_linesToChars_(t,e);t=i.chars1,e=i.chars2;let l=i.lineArray,r=this.diff_main(t,e,!1,n);this.diff_charsToLines_(r,l),this.diff_cleanupSemantic(r),r.push(new g.Diff(0,\"\"));let s=0,o=0,h=0,a=\"\",c=\"\";for(;s<r.length;){switch(r[s][0]){case 1:h++,c+=r[s][1];break;case-1:o++,a+=r[s][1];break;case 0:if(o>=1&&h>=1){r.splice(s-o-h,o+h),s=s-o-h;let f=this.diff_main(a,c,!1,n);for(let u=f.length-1;u>=0;u--)r.splice(s,0,f[u]);s=s+f.length}h=0,o=0,a=\"\",c=\"\";break}s++}return r.pop(),r};g.prototype.diff_bisect_=function(t,e,n){let i=t.length,l=e.length,r=Math.ceil((i+l)/2),s=r,o=2*r,h=new Array(o),a=new Array(o);for(let d=0;d<o;d++)h[d]=-1,a[d]=-1;h[s+1]=0,a[s+1]=0;let c=i-l,f=c%2!=0,u=0,p=0,_=0,D=0;for(let d=0;d<r&&!(new Date().getTime()>n);d++){for(let E=-d+u;E<=d-p;E+=2){let L=s+E,m;E==-d||E!=d&&h[L-1]<h[L+1]?m=h[L+1]:m=h[L-1]+1;let F=m-E;for(;m<i&&F<l&&t.charAt(m)==e.charAt(F);)m++,F++;if(h[L]=m,m>i)p+=2;else if(F>l)u+=2;else if(f){let b=s+c-E;if(b>=0&&b<o&&a[b]!=-1){let w=i-a[b];if(m>=w)return this.diff_bisectSplit_(t,e,m,F,n)}}}for(let E=-d+_;E<=d-D;E+=2){let L=s+E,m;E==-d||E!=d&&a[L-1]<a[L+1]?m=a[L+1]:m=a[L-1]+1;let F=m-E;for(;m<i&&F<l&&t.charAt(i-m-1)==e.charAt(l-F-1);)m++,F++;if(a[L]=m,m>i)D+=2;else if(F>l)_+=2;else if(!f){let b=s+c-E;if(b>=0&&b<o&&h[b]!=-1){let w=h[b],y=s+w-b;if(m=i-m,w>=m)return this.diff_bisectSplit_(t,e,w,y,n)}}}}return[new g.Diff(-1,t),new g.Diff(1,e)]};g.prototype.diff_bisectSplit_=function(t,e,n,i,l){let r=t.substring(0,n),s=e.substring(0,i),o=t.substring(n),h=e.substring(i),a=this.diff_main(r,s,!1,l),c=this.diff_main(o,h,!1,l);return a.concat(c)};g.prototype.diff_linesToChars_=function(t,e){let n=[],i={};n[0]=\"\";function l(h){let a=\"\",c=0,f=-1,u=n.length;for(;f<h.length-1;){f=h.indexOf(`\n`,c),f==-1&&(f=h.length-1);let p=h.substring(c,f+1);(i.hasOwnProperty?i.hasOwnProperty(p):i[p]!==void 0)?a+=String.fromCharCode(i[p]):(u==r&&(p=h.substring(c),f=h.length),a+=String.fromCharCode(u),i[p]=u,n[u++]=p),c=f+1}return a}let r=4e4,s=l(t);r=65535;let o=l(e);return{chars1:s,chars2:o,lineArray:n}};g.prototype.diff_charsToLines_=function(t,e){for(let n=0;n<t.length;n++){let i=t[n][1],l=[];for(let r=0;r<i.length;r++)l[r]=e[i.charCodeAt(r)];t[n][1]=l.join(\"\")}};g.prototype.diff_commonPrefix=function(t,e){if(!t||!e||t.charAt(0)!=e.charAt(0))return 0;let n=0,i=Math.min(t.length,e.length),l=i,r=0;for(;n<l;)t.substring(r,l)==e.substring(r,l)?(n=l,r=n):i=l,l=Math.floor((i-n)/2+n);return l};g.prototype.diff_commonSuffix=function(t,e){if(!t||!e||t.charAt(t.length-1)!=e.charAt(e.length-1))return 0;let n=0,i=Math.min(t.length,e.length),l=i,r=0;for(;n<l;)t.substring(t.length-l,t.length-r)==e.substring(e.length-l,e.length-r)?(n=l,r=n):i=l,l=Math.floor((i-n)/2+n);return l};g.prototype.diff_commonOverlap_=function(t,e){let n=t.length,i=e.length;if(n==0||i==0)return 0;n>i?t=t.substring(n-i):n<i&&(e=e.substring(0,n));let l=Math.min(n,i);if(t==e)return l;let r=0,s=1;for(;;){let o=t.substring(l-s),h=e.indexOf(o);if(h==-1)return r;s+=h,(h==0||t.substring(l-s)==e.substring(0,s))&&(r=s,s++)}};g.prototype.diff_halfMatch_=function(t,e){if(this.Diff_Timeout<=0)return null;let n=t.length>e.length?t:e,i=t.length>e.length?e:t;if(n.length<4||i.length*2<n.length)return null;let l=this;function r(_,D,d){let E=_.substring(d,d+Math.floor(_.length/4)),L=-1,m=\"\",F,b,w,y;for(;(L=D.indexOf(E,L+1))!=-1;){let T=l.diff_commonPrefix(_.substring(d),D.substring(L)),C=l.diff_commonSuffix(_.substring(0,d),D.substring(0,L));m.length<C+T&&(m=D.substring(L-C,L)+D.substring(L,L+T),F=_.substring(0,d-C),b=_.substring(d+T),w=D.substring(0,L-C),y=D.substring(L+T))}return m.length*2>=_.length?[F,b,w,y,m]:null}let s=r(n,i,Math.ceil(n.length/4)),o=r(n,i,Math.ceil(n.length/2)),h;if(!s&&!o)return null;o?s?h=s[4].length>o[4].length?s:o:h=o:h=s;let a,c,f,u;t.length>e.length?(a=h[0],c=h[1],f=h[2],u=h[3]):(f=h[0],u=h[1],a=h[2],c=h[3]);let p=h[4];return[a,c,f,u,p]};g.prototype.diff_cleanupSemantic=function(t){let e=!1,n=[],i=0,l=null,r=0,s=0,o=0,h=0,a=0;for(;r<t.length;)t[r][0]==0?(n[i++]=r,s=h,o=a,h=0,a=0,l=t[r][1]):(t[r][0]==1?h+=t[r][1].length:a+=t[r][1].length,l&&l.length<=Math.max(s,o)&&l.length<=Math.max(h,a)&&(t.splice(n[i-1],0,new g.Diff(-1,l)),t[n[i-1]+1][0]=1,i--,i--,r=i>0?n[i-1]:-1,s=0,o=0,h=0,a=0,l=null,e=!0)),r++;for(e&&this.diff_cleanupMerge(t),this.diff_cleanupSemanticLossless(t),r=1;r<t.length;){if(t[r-1][0]==-1&&t[r][0]==1){let c=t[r-1][1],f=t[r][1],u=this.diff_commonOverlap_(c,f),p=this.diff_commonOverlap_(f,c);u>=p?(u>=c.length/2||u>=f.length/2)&&(t.splice(r,0,new g.Diff(0,f.substring(0,u))),t[r-1][1]=c.substring(0,c.length-u),t[r+1][1]=f.substring(u),r++):(p>=c.length/2||p>=f.length/2)&&(t.splice(r,0,new g.Diff(0,c.substring(0,p))),t[r-1][0]=1,t[r-1][1]=f.substring(0,f.length-p),t[r+1][0]=-1,t[r+1][1]=c.substring(p),r++),r++}r++}};g.prototype.diff_cleanupSemanticLossless=function(t){function e(i,l){if(!i||!l)return 6;let r=i.charAt(i.length-1),s=l.charAt(0),o=r.match(g.nonAlphaNumericRegex_),h=s.match(g.nonAlphaNumericRegex_),a=o&&r.match(g.whitespaceRegex_),c=h&&s.match(g.whitespaceRegex_),f=a&&r.match(g.linebreakRegex_),u=c&&s.match(g.linebreakRegex_),p=f&&i.match(g.blanklineEndRegex_),_=u&&l.match(g.blanklineStartRegex_);return p||_?5:f||u?4:o&&!a&&c?3:a||c?2:o||h?1:0}let n=1;for(;n<t.length-1;){if(t[n-1][0]==0&&t[n+1][0]==0){let i=t[n-1][1],l=t[n][1],r=t[n+1][1],s=this.diff_commonSuffix(i,l);if(s){i[i.length-s]===`\n`&&(s-=1);let f=l.substring(l.length-s);i=i.substring(0,i.length-s),l=f+l.substring(0,l.length-s),r=f+r}let o=i,h=l,a=r,c=e(i,l)+e(l,r);for(;l.charAt(0)===r.charAt(0);){i+=l.charAt(0),l=l.substring(1)+r.charAt(0),r=r.substring(1);let f=e(i,l)+e(l,r);f>=c&&(c=f,o=i,h=l,a=r)}t[n-1][1]!=o&&(o?t[n-1][1]=o:(t.splice(n-1,1),n--),t[n][1]=h,a?t[n+1][1]=a:(t.splice(n+1,1),n--))}n++}};g.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/;g.whitespaceRegex_=/\\s/;g.linebreakRegex_=/[\\r\\n]/;g.blanklineEndRegex_=/\\n\\r?\\n$/;g.blanklineStartRegex_=/^\\r?\\n\\r?\\n/;g.prototype.diff_cleanupEfficiency=function(t){let e=!1,n=[],i=0,l=null,r=0,s=!1,o=!1,h=!1,a=!1;for(;r<t.length;)t[r][0]==0?(t[r][1].length<this.Diff_EditCost&&(h||a)?(n[i++]=r,s=h,o=a,l=t[r][1]):(i=0,l=null),h=a=!1):(t[r][0]==-1?a=!0:h=!0,l&&(s&&o&&h&&a||l.length<this.Diff_EditCost/2&&s+o+h+a==3)&&(t.splice(n[i-1],0,new g.Diff(-1,l)),t[n[i-1]+1][0]=1,i--,l=null,s&&o?(h=a=!0,i=0):(i--,r=i>0?n[i-1]:-1,h=a=!1),e=!0)),r++;e&&this.diff_cleanupMerge(t)};g.prototype.diff_cleanupMerge=function(t){t.push(new g.Diff(0,\"\"));let e=0,n=0,i=0,l=\"\",r=\"\",s;for(;e<t.length;)switch(t[e][0]){case 1:i++,r+=t[e][1],e++;break;case-1:n++,l+=t[e][1],e++;break;case 0:n+i>1?(n!==0&&i!==0&&(s=this.diff_commonPrefix(r,l),s!==0&&(e-n-i>0&&t[e-n-i-1][0]==0?t[e-n-i-1][1]+=r.substring(0,s):(t.splice(0,0,new g.Diff(0,r.substring(0,s))),e++),r=r.substring(s),l=l.substring(s)),s=this.diff_commonSuffix(r,l),s!==0&&(t[e][1]=r.substring(r.length-s)+t[e][1],r=r.substring(0,r.length-s),l=l.substring(0,l.length-s))),e-=n+i,t.splice(e,n+i),l.length&&(t.splice(e,0,new g.Diff(-1,l)),e++),r.length&&(t.splice(e,0,new g.Diff(1,r)),e++),e++):e!==0&&t[e-1][0]==0?(t[e-1][1]+=t[e][1],t.splice(e,1)):e++,i=0,n=0,l=\"\",r=\"\";break}t[t.length-1][1]===\"\"&&t.pop();let o=!1;for(e=1;e<t.length-1;)t[e-1][0]==0&&t[e+1][0]==0&&(t[e][1].substring(t[e][1].length-t[e-1][1].length)==t[e-1][1]?(t[e][1]=t[e-1][1]+t[e][1].substring(0,t[e][1].length-t[e-1][1].length),t[e+1][1]=t[e-1][1]+t[e+1][1],t.splice(e-1,1),o=!0):t[e][1].substring(0,t[e+1][1].length)==t[e+1][1]&&(t[e-1][1]+=t[e+1][1],t[e][1]=t[e][1].substring(t[e+1][1].length)+t[e+1][1],t.splice(e+1,1),o=!0)),e++;o&&this.diff_cleanupMerge(t)};g.prototype.diff_cleanupSplitSurrogates=function(t){let e;for(let n=0;n<t.length;n++){let i=t[n],l=i[1][0],r=i[1][i[1].length-1];if(i[1].length===0){t.splice(n--,1);continue}if(r&&this.isHighSurrogate(r)&&(e=r,i[1]=i[1].slice(0,-1)),e&&l&&this.isHighSurrogate(e)&&this.isLowSurrogate(l)&&(i[1]=e+i[1]),i[1].length===0){t.splice(n--,1);continue}}return t};g.prototype.isHighSurrogate=function(t){let e=t.charCodeAt(0);return e>=55296&&e<=56319};g.prototype.isLowSurrogate=function(t){let e=t.charCodeAt(0);return e>=56320&&e<=57343};g.prototype.digit16=function(t){switch(t){case\"0\":return 0;case\"1\":return 1;case\"2\":return 2;case\"3\":return 3;case\"4\":return 4;case\"5\":return 5;case\"6\":return 6;case\"7\":return 7;case\"8\":return 8;case\"9\":return 9;case\"A\":case\"a\":return 10;case\"B\":case\"b\":return 11;case\"C\":case\"c\":return 12;case\"D\":case\"d\":return 13;case\"E\":case\"e\":return 14;case\"F\":case\"f\":return 15;default:throw new Error(\"Invalid hex-code\")}};g.prototype.decodeURI=function(t){try{return decodeURI(t)}catch{let n=0,i=\"\";for(;n<t.length;){if(t[n]!==\"%\"){i+=t[n++];continue}let l=(this.digit16(t[n+1])<<4)+this.digit16(t[n+2]);if(!(l&128)){i+=String.fromCharCode(l),n+=3;continue}if(t[n+3]!==\"%\")throw new URIError(\"URI malformed\");let r=(this.digit16(t[n+4])<<4)+this.digit16(t[n+5]);if((r&192)!==128)throw new URIError(\"URI malformed\");if(r=r&63,(l&224)===192){i+=String.fromCharCode((l&31)<<6|r),n+=6;continue}if(t[n+6]!==\"%\")throw new URIError(\"URI malformed\");let s=(this.digit16(t[n+7])<<4)+this.digit16(t[n+8]);if((s&192)!==128)throw new URIError(\"URI malformed\");if(s=s&63,(l&240)===224){i+=String.fromCharCode((l&15)<<12|r<<6|s),n+=9;continue}if(t[n+9]!==\"%\")throw new URIError(\"URI malformed\");let o=(this.digit16(t[n+10])<<4)+this.digit16(t[n+11]);if((o&192)!==128)throw new URIError(\"URI malformed\");if(o=o&63,(l&248)===240){let h=(l&7)<<18|r<<12|s<<6|o;if(h>=65536&&h<=1114111){i+=String.fromCharCode((h&65535)>>>10&1023|55296),i+=String.fromCharCode(56320|h&65535&1023),n+=12;continue}}throw new URIError(\"URI malformed\")}return i}};g.prototype.diff_xIndex=function(t,e){let n=0,i=0,l=0,r=0,s;for(s=0;s<t.length&&(t[s][0]!==1&&(n+=t[s][1].length),t[s][0]!==-1&&(i+=t[s][1].length),!(n>e));s++)l=n,r=i;return t.length!=s&&t[s][0]===-1?r:r+(e-l)};g.prototype.diff_prettyHtml=function(t){t=this.diff_cleanupSplitSurrogates(t);let e=[],n=/&/g,i=/</g,l=/>/g,r=/\\n/g;for(let s=0;s<t.length;s++){let o=t[s][0],a=t[s][1].replace(n,\"&\").replace(i,\"<\").replace(l,\">\").replace(r,\"¶<br>\");switch(o){case 1:e[s]='<ins style=\"background:#e6ffe6;\">'+a+\"</ins>\";break;case-1:e[s]='<del style=\"background:#ffe6e6;\">'+a+\"</del>\";break;case 0:e[s]=\"<span>\"+a+\"</span>\";break}}return e.join(\"\")};g.prototype.diff_text1=function(t){let e=[];for(let n=0;n<t.length;n++)t[n][0]!==1&&(e[n]=t[n][1]);return e.join(\"\")};g.prototype.diff_text2=function(t){let e=[];for(let n=0;n<t.length;n++)t[n][0]!==-1&&(e[n]=t[n][1]);return e.join(\"\")};g.prototype.diff_levenshtein=function(t){let e=0,n=0,i=0;for(let l=0;l<t.length;l++){let r=t[l][0],s=t[l][1];switch(r){case 1:n+=s.length;break;case-1:i+=s.length;break;case 0:e+=Math.max(n,i),n=0,i=0;break}}return e+=Math.max(n,i),e};g.prototype.diff_toDelta=function(t){t=this.diff_cleanupSplitSurrogates(t);let e=[];for(let n=0;n<t.length;n++)switch(t[n][0]){case 1:e[n]=\"+\"+encodeURI(t[n][1]);break;case-1:e[n]=\"-\"+t[n][1].length;break;case 0:e[n]=\"=\"+t[n][1].length;break}return e.join(\"\t\").replace(/%20/g,\" \")};g.prototype.diff_fromDelta=function(t,e){let n=0,i=\"\",l=[],r=0,s=0,o=e.split(/\\t/g);for(let h=0;h<o.length;h++){let a=o[h].substring(1);switch(o[h].charAt(0)){case\"+\":try{l[r++]=new g.Diff(1,this.decodeURI(a))}catch{throw new Error(\"Illegal escape in diff_fromDelta: \"+a)}break;case\"-\":case\"=\":if(n=parseInt(a,10),isNaN(n)||n<0)throw new Error(\"Invalid number in diff_fromDelta: \"+a);i=t.substring(s,s+=n),o[h].charAt(0)==\"=\"?l[r++]=new g.Diff(0,i):l[r++]=new g.Diff(-1,i);break;default:if(o[h])throw new Error(\"Invalid diff operation in diff_fromDelta: \"+o[h])}}if(s!=t.length)throw new Error(\"Delta length (\"+s+\") does not equal source text length (\"+t.length+\").\");return l};g.prototype.match_main=function(t,e,n){if(t==null||e==null||n==null)throw new Error(\"Null input. (match_main)\");return n=Math.max(0,Math.min(n,t.length)),t==e?0:t.length?t.substring(n,n+e.length)==e?n:this.match_bitap_(t,e,n):-1};g.prototype.match_bitap_=function(t,e,n){if(e.length>this.Match_MaxBits)throw new Error(\"Pattern too long for this browser.\");let i=this.match_alphabet_(e),l=this;function r(p,_){let D=p/e.length,d=Math.abs(n-_);return l.Match_Distance?D+d/l.Match_Distance:d?1:D}let s=this.Match_Threshold,o=t.indexOf(e,n);o!=-1&&(s=Math.min(r(0,o),s),o=t.lastIndexOf(e,n+e.length),o!=-1&&(s=Math.min(r(0,o),s)));let h=1<<e.length-1;o=-1;let a,c,f=e.length+t.length,u;for(let p=0;p<e.length;p++){for(a=0,c=f;a<c;)r(p,n+c)<=s?a=c:f=c,c=Math.floor((f-a)/2+a);f=c;let _=Math.max(1,n-c+1),D=Math.min(n+c,t.length)+e.length,d=Array(D+2);d[D+1]=(1<<p)-1;for(let E=D;E>=_;E--){let L=i[t.charAt(E-1)];if(p===0?d[E]=(d[E+1]<<1|1)&L:d[E]=(d[E+1]<<1|1)&L|((u[E+1]|u[E])<<1|1)|u[E+1],d[E]&h){let m=r(p,E-1);if(m<=s)if(s=m,o=E-1,o>n)_=Math.max(1,2*n-o);else break}}if(r(p+1,n)>s)break;u=d}return o};g.prototype.match_alphabet_=function(t){let e={};for(let n=0;n<t.length;n++)e[t.charAt(n)]=0;for(let n=0;n<t.length;n++)e[t.charAt(n)]|=1<<t.length-n-1;return e};g.prototype.patch_addContext_=function(t,e){if(e.length==0)return;if(t.start2===null)throw Error(\"patch not initialized\");let n=e.substring(t.start2,t.start2+t.length1),i=0;for(;e.indexOf(n)!=e.lastIndexOf(n)&&n.length<this.Match_MaxBits-this.Patch_Margin-this.Patch_Margin;)i+=this.Patch_Margin,n=e.substring(t.start2-i,t.start2+t.length1+i);i+=this.Patch_Margin,t.start2-i>0&&g.prototype.isLowSurrogate(e[t.start2-i])&&i++;let l=e.substring(t.start2-i,t.start2);l&&t.diffs.unshift(new g.Diff(0,l)),t.start2+t.length1+i<e.length&&g.prototype.isHighSurrogate(e[t.start2+t.length1+i])&&i++;let r=e.substring(t.start2+t.length1,t.start2+t.length1+i);r&&t.diffs.push(new g.Diff(0,r)),t.start1-=l.length,t.start2-=l.length,t.length1+=l.length+r.length,t.length2+=l.length+r.length};g.prototype.patch_make=function(t,e,n){let i,l;if(typeof t==\"string\"&&typeof e==\"string\"&&typeof n>\"u\")i=t,l=this.diff_main(i,e,!0),l.length>2&&(this.diff_cleanupSemantic(l),this.diff_cleanupEfficiency(l));else if(t&&typeof t==\"object\"&&typeof e>\"u\"&&typeof n>\"u\")l=t,i=this.diff_text1(l);else if(typeof t==\"string\"&&e&&typeof e==\"object\"&&typeof n>\"u\")i=t,l=e;else if(typeof t==\"string\"&&typeof e==\"string\"&&n&&typeof n==\"object\")i=t,l=n;else throw new Error(\"Unknown call format to patch_make.\");if(l.length===0)return[];l=this.diff_cleanupSplitSurrogates(l);let r=[],s=new g.patch_obj,o=0,h=0,a=0,c=i,f=i;for(let u=0;u<l.length;u++){let p=l[u][0],_=l[u][1];switch(!o&&p!==0&&(s.start1=h,s.start2=a),p){case 1:s.diffs[o++]=l[u],s.length2+=_.length,f=f.substring(0,a)+_+f.substring(a);break;case-1:s.length1+=_.length,s.diffs[o++]=l[u],f=f.substring(0,a)+f.substring(a+_.length);break;case 0:_.length<=2*this.Patch_Margin&&o&&l.length!=u+1?(s.diffs[o++]=l[u],s.length1+=_.length,s.length2+=_.length):_.length>=2*this.Patch_Margin&&o&&(this.patch_addContext_(s,c),r.push(s),s=new g.patch_obj,o=0,c=f,h=a);break}p!==1&&(h+=_.length),p!==-1&&(a+=_.length)}return o&&(this.patch_addContext_(s,c),r.push(s)),r};g.prototype.patch_deepCopy=function(t){let e=[];for(let n=0;n<t.length;n++){let i=t[n],l=new g.patch_obj;l.diffs=[];for(let r=0;r<i.diffs.length;r++)l.diffs[r]=new g.Diff(i.diffs[r][0],i.diffs[r][1]);l.start1=i.start1,l.start2=i.start2,l.length1=i.length1,l.length2=i.length2,e[n]=l}return e};g.prototype.patch_apply=function(t,e){if(t.length==0)return[e,[]];t=this.patch_deepCopy(t);let n=this.patch_addPadding(t);e=n+e+n,this.patch_splitMax(t);let i=0,l=[];for(let r=0;r<t.length;r++){let s=t[r].start2+i,o=this.diff_text1(t[r].diffs),h,a=-1;if(o.length>this.Match_MaxBits?(h=this.match_main(e,o.substring(0,this.Match_MaxBits),s),h!=-1&&(a=this.match_main(e,o.substring(o.length-this.Match_MaxBits),s+o.length-this.Match_MaxBits),(a==-1||h>=a)&&(h=-1))):h=this.match_main(e,o,s),h==-1)l[r]=!1,i-=t[r].length2-t[r].length1;else{l[r]=!0,i=h-s;let c;if(a==-1?c=e.substring(h,h+o.length):c=e.substring(h,a+this.Match_MaxBits),o==c)e=e.substring(0,h)+this.diff_text2(t[r].diffs)+e.substring(h+o.length);else{let f=this.diff_main(o,c,!1);if(o.length>this.Match_MaxBits&&this.diff_levenshtein(f)/o.length>this.Patch_DeleteThreshold)l[r]=!1;else{this.diff_cleanupSemanticLossless(f);let u=0,p;for(let _=0;_<t[r].diffs.length;_++){let D=t[r].diffs[_];D[0]!==0&&(p=this.diff_xIndex(f,u)),D[0]===1?e=e.substring(0,h+p)+D[1]+e.substring(h+p):D[0]===-1&&(e=e.substring(0,h+p)+e.substring(h+this.diff_xIndex(f,u+D[1].length))),D[0]!==-1&&(u+=D[1].length)}}}}}return e=e.substring(n.length,e.length-n.length),[e,l]};g.prototype.patch_addPadding=function(t){let e=this.Patch_Margin,n=\"\";for(let r=1;r<=e;r++)n+=String.fromCharCode(r);for(let r=0;r<t.length;r++)t[r].start1+=e,t[r].start2+=e;let i=t[0],l=i.diffs;if(l.length==0||l[0][0]!=0)l.unshift(new g.Diff(0,n)),i.start1-=e,i.start2-=e,i.length1+=e,i.length2+=e;else if(e>l[0][1].length){let r=e-l[0][1].length;l[0][1]=n.substring(l[0][1].length)+l[0][1],i.start1-=r,i.start2-=r,i.length1+=r,i.length2+=r}if(i=t[t.length-1],l=i.diffs,l.length==0||l[l.length-1][0]!=0)l.push(new g.Diff(0,n)),i.length1+=e,i.length2+=e;else if(e>l[l.length-1][1].length){let r=e-l[l.length-1][1].length;l[l.length-1][1]+=n.substring(0,r),i.length1+=r,i.length2+=r}return n};g.prototype.patch_splitMax=function(t){let e=this.Match_MaxBits;for(let n=0;n<t.length;n++){if(t[n].length1<=e)continue;let i=t[n];t.splice(n--,1);let l=i.start1,r=i.start2,s=\"\";for(;i.diffs.length!==0;){let o=new g.patch_obj,h=!0;for(o.start1=l-s.length,o.start2=r-s.length,s!==\"\"&&(o.length1=o.length2=s.length,o.diffs.push(new g.Diff(0,s)));i.diffs.length!==0&&o.length1<e-this.Patch_Margin;){let c=i.diffs[0][0],f=i.diffs[0][1];c===1?(o.length2+=f.length,r+=f.length,o.diffs.push(i.diffs.shift()),h=!1):c===-1&&o.diffs.length==1&&o.diffs[0][0]==0&&f.length>2*e?(o.length1+=f.length,l+=f.length,h=!1,o.diffs.push(new g.Diff(c,f)),i.diffs.shift()):(f=f.substring(0,e-o.length1-this.Patch_Margin),o.length1+=f.length,l+=f.length,c===0?(o.length2+=f.length,r+=f.length):h=!1,o.diffs.push(new g.Diff(c,f)),f==i.diffs[0][1]?i.diffs.shift():i.diffs[0][1]=i.diffs[0][1].substring(f.length))}s=this.diff_text2(o.diffs),s=s.substring(s.length-this.Patch_Margin);let a=this.diff_text1(i.diffs).substring(0,this.Patch_Margin);a!==\"\"&&(o.length1+=a.length,o.length2+=a.length,o.diffs.length!==0&&o.diffs[o.diffs.length-1][0]===0?o.diffs[o.diffs.length-1][1]+=a:o.diffs.push(new g.Diff(0,a))),h||t.splice(++n,0,o)}}};g.prototype.patch_toText=function(t){let e=[];for(let n=0;n<t.length;n++)e[n]=t[n];return e.join(\"\")};g.prototype.patch_fromText=function(t){let e=[];if(!t)return e;let n=t.split(`\n`),i=0,l=/^@@ -(\\d+),?(\\d*) \\+(\\d+),?(\\d*) @@$/;for(;i<n.length;){let r=n[i].match(l);if(!r)throw new Error(\"Invalid patch string: \"+n[i]);let s=new g.patch_obj;for(e.push(s),s.start1=parseInt(r[1],10),r[2]===\"\"?(s.start1--,s.length1=1):r[2]==\"0\"?s.length1=0:(s.start1--,s.length1=parseInt(r[2],10)),s.start2=parseInt(r[3],10),r[4]===\"\"?(s.start2--,s.length2=1):r[4]==\"0\"?s.length2=0:(s.start2--,s.length2=parseInt(r[4],10)),i++;i<n.length;){let o=n[i].charAt(0),h=\"\";try{h=decodeURI(n[i].substring(1))}catch{throw new Error(\"Illegal escape in patch_fromText: \"+h)}if(o==\"-\")s.diffs.push(new g.Diff(-1,h));else if(o==\"+\")s.diffs.push(new g.Diff(1,h));else if(o==\" \")s.diffs.push(new g.Diff(0,h));else{if(o==\"@\")break;if(o!==\"\")throw new Error('Invalid patch mode \"'+o+'\" in: '+h)}i++}}return e};g.patch_obj=function(){this.diffs=[],this.start1=null,this.start2=null,this.length1=0,this.length2=0};g.patch_obj.prototype.toString=function(){let t,e;this.length1===0?t=this.start1+\",0\":this.length1==1?t=this.start1+1:t=this.start1+1+\",\"+this.length1,this.length2===0?e=this.start2+\",0\":this.length2==1?e=this.start2+1:e=this.start2+1+\",\"+this.length2;let n=[\"@@ -\"+t+\" +\"+e+` @@\n`],i;g.prototype.diff_cleanupSplitSurrogates(this.diffs);for(let l=0;l<this.diffs.length;l++){switch(this.diffs[l][0]){case 1:i=\"+\";break;case-1:i=\"-\";break;case 0:i=\" \";break}n[l+1]=i+encodeURI(this.diffs[l][1])+`\n`}return n.join(\"\").replace(/%20/g,\" \")};function R(t){return t&&typeof t==\"object\"&&!Array.isArray(t)&&t!==null}function U(t,e){return R(t)&&R(e)&&Object.keys(e).forEach(n=>{n===\"__proto__\"||n===\"constructor\"||(R(e[n])?((!t[n]||!R(t[n]))&&(t[n]=e[n]),U(t[n],e[n])):Object.assign(t,{[n]:e[n]}))}),t}function N(t,e,n=!1){let i=null,l=!0;return(...r)=>{const s=n&&l,o=()=>{t.apply(this,r),i=null};s&&(l=!1,o()),i||(i=setTimeout(o,e))}}function tt(t,e){let n;return(...i)=>{const l=this;clearTimeout(n),n=setTimeout(()=>t.apply(l,i),e)}}function O(t=\"\"){return t.replace(/\\r\\n/g,`\n`)}function v(t,e,n,i){const l=n-t,r=t+l/2;return`M ${t} ${e} C ${r},${e} ${r},${i} ${n},${i}`}const I={DIFF_EQUAL:0,DIFF_DELETE:-1,DIFF_INSERT:1,EDITOR_RIGHT:\"right\",EDITOR_LEFT:\"left\",RTL:\"rtl\",LTR:\"ltr\",SVG_NS:\"http://www.w3.org/2000/svg\",DIFF_GRANULARITY_SPECIFIC:\"specific\",DIFF_GRANULARITY_BROAD:\"broad\"};function H(t,e){let{mode:n}=t.options;return e===I.EDITOR_LEFT&&t.options.left.mode!==null&&(n=t.options.left.mode),e===I.EDITOR_RIGHT&&t.options.right.mode!==null&&(n=t.options.right.mode),n}function Q(t,e){let{theme:n}=t.options;return e===I.EDITOR_LEFT&&t.options.left.theme!==null&&(n=t.options.left.theme),e===I.EDITOR_RIGHT&&t.options.right.theme!==null&&(n=t.options.right.theme),n}function Y(t,e){return t.ace.getSession().doc.getLine(e)}function et(t){return document.getElementById(t.options.left.id).offsetHeight}function x(t){const e=document.createElement(\"div\"),n={class:t.className,style:`top:${t.topOffset}px`,title:t.tooltip,\"data-diff-index\":t.diffIndex};for(const i in n)e.setAttribute(i,n[i]);return e.innerHTML=t.arrowContent,e}function M(t,e){const n=Math.random().toString(36).substr(2,5),i=`js-${e}-${n}`,l=t.querySelector(`.${e}`);if(l)return l.id=l.id||i,l.id;const r=document.createElement(\"div\");return t.appendChild(r),r.className=e,r.id=i,r.id}function $(t,e,n,i){const l=t===\"document\"?document:document.querySelector(t);l.addEventListener(e,r=>{const s=l.querySelectorAll(n),{target:o}=r;for(let h=0,a=s.length;h<a;h+=1){let c=o;const f=s[h];for(;c&&c!==l;)c===f&&i.call(f,r),c=c.parentNode}})}let A;function nt(t){if(t.Range)return t.Range;const e=t.acequire||t.require;return e?e(\"ace/range\"):!1}function k(t={}){if(!(this instanceof k))return new k(t);const e=this,n=()=>window?window.ace:void 0;e.options=U({ace:n(),mode:null,theme:null,element:null,diffGranularity:I.DIFF_GRANULARITY_BROAD,lockScrolling:!1,showDiffs:!0,showConnectors:!0,maxDiffs:5e3,left:{id:null,content:null,mode:null,theme:null,editable:!0,copyLinkEnabled:!0},right:{id:null,content:null,mode:null,theme:null,editable:!0,copyLinkEnabled:!0},classes:{gutterID:\"acediff__gutter\",diff:\"acediff__diffLine\",connector:\"acediff__connector\",newCodeConnectorLink:\"acediff__newCodeConnector\",newCodeConnectorLinkContent:\"→\",deletedCodeConnectorLink:\"acediff__deletedCodeConnector\",deletedCodeConnectorLinkContent:\"←\",copyRightContainer:\"acediff__copy--right\",copyLeftContainer:\"acediff__copy--left\"},connectorYOffset:0},t);const{ace:i}=e.options;if(!i){const l=\"No ace editor found nor supplied - `options.ace` or `window.ace` is missing\";return console.error(l),new Error(l)}if(A=nt(i),!A){const l=\"Could not require Range module for Ace. Depends on your bundling strategy, but it usually comes with Ace itself. See https://ace.c9.io/api/range.html, open an issue on GitHub ace-diff/ace-diff\";return console.error(l),new Error(l)}if(e.options.element===null){const l=\"You need to specify an element for Ace-diff - `options.element` is missing\";return console.error(l),new Error(l)}if(e.options.element instanceof HTMLElement?e.el=e.options.element:e.el=document.body.querySelector(e.options.element),!e.el){const l=`Can't find the specified element ${e.options.element}`;return console.error(l),new Error(l)}e.options.left.id=M(e.el,\"acediff__left\"),e.options.classes.gutterID=M(e.el,\"acediff__gutter\"),e.options.right.id=M(e.el,\"acediff__right\"),e.el.innerHTML=`<div class=\"acediff__wrap\">${e.el.innerHTML}</div>`,e.editors={left:{ace:i.edit(e.options.left.id),markers:[],lineLengths:[]},right:{ace:i.edit(e.options.right.id),markers:[],lineLengths:[]},editorHeight:null},e.editors.left.ace.getSession().setMode(H(e,I.EDITOR_LEFT)),e.editors.right.ace.getSession().setMode(H(e,I.EDITOR_RIGHT)),e.editors.left.ace.setReadOnly(!e.options.left.editable),e.editors.right.ace.setReadOnly(!e.options.right.editable),e.editors.left.ace.setTheme(Q(e,I.EDITOR_LEFT)),e.editors.right.ace.setTheme(Q(e,I.EDITOR_RIGHT)),e.editors.left.ace.setValue(O(e.options.left.content),-1),e.editors.right.ace.setValue(O(e.options.right.content),-1),e.editors.editorHeight=et(e),setTimeout(()=>{e.lineHeight=e.editors.left.ace.renderer.lineHeight,it(e),ot(e),K(e),e.diff()},1)}k.prototype={setOptions(t){U(this.options,t),this.diff()},getNumDiffs(){return this.diffs.length},getEditors(){return{left:this.editors.left.ace,right:this.editors.right.ace}},diff(){const t=new g,e=this.editors.left.ace.getSession().getValue(),n=this.editors.right.ace.getSession().getValue(),i=t.diff_main(n,e);t.diff_cleanupSemantic(i),this.editors.left.lineLengths=G(this.editors.left),this.editors.right.lineLengths=G(this.editors.right);const l=[],r={left:0,right:0};i.forEach(s=>{const o=s[0];let h=s[1];h.length!==0&&(o===I.DIFF_EQUAL?(r.left+=h.length,r.right+=h.length):o===I.DIFF_DELETE?(l.push(q(this,I.DIFF_DELETE,r.left,r.right,h)),r.right+=h.length):o===I.DIFF_INSERT&&(l.push(q(this,I.DIFF_INSERT,r.left,r.right,h)),r.left+=h.length))},this),this.diffs=gt(this,l),!(this.diffs.length>this.options.maxDiffs)&&(J(this),X(this))},destroy(){const t=this.editors.left.ace.getValue();this.editors.left.ace.destroy();let e=this.editors.left.ace.container,n=e.cloneNode(!1);n.textContent=t,e.parentNode.replaceChild(n,e);const i=this.editors.right.ace.getValue();this.editors.right.ace.destroy(),e=this.editors.right.ace.container,n=e.cloneNode(!1),n.textContent=i,e.parentNode.replaceChild(n,e),document.getElementById(this.options.classes.gutterID).innerHTML=\"\",Z()}};let Z=()=>{};function it(t){t.editors.left.ace.getSession().on(\"changeScrollTop\",N(()=>{B(t)},16)),t.editors.right.ace.getSession().on(\"changeScrollTop\",N(()=>{B(t)},16));const e=t.diff.bind(t);t.editors.left.ace.on(\"change\",e),t.editors.right.ace.on(\"change\",e),t.options.left.copyLinkEnabled&&$(`#${t.options.classes.gutterID}`,\"click\",`.${t.options.classes.newCodeConnectorLink}`,i=>{P(t,i,I.LTR)}),t.options.right.copyLinkEnabled&&$(`#${t.options.classes.gutterID}`,\"click\",`.${t.options.classes.deletedCodeConnectorLink}`,i=>{P(t,i,I.RTL)});const n=tt(()=>{t.editors.availableHeight=document.getElementById(t.options.left.id).offsetHeight,t.diff()},250);window.addEventListener(\"resize\",n),Z=()=>{window.removeEventListener(\"resize\",n)}}function P(t,e,n){const i=parseInt(e.target.getAttribute(\"data-diff-index\"),10),l=t.diffs[i];let r,s,o,h,a,c;n===I.LTR?(r=t.editors.left,s=t.editors.right,o=l.leftStartLine,h=l.leftEndLine,a=l.rightStartLine,c=l.rightEndLine):(r=t.editors.right,s=t.editors.left,o=l.rightStartLine,h=l.rightEndLine,a=l.leftStartLine,c=l.leftEndLine);let f=\"\";for(let p=o;p<h;p+=1)f+=Y(r,p),p===o&&f===\"\"&&a!=0&&(f+=`\n`),p<r.ace.getSession().getLength()-1&&(f+=`\n`);const u=s.ace.getSession().getScrollTop();s.ace.getSession().replace(new A(a,0,c,0),f),s.ace.getSession().setScrollTop(parseInt(u,10)),t.diff()}function G(t){const e=t.ace.getSession().doc.getAllLines(),n=[];return e.forEach(i=>{n.push(i.length+1)}),n}function j(t,e,n,i,l){const r=t.editors[e];i<n&&(i=n);const s=`${l} ${i>n?\"lines\":\"targetOnly\"}`;i>n&&(i-=1),r.markers.push(r.ace.session.addMarker(new A(n,0,i,1),s,\"fullLine\"))}function B(t){J(t),X(t),st(t)}function J(t){t.editors.left.markers.forEach(e=>{t.editors.left.ace.getSession().removeMarker(e)},t),t.editors.right.markers.forEach(e=>{t.editors.right.ace.getSession().removeMarker(e)},t)}function rt(t,e,n,i,l){const r=t.editors.left.ace.getSession().getScrollTop(),s=t.editors.right.ace.getSession().getScrollTop();t.connectorYOffset=1;const o=-1,h=e*t.lineHeight-r+.5,a=t.gutterWidth+1,c=i*t.lineHeight-s+.5,f=-1,u=n*t.lineHeight-r+t.connectorYOffset+.5,p=t.gutterWidth+1,_=l*t.lineHeight-s+t.connectorYOffset+.5,D=v(o,h,a,c),d=v(p,_,f,u),E=`L${a},${c} ${p},${_}`,L=`L${f},${u} ${o},${h}`,m=`${D} ${E} ${d} ${L}`,F=document.createElementNS(I.SVG_NS,\"path\");F.setAttribute(\"d\",m),F.setAttribute(\"class\",t.options.classes.connector),t.gutterSVG.appendChild(F)}function lt(t,e,n){if(e.leftEndLine>e.leftStartLine&&t.options.left.copyLinkEnabled){const i=x({className:t.options.classes.newCodeConnectorLink,topOffset:e.leftStartLine*t.lineHeight,tooltip:\"Copy to right\",diffIndex:n,arrowContent:t.options.classes.newCodeConnectorLinkContent});t.copyRightContainer.appendChild(i)}if(e.rightEndLine>e.rightStartLine&&t.options.right.copyLinkEnabled){const i=x({className:t.options.classes.deletedCodeConnectorLink,topOffset:e.rightStartLine*t.lineHeight,tooltip:\"Copy to left\",diffIndex:n,arrowContent:t.options.classes.deletedCodeConnectorLinkContent});t.copyLeftContainer.appendChild(i)}}function st(t){const e=t.editors.left.ace.getSession().getScrollTop(),n=t.editors.right.ace.getSession().getScrollTop();t.copyRightContainer.style.cssText=`top: ${-e}px`,t.copyLeftContainer.style.cssText=`top: ${-n}px`}function q(t,e,n,i,l){let r={};if(e===I.DIFF_INSERT){let s=V(t.editors.left,n,l),o=z(t.editors.right,i),h=S(t.editors.right,o);const a=S(t.editors.left,s.startLine);let c=o,f=s.startLine===s.endLine,u=0;(s.startChar>0||f&&l.length<a)&&h>0&&s.startChar<a&&u++,r={leftStartLine:s.startLine,leftEndLine:s.endLine+1,rightStartLine:c,rightEndLine:c+u}}else{let s=V(t.editors.right,i,l),o=z(t.editors.left,n),h=S(t.editors.left,o);const a=S(t.editors.right,s.startLine);let c=o,f=s.startLine===s.endLine,u=0;(s.startChar>0||f&&l.length<a)&&h>0&&s.startChar<a&&u++,r={leftStartLine:c,leftEndLine:c+u,rightStartLine:s.startLine,rightEndLine:s.endLine+1}}return r}function V(t,e,n){const i={startLine:0,startChar:0,endLine:0,endChar:0},l=e+n.length;let r=0,s=!1,o=!1;t.lineLengths.forEach((a,c)=>{r+=a,!s&&e<r&&(i.startLine=c,i.startChar=e-r+a,s=!0),!o&&l<=r&&(i.endLine=c,i.endChar=l-r+a,o=!0)}),i.startChar>0&&S(t,i.startLine)===i.startChar&&(i.startLine++,i.startChar=0),i.endChar===0&&i.endLine--;const h=/\\n$/.test(n);return i.startChar>0&&h&&i.endLine++,i}function S(t,e){return Y(t,e).length}function z(t,e){const n=t.ace.getSession().doc.getAllLines();let i=0,l=0;for(let r=0;r<n.length;r+=1)if(l+=n[r].length+1,e<l){i=r;break}return l>t.ace.getSession().getValue().length&&(i+=1),i}function K(t){t.gutterHeight=document.getElementById(t.options.classes.gutterID).clientHeight,t.gutterWidth=document.getElementById(t.options.classes.gutterID).clientWidth;const e=W(t,I.EDITOR_LEFT),n=W(t,I.EDITOR_RIGHT),i=Math.max(e,n,t.gutterHeight);t.gutterSVG=document.createElementNS(I.SVG_NS,\"svg\"),t.gutterSVG.setAttribute(\"width\",t.gutterWidth),t.gutterSVG.setAttribute(\"height\",i),document.getElementById(t.options.classes.gutterID).appendChild(t.gutterSVG)}function W(t,e){return(e===I.EDITOR_LEFT?t.editors.left:t.editors.right).ace.getSession().getLength()*t.lineHeight}function ot(t){t.copyRightContainer=document.createElement(\"div\"),t.copyRightContainer.setAttribute(\"class\",t.options.classes.copyRightContainer),t.copyLeftContainer=document.createElement(\"div\"),t.copyLeftContainer.setAttribute(\"class\",t.options.classes.copyLeftContainer),document.getElementById(t.options.classes.gutterID).appendChild(t.copyRightContainer),document.getElementById(t.options.classes.gutterID).appendChild(t.copyLeftContainer)}function ht(t){document.getElementById(t.options.classes.gutterID).removeChild(t.gutterSVG),K(t)}function at(t){t.copyLeftContainer.innerHTML=\"\",t.copyRightContainer.innerHTML=\"\"}function gt(t,e){const n=[];function i(r){return t.options.diffGranularity===I.DIFF_GRANULARITY_SPECIFIC?r<1:r<=1}e.forEach((r,s)=>{if(s===0){n.push(r);return}let o=!1;for(let h=0;h<n.length;h+=1)if(i(Math.abs(r.leftStartLine-n[h].leftEndLine))&&i(Math.abs(r.rightStartLine-n[h].rightEndLine))){n[h].leftStartLine=Math.min(r.leftStartLine,n[h].leftStartLine),n[h].rightStartLine=Math.min(r.rightStartLine,n[h].rightStartLine),n[h].leftEndLine=Math.max(r.leftEndLine,n[h].leftEndLine),n[h].rightEndLine=Math.max(r.rightEndLine,n[h].rightEndLine),o=!0;break}o||n.push(r)});const l=[];return n.forEach(r=>{r.leftStartLine===r.leftEndLine&&r.rightStartLine===r.rightEndLine||l.push(r)}),l}function X(t){ht(t),at(t),t.diffs.forEach((e,n)=>{t.options.showDiffs&&(j(t,I.EDITOR_LEFT,e.leftStartLine,e.leftEndLine,t.options.classes.diff),j(t,I.EDITOR_RIGHT,e.rightStartLine,e.rightEndLine,t.options.classes.diff),t.options.showConnectors&&rt(t,e.leftStartLine,e.leftEndLine,e.rightStartLine,e.rightEndLine),lt(t,e,n))},t)}export{k as default};\n//# sourceMappingURL=ace-diff.min.js.map\n","<!--\n# Copyright 2022 Ball Aerospace & Technologies Corp.\n# All Rights Reserved.\n#\n# This program is free software; you can modify and/or redistribute it\n# under the terms of the GNU Affero General Public License\n# as published by the Free Software Foundation; version 3 with\n# attribution addendums as found in the LICENSE.txt\n#\n# This program is distributed in the hope that it will be useful,\n# but WITHOUT ANY WARRANTY; without even the implied warranty of\n# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n# GNU Affero General Public License for more details.\n\n# Modified by OpenC3, Inc.\n# All changes Copyright 2024, OpenC3, Inc.\n# All Rights Reserved\n#\n# This file may also be used under the terms of a commercial license\n# if purchased from OpenC3, Inc.\n-->\n\n<template>\n <v-dialog persistent v-model=\"show\" width=\"80vw\">\n <v-card>\n <v-card-text>\n <v-card-title>{{ pluginName }} </v-card-title>\n <v-row v-if=\"existingPluginTxt !== null\" class=\"notice d-flex flex-row\">\n <v-icon size=\"x-large\" start color=\"yellow\"> mdi-alert-box </v-icon>\n <div style=\"flex: 1\">\n The existing plugin.txt is different from the {{ pluginName }}'s\n plugin.txt. Navigate the diffs making whatever edits you want before\n installing. You may want to update {{ pluginName }}'s plugin.txt\n going forward.\n </div>\n </v-row>\n <v-row class=\"pb-3 pr-3\">\n <v-tabs v-model=\"tab\" class=\"ml-3\">\n <v-tab :key=\"0\"> Variables </v-tab>\n <v-tab :key=\"1\"> plugin.txt </v-tab>\n </v-tabs>\n </v-row>\n <form @submit.prevent=\"onSubmit\">\n <v-window v-model=\"tab\">\n <v-window-item :key=\"0\" eager=\"true\" class=\"tab\">\n <div class=\"pa-3\">\n <v-row class=\"mt-3\">\n <div v-for=\"(value, name) in localVariables\" :key=\"name\">\n <v-col style=\"width: 220px\">\n <v-text-field\n clearable\n type=\"text\"\n :label=\"name\"\n v-model=\"localVariables[name]\"\n />\n </v-col>\n </div>\n </v-row>\n </div>\n </v-window-item>\n <v-window-item\n v-if=\"existingPluginTxt === null\"\n :key=\"1 + '-new'\"\n eager=\"true\"\n class=\"tab\"\n >\n <v-row class=\"pa-3\">\n <v-col> This can be edited before installation. </v-col>\n </v-row>\n <pre ref=\"editor\" class=\"editor\"></pre>\n </v-window-item>\n <v-window-item\n v-else\n :key=\"1 + '-existing'\"\n eager=\"true\"\n class=\"tab\"\n >\n <v-row class=\"pa-3\">\n <v-col>\n Existing plugin.txt. This can be edited before installation.\n </v-col>\n <v-col class=\"ml-6\">\n Uneditable plugin.txt from the new plugin.\n </v-col>\n </v-row>\n <pre ref=\"editor\" class=\"editor\"></pre>\n </v-window-item>\n </v-window>\n\n <v-card-actions class=\"px-2 mt-2\">\n <div v-if=\"existingPluginTxt !== null\">\n <v-btn variant=\"text\" @click=\"nextDiff\"> Next Diff </v-btn>\n <v-btn variant=\"text\" @click=\"previousDiff\">\n Previous Diff\n </v-btn>\n </div>\n <v-spacer />\n <v-btn\n variant=\"outlined\"\n @click.prevent=\"close\"\n data-test=\"edit-cancel\"\n >\n Cancel\n </v-btn>\n <v-btn variant=\"flat\" @click=\"submit\" data-test=\"edit-submit\">\n Install\n </v-btn>\n </v-card-actions>\n </form>\n </v-card-text>\n </v-card>\n </v-dialog>\n</template>\n\n<script>\nimport * as ace from 'ace-builds'\nimport 'ace-builds/src-min-noconflict/mode-ruby'\nimport 'ace-builds/src-min-noconflict/theme-twilight'\nimport 'ace-builds/src-min-noconflict/ext-language_tools'\nimport 'ace-builds/src-min-noconflict/ext-searchbox'\nimport AceDiff from '@openc3/ace-diff'\nimport '@openc3/ace-diff/dist/ace-diff-dark.min.css'\nimport { toRaw } from 'vue'\n\nexport default {\n props: {\n pluginName: {\n type: String,\n required: true,\n },\n variables: {\n type: Object,\n required: true,\n },\n pluginTxt: {\n type: String,\n required: true,\n },\n existingPluginTxt: {\n type: String,\n required: false,\n },\n modelValue: Boolean, // modelValue is the default prop when using v-model\n },\n data() {\n return {\n tab: 0,\n localVariables: [],\n localPluginTxt: '',\n localExistingPluginTxt: null,\n editor: null,\n differ: null,\n }\n },\n mounted() {\n const pluginMode = this.buildPluginMode()\n if (this.existingPluginTxt === null) {\n this.editor = ace.edit(this.$refs.editor)\n this.editor.setTheme('ace/theme/twilight')\n this.editor.session.setMode(new pluginMode())\n this.editor.session.setTabSize(2)\n this.editor.session.setUseWrapMode(true)\n this.editor.$blockScrolling = Infinity\n this.editor.setHighlightActiveLine(false)\n this.editor.setValue(this.localPluginTxt)\n this.editor.clearSelection()\n this.editor.focus()\n } else {\n this.tab = 1 // Show the diff right off the bat\n this.differ = new AceDiff({\n element: this.$refs.editor,\n mode: new pluginMode(),\n theme: 'ace/theme/twilight',\n left: {\n content: this.localExistingPluginTxt,\n copyLinkEnabled: false,\n },\n right: {\n content: this.localPluginTxt,\n editable: false,\n },\n })\n // Match our existing editors\n this.differ.getEditors().left.setFontSize(16)\n this.differ.getEditors().right.setFontSize(16)\n this.curDiff = -1 // so the first will be 0\n }\n },\n beforeUnmount() {\n if (this.editor) {\n this.editor.destroy()\n }\n if (this.differ) {\n this.differ.destroy()\n }\n },\n computed: {\n show: {\n get() {\n return this.modelValue\n },\n set(value) {\n this.$emit('update:modelValue', value)\n },\n },\n },\n watch: {\n value: {\n immediate: true,\n handler: function () {\n this.localVariables = JSON.parse(JSON.stringify(this.variables)) // deep copy\n this.localPluginTxt = this.pluginTxt.slice()\n if (this.existingPluginTxt !== null) {\n this.localExistingPluginTxt = this.existingPluginTxt.slice()\n }\n },\n },\n },\n methods: {\n previousDiff() {\n this.curDiff--\n if (this.curDiff < 0) {\n this.curDiff = this.differ.diffs.length - 1\n }\n this.scrollToCurDiff()\n },\n nextDiff() {\n this.curDiff++\n if (this.curDiff >= this.differ.diffs.length) {\n this.curDiff = 0\n }\n this.scrollToCurDiff()\n },\n scrollToCurDiff() {\n if (this.differ.diffs.length === 0) return\n let lrow = this.differ.diffs[this.curDiff].leftStartLine\n let rrow = this.differ.diffs[this.curDiff].rightStartLine\n // Give it a little breathing room\n if (lrow > 5) {\n lrow -= 5\n }\n if (rrow > 5) {\n rrow -= 5\n }\n this.differ.getEditors().left.scrollToLine(lrow)\n this.differ.getEditors().right.scrollToLine(rrow)\n },\n buildPluginMode() {\n let oop = ace.require('ace/lib/oop')\n let RubyHighlightRules = ace.require(\n 'ace/mode/ruby_highlight_rules',\n ).RubyHighlightRules\n\n // TODO: Grab from code\n let keywords = ['VARIABLE']\n let regex = new RegExp(`(\\\\b${keywords.join('\\\\b|\\\\b')}\\\\b)`)\n let PluginHighlightRules = function () {\n RubyHighlightRules.call(this)\n // add openc3 rules to the ruby rules\n for (let rule in this.$rules) {\n this.$rules[rule].unshift({\n regex: regex,\n token: 'support.function',\n })\n }\n }\n oop.inherits(PluginHighlightRules, RubyHighlightRules)\n\n let MatchingBraceOutdent = ace.require(\n 'ace/mode/matching_brace_outdent',\n ).MatchingBraceOutdent\n let CstyleBehaviour = ace.require(\n 'ace/mode/behaviour/cstyle',\n ).CstyleBehaviour\n let FoldMode = ace.require('ace/mode/folding/ruby').FoldMode\n let Mode = function () {\n this.HighlightRules = PluginHighlightRules\n this.$outdent = new MatchingBraceOutdent()\n this.$behaviour = new CstyleBehaviour()\n this.foldingRules = new FoldMode()\n this.indentKeywords = this.foldingRules.indentKeywords\n }\n let RubyMode = ace.require('ace/mode/ruby').Mode\n oop.inherits(Mode, RubyMode)\n ;(function () {\n this.$id = 'ace/mode/openc3'\n }).call(Mode.prototype)\n return Mode\n },\n submit: function () {\n if (this.existingPluginTxt === null) {\n this.emitSubmit(this.editor.getValue().split('\\n'))\n } else {\n // Existing plugin.txt with all diffs resolved\n if (this.differ.diffs.length === 0) {\n this.emitSubmit(this.differ.getEditors().left.getValue().split('\\n'))\n } else {\n // Existing plugin.txt with unresolved diffs\n this.$dialog\n .confirm(\n `Diffs still detected! Install using 'Existing plugin.txt' (left) and ignore additional changes in the new plugin.txt (right)?`,\n {\n okText: 'Install',\n cancelText: 'Cancel',\n },\n )\n .then((dialog) => {\n this.emitSubmit(\n this.differ.getEditors().left.getValue().split('\\n'),\n )\n })\n .catch((error) => {\n // Cancelled, do nothing\n })\n }\n }\n },\n emitSubmit(lines) {\n let pluginHash = {\n name: this.pluginName,\n variables: toRaw(this.localVariables),\n plugin_txt_lines: lines,\n }\n this.$emit('callback', pluginHash)\n },\n close: function () {\n this.show = !this.show\n },\n },\n}\n</script>\n\n<style scoped>\n.editor {\n height: 50vh;\n position: relative;\n font-size: 16px;\n}\n\n.notice {\n font-size: 20px;\n margin: 10px;\n}\n.tab {\n background-color: var(--color-background-surface-default);\n}\n.v-textarea :deep(textarea) {\n padding: 5px;\n}\n</style>\n"],"names":["_sfc_main","value","gemRegEx","f","axios","response","gem","link","_hoisted_1","_hoisted_2","_createBlock","_component_v_dialog","$options","_cache","$event","_withCtx","_createVNode","_component_v_card","_component_v_toolbar","_component_v_spacer","_createElementVNode","_component_v_card_text","_component_v_row","_createTextVNode","_component_v_col","_component_v_btn","$data","_component_v_icon","_openBlock","_createElementBlock","_hoisted_3","_hoisted_4","_Fragment","_renderList","data","index","_component_v_list_item","_component_v_list_item_title","_toDisplayString","_hoisted_5","_component_v_progress_circular","_hoisted_6","_component_v_tooltip","props","_mergeProps","_component_v_divider","_createCommentVNode","openPluginMode","ace.edit","blob","oop","ace.require","JsonHighlightRules","MatchingBraceOutdent","CstyleBehaviour","FoldMode","Mode","RubyMode","$props","_withModifiers","args","_normalizeProps","_guardReactiveProps","_ctx","_component_v_file_input","target","Api","file","itemIndex","_component_v_list_item_subtitle","_component_v_checkbox","_component_v_card_actions","TabsList","TopBar","tab","_component_top_bar","_component_v_tabs","_component_v_tab","_component_router_view","g","t","e","i","l","r","s","o","h","a","u","d","p","_","D","E","m","F","b","w","y","T","C","n","R","U","N","tt","O","v","I","H","Q","Y","et","x","M","$","A","nt","k","it","ot","K","G","q","gt","J","X","Z","B","P","j","st","rt","lt","V","z","S","W","ht","at","pluginMode","AceDiff","lrow","rrow","RubyHighlightRules","keywords","regex","PluginHighlightRules","rule","dialog","error","lines","pluginHash","toRaw","_component_v_card_title","_component_v_window","_component_v_window_item","name","_component_v_text_field"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("../UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_6fa47877_lang-DJX55UPj.cjs"),e=require("vue"),y=require("../CosmosRuxIcon.vue_vue_type_style_index_0_scoped_9af48e85_lang-BHFhmbuH.cjs"),U=require("single-spa"),B=require("../UpgradeToEnterpriseDialog-DfIKahNK.cjs"),h=require("../format-B22VpiOS.cjs"),S=require("../icons.cjs"),X=require("../AstroStatus-CILMWL6F.cjs"),Y=require("../index-Bz_jHTkl.cjs");function T(t,o){const n=+h.toDate(t)-+h.toDate(o);return n<0?-1:n>0?1:n}function j(t){return h.constructFrom(t,Date.now())}function q(t,o,n){const[a,s]=h.normalizeDates(n==null?void 0:n.in,t,o),i=a.getFullYear()-s.getFullYear(),d=a.getMonth()-s.getMonth();return i*12+d}function Z(t){return o=>{const a=(t?Math[t]:Math.trunc)(o);return a===0?0:a}}function W(t,o){return+h.toDate(t)-+h.toDate(o)}function $(t,o){const n=h.toDate(t,o==null?void 0:o.in);return n.setHours(23,59,59,999),n}function J(t,o){const n=h.toDate(t,o==null?void 0:o.in),a=n.getMonth();return n.setFullYear(n.getFullYear(),a+1,0),n.setHours(23,59,59,999),n}function G(t,o){const n=h.toDate(t,o==null?void 0:o.in);return+$(n,o)==+J(n,o)}function K(t,o,n){const[a,s,i]=h.normalizeDates(n==null?void 0:n.in,t,t,o),d=T(s,i),r=Math.abs(q(s,i));if(r<1)return 0;s.getMonth()===1&&s.getDate()>27&&s.setDate(30),s.setMonth(s.getMonth()-d*r);let c=T(s,i)===-d;G(a)&&r===1&&T(a,i)===1&&(c=!1);const u=d*(r-+c);return u===0?0:u}function Q(t,o,n){const a=W(t,o)/1e3;return Z(n==null?void 0:n.roundingMethod)(a)}function ee(t,o,n){const a=h.getDefaultOptions(),s=(n==null?void 0:n.locale)??a.locale??h.enUS,i=2520,d=T(t,o);if(isNaN(d))throw new RangeError("Invalid time value");const r=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:d}),[c,u]=h.normalizeDates(n==null?void 0:n.in,...d>0?[o,t]:[t,o]),m=Q(u,c),g=(h.getTimezoneOffsetInMilliseconds(u)-h.getTimezoneOffsetInMilliseconds(c))/1e3,p=Math.round((m-g)/60);let _;if(p<2)return n!=null&&n.includeSeconds?m<5?s.formatDistance("lessThanXSeconds",5,r):m<10?s.formatDistance("lessThanXSeconds",10,r):m<20?s.formatDistance("lessThanXSeconds",20,r):m<40?s.formatDistance("halfAMinute",0,r):m<60?s.formatDistance("lessThanXMinutes",1,r):s.formatDistance("xMinutes",1,r):p===0?s.formatDistance("lessThanXMinutes",1,r):s.formatDistance("xMinutes",p,r);if(p<45)return s.formatDistance("xMinutes",p,r);if(p<90)return s.formatDistance("aboutXHours",1,r);if(p<h.minutesInDay){const v=Math.round(p/60);return s.formatDistance("aboutXHours",v,r)}else{if(p<i)return s.formatDistance("xDays",1,r);if(p<h.minutesInMonth){const v=Math.round(p/h.minutesInDay);return s.formatDistance("xDays",v,r)}else if(p<h.minutesInMonth*2)return _=Math.round(p/h.minutesInMonth),s.formatDistance("aboutXMonths",_,r)}if(_=K(u,c),_<12){const v=Math.round(p/h.minutesInMonth);return s.formatDistance("xMonths",v,r)}else{const v=_%12,k=Math.trunc(_/12);return v<3?s.formatDistance("aboutXYears",k,r):v<9?s.formatDistance("overXYears",k,r):s.formatDistance("almostXYears",k+1,r)}}function te(t,o){return ee(t,j(t),o)}const oe={data:function(){return{localDate:new Date,displayLocal:localStorage.clock_zone==="local",display24h:!localStorage.clock_12h,dateMode:localStorage.clock_dateMode||"monthFirst",intervalCount:0,showMenu:!1,menuX:0,menuY:0}},computed:{utcDate:function(){return new Date(this.localDate.getTime()+this.localDate.getTimezoneOffset()*6e4)},formatString:function(){let t;switch(this.dateMode){case"monthFirst":t="LL/dd/yyy";break;case"dayFirst":t="dd/LL/yyy";break;case"number":t="D";break}let o;return this.display24h?o="HH:mm:ss":o="hh:mm:ss a",`${t} ${o}`}},watch:{displayLocal:function(t){localStorage.clock_zone=t?"local":"utc"},display24h:function(t){t?delete localStorage.clock_12h:localStorage.clock_12h=!0},dateMode:function(t){t.match(/^monthFirst$|^dayFirst$|^number$/)&&(localStorage.clock_dateMode=t)}},created:function(){setInterval(()=>{this.intervalCount++,this.localDate=new Date},this.intervalCount<10?100:1e3)},methods:{openMenu:function(t){t.preventDefault(),this.showMenu=!1,this.menuX=t.clientX,this.menuY=t.clientY,this.$nextTick(()=>{this.showMenu=!0})},toggleDisplayLocal:function(){this.displayLocal=!this.displayLocal},toggleDisplay24h:function(){this.display24h=!this.display24h},setMonthFirst:function(){this.dateMode="monthFirst"},setDayFirst:function(){this.dateMode="dayFirst"},setNumber:function(){this.dateMode="number"},formatDate:function(t,o){return h.format(t,o,{useAdditionalDayOfYearTokens:!0})}}};function ne(t,o,n,a,s,i){const d=e.resolveComponent("v-list-item-title"),r=e.resolveComponent("v-list-item"),c=e.resolveComponent("v-divider"),u=e.resolveComponent("v-list"),m=e.resolveComponent("v-menu");return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("span",{style:{cursor:"context-menu"},class:"font-weight-bold",onContextmenu:o[0]||(o[0]=(...g)=>i.openMenu&&i.openMenu(...g))},e.toDisplayString(i.formatDate(t.displayLocal?t.localDate:i.utcDate,i.formatString))+" ("+e.toDisplayString(t.displayLocal?"local":"UTC")+") ",33),e.createVNode(m,{modelValue:t.showMenu,"onUpdate:modelValue":o[1]||(o[1]=g=>t.showMenu=g),target:[t.menuX,t.menuY]},{default:e.withCtx(()=>[e.createVNode(u,null,{default:e.withCtx(()=>[e.createVNode(r,null,{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.toggleDisplayLocal},{default:e.withCtx(()=>[e.createTextVNode(" Display "+e.toDisplayString(t.displayLocal?"UTC":"local time"),1)]),_:1},8,["onClick"])]),_:1}),e.createVNode(c),e.createVNode(r,null,{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.toggleDisplay24h},{default:e.withCtx(()=>[e.createTextVNode(" Display "+e.toDisplayString(t.display24h?12:24)+" hour clock ",1)]),_:1},8,["onClick"])]),_:1}),e.createVNode(c),t.dateMode!=="monthFirst"?(e.openBlock(),e.createBlock(r,{key:0},{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.setMonthFirst},{default:e.withCtx(()=>o[2]||(o[2]=[e.createTextVNode(" Display mm/dd/yyyy ")])),_:1},8,["onClick"])]),_:1})):e.createCommentVNode("",!0),t.dateMode!=="dayFirst"?(e.openBlock(),e.createBlock(r,{key:1},{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.setDayFirst},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Display dd/mm/yyyy ")])),_:1},8,["onClick"])]),_:1})):e.createCommentVNode("",!0),t.dateMode!=="number"?(e.openBlock(),e.createBlock(r,{key:2},{default:e.withCtx(()=>[e.createVNode(d,{style:{cursor:"pointer"},onClick:i.setNumber},{default:e.withCtx(()=>o[4]||(o[4]=[e.createTextVNode(" Display day of year ")])),_:1},8,["onClick"])]),_:1})):e.createCommentVNode("",!0)]),_:1})]),_:1},8,["modelValue","target"])])}const L=y._export_sfc(oe,[["render",ne]]),se={components:{ClockFooter:L,UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},data(){return{icon:"/img/icon.png",edition:"",enterprise:!1,license:"",sourceUrl:"",version:"",showUpgradeToEnterpriseDialog:!1,chromeless:this.$route.query.chromeless}},created:function(){this.getSourceUrl(),N.ui.get("/openc3-api/info").then(t=>{t.data.enterprise?this.edition="COSMOS Enterprise":this.edition="COSMOS Open Source",this.enterprise=t.data.enterprise,this.license=t.data.license,this.version=t.data.version})},computed:{footerClass(){return this.enterprise?"enterprise":"base"}},methods:{getSourceUrl:function(){new N.mi().get_settings(["source_url"]).then(t=>{this.sourceUrl=t[0]})},upgrade:function(){this.enterprise||(this.showUpgradeToEnterpriseDialog=!0)}}},ie=["src"],ae=["href"],re={class:"justify-right"};function le(t,o,n,a,s,i){const d=e.resolveComponent("v-spacer"),r=e.resolveComponent("clock-footer"),c=e.resolveComponent("upgrade-to-enterprise-dialog"),u=e.resolveComponent("v-footer");return s.chromeless?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u,{key:0,id:"footer",app:"",height:"33"},{default:e.withCtx(()=>[e.createElementVNode("img",{src:s.icon,alt:"OpenC3"},null,8,ie),e.createElementVNode("span",{class:e.normalizeClass(i.footerClass),onClick:o[0]||(o[0]=(...m)=>i.upgrade&&i.upgrade(...m))}," OpenC3 "+e.toDisplayString(s.edition)+" "+e.toDisplayString(s.version)+" © 2024 - License: "+e.toDisplayString(s.license),3),e.createVNode(d),e.createElementVNode("a",{href:s.sourceUrl,class:"text-white text-decoration-underline"}," Source ",8,ae),e.createVNode(d),e.createElementVNode("div",re,[e.createVNode(r)]),e.createVNode(c,{modelValue:s.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[1]||(o[1]=m=>s.showUpgradeToEnterpriseDialog=m),reason:"Enterprise is Commercially Licensed"},null,8,["modelValue"])]),_:1}))}const ce=y._export_sfc(se,[["render",le],["__scopeId","data-v-90a4c42b"]]),b=1e3,{highestLevel:de,orderByLevel:ue,groupByLevel:pe}=X.AstroStatus,me={components:{AstroStatusIndicator:S.AstroStatusIndicator},props:{size:{type:[String,Number],default:26}},data:function(){return{AstroStatusColors:S.AstroStatusColors,alerts:[],cable:new N.fi,scriptCable:new N.fi("/script-api/cable"),subscription:null,scriptSubscription:null,numScripts:0,notifications:[],showNotificationPane:!1,toastNotification:{},notificationDialog:!1,selectedNotification:{},settingsDialog:!1,showToast:!0}},computed:{activeScripts:function(){return`Scripts: ${this.numScripts}`},notificationVsAlert:function(){return"notifications"},iconStatus:function(){if(this.unreadNotifications.length===0)return"off";const t=this.unreadNotifications.map(o=>o.level).filter((o,n,a)=>a.indexOf(o)===n);return S.UnknownToAstroStatus[de(t)]},readNotifications:function(){return this.notifications.filter(t=>t.read).sort((t,o)=>o.time-t.time)},unreadNotifications:function(){return this.notifications.filter(t=>!t.read).sort((t,o)=>o.time-t.time)},unreadCount:function(){return this.unreadNotifications.length},notificationList:function(){const t=pe(this.unreadNotifications);let o=ue(Object.keys(t),n=>n).flatMap(n=>[{header:n.charAt(0).toUpperCase()+n.slice(1)},...t[n]]);return this.readNotifications.length&&(o=o.concat([{header:"Read"},...this.readNotifications])),o}},watch:{showNotificationPane:function(t){t||(this.selectedNotification.message?(this.notificationDialog=!1,this.selectedNotification={}):this.markAllAsRead())},showToast:function(t){localStorage.notoast=!t}},created:function(){this.showToast=localStorage.notoast==="false",this.subscribe(),this.alerts=this.$store.state.notifyHistory,N.ui.get("/script-api/running-script").then(t=>{this.numScripts=t.data.length})},unmounted:function(){this.subscription&&this.subscription.unsubscribe(),this.scriptSubscription&&this.scriptSubscription.unsubscribe(),this.cable.disconnect(),this.scriptCable.disconnect()},methods:{getStatus:function(t){return S.UnknownToAstroStatus[t]},markAllAsRead:function(){this.notifications.forEach(t=>{t.read=!0,(!localStorage.lastReadNotification||localStorage.lastReadNotification<t.msg_id)&&(localStorage.lastReadNotification=t.msg_id)})},clearNotifications:function(){this.markAllAsRead(),this.notifications=[],localStorage.notificationStreamOffset=localStorage.lastReadNotification,this.showNotificationPane=!1},toggleNotificationPane:function(){this.showNotificationPane=!this.showNotificationPane},toggleSettingsDialog:function(){this.settingsDialog=!this.settingsDialog},openDialog:function(t,o=!1){t.read=!0,(!localStorage.lastReadNotification||localStorage.lastReadNotification<t.msg_id)&&(localStorage.lastReadNotification=t.msg_id),this.selectedNotification=t,this.notificationDialog=!0},navigate:function(t){window.open(t,"_blank")},subscribe:function(){this.cable.createSubscription("MessagesChannel",window.openc3Scope,{received:t=>this.receiveMessage(t)},{start_offset:localStorage.notificationStreamOffset||localStorage.lastReadNotification,types:["notification","alert","ephemeral"]}).then(t=>{this.subscription=t}),this.scriptCable.createSubscription("AllScriptsChannel",window.openc3Scope,{received:t=>this.receiveScript(t)}).then(t=>{this.scriptSubscription=t})},receiveMessage:function(t){this.cable.recordPing(),t.length>b&&t.splice(0,t.length-b);let o=t.filter(a=>a.type==="ephemeral");o&&o.length>0&&(t=t.filter(a=>a.type!=="ephemeral"),o.forEach(a=>{this.$emit("ephemeral",a)}));let n=!1;if(t.forEach(a=>{a.read=a.msg_id<=localStorage.lastReadNotification,a.level=a.level||"INFO",!a.read&&["FATAL","ERROR","WARN"].includes(a.level)&&(n=!0,this.toastNotification=a)}),this.showToast&&n){let a=5e3;["FATAL","ERROR"].includes(this.toastNotification.level)&&(a=null),this.$notify&&this.$notify[this.toastNotification.level]({...this.toastNotification,type:"notification",duration:a,saveToHistory:!1})}this.notifications.length+t.length>b&&this.notifications.splice(0,this.notifications.length+t.length-b),this.notifications=this.notifications.concat(t)},receiveScript:function(t){this.cable.recordPing(),this.numScripts=t.active_scripts},formatShortDateTime:function(t){if(!t)return"";const o=new Date(t/1e6);return te(o,{addSuffix:!0})}}};function fe(t,o,n,a,s,i){const d=e.resolveComponent("v-overlay"),r=e.resolveComponent("rux-monitoring-icon"),c=e.resolveComponent("v-spacer"),u=e.resolveComponent("v-btn"),m=e.resolveComponent("v-tooltip"),g=e.resolveComponent("v-card-title"),p=e.resolveComponent("v-card-text"),_=e.resolveComponent("v-divider"),v=e.resolveComponent("v-list-subheader"),k=e.resolveComponent("rux-status"),V=e.resolveComponent("v-list-item-title"),C=e.resolveComponent("v-list-item-subtitle"),w=e.resolveComponent("v-list-item"),x=e.resolveComponent("v-list"),D=e.resolveComponent("v-card"),l=e.resolveComponent("v-menu"),E=e.resolveComponent("astro-status-indicator"),R=e.resolveComponent("v-card-subtitle"),z=e.resolveComponent("v-icon"),A=e.resolveComponent("v-card-actions"),O=e.resolveComponent("v-dialog"),H=e.resolveComponent("v-switch");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,{"model-value":t.showNotificationPane,class:"overlay"},null,8,["model-value"]),e.createVNode(l,{modelValue:t.showNotificationPane,"onUpdate:modelValue":o[0]||(o[0]=f=>t.showNotificationPane=f),transition:"slide-y-transition","close-on-content-click":!1,offset:[12,102]},{activator:e.withCtx(({props:f})=>[e.createVNode(r,e.mergeProps(f,{class:"rux-icon",icon:i.notificationVsAlert,label:"Notifications",sublabel:i.activeScripts,status:i.iconStatus,notifications:i.unreadNotifications.length}),null,16,["icon","sublabel","status","notifications"])]),default:e.withCtx(()=>[e.createVNode(D,null,{default:e.withCtx(()=>[e.createVNode(g,{class:"d-flex align-center justify-content-space-between"},{default:e.withCtx(()=>[o[7]||(o[7]=e.createElementVNode("span",null," Notifications ",-1)),e.createVNode(c),e.createVNode(m,{location:"top","open-delay":"350"},{activator:e.withCtx(({props:f})=>[e.createVNode(u,e.mergeProps(f,{class:"ml-1",icon:"mdi-close-box-multiple ",variant:"text",onClick:i.clearNotifications,"data-test":"clear-notifications"}),null,16,["onClick"])]),default:e.withCtx(()=>[o[6]||(o[6]=e.createElementVNode("span",null," Clear all ",-1))]),_:1}),e.createVNode(u,{icon:"astro:settings",variant:"text",onClick:i.toggleSettingsDialog,class:"ml-1","data-test":"notification-settings"},null,8,["onClick"])]),_:1}),t.notifications.length===0?(e.openBlock(),e.createBlock(p,{key:0},{default:e.withCtx(()=>o[8]||(o[8]=[e.createTextVNode(" No notifications ")])),_:1})):(e.openBlock(),e.createBlock(x,{key:1,lines:"two",width:"420","max-height":"80vh",class:"overflow-y-auto","data-test":"notification-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.notificationList,(f,M)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[f.header?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[M!==0?(e.openBlock(),e.createBlock(_,{key:M,class:"mb-2"})):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(v,{key:f.header},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.header),1)]),_:2},1024))],64)):(e.openBlock(),e.createBlock(w,{key:`notification-${M}`,onClick:Ge=>i.openDialog(f),class:"pl-2"},{prepend:e.withCtx(()=>[e.createVNode(k,{class:"px-2",status:i.getStatus(f.level)},null,8,["status"])]),default:e.withCtx(()=>[e.createVNode(V,{class:e.normalizeClass({"text--secondary":f.read,"text-wrap":!0})},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(f.message),1)]),_:2},1032,["class"]),e.createVNode(C,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.formatShortDateTime(f.time)),1)]),_:2},1024)]),_:2},1032,["onClick"]))],64))),256))]),_:1}))]),_:1})]),_:1},8,["modelValue"]),e.createVNode(O,{modelValue:t.notificationDialog,"onUpdate:modelValue":o[3]||(o[3]=f=>t.notificationDialog=f),width:"600"},{default:e.withCtx(()=>[e.createVNode(D,null,{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.selectedNotification.message)+" ",1),e.createVNode(c),e.createVNode(E,{status:t.selectedNotification.level||"INFO"},null,8,["status"])]),_:1}),e.createVNode(R,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.formatShortDateTime(t.selectedNotification.time)),1)]),_:1}),e.createVNode(_),e.createVNode(A,null,{default:e.withCtx(()=>[t.selectedNotification.url?(e.openBlock(),e.createBlock(u,{key:0,color:"primary",variant:"text",onClick:o[1]||(o[1]=f=>i.navigate(t.selectedNotification.url))},{default:e.withCtx(()=>[o[10]||(o[10]=e.createTextVNode(" Open ")),e.createVNode(z,{end:""},{default:e.withCtx(()=>o[9]||(o[9]=[e.createTextVNode(" mdi-open-in-new ")])),_:1})]),_:1})):e.createCommentVNode("",!0),e.createVNode(u,{color:"primary",variant:"text",onClick:o[2]||(o[2]=f=>t.notificationDialog=!1)},{default:e.withCtx(()=>o[11]||(o[11]=[e.createTextVNode(" Close ")])),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),e.createVNode(O,{modelValue:t.settingsDialog,"onUpdate:modelValue":o[5]||(o[5]=f=>t.settingsDialog=f),width:"600"},{default:e.withCtx(()=>[e.createVNode(D,null,{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>o[12]||(o[12]=[e.createTextVNode(" Notification settings ")])),_:1}),e.createVNode(p,null,{default:e.withCtx(()=>[e.createVNode(H,{modelValue:t.showToast,"onUpdate:modelValue":o[4]||(o[4]=f=>t.showToast=f),label:"Show toasts",color:"primary"},null,8,["modelValue"])]),_:1}),e.createVNode(_),e.createVNode(A,null,{default:e.withCtx(()=>[e.createVNode(u,{color:"primary",variant:"text",onClick:i.toggleSettingsDialog},{default:e.withCtx(()=>o[13]||(o[13]=[e.createTextVNode(" Close ")])),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}const F=y._export_sfc(me,[["render",fe],["__scopeId","data-v-76362be6"]]),he={components:{UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},data:function(){return{scopes:["DEFAULT"],scope:"DEFAULT",showUpgradeToEnterpriseDialog:!1}}};function _e(t,o,n,a,s,i){const d=e.resolveComponent("v-select"),r=e.resolveComponent("upgrade-to-enterprise-dialog");return e.openBlock(),e.createElementBlock("div",{style:{cursor:"pointer"},onClick:o[2]||(o[2]=c=>t.showUpgradeToEnterpriseDialog=!0)},[e.createVNode(d,{modelValue:t.scope,"onUpdate:modelValue":o[0]||(o[0]=c=>t.scope=c),items:t.scopes,disabled:t.scopes.length<=1,label:"Scope",density:"compact",variant:"outlined","hide-details":"",style:{"max-width":"150px"}},null,8,["modelValue","items","disabled"]),e.createVNode(r,{modelValue:t.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[1]||(o[1]=c=>t.showUpgradeToEnterpriseDialog=c),reason:"Enterprise allows additional Scopes"},null,8,["modelValue"])])}const I=y._export_sfc(he,[["render",_e]]),ve={components:{UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},props:{size:{type:[String,Number],default:26}},data:function(){let t=OpenC3Auth.user();return{api:new N.mi,showUserMenu:!1,authenticated:!!localStorage.openc3Token,name:t.name,username:t.preferred_username,showUpgradeToEnterpriseDialog:!1,activeUsers:["None"],newsFeed:!1,news:[]}},computed:{unreadNews:function(){return this.news.filter(t=>!t.read)}},watch:{showUserMenu:function(t,o){t===!0&&(this.news.length>0&&(this.news.forEach(n=>{n.read=!0}),localStorage.lastNewsRead=this.news[0].date),this.name!=="Anonymous"&&N.ui.get("/openc3-api/users/active").then(n=>{this.activeUsers=n.data.filter(a=>!a.includes(this.name)),this.activeUsers.length===0&&(this.activeUsers=["None"])}))}},created:function(){this.api.get_setting("news_feed").then(t=>{t&&(this.newsFeed=t,this.newsFeed&&(this.fetchNews(),setInterval(this.fetchNews,60*60*1e3)))}).catch(t=>{})},methods:{refreshNews(){this.api.update_news().then(()=>{this.fetchNews()})},formatDate(t){return t.split("T")[0]},fetchNews:function(){N.ui.get("/openc3-api/news").then(t=>{this.news=t.data.sort((o,n)=>Date.parse(n.date)-Date.parse(o.date)),localStorage.lastNewsRead&&this.news.forEach(o=>{o.read=Date.parse(o.date)<=Date.parse(localStorage.lastNewsRead)})})},logout:function(){OpenC3Auth.logout(),N.ui.put(`/openc3-api/users/logout/${this.username}`)},login:function(){OpenC3Auth.login(location.href)},roles:function(){return this.name==="Anonymous"?"Admin":OpenC3Auth.userroles().map(t=>this.capitalize(t)).sort().join(", ")},capitalize:function(t){return t.charAt(0).toUpperCase()+t.slice(1)}}},ge={style:{"text-align":"center",margin:"5px"}},we={key:0},Ne={class:"roles"},Ce={class:"pb-3 roles"},ke={key:1},ye={key:0,class:"pa-3"},Ve={key:2},xe={key:0},De={class:"news-title"},Se={class:"news-date"},be=["innerHTML"];function Te(t,o,n,a,s,i){const d=e.resolveComponent("v-overlay"),r=e.resolveComponent("rux-monitoring-icon"),c=e.resolveComponent("v-btn"),u=e.resolveComponent("v-row"),m=e.resolveComponent("v-card-text"),g=e.resolveComponent("v-col"),p=e.resolveComponent("v-list-item-title"),_=e.resolveComponent("v-list-item"),v=e.resolveComponent("v-list"),k=e.resolveComponent("v-card"),V=e.resolveComponent("v-menu"),C=e.resolveComponent("upgrade-to-enterprise-dialog");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(d,{"model-value":t.showUserMenu,class:"overlay"},null,8,["model-value"]),e.createVNode(V,{modelValue:t.showUserMenu,"onUpdate:modelValue":o[1]||(o[1]=w=>t.showUserMenu=w),transition:"slide-y-transition","close-on-content-click":!1,offset:20},{activator:e.withCtx(({props:w})=>[e.createVNode(r,e.mergeProps(w,{class:"rux-icon",icon:"person",status:"off",label:t.name,sublabel:i.roles(),notifications:i.unreadNews.length}),null,16,["label","sublabel","notifications"])]),default:e.withCtx(()=>[e.createVNode(k,null,{default:e.withCtx(()=>[e.createVNode(m,{class:"text-center"},{default:e.withCtx(()=>[e.createElementVNode("div",ge,e.toDisplayString(t.name),1),t.name!=="Anonymous"?(e.openBlock(),e.createElementBlock("div",we,[e.createElementVNode("div",Ne,"Username: "+e.toDisplayString(t.username),1),e.createElementVNode("div",Ce,"Roles: "+e.toDisplayString(i.roles()),1)])):e.createCommentVNode("",!0),t.authenticated?(e.openBlock(),e.createElementBlock("div",ke,[e.createVNode(c,{block:"",onClick:i.logout,color:"primary"},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Logout ")])),_:1},8,["onClick"]),t.name!=="Anonymous"?(e.openBlock(),e.createElementBlock("div",ye,[e.createVNode(u,{class:"pt-3 user-title"},{default:e.withCtx(()=>o[4]||(o[4]=[e.createTextVNode("Other Active Users:")])),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.activeUsers,(w,x)=>(e.openBlock(),e.createBlock(u,{key:x,class:"user"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(w),1)]),_:2},1024))),128))])):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",Ve,[e.createVNode(c,{block:"",onClick:i.login,color:"primary"},{default:e.withCtx(()=>o[5]||(o[5]=[e.createTextVNode(" Login ")])),_:1},8,["onClick"])])),t.name==="Anonymous"?(e.openBlock(),e.createElementBlock("div",{key:3,onClick:o[0]||(o[0]=w=>t.showUpgradeToEnterpriseDialog=!0),class:"pt-2 link"},o[6]||(o[6]=[e.createTextVNode(" Click to learn more about"),e.createElementVNode("br",null,null,-1),e.createTextVNode(" COSMOS Enterprise Edition ")]))):e.createCommentVNode("",!0)]),_:1}),t.newsFeed?(e.openBlock(),e.createElementBlock("div",xe,[e.createVNode(u,{"no-gutters":"",class:"news-header"},{default:e.withCtx(()=>[e.createVNode(g,{cols:"auto",class:"me-auto"},{default:e.withCtx(()=>o[7]||(o[7]=[e.createTextVNode("COSMOS News")])),_:1}),e.createVNode(g,{cols:"auto"},{default:e.withCtx(()=>[e.createVNode(c,{onClick:i.refreshNews,color:"primary",density:"compact",block:""},{default:e.withCtx(()=>o[8]||(o[8]=[e.createTextVNode(" Refresh ")])),_:1},8,["onClick"])]),_:1})]),_:1}),e.createVNode(v,{lines:"two",width:"420","max-height":"75vh",class:"overflow-y-auto","data-test":"news-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.news,(w,x)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`news-${x}`},[o[9]||(o[9]=e.createElementVNode("hr",null,null,-1)),e.createVNode(_,{class:"pl-2"},{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createElementVNode("span",De,e.toDisplayString(w.title),1),e.createElementVNode("span",Se,e.toDisplayString(i.formatDate(w.date)),1)]),_:2},1024),e.createElementVNode("div",{innerHTML:w.body},null,8,be)]),_:2},1024)],64))),128))]),_:1})])):e.createCommentVNode("",!0)]),_:1})]),_:1},8,["modelValue"]),e.createVNode(C,{modelValue:t.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[2]||(o[2]=w=>t.showUpgradeToEnterpriseDialog=w),reason:"Enterprise has individual users with RBAC"},null,8,["modelValue"])])}const P=y._export_sfc(ve,[["render",Te],["__scopeId","data-v-3a186f9e"]]),Be={components:{Notifications:F,ScopeSelector:I,UserMenu:P,UpgradeToEnterpriseDialog:B.UpgradeToEnterpriseDialog},props:{edition:{type:String,default:""}},data(){return{api:new N.mi,timeZone:"local",subtitle:null,astro:{hideClock:!1},items:[],drawer:!0,appNav:{},logo:"/img/logo.png",initiallyOpen:[],showUpgradeToEnterpriseDialog:!1,chromeless:this.$route.query.chromeless}},computed:{shownTools:function(){let t={};for(let o of Object.keys(this.appNav))this.appNav[o].shown&&this.appNav[o].category!=="Admin"&&(t[o]=this.appNav[o]);return t},adminTools:function(){let t={};for(let o of Object.keys(this.appNav))this.appNav[o].shown&&this.appNav[o].category==="Admin"&&(t[o]=this.appNav[o]);return t},astroTimeZone:function(){return this.timeZone==="local"?Intl.DateTimeFormat().resolvedOptions().timeZone:this.timeZone}},created(){this.api.get_setting("astro").then(t=>{t&&(this.astro=JSON.parse(t))}).catch(t=>{}),this.api.get_setting("subtitle").then(t=>{t&&(this.subtitle=t)}).catch(t=>{}),this.api.get_setting("time_zone").then(t=>{t&&(this.timeZone=t)}).catch(t=>{}),N.ui.get("/openc3-api/tools/all",{params:{scope:"DEFAULT"}}).then(t=>{this.appNav=t.data;let o=1;for(let n of Object.keys(this.appNav)){if(this.appNav[n].shown){if(this.appNav[n].category&&this.appNav[n].category!=="Admin"){this.initiallyOpen.includes(this.appNav[n].category)||this.initiallyOpen.push(this.appNav[n].category);const a=this.items.filter(s=>s.name===this.appNav[n].category);a.length===0?(this.items.push({id:o,name:this.appNav[n].category,children:[{id:o+1,name:this.appNav[n].name,icon:this.appNav[n].icon,url:this.appNav[n].url,inline_url:this.appNav[n].inline_url,window:this.appNav[n].window}]}),o++):a[0].children.push({id:o,name:this.appNav[n].name,icon:this.appNav[n].icon,url:this.appNav[n].url,inline_url:this.appNav[n].inline_url,window:this.appNav[n].window})}else this.appNav[n].category||this.items.push({id:o,name:this.appNav[n].name,icon:this.appNav[n].icon,url:this.appNav[n].url,inline_url:this.appNav[n].inline_url,window:this.appNav[n].window});o++}if(this.appNav[n].inline_url&&this.appNav[n].window==="INLINE"&&this.appNav[n].folder_name&&this.appNav[n].folder_name!=="base"){let a=this.appNav[n].folder_name,s="@openc3/tool-"+a;U.registerApplication({name:s,app:()=>System.import(s),activeWhen:["/tools/"+a]})}}if(U.start({urlRerouteOnly:!0}),window.location.pathname=="/"||window.location.pathname=="/tools"||window.location.pathname=="/tools/"){for(let n of Object.keys(this.shownTools))if(this.appNav[n].shown){history.replaceState(null,"",this.appNav[n].url);break}}setInterval(()=>{OpenC3Auth.updateToken(120).then(function(n){n&&OpenC3Auth.setTokens()})},6e4)})},methods:{navigateToUrl:U.navigateToUrl,newTabUrl(t){let o=null;try{t.url[0]=="/"&&t.url[1]!="/"?o=new URL(t.url,window.location.origin):o=new URL(t.url),o.searchParams.set("scope",window.openc3Scope)}catch(n){window.$cosmosNotify.serious({title:`Invalid URL '${t.url}' for tool ${t.name}`,message:n.message}),o.href="/"}return o.href}}},Ee=["src"],Me={style:{"text-align":"center","font-size":"18pt"}},Ue=["href","onClick"],Ae=["href"],Oe=["href","onClick"],Le=["href","onClick"],Fe=["href"],Ie=["href"],Pe=["href"],Re=["href"];function ze(t,o,n,a,s,i){const d=e.resolveComponent("v-btn"),r=e.resolveComponent("v-divider"),c=e.resolveComponent("v-icon"),u=e.resolveComponent("v-treeview"),m=e.resolveComponent("v-navigation-drawer"),g=e.resolveComponent("rux-icon"),p=e.resolveComponent("v-row"),_=e.resolveComponent("v-col"),v=e.resolveComponent("rux-clock"),k=e.resolveComponent("v-spacer"),V=e.resolveComponent("scope-selector"),C=e.resolveComponent("notifications"),w=e.resolveComponent("user-menu"),x=e.resolveComponent("v-app-bar"),D=e.resolveComponent("upgrade-to-enterprise-dialog");return e.openBlock(),e.createElementBlock("div",null,[s.chromeless?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(m,{key:0,"model-value":s.drawer,id:"openc3-nav-drawer"},{default:e.withCtx(()=>[e.createElementVNode("img",{src:s.logo,class:"logo",alt:"OpenC3"},null,8,Ee),e.createElementVNode("div",{class:"cosmos",onClick:o[0]||(o[0]=l=>s.showUpgradeToEnterpriseDialog=!0)}," COSMOS "),e.createElementVNode("div",Me,e.toDisplayString(s.subtitle),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.adminTools,(l,E)=>(e.openBlock(),e.createElementBlock("div",{key:E,class:"ma-3"},[e.createVNode(d,{block:"",size:"small",href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"]),class:"fixcenter",color:"primary"},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Admin Console ")])),_:2},1032,["href","onClick"])]))),128)),e.createVNode(r),e.createVNode(u,{items:s.items,opened:s.initiallyOpen,"item-value":"name",density:"compact","open-on-click":""},{prepend:e.withCtx(({item:l})=>[l.icon?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[l.window==="INLINE"?(e.openBlock(),e.createElementBlock("a",{key:0,href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"])},[e.createVNode(c,{class:"mr-2"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.icon),1)]),_:2},1024)],8,Ue)):(e.openBlock(),e.createElementBlock("a",{key:1,href:l.url},[e.createVNode(c,{class:"mr-2"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(l.icon),1)]),_:2},1024)],8,Ae))],64)):e.createCommentVNode("",!0)]),title:e.withCtx(({item:l})=>[l.icon?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[l.window==="INLINE"?(e.openBlock(),e.createElementBlock("a",{key:0,href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"])},e.toDisplayString(l.name),9,Le)):l.window==="IFRAME"?(e.openBlock(),e.createElementBlock("a",{key:1,href:"/tools/iframe?title="+encodeURIComponent(l.name)+"&url="+l.url},e.toDisplayString(l.name),9,Fe)):l.window==="SAME"?(e.openBlock(),e.createElementBlock("a",{key:2,href:l.url},e.toDisplayString(l.name),9,Ie)):(e.openBlock(),e.createElementBlock("a",{key:3,href:l.url,target:"_blank"},e.toDisplayString(l.name),9,Pe))],64)):(e.openBlock(),e.createElementBlock("a",{key:0,href:l.url,onClick:e.withModifiers(()=>i.navigateToUrl(l.url),["prevent"])},e.toDisplayString(l.name),9,Oe))]),append:e.withCtx(({item:l})=>[l.icon?(e.openBlock(),e.createElementBlock("a",{key:0,href:i.newTabUrl(l),target:"_blank"},[e.createVNode(c,null,{default:e.withCtx(()=>o[4]||(o[4]=[e.createTextVNode("mdi-open-in-new")])),_:1})],8,Re)):e.createCommentVNode("",!0)]),_:1},8,["items","opened"])]),_:1},8,["model-value"])),s.chromeless?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(x,{key:1,id:"openc3-app-toolbar"},{default:e.withCtx(()=>[e.createVNode(p,{class:"flex-nowrap",justify:"space-between","no-gutters":""},{default:e.withCtx(()=>[e.createVNode(_,{"align-self":"start"},{default:e.withCtx(()=>[e.createVNode(p,{class:"flex-nowrap"},{default:e.withCtx(()=>[e.createVNode(g,{class:"ml-3 mr-2 pa-2",size:"small",icon:"apps",onClick:o[1]||(o[1]=l=>s.drawer=!s.drawer)}),o[5]||(o[5]=e.createElementVNode("span",{id:"openc3-menu"},null,-1))]),_:1})]),_:1}),e.createVNode(_,null,{default:e.withCtx(()=>[e.createVNode(p,{class:"clock flex-nowrap mt-0"},{default:e.withCtx(()=>[s.astro.hideClock?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(v,{key:0,"date-in":"",timezone:i.astroTimeZone},null,8,["timezone"]))]),_:1})]),_:1}),e.createVNode(_,{"align-self":"center",class:"mt-2"},{default:e.withCtx(()=>[e.createVNode(p,{class:"flex-nowrap"},{default:e.withCtx(()=>[e.createVNode(k),e.createVNode(V,{class:"mr-6 mt-4"}),e.createVNode(C,{class:"mr-6","data-test":"notifications"}),e.createVNode(w,{class:"mr-6"})]),_:1})]),_:1})]),_:1})]),_:1})),e.createVNode(D,{modelValue:s.showUpgradeToEnterpriseDialog,"onUpdate:modelValue":o[2]||(o[2]=l=>s.showUpgradeToEnterpriseDialog=l),reason:"Enterprise adds Calendar and Autonomic"},null,8,["modelValue"])])}const He=y._export_sfc(Be,[["render",ze],["__scopeId","data-v-afa468e5"]]),Xe={data:function(){return{api:null,classification:{text:"",fontColor:"white",backgroundColor:"red",topHeight:0,bottomHeight:0}}},computed:{classificationStyles:function(){return[`--classification-text:"${this.classification.text}";`,`--classification-font-color:${this.classification.fontColor};`,`--classification-background-color:${this.classification.backgroundColor};`,`--classification-height-top:${this.classification.topHeight}px;`,`--classification-height-bottom:${this.classification.bottomHeight}px;`].join("")}},created:function(){this.api=new N.mi,this.load()},methods:{load:function(){this.api.get_setting("classification_banner").then(t=>{t&&(this.classification=JSON.parse(t))}).catch(t=>{})}}},Ye={data(){return{isSet:!0,password:"",confirmPassword:"",oldPassword:"",reset:!1,alert:"",alertType:"success",showAlert:!1}},computed:{options:function(){return{noAuth:!0,noScope:!0}},rules:function(){return{matchPassword:()=>this.password===this.confirmPassword||"Passwords must match"}},formValid:function(){return this.reset?this.isSet?!!this.oldPassword&&!!this.password&&this.password===this.confirmPassword:!!this.password&&this.password===this.confirmPassword:!!this.password}},created:function(){N.ui.get("/openc3-api/auth/token-exists",this.options).then(t=>{this.isSet=!!t.data.result,this.isSet||(this.reset=!0)})},mounted:function(){localStorage.openc3Token&&this.verifyPassword(localStorage.openc3Token,!0)},methods:{showReset:function(){this.reset=!0},login:function(t){localStorage.openc3Token=t.data;const o=new URLSearchParams(window.location.search).get("redirect");o!=null&&o.startsWith("/tools/")?window.location=decodeURI(o):window.location="/"},verifyPassword:function(t,o){t||(t=this.password),this.showAlert=!1,N.ui.post("/openc3-api/auth/verify",{data:{token:t},...this.options}).then(n=>{this.login(n)}).catch(n=>{(n==null?void 0:n.status)===401?this.alert="Incorrect password":this.alert=n.message||"Something went wrong...",this.alertType="warning",this.showAlert=!o})},setPassword:function(){this.showAlert=!1,N.ui.post("/openc3-api/auth/set",{data:{old_token:this.oldPassword,token:this.password},...this.options}).then(t=>{this.login(t)}).catch(t=>{this.alert=`Invalid password: ${t.response.data.message}`,this.alertType="warning",this.showAlert=!0})}}};function je(t,o,n,a,s,i){const d=e.resolveComponent("v-card-title"),r=e.resolveComponent("v-card-subtitle"),c=e.resolveComponent("v-text-field"),u=e.resolveComponent("v-btn"),m=e.resolveComponent("v-spacer"),g=e.resolveComponent("v-row"),p=e.resolveComponent("v-container"),_=e.resolveComponent("v-form"),v=e.resolveComponent("v-card-text"),k=e.resolveComponent("v-alert"),V=e.resolveComponent("v-card");return e.openBlock(),e.createBlock(V,null,{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>o[5]||(o[5]=[e.createTextVNode(" Login ")])),_:1}),e.createVNode(r,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.isSet?"Enter the":"Create a")+" password to begin using OpenC3 ",1)]),_:1}),e.createVNode(v,null,{default:e.withCtx(()=>[e.createVNode(_,null,{default:e.withCtx(()=>[s.isSet&&s.reset?(e.openBlock(),e.createBlock(c,{key:0,modelValue:s.oldPassword,"onUpdate:modelValue":o[0]||(o[0]=C=>s.oldPassword=C),type:"password",label:"Old Password"},null,8,["modelValue"])):e.createCommentVNode("",!0),e.createVNode(c,{modelValue:s.password,"onUpdate:modelValue":o[1]||(o[1]=C=>s.password=C),type:"password",label:`${!s.isSet||s.reset?"New ":""}Password`,"data-test":"new-password"},null,8,["modelValue","label"]),s.reset?(e.openBlock(),e.createBlock(c,{key:1,modelValue:s.confirmPassword,"onUpdate:modelValue":o[2]||(o[2]=C=>s.confirmPassword=C),rules:[i.rules.matchPassword],type:"password",label:"Confirm Password","data-test":"confirm-password"},null,8,["modelValue","rules"])):e.createCommentVNode("",!0),s.reset?(e.openBlock(),e.createBlock(u,{key:2,type:"submit",onClick:e.withModifiers(i.setPassword,["prevent"]),size:"large",color:s.isSet?"warn":"success",disabled:!i.formValid,"data-test":"set-password"},{default:e.withCtx(()=>o[6]||(o[6]=[e.createTextVNode(" Set ")])),_:1},8,["onClick","color","disabled"])):(e.openBlock(),e.createBlock(p,{key:3},{default:e.withCtx(()=>[e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(u,{type:"submit",onClick:o[3]||(o[3]=e.withModifiers(()=>i.verifyPassword(),["prevent"])),size:"large",color:"success",disabled:!i.formValid},{default:e.withCtx(()=>o[7]||(o[7]=[e.createTextVNode(" Login ")])),_:1},8,["disabled"]),e.createVNode(m),e.createVNode(u,{variant:"text",size:"small",onClick:i.showReset},{default:e.withCtx(()=>o[8]||(o[8]=[e.createTextVNode(" Change Password ")])),_:1},8,["onClick"])]),_:1})]),_:1}))]),_:1})]),_:1}),e.createVNode(k,{type:s.alertType,modelValue:s.showAlert,"onUpdate:modelValue":o[4]||(o[4]=C=>s.showAlert=C),closable:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.alert),1)]),_:1},8,["type","modelValue"])]),_:1})}const qe=y._export_sfc(Ye,[["render",je]]),Ze=3e3,We={data:function(){return{dismissed:!1,suppress:!1,discrepancy:0}},created:function(){this.suppress=localStorage.suppresswarning__clock_out_of_sync_with_server==="true",this.suppress||Y.axios.get("/openc3-api/time").then(t=>{this.discrepancy=t.data.now_nsec/1e6-Date.now()}).catch(t=>{this.dismissed=!0})},methods:{dismiss:function(){localStorage.suppresswarning__clock_out_of_sync_with_server=this.suppress,this.dismissed=!0}},computed:{approximateDiscrepancySec:function(){return(this.discrepancy/1e3).toFixed()},dialog:function(){return!this.dismissed&&Math.abs(this.discrepancy)>=Ze}}};function $e(t,o,n,a,s,i){const d=e.resolveComponent("v-card-title"),r=e.resolveComponent("v-checkbox"),c=e.resolveComponent("v-card-text"),u=e.resolveComponent("v-divider"),m=e.resolveComponent("v-btn"),g=e.resolveComponent("v-card-actions"),p=e.resolveComponent("v-card"),_=e.resolveComponent("v-dialog");return e.openBlock(),e.createBlock(_,{modelValue:i.dialog,"onUpdate:modelValue":o[1]||(o[1]=v=>i.dialog=v),width:"500"},{default:e.withCtx(()=>[e.createVNode(p,null,{default:e.withCtx(()=>[e.createVNode(d,null,{default:e.withCtx(()=>o[2]||(o[2]=[e.createTextVNode(" Clock out of sync ")])),_:1}),e.createVNode(c,null,{default:e.withCtx(()=>[e.createTextVNode(" We've detected that your clock is approximately "+e.toDisplayString(Math.abs(i.approximateDiscrepancySec))+" seconds "+e.toDisplayString(i.approximateDiscrepancySec>0?"behind":"ahead of")+" server time. This can cause issues and might have unknown side effects. ",1),e.createVNode(r,{modelValue:t.suppress,"onUpdate:modelValue":o[0]||(o[0]=v=>t.suppress=v),label:"Don't show this again"},null,8,["modelValue"])]),_:1}),e.createVNode(u),e.createVNode(g,null,{default:e.withCtx(()=>[e.createVNode(m,{color:"primary",variant:"text",onClick:i.dismiss},{default:e.withCtx(()=>o[3]||(o[3]=[e.createTextVNode(" Dismiss ")])),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])}const Je=y._export_sfc(We,[["render",$e]]);exports.AppFooter=ce;exports.AppNav=He;exports.ClassificationBanners=Xe;exports.ClockFooter=L;exports.Login=qe;exports.Notifications=F;exports.ScopeSelector=I;exports.TimeCheck=Je;exports.UserMenu=P;
|
|
2
|
+
//# sourceMappingURL=base.cjs.map
|