openc3-cosmos-tool-admin 7.1.1 → 7.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/tools/admin/ArrayWidget-D1PArcGr-3885b67514afe732ba36.js +2 -0
- data/tools/admin/{ArrayplotWidget-D5McM1rY-ddc534bbeddb80cec6bc.js → ArrayplotWidget-DPUPy0qM-b6a1c019189be84e4589.js} +1 -1
- data/tools/admin/{BarColumn-BtP1cQcf-82f974689484e0cd197b.js → BarColumn-BpdscDQf-e551f56c95340d26cda4.js} +1 -1
- data/tools/admin/{BlockWidget-BKMse4hP-164a326ca46bea8d5f68.js → BlockWidget-_VUsK5T9-59058beda215f65a7b09.js} +2 -2
- data/tools/admin/{ButtonWidget-BLNVL46w-30bec2fb7ca85627479b.js → ButtonWidget-DE41o-cg-d0d862704f2cedf509f5.js} +2 -2
- data/tools/admin/CanvasWidget-BEi8h3Mq-e74743c293400ba5a929.js +1 -0
- data/tools/admin/CanvasdotWidget-eZuMgkhL-069ce51cfaf9b6705d69.js +1 -0
- data/tools/admin/{CanvasimageWidget-B_JxCI_f-3aba8a9c0ffbf85e4ba8.js → CanvasimageWidget-COv_Qnc8-0a502afa265efe2f25ad.js} +1 -1
- data/tools/admin/{CanvasimagevalueWidget-DwHIZzWo-e0dfe009cee365df1777.js → CanvasimagevalueWidget-BhuUqLOo-53322c8fb2f548104d57.js} +1 -1
- data/tools/admin/CanvaslabelWidget-DtvbgeYH-0bb6f6c1d49c8d123129.js +1 -0
- data/tools/admin/{CanvaslabelvalueWidget-D1-kZsi--2b8271b0530cf7fa746a.js → CanvaslabelvalueWidget-C_FRIeNb-3b5c9903ad9d379fc52a.js} +1 -1
- data/tools/admin/CanvaslineWidget-D1K_6mAY-986d4445d6db8f24c1b0.js +1 -0
- data/tools/admin/{CanvaslinevalueWidget-DOrasE2j-c868199c9a3a2f7a6773.js → CanvaslinevalueWidget-D4eaxWhR-443b0d3f93af5d0faf5a.js} +1 -1
- data/tools/admin/CheckbuttonWidget-ByxMDkiS-6939f416d1a7977f37fb.js +1 -0
- data/tools/admin/ComboboxWidget-CAGxGv2r-28b0f6b63d807a2f3217.js +1 -0
- data/tools/admin/{DateWidget-DrYZJta_-d8e297f2ffd787082b4f.js → DateWidget-DkNWx28s-bb439088467e3b1af3aa.js} +1 -1
- data/tools/admin/{DetailsDialog-CFCaJZWz-0c96f055ca678fb4b14b.js → DetailsDialog-F4KgYM6m-8435a552f5c10d2191bc.js} +1 -1
- data/tools/admin/{DynamicWidget-BuSbQVhf-6fa02157bd57bdfe5a20.js → DynamicWidget-BuSbQVhf-6a5228328dcebb177ef8.js} +1 -1
- data/tools/admin/{FilechecksumWidget-CTf0XGST-6ed4722d9224c4df6268.js → FilechecksumWidget-DSfNEnDJ-531bbb7d456d380a62d9.js} +1 -1
- data/tools/admin/{FiledisplayWidget-DLJuesmU-b1518c36285da46a9b11.js → FiledisplayWidget-D2cxMmrP-812eb21e2f71f0bd32d6.js} +1 -1
- data/tools/admin/{FormatvalueWidget-DODmUWPH-1382c1a42d71c017c1d2.js → FormatvalueWidget-6-bj_PJO-4c9daa001cba89fb9103.js} +1 -1
- data/tools/admin/{Graph-Cwghj5Pc-0525f379d6f1496a3999.js → Graph-Cz0Ns1FD-9251aa7b63944e24104e.js} +1 -1
- data/tools/admin/{GraphWidget-Rc-fnHCt-c6e6fd9f630161952121.js → GraphWidget-COXK3Dab-18ccb71d08b630c3446f.js} +1 -1
- data/tools/admin/HorizontalWidget-C9UFBPsk-91bd1e11d87736b8c758.js +1 -0
- data/tools/admin/{HorizontalboxWidget-BV7cyhwN-8d7f0d302b4441d96a28.js → HorizontalboxWidget-CWLfmRtr-13d452adc9e1100f23c4.js} +1 -1
- data/tools/admin/HorizontallineWidget-DeFkOaYO-816f7a06f03f7222e67e.js +1 -0
- data/tools/admin/{IframeWidget-BdOS5sm_-1d18e5795b367cb1d5d1.js → IframeWidget-Bn9eGzrq-d71752e23ce712e81e26.js} +1 -1
- data/tools/admin/{ImageLoader-CnlQ4xLd-eb76057b8cc6b4338f5c.js → ImageLoader-_gAudhVo-23300d0d0133307fb169.js} +1 -1
- data/tools/admin/{ImageviewerWidget-DoJBe5eZ-eed183a8926d96ba8c90.js → ImageviewerWidget-BUWhF32Z-0799a243569a53e640e9.js} +1 -1
- data/tools/admin/InterfacesTab-CZsnR6xB-abec32626a92ea91aa87.js +1 -0
- data/tools/admin/{LabelWidget-DYwcB_S4-38e094d08a4b3b72c53d.js → LabelWidget-BhzkN06D-2d7a7f95582b783e18d0.js} +1 -1
- data/tools/admin/{LabelledWidget-D4N2gPxJ-ce836b128a960d3d8b14.js → LabelledWidget-vx8NvW1b-0d3f99aa750f0631fdc2.js} +1 -1
- data/tools/admin/{LabelprogressbarWidget-CRnteLAo-b725b573eb33e7bb4393.js → LabelprogressbarWidget-t5PvKuS4-18438f7d1f021d5247e5.js} +1 -1
- data/tools/admin/LabelsparklineWidget-CebbEH-j-9c683841d069f9e5b25c.js +1 -0
- data/tools/admin/LabelvalueWidget-Cbs1DBK2-8bc763b903941db678a2.js +1 -0
- data/tools/admin/{LabelvaluedescWidget-D5aDNr1o-d05b1c9bc4f065fc00f8.js → LabelvaluedescWidget-B7OIOGc0-21ac0d9663cf49396a58.js} +1 -1
- data/tools/admin/LabelvaluelimitsbarWidget-C57kf-oQ-8929b2b56023fd39369a.js +1 -0
- data/tools/admin/LabelvaluelimitscolumnWidget-BRlNDEqp-d0a4f3d8ee015080c0a8.js +1 -0
- data/tools/admin/LabelvaluerangebarWidget-Pt_evm3v-2f296e2b660ae23cd7e2.js +1 -0
- data/tools/admin/{Layout-BBLYT0gE-48666c2ab3e940bc8337.js → Layout-CKmC50QZ-a4e41facce8302b08009.js} +1 -1
- data/tools/admin/{LedWidget-CL2dOxb7-ab1b39b52db247c57a22.js → LedWidget-D1lmNXpi-c70ab085a7e75d99db2a.js} +1 -1
- data/tools/admin/{LimitsBar-59_qNqi8-96460dbb2763eddb0f7a.js → LimitsBar-D5IZu7eX-eed22332c6603ee4301a.js} +1 -1
- data/tools/admin/{LimitsbarWidget-C0N2611W-be09215203ef71c51ca8.js → LimitsbarWidget-VpxQXE-e-48cfee552a9c695bf8f1.js} +1 -1
- data/tools/admin/{LimitscolorWidget-GfNCPo3i-055d04908d1764ec7f4c.js → LimitscolorWidget-79P41CX7-f2eea333aec5c48967e0.js} +1 -1
- data/tools/admin/{LimitscolumnWidget-ut6NX68S-83764251827e9d6da919.js → LimitscolumnWidget-BFDXhJeZ-4eba19b9d6c713c13db1.js} +1 -1
- data/tools/admin/LinegraphWidget-VqkpOlws-f72604545ff9d950311b.js +1 -0
- data/tools/admin/{MatrixbycolumnsWidget-Cni63alW-5b6abb266b8468a11951.js → MatrixbycolumnsWidget--ihvirDP-0c6d1476cb4af73ce4ec.js} +1 -1
- data/tools/admin/{MicroservicesTab-gCXt9Jlh-ae566dd9addb4d797386.js → MicroservicesTab-CQPpb7j1-7daf01af280d2c44c370.js} +1 -1
- data/tools/admin/{OpenC3TimePicker-WVlNQdKk-82dafbfd86f21e02b597.js → OpenC3TimePicker-B0lAIU91-6e7843b535d6cb333926.js} +1 -1
- data/tools/admin/{OutputDialog-wOewjnk2-c514efc45c452c84f902.js → OutputDialog-DtrpwjGL-73ebd3c55e7ffbc15652.js} +1 -1
- data/tools/admin/PackagesTab-DQ5s3nfh-dfdd8bd24af88c946d9d.js +1 -0
- data/tools/admin/{PluginsTab-CLQ0EbDl-5047f5c4aeb9e86537a5.js → PluginsTab-1tlTx4k1-496335d424694bd25d9a.js} +2 -2
- data/tools/admin/{ProgressbarWidget-BWqCsk87-e2c5a2d279a805d3efd2.js → ProgressbarWidget-BIB3r9SL-2b2e5705da4fe267fc08.js} +1 -1
- data/tools/admin/RadiobuttonWidget-C5rxLM7K-9bdffd0ee597d4386ad7.js +1 -0
- data/tools/admin/RadiogroupWidget-CciTCv1U-f9b9584110d84fad120b.js +1 -0
- data/tools/admin/{RangebarWidget-DsGCC1x7-3f74f8f0831b6b40a42d.js → RangebarWidget-MPQYi2Km-b85a235f8e43da24f3ae.js} +1 -1
- data/tools/admin/{RedisTab-9hUKvLT7-309940c3d130392a1f70.js → RedisTab-DAeGow_e-aad9acabdf7d1943559b.js} +1 -1
- data/tools/admin/{RollupWidget-DGElKXm3-907a5e3ee1b40da8ff9b.js → RollupWidget-CfjGAhzg-f9d66fe1e702f376333e.js} +1 -1
- data/tools/admin/{RoutersTab-Dpq_F5it-6e53c3f7b80a8a4394c0.js → RoutersTab-G4WKtUOo-8f69fb20843fdf62fa85.js} +1 -1
- data/tools/admin/ScrollwindowWidget-CupaygNN-a397b20ae8a40b64a487.js +1 -0
- data/tools/admin/{SecretsTab-DAZeb63H-99fe50bcd5dfb4c1b37b.js → SecretsTab-C9xAxuwO-89d69d126612c7b64f6d.js} +1 -1
- data/tools/admin/{SettingsTab-CHcHYnay-28b2eddedc8430da6c99.js → SettingsTab-BUdeAh4o-f1b85c2ee59d2f206af1.js} +1 -1
- data/tools/admin/{SignalWidget-DRAFunW0-e30484c76f7b3ba91fe1.js → SignalWidget-C-qecoTO-c71ca67fb48f421af75e.js} +1 -1
- data/tools/admin/{SimpleTextDialog-B7XASoZh-b3385c2f5d921dc0cd8e.js → SimpleTextDialog-C-0ZC2bs-48d950cb04fe0c899bab.js} +1 -1
- data/tools/admin/SpacerWidget-VVkOCb6N-356dcf21185ada59e84f.js +1 -0
- data/tools/admin/SparklineWidget-Dsmn38z_-2bd86ac75cf900848cd0.js +1 -0
- data/tools/admin/TabbookWidget-CXklff-l-46b8ed5b3d3fc3f6ff22.js +1 -0
- data/tools/admin/{TargetsTab-DcHwCcSU-89e9ff5556005b9dc355.js → TargetsTab-Ci4cOsIa-d2957154b9bf46fa9617.js} +1 -1
- data/tools/admin/TextboxWidget-CHs2VYIv-55be6bce7cab19177b56.js +1 -0
- data/tools/admin/TextfieldWidget-CdANAW-6-82179a958f191dffd85c.js +1 -0
- data/tools/admin/TimeWidget-D0xT1wXR-52493dd27717545a87bd.js +1 -0
- data/tools/admin/TitleWidget-68NWCcXB-218c5743097602c7a5d8.js +1 -0
- data/tools/admin/{ToolsTab-MCjy5Bf6-0637f1a3a75fdf06961e.js → ToolsTab-BCvmMDIZ-4b33c7b7aab46b7d4119.js} +1 -1
- data/tools/admin/{TsdbTab-4OaejSum-06231378c66fdfdefcc3.js → TsdbTab-BytqwnkN-ddc61c1fffc41912b8cb.js} +1 -1
- data/tools/admin/{VWidget-BgNciXK1-6f5fa1e1cbd09779ddb3.js → VWidget-oMbywhLA-ae9ee9bde0636cb9c9e1.js} +1 -1
- data/tools/admin/ValueWidget-B1aGUBP7-320f2f1feb3886640deb.js +1 -0
- data/tools/admin/ValuelimitsbarWidget-B7KcRjLS-70f46b11dcb2a83a3562.js +1 -0
- data/tools/admin/ValuelimitscolumnWidget-BVt6nLXq-08cf4c90f589d1d23b70.js +1 -0
- data/tools/admin/ValuerangebarWidget-uVZEI32U-ded0715685adaffdaca5.js +1 -0
- data/tools/admin/VerticalWidget-DlftYBjH-ae7352937173846f56d9.js +1 -0
- data/tools/admin/{VerticalboxWidget-OigMLjH8-417cdb72cb30aa8bfbff.js → VerticalboxWidget-C7RrkfY0-a5135be854d46c8d2871.js} +1 -1
- data/tools/admin/{Widget-BiaunQ83-f5d5cb8cc1b25880c13e.js → Widget-D_HaosJK-c49796f3af3288426d03.js} +1 -1
- data/tools/admin/main-320f7a52ead0c027f3e7.js +1502 -0
- data/tools/admin/main.js +1 -1
- data/tools/admin/{settings-08OS6cx2-962b0af96c2434c7b414.js → settings-DZ910lLo-06b2e35cd3b4b6b6686c.js} +1 -1
- metadata +85 -85
- data/tools/admin/ArrayWidget-CmKZQfWB-c2dd94f2c6f8abe8b7ee.js +0 -2
- data/tools/admin/CanvasWidget-1jy1JskS-d04e89c5942d4e27d8a9.js +0 -1
- data/tools/admin/CanvasdotWidget-DxuFGoWt-05d4284fd1e1ba0469bf.js +0 -1
- data/tools/admin/CanvaslabelWidget-Tt4dmAOI-079e7a005cce5d64dda3.js +0 -1
- data/tools/admin/CanvaslineWidget-Din8LMyF-15b79b120e48dc68eb02.js +0 -1
- data/tools/admin/CheckbuttonWidget-A07FryqU-0634ed338432ebf5d77c.js +0 -1
- data/tools/admin/ComboboxWidget-xayce-aY-8dd8816f5d7dad721df4.js +0 -1
- data/tools/admin/HorizontalWidget-CZqN6UYp-4a0ef7500fe5f1b800ee.js +0 -1
- data/tools/admin/HorizontallineWidget-ChDLR_8D-708d272ff70ce91dbd57.js +0 -1
- data/tools/admin/InterfacesTab-CITUnMac-0085a7a386d1f92a98db.js +0 -1
- data/tools/admin/LabelsparklineWidget-Bbjjio1S-def15333338347ba53b1.js +0 -1
- data/tools/admin/LabelvalueWidget-Bc6HtTMO-b8a4464c57b19a98d4b3.js +0 -1
- data/tools/admin/LabelvaluelimitsbarWidget-CMnJoNKz-ca94e01d6d1794ed3ebe.js +0 -1
- data/tools/admin/LabelvaluelimitscolumnWidget-R5ofG4q1-56a2a76adac3f95c82e2.js +0 -1
- data/tools/admin/LabelvaluerangebarWidget-Qa3R2_4p-241f8c6ffc9a55e60551.js +0 -1
- data/tools/admin/LinegraphWidget-DaCyvdnI-d6f10e223bb947f1a3b1.js +0 -1
- data/tools/admin/PackagesTab-DmsuQSmU-294a5184dcaa0a941c15.js +0 -1
- data/tools/admin/RadiobuttonWidget-Dza2r34f-c6fbd6f9a688c787717a.js +0 -1
- data/tools/admin/RadiogroupWidget-DWmZMNmr-0e525d07fbef318dfdc3.js +0 -1
- data/tools/admin/ScrollwindowWidget-BvKT59rV-8b79650ff16295ee4a65.js +0 -1
- data/tools/admin/SpacerWidget-CUGpXBpA-879386da94febbdd5df4.js +0 -1
- data/tools/admin/SparklineWidget-SBWjRrqq-1ad442e32af7d1bb78fe.js +0 -1
- data/tools/admin/TabbookWidget-7l6fPoRA-1c5b5399c2d730902eef.js +0 -1
- data/tools/admin/TextboxWidget-Qb0TNt4Y-5238a3bf1aa8a0007cc7.js +0 -1
- data/tools/admin/TextfieldWidget-DcSGRfnF-4230617ca7538e7f4447.js +0 -1
- data/tools/admin/TimeWidget-aoMkDgRR-545325e26528dd70b1dc.js +0 -1
- data/tools/admin/TitleWidget-C8b9Vp5r-c553e464f08b0cdc3dea.js +0 -1
- data/tools/admin/ValueWidget-B1OvCmXK-eb266467c9a31a007e30.js +0 -1
- data/tools/admin/ValuelimitsbarWidget-CUd9P_Xg-64f29a5b94c0d8b25711.js +0 -1
- data/tools/admin/ValuelimitscolumnWidget-CbThSMma-594c17c8ddaa58712e1b.js +0 -1
- data/tools/admin/ValuerangebarWidget-DjL4ze3d-81cc1402830d1310230c.js +0 -1
- data/tools/admin/VerticalWidget-V5-vGq7l-e930aaa06160609a20b9.js +0 -1
- data/tools/admin/main-05290d67af0d2bba595e.js +0 -1501
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
System.register(["./main-05290d67af0d2bba595e.js","vue","single-spa","./SimpleTextDialog-B7XASoZh-b3385c2f5d921dc0cd8e.js","./settings-08OS6cx2-962b0af96c2434c7b414.js","vue-router","pinia","vuetify"],(function(te,et){"use strict";var $,W,Y,Z,P,j,G,n,r,y,i,o,f,u,h,A,E,v,z,M,k,K,L,N,J,X;return{setters:[p=>{$=p.d,W=p.R,Y=p.S,Z=p.C,P=p.a,j=p.c,G=p.o},p=>{n=p.resolveComponent,r=p.openBlock,y=p.createElementBlock,i=p.createVNode,o=p.withCtx,f=p.createTextVNode,u=p.createElementVNode,h=p.createBlock,A=p.Fragment,E=p.renderList,v=p.toDisplayString,z=p.normalizeClass,M=p.mergeProps,k=p.createCommentVNode,K=p.normalizeProps,L=p.guardReactiveProps,N=p.withModifiers},null,p=>{J=p.E},p=>{X=p.n},null,null,null],execute:(function(){const p="store_url",Q="https://store.openc3.com",B={props:{id:Number,name:String,title:String,author:String,author_extra:Object,description:String,keywords:Array,img_path:String,image_url:String,licenses:Array,homepage:String,repository:String,gem_url:String,minimum_cosmos_version:String,checksum:String,versions:Array,current_version_id:Number,access:String,entitled:Boolean,installAllowed:{type:Boolean,default:!0}},data:function(){return{_api:new j,_storeUrl:"",imageContents:null}},computed:{plugin:function(){return{id:this.id,name:this.name,title:this.title,author:this.author,author_extra:this.author_extra,description:this.description,keywords:this.keywords,img_path:this.img_path,image_url:this.image_url,licenses:this.licenses,homepage:this.homepage,repository:this.repository,gem_url:this.gem_url,minimum_cosmos_version:this.minimum_cosmos_version,checksum:this.checksum,versions:this.versions,current_version_id:this.current_version_id,access:this.access,entitled:this.entitled,installAllowed:this.installAllowed}},canInstall:function(){return this.entitled&&this.installAllowed},installTooltip:function(){return this.installAllowed?this.accessTooltip:"Only admin users can install plugins."},imageContentsWithMimeType:function(){if(this.imageContents){const e={"image/bmp":[66,77],"image/jpeg":[255,216,255],"image/png":[137,80,78,71],"image/gif":[71,73,70,56],"image/webp":[82,73,70,70]},t=new TextEncoder().encode(globalThis.atob(this.imageContents.slice(0,6))).slice(1),a=Object.entries(e).find(([g,s])=>s.every((l,c)=>l===t[c]));if(a){const[g]=a;return`data:${g};base64,${this.imageContents}`}}},_navigableStoreUrl:function(){return this._storeUrl.replace("host.docker.internal","localhost")},storeLink:function(){return this.hasStoreListing&&this._navigableStoreUrl?new URL(`/cosmos_plugins/${this.id}`,this._navigableStoreUrl):null},hasStoreListing:function(){return!!this.id},hasDetails:function(){return this.hasStoreListing?!0:!!this.title&&!!this.description},isPluginInstalled:function(){return!!this.name},accessTooltip:function(){return this.entitled?"":localStorage.getItem("pluginStore.isApiKeySet")!=="true"?"Please add your App Store API key using the settings cog icon.":this.access==="enterprise"?"A COSMOS Enterprise license is required for this plugin.":"Please contact sales@openc3.com for access to this plugin."}},created:async function(){try{this._storeUrl=await this._api.get_setting(p)||Q}catch{this._storeUrl=Q}if(this.img_path)try{const e=new URLSearchParams({volume:"OPENC3_GEMS_VOLUME",scope:globalThis.openc3Scope}),{data:t}=await P.get(`/openc3-api/storage/download_file/${encodeURIComponent(this.img_path)}?${e}`);this.imageContents=t.contents}catch{}}},ie={mixins:[B],props:{modelValue:Boolean},emits:["triggerInstall","triggerUninstall","update:modelValue"],data(){return{showDialog:!1,showCopiedTooltip:!1,installedCosmosVersion:null,selectedVersionId:null}},computed:{isDialogOpen:{get:function(){return this.modelValue||this.showDialog},set:function(e){this.showDialog=e,this.$emit("update:modelValue",e)}},hasVersions:function(){return this.versions&&this.versions.length>0},selectedVersion:function(){if(!this.hasVersions)return null;const e=this.selectedVersionId||this.current_version_id;return this.versions.find(t=>t.id===e)||this.versions[0]},versionOptions:function(){return this.hasVersions?this.versions.map(e=>({title:e.version_number,value:e.id})):[]},versionTitle:function(){return this.selectedVersion?.title||this.title},versionDescription:function(){return this.selectedVersion?.description||this.description},versionKeywords:function(){return this.selectedVersion?.keywords||this.keywords},versionLicenses:function(){return this.selectedVersion?.licenses||this.licenses},versionHomepage:function(){return this.selectedVersion?.homepage||this.homepage},versionRepository:function(){return this.selectedVersion?.repository||this.repository},versionGemUrl:function(){return this.selectedVersion?.gem_url||this.gem_url},versionMinimumCosmosVersion:function(){return this.selectedVersion?.minimum_cosmos_version||this.minimum_cosmos_version},versionChecksum:function(){return this.selectedVersion?.checksum||this.checksum},versionImageUrl:function(){return this.selectedVersion?.image_url||this.image_url},formattedStoreLink:function(){return this._navigableStoreUrl.split("://").at(-1)},versionsAreCompatible:function(){return!this.installedCosmosVersion||!this.versionMinimumCosmosVersion?null:G.gte(this.installedCosmosVersion,this.versionMinimumCosmosVersion)}},created:function(){P.get("/openc3-api/info").then(({data:e})=>{this.installedCosmosVersion=e.version})},mounted:function(){this.selectedVersionId=this.current_version_id},methods:{openDialog:function(){this.isDialogOpen=!0},closeDialog:function(){this.isDialogOpen=!1},install:function(){this.$emit("triggerInstall",{id:this.id,version_id:this.selectedVersionId||this.current_version_id})},uninstall:function(){this.$emit("triggerUninstall",{id:this.id,version_id:this.selectedVersionId||this.current_version_id})},copyChecksum:function(){navigator.clipboard.writeText(this.versionChecksum),this.showCopiedTooltip=!0,setTimeout(()=>{this.showCopiedTooltip=!1},1e3)}}},se=["textContent"],le={key:0,class:"ml-1 font-italic"},ne={class:"plugin-image-backdrop"},oe=["textContent"],ae={class:"mt-3 text-caption font-italic"},re={key:1,class:"font-italic"},ue={class:"mt-3 text-caption font-italic"},ce={class:"mt-3"},de={key:0},pe={key:1};function he(e,t,a,g,s,l){const c=n("v-spacer"),m=n("v-btn"),d=n("v-tooltip"),D=n("v-toolbar"),b=n("v-icon"),V=n("v-select"),C=n("v-card-subtitle"),S=n("v-img"),T=n("v-chip"),I=n("v-text-field"),O=n("v-card-text"),w=n("v-card-actions"),U=n("v-card"),H=n("v-dialog");return r(),h(H,{modelValue:l.isDialogOpen,"onUpdate:modelValue":t[3]||(t[3]=x=>l.isDialogOpen=x),"max-width":"500"},{default:o(()=>[i(U,null,{default:o(()=>[i(D,{height:"24"},{default:o(()=>[i(c),u("span",{textContent:v(l.versionTitle)},null,8,se),i(c),i(d,{location:"top"},{activator:o(({props:x})=>[u("div",K(L(x)),[i(m,{href:e.storeLink,target:"_blank",icon:"mdi-open-in-new",size:"small",variant:"plain"},null,8,["href"])],16)]),default:o(()=>[u("span",null," View at "+v(l.formattedStoreLink),1)]),_:1}),i(m,{icon:"mdi-close-box",variant:"text",density:"compact",onClick:l.closeDialog},null,8,["onClick"])]),_:1}),i(C,{class:"d-flex align-center justify-space-between subtitle-with-version"},{default:o(()=>[u("div",null,[t[4]||(t[4]=f(" By ",-1)),u("strong",null,v(e.author),1),e.author_extra?.badge_text?(r(),y("span",le,v(e.author_extra.badge_text),1)):k("",!0),e.author_extra?.badge_icon?(r(),h(b,{key:1,icon:e.author_extra.badge_icon,size:18,class:"ml-1"},null,8,["icon"])):k("",!0)]),l.hasVersions?(r(),h(V,{key:0,modelValue:s.selectedVersionId,"onUpdate:modelValue":t[0]||(t[0]=x=>s.selectedVersionId=x),items:l.versionOptions,"item-title":"title","item-value":"value",label:"Version",density:"compact",variant:"outlined","hide-details":"",class:"mt-1 version-select"},null,8,["modelValue","items"])):k("",!0)]),_:1}),i(O,null,{default:o(()=>[u("div",ne,[e.imageContentsWithMimeType?(r(),h(S,{key:0,src:e.imageContentsWithMimeType},null,8,["src"])):l.versionImageUrl?(r(),h(S,{key:1,src:l.versionImageUrl},null,8,["src"])):k("",!0)]),u("div",{class:"mt-3",textContent:v(l.versionDescription)},null,8,oe),u("div",ae,[t[5]||(t[5]=f(" Keywords: ",-1)),l.versionKeywords?(r(!0),y(A,{key:0},E(l.versionKeywords,x=>(r(),h(T,{key:x,variant:"flat",color:"primary",size:"x-small",class:"ml-1"},{default:o(()=>[f(v(x),1)]),_:2},1024))),128)):(r(),y("span",re," none "))]),u("div",ue,[t[6]||(t[6]=f(" Licenses: ",-1)),(r(!0),y(A,null,E(l.versionLicenses,x=>(r(),h(T,{key:x,size:"x-small",class:"ml-1"},{default:o(()=>[f(v(x),1)]),_:2},1024))),128))]),u("div",ce,[t[7]||(t[7]=u("span",{class:"text-caption font-italic"}," Minimum COSMOS version: ",-1)),f(" "+v(l.versionMinimumCosmosVersion)+" ",1),l.versionsAreCompatible!==null?(r(),h(d,{key:0,"open-delay":600,location:"top"},{activator:o(({props:x})=>[u("span",K(L(x)),[i(b,{icon:l.versionsAreCompatible?"mdi-check-circle":"mdi-alert",size:"small"},null,8,["icon"])],16)]),default:o(()=>[l.versionsAreCompatible?(r(),y("span",de," Your version of COSMOS meets the requirements. ")):(r(),y("span",pe," Your version of COSMOS is out of date. You can still install this plugin, but it might not work correctly. "))]),_:1})):k("",!0)]),i(I,{modelValue:l.versionChecksum,"onUpdate:modelValue":t[2]||(t[2]=x=>l.versionChecksum=x),class:"mt-3",label:"SHA256",variant:"solo",density:"compact","hide-details":"",readonly:""},{append:o(()=>[i(d,{modelValue:s.showCopiedTooltip,"onUpdate:modelValue":t[1]||(t[1]=x=>s.showCopiedTooltip=x),location:"top","open-on-hover":!1},{activator:o(({props:x})=>[i(m,M(x,{icon:"mdi-content-copy",variant:"text",density:"compact",onClick:l.copyChecksum}),null,16,["onClick"])]),default:o(()=>[t[8]||(t[8]=u("span",null,"Copied!",-1))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])]),_:1}),i(w,{class:"justify-start px-6"},{default:o(()=>[e.isPluginInstalled?(r(),h(m,{key:0,text:"Uninstall","append-icon":"mdi-puzzle-remove",variant:"outlined",color:"red",onClick:l.uninstall},null,8,["onClick"])):(r(),h(d,{key:1,"open-delay":600,location:"top"},{activator:o(({props:x})=>[u("span",K(L(e.canInstall?null:x)),[i(m,{text:"Install","append-icon":"mdi-puzzle-plus",variant:"elevated",disabled:!e.canInstall,onClick:l.install},null,8,["disabled","onClick"])],16)]),default:o(()=>[u("span",null,v(e.installTooltip),1)]),_:1})),l.versionRepository?(r(),h(m,{key:2,text:"Repository","append-icon":"mdi-open-in-new",variant:"outlined",href:l.versionRepository,target:"_blank"},null,8,["href"])):k("",!0),l.versionHomepage?(r(),h(m,{key:3,text:"Homepage","append-icon":"mdi-open-in-new",variant:"outlined",href:l.versionHomepage,target:"_blank"},null,8,["href"])):k("",!0)]),_:1})]),_:1})]),_:1},8,["modelValue"])}const ee=$(ie,[["render",he],["__scopeId","data-v-ac4e664f"]]),ge={components:{PluginDetailsDialog:ee},mixins:[B],emits:["triggerInstall"],data(){return{showDialog:!1}},methods:{openDialog:function(){this.showDialog=!0},install:function(e){this.$emit("triggerInstall",{id:this.id,version_id:e?.version_id||this.current_version_id})}}},me={key:0,class:"ml-1 font-italic"},fe={class:"plugin-image-backdrop"},ve=["textContent"];function _e(e,t,a,g,s,l){const c=n("v-card-title"),m=n("v-icon"),d=n("v-card-subtitle"),D=n("v-img"),b=n("v-card-text"),V=n("v-spacer"),C=n("v-btn"),S=n("v-tooltip"),T=n("v-card-actions"),I=n("v-card"),O=n("plugin-details-dialog");return r(),y(A,null,[i(I,{height:"350",class:"d-flex flex-column",onClick:l.openDialog},{default:o(()=>[i(c,{class:"d-flex align-center justify-content-space-between"},{default:o(()=>[f(v(e.title),1)]),_:1}),i(d,{class:"d-flex align-center justify-content-space-between"},{default:o(()=>[u("div",null,[t[1]||(t[1]=f(" By ",-1)),u("strong",null,v(e.author),1),e.author_extra?.badge_text?(r(),y("span",me,v(e.author_extra.badge_text),1)):k("",!0),e.author_extra?.badge_icon?(r(),h(m,{key:1,icon:e.author_extra.badge_icon,size:18,class:"ml-1"},null,8,["icon"])):k("",!0)])]),_:1}),i(b,null,{default:o(()=>[u("div",fe,[e.image_url?(r(),h(D,{key:0,src:e.image_url,"max-height":"160"},null,8,["src"])):k("",!0)]),u("div",{class:z({"truncate-description":!0,"truncate-2":!!e.image_url,"truncate-10":!e.image_url}),textContent:v(e.description)},null,10,ve)]),_:1}),i(V),i(T,{class:"flex-wrap"},{default:o(()=>[i(S,{"open-delay":600,location:"top"},{activator:o(({props:w})=>[u("span",K(L(e.canInstall?null:w)),[i(C,{text:"Install","append-icon":"mdi-puzzle-plus",variant:"elevated",disabled:!e.canInstall,onClick:N(l.install,["stop"])},null,8,["disabled","onClick"])],16)]),default:o(()=>[u("span",null,v(e.installTooltip),1)]),_:1})]),_:1})]),_:1},8,["onClick"]),s.showDialog?(r(),h(O,M({key:0,modelValue:s.showDialog,"onUpdate:modelValue":t[0]||(t[0]=w=>s.showDialog=w)},e.plugin,{onTriggerInstall:l.install}),null,16,["modelValue","onTriggerInstall"])):k("",!0)],64)}const ye=$(ge,[["render",_e],["__scopeId","data-v-825f4373"]]),q="store_url",F="store_api_key",R="DEFAULT",we="https://store.openc3.com",xe={mixins:[X],props:{modelValue:Boolean},emits:["update:modelValue","update:storeUrl"],data(){return{showDialog:!1,storeUrl:"",apiKey:null,isEnterprise:!1,showApiKeyAlert:!1,suppressApiKeyAlert:!1,rules:{required:e=>!!e||"Required",url:e=>{try{new URL(e)}catch{return"Not a valid URL"}return!0}}}},computed:{accountSettingsUrl:function(){const e=this.storeUrl.replace("host.docker.internal","localhost");return new URL("account",e)}},watch:{apiKey:function(e){this.checkEnterpriseKey(),localStorage.setItem("pluginStore.isApiKeySet",!!e)},isEnterprise:function(e){this.checkEnterpriseKey()},suppressApiKeyAlert:function(e){localStorage.setItem("pluginStore.suppressApiKeyAlert",e)},modelValue:function(e){e&&(this.showDialog=e)},showDialog:function(e){e||this.$emit("update:modelValue",e)}},created:function(){P.get("/openc3-api/info").then(({data:e})=>{this.isEnterprise=e.enterprise}),this.loadSetting(q,{scope:R}),this.loadSetting(F,{scope:R}),this.$emit("update:storeUrl",this.storeUrl)},methods:{checkEnterpriseKey:function(){this.isEnterprise&&this.apiKey===""&&this.openApiKeyAlert()},openApiKeyAlert:function(){localStorage.getItem("pluginStore.suppressApiKeyAlert")!=="true"&&(this.showApiKeyAlert=!0)},closeApiKeyAlert:function(){this.showApiKeyAlert=!1},save:function(){this.saveSetting(q,this.storeUrl,{scope:R}),this.saveSetting(F,this.apiKey,{scope:R}),this.$emit("update:storeUrl",this.storeUrl),this.showDialog=!1},parseSetting:function(e,{setting:t}){switch(t){case q:this.storeUrl=e||we;break;case F:this.apiKey=e||"";break}}}},Ce=["href"];function ke(e,t,a,g,s,l){const c=n("v-spacer"),m=n("v-toolbar"),d=n("v-alert"),D=n("v-text-field"),b=n("v-card-text"),V=n("v-btn"),C=n("v-card-actions"),S=n("v-card"),T=n("v-dialog"),I=n("v-icon"),O=n("v-checkbox");return r(),y(A,null,[i(T,{modelValue:s.showDialog,"onUpdate:modelValue":t[4]||(t[4]=w=>s.showDialog=w),width:"600"},{default:o(()=>[i(m,{height:"24"},{default:o(()=>[i(c),t[7]||(t[7]=u("span",null,"Plugin Store Settings",-1)),i(c)]),_:1}),i(S,{class:"pa-3"},{default:o(()=>[i(d,{modelValue:e.errorLoading,"onUpdate:modelValue":t[0]||(t[0]=w=>e.errorLoading=w),type:"error",closable:"",density:"compact"},{default:o(()=>[f(" Error loading previous configuration due to "+v(e.errorText),1)]),_:1},8,["modelValue"]),i(d,{modelValue:e.errorSaving,"onUpdate:modelValue":t[1]||(t[1]=w=>e.errorSaving=w),type:"error",closable:"",density:"compact"},{default:o(()=>[f(" Error saving due to "+v(e.errorText),1)]),_:1},8,["modelValue"]),i(b,null,{default:o(()=>[i(D,{modelValue:s.storeUrl,"onUpdate:modelValue":t[2]||(t[2]=w=>s.storeUrl=w),label:"Store URL",rules:[s.rules.required,s.rules.url]},null,8,["modelValue","rules"]),i(D,{modelValue:s.apiKey,"onUpdate:modelValue":t[3]||(t[3]=w=>s.apiKey=w),type:"password",label:"API Key"},null,8,["modelValue"])]),_:1}),i(C,null,{default:o(()=>[i(V,{color:"success",variant:"text",text:"Save","data-test":"save-store-settings-btn",onClick:l.save},null,8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),i(T,{modelValue:s.showApiKeyAlert,"onUpdate:modelValue":t[6]||(t[6]=w=>s.showApiKeyAlert=w)},{default:o(()=>[i(S,{class:"pa-3"},{default:o(()=>[i(b,{class:"pb-0"},{default:o(()=>[t[9]||(t[9]=f(" You're using COSMOS Enterprise, but you haven't set an OpenC3 Store API key yet. You must set this to access Enterprise plugins. ",-1)),t[10]||(t[10]=u("br",null,null,-1)),t[11]||(t[11]=u("br",null,null,-1)),t[12]||(t[12]=f(" Visit the ",-1)),u("a",{href:l.accountSettingsUrl,target:"_blank"},[t[8]||(t[8]=f(" OpenC3 Store account settings",-1)),i(I,{icon:"mdi-open-in-new",size:"x-small"})],8,Ce),t[13]||(t[13]=f(" to generate an API key. Then, return here and open the Plugin Store settings with the ",-1)),i(I,{icon:"mdi-cog",size:"small"}),t[14]||(t[14]=f(" icon and paste your API key into the API key field. ",-1))]),_:1}),i(C,null,{default:o(()=>[i(O,{modelValue:s.suppressApiKeyAlert,"onUpdate:modelValue":t[5]||(t[5]=w=>s.suppressApiKeyAlert=w),class:"px-3",label:"Don't show this message again","hide-details":""},null,8,["modelValue"]),i(V,{variant:"elevated",text:"OK",onClick:l.closeApiKeyAlert},null,8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])],64)}const Pe=$(xe,[["render",ke]]),be="https://store.openc3.com",Ve={components:{PluginCard:ye,PluginStoreSettingsDialog:Pe},emits:["close","triggerInstall"],data(){return{api:new j,search:"",showSettingsDialog:!1,plugins:[],storeError:null,storeUrl:be,isEnterprise:!1,isAdmin:!0,loading:!1}},computed:{filteredPlugins:function(){let e=this.plugins;return this.search.length&&(e=e.filter(t=>t.title.toLowerCase().includes(this.search.toLowerCase()))),e},formattedStoreUrl:function(){return this.storeUrl.split("://").at(-1)},installAllowed:function(){return!this.isEnterprise||this.isAdmin}},mounted:function(){this.fetchPluginStoreData(),this.fetchUserContext()},methods:{fetchPluginStoreData:function(){this.loading=!0,P.get("/openc3-api/pluginstore").then(({data:e})=>{if(e.error){const{title:t,body:a}=e;this.storeError={title:t,body:a},this.plugins=[]}else this.storeError=null,this.plugins=e}).finally(()=>{this.loading=!1})},fetchUserContext:function(){P.get("/openc3-api/info").then(({data:t})=>{this.isEnterprise=!!t.enterprise});const e=OpenC3Auth.userroles()||[];this.isAdmin=e.includes("admin")},close:function(){this.$emit("close")},install:function(e){this.$emit("triggerInstall",e),this.close()},openSettings:function(){this.showSettingsDialog=!0},updatePluginStore:function(e){this.storeUrl=e,this.loading=!0,this.api.update_plugin_store().then(t=>{this.fetchPluginStoreData()})}}},Se={class:"d-flex justify-content-space-between"},De={class:"d-inline-flex align-center w-100"},Te={key:1,class:"d-flex justify-center align-center py-12","data-test":"plugin-store-loading"};function Ue(e,t,a,g,s,l){const c=n("v-spacer"),m=n("v-btn"),d=n("v-tooltip"),D=n("v-text-field"),b=n("v-alert"),V=n("v-progress-circular"),C=n("plugin-card"),S=n("v-col"),T=n("v-row"),I=n("v-container"),O=n("v-sheet"),w=n("plugin-store-settings-dialog");return r(),y(A,null,[i(O,{class:"pb-11 pt-8 px-8",height:"100%"},{default:o(()=>[u("div",Se,[t[2]||(t[2]=u("div",null,[u("div",{class:"text-h3 mb-3"},"OpenC3 Plugin Store"),u("div",{class:"text-subtitle-1"}," Browse plugins made by OpenC3 and the COSMOS community ")],-1)),i(c),i(m,{icon:"mdi-cog",variant:"text",onClick:l.openSettings},null,8,["onClick"]),i(d,{location:"top"},{activator:o(({props:U})=>[u("div",K(L(U)),[i(m,{href:s.storeUrl,target:"_blank",icon:"mdi-open-in-new",variant:"text",class:"mx-2"},null,8,["href"])],16)]),default:o(()=>[u("span",null," Open "+v(l.formattedStoreUrl),1)]),_:1}),i(m,{icon:"mdi-close",variant:"text",onClick:l.close},null,8,["onClick"])]),u("div",De,[i(D,{modelValue:s.search,"onUpdate:modelValue":t[0]||(t[0]=U=>s.search=U),label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",variant:"outlined",density:"compact","single-line":"","hide-details":"","data-test":"search-plugin-store"},null,8,["modelValue"])]),i(c),t[4]||(t[4]=u("span",{class:""}," Click on a plugin to see more information about it ",-1)),s.storeError?(r(),h(b,{key:0,class:"mt-6",color:"error",title:s.storeError.title,text:s.storeError.body},null,8,["title","text"])):s.loading?(r(),y("div",Te,[i(V,{indeterminate:"",color:"primary",size:"48"}),t[3]||(t[3]=u("span",{class:"ml-4 text-subtitle-1"},"Loading plugins...",-1))])):(r(),h(I,{key:2},{default:o(()=>[i(T,null,{default:o(()=>[(r(!0),y(A,null,E(l.filteredPlugins,U=>(r(),h(S,{key:U.id,cols:"4"},{default:o(()=>[i(C,M({ref_for:!0},U,{"install-allowed":l.installAllowed,onTriggerInstall:l.install}),null,16,["install-allowed","onTriggerInstall"])]),_:2},1024))),128))]),_:1})]),_:1}))]),_:1}),i(w,{modelValue:s.showSettingsDialog,"onUpdate:modelValue":t[1]||(t[1]=U=>s.showSettingsDialog=U),"onUpdate:storeUrl":l.updatePluginStore},null,8,["modelValue","onUpdate:storeUrl"])],64)}const Ae=$(Ve,[["render",Ue]]),Ie={components:{PluginDetailsDialog:ee},mixins:[B],props:{targets:{type:Array,default:()=>[]},isModified:Boolean,microservices:{type:Object,default:()=>({})}},emits:["edit","delete","upgrade"],data(){return{showCard:!1}},computed:{displayTitle:function(){return this.title?this.title:this.name.replace(/^openc3-cosmos-/,"").replace(/-?\d+\.\d+\.\d+(?:\.pre\.beta\d+\.\d+)?\.gem(?:__\d+)?$/,"")},getMicroservicesForPlugin:function(){const e=[];for(const[t,a]of Object.entries(this.microservices))a.plugin===this.name&&e.push(t);return e},microserviceCount:function(){return this.getMicroservicesForPlugin.length}},methods:{openDetails:function(){this.hasDetails&&(this.showCard=!0)},downloadPlugin:function(){P.post(`/openc3-api/packages/${this.name}/download`).then(e=>{const t=window.atob(e.data.contents),a=new Uint8Array(t.length);for(let l=0;l<t.length;++l)a[l]=t.charCodeAt(l);const g=new Blob([a],{type:"application/zip"}),s=document.createElement("a");s.href=URL.createObjectURL(g),s.setAttribute("download",e.data.filename),s.click()})},downloadTarget:function(e){P.post(`/openc3-api/targets/${e}/download`).then(t=>{const a=window.atob(t.data.contents),g=new Uint8Array(a.length);for(let c=0;c<a.length;++c)g[c]=a.charCodeAt(c);const s=new Blob([g],{type:"application/zip"}),l=document.createElement("a");l.href=URL.createObjectURL(s),l.setAttribute("download",t.data.filename),l.click()})},edit:function(){this.$emit("edit")},upgrade:function(){this.$emit("upgrade")},viewMicroservices:function(){const e=this.getMicroservicesForPlugin.join(",");this.$router.push({path:"/tools/admin/microservices",query:{services:e}})},deletePrompt:function(){this.showCard=!1,this.$emit("delete")}}},Oe=["textContent"],$e={class:"text-subtitle-2 v-list-item-subtitle pl-0"},Me={key:0},Ee=["onClick","textContent"],Ke=["textContent"];function Le(e,t,a,g,s,l){const c=n("v-img"),m=n("v-icon"),d=n("v-list-item"),D=n("v-list"),b=n("v-menu"),V=n("plugin-details-dialog");return r(),y(A,null,[u("tr",{class:z({"cursor-pointer":e.hasDetails}),"data-test":"plugin-list-item"},[u("td",null,[e.imageContentsWithMimeType?(r(),h(c,{key:0,src:e.imageContentsWithMimeType,"max-height":"56","min-width":"56"},null,8,["src"])):k("",!0)]),u("td",null,[u("div",{class:"text-h6",onClick:t[0]||(t[0]=(...C)=>l.openDetails&&l.openDetails(...C)),textContent:v(l.displayTitle)},null,8,Oe),u("div",$e,[a.isModified?(r(),y(A,{key:0},[f(" * ")],64)):k("",!0),f(" "+v(e.name),1)]),a.targets?.length?(r(),y("div",Me,[(r(!0),y(A,null,E(a.targets,(C,S)=>(r(),y("span",{key:S,class:"mr-2"},[C.modified?(r(),y("a",{key:0,style:{cursor:"pointer"},onClick:N(T=>l.downloadTarget(C.name),["prevent"]),textContent:v(C.name)},null,8,Ee)):(r(),y("span",{key:1,textContent:v(C.name)},null,8,Ke))]))),128))])):k("",!0)]),u("td",null,[i(b,null,{activator:o(({props:C})=>[i(m,M(C,{icon:"mdi-dots-horizontal","data-test":"plugin-actions"}),null,16)]),default:o(()=>[i(D,null,{default:o(()=>[i(d,{title:"Download","prepend-icon":"mdi-download","data-test":"download-plugin",onClick:l.downloadPlugin},null,8,["onClick"]),i(d,{title:"Edit Details","prepend-icon":"mdi-pencil","data-test":"edit-plugin",onClick:l.edit},null,8,["onClick"]),i(d,{title:"Upgrade","prepend-icon":"mdi-update","data-test":"upgrade-plugin",onClick:l.upgrade},null,8,["onClick"]),i(d,{title:`View Microservices (${l.microserviceCount})`,"prepend-icon":"mdi-tab","data-test":"view-microservices",onClick:l.viewMicroservices},null,8,["title","onClick"]),i(d,{title:"Delete","prepend-icon":"mdi-delete","data-test":"delete-plugin",onClick:l.deletePrompt},null,8,["onClick"])]),_:1})]),_:1})])],2),s.showCard?(r(),h(V,M({key:0,modelValue:s.showCard,"onUpdate:modelValue":t[1]||(t[1]=C=>s.showCard=C)},e.plugin,{onTriggerUninstall:l.deletePrompt}),null,16,["modelValue","onTriggerUninstall"])):k("",!0)],64)}const je=$(Ie,[["render",Le]]),ze={components:{PluginListItem:je},props:{plugins:{type:Array,required:!0},targets:{type:Object,required:!0},showDefaultTools:{type:Boolean,default:!1},defaultPlugins:{type:Array,required:!0}},emits:["edit","delete","upgrade"],data(){return{showPluginDetails:!1,detailPlugin:null,microservices:{}}},computed:{shownPlugins(){const e=[],t=[];return this.plugins.forEach(a=>{const g=a.name.split("__")[0].split("-").slice(0,-1).join("-");this.defaultPlugins.includes(g)?t.push(a):e.push(a)}),e.sort((a,g)=>a.name<g.name?-1:a.name>g.name?1:0),this.showDefaultTools?(t.sort((a,g)=>a.name<g.name?-1:a.name>g.name?1:0),e.concat(t)):e}},mounted(){this.fetchMicroservices()},methods:{showDetails:function(e){this.detailPlugin=e,this.showPluginDetails=!0},pluginTargets:function(e){let t=[];for(const a in this.targets)this.targets[a].plugin===e&&t.push(this.targets[a]);return t},isModified:function(e){return Object.entries(this.targets).some(([t,a])=>a.plugin===e&&a.modified===!0)},editPlugin:function(e){this.$emit("edit",e)},upgradePlugin(e){this.$emit("upgrade",e)},deletePrompt:function(e){this.$emit("delete",e)},fetchMicroservices:function(){P.get("/openc3-api/microservices/all").then(e=>{this.microservices=e.data})}}};function Re(e,t,a,g,s,l){const c=n("plugin-list-item"),m=n("v-data-table");return r(),h(m,{headers:[],items:l.shownPlugins,density:"compact",class:"list","data-test":"plugin-list"},{item:o(({item:d})=>[(r(),h(c,M({key:d.name},d,{targets:l.pluginTargets(d.name),"is-modified":l.isModified(d.name),microservices:s.microservices,onEdit:()=>l.editPlugin(d.name),onUpgrade:()=>l.upgradePlugin(d.name),onDelete:()=>l.deletePrompt(d.name)}),null,16,["targets","is-modified","microservices","onEdit","onUpgrade","onDelete"]))]),_:1},8,["items"])}const Ne=$(ze,[["render",Re],["__scopeId","data-v-16a76865"]]),Be={components:{PluginDialog:Z,PluginList:Ne,PluginStore:Ae,ModifiedPluginDialog:Y,SimpleTextDialog:J},mixins:[W],data(){return{pluginName:null,variables:{},storePluginId:null,storeVersionId:null,minCosmosVersion:null,pluginTxt:"",file:null,currentPlugin:null,pluginHashTmp:null,existingPluginTxt:null,progress:0,pluginDelete:!1,api:new j,plugins:[],targets:{},processes:{},alert:"",alertType:"success",showAlert:!1,showDownloadDialog:!1,showProcessOutput:!1,processOutput:"",showPluginStore:!1,showPluginDialog:!1,showModifiedPluginDialog:!1,showDefaultTools:!1,timeZone:"local",defaultPlugins:["openc3-cosmos-tool-admin","openc3-cosmos-tool-bucketexplorer","openc3-cosmos-tool-cmdsender","openc3-cosmos-tool-cmdqueue","openc3-cosmos-tool-cmdhistory","openc3-cosmos-tool-cmdtlmserver","openc3-cosmos-tool-dataextractor","openc3-cosmos-tool-dataviewer","openc3-cosmos-tool-docs","openc3-cosmos-tool-handbooks","openc3-cosmos-tool-iframe","openc3-cosmos-tool-limitsmonitor","openc3-cosmos-tool-packetviewer","openc3-cosmos-tool-scriptrunner","openc3-cosmos-tool-tablemanager","openc3-cosmos-tool-tlmgrapher","openc3-cosmos-tool-tlmviewer","openc3-cosmos-enterprise-tool-admin","openc3-cosmos-tool-autonomic","openc3-cosmos-tool-calendar","openc3-cosmos-tool-grafana","openc3-cosmos-tool-logexplorer","openc3-cosmos-tool-notebooks","openc3-cosmos-tool-systemhealth","openc3-enterprise-tool-base","openc3-tool-base"]}},watch:{showPluginDialog:function(e,t){e===!1&&(this.file=null,this.$refs.fileInput.value=null)}},created(){this.api.update_plugin_store(),this.api.get_setting("time_zone").then(e=>{e&&(this.timeZone=e)}).catch(()=>{})},mounted(){this.update(),this.updateProcesses();const e=this;window.onpopstate=function(){e.showPluginStore&&(e.showPluginStore=!1,history.go(1))}},methods:{resetControlState:function(){this.pluginName=null,this.variables={},this.storePluginId=null,this.storeVersionId=null,this.minCosmosVersion=null,this.pluginTxt="",this.file=null,this.currentPlugin=null,this.pluginHashTmp=null,this.existingPluginTxt=null,this.progress=0,this.pluginDelete=!1},pluginTargets:function(e){let t=[];for(const a in this.targets)this.targets[a].plugin===e&&t.push(this.targets[a]);return t},isModified:function(e){return Object.entries(this.targets).some(([t,a])=>a.plugin===e&&a.modified===!0)},showOutput:function(e){this.processOutput=e.output,this.showProcessOutput=!0},update:function(){P.get("/openc3-api/plugins/all").then(e=>{this.plugins=Object.entries(e.data).map(([t,a])=>a)}),P.get("/openc3-api/targets_modified").then(e=>{this.targets=e.data})},updateProcesses:function(){P.get("openc3-api/process_status/plugin_?substr=true").then(e=>{this.processes=e.data,Object.keys(this.processes).length>0&&setTimeout(()=>{this.updateProcesses(),this.update()},5e3)})},upload:function(e=null,t=null){const a=e?"put":"post",g=e?`/openc3-api/plugins/${e}`:"/openc3-api/plugins",s=new FormData;t===null?s.append("plugin",this.file,this.file.name):(s.append("store_plugin_id",t.id),s.append("store_version_id",t.version_id));let l=this;P[a](g,{data:s,headers:{"Content-Type":"multipart/form-data"},onUploadProgress:function(c){let m=Math.round(c.loaded*100/c.total);l.progress=m}}).then(c=>{this.progress=100,this.alert="Uploaded file",this.alertType="success",this.showAlert=!0,setTimeout(()=>{this.showAlert=!1},5e3),this.update();let m=null;c.data.existing_plugin_txt_lines!==void 0&&(m=c.data.existing_plugin_txt_lines.join(`
|
|
1
|
+
System.register(["./main-320f7a52ead0c027f3e7.js","vue","single-spa","./SimpleTextDialog-C-0ZC2bs-48d950cb04fe0c899bab.js","./settings-DZ910lLo-06b2e35cd3b4b6b6686c.js","vue-router","pinia","vuetify"],(function(te,et){"use strict";var $,W,Y,Z,P,j,G,n,r,y,i,o,f,u,h,A,E,v,z,M,k,K,L,N,J,Q;return{setters:[p=>{$=p.f,W=p.R,Y=p.C,Z=p.$,P=p.u,j=p.g,G=p.c},p=>{n=p.resolveComponent,r=p.openBlock,y=p.createElementBlock,i=p.createVNode,o=p.withCtx,f=p.createTextVNode,u=p.createElementVNode,h=p.createBlock,A=p.Fragment,E=p.renderList,v=p.toDisplayString,z=p.normalizeClass,M=p.mergeProps,k=p.createCommentVNode,K=p.normalizeProps,L=p.guardReactiveProps,N=p.withModifiers},null,p=>{J=p.E},p=>{Q=p.n},null,null,null],execute:(function(){const p="store_url",X="https://store.openc3.com",B={props:{id:Number,name:String,title:String,author:String,author_extra:Object,description:String,keywords:Array,img_path:String,image_url:String,licenses:Array,homepage:String,repository:String,gem_url:String,minimum_cosmos_version:String,checksum:String,versions:Array,current_version_id:Number,access:String,entitled:Boolean,installAllowed:{type:Boolean,default:!0}},data:function(){return{_api:new j,_storeUrl:"",imageContents:null}},computed:{plugin:function(){return{id:this.id,name:this.name,title:this.title,author:this.author,author_extra:this.author_extra,description:this.description,keywords:this.keywords,img_path:this.img_path,image_url:this.image_url,licenses:this.licenses,homepage:this.homepage,repository:this.repository,gem_url:this.gem_url,minimum_cosmos_version:this.minimum_cosmos_version,checksum:this.checksum,versions:this.versions,current_version_id:this.current_version_id,access:this.access,entitled:this.entitled,installAllowed:this.installAllowed}},canInstall:function(){return this.entitled&&this.installAllowed},installTooltip:function(){return this.installAllowed?this.accessTooltip:"Only admin users can install plugins."},imageContentsWithMimeType:function(){if(this.imageContents){const e={"image/bmp":[66,77],"image/jpeg":[255,216,255],"image/png":[137,80,78,71],"image/gif":[71,73,70,56],"image/webp":[82,73,70,70]},t=new TextEncoder().encode(globalThis.atob(this.imageContents.slice(0,6))).slice(1),a=Object.entries(e).find(([g,s])=>s.every((l,c)=>l===t[c]));if(a){const[g]=a;return`data:${g};base64,${this.imageContents}`}}},_navigableStoreUrl:function(){return this._storeUrl.replace("host.docker.internal","localhost")},storeLink:function(){return this.hasStoreListing&&this._navigableStoreUrl?new URL(`/cosmos_plugins/${this.id}`,this._navigableStoreUrl):null},hasStoreListing:function(){return!!this.id},hasDetails:function(){return this.hasStoreListing?!0:!!this.title&&!!this.description},isPluginInstalled:function(){return!!this.name},accessTooltip:function(){return this.entitled?"":localStorage.getItem("pluginStore.isApiKeySet")!=="true"?"Please add your App Store API key using the settings cog icon.":this.access==="enterprise"?"A COSMOS Enterprise license is required for this plugin.":"Please contact sales@openc3.com for access to this plugin."}},created:async function(){try{this._storeUrl=await this._api.get_setting(p)||X}catch{this._storeUrl=X}if(this.img_path)try{const e=new URLSearchParams({volume:"OPENC3_GEMS_VOLUME",scope:globalThis.openc3Scope}),{data:t}=await P.get(`/openc3-api/storage/download_file/${encodeURIComponent(this.img_path)}?${e}`);this.imageContents=t.contents}catch{}}},ie={mixins:[B],props:{modelValue:Boolean},emits:["triggerInstall","triggerUninstall","update:modelValue"],data(){return{showDialog:!1,showCopiedTooltip:!1,installedCosmosVersion:null,selectedVersionId:null}},computed:{isDialogOpen:{get:function(){return this.modelValue||this.showDialog},set:function(e){this.showDialog=e,this.$emit("update:modelValue",e)}},hasVersions:function(){return this.versions&&this.versions.length>0},selectedVersion:function(){if(!this.hasVersions)return null;const e=this.selectedVersionId||this.current_version_id;return this.versions.find(t=>t.id===e)||this.versions[0]},versionOptions:function(){return this.hasVersions?this.versions.map(e=>({title:e.version_number,value:e.id})):[]},versionTitle:function(){return this.selectedVersion?.title||this.title},versionDescription:function(){return this.selectedVersion?.description||this.description},versionKeywords:function(){return this.selectedVersion?.keywords||this.keywords},versionLicenses:function(){return this.selectedVersion?.licenses||this.licenses},versionHomepage:function(){return this.selectedVersion?.homepage||this.homepage},versionRepository:function(){return this.selectedVersion?.repository||this.repository},versionGemUrl:function(){return this.selectedVersion?.gem_url||this.gem_url},versionMinimumCosmosVersion:function(){return this.selectedVersion?.minimum_cosmos_version||this.minimum_cosmos_version},versionChecksum:function(){return this.selectedVersion?.checksum||this.checksum},versionImageUrl:function(){return this.selectedVersion?.image_url||this.image_url},formattedStoreLink:function(){return this._navigableStoreUrl.split("://").at(-1)},versionsAreCompatible:function(){return!this.installedCosmosVersion||!this.versionMinimumCosmosVersion?null:G.gte(this.installedCosmosVersion,this.versionMinimumCosmosVersion)}},created:function(){P.get("/openc3-api/info").then(({data:e})=>{this.installedCosmosVersion=e.version})},mounted:function(){this.selectedVersionId=this.current_version_id},methods:{openDialog:function(){this.isDialogOpen=!0},closeDialog:function(){this.isDialogOpen=!1},install:function(){this.$emit("triggerInstall",{id:this.id,version_id:this.selectedVersionId||this.current_version_id})},uninstall:function(){this.$emit("triggerUninstall",{id:this.id,version_id:this.selectedVersionId||this.current_version_id})},copyChecksum:function(){navigator.clipboard.writeText(this.versionChecksum),this.showCopiedTooltip=!0,setTimeout(()=>{this.showCopiedTooltip=!1},1e3)}}},se=["textContent"],le={key:0,class:"ml-1 font-italic"},ne={class:"plugin-image-backdrop"},oe=["textContent"],ae={class:"mt-3 text-caption font-italic"},re={key:1,class:"font-italic"},ue={class:"mt-3 text-caption font-italic"},ce={class:"mt-3"},de={key:0},pe={key:1};function he(e,t,a,g,s,l){const c=n("v-spacer"),m=n("v-btn"),d=n("v-tooltip"),D=n("v-toolbar"),b=n("v-icon"),V=n("v-select"),C=n("v-card-subtitle"),S=n("v-img"),T=n("v-chip"),I=n("v-text-field"),O=n("v-card-text"),w=n("v-card-actions"),U=n("v-card"),H=n("v-dialog");return r(),h(H,{modelValue:l.isDialogOpen,"onUpdate:modelValue":t[3]||(t[3]=x=>l.isDialogOpen=x),"max-width":"500"},{default:o(()=>[i(U,null,{default:o(()=>[i(D,{height:"24"},{default:o(()=>[i(c),u("span",{textContent:v(l.versionTitle)},null,8,se),i(c),i(d,{location:"top"},{activator:o(({props:x})=>[u("div",K(L(x)),[i(m,{href:e.storeLink,target:"_blank",icon:"mdi-open-in-new",size:"small",variant:"plain"},null,8,["href"])],16)]),default:o(()=>[u("span",null," View at "+v(l.formattedStoreLink),1)]),_:1}),i(m,{icon:"mdi-close-box",variant:"text",density:"compact",onClick:l.closeDialog},null,8,["onClick"])]),_:1}),i(C,{class:"d-flex align-center justify-space-between subtitle-with-version"},{default:o(()=>[u("div",null,[t[4]||(t[4]=f(" By ",-1)),u("strong",null,v(e.author),1),e.author_extra?.badge_text?(r(),y("span",le,v(e.author_extra.badge_text),1)):k("",!0),e.author_extra?.badge_icon?(r(),h(b,{key:1,icon:e.author_extra.badge_icon,size:18,class:"ml-1"},null,8,["icon"])):k("",!0)]),l.hasVersions?(r(),h(V,{key:0,modelValue:s.selectedVersionId,"onUpdate:modelValue":t[0]||(t[0]=x=>s.selectedVersionId=x),items:l.versionOptions,"item-title":"title","item-value":"value",label:"Version",density:"compact",variant:"outlined","hide-details":"",class:"mt-1 version-select"},null,8,["modelValue","items"])):k("",!0)]),_:1}),i(O,null,{default:o(()=>[u("div",ne,[e.imageContentsWithMimeType?(r(),h(S,{key:0,src:e.imageContentsWithMimeType},null,8,["src"])):l.versionImageUrl?(r(),h(S,{key:1,src:l.versionImageUrl},null,8,["src"])):k("",!0)]),u("div",{class:"mt-3",textContent:v(l.versionDescription)},null,8,oe),u("div",ae,[t[5]||(t[5]=f(" Keywords: ",-1)),l.versionKeywords?(r(!0),y(A,{key:0},E(l.versionKeywords,x=>(r(),h(T,{key:x,variant:"flat",color:"primary",size:"x-small",class:"ml-1"},{default:o(()=>[f(v(x),1)]),_:2},1024))),128)):(r(),y("span",re," none "))]),u("div",ue,[t[6]||(t[6]=f(" Licenses: ",-1)),(r(!0),y(A,null,E(l.versionLicenses,x=>(r(),h(T,{key:x,size:"x-small",class:"ml-1"},{default:o(()=>[f(v(x),1)]),_:2},1024))),128))]),u("div",ce,[t[7]||(t[7]=u("span",{class:"text-caption font-italic"}," Minimum COSMOS version: ",-1)),f(" "+v(l.versionMinimumCosmosVersion)+" ",1),l.versionsAreCompatible!==null?(r(),h(d,{key:0,"open-delay":600,location:"top"},{activator:o(({props:x})=>[u("span",K(L(x)),[i(b,{icon:l.versionsAreCompatible?"mdi-check-circle":"mdi-alert",size:"small"},null,8,["icon"])],16)]),default:o(()=>[l.versionsAreCompatible?(r(),y("span",de," Your version of COSMOS meets the requirements. ")):(r(),y("span",pe," Your version of COSMOS is out of date. You can still install this plugin, but it might not work correctly. "))]),_:1})):k("",!0)]),i(I,{modelValue:l.versionChecksum,"onUpdate:modelValue":t[2]||(t[2]=x=>l.versionChecksum=x),class:"mt-3",label:"SHA256",variant:"solo",density:"compact","hide-details":"",readonly:""},{append:o(()=>[i(d,{modelValue:s.showCopiedTooltip,"onUpdate:modelValue":t[1]||(t[1]=x=>s.showCopiedTooltip=x),location:"top","open-on-hover":!1},{activator:o(({props:x})=>[i(m,M(x,{icon:"mdi-content-copy",variant:"text",density:"compact",onClick:l.copyChecksum}),null,16,["onClick"])]),default:o(()=>[t[8]||(t[8]=u("span",null,"Copied!",-1))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])]),_:1}),i(w,{class:"justify-start px-6"},{default:o(()=>[e.isPluginInstalled?(r(),h(m,{key:0,text:"Uninstall","append-icon":"mdi-puzzle-remove",variant:"outlined",color:"red",onClick:l.uninstall},null,8,["onClick"])):(r(),h(d,{key:1,"open-delay":600,location:"top"},{activator:o(({props:x})=>[u("span",K(L(e.canInstall?null:x)),[i(m,{text:"Install","append-icon":"mdi-puzzle-plus",variant:"elevated",disabled:!e.canInstall,onClick:l.install},null,8,["disabled","onClick"])],16)]),default:o(()=>[u("span",null,v(e.installTooltip),1)]),_:1})),l.versionRepository?(r(),h(m,{key:2,text:"Repository","append-icon":"mdi-open-in-new",variant:"outlined",href:l.versionRepository,target:"_blank"},null,8,["href"])):k("",!0),l.versionHomepage?(r(),h(m,{key:3,text:"Homepage","append-icon":"mdi-open-in-new",variant:"outlined",href:l.versionHomepage,target:"_blank"},null,8,["href"])):k("",!0)]),_:1})]),_:1})]),_:1},8,["modelValue"])}const ee=$(ie,[["render",he],["__scopeId","data-v-ac4e664f"]]),ge={components:{PluginDetailsDialog:ee},mixins:[B],emits:["triggerInstall"],data(){return{showDialog:!1}},methods:{openDialog:function(){this.showDialog=!0},install:function(e){this.$emit("triggerInstall",{id:this.id,version_id:e?.version_id||this.current_version_id})}}},me={key:0,class:"ml-1 font-italic"},fe={class:"plugin-image-backdrop"},ve=["textContent"];function _e(e,t,a,g,s,l){const c=n("v-card-title"),m=n("v-icon"),d=n("v-card-subtitle"),D=n("v-img"),b=n("v-card-text"),V=n("v-spacer"),C=n("v-btn"),S=n("v-tooltip"),T=n("v-card-actions"),I=n("v-card"),O=n("plugin-details-dialog");return r(),y(A,null,[i(I,{height:"350",class:"d-flex flex-column",onClick:l.openDialog},{default:o(()=>[i(c,{class:"d-flex align-center justify-content-space-between"},{default:o(()=>[f(v(e.title),1)]),_:1}),i(d,{class:"d-flex align-center justify-content-space-between"},{default:o(()=>[u("div",null,[t[1]||(t[1]=f(" By ",-1)),u("strong",null,v(e.author),1),e.author_extra?.badge_text?(r(),y("span",me,v(e.author_extra.badge_text),1)):k("",!0),e.author_extra?.badge_icon?(r(),h(m,{key:1,icon:e.author_extra.badge_icon,size:18,class:"ml-1"},null,8,["icon"])):k("",!0)])]),_:1}),i(b,null,{default:o(()=>[u("div",fe,[e.image_url?(r(),h(D,{key:0,src:e.image_url,"max-height":"160"},null,8,["src"])):k("",!0)]),u("div",{class:z({"truncate-description":!0,"truncate-2":!!e.image_url,"truncate-10":!e.image_url}),textContent:v(e.description)},null,10,ve)]),_:1}),i(V),i(T,{class:"flex-wrap"},{default:o(()=>[i(S,{"open-delay":600,location:"top"},{activator:o(({props:w})=>[u("span",K(L(e.canInstall?null:w)),[i(C,{text:"Install","append-icon":"mdi-puzzle-plus",variant:"elevated",disabled:!e.canInstall,onClick:N(l.install,["stop"])},null,8,["disabled","onClick"])],16)]),default:o(()=>[u("span",null,v(e.installTooltip),1)]),_:1})]),_:1})]),_:1},8,["onClick"]),s.showDialog?(r(),h(O,M({key:0,modelValue:s.showDialog,"onUpdate:modelValue":t[0]||(t[0]=w=>s.showDialog=w)},e.plugin,{onTriggerInstall:l.install}),null,16,["modelValue","onTriggerInstall"])):k("",!0)],64)}const ye=$(ge,[["render",_e],["__scopeId","data-v-825f4373"]]),q="store_url",F="store_api_key",R="DEFAULT",we="https://store.openc3.com",xe={mixins:[Q],props:{modelValue:Boolean},emits:["update:modelValue","update:storeUrl"],data(){return{showDialog:!1,storeUrl:"",apiKey:null,isEnterprise:!1,showApiKeyAlert:!1,suppressApiKeyAlert:!1,rules:{required:e=>!!e||"Required",url:e=>{try{new URL(e)}catch{return"Not a valid URL"}return!0}}}},computed:{accountSettingsUrl:function(){const e=this.storeUrl.replace("host.docker.internal","localhost");return new URL("account",e)}},watch:{apiKey:function(e){this.checkEnterpriseKey(),localStorage.setItem("pluginStore.isApiKeySet",!!e)},isEnterprise:function(e){this.checkEnterpriseKey()},suppressApiKeyAlert:function(e){localStorage.setItem("pluginStore.suppressApiKeyAlert",e)},modelValue:function(e){e&&(this.showDialog=e)},showDialog:function(e){e||this.$emit("update:modelValue",e)}},created:function(){P.get("/openc3-api/info").then(({data:e})=>{this.isEnterprise=e.enterprise}),this.loadSetting(q,{scope:R}),this.loadSetting(F,{scope:R}),this.$emit("update:storeUrl",this.storeUrl)},methods:{checkEnterpriseKey:function(){this.isEnterprise&&this.apiKey===""&&this.openApiKeyAlert()},openApiKeyAlert:function(){localStorage.getItem("pluginStore.suppressApiKeyAlert")!=="true"&&(this.showApiKeyAlert=!0)},closeApiKeyAlert:function(){this.showApiKeyAlert=!1},save:function(){this.saveSetting(q,this.storeUrl,{scope:R}),this.saveSetting(F,this.apiKey,{scope:R}),this.$emit("update:storeUrl",this.storeUrl),this.showDialog=!1},parseSetting:function(e,{setting:t}){switch(t){case q:this.storeUrl=e||we;break;case F:this.apiKey=e||"";break}}}},Ce=["href"];function ke(e,t,a,g,s,l){const c=n("v-spacer"),m=n("v-toolbar"),d=n("v-alert"),D=n("v-text-field"),b=n("v-card-text"),V=n("v-btn"),C=n("v-card-actions"),S=n("v-card"),T=n("v-dialog"),I=n("v-icon"),O=n("v-checkbox");return r(),y(A,null,[i(T,{modelValue:s.showDialog,"onUpdate:modelValue":t[4]||(t[4]=w=>s.showDialog=w),width:"600"},{default:o(()=>[i(m,{height:"24"},{default:o(()=>[i(c),t[7]||(t[7]=u("span",null,"Plugin Store Settings",-1)),i(c)]),_:1}),i(S,{class:"pa-3"},{default:o(()=>[i(d,{modelValue:e.errorLoading,"onUpdate:modelValue":t[0]||(t[0]=w=>e.errorLoading=w),type:"error",closable:"",density:"compact"},{default:o(()=>[f(" Error loading previous configuration due to "+v(e.errorText),1)]),_:1},8,["modelValue"]),i(d,{modelValue:e.errorSaving,"onUpdate:modelValue":t[1]||(t[1]=w=>e.errorSaving=w),type:"error",closable:"",density:"compact"},{default:o(()=>[f(" Error saving due to "+v(e.errorText),1)]),_:1},8,["modelValue"]),i(b,null,{default:o(()=>[i(D,{modelValue:s.storeUrl,"onUpdate:modelValue":t[2]||(t[2]=w=>s.storeUrl=w),label:"Store URL",rules:[s.rules.required,s.rules.url]},null,8,["modelValue","rules"]),i(D,{modelValue:s.apiKey,"onUpdate:modelValue":t[3]||(t[3]=w=>s.apiKey=w),type:"password",label:"API Key"},null,8,["modelValue"])]),_:1}),i(C,null,{default:o(()=>[i(V,{color:"success",variant:"text",text:"Save","data-test":"save-store-settings-btn",onClick:l.save},null,8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),i(T,{modelValue:s.showApiKeyAlert,"onUpdate:modelValue":t[6]||(t[6]=w=>s.showApiKeyAlert=w)},{default:o(()=>[i(S,{class:"pa-3"},{default:o(()=>[i(b,{class:"pb-0"},{default:o(()=>[t[9]||(t[9]=f(" You're using COSMOS Enterprise, but you haven't set an OpenC3 Store API key yet. You must set this to access Enterprise plugins. ",-1)),t[10]||(t[10]=u("br",null,null,-1)),t[11]||(t[11]=u("br",null,null,-1)),t[12]||(t[12]=f(" Visit the ",-1)),u("a",{href:l.accountSettingsUrl,target:"_blank"},[t[8]||(t[8]=f(" OpenC3 Store account settings",-1)),i(I,{icon:"mdi-open-in-new",size:"x-small"})],8,Ce),t[13]||(t[13]=f(" to generate an API key. Then, return here and open the Plugin Store settings with the ",-1)),i(I,{icon:"mdi-cog",size:"small"}),t[14]||(t[14]=f(" icon and paste your API key into the API key field. ",-1))]),_:1}),i(C,null,{default:o(()=>[i(O,{modelValue:s.suppressApiKeyAlert,"onUpdate:modelValue":t[5]||(t[5]=w=>s.suppressApiKeyAlert=w),class:"px-3",label:"Don't show this message again","hide-details":""},null,8,["modelValue"]),i(V,{variant:"elevated",text:"OK",onClick:l.closeApiKeyAlert},null,8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])],64)}const Pe=$(xe,[["render",ke]]),be="https://store.openc3.com",Ve={components:{PluginCard:ye,PluginStoreSettingsDialog:Pe},emits:["close","triggerInstall"],data(){return{api:new j,search:"",showSettingsDialog:!1,plugins:[],storeError:null,storeUrl:be,isEnterprise:!1,isAdmin:!0,loading:!1}},computed:{filteredPlugins:function(){let e=this.plugins;return this.search.length&&(e=e.filter(t=>t.title.toLowerCase().includes(this.search.toLowerCase()))),e},formattedStoreUrl:function(){return this.storeUrl.split("://").at(-1)},installAllowed:function(){return!this.isEnterprise||this.isAdmin}},mounted:function(){this.fetchPluginStoreData(),this.fetchUserContext()},methods:{fetchPluginStoreData:function(){this.loading=!0,P.get("/openc3-api/pluginstore").then(({data:e})=>{if(e.error){const{title:t,body:a}=e;this.storeError={title:t,body:a},this.plugins=[]}else this.storeError=null,this.plugins=e}).finally(()=>{this.loading=!1})},fetchUserContext:function(){P.get("/openc3-api/info").then(({data:t})=>{this.isEnterprise=!!t.enterprise});const e=OpenC3Auth.userroles()||[];this.isAdmin=e.includes("admin")},close:function(){this.$emit("close")},install:function(e){this.$emit("triggerInstall",e),this.close()},openSettings:function(){this.showSettingsDialog=!0},updatePluginStore:function(e){this.storeUrl=e,this.loading=!0,this.api.update_plugin_store().then(t=>{this.fetchPluginStoreData()})}}},Se={class:"d-flex justify-content-space-between"},De={class:"d-inline-flex align-center w-100"},Te={key:1,class:"d-flex justify-center align-center py-12","data-test":"plugin-store-loading"};function Ue(e,t,a,g,s,l){const c=n("v-spacer"),m=n("v-btn"),d=n("v-tooltip"),D=n("v-text-field"),b=n("v-alert"),V=n("v-progress-circular"),C=n("plugin-card"),S=n("v-col"),T=n("v-row"),I=n("v-container"),O=n("v-sheet"),w=n("plugin-store-settings-dialog");return r(),y(A,null,[i(O,{class:"pb-11 pt-8 px-8",height:"100%"},{default:o(()=>[u("div",Se,[t[2]||(t[2]=u("div",null,[u("div",{class:"text-h3 mb-3"},"OpenC3 Plugin Store"),u("div",{class:"text-subtitle-1"}," Browse plugins made by OpenC3 and the COSMOS community ")],-1)),i(c),i(m,{icon:"mdi-cog",variant:"text",onClick:l.openSettings},null,8,["onClick"]),i(d,{location:"top"},{activator:o(({props:U})=>[u("div",K(L(U)),[i(m,{href:s.storeUrl,target:"_blank",icon:"mdi-open-in-new",variant:"text",class:"mx-2"},null,8,["href"])],16)]),default:o(()=>[u("span",null," Open "+v(l.formattedStoreUrl),1)]),_:1}),i(m,{icon:"mdi-close",variant:"text",onClick:l.close},null,8,["onClick"])]),u("div",De,[i(D,{modelValue:s.search,"onUpdate:modelValue":t[0]||(t[0]=U=>s.search=U),label:"Search","prepend-inner-icon":"mdi-magnify",clearable:"",variant:"outlined",density:"compact","single-line":"","hide-details":"","data-test":"search-plugin-store"},null,8,["modelValue"])]),i(c),t[4]||(t[4]=u("span",{class:""}," Click on a plugin to see more information about it ",-1)),s.storeError?(r(),h(b,{key:0,class:"mt-6",color:"error",title:s.storeError.title,text:s.storeError.body},null,8,["title","text"])):s.loading?(r(),y("div",Te,[i(V,{indeterminate:"",color:"primary",size:"48"}),t[3]||(t[3]=u("span",{class:"ml-4 text-subtitle-1"},"Loading plugins...",-1))])):(r(),h(I,{key:2},{default:o(()=>[i(T,null,{default:o(()=>[(r(!0),y(A,null,E(l.filteredPlugins,U=>(r(),h(S,{key:U.id,cols:"4"},{default:o(()=>[i(C,M({ref_for:!0},U,{"install-allowed":l.installAllowed,onTriggerInstall:l.install}),null,16,["install-allowed","onTriggerInstall"])]),_:2},1024))),128))]),_:1})]),_:1}))]),_:1}),i(w,{modelValue:s.showSettingsDialog,"onUpdate:modelValue":t[1]||(t[1]=U=>s.showSettingsDialog=U),"onUpdate:storeUrl":l.updatePluginStore},null,8,["modelValue","onUpdate:storeUrl"])],64)}const Ae=$(Ve,[["render",Ue]]),Ie={components:{PluginDetailsDialog:ee},mixins:[B],props:{targets:{type:Array,default:()=>[]},isModified:Boolean,microservices:{type:Object,default:()=>({})}},emits:["edit","delete","upgrade"],data(){return{showCard:!1}},computed:{displayTitle:function(){return this.title?this.title:this.name.replace(/^openc3-cosmos-/,"").replace(/-?\d+\.\d+\.\d+(?:\.pre\.beta\d+\.\d+)?\.gem(?:__\d+)?$/,"")},getMicroservicesForPlugin:function(){const e=[];for(const[t,a]of Object.entries(this.microservices))a.plugin===this.name&&e.push(t);return e},microserviceCount:function(){return this.getMicroservicesForPlugin.length}},methods:{openDetails:function(){this.hasDetails&&(this.showCard=!0)},downloadPlugin:function(){P.post(`/openc3-api/packages/${this.name}/download`).then(e=>{const t=window.atob(e.data.contents),a=new Uint8Array(t.length);for(let l=0;l<t.length;++l)a[l]=t.charCodeAt(l);const g=new Blob([a],{type:"application/zip"}),s=document.createElement("a");s.href=URL.createObjectURL(g),s.setAttribute("download",e.data.filename),s.click()})},downloadTarget:function(e){P.post(`/openc3-api/targets/${e}/download`).then(t=>{const a=window.atob(t.data.contents),g=new Uint8Array(a.length);for(let c=0;c<a.length;++c)g[c]=a.charCodeAt(c);const s=new Blob([g],{type:"application/zip"}),l=document.createElement("a");l.href=URL.createObjectURL(s),l.setAttribute("download",t.data.filename),l.click()})},edit:function(){this.$emit("edit")},upgrade:function(){this.$emit("upgrade")},viewMicroservices:function(){const e=this.getMicroservicesForPlugin.join(",");this.$router.push({path:"/tools/admin/microservices",query:{services:e}})},deletePrompt:function(){this.showCard=!1,this.$emit("delete")}}},Oe=["textContent"],$e={class:"text-subtitle-2 v-list-item-subtitle pl-0"},Me={key:0},Ee=["onClick","textContent"],Ke=["textContent"];function Le(e,t,a,g,s,l){const c=n("v-img"),m=n("v-icon"),d=n("v-list-item"),D=n("v-list"),b=n("v-menu"),V=n("plugin-details-dialog");return r(),y(A,null,[u("tr",{class:z({"cursor-pointer":e.hasDetails}),"data-test":"plugin-list-item"},[u("td",null,[e.imageContentsWithMimeType?(r(),h(c,{key:0,src:e.imageContentsWithMimeType,"max-height":"56","min-width":"56"},null,8,["src"])):k("",!0)]),u("td",null,[u("div",{class:"text-h6",onClick:t[0]||(t[0]=(...C)=>l.openDetails&&l.openDetails(...C)),textContent:v(l.displayTitle)},null,8,Oe),u("div",$e,[a.isModified?(r(),y(A,{key:0},[f(" * ")],64)):k("",!0),f(" "+v(e.name),1)]),a.targets?.length?(r(),y("div",Me,[(r(!0),y(A,null,E(a.targets,(C,S)=>(r(),y("span",{key:S,class:"mr-2"},[C.modified?(r(),y("a",{key:0,style:{cursor:"pointer"},onClick:N(T=>l.downloadTarget(C.name),["prevent"]),textContent:v(C.name)},null,8,Ee)):(r(),y("span",{key:1,textContent:v(C.name)},null,8,Ke))]))),128))])):k("",!0)]),u("td",null,[i(b,null,{activator:o(({props:C})=>[i(m,M(C,{icon:"mdi-dots-horizontal","data-test":"plugin-actions"}),null,16)]),default:o(()=>[i(D,null,{default:o(()=>[i(d,{title:"Download","prepend-icon":"mdi-download","data-test":"download-plugin",onClick:l.downloadPlugin},null,8,["onClick"]),i(d,{title:"Edit Details","prepend-icon":"mdi-pencil","data-test":"edit-plugin",onClick:l.edit},null,8,["onClick"]),i(d,{title:"Upgrade","prepend-icon":"mdi-update","data-test":"upgrade-plugin",onClick:l.upgrade},null,8,["onClick"]),i(d,{title:`View Microservices (${l.microserviceCount})`,"prepend-icon":"mdi-tab","data-test":"view-microservices",onClick:l.viewMicroservices},null,8,["title","onClick"]),i(d,{title:"Delete","prepend-icon":"mdi-delete","data-test":"delete-plugin",onClick:l.deletePrompt},null,8,["onClick"])]),_:1})]),_:1})])],2),s.showCard?(r(),h(V,M({key:0,modelValue:s.showCard,"onUpdate:modelValue":t[1]||(t[1]=C=>s.showCard=C)},e.plugin,{onTriggerUninstall:l.deletePrompt}),null,16,["modelValue","onTriggerUninstall"])):k("",!0)],64)}const je=$(Ie,[["render",Le]]),ze={components:{PluginListItem:je},props:{plugins:{type:Array,required:!0},targets:{type:Object,required:!0},showDefaultTools:{type:Boolean,default:!1},defaultPlugins:{type:Array,required:!0}},emits:["edit","delete","upgrade"],data(){return{showPluginDetails:!1,detailPlugin:null,microservices:{}}},computed:{shownPlugins(){const e=[],t=[];return this.plugins.forEach(a=>{const g=a.name.split("__")[0].split("-").slice(0,-1).join("-");this.defaultPlugins.includes(g)?t.push(a):e.push(a)}),e.sort((a,g)=>a.name<g.name?-1:a.name>g.name?1:0),this.showDefaultTools?(t.sort((a,g)=>a.name<g.name?-1:a.name>g.name?1:0),e.concat(t)):e}},mounted(){this.fetchMicroservices()},methods:{showDetails:function(e){this.detailPlugin=e,this.showPluginDetails=!0},pluginTargets:function(e){let t=[];for(const a in this.targets)this.targets[a].plugin===e&&t.push(this.targets[a]);return t},isModified:function(e){return Object.entries(this.targets).some(([t,a])=>a.plugin===e&&a.modified===!0)},editPlugin:function(e){this.$emit("edit",e)},upgradePlugin(e){this.$emit("upgrade",e)},deletePrompt:function(e){this.$emit("delete",e)},fetchMicroservices:function(){P.get("/openc3-api/microservices/all").then(e=>{this.microservices=e.data})}}};function Re(e,t,a,g,s,l){const c=n("plugin-list-item"),m=n("v-data-table");return r(),h(m,{headers:[],items:l.shownPlugins,density:"compact",class:"list","data-test":"plugin-list"},{item:o(({item:d})=>[(r(),h(c,M({key:d.name},d,{targets:l.pluginTargets(d.name),"is-modified":l.isModified(d.name),microservices:s.microservices,onEdit:()=>l.editPlugin(d.name),onUpgrade:()=>l.upgradePlugin(d.name),onDelete:()=>l.deletePrompt(d.name)}),null,16,["targets","is-modified","microservices","onEdit","onUpgrade","onDelete"]))]),_:1},8,["items"])}const Ne=$(ze,[["render",Re],["__scopeId","data-v-16a76865"]]),Be={components:{PluginDialog:Z,PluginList:Ne,PluginStore:Ae,ModifiedPluginDialog:Y,SimpleTextDialog:J},mixins:[W],data(){return{pluginName:null,variables:{},storePluginId:null,storeVersionId:null,minCosmosVersion:null,pluginTxt:"",file:null,currentPlugin:null,pluginHashTmp:null,existingPluginTxt:null,progress:0,pluginDelete:!1,api:new j,plugins:[],targets:{},processes:{},alert:"",alertType:"success",showAlert:!1,showDownloadDialog:!1,showProcessOutput:!1,processOutput:"",showPluginStore:!1,showPluginDialog:!1,showModifiedPluginDialog:!1,showDefaultTools:!1,timeZone:"local",defaultPlugins:["openc3-cosmos-tool-admin","openc3-cosmos-tool-bucketexplorer","openc3-cosmos-tool-cmdsender","openc3-cosmos-tool-cmdqueue","openc3-cosmos-tool-cmdhistory","openc3-cosmos-tool-cmdtlmserver","openc3-cosmos-tool-dataextractor","openc3-cosmos-tool-dataviewer","openc3-cosmos-tool-docs","openc3-cosmos-tool-handbooks","openc3-cosmos-tool-iframe","openc3-cosmos-tool-limitsmonitor","openc3-cosmos-tool-packetviewer","openc3-cosmos-tool-scriptrunner","openc3-cosmos-tool-tablemanager","openc3-cosmos-tool-tlmgrapher","openc3-cosmos-tool-tlmviewer","openc3-cosmos-enterprise-tool-admin","openc3-cosmos-tool-autonomic","openc3-cosmos-tool-calendar","openc3-cosmos-tool-grafana","openc3-cosmos-tool-logexplorer","openc3-cosmos-tool-notebooks","openc3-cosmos-tool-systemhealth","openc3-enterprise-tool-base","openc3-tool-base"]}},watch:{showPluginDialog:function(e,t){e===!1&&(this.file=null,this.$refs.fileInput.value=null)}},created(){this.api.update_plugin_store(),this.api.get_setting("time_zone").then(e=>{e&&(this.timeZone=e)}).catch(()=>{})},mounted(){this.update(),this.updateProcesses();const e=this;window.onpopstate=function(){e.showPluginStore&&(e.showPluginStore=!1,history.go(1))}},methods:{resetControlState:function(){this.pluginName=null,this.variables={},this.storePluginId=null,this.storeVersionId=null,this.minCosmosVersion=null,this.pluginTxt="",this.file=null,this.currentPlugin=null,this.pluginHashTmp=null,this.existingPluginTxt=null,this.progress=0,this.pluginDelete=!1},pluginTargets:function(e){let t=[];for(const a in this.targets)this.targets[a].plugin===e&&t.push(this.targets[a]);return t},isModified:function(e){return Object.entries(this.targets).some(([t,a])=>a.plugin===e&&a.modified===!0)},showOutput:function(e){this.processOutput=e.output,this.showProcessOutput=!0},update:function(){P.get("/openc3-api/plugins/all").then(e=>{this.plugins=Object.entries(e.data).map(([t,a])=>a)}),P.get("/openc3-api/targets_modified").then(e=>{this.targets=e.data})},updateProcesses:function(){P.get("openc3-api/process_status/plugin_?substr=true").then(e=>{this.processes=e.data,Object.keys(this.processes).length>0&&setTimeout(()=>{this.updateProcesses(),this.update()},5e3)})},upload:function(e=null,t=null){const a=e?"put":"post",g=e?`/openc3-api/plugins/${e}`:"/openc3-api/plugins",s=new FormData;t===null?s.append("plugin",this.file,this.file.name):(s.append("store_plugin_id",t.id),s.append("store_version_id",t.version_id));let l=this;P[a](g,{data:s,headers:{"Content-Type":"multipart/form-data"},onUploadProgress:function(c){let m=Math.round(c.loaded*100/c.total);l.progress=m}}).then(c=>{this.progress=100,this.alert="Uploaded file",this.alertType="success",this.showAlert=!0,setTimeout(()=>{this.showAlert=!1},5e3),this.update();let m=null;c.data.existing_plugin_txt_lines!==void 0&&(m=c.data.existing_plugin_txt_lines.join(`
|
|
2
2
|
`));let d=c.data.plugin_txt_lines.join(`
|
|
3
3
|
`);this.pluginName=c.data.name,this.variables=c.data.variables,this.storePluginId=c.data.store_plugin_id,this.storeVersionId=c.data.store_version_id,this.minCosmosVersion=c.data.minimum_cosmos_version,this.pluginTxt=d,this.existingPluginTxt=m,this.showPluginDialog=!0,this.file=void 0}).catch(c=>{this.currentPlugin=null,this.file=void 0})},pluginCallback:function(e){this.showPluginDialog=!1,this.currentPlugin!==null&&(e.name=this.currentPlugin),this.pluginHashTmp=e,this.isModified(this.currentPlugin)?(this.pluginDelete=!1,this.showModifiedPluginDialog=!0):this.pluginInstall()},modifiedSubmit:async function(e){if(e===!0)for(let t of this.pluginTargets(this.currentPlugin))t.modified==!0&&await P.post(`/openc3-api/targets/${t.name}/delete_modified`);this.pluginDelete?this.deletePlugin(this.currentPlugin):this.pluginInstall()},pluginInstall:function(){P.post(`/openc3-api/plugins/install/${this.pluginName}`,{data:{plugin_hash:JSON.stringify(this.pluginHashTmp)}}).then(e=>{this.alert=`Started installing plugin ${this.pluginName} ...`,this.alertType="success",this.showAlert=!0,this.currentPlugin=null,this.file=void 0,this.variables={},this.pluginTxt="",this.existingPluginTxt=null,this.storePluginId=null,this.storeVersionId=null,setTimeout(()=>{this.showAlert=!1,this.updateProcesses()},5e3),this.update()})},editPlugin:function(e){this.resetControlState(),P.get(`/openc3-api/plugins/${e}`).then(t=>{let a=null;t.data.existing_plugin_txt_lines!==void 0&&(a=t.data.existing_plugin_txt_lines.join(`
|
|
4
4
|
`)),this.pluginName=t.data.name,this.variables=t.data.variables,this.pluginTxt=t.data.plugin_txt_lines.join(`
|
|
5
|
-
`),this.existingPluginTxt=a,this.showPluginDialog=!0})},deletePrompt:function(e){this.resetControlState(),this.$dialog.confirm(`Are you sure you want to remove: ${e}`,{okText:"Delete",cancelText:"Cancel"}).then(t=>{this.isModified(e)?(this.currentPlugin=e,this.pluginDelete=!0,this.showModifiedPluginDialog=!0):this.deletePlugin(e)})},deletePlugin:function(e){this.alert=`Removing plugin ${e} ...`,this.alertType="success",this.showAlert=!0,P.delete(`/openc3-api/plugins/${e}`).then(t=>{setTimeout(()=>{this.showAlert=!1,this.updateProcesses()},5e3)}),this.update()},upgradePlugin(e){this.resetControlState(),this.currentPlugin=e,this.$refs.fileInput.click()},selectFile(){this.resetControlState(),this.$refs.fileInput.click()},fileChange(e){const t=e.target.files;if(t.length>0)if(this.file=t[0],this.currentPlugin!==null)if(this.file.name.split(".gem")[0]==this.currentPlugin.split(".gem")[0])this.$dialog.confirm(`The new gem ${this.file.name} appears to be identical to the existing ${this.currentPlugin}. Install?`,{okText:"Ok",cancelText:"Cancel"}).then(()=>{this.upload(this.currentPlugin)}).catch(a=>{});else{let a=this.file.name.split("-"),g=a.findIndex(c=>c.includes(".")),s=a.slice(0,g).join("-");a=this.currentPlugin.split("-"),g=a.findIndex(c=>c.includes("."));let l=a.slice(0,g).join("-");s!==l?this.$dialog.confirm(`The new gem base name ${s} doesn't match the existing ${l}. Install?`,{okText:"Ok",cancelText:"Cancel"}).then(()=>{this.upload(this.currentPlugin)}):this.upload(this.currentPlugin)}else this.upload();else this.$refs.fileInput.value=null},openStore(){this.resetControlState(),this.showPluginStore=!0}}},qe={class:"mt-2"},Fe=["textContent"],He=["textContent"];function We(e,t,a,g,s,l){const c=n("v-btn"),m=n("v-icon"),d=n("v-col"),D=n("rux-progress"),b=n("v-row"),V=n("v-divider"),C=n("v-alert"),S=n("v-list-item-title"),T=n("v-list-item-subtitle"),I=n("v-progress-circular"),O=n("v-tooltip"),w=n("v-list-item"),U=n("v-list"),H=n("v-switch"),x=n("plugin-list"),Ye=n("plugin-dialog"),Ze=n("modified-plugin-dialog"),Ge=n("simple-text-dialog"),Je=n("plugin-store"),
|
|
5
|
+
`),this.existingPluginTxt=a,this.showPluginDialog=!0})},deletePrompt:function(e){this.resetControlState(),this.$dialog.confirm(`Are you sure you want to remove: ${e}`,{okText:"Delete",cancelText:"Cancel"}).then(t=>{this.isModified(e)?(this.currentPlugin=e,this.pluginDelete=!0,this.showModifiedPluginDialog=!0):this.deletePlugin(e)})},deletePlugin:function(e){this.alert=`Removing plugin ${e} ...`,this.alertType="success",this.showAlert=!0,P.delete(`/openc3-api/plugins/${e}`).then(t=>{setTimeout(()=>{this.showAlert=!1,this.updateProcesses()},5e3)}),this.update()},upgradePlugin(e){this.resetControlState(),this.currentPlugin=e,this.$refs.fileInput.click()},selectFile(){this.resetControlState(),this.$refs.fileInput.click()},fileChange(e){const t=e.target.files;if(t.length>0)if(this.file=t[0],this.currentPlugin!==null)if(this.file.name.split(".gem")[0]==this.currentPlugin.split(".gem")[0])this.$dialog.confirm(`The new gem ${this.file.name} appears to be identical to the existing ${this.currentPlugin}. Install?`,{okText:"Ok",cancelText:"Cancel"}).then(()=>{this.upload(this.currentPlugin)}).catch(a=>{});else{let a=this.file.name.split("-"),g=a.findIndex(c=>c.includes(".")),s=a.slice(0,g).join("-");a=this.currentPlugin.split("-"),g=a.findIndex(c=>c.includes("."));let l=a.slice(0,g).join("-");s!==l?this.$dialog.confirm(`The new gem base name ${s} doesn't match the existing ${l}. Install?`,{okText:"Ok",cancelText:"Cancel"}).then(()=>{this.upload(this.currentPlugin)}):this.upload(this.currentPlugin)}else this.upload();else this.$refs.fileInput.value=null},openStore(){this.resetControlState(),this.showPluginStore=!0}}},qe={class:"mt-2"},Fe=["textContent"],He=["textContent"];function We(e,t,a,g,s,l){const c=n("v-btn"),m=n("v-icon"),d=n("v-col"),D=n("rux-progress"),b=n("v-row"),V=n("v-divider"),C=n("v-alert"),S=n("v-list-item-title"),T=n("v-list-item-subtitle"),I=n("v-progress-circular"),O=n("v-tooltip"),w=n("v-list-item"),U=n("v-list"),H=n("v-switch"),x=n("plugin-list"),Ye=n("plugin-dialog"),Ze=n("modified-plugin-dialog"),Ge=n("simple-text-dialog"),Je=n("plugin-store"),Qe=n("v-bottom-sheet");return r(),y("div",null,[i(b,{"no-gutters":"",align:"center",class:"px-2"},{default:o(()=>[i(d,{class:"pa-2 mt-2"},{default:o(()=>[i(c,{"append-icon":"mdi-store",onClick:l.openStore},{default:o(()=>[...t[9]||(t[9]=[f(" Browse Plugins ",-1)])]),_:1},8,["onClick"]),i(c,{"append-icon":"mdi-paperclip",class:"mx-2",onClick:l.selectFile},{default:o(()=>[...t[10]||(t[10]=[f(" Install From File ",-1)])]),_:1},8,["onClick"]),u("input",{ref:"fileInput",accept:".gem",style:{display:"none"},type:"file",onChange:t[0]||(t[0]=(..._)=>l.fileChange&&l.fileChange(..._))},null,544),t[14]||(t[14]=u("br",null,null,-1)),u("p",qe,[t[12]||(t[12]=f(" Note: Use ",-1)),i(m,null,{default:o(()=>[...t[11]||(t[11]=[f(" mdi-dots-horizontal ",-1)])]),_:1}),t[13]||(t[13]=f(" in the Installed Plugins list to upgrade existing plugins ",-1))])]),_:1}),i(d,{class:"ml-4 mr-2",cols:"4"},{default:o(()=>[i(D,{value:s.progress},null,8,["value"])]),_:1})]),_:1}),i(b,{"no-gutters":"",class:"px-2"},{default:o(()=>[i(d,{align:"right",class:"mr-2"},{default:o(()=>[...t[15]||(t[15]=[u("div",null,"* indicates a modified plugin",-1),u("div",null,"Click target link to download modifications",-1)])]),_:1})]),_:1}),i(V),i(C,{modelValue:s.showAlert,"onUpdate:modelValue":t[1]||(t[1]=_=>s.showAlert=_),closable:"",type:s.alertType,text:s.alert,"data-test":"plugin-alert"},null,8,["modelValue","type","text"]),Object.keys(s.processes).length>0?(r(),h(U,{key:0,class:"list","data-test":"process-list"},{default:o(()=>[i(b,{"no-gutters":"",class:"px-4"},{default:o(()=>[i(d,{class:"text-h5"},{default:o(()=>[...t[16]||(t[16]=[f(" Process List ",-1)])]),_:1}),i(d,{align:"right"},{default:o(()=>[...t[17]||(t[17]=[u("div",null,"Showing last 10 min of activity",-1)])]),_:1})]),_:1}),(r(!0),y(A,null,E(s.processes,_=>(r(),y("div",{key:_.name},[i(w,null,{append:o(()=>[_.state==="Running"?(r(),h(I,{key:0,indeterminate:"",color:"primary"})):(r(),h(O,{key:1,"open-delay":600,location:"top"},{activator:o(({props:Xe})=>[i(c,M({ref_for:!0},Xe,{icon:"mdi-eye",variant:"text","aria-label":"Show Output","data-test":"show-output",onClick:it=>l.showOutput(_)}),null,16,["onClick"])]),default:o(()=>[t[18]||(t[18]=u("span",null," Show Output ",-1))]),_:2},1024))]),default:o(()=>[i(S,null,{default:o(()=>[u("span",{class:z(_.state.toLowerCase()),textContent:v(`Processing ${_.process_type}: ${_.detail} - ${_.state}`)},null,10,Fe)]),_:2},1024),i(T,null,{default:o(()=>[u("span",{textContent:v(" Updated At: "+e.formatNanoseconds(_.updated_at,s.timeZone))},null,8,He)]),_:2},1024)]),_:2},1024),i(V)]))),128))]),_:1})):k("",!0),i(b,{"no-gutters":"",class:"px-4"},{default:o(()=>[i(d,{class:"text-h5"},{default:o(()=>[...t[19]||(t[19]=[f(" Installed Plugins ",-1)])]),_:1}),i(d,{class:"v-col-auto"},{default:o(()=>[i(H,{modelValue:s.showDefaultTools,"onUpdate:modelValue":t[2]||(t[2]=_=>s.showDefaultTools=_),label:"Show Default Tools",density:"compact","hide-details":"","data-test":"show-default-tools"},null,8,["modelValue"])]),_:1})]),_:1}),i(x,{plugins:s.plugins,targets:s.targets,"show-default-tools":s.showDefaultTools,"default-plugins":s.defaultPlugins,onEdit:l.editPlugin,onUpgrade:l.upgradePlugin,onDelete:l.deletePrompt},null,8,["plugins","targets","show-default-tools","default-plugins","onEdit","onUpgrade","onDelete"]),s.showPluginDialog?(r(),h(Ye,{key:1,modelValue:s.showPluginDialog,"onUpdate:modelValue":t[3]||(t[3]=_=>s.showPluginDialog=_),"plugin-name":s.pluginName,variables:s.variables,"plugin-txt":s.pluginTxt,"existing-plugin-txt":s.existingPluginTxt,"store-plugin-id":s.storePluginId,"store-version-id":s.storeVersionId,"min-cosmos-version":s.minCosmosVersion,onCallback:l.pluginCallback},null,8,["modelValue","plugin-name","variables","plugin-txt","existing-plugin-txt","store-plugin-id","store-version-id","min-cosmos-version","onCallback"])):k("",!0),s.showModifiedPluginDialog?(r(),h(Ze,{key:2,modelValue:s.showModifiedPluginDialog,"onUpdate:modelValue":t[4]||(t[4]=_=>s.showModifiedPluginDialog=_),"plugin-name":s.currentPlugin,targets:l.pluginTargets(s.currentPlugin),"plugin-delete":s.pluginDelete,onSubmit:l.modifiedSubmit},null,8,["modelValue","plugin-name","targets","plugin-delete","onSubmit"])):k("",!0),i(Ge,{modelValue:s.showProcessOutput,"onUpdate:modelValue":t[5]||(t[5]=_=>s.showProcessOutput=_),title:"Process Output",text:s.processOutput},null,8,["modelValue","text"]),i(Qe,{modelValue:s.showPluginStore,"onUpdate:modelValue":t[8]||(t[8]=_=>s.showPluginStore=_),fullscreen:""},{default:o(()=>[i(Je,{onClose:t[6]||(t[6]=()=>s.showPluginStore=!1),onTriggerInstall:t[7]||(t[7]=_=>l.upload(null,_))})]),_:1},8,["modelValue"])])}const tt=te("default",$(Be,[["render",We],["__scopeId","data-v-31fcfb69"]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./Widget-
|
|
1
|
+
System.register(["./Widget-D_HaosJK-c49796f3af3288426d03.js","vue","./main-320f7a52ead0c027f3e7.js","vue-router","pinia","single-spa","vuetify"],(function(u,d){"use strict";var s,a,r,l,i,n;return{setters:[e=>{s=e.h},e=>{a=e.resolveComponent,r=e.openBlock,l=e.createBlock,i=e.normalizeStyle},e=>{n=e.f},null,null,null,null],execute:(function(){const e={mixins:[s],props:{value:{type:[Number,String],default:null}},emits:["addItem","deleteItem"],data:function(){return{valueId:null,scaleFactor:1,width:150}},computed:{_value:function(){let t=this.value;if(t===null){if(!this.screenValues[this.valueId])return 0;t=this.screenValues[this.valueId][0]}return Number.parseInt(Number.parseFloat(t)*this.scaleFactor)}},created:function(){if(this.parameters[3]&&(this.scaleFactor=Number.parseFloat(this.parameters[3])),this.width=this.setWidth(this.parameters[4],"px",this.width),this.value===null){let t="CONVERTED";this.parameters[5]&&(t=this.parameters[5]),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${t}`,this.$emit("addItem",this.valueId)}},unmounted:function(){this.$emit("deleteItem",this.valueId)}};function o(t,p,v,f,I,c){const h=a("rux-progress");return r(),l(h,{value:c._value,class:"progress",style:i(t.computedStyle)},null,8,["value","style"])}const m=u("default",n(e,[["render",o],["__scopeId","data-v-af1daff2"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-D_HaosJK-c49796f3af3288426d03.js","vue","./main-320f7a52ead0c027f3e7.js","vue-router","pinia","single-spa","vuetify"],(function(u,v){"use strict";var l,t,n,a,r,s;return{setters:[e=>{l=e.h},e=>{t=e.resolveComponent,n=e.openBlock,a=e.createBlock,r=e.normalizeStyle},e=>{s=e.f},null,null,null,null],execute:(function(){const e={mixins:[l],props:{value:{type:Number,default:null}},data(){return{label:"Radio"}},created(){this.label=this.parameters[0]}};function o(i,y,c,f,p,b){const d=t("v-radio");return n(),a(d,{"hide-details":"",dense:"",label:p.label,style:r(i.computedStyle),value:c.value},null,8,["label","style","value"])}const m=u("default",s(e,[["render",o]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Layout-CKmC50QZ-a4e41facce8302b08009.js","vue","./main-320f7a52ead0c027f3e7.js","./Widget-D_HaosJK-c49796f3af3288426d03.js","vue-router","pinia","single-spa","vuetify"],(function(h,k){"use strict";var a,l,r,s,i,o,c,m,u,d,p,g;return{setters:[e=>{a=e.r},e=>{l=e.resolveComponent,r=e.openBlock,s=e.createBlock,i=e.normalizeStyle,o=e.withCtx,c=e.createElementBlock,m=e.Fragment,u=e.renderList,d=e.resolveDynamicComponent,p=e.mergeProps},e=>{g=e.f},null,null,null,null,null],execute:(function(){const e={mixins:[a],data(){return{selectedIndex:0}},created(){this.parameters[0]&&(this.selectedIndex=Number.parseInt(this.parameters[0]))},methods:{selected(){return this.selectedIndex}}};function x(n,v,B,z,y,S){const C=l("v-radio-group");return r(),s(C,{modelValue:y.selectedIndex,"onUpdate:modelValue":v[0]||(v[0]=t=>y.selectedIndex=t),"hide-details":"",density:"compact",style:i(n.computedStyle)},{default:o(()=>[(r(!0),c(m,null,u(n.widgets,(t,f)=>(r(),s(d(t.type),p({ref_for:!0},n.listeners,{key:f,value:f,target:t.target,parameters:t.parameters,settings:t.settings,"screen-values":n.screenValues,"screen-time-zone":n.screenTimeZone,name:t.name}),null,16,["value","target","parameters","settings","screen-values","screen-time-zone","name"]))),128))]),_:1},8,["modelValue","style"])}const I=h("default",g(e,[["render",x]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./Widget-
|
|
1
|
+
System.register(["./Widget-D_HaosJK-c49796f3af3288426d03.js","vue","./main-320f7a52ead0c027f3e7.js","vue-router","pinia","single-spa","vuetify"],(function(u,m){"use strict";var r,a,n,h,i,l;return{setters:[e=>{r=e.h},e=>{a=e.openBlock,n=e.createElementBlock,h=e.normalizeStyle,i=e.createElementVNode},e=>{l=e.f},null,null,null,null],execute:(function(){const e={mixins:[r],emits:["addItem","deleteItem"],data(){return{width:160,height:22}},computed:{cssProps(){return{"--height":this.height+"px","--width":this.width+"px","--container-height":this.height-5+"px","--position":this.calcPosition()+"%"}},min(){return Number.parseInt(this.parameters[3])},max(){return Number.parseInt(this.parameters[4])},range(){return this.max-this.min}},created(){const t=this.parameters[5]?this.parameters[5]:"CONVERTED";this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${t}`,this.$emit("addItem",this.valueId),this.width=this.setWidth(this.parameters[6],"px",this.width),this.height=this.setHeight(this.parameters[7],"px",this.height)},unmounted(){this.$emit("deleteItem",this.valueId)},methods:{calcPosition(){if(!this.screenValues[this.valueId])return 0;let t=this.screenValues[this.valueId][0];if(t==null)return 0;if(t.raw)return t.raw==="-Infinity"?0:100;const s=(t-this.min)/this.range*100;return s>100?100:s<0?0:s}}};function c(t,s,p,g,_,d){return a(),n("div",{class:"rangebar",style:h([d.cssProps,t.computedStyle])},[...s[0]||(s[0]=[i("div",{class:"rangebar__container"},[i("div",{class:"rangebar__line"}),i("div",{class:"rangebar__arrow"})],-1)])],4)}const o=u("default",l(e,[["render",c],["__scopeId","data-v-276a618a"]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./main-
|
|
1
|
+
System.register(["./main-320f7a52ead0c027f3e7.js","vue","vue-router","pinia","single-spa","vuetify"],(function(g,D){"use strict";var y,f,d,o,c,n,l,r,p,b,m,x;return{setters:[a=>{y=a.f,f=a.u},a=>{d=a.resolveComponent,o=a.openBlock,c=a.createElementBlock,n=a.createVNode,l=a.withCtx,r=a.createTextVNode,p=a.createElementVNode,b=a.Fragment,m=a.toDisplayString,x=a.createCommentVNode},null,null,null,null],execute:(function(){const a={data(){return{redisCommandText:"",redisResponse:null,redisEndpoint:"persistent",db_shard:"0",prettyPrint:!1,headers:[{text:"Redis",value:"redis",width:150},{text:"Command",value:"command"},{text:"Response",value:"response"}],commands:[]}},computed:{formattedResponse:function(){let t=this.redisResponse;if(this.redisResponse&&this.prettyPrint){if(typeof t=="string")try{t=JSON.parse(t)}catch{}if(Array.isArray(t)){for(let e=0;e<t.length;e++)if(typeof t[e]=="string")try{t[e]=JSON.parse(t[e])}catch{}}}return t=JSON.stringify(t,null,2),`Response: ${t}`}},methods:{commandKeydown:function(t){t.key==="Enter"&&this.executeRaw()},executeRaw:function(){this.redisResponse=null;let t="/openc3-api/redis/exec";const e=[];this.redisEndpoint==="ephemeral"&&e.push("ephemeral=1"),this.db_shard&&this.db_shard!=="0"&&e.push(`db_shard=${this.db_shard}`),e.length&&(t+="?"+e.join("&")),f.post(t,{data:this.redisCommandText,headers:{Accept:"application/json","Content-Type":"text/plain"}}).then(v=>{this.redisResponse=v.data.result;let u=this.redisEndpoint==="ephemeral"?"Ephemeral":"Persistent";this.db_shard!=="0"&&(u+=` (db_shard ${this.db_shard})`),this.commands.unshift({redis:u,command:this.redisCommandText,response:this.redisResponse})})}}},V=["textContent"],C={key:1,class:"monospace"};function w(t,e,v,u,s,h){const E=d("v-card-title"),k=d("v-card-subtitle"),R=d("v-text-field"),N=d("v-checkbox"),S=d("v-card-text"),T=d("v-btn"),_=d("v-radio"),P=d("v-radio-group"),U=d("v-card-actions"),A=d("v-data-table"),B=d("v-card");return o(),c("div",null,[n(B,null,{default:l(()=>[n(E,null,{default:l(()=>[...e[4]||(e[4]=[r(" Send Raw Redis Commands ",-1)])]),_:1}),n(k,null,{default:l(()=>[...e[5]||(e[5]=[r(" THIS IS DANGEROUS. This allows you to interact directly with the underlying Redis database, making it easy to modify or delete data. ",-1),p("br",null,null,-1),p("br",null,null,-1),r(" Enter commands like you would at the Redis cli prompt: ",-1),p("code",null,"ping",-1),r(" or ",-1),p("code",null,"hget openc3__settings version",-1)])]),_:1}),n(S,{class:"pb-0 ml-2"},{default:l(()=>[n(R,{modelValue:s.redisCommandText,"onUpdate:modelValue":e[0]||(e[0]=i=>s.redisCommandText=i),"hide-details":"",label:"Redis command",class:"monospace",onKeydown:h.commandKeydown},null,8,["modelValue","onKeydown"]),n(N,{modelValue:s.prettyPrint,"onUpdate:modelValue":e[1]||(e[1]=i=>s.prettyPrint=i),label:"Pretty print",density:"compact","hide-details":"",class:"mb-2"},null,8,["modelValue"]),s.redisResponse?(o(),c(b,{key:0},[s.prettyPrint?(o(),c("pre",{key:0,textContent:m(h.formattedResponse)},null,8,V)):(o(),c("span",C," Response: "+m(s.redisResponse),1))],64)):x("",!0)]),_:1}),n(U,{class:"px-2"},{default:l(()=>[n(T,{disabled:!s.redisCommandText.length,color:"success",variant:"text",onClick:h.executeRaw},{default:l(()=>[...e[6]||(e[6]=[r(" Execute ",-1)])]),_:1},8,["disabled","onClick"]),n(P,{modelValue:s.redisEndpoint,"onUpdate:modelValue":e[2]||(e[2]=i=>s.redisEndpoint=i),inline:"","hide-details":"",class:"mt-0"},{default:l(()=>[n(_,{label:"Persistent",value:"persistent","data-test":"persistent-radio"}),n(_,{label:"Ephemeral",value:"ephemeral","data-test":"ephemeral-radio"})]),_:1},8,["modelValue"]),n(R,{modelValue:s.db_shard,"onUpdate:modelValue":e[3]||(e[3]=i=>s.db_shard=i),type:"number",min:"0",label:"DB Shard","hide-details":"",density:"compact",style:{"max-width":"100px"},class:"ml-4"},null,8,["modelValue"])]),_:1}),n(A,{headers:s.headers,items:s.commands,class:"monospace","items-per-page":-1,"hide-default-footer":"",density:"compact",height:"45vh"},null,8,["headers","items"])]),_:1})])}const K=g("default",y(a,[["render",w],["__scopeId","data-v-0812b2bd"]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./Widget-
|
|
1
|
+
System.register(["./Widget-D_HaosJK-c49796f3af3288426d03.js","vue","./main-320f7a52ead0c027f3e7.js","vue-router","pinia","single-spa","vuetify"],(function(m,p){"use strict";var l,r,a,c,o,u;return{setters:[t=>{l=t.h},t=>{r=t.resolveComponent,a=t.openBlock,c=t.createBlock,o=t.normalizeStyle},t=>{u=t.f},null,null,null,null],execute:(function(){const t={mixins:[l],props:{value:{type:[Number,String],default:null}},emits:["addItem","deleteItem","open"],data:function(){return{valueId:null,icon:"",label:"",subLabel:"",items:[],screenTarget:null,screenName:null}},computed:{status:function(){let e="off";for(const n of this.items){let s=this.screenValues[n][1];s&&((s.includes("BLUE")||s.includes("GREEN"))&&e!="caution"&&e!="critical"&&(e="normal"),s.includes("YELLOW")&&e!="critical"&&(e="caution"),s.includes("RED")&&(e="critical"))}return e},pointerStyle(){return this.screenTarget&&this.screenName?{cursor:"pointer"}:{cursor:"default"}}},created:function(){this.icon=this.parameters[0],this.label=this.parameters[1],this.subLabel=this.parameters[2],this.appliedSettings.forEach(e=>{switch(e[0].toUpperCase()){case"SCREEN":this.screenTarget=e[1],this.screenName=e[2];break;case"TLM":let n="CONVERTED";e[4]&&(n=e[4]);let s=`${e[1]}__${e[2]}__${e[3]}__${n}`;this.items.push(s),this.$emit("addItem",s);break}})},unmounted:function(){this.items.forEach(e=>{this.$emit("deleteItem",e)})},methods:{clickHandler(){this.screenTarget&&this.screenName&&this.$emit("open",this.screenTarget,this.screenName)}}};function h(e,n,s,b,E,i){const d=r("rux-monitoring-icon");return a(),c(d,{class:"rux-icon",style:o([i.pointerStyle,e.computedStyle]),icon:e.icon,status:i.status,label:e.label,sublabel:e.subLabel,onClick:i.clickHandler},null,8,["style","icon","status","label","sublabel","onClick"])}const f=m("default",u(t,[["render",h]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./main-
|
|
1
|
+
System.register(["./main-320f7a52ead0c027f3e7.js","vue","single-spa","./OutputDialog-DtrpwjGL-73ebd3c55e7ffbc15652.js","vue-router","pinia","vuetify"],(function(w,B){"use strict";var d,c,e,l,r,o,i,p,g,h,m,v,f,C;return{setters:[t=>{d=t.f,c=t.u},t=>{e=t.resolveComponent,l=t.openBlock,r=t.createElementBlock,o=t.createVNode,i=t.withCtx,p=t.Fragment,g=t.renderList,h=t.createTextVNode,m=t.toDisplayString,v=t.createBlock,f=t.createCommentVNode},null,t=>{C=t.S},null,null,null],execute:(function(){const t={components:{OutputDialog:C},data(){return{routers:[],jsonContent:"",dialogTitle:"",showDialog:!1}},mounted(){this.update()},methods:{update(){c.get("/openc3-api/routers").then(n=>{this.routers=n.data})},add(){},showRouter(n){c.get(`/openc3-api/routers/${n}`).then(s=>{this.jsonContent=JSON.stringify(s.data,null," "),this.dialogTitle=n,this.showDialog=!0})},dialogCallback(n){this.showDialog=!1}}};function D(n,s,_,R,a,k){const S=e("v-list-item-title"),V=e("v-btn"),y=e("v-list-item"),N=e("v-divider"),b=e("v-list"),j=e("output-dialog");return l(),r("div",null,[o(b,{class:"list","data-test":"routerList"},{default:i(()=>[(l(!0),r(p,null,g(a.routers,(u,x)=>(l(),r("div",{key:x},[o(y,null,{append:i(()=>[o(V,{"aria-label":"Show Router Details",icon:"mdi-eye",variant:"text",onClick:L=>k.showRouter(u)},null,8,["onClick"])]),default:i(()=>[o(S,null,{default:i(()=>[h(m(u),1)]),_:2},1024)]),_:2},1024),o(N)]))),128))]),_:1}),a.showDialog?(l(),v(j,{key:0,modelValue:a.showDialog,"onUpdate:modelValue":s[0]||(s[0]=u=>a.showDialog=u),content:a.jsonContent,type:"Router",name:a.dialogTitle,onSubmit:k.dialogCallback},null,8,["modelValue","content","name","onSubmit"])):f("",!0)])}const T=w("default",d(t,[["render",D],["__scopeId","data-v-ead3d1f6"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Layout-CKmC50QZ-a4e41facce8302b08009.js","vue","./main-320f7a52ead0c027f3e7.js","./Widget-D_HaosJK-c49796f3af3288426d03.js","vue-router","pinia","single-spa","vuetify"],(function(w,x){"use strict";var g,u,r,s,v,o,y,i,l,f,d,c,p,h;return{setters:[t=>{g=t.r},t=>{u=t.resolveComponent,r=t.openBlock,s=t.createElementBlock,v=t.normalizeStyle,o=t.Fragment,y=t.renderList,i=t.createBlock,l=t.withCtx,f=t.createElementVNode,d=t.toDisplayString,c=t.resolveDynamicComponent,p=t.mergeProps},t=>{h=t.f},null,null,null,null,null],execute:(function(){const t={mixins:[g],created:function(){if(this.setHeight(this.parameters[0],"px",200),this.parameters[1]){let n=this.parameters[1];this.widgets.forEach(m=>{m.settings.find(a=>a[0]==="MARGIN"||a[0].startsWith("RAW")&&a[1].toUpperCase().includes("MARGIN"))===void 0&&m.settings.push(["MARGIN",n])})}}};function C(n,m,a,B,b,A){const k=u("v-tooltip");return r(),s("div",{ref:"container",style:v(n.computedStyle),class:"overflow-y-auto"},[(r(!0),s(o,null,y(n.widgets,(e,N)=>(r(),s(o,{key:N},[n.getTooltipText(e)?(r(),i(k,{key:0,"open-delay":n.getTooltipDelay(e),location:"top","activator-props":n.getTooltipActivatorProps(e)},{activator:l(({props:T})=>[(r(),i(c(e.type),p({ref_for:!0},{...n.listeners,...T},{target:e.target,parameters:e.parameters,settings:e.settings,"screen-values":n.screenValues,"screen-time-zone":n.screenTimeZone,widgets:e.widgets,name:e.name,line:e.line,"line-number":e.lineNumber}),null,16,["target","parameters","settings","screen-values","screen-time-zone","widgets","name","line","line-number"]))]),default:l(()=>[f("span",null,d(n.getTooltipText(e)),1)]),_:2},1032,["open-delay","activator-props"])):(r(),i(c(e.type),p({key:1,ref_for:!0},n.listeners,{target:e.target,parameters:e.parameters,settings:e.settings,"screen-values":n.screenValues,"screen-time-zone":n.screenTimeZone,widgets:e.widgets,name:e.name,line:e.line,"line-number":e.lineNumber}),null,16,["target","parameters","settings","screen-values","screen-time-zone","widgets","name","line","line-number"]))],64))),128))],4)}const z=w("default",h(t,[["render",C]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./main-
|
|
1
|
+
System.register(["./main-320f7a52ead0c027f3e7.js","vue","vue-router","pinia","single-spa","vuetify"],(function(C,$){"use strict";var V,o,n,u,d,l,s,c,p,m,v,g,N,b;return{setters:[a=>{V=a.f,o=a.u},a=>{n=a.resolveComponent,u=a.openBlock,d=a.createElementBlock,l=a.createVNode,s=a.withCtx,c=a.createTextVNode,p=a.createElementVNode,m=a.toDisplayString,v=a.Fragment,g=a.renderList,N=a.createBlock,b=a.createCommentVNode},null,null,null,null],execute:(function(){const a={data(){return{file:null,loadingSecret:!1,secrets:[],secretName:"",secretValue:"",alert:"",alertType:"success",showAlert:!1,isEnterprise:!1}},created(){o.get("/openc3-api/info").then(({data:i})=>{this.isEnterprise=i.enterprise})},mounted(){this.update()},methods:{update(){o.get("/openc3-api/secrets").then(i=>{this.secrets=i.data})},upload:function(){this.loadingSecret=!0;let i=null;if(this.file){const e=new FormData;e.append("file",this.file,this.file.name),i=o.post(`/openc3-api/secrets/${this.secretName}`,{data:e,headers:{"Content-Type":"multipart/form-data"}})}else i=o.post(`/openc3-api/secrets/${this.secretName}`,{data:{value:this.secretValue}});i.then(e=>{this.loadingSecret=!1,this.file=null,this.secretName="",this.secretValue="",this.update()}).catch(e=>{this.loadingSecret=!1})},deleteSecret:function(i){this.$dialog.confirm(`Are you sure you want to remove: ${i}`,{okText:"Delete",cancelText:"Cancel"}).then(function(e){return o.delete(`/openc3-api/secrets/${i}`)}).then(e=>{this.alert=`Removed secret ${i}`,this.alertType="success",this.showAlert=!0,setTimeout(()=>{this.showAlert=!1},5e3),this.update()})}}};function w(i,e,F,j,t,k){const y=n("v-alert"),T=n("v-file-input"),f=n("v-col"),x=n("v-row"),S=n("v-text-field"),E=n("v-icon"),_=n("v-btn"),B=n("v-list-item-title"),U=n("v-list-item"),A=n("v-divider"),D=n("v-list");return u(),d("div",null,[l(y,{modelValue:t.isEnterprise,"onUpdate:modelValue":e[0]||(e[0]=r=>t.isEnterprise=r),class:"ma-4"},{default:s(()=>[...e[6]||(e[6]=[c(" Note: This cannot be used for setting Kubernetes secrets. You must set them in Kubernetes as a ",-1),p("a",{href:"https://kubernetes.io/docs/concepts/configuration/secret/",target:"_blank"}," Secrets object ",-1),c(" instead. ",-1)])]),_:1},8,["modelValue"]),l(x,{"no-gutters":""},{default:s(()=>[l(f,null,{default:s(()=>[l(T,{ref:"fileInput",modelValue:t.file,"onUpdate:modelValue":e[1]||(e[1]=r=>t.file=r),"show-size":"",accept:"*",class:"mx-2",label:"Click to select a file to create a secret from or enter a secret value"},null,8,["modelValue"])]),_:1})]),_:1}),l(x,{"no-gutters":"",align:"center",style:{"padding-left":"10px"}},{default:s(()=>[l(f,{cols:"3"},{default:s(()=>[l(S,{modelValue:t.secretName,"onUpdate:modelValue":e[2]||(e[2]=r=>t.secretName=r),label:"Secret Name",class:"px-2"},null,8,["modelValue"])]),_:1}),l(f,{cols:"3",class:"px-2"},{default:s(()=>[l(S,{modelValue:t.secretValue,"onUpdate:modelValue":e[3]||(e[3]=r=>t.secretValue=r),disabled:t.file,label:"Secret Value"},null,8,["modelValue","disabled"])]),_:1}),l(f,{cols:"3",class:"px-2"},{default:s(()=>[l(_,{class:"mx-2",color:"primary","data-test":"secretUpload",disabled:t.secretName===""||t.file==null&&t.secretValue==="",loading:t.loadingSecret,onClick:e[4]||(e[4]=r=>k.upload())},{loader:s(()=>[...e[8]||(e[8]=[p("span",null,"Loading...",-1)])]),default:s(()=>[l(E,{start:"",theme:"dark"},{default:s(()=>[...e[7]||(e[7]=[c("mdi-cloud-upload",-1)])]),_:1}),e[9]||(e[9]=p("span",null," Set ",-1))]),_:1},8,["disabled","loading"])]),_:1})]),_:1}),l(y,{modelValue:t.showAlert,"onUpdate:modelValue":e[5]||(e[5]=r=>t.showAlert=r),closable:"",type:t.alertType},{default:s(()=>[c(m(t.alert),1)]),_:1},8,["modelValue","type"]),l(D,{"data-test":"secretList"},{default:s(()=>[(u(!0),d(v,null,g(t.secrets,(r,h)=>(u(),d("div",{key:h},[l(U,null,{append:s(()=>[l(_,{icon:"mdi-delete",variant:"text","aria-label":"Delete Secret",onClick:I=>k.deleteSecret(r)},null,8,["onClick"])]),default:s(()=>[l(B,null,{default:s(()=>[c(m(r),1)]),_:2},1024)]),_:2},1024),h<t.secrets.length-1?(u(),N(A,{key:h})):b("",!0)]))),128))]),_:1})])}const L=C("default",V(a,[["render",w]]))})}}));
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
System.register(["vue","./main-
|
|
1
|
+
System.register(["vue","./main-320f7a52ead0c027f3e7.js","./settings-DZ910lLo-06b2e35cd3b4b6b6686c.js","vue-router","pinia","single-spa","vuetify"],(function(Q,Ze){"use strict";var a,C,T,l,y,o,s,S,W,O,R,L,F,w,N,x,H,B;return{setters:[V=>{a=V.resolveComponent,C=V.openBlock,T=V.createElementBlock,l=V.createVNode,y=V.createBlock,o=V.withCtx,s=V.createTextVNode,S=V.toDisplayString,W=V.createSlots,O=V.mergeProps,R=V.createCommentVNode,L=V.withDirectives,F=V.vShow,w=V.Fragment,N=V.renderList},V=>{x=V.f,H=V.Z},V=>{B=V.n},null,null,null,null],execute:(function(){const V={data(){return{suppressedWarnings:[],selectedSuppressedWarnings:[],selectAllSuppressedWarnings:!1}},watch:{selectAllSuppressedWarnings:function(t){t?this.selectedSuppressedWarnings=this.suppressedWarnings.map(e=>e.key):this.selectedSuppressedWarnings=[]}},created(){this.loadSuppressedWarnings()},methods:{loadSuppressedWarnings:function(){this.suppressedWarnings=Object.keys(localStorage).filter(t=>t.startsWith("suppresswarning__")).map(this.localStorageKeyToDisplayObject),this.selectedSuppressedWarnings=[]},localStorageKeyToDisplayObject:function(t){const e=t.split("__")[1].replaceAll("_"," ");return{key:t,text:e.charAt(0).toUpperCase()+e.slice(1),value:localStorage[t]}},resetSuppressedWarnings:function(){this.deleteLocalStorageKeys(this.selectedSuppressedWarnings),this.loadSuppressedWarnings()},deleteLocalStorageKeys:function(t){for(const e of t)delete localStorage[e]}}};function ee(t,e,_,U,r,h){const b=a("v-card-title"),u=a("v-card-subtitle"),i=a("v-checkbox"),c=a("v-card-text"),m=a("v-btn"),g=a("v-card-actions"),v=a("v-card");return C(),y(v,null,{default:o(()=>[l(b,null,{default:o(()=>[...e[2]||(e[2]=[s("Reset suppressed warnings",-1)])]),_:1}),l(u,null,{default:o(()=>[...e[3]||(e[3]=[s(` This resets "don't show this again" dialogs on this browser `,-1)])]),_:1}),l(c,null,{default:o(()=>[r.suppressedWarnings.length?(C(),T(w,{key:0},[l(i,{modelValue:r.selectAllSuppressedWarnings,"onUpdate:modelValue":e[0]||(e[0]=n=>r.selectAllSuppressedWarnings=n),label:"Select All Warnings",density:"compact"},null,8,["modelValue"]),(C(!0),T(w,null,N(r.suppressedWarnings,n=>(C(),y(i,{key:n.key,modelValue:r.selectedSuppressedWarnings,"onUpdate:modelValue":e[1]||(e[1]=d=>r.selectedSuppressedWarnings=d),label:n.text,value:n.key,density:"compact","hide-details":""},null,8,["modelValue","label","value"]))),128))],64)):(C(),T(w,{key:1},[s(" No warnings to reset ")],64))]),_:1}),l(g,{class:"px-2"},{default:o(()=>[l(m,{disabled:!r.selectedSuppressedWarnings.length,color:"warning",variant:"text","data-test":"reset-suppressed-warnings",onClick:h.resetSuppressedWarnings},{default:o(()=>[...e[4]||(e[4]=[s(" Reset ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})}const te=x(V,[["render",ee]]),le={data(){return{lastConfigs:[],selectedLastConfigs:[],selectAllLastConfigs:!1}},watch:{selectAllLastConfigs:function(t){t?this.selectedLastConfigs=this.lastConfigs.map(e=>e.key):this.selectedLastConfigs=[]}},created(){this.loadLastConfigs()},methods:{loadLastConfigs:function(){this.lastConfigs=Object.keys(localStorage).filter(t=>t.endsWith("__default")).map(t=>{const e=t.split("__")[0].replaceAll("_"," ");return{key:t,text:e.charAt(0).toUpperCase()+e.slice(1)}}),this.selectedLastConfigs=[]},clearLastConfigs:function(){this.deleteLocalStorageKeys(this.selectedLastConfigs),this.loadLastConfigs()},deleteLocalStorageKeys:function(t){for(const e of t)delete localStorage[e]}}};function oe(t,e,_,U,r,h){const b=a("v-card-title"),u=a("v-card-subtitle"),i=a("v-checkbox"),c=a("v-card-text"),m=a("v-btn"),g=a("v-card-actions"),v=a("v-card");return C(),y(v,null,{default:o(()=>[l(b,null,{default:o(()=>[...e[2]||(e[2]=[s(" Clear default configs ",-1)])]),_:1}),l(u,null,{default:o(()=>[...e[3]||(e[3]=[s(" This clears the default tool configs on this browser ",-1)])]),_:1}),l(c,null,{default:o(()=>[r.lastConfigs.length?(C(),T(w,{key:0},[l(i,{modelValue:r.selectAllLastConfigs,"onUpdate:modelValue":e[0]||(e[0]=n=>r.selectAllLastConfigs=n),label:"Select All Configs",density:"compact"},null,8,["modelValue"]),(C(!0),T(w,null,N(r.lastConfigs,n=>(C(),y(i,{key:n.key,modelValue:r.selectedLastConfigs,"onUpdate:modelValue":e[1]||(e[1]=d=>r.selectedLastConfigs=d),label:n.text,value:n.key,"hide-details":"",density:"compact"},null,8,["modelValue","label","value"]))),128))],64)):(C(),T(w,{key:1},[s(" No configs to clear ")],64))]),_:1}),l(g,{class:"px-2"},{default:o(()=>[l(m,{disabled:!r.selectedLastConfigs.length,color:"warning",variant:"text","data-test":"clear-default-configs",onClick:h.clearLastConfigs},{default:o(()=>[...e[4]||(e[4]=[s(" Clear ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})}const ae=x(le,[["render",oe]]),q="script_runner_locking",re={mixins:[B],data(){return{vimMode:H.isVimModeEnabled(),scriptLockingEnabled:!0,defaultLanguage:H.getDefaultScriptingLanguage(),languageOptions:[{text:"Ruby",value:"ruby"},{text:"Python",value:"python"}]}},created(){this.loadSetting(q)},methods:{save:function(){H.setVimMode(this.vimMode),H.setDefaultScriptingLanguage(this.defaultLanguage),this.saveSetting(q,this.scriptLockingEnabled)},parseSetting:function(t){t!=null&&(this.scriptLockingEnabled=t)}}};function se(t,e,_,U,r,h){const b=a("v-card-title"),u=a("v-card-subtitle"),i=a("v-alert"),c=a("v-select"),m=a("v-switch"),g=a("v-card-text"),v=a("v-btn"),n=a("v-card-actions"),d=a("v-card");return C(),y(d,null,{default:o(()=>[l(b,null,{default:o(()=>[...e[6]||(e[6]=[s(" Code Editor Settings ",-1)])]),_:1}),l(u,null,{default:o(()=>[...e[7]||(e[7]=[s(" Settings for the code editors built into COSMOS (e.g. in Script Runner). These settings are saved to your browser's local storage. ",-1)])]),_:1}),l(i,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=k=>t.errorLoading=k),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=k=>t.errorSaving=k),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=k=>t.successSaving=k),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[8]||(e[8]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(g,{class:"pb-0"},{default:o(()=>[l(c,{modelValue:r.defaultLanguage,"onUpdate:modelValue":e[3]||(e[3]=k=>r.defaultLanguage=k),label:"Default scripting language",items:r.languageOptions,"item-title":"text","item-value":"value",color:"primary",class:"mt-4","data-test":"default-language"},null,8,["modelValue","items"]),l(m,{modelValue:r.vimMode,"onUpdate:modelValue":e[4]||(e[4]=k=>r.vimMode=k),label:"Vim mode",color:"primary"},null,8,["modelValue"]),l(m,{modelValue:r.scriptLockingEnabled,"onUpdate:modelValue":e[5]||(e[5]=k=>r.scriptLockingEnabled=k),label:`Script File Locking - When enabled, a script being edited
|
|
2
2
|
by one user is read-only for other users until they explicitly force
|
|
3
3
|
unlock. Disable to allow multiple users to edit the same script
|
|
4
4
|
concurrently (last save wins).`,color:"primary","data-test":"script-locking-enabled"},null,8,["modelValue"])]),_:1}),l(n,null,{default:o(()=>[l(v,{color:"success",variant:"text","data-test":"save-editor-settings",onClick:h.save},{default:o(()=>[...e[9]||(e[9]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const ne=x(re,[["render",se]]),P="astro",de={mixins:[B],data(){return{hideClock:!1}},created(){this.loadSetting(P)},methods:{save(){this.saveSetting(P,JSON.stringify({hideClock:this.hideClock}))},parseSetting:function(t){if(t){let e=JSON.parse(t);this.hideClock=e.hideClock}}}};function ie(t,e,_,U,r,h){const b=a("v-card-title"),u=a("v-alert"),i=a("v-switch"),c=a("v-card-text"),m=a("v-btn"),g=a("v-card-actions"),v=a("v-card");return C(),y(v,null,{default:o(()=>[l(b,null,{default:o(()=>[...e[4]||(e[4]=[s("Astro Settings",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=n=>t.errorLoading=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=n=>t.errorSaving=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=n=>t.successSaving=n),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[5]||(e[5]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(c,{class:"pb-0"},{default:o(()=>[l(i,{modelValue:r.hideClock,"onUpdate:modelValue":e[3]||(e[3]=n=>r.hideClock=n),label:"Hide Astro Clock",color:"primary"},null,8,["modelValue"])]),_:1}),l(g,null,{default:o(()=>[l(m,{color:"success",variant:"text","data-test":"save-astro-settings",onClick:h.save},{default:o(()=>[...e[6]||(e[6]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const ue=x(de,[["render",ie]]),Z="theme",ce={mixins:[B],data(){return{selectedTheme:"cosmosDark",themeOptions:[{label:"Astro (Default)",value:"cosmosDark"},{label:"Dark Cobalt",value:"cosmosDarkCobalt"},{label:"Dark Indigo",value:"cosmosDarkIndigo"},{label:"Dark Slate",value:"cosmosDarkSlate"},{label:"Dark Emerald",value:"cosmosDarkEmerald"}]}},created(){this.loadSetting(Z)},methods:{save(){this.saveSetting(Z,this.selectedTheme)},parseSetting(t){t&&(this.selectedTheme=t)}}};function me(t,e,_,U,r,h){const b=a("v-card-title"),u=a("v-alert"),i=a("v-select"),c=a("v-card-text"),m=a("v-btn"),g=a("v-card-actions"),v=a("v-card");return C(),y(v,null,{default:o(()=>[l(b,null,{default:o(()=>[...e[4]||(e[4]=[s("Theme",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=n=>t.errorLoading=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=n=>t.errorSaving=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=n=>t.successSaving=n),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[5]||(e[5]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(c,{class:"pt-4 pb-0"},{default:o(()=>[l(i,{modelValue:r.selectedTheme,"onUpdate:modelValue":e[3]||(e[3]=n=>r.selectedTheme=n),label:"Theme",items:r.themeOptions,"item-title":"label","item-value":"value","data-test":"theme-select"},null,8,["modelValue","items"])]),_:1}),l(g,null,{default:o(()=>[l(m,{color:"success",variant:"text","data-test":"save-theme-settings",onClick:h.save},{default:o(()=>[...e[6]||(e[6]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const ge=x(ce,[["render",me]]),j="classification_banner",pe={mixins:[B],data(){return{text:"",displayTopBanner:!1,displayBottomBanner:!1,topHeight:0,bottomHeight:0,selectedBackgroundColor:"red",customBackgroundColor:"",selectedFontColor:"white",customFontColor:"",customColorHint:"Enter a 3 or 6-digit hex color code",colors:[{text:"Yellow",value:"yellow"},{text:"Orange",value:"orange"},{text:"Red",value:"red"},{text:"Purple",value:"purple"},{text:"Blue",value:"blue"},{text:"Green",value:"green"},{text:"Black",value:"black"},{text:"White",value:"white"},{text:"Custom",value:!1}],rules:{customColor:t=>/^#(?:[0-9a-fA-F]{3}){1,2}$/.test(t)||this.customColorHint}}},computed:{saveObj:function(){return JSON.stringify({text:this.text,fontColor:this.selectedFontColor||this.customFontColor,backgroundColor:this.selectedBackgroundColor||this.customBackgroundColor,topHeight:this.displayTopBanner?this.topHeight:0,bottomHeight:this.displayBottomBanner?this.bottomHeight:0})},formValid:function(){return(this.selectedFontColor||this.rules.customColor(this.customFontColor)===!0)&&(this.selectedBackgroundColor||this.rules.customColor(this.customBackgroundColor)===!0)}},watch:{displayTopBanner:function(t){t?this.topHeight=20:this.topHeight=0},displayBottomBanner:function(t){t?this.bottomHeight=20:this.bottomHeight=0},customFontColor:function(t){t&&t.length&&!t.startsWith("#")&&(this.customFontColor=`#${t}`)},customBackgroundColor:function(t){t&&t.length&&!t.startsWith("#")&&(this.customBackgroundColor=`#${t}`)}},created(){this.loadSetting(j)},methods:{save(){this.saveSetting(j,this.saveObj)},parseSetting:function(t){if(t){const e=JSON.parse(t);this.text=e.text,this.topHeight=e.topHeight,this.bottomHeight=e.bottomHeight,this.displayTopBanner=e.topHeight!==0,this.displayBottomBanner=e.bottomHeight!==0,e.backgroundColor&&e.backgroundColor.startsWith("#")?(this.customBackgroundColor=e.backgroundColor,this.selectedBackgroundColor=!1):this.selectedBackgroundColor=e.backgroundColor,e.fontColor&&e.fontColor.startsWith("#")?(this.customFontColor=e.fontColor,this.selectedFontColor=!1):this.selectedFontColor=e.fontColor}}}};function fe(t,e,_,U,r,h){const b=a("v-card-title"),u=a("v-alert"),i=a("v-text-field"),c=a("v-col"),m=a("v-row"),g=a("v-icon"),v=a("v-list-item"),n=a("v-select"),d=a("v-switch"),k=a("v-card-text"),A=a("v-btn"),D=a("v-card-actions"),M=a("v-card");return C(),y(M,null,{default:o(()=>[l(b,null,{default:o(()=>[...e[12]||(e[12]=[s("Classification Banner Settings",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=p=>t.errorLoading=p),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=p=>t.errorSaving=p),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=p=>t.successSaving=p),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[13]||(e[13]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(k,{class:"pb-0"},{default:o(()=>[l(m,{dense:""},{default:o(()=>[l(c,null,{default:o(()=>[l(i,{modelValue:r.text,"onUpdate:modelValue":e[3]||(e[3]=p=>r.text=p),label:"Text","data-test":"classification-banner-text"},null,8,["modelValue"])]),_:1})]),_:1}),l(m,{dense:""},{default:o(()=>[l(c,null,{default:o(()=>[l(n,{modelValue:r.selectedBackgroundColor,"onUpdate:modelValue":e[4]||(e[4]=p=>r.selectedBackgroundColor=p),label:"Background color",items:r.colors,"item-title":"text","data-test":"classification-banner-background-color"},W({item:o(({props:p,item:f})=>[l(v,O(p,{value:f.text}),{prepend:o(()=>[f.value?(C(),y(g,{key:0,color:f.value},{default:o(()=>[...e[15]||(e[15]=[s(" mdi-square ",-1)])]),_:1},8,["color"])):R("",!0)]),_:2},1040,["value"])]),_:2},[r.selectedBackgroundColor?{name:"prepend-inner",fn:o(()=>[l(g,{color:r.selectedBackgroundColor},{default:o(()=>[...e[14]||(e[14]=[s(" mdi-square ",-1)])]),_:1},8,["color"])]),key:"0"}:void 0]),1032,["modelValue","items"])]),_:1}),l(c,null,{default:o(()=>[l(i,{modelValue:r.customBackgroundColor,"onUpdate:modelValue":e[5]||(e[5]=p=>r.customBackgroundColor=p),label:"Custom background color",hint:r.customColorHint,disabled:r.selectedBackgroundColor!==!1,rules:[r.rules.customColor],"data-test":"classification-banner-custom-background-color"},{"prepend-inner":o(()=>[L(l(g,{color:r.customBackgroundColor},{default:o(()=>[...e[16]||(e[16]=[s(" mdi-square ",-1)])]),_:1},8,["color"]),[[F,!r.selectedBackgroundColor]])]),_:1},8,["modelValue","hint","disabled","rules"])]),_:1}),l(c,null,{default:o(()=>[l(n,{modelValue:r.selectedFontColor,"onUpdate:modelValue":e[6]||(e[6]=p=>r.selectedFontColor=p),label:"Font color",items:r.colors,"item-title":"text","data-test":"classification-banner-font-color"},W({item:o(({props:p,item:f})=>[l(v,O(p,{value:f.text}),{prepend:o(()=>[f.value?(C(),y(g,{key:0,color:f.value},{default:o(()=>[...e[18]||(e[18]=[s(" mdi-square ",-1)])]),_:1},8,["color"])):R("",!0)]),_:2},1040,["value"])]),_:2},[r.selectedFontColor?{name:"prepend-inner",fn:o(()=>[L(l(g,{color:r.selectedFontColor},{default:o(()=>[...e[17]||(e[17]=[s(" mdi-square ",-1)])]),_:1},8,["color"]),[[F,r.selectedFontColor]])]),key:"0"}:void 0]),1032,["modelValue","items"])]),_:1}),l(c,null,{default:o(()=>[l(i,{modelValue:r.customFontColor,"onUpdate:modelValue":e[7]||(e[7]=p=>r.customFontColor=p),label:"Custom font color",hint:r.customColorHint,disabled:r.selectedFontColor!==!1,rules:[r.rules.customColor],"data-test":"classification-banner-custom-font-color"},{"prepend-inner":o(()=>[L(l(g,{color:r.customFontColor},{default:o(()=>[...e[19]||(e[19]=[s(" mdi-square ",-1)])]),_:1},8,["color"]),[[F,!r.selectedFontColor]])]),_:1},8,["modelValue","hint","disabled","rules"])]),_:1})]),_:1}),l(m,{dense:""},{default:o(()=>[l(c,null,{default:o(()=>[l(d,{modelValue:r.displayTopBanner,"onUpdate:modelValue":e[8]||(e[8]=p=>r.displayTopBanner=p),label:"Display top banner",color:"primary","data-test":"display-top-banner"},null,8,["modelValue"])]),_:1}),l(c,null,{default:o(()=>[l(i,{modelValue:r.topHeight,"onUpdate:modelValue":e[9]||(e[9]=p=>r.topHeight=p),label:"Top height",disabled:!r.displayTopBanner,type:"number",suffix:"px","data-test":"classification-banner-top-height"},null,8,["modelValue","disabled"])]),_:1}),l(c,null,{default:o(()=>[l(d,{modelValue:r.displayBottomBanner,"onUpdate:modelValue":e[10]||(e[10]=p=>r.displayBottomBanner=p),label:"Display bottom banner",color:"primary","data-test":"display-bottom-banner"},null,8,["modelValue"])]),_:1}),l(c,null,{default:o(()=>[l(i,{modelValue:r.bottomHeight,"onUpdate:modelValue":e[11]||(e[11]=p=>r.bottomHeight=p),label:"Bottom height",disabled:!r.displayBottomBanner,type:"number",suffix:"px","data-test":"classification-banner-bottom-height"},null,8,["modelValue","disabled"])]),_:1})]),_:1})]),_:1}),l(D,null,{default:o(()=>[l(A,{disabled:!h.formValid,color:"success",variant:"text","data-test":"save-classification-banner",onClick:h.save},{default:o(()=>[...e[20]||(e[20]=[s(" Save ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})}const he=x(pe,[["render",fe]]),$="time_zone",ve={mixins:[B],data(){return{timeZones:["local","UTC"],timeZone:"local"}},created(){this.loadSetting($)},methods:{save(){this.saveSetting($,this.timeZone)},parseSetting:function(t){t&&(this.timeZone=t)}}};function be(t,e,_,U,r,h){const b=a("v-card-title"),u=a("v-card-subtitle"),i=a("v-alert"),c=a("v-select"),m=a("v-card-text"),g=a("v-btn"),v=a("v-card-actions"),n=a("v-card");return C(),y(n,null,{default:o(()=>[l(b,null,{default:o(()=>[...e[4]||(e[4]=[s("Time Zone",-1)])]),_:1}),l(u,null,{default:o(()=>[...e[5]||(e[5]=[s(" The time zone to use in all COSMOS tools (graphs, time choosers, log messages, etc). Anywhere a date / time is displayed, it will be in the chosen time zone. (Note: All timestamps are UTC in the backend). ",-1)])]),_:1}),l(i,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=d=>t.errorLoading=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=d=>t.errorSaving=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=d=>t.successSaving=d),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[6]||(e[6]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(m,null,{default:o(()=>[l(c,{modelValue:r.timeZone,"onUpdate:modelValue":e[3]||(e[3]=d=>r.timeZone=d),items:r.timeZones,label:"Select time display","hide-details":"","prepend-icon":"mdi-map-clock","single-line":"","data-test":"time-zone"},null,8,["modelValue","items"])]),_:1}),l(v,null,{default:o(()=>[l(g,{color:"success",variant:"text","data-test":"save-time-zone",onClick:h.save},{default:o(()=>[...e[7]||(e[7]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const Ce=x(ve,[["render",be]]),z="time_format",Se={mixins:[B],data(){return{timeFormats:[{title:"12-hour (AM/PM)",value:"ampm"},{title:"24-hour",value:"24hr"}],timeFormat:"ampm"}},created(){this.loadSetting(z)},methods:{save(){this.saveSetting(z,this.timeFormat)},parseSetting:function(t){t&&(this.timeFormat=t)}}};function Ve(t,e,_,U,r,h){const b=a("v-card-title"),u=a("v-card-subtitle"),i=a("v-alert"),c=a("v-select"),m=a("v-card-text"),g=a("v-btn"),v=a("v-card-actions"),n=a("v-card");return C(),y(n,null,{default:o(()=>[l(b,null,{default:o(()=>[...e[4]||(e[4]=[s("Time Format",-1)])]),_:1}),l(u,null,{default:o(()=>[...e[5]||(e[5]=[s(" The time format to use in all COSMOS tools (time pickers, etc). This setting controls whether time is displayed in 12-hour (AM/PM) or 24-hour format. ",-1)])]),_:1}),l(i,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=d=>t.errorLoading=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=d=>t.errorSaving=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=d=>t.successSaving=d),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[6]||(e[6]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(m,null,{default:o(()=>[l(c,{modelValue:r.timeFormat,"onUpdate:modelValue":e[3]||(e[3]=d=>r.timeFormat=d),items:r.timeFormats,label:"Select time format","hide-details":"","prepend-icon":"mdi-clock-outline","single-line":"","data-test":"time-format"},null,8,["modelValue","items"])]),_:1}),l(v,null,{default:o(()=>[l(g,{color:"success",variant:"text","data-test":"save-time-format",onClick:h.save},{default:o(()=>[...e[7]||(e[7]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const ye=x(Se,[["render",Ve]]),J="news_feed",_e={mixins:[B],data(){return{newsFeed:!0}},created(){this.loadSetting(J)},methods:{save(){this.saveSetting(J,this.newsFeed),this.newsFeed&&this.api.update_news()},parseSetting:function(t){this.newsFeed=t}}};function ke(t,e,_,U,r,h){const b=a("v-card-title"),u=a("v-alert"),i=a("v-switch"),c=a("v-card-text"),m=a("v-btn"),g=a("v-card-actions"),v=a("v-card");return C(),y(v,null,{default:o(()=>[l(b,null,{default:o(()=>[...e[4]||(e[4]=[s("News Feed Settings",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=n=>t.errorLoading=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=n=>t.errorSaving=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+S(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=n=>t.successSaving=n),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[5]||(e[5]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(c,{class:"pb-0"},{default:o(()=>[l(i,{modelValue:r.newsFeed,"onUpdate:modelValue":e[3]||(e[3]=n=>r.newsFeed=n),label:`Allow COSMOS backend to pull the news feed from the COSMOS external news site.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./VWidget-
|
|
1
|
+
System.register(["./VWidget-oMbywhLA-ae9ee9bde0636cb9c9e1.js","vue","./main-320f7a52ead0c027f3e7.js","./Widget-D_HaosJK-c49796f3af3288426d03.js","./LimitsColor-CBcpB-la-3bd861951380f642016e.js","vue-router","pinia","single-spa","vuetify"],(function(c,p){"use strict";var r,l,n,a,i,s;return{setters:[t=>{r=t.T},t=>{l=t.resolveComponent,n=t.openBlock,a=t.createBlock,i=t.normalizeStyle},t=>{s=t.f},null,null,null,null,null,null],execute:(function(){const t={mixins:[r],props:{value:{type:[Number,String],default:null}},emits:["open"],data:function(){return{item:null,oneBar:30,twoBar:60,threeBar:90}},computed:{displayedIcon:function(){let e="mdi-signal-cellular-outline";return this._value>=this.oneBar&&(e="mdi-signal-cellular-1"),this._value>=this.twoBar&&(e="mdi-signal-cellular-2"),this._value>=this.threeBar&&(e="mdi-signal-cellular-3"),e}},created(){this.appliedSettings.forEach(e=>{switch(e[0].toUpperCase()){case"SCREEN":this.screenTarget=e[1],this.screenName=e[2];break;case"VALUES":this.oneBar=Number.parseFloat(e[1]),this.twoBar=Number.parseFloat(e[2]),this.threeBar=Number.parseFloat(e[3]);break}})},methods:{getType(){let e="CONVERTED";return this.parameters[3]=="RAW"&&(e="RAW"),e},clickHandler(){this.screenTarget&&this.screenName&&this.$emit("open",this.screenTarget,this.screenName)}}};function u(e,d,g,B,v,o){const h=l("v-btn");return n(),a(h,{icon:o.displayedIcon,variant:"text",style:i(e.computedStyle),"aria-label":"Signal Strength",onClick:o.clickHandler},null,8,["icon","style","onClick"])}const m=c("default",s(t,[["render",u]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["vue","./main-
|
|
1
|
+
System.register(["vue","./main-320f7a52ead0c027f3e7.js"],(function(f,N){"use strict";var l,u,p,o,e,n,s,h,m;return{setters:[t=>{l=t.resolveComponent,u=t.openBlock,p=t.createBlock,o=t.withCtx,e=t.createVNode,n=t.createElementVNode,s=t.toDisplayString,h=t.createTextVNode},t=>{m=t.f}],execute:(function(){const t={props:{modelValue:Boolean,text:{type:String,default:null},title:{type:String,default:null},width:{type:Number,default:800}},emits:["update:modelValue"],computed:{show:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}}},methods:{download:function(){const i=new Blob([this.text],{type:"text/plain"}),a=document.createElement("a");a.href=URL.createObjectURL(i),a.setAttribute("download",`${this.title}.txt`),a.click()}}},x={class:"mx-2"},V={class:"pa-3"},g={class:"text"};function k(i,a,c,E,D,d){const r=l("v-spacer"),v=l("v-btn"),y=l("v-toolbar"),b=l("v-card-text"),C=l("v-card-actions"),_=l("v-card"),B=l("v-dialog");return u(),p(B,{modelValue:d.show,"onUpdate:modelValue":a[1]||(a[1]=w=>d.show=w),width:c.width,scrollable:""},{default:o(()=>[e(_,null,{default:o(()=>[e(y,{height:"24"},{default:o(()=>[e(r),n("span",null,s(c.title),1),e(r),n("div",x,[e(v,{icon:"mdi-download",variant:"text",density:"compact","data-test":"downloadIcon","aria-label":"Download Content",onClick:d.download},null,8,["onClick"])])]),_:1}),e(b,{style:{"max-height":"80vh"}},{default:o(()=>[n("div",V,[n("span",g,s(c.text),1)])]),_:1}),e(C,{class:"px-2"},{default:o(()=>[e(r),e(v,{variant:"flat",onClick:a[0]||(a[0]=w=>d.show=!d.show)},{default:o(()=>[...a[2]||(a[2]=[h(" Ok ",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue","width"])}const S=f("E",m(t,[["render",k],["__scopeId","data-v-1a0bca65"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-D_HaosJK-c49796f3af3288426d03.js","vue","./main-320f7a52ead0c027f3e7.js","vue-router","pinia","single-spa","vuetify"],(function(l,o){"use strict";var t,n,s,i,r;return{setters:[e=>{t=e.h},e=>{n=e.openBlock,s=e.createElementBlock,i=e.normalizeStyle},e=>{r=e.f},null,null,null,null],execute:(function(){const e={mixins:[t],created(){this.parameters[0]!==void 0&&this.appliedSettings.push(["WIDTH",this.parameters[0]]),this.parameters[1]!==void 0&&this.appliedSettings.push(["HEIGHT",this.parameters[1]])}};function a(u,p,m,d,h,f){return n(),s("div",{style:i(u.computedStyle)},null,4)}const c=l("default",r(e,[["render",a]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./GraphWidget-COXK3Dab-18ccb71d08b630c3446f.js","./main-320f7a52ead0c027f3e7.js","vue","./Graph-Cz0Ns1FD-9251aa7b63944e24104e.js","single-spa","./Widget-D_HaosJK-c49796f3af3288426d03.js","vue-router","pinia","vuetify","./OpenC3TimePicker-B0lAIU91-6e7843b535d6cb333926.js"],(function(l,c){"use strict";var i,s,n,r,a,o,d;return{setters:[e=>{i=e.M},e=>{s=e.f},e=>{n=e.resolveComponent,r=e.openBlock,a=e.createBlock,o=e.normalizeStyle},e=>{d=e.R},null,null,null,null,null,null],execute:(function(){const e={components:{Graph:d},mixins:[i],data:function(){return{secondsGraphed:300,pointsSaved:300,pointsGraphed:300,size:{height:30,width:130}}}};function p(t,g,m,f,v,k){const h=n("graph");return r(),a(h,{id:t.id,ref:"graph"+t.id,state:t.state,"selected-graph-id":t.id,"start-time":t.startTime,"seconds-graphed":t.secondsGraphed,"points-saved":t.pointsSaved,"points-graphed":t.pointsGraphed,"initial-items":t.items,height:t.size.height,width:t.size.width,style:o(t.computedStyle),sparkline:""},null,8,["id","state","selected-graph-id","start-time","seconds-graphed","points-saved","points-graphed","initial-items","height","width","style"])}const u=l("default",s(e,[["render",p]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Layout-CKmC50QZ-a4e41facce8302b08009.js","vue","./main-320f7a52ead0c027f3e7.js","./Widget-D_HaosJK-c49796f3af3288426d03.js","vue-router","pinia","single-spa","vuetify"],(function(k,h){"use strict";var f,l,n,i,g,T,a,c,u,o,w,d,b,y,v,V;return{setters:[e=>{f=e.r},e=>{l=e.resolveComponent,n=e.openBlock,i=e.createElementBlock,g=e.createVNode,T=e.normalizeStyle,a=e.withCtx,c=e.Fragment,u=e.renderList,o=e.createBlock,w=e.createTextVNode,d=e.toDisplayString,b=e.createElementVNode,y=e.resolveDynamicComponent,v=e.mergeProps},e=>{V=e.f},null,null,null,null,null],execute:(function(){const e={mixins:[f],emits:["min-max-screen"],data:function(){return{curTab:null}},watch:{curTab:function(){this.$emit("min-max-screen")}}};function x(r,m,L,P,j,U){const _=l("v-tab"),C=l("v-tabs"),N=l("v-tooltip"),D=l("v-window-item"),S=l("v-window");return n(),i("div",null,[g(C,{modelValue:r.curTab,"onUpdate:modelValue":m[0]||(m[0]=s=>r.curTab=s),style:T(r.computedStyle)},{default:a(()=>[(n(!0),i(c,null,u(r.widgets,(s,p)=>(n(),o(_,{key:p},{default:a(()=>[w(d(s.parameters[0]),1)]),_:2},1024))),128))]),_:1},8,["modelValue","style"]),g(S,{modelValue:r.curTab,"onUpdate:modelValue":m[1]||(m[1]=s=>r.curTab=s)},{default:a(()=>[(n(!0),i(c,null,u(r.widgets,(s,p)=>(n(),o(D,{key:p},{default:a(()=>[(n(!0),i(c,null,u(s.widgets,(t,z)=>(n(),i(c,{key:`${p}-${z}`},[r.getTooltipText(t)?(n(),o(N,{key:0,"open-delay":r.getTooltipDelay(t),location:"top","activator-props":r.getTooltipActivatorProps(t)},{activator:a(({props:B})=>[(n(),o(y(t.type),v({ref_for:!0},{...r.listeners,...B},{target:t.target,parameters:t.parameters,settings:t.settings,"screen-values":r.screenValues,"screen-time-zone":r.screenTimeZone,widgets:t.widgets,name:t.name,line:t.line,"line-number":t.lineNumber}),null,16,["target","parameters","settings","screen-values","screen-time-zone","widgets","name","line","line-number"]))]),default:a(()=>[b("span",null,d(r.getTooltipText(t)),1)]),_:2},1032,["open-delay","activator-props"])):(n(),o(y(t.type),v({key:1,ref_for:!0},r.listeners,{target:t.target,parameters:t.parameters,settings:t.settings,"screen-values":r.screenValues,"screen-time-zone":r.screenTimeZone,widgets:t.widgets,name:t.name,line:t.line,"line-number":t.lineNumber}),null,16,["target","parameters","settings","screen-values","screen-time-zone","widgets","name","line","line-number"]))],64))),128))]),_:2},1024))),128))]),_:1},8,["modelValue"])])}const E=k("default",V(e,[["render",x]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./main-
|
|
1
|
+
System.register(["./main-320f7a52ead0c027f3e7.js","vue","single-spa","./OutputDialog-DtrpwjGL-73ebd3c55e7ffbc15652.js","vue-router","pinia","vuetify"],(function(N,F){"use strict";var k,u,t,d,g,n,o,C,y,m,f,h,D,b,w,T;return{setters:[e=>{k=e.f,u=e.u},e=>{t=e.resolveComponent,d=e.openBlock,g=e.createElementBlock,n=e.createVNode,o=e.withCtx,C=e.Fragment,y=e.renderList,m=e.createTextVNode,f=e.toDisplayString,h=e.createBlock,D=e.createElementVNode,b=e.mergeProps,w=e.createCommentVNode},null,e=>{T=e.S},null,null,null],execute:(function(){const e={components:{OutputDialog:T},data(){return{targets:[],jsonContent:"",dialogTitle:"",showDialog:!1}},mounted(){this.update()},methods:{update(){u.get("/openc3-api/targets_modified").then(l=>{this.targets=l.data})},showTarget(l){u.get(`/openc3-api/targets/${l}`).then(a=>{this.jsonContent=JSON.stringify(a.data,null," "),this.dialogTitle=l,this.showDialog=!0})},dialogCallback(l){this.showDialog=!1},downloadTarget:function(l){u.post(`/openc3-api/targets/${l}/download`).then(a=>{const p=window.atob(a.data.contents),v=new Uint8Array(p.length);for(let c=0;c<p.length;++c)v[c]=p.charCodeAt(c);const i=new Blob([v],{type:"application/zip"}),s=document.createElement("a");s.href=URL.createObjectURL(i),s.setAttribute("download",a.data.filename),s.click()})}}};function x(l,a,p,v,i,s){const c=t("v-list-item-title"),B=t("v-list-item-subtitle"),V=t("v-btn"),S=t("v-tooltip"),j=t("v-list-item"),L=t("v-divider"),E=t("v-list"),O=t("output-dialog");return d(),g("div",null,[n(E,{class:"list","data-test":"targetList"},{default:o(()=>[(d(!0),g(C,null,y(i.targets,r=>(d(),g("div",{key:r},[n(j,null,{append:o(()=>[r.modified?(d(),h(S,{key:0,"open-delay":600,location:"top"},{activator:o(({props:_})=>[n(V,b({ref_for:!0},_,{class:"mx-3",icon:"mdi-folder-download",variant:"text","aria-label":"Download Modified Files",onClick:A=>s.downloadTarget(r.name)}),null,16,["onClick"])]),default:o(()=>[a[1]||(a[1]=D("span",null,"Download Modified Files",-1))]),_:2},1024)):w("",!0),n(V,{icon:"mdi-eye",variant:"text","aria-label":"View Target",onClick:_=>s.showTarget(r.name)},null,8,["onClick"])]),default:o(()=>[n(c,null,{default:o(()=>[m(f(r.name),1)]),_:2},1024),n(B,null,{default:o(()=>[m(" Plugin: "+f(r.plugin),1)]),_:2},1024)]),_:2},1024),n(L)]))),128))]),_:1}),i.showDialog?(d(),h(O,{key:0,modelValue:i.showDialog,"onUpdate:modelValue":a[0]||(a[0]=r=>i.showDialog=r),content:i.jsonContent,type:"Target",name:i.dialogTitle,onSubmit:s.dialogCallback},null,8,["modelValue","content","name","onSubmit"])):w("",!0)])}const U=N("default",k(e,[["render",x],["__scopeId","data-v-85600496"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./main-320f7a52ead0c027f3e7.js","vue","./DetailsDialog-F4KgYM6m-8435a552f5c10d2191bc.js","single-spa","./VWidget-oMbywhLA-ae9ee9bde0636cb9c9e1.js","vue-router","pinia","vuetify","./LimitsBar-D5IZu7eX-eed22332c6603ee4301a.js","./LimitsColor-CBcpB-la-3bd861951380f642016e.js","./Widget-D_HaosJK-c49796f3af3288426d03.js"],(function(y,z){"use strict";var c,a,s,r,n,u,m,l,d,h,p,g,v,x,f,w;return{setters:[e=>{c=e.f},e=>{a=e.resolveComponent,s=e.openBlock,r=e.createElementBlock,n=e.createVNode,u=e.normalizeStyle,m=e.normalizeClass,l=e.withCtx,d=e.Fragment,h=e.renderList,p=e.createBlock,g=e.withModifiers,v=e.createTextVNode,x=e.toDisplayString},e=>{f=e.Z},null,e=>{w=e.T},null,null,null,null,null,null],execute:(function(){const e={components:{DetailsDialog:f},mixins:[w],data:function(){return{width:200,height:200}},computed:{aging(){return{"--aging":this.grayLevel}}},created:function(){this.width=this.setWidth(this.parameters[3],"px",this.width),this.height=this.setHeight(this.parameters[4],"px",this.height)},methods:{getType:function(){let t="CONVERTED";return this.parameters[5]&&(t=this.parameters[5]),t}}},C={class:"textbox-widget-container"};function V(t,o,N,E,b,k){const D=a("v-textarea"),B=a("v-list-item-title"),S=a("v-list-item"),M=a("v-list"),T=a("v-menu"),_=a("details-dialog");return s(),r("div",C,[n(D,{variant:"solo",density:"compact",readonly:"","no-resize":"","auto-grow":"",rows:"2","hide-details":"","model-value":t._value,class:m(t.valueClass),style:u([t.computedStyle,k.aging]),"data-test":"valueText",onContextmenu:t.showContextMenu},null,8,["model-value","class","style","onContextmenu"]),n(T,{modelValue:t.contextMenuShown,"onUpdate:modelValue":o[0]||(o[0]=i=>t.contextMenuShown=i),target:[t.x,t.y]},{default:l(()=>[n(M,null,{default:l(()=>[(s(!0),r(d,null,h(t.contextMenuOptions,(i,j)=>(s(),p(S,{key:j,onClick:g(i.action,["stop"])},{default:l(()=>[n(B,null,{default:l(()=>[v(x(i.title),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1},8,["modelValue","target"]),n(_,{modelValue:t.viewDetails,"onUpdate:modelValue":o[1]||(o[1]=i=>t.viewDetails=i),"target-name":t.parameters[0],"packet-name":t.parameters[1],"item-name":t.parameters[2]},null,8,["modelValue","target-name","packet-name","item-name"])])}const L=y("default",c(e,[["render",V],["__scopeId","data-v-ce1e6683"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-D_HaosJK-c49796f3af3288426d03.js","vue","./main-320f7a52ead0c027f3e7.js","vue-router","pinia","single-spa","vuetify"],(function(u,p){"use strict";var t,l,n,a,s,r;return{setters:[e=>{t=e.h},e=>{l=e.resolveComponent,n=e.openBlock,a=e.createBlock,s=e.normalizeStyle},e=>{r=e.f},null,null,null,null],execute:(function(){const e={mixins:[t],data(){return{value:null}},created(){this.setWidth(this.parameters[0],"ch",12),this.parameters[1]&&(this.value=this.parameters[1])},methods:{text(){return this.value}}};function c(d,i,f,y,o,g){const h=l("v-text-field");return n(),a(h,{modelValue:o.value,"onUpdate:modelValue":i[0]||(i[0]=m=>o.value=m),variant:"solo",density:"compact","single-line":"","hide-no-data":"","hide-details":"",style:s(d.computedStyle)},null,8,["modelValue","style"])}const v=u("default",r(e,[["render",c]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-D_HaosJK-c49796f3af3288426d03.js","./OpenC3TimePicker-B0lAIU91-6e7843b535d6cb333926.js","./main-320f7a52ead0c027f3e7.js","vue","vue-router","pinia","single-spa","vuetify"],(function(c,f){"use strict";var l,i,n,a,r,s,o,m;return{setters:[e=>{l=e.h},e=>{i=e.w},e=>{n=e.f,a=e.R},e=>{r=e.resolveComponent,s=e.openBlock,o=e.createBlock,m=e.normalizeStyle},null,null,null,null],execute:(function(){const e={components:{OpenC3TimePicker:i},mixins:[l,a],data(){return{label:"Time",timeValue:""}},created(){this.parameters[0]&&(this.label=this.parameters[0]),this.timeValue=this.formatTimeHMS(new Date,this.screenTimeZone)},methods:{text(){return this.timeValue},time(){return this.timeValue}}};function p(h,u,y,T,t,v){const d=r("OpenC3TimePicker");return s(),o(d,{modelValue:t.timeValue,"onUpdate:modelValue":u[0]||(u[0]=V=>t.timeValue=V),label:t.label,style:m(h.computedStyle),"hide-details":""},null,8,["modelValue","label","style"])}const k=c("default",n(e,[["render",p]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-D_HaosJK-c49796f3af3288426d03.js","vue","./main-320f7a52ead0c027f3e7.js","vue-router","pinia","single-spa","vuetify"],(function(s,p){"use strict";var t,r,n,l,a,i;return{setters:[e=>{t=e.h},e=>{r=e.openBlock,n=e.createElementBlock,l=e.normalizeStyle,a=e.toDisplayString},e=>{i=e.f},null,null,null,null],execute:(function(){const e={mixins:[t],computed:{labelText(){return this.parameters[0]}},created(){if(this.parameters.length<1)throw new Error("Not enough parameters for TITLE.")}};function o(c,f,h,y,d,u){return r(),n("div",{class:"text-h5 text-center pa-1 mt-1 label",style:l(c.computedStyle)},a(u.labelText),5)}const m=s("default",i(e,[["render",o]]))})}}));
|