openc3-cosmos-tool-admin 7.3.0 → 7.4.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-5XQXgMtp-80db1e3027ca0f38008d.js → ArrayWidget-CIDdZjk3-ec1730c4177a34566ed5.js} +2 -2
- data/tools/admin/ArrayplotWidget-BfO1atvG-de9fd2732649b1be4d3c.js +1 -0
- data/tools/admin/BarColumn-CHX_3ye3-7dd61cd495a0c538da4c.js +1 -0
- data/tools/admin/{BlockWidget-B_5TnoG_-07bb5d5276892a455ef5.js → BlockWidget-DSbunlY_-62d6727a1d5a31c3a0ef.js} +2 -2
- data/tools/admin/BridgesTab-DDuKJPFX-388b57d1ea5f49094fc6.js +1 -0
- data/tools/admin/ButtonWidget-BB4ZOCI8-c9853dafa3d8751b4799.js +1 -0
- data/tools/admin/{CanvasWidget-CzLQAoHY-05569d347e30d7c90f9f.js → CanvasWidget-DsyMt7xW-4bef82b3023c55f379f3.js} +1 -1
- data/tools/admin/CanvasdotWidget-BZpkCAoH-656bb49b1eb23c38df64.js +1 -0
- data/tools/admin/{CanvasimageWidget-CYg1rKr_-9d04ce25dc613fc2ccc6.js → CanvasimageWidget-DY1DDf0a-447454aee48d92185e98.js} +1 -1
- data/tools/admin/CanvasimagevalueWidget-0lc2cCPV-d5f0cd5f3d5a93a5b051.js +1 -0
- data/tools/admin/CanvaslabelWidget-C6TDW9WO-58c1646a49fa5fe5a3ff.js +1 -0
- data/tools/admin/{CanvaslabelvalueWidget-bCIPWE4c-c301a198a35d0ba429cc.js → CanvaslabelvalueWidget-Cf_dcDW2-7f2990654255dcf30ddb.js} +1 -1
- data/tools/admin/{CanvaslineWidget-Tw1B6RTA-30b7fce14bb17223c180.js → CanvaslineWidget-jg2ozQ0N-0871afe4dad8f1654b07.js} +1 -1
- data/tools/admin/{CanvaslinevalueWidget-GvTic9rq-8cdbcb115d2e04007db0.js → CanvaslinevalueWidget-CKpjqlKA-8f34f70483fe2793c37b.js} +1 -1
- data/tools/admin/CheckbuttonWidget-BWXinMaT-14d2dd4b439cbbaccdb9.js +1 -0
- data/tools/admin/{ComboboxWidget-BO31bWzg-5d5f35fb019f925d5ae2.js → ComboboxWidget-BzKkyRDT-4ce17162f0ef6bd8170f.js} +1 -1
- data/tools/admin/DateWidget-qUbLzQsX-708e35a5b74dec88415b.js +1 -0
- data/tools/admin/DetailsDialog-CLPj0nP0-9dcc472124933da9a31b.js +1 -0
- data/tools/admin/DynamicWidget-yna_ejyc-2d713c62a6c8060e206c.js +1 -0
- data/tools/admin/FilechecksumWidget-DqNThsOX-2bc76d97aea4fc77908f.js +1 -0
- data/tools/admin/FiledisplayWidget-BRhhiVEs-75f94e57b68943abb2d9.js +1 -0
- data/tools/admin/{FormatvalueWidget-B9Giwzaz-d95836be56ebf9a9fbae.js → FormatvalueWidget-pEjAh0h2-c0d99c24a0e3e13cbbd7.js} +1 -1
- data/tools/admin/Graph-GVQZltap-a6075477922f4a556620.js +1 -0
- data/tools/admin/{GraphWidget-COvVOlEn-9d0cb68fec73a5f3454a.js → GraphWidget-BZjBkefj-3075e0b9efe04ad89afa.js} +1 -1
- data/tools/admin/HorizontalWidget-Brag6E4y-666e6bb436ada6d4e41a.js +1 -0
- data/tools/admin/{HorizontalboxWidget-B1b9uNaB-e4ec787dc7d063c45fe0.js → HorizontalboxWidget-BnkH4cVq-71cecf05179743285077.js} +1 -1
- data/tools/admin/HorizontallineWidget-k7fL4EPN-a86818418ba8f3cc191e.js +1 -0
- data/tools/admin/{IframeWidget-BCtrIgD1-5aac9e4f21efaab8f6fe.js → IframeWidget-Ciu5u58E-2687a1f57329be92f03b.js} +1 -1
- data/tools/admin/ImageLoader-DH5e4lg8-03c656b21fa2caca8324.js +1 -0
- data/tools/admin/{ImageviewerWidget-DKMBE3tQ-fc341ef1324e0620d71c.js → ImageviewerWidget-vWMGPveb-a385eaff6f50e2d9cc5b.js} +1 -1
- data/tools/admin/InterfacesTab-DeTu93l7-4311e906061ab7c82971.js +1 -0
- data/tools/admin/{LabelWidget-B0nE0ImW-54b49f3830be1cee8eb4.js → LabelWidget-DVp0CmFH-17faef5b4045503f36d3.js} +1 -1
- data/tools/admin/LabelledWidget-1DeE1-6G-7c92e912f90e430d5ffa.js +1 -0
- data/tools/admin/LabelprogressbarWidget-DME-BrZe-aaf6c31eb90e3058d1da.js +1 -0
- data/tools/admin/LabelsparklineWidget-4iDHGnPL-58ec5912433194d1fb6a.js +1 -0
- data/tools/admin/LabelvalueWidget-C6NQSHTb-54fa502577d5c013235a.js +1 -0
- data/tools/admin/LabelvaluedescWidget-c5BUCRxB-1ea411e36238588b5f85.js +1 -0
- data/tools/admin/LabelvaluelimitsbarWidget-DBKZLpXJ-0dcf794ea95c72b24cf9.js +1 -0
- data/tools/admin/LabelvaluelimitscolumnWidget-NdEu06go-a35e19fa1f086588f8e0.js +1 -0
- data/tools/admin/LabelvaluerangebarWidget-CL5HLK0t-dba160f5c4621270ba82.js +1 -0
- data/tools/admin/{Layout-BLS4Yi3m-9a851fc81da50b5a0f78.js → Layout-Df-lJgpB-228411e9ed7160bf6079.js} +1 -1
- data/tools/admin/{LedWidget-DqVfh3zJ-44a2c97be736ccc6b1b3.js → LedWidget-C97EJXBo-56495e50ec081af2ea63.js} +1 -1
- data/tools/admin/{LimitsBar-BqpvMpXM-299f056c19106e6b75fb.js → LimitsBar-DNV39okL-ac8e562bdd6f80498856.js} +1 -1
- data/tools/admin/LimitsbarWidget-BIO6xztx-cc81832a022263a5e69b.js +1 -0
- data/tools/admin/{LimitscolorWidget-DVXho9Mm-43c53230d0556a4f1a5f.js → LimitscolorWidget-BGrNA65J-ef93a3f98c358c1f0a0a.js} +1 -1
- data/tools/admin/LimitscolumnWidget-Bw6EXJs9-c2197c3b589893051f83.js +1 -0
- data/tools/admin/LinegraphWidget-Drf9tTPN-0ee1a5578ba7a90a7663.js +1 -0
- data/tools/admin/{MatrixbycolumnsWidget-CJJ7SugT-ecba1687b1c179dcc8b9.js → MatrixbycolumnsWidget-C33-g7kK-564fbacd8735d346c3dd.js} +1 -1
- data/tools/admin/MicroservicesTab-DoQUKC5u-4e2dd5bf175f95bc042e.js +3 -0
- data/tools/admin/OpenC3TimePicker-cOr0aOVn-087aabac5576efaa78e2.js +1 -0
- data/tools/admin/{OutputDialog-B-bk2nex-d22c9e9f81462796cf40.js → OutputDialog-C9rGeLM5-02a56bb7f4eb6b0500ac.js} +1 -1
- data/tools/admin/PackagesTab-DbaQtAyw-069925c696f2ace3987d.js +2 -0
- data/tools/admin/PluginsTab-BdwfQ8KF-99de05c6db3780e0af31.js +5 -0
- data/tools/admin/{ProgressbarWidget-VTd49uhi-4bf2baaad3eb99165018.js → ProgressbarWidget-DqfSMI10-18ce49d7a36649fa0cd0.js} +1 -1
- data/tools/admin/RadiobuttonWidget-CSQeEacF-fb889eddc717bdc4e487.js +1 -0
- data/tools/admin/RadiogroupWidget-DlQN9z-Z-4bb03443c0620c83be9b.js +1 -0
- data/tools/admin/{RangebarWidget-CN11Oqws-3a133c58d66ddb2b34bf.js → RangebarWidget-CJSUof1--7cd1a9bb578d66c95e4c.js} +1 -1
- data/tools/admin/RedisTab-DI1cFzQm-4191ec0c06598cfab2a9.js +1 -0
- data/tools/admin/{RollupWidget-cgl9Ghle-3fa38b3554127b346b0c.js → RollupWidget-C977Lkcx-079e4bfc754edd8b4947.js} +1 -1
- data/tools/admin/RoutersTab-ChadLN6X-abf9a717481d1732b150.js +1 -0
- data/tools/admin/{ScrollwindowWidget-BFK-ihvZ-64da6ce3ba0f3118fd18.js → ScrollwindowWidget-BFxz61oW-70d1f967d82154e8fed2.js} +1 -1
- data/tools/admin/SecretsTab-But8EOAR-ccdc47f33efa6d921ef4.js +1 -0
- data/tools/admin/SettingsTab-dnzckAY4-4b3c92cabb74b7eb0e0e.js +10 -0
- data/tools/admin/{SignalWidget-Be7Z5pJD-0f9024939f3d5e4a418c.js → SignalWidget-BT6AcbBx-a2b901a2ae183bb8a7da.js} +1 -1
- data/tools/admin/{SimpleTextDialog-dn_TSiQ7-20dabd0df19c3059cf0f.js → SimpleTextDialog-Ccqw4mzt-bc4caae5dd1d7e6f0d3b.js} +1 -1
- data/tools/admin/SpacerWidget-B_f09KAi-541cf0e73343ba06aac8.js +1 -0
- data/tools/admin/SparklineWidget-Bji9DILO-b919fae8ac59aa487849.js +1 -0
- data/tools/admin/TabbookWidget-B74U8t2i-22e1b62104907789d9c0.js +1 -0
- data/tools/admin/TargetsTab-GzwX75ns-64006815ed7073dd19d5.js +1 -0
- data/tools/admin/TextboxWidget-CbKE9aSW-ef89ab0e5e4580dae966.js +1 -0
- data/tools/admin/TextfieldWidget-CpdmfNk5-941ec2c3426b7d6a5b84.js +1 -0
- data/tools/admin/TimeWidget-BTaXBxVm-a4d5024a76726c8735f6.js +1 -0
- data/tools/admin/TitleWidget-ulO_gdVY-c51481a664353e350ca8.js +1 -0
- data/tools/admin/ToolsTab-DA2T_Zxc-7f97be0c87aac3bcfff1.js +1 -0
- data/tools/admin/{TsdbTab-D_P34-tF-8717f03395909927e332.js → TsdbTab-DSLXk5QZ-414e4cb23545085c895f.js} +1 -1
- data/tools/admin/{VWidget-5FjwlURU-6a72b64b7cc840033418.js → VWidget-C4VLQ7-b-07b1f80f82f119fc5285.js} +1 -1
- data/tools/admin/{ValueWidget-CpptSOvJ-71518e3093457d3a3e99.js → ValueWidget-B3-Jjoux-9a088d512207d0da3dbd.js} +1 -1
- data/tools/admin/ValuelimitsbarWidget-CqRkPwWS-61183b64087fcac11052.js +1 -0
- data/tools/admin/ValuelimitscolumnWidget-CF4CN14a-d7a8f5655caea3581ddb.js +1 -0
- data/tools/admin/ValuerangebarWidget-DJtrknKH-3e744c7243efe0774ee0.js +1 -0
- data/tools/admin/{VerticalWidget-B_eheXmK-3714fd0477bb202504f1.js → VerticalWidget-CoJiy2TT-ecfccfcccdb20287fb94.js} +1 -1
- data/tools/admin/{VerticalboxWidget-Bf8XJiY9-f18ae386e10f607a8128.js → VerticalboxWidget-BD5Eq3BH-151b5238c6236f51977c.js} +1 -1
- data/tools/admin/Widget-ClRi417b-c819f8641946506d7602.js +1 -0
- data/tools/admin/main-f0865abbd006d9b2cc5a.js +1496 -0
- data/tools/admin/main.js +1 -1
- data/tools/admin/settings-CF2_iY3N-2c1b3aa6b738e9889263.js +1 -0
- data/tools/admin/useDownloadFile-DASMZ_Dl-d13e01890d2f8843337e.js +1 -0
- metadata +87 -85
- data/tools/admin/ArrayplotWidget-pk7OINvA-33482371ab3dd9c8a3e1.js +0 -1
- data/tools/admin/BarColumn-JQ552zb0-71f940da624cf74a8ac7.js +0 -1
- data/tools/admin/ButtonWidget-CiZGNEls-b36f8511f142106bb716.js +0 -1
- data/tools/admin/CanvasdotWidget-CcI1HwAp-131410357e5f5cb7c5cf.js +0 -1
- data/tools/admin/CanvasimagevalueWidget-e0p2honY-c0ebf132498eedba3031.js +0 -1
- data/tools/admin/CanvaslabelWidget-CgECf4wH-8a62168c6b54ce7dc69d.js +0 -1
- data/tools/admin/CheckbuttonWidget-DV6xeneq-c00e62096beb7d93a1c9.js +0 -1
- data/tools/admin/DateWidget-DYviZFhJ-3517b8d8c507bb623800.js +0 -1
- data/tools/admin/DetailsDialog-DHi4t3xd-23cd6112e439aa7c2e72.js +0 -1
- data/tools/admin/DynamicWidget-BuSbQVhf-8c7a3d8e99d5fbadb524.js +0 -1
- data/tools/admin/FilechecksumWidget-rJe1KvzY-a8b35d82b279ce437fe6.js +0 -1
- data/tools/admin/FiledisplayWidget-CbTWgtBy-a4fcca29c88afb5c536d.js +0 -1
- data/tools/admin/Graph-xc7TNnsk-b819fee23f66c94861f9.js +0 -1
- data/tools/admin/HorizontalWidget-BfdjRLGe-792a24c12a95a38bd847.js +0 -1
- data/tools/admin/HorizontallineWidget-CHz4o6Gi-b60cc8d253fd53f17c8c.js +0 -1
- data/tools/admin/ImageLoader-BzE4VsHW-1b90e52f729ac92ee450.js +0 -1
- data/tools/admin/InterfacesTab-C_AsAMrL-72de0290999c83b4f01f.js +0 -1
- data/tools/admin/LabelledWidget-DrZHj_lR-012360847b59e5acbd03.js +0 -1
- data/tools/admin/LabelprogressbarWidget-K9NphQp0-4fb2ed553ea5457e745e.js +0 -1
- data/tools/admin/LabelsparklineWidget-cn1OJvL3-126a26c9f5cf70def931.js +0 -1
- data/tools/admin/LabelvalueWidget-DxJbd9nR-01ee83f67cecd181a9ef.js +0 -1
- data/tools/admin/LabelvaluedescWidget-B-RiUnpl-2189f2eada48bafa7426.js +0 -1
- data/tools/admin/LabelvaluelimitsbarWidget-BF94rtl8-3534b25320e1cd09f5a8.js +0 -1
- data/tools/admin/LabelvaluelimitscolumnWidget-UOfPu8D1-3bc11e94676b61fa03fa.js +0 -1
- data/tools/admin/LabelvaluerangebarWidget-EVON-Tv8-48083be1abd02e2b22dd.js +0 -1
- data/tools/admin/LimitsbarWidget-rEJIGKCx-c5d60ebf1e9e1a4ffb48.js +0 -1
- data/tools/admin/LimitscolumnWidget-DSQAdlZS-5e2e3f51c3376782328c.js +0 -1
- data/tools/admin/LinegraphWidget-CQRwZ0N6-0f570138c80d809f9285.js +0 -1
- data/tools/admin/MicroservicesTab-9I1i19SB-24a09c3bcdfbca7af3d8.js +0 -3
- data/tools/admin/OpenC3TimePicker-Cww9L2Ij-d23c4fb5d7d8178a137a.js +0 -1
- data/tools/admin/PackagesTab-Cjj7tXrq-89408e61c959392ec84f.js +0 -2
- data/tools/admin/PluginsTab-VN4Z4v7e-ca0878630e8a775a0987.js +0 -5
- data/tools/admin/RadiobuttonWidget-DqsantxO-b47f08b4f7a848b82b4f.js +0 -1
- data/tools/admin/RadiogroupWidget-Bht6RZPH-83314c896de2afd6894d.js +0 -1
- data/tools/admin/RedisTab-CCtPxcYg-c331ecd0ae21eb136f39.js +0 -1
- data/tools/admin/RoutersTab-Duiv_o6g-4ca3fd52ef99712d30f7.js +0 -1
- data/tools/admin/SecretsTab-BNyb54pD-fb3beba957358443d32e.js +0 -1
- data/tools/admin/SettingsTab-Cvq3542H-57575239a634ca02206a.js +0 -10
- data/tools/admin/SpacerWidget-uKPA-f_0-03d7409692e75916a63f.js +0 -1
- data/tools/admin/SparklineWidget-Wu5iFbly-10e00bf9372154d3ca85.js +0 -1
- data/tools/admin/TabbookWidget-D3FrIoV4-b544084d75bde4b9d356.js +0 -1
- data/tools/admin/TargetsTab-CS7JjyjH-81370500aff926af0e8c.js +0 -1
- data/tools/admin/TextboxWidget-f6wEcoI0-1ac8f94e536838694fa5.js +0 -1
- data/tools/admin/TextfieldWidget-D72Sey-h-acb374e2d0018cea37ae.js +0 -1
- data/tools/admin/TimeWidget-BBuxr7Db-234581053c602d1f9998.js +0 -1
- data/tools/admin/TitleWidget-Dfp5mPH2-ce6048efc981fc37f10b.js +0 -1
- data/tools/admin/ToolsTab-VLEsXTJH-111d5d1fcf5683ad1d36.js +0 -1
- data/tools/admin/ValuelimitsbarWidget-AgeOlPAV-191d4ad91bd9fcdb2e92.js +0 -1
- data/tools/admin/ValuelimitscolumnWidget-CfTt7Q8a-6457391b1f8ce6e84aae.js +0 -1
- data/tools/admin/ValuerangebarWidget-E3CtttJk-0521a131ef8b3c7d9461.js +0 -1
- data/tools/admin/Widget-CSgnvwEG-bc4dec83d0fc9039b821.js +0 -1
- data/tools/admin/main-6a328857fae6aab0f418.js +0 -1496
- data/tools/admin/settings-CEBZz77m-520d12b72b93c319ccfd.js +0 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ef043377d7bce4de0d4244dbc767f97081338573e08cabeedaffc565bd7d18bd
|
|
4
|
+
data.tar.gz: 1f601f9493fd2404a946814981b6f75c904d1071b336b30e792f37f14e03d913
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fceac746a88a8ff2d8a70a3ad885d65c42523e9d45b7c8fa806b36e83526d6775c1b59fd093f268cf7bd9d12f803ff78c2074a5e8f4fcc414eaf57c56c77e04a
|
|
7
|
+
data.tar.gz: 5033a2d1c9ed2a744b503e2ed1fd4c43a59aaf9a89575af01275515423146480e3752c7812cd705542a9eaebd3447071ae4e8bdd01b5f952834f45249214f63d
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["./main-
|
|
2
|
-
`,o=0;if(Array.isArray(e)){for(const m of e)this.formatter&&this.formatter?.toLowerCase()!=="nil"?a+=sprintf(this.formatter,m):a+=m,o+=1,o%this.itemsPerRow===0?(o=0,a+=k):a+=V;return a.trim()}else return e}}},
|
|
1
|
+
System.register(["./main-f0865abbd006d9b2cc5a.js","vue","./DetailsDialog-CLPj0nP0-9dcc472124933da9a31b.js","single-spa","./VWidget-C4VLQ7-b-07b1f80f82f119fc5285.js","vue-router","pinia","vuetify","./LimitsBar-DNV39okL-ac8e562bdd6f80498856.js","./LimitsColor-CBcpB-la-3bd861951380f642016e.js","./Widget-ClRi417b-c819f8641946506d7602.js"],(function(D,T){"use strict";var c,i,l,u,r,h,d,s,p,g,f,v,w,y,C,x;return{setters:[t=>{c=t.f},t=>{i=t.resolveComponent,l=t.openBlock,u=t.createElementBlock,r=t.createVNode,h=t.normalizeStyle,d=t.normalizeClass,s=t.withCtx,p=t.Fragment,g=t.renderList,f=t.createBlock,v=t.withModifiers,w=t.createTextVNode,y=t.toDisplayString},t=>{C=t.Z},null,t=>{x=t.T},null,null,null,null,null,null],execute:(function(){const t={components:{DetailsDialog:C},mixins:[x],data:function(){return{width:200,height:100,itemsPerRow:4,formatter:null}},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),this.parameters[5]&&(this.formatter=this.parameters[5]),this.parameters[6]&&(this.itemsPerRow=Number.parseInt(this.parameters[6]))},methods:{getType:function(){let e="CONVERTED";return this.parameters[7]&&(e=this.parameters[7]),e},formatValue:function(e){let a="",V=" ",k=`
|
|
2
|
+
`,o=0;if(Array.isArray(e)){for(const m of e)this.formatter&&this.formatter?.toLowerCase()!=="nil"?a+=sprintf(this.formatter,m):a+=m,o+=1,o%this.itemsPerRow===0?(o=0,a+=k):a+=V;return a.trim()}else return e}}},B={class:"array-widget-container"};function L(e,a,V,k,o,m){const S=i("v-textarea"),j=i("v-list-item-title"),N=i("v-list-item"),_=i("v-list"),z=i("v-menu"),M=i("details-dialog");return l(),u("div",B,[r(S,{variant:"solo",density:"compact",readonly:"","no-resize":"","auto-grow":"",rows:"2","hide-details":"","model-value":e._value,class:d(e.valueClass),style:h([e.computedStyle,m.aging]),"data-test":"array-widget",onContextmenu:e.showContextMenu},null,8,["model-value","class","style","onContextmenu"]),r(z,{modelValue:e.contextMenuShown,"onUpdate:modelValue":a[0]||(a[0]=n=>e.contextMenuShown=n),target:[e.x,e.y]},{default:s(()=>[r(_,null,{default:s(()=>[(l(!0),u(p,null,g(e.contextMenuOptions,(n,R)=>(l(),f(N,{key:R,onClick:v(n.action,["stop"])},{default:s(()=>[r(j,null,{default:s(()=>[w(y(n.title),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1},8,["modelValue","target"]),r(M,{modelValue:e.viewDetails,"onUpdate:modelValue":a[1]||(a[1]=n=>e.viewDetails=n),"target-name":e.parameters[0],"packet-name":e.parameters[1],"item-name":e.parameters[2]},null,8,["modelValue","target-name","packet-name","item-name"])])}const P=D("default",c(t,[["render",L],["__scopeId","data-v-9da1fd5e"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./main-f0865abbd006d9b2cc5a.js","./GraphWidget-BZjBkefj-3075e0b9efe04ad89afa.js","vue","vue-router","pinia","single-spa","vuetify","./Widget-ClRi417b-c819f8641946506d7602.js"],(function(f,w){"use strict";var o,l,h,d,u,p,m;return{setters:[s=>{o=s.f,l=s.N,h=s.o,d=s.p},s=>{u=s.M},s=>{p=s.openBlock,m=s.createElementBlock},null,null,null,null,null],execute:(function(){const s={mixins:[u],data:function(){return{items:[],indexes:{},data:[[]],cable:new d,subscription:null,graph:null,xAxis:null,title:"Array Plot",colorIndex:0,colors:["#00c7cb","#938bdb","#4dacff","lime","darkorange","red","gold","hotpink","tan","cyan","maroon","blue","teal","purple","green","brown","lightblue","white","black"]}},computed:{dataOnly(){return this.data[1]}},watch:{dataOnly:function(){this.graph&&this.graph.setData(this.data)}},created(){for(const[e,t]of this.items.entries())this.data.push([]),this.indexes[this.subscriptionKey(t)]=e+1,t.color=this.colors[this.colorIndex],this.colorIndex++;this.appliedSettings.forEach(e=>{switch(e[0]){case"TITLE":this.title=e[1];break;case"X_AXIS":this.xAxis={start:Number.parseFloat(e[1]),step:Number.parseFloat(e[2])};break}})},mounted(){let e=[];this.items.forEach(n=>{e.push({label:this.itemName(n),stroke:n.color,width:2,value:(r,i)=>typeof i=="string"||Number.isNaN(i)?"NaN":i==null?"--":i.toFixed(3)})});let t={title:this.title,width:this.size.width,height:this.size.height,scales:{x:{time:!1},y:{time:!1,range:(n,r,i)=>[r,i]}},axes:[{stroke:"white",grid:{show:!0,stroke:"rgba(255, 255, 255, .1)",width:2}},{stroke:"white",grid:{show:!0,stroke:"rgba(255, 255, 255, .1)",width:2}}],series:[{label:"X Value"},...e]};this.graph=new h(t,this.data,document.getElementById(`chart${this.id}`)),this.subscribe()},beforeUnmount:function(){this.cable.disconnect()},methods:{subscribe:function(){this.cable.createSubscription("StreamingChannel",window.openc3Scope,{received:e=>this.received(e),connected:()=>{this.clearScreenErrors(),this.addItemsToSubscription(this.items)},disconnected:e=>{e.allowReconnect&&this.emitScreenError("OpenC3 backend connection disconnected",{type:"disconnected",transient:!0})},rejected:()=>{this.emitScreenError("OpenC3 backend connection rejected",{type:"rejected"})}}).then(e=>{this.subscription=e})},received:function(e){for(let t of e){let n=[];for(const[r,i]of Object.entries(t)){if(r==="__time"){const b=this.data[1]?.length||0;this.xAxis?n=Array.from({length:b},(x,c)=>this.xAxis.start+c*this.xAxis.step):n.length===0&&(n=Array.from({length:b},(x,c)=>c)),this.data[0]=n}let a=this.indexes[r];a&&(Array.isArray(i[0])?(this.data[a]=i[1],n=i[0]):this.data[a]=i)}}},addItemsToSubscription:function(e=this.items){this.subscription&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity).then(t=>{t&&OpenC3Auth.setTokens(),this.subscription?.perform("add",{scope:window.openc3Scope,token:localStorage.openc3Token,items:e.map(this.subscriptionKey),start_time:null,end_time:null})}).catch(l)},itemName:function(e){return`${e.targetName} ${e.packetName} ${e.itemName}`},subscriptionKey:function(e){let t=`${e.reduced}__TLM__${e.targetName}__${e.packetName}__${e.itemName}__${e.valueType}`;return(e.reduced==="REDUCED_MINUTE"||e.reduced==="REDUCED_HOUR"||e.reduced==="REDUCED_DAY")&&(t+=`__${e.reducedType}`),t}}},g=["id"];function k(e,t,n,r,i,a){return p(),m("div",{id:`chart${e.id}`,class:"pa-1"},null,8,g)}const y=f("default",o(s,[["render",k]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","./main-f0865abbd006d9b2cc5a.js"],(function(a,n){"use strict";var h,r;return{setters:[e=>{h=e.f},e=>{r=e.O}],execute:(function(){const e=a("l",{mixins:[h],data(){return{minValue:null,maxValue:null,redLow:0,yellowLow:0,greenLow:0,greenHigh:0,yellowHigh:0,redHigh:0,blue:0,api:null,limitsSettings:{DEFAULT:[]},currentLimitsSet:"DEFAULT",currentSetRefreshInterval:null}},computed:{cssProps:function(){if(!this.screenValues[this.valueId])return{};let t=this.screenValues[this.valueId][0],i=this.modifyLimits(this.limitsSettings[this.selectedLimitsSet]);return this.calcLimits(i),{"--height":this.height+"px","--width":this.width+"px","--container-height":this.height-5+"px","--position":this.calcPosition(t,i)+"%","--redlow-width":this.redLow+"%","--redhigh-width":this.redHigh+"%","--yellowlow-width":this.yellowLow+"%","--yellowhigh-width":this.yellowHigh+"%","--greenlow-width":this.greenLow+"%","--greenhigh-width":this.greenHigh+"%","--blue-width":this.blue+"%"}},selectedLimitsSet:function(){return this.limitsSettings.hasOwnProperty(this.currentLimitsSet)?this.currentLimitsSet:"DEFAULT"}},created(){this.api=new r;const t=this.parseItemName(this.parameters[2]);this.parameters[2]=t.name,this.api.get_limits(this.parameters[0],this.parameters[1],t.name).then(i=>{this.limitsSettings=i}),this.getCurrentLimitsSet(),this.currentSetRefreshInterval=setInterval(this.getCurrentLimitsSet,6e4),this.appliedSettings.forEach(i=>{i[0]==="MIN_VALUE"&&(this.minValue=Number.parseInt(i[1])),i[0]==="MAX_VALUE"&&(this.maxValue=Number.parseInt(i[1]))}),this.width=this.setWidth(this.parameters[4],"px",this.width),this.height=this.setHeight(this.parameters[5],"px",this.height),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__CONVERTED`,this.$emit("addItem",this.valueId)},destroyed(){this.$emit("deleteItem",this.valueId),clearInterval(this.currentSetRefreshInterval)},methods:{modifyLimits(t){if(!t)return;this.redLow=10,this.redHigh=10,this.minValue!==null&&(t[0]<=this.minValue&&(t[0]=this.minValue,this.redLow=0),t[1]<=this.minValue&&(t[1]=this.minValue),t[2]<=this.minValue&&(t[2]=this.minValue),t[3]<=this.minValue&&(t[3]=this.minValue),t.length>4&&t[4]<=this.minValue&&(t[4]=this.minValue),t.length>4&&t[5]<=this.minValue&&(t[5]=this.minValue)),this.maxValue!==null&&(t[0]>=this.maxValue&&(t[0]=this.maxValue),t[1]>=this.maxValue&&(t[1]=this.maxValue),t[2]>=this.maxValue&&(t[2]=this.maxValue),t[3]>=this.maxValue&&(t[3]=this.maxValue,this.redHigh=0),t.length>4&&t[4]>=this.maxValue&&(t[4]=this.maxValue),t.length>4&&t[5]>=this.maxValue&&(t[5]=this.maxValue)),t[0]==t[1]&&(this.yellowLow=0),t[2]==t[3]&&(this.yellowHigh=0);let i=80;return this.redLow==0&&(i+=10),this.redHigh==0&&(i+=10),this.scale=(t[3]-t[0])/i,t},calcPosition(t,i){if(t==null||!i)return;let l=i[0]-10*this.scale;if(this.minValue&&this.minValue==i[0]&&(l=i[0]),t.raw)return t.raw==="-Infinity"?0:100;if(t<this.min)return 0;if(t>this.max)return 100;{const s=Number.parseInt((t-l)/this.scale);return s>100?100:s<0?0:s}},calcLimits(t){t&&(this.yellowLow=Math.round((t[1]-t[0])/this.scale),this.yellowHigh=Math.round((t[3]-t[2])/this.scale),t.length>4?(this.greenLow=Math.round((t[4]-t[1])/this.scale),this.greenHigh=Math.round((t[2]-t[5])/this.scale),this.blue=Math.round(100-this.redLow-this.yellowLow-this.greenLow-this.greenHigh-this.yellowHigh-this.redHigh)):(this.greenLow=Math.round(100-this.redLow-this.yellowLow-this.yellowHigh-this.redHigh),this.greenHigh=0,this.blue=0))},getCurrentLimitsSet:function(){this.api.get_limits_set().then(t=>{this.currentLimitsSet=t})}}})})}}));
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["./main-
|
|
2
|
-
`,i=0,l=0;const m=this.bytesPerWord*this.wordsPerRow;for(const c of t.raw)this.addrFormat&&i===0&&(r+=sprintf(this.addrFormat,l),l+=m),r+=sprintf(this.formatter,c),i+=1,i%m===0?(i=0,r+=
|
|
1
|
+
System.register(["./main-f0865abbd006d9b2cc5a.js","vue","./DetailsDialog-CLPj0nP0-9dcc472124933da9a31b.js","single-spa","./VWidget-C4VLQ7-b-07b1f80f82f119fc5285.js","vue-router","pinia","vuetify","./LimitsBar-DNV39okL-ac8e562bdd6f80498856.js","./LimitsColor-CBcpB-la-3bd861951380f642016e.js","./Widget-ClRi417b-c819f8641946506d7602.js"],(function(D,_){"use strict";var u,a,h,d,s,p,g,o,f,w,v,y,x,C,V,k;return{setters:[e=>{u=e.f},e=>{a=e.resolveComponent,h=e.openBlock,d=e.createElementBlock,s=e.createVNode,p=e.normalizeStyle,g=e.normalizeClass,o=e.withCtx,f=e.Fragment,w=e.renderList,v=e.createBlock,y=e.withModifiers,x=e.createTextVNode,C=e.toDisplayString},e=>{V=e.Z},null,e=>{k=e.T},null,null,null,null,null,null],execute:(function(){const e={components:{DetailsDialog:V},mixins:[k],data:function(){return{width:400,height:400,bytesPerWord:4,wordsPerRow:4,addrFormat:null,formatter:"%02X"}},computed:{aging(){return{"--aging":this.grayLevel}},rows:function(){return(this.height-16)/24}},created:function(){this.width=this.setWidth(this.parameters[3],"px",this.width),this.height=this.setHeight(this.parameters[4],"px",this.height),this.parameters[5]&&(this.formatter=this.parameters[5]),this.parameters[6]&&(this.bytesPerWord=Number.parseInt(this.parameters[6])),this.parameters[7]&&(this.wordsPerRow=Number.parseInt(this.parameters[7])),this.parameters[8]&&(this.addrFormat=this.parameters[8])},methods:{getType:function(){let t="RAW";return this.parameters[9]&&(t=this.parameters[9]),t},formatValue:function(t){let r="";if(t&&t.raw){let b=" ",B=`
|
|
2
|
+
`,i=0,l=0;const m=this.bytesPerWord*this.wordsPerRow;for(const c of t.raw)this.addrFormat&&i===0&&(r+=sprintf(this.addrFormat,l),l+=m),r+=sprintf(this.formatter,c),i+=1,i%m===0?(i=0,r+=B):i%this.bytesPerWord===0&&(r+=b)}else r=t;return r}}},P={class:"block-widget-container"};function S(t,r,b,B,i,l){const m=a("v-textarea"),c=a("v-list-item-title"),L=a("v-list-item"),W=a("v-list"),j=a("v-menu"),M=a("details-dialog");return h(),d("div",P,[s(m,{variant:"solo",density:"compact",readonly:"","no-resize":"","hide-details":"",rows:l.rows,width:t.width,"model-value":t._value,class:g(t.valueClass),style:p([t.computedStyle,l.aging]),"data-test":"valueText",onContextmenu:t.showContextMenu},null,8,["rows","width","model-value","class","style","onContextmenu"]),s(j,{modelValue:t.contextMenuShown,"onUpdate:modelValue":r[0]||(r[0]=n=>t.contextMenuShown=n),target:[t.x,t.y]},{default:o(()=>[s(W,null,{default:o(()=>[(h(!0),d(f,null,w(t.contextMenuOptions,(n,N)=>(h(),v(L,{key:N,onClick:y(n.action,["stop"])},{default:o(()=>[s(c,null,{default:o(()=>[x(C(n.title),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1},8,["modelValue","target"]),s(M,{modelValue:t.viewDetails,"onUpdate:modelValue":r[1]||(r[1]=n=>t.viewDetails=n),"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 F=D("default",u(e,[["render",S],["__scopeId","data-v-fc296592"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./main-f0865abbd006d9b2cc5a.js","vue","vue-router","pinia","single-spa","vuetify"],(function(U,M){"use strict";var T,g,o,h,f,t,a,s,d,m,v,C,w,_,B,x;return{setters:[i=>{T=i.f,g=i.q},i=>{o=i.resolveComponent,h=i.openBlock,f=i.createElementBlock,t=i.createVNode,a=i.withCtx,s=i.createTextVNode,d=i.toDisplayString,m=i.createElementVNode,v=i.Fragment,C=i.renderList,w=i.createCommentVNode,_=i.mergeProps,B=i.createBlock,x=i.withKeys},null,null,null,null],execute:(function(){const i={data(){return{bridges:[],updater:null,token:"",tokenBridge:"",showToken:!1,showCreate:!1,newBridgeName:"",alert:"",alertType:"success",showAlert:!1}},mounted(){this.update(),this.updater=setInterval(()=>{this.update()},5e3)},beforeUnmount(){clearInterval(this.updater),this.updater=null},methods:{update:function(){g.get("/openc3-api/bridges/all").then(n=>{let e=[];for(const[c,k]of Object.entries(n.data))e.push(k);e.sort((c,k)=>c.name.localeCompare(k.name)),this.bridges=e})},showTempAlert:function(n,e="success",c=3e3){this.alert=n,this.alertType=e,this.showAlert=!0,setTimeout(()=>{this.showAlert=!1},c)},createBridge:function(){const n=this.newBridgeName.trim().toUpperCase();n&&g.post("/openc3-api/bridges",{data:{name:n}}).then(()=>{this.showCreate=!1,this.newBridgeName="",this.showTempAlert(`Bridge ${n} created. Its hub is starting.`),this.update()}).catch(e=>{const c=e.response?.data?.message||e;this.showTempAlert(`Failed to create bridge: ${c}`,"error",5e3)})},deleteBridge:function(n){this.$dialog.confirm(`Are you sure you want to delete bridge ${n}? This stops its hub and removes its identity.`,{okText:"Delete",cancelText:"Cancel"}).then(()=>g.delete(`/openc3-api/bridges/${n}`)).then(()=>{this.showTempAlert(`Bridge ${n} deleted`),this.update()}).catch(e=>{if(e===!0)return;const c=e.response?.data?.message||e;this.showTempAlert(`Failed to delete bridge ${n}: ${c}`,"error",5e3)})},generateToken:function(n){g.post(`/openc3-api/bridges/${n}/token`).then(e=>{this.token=e.data.token,this.tokenBridge=n,this.showToken=!0,this.update()}).catch(e=>{this.alert=`Failed to generate token for ${n}: ${e}`,this.alertType="error",this.showAlert=!0,setTimeout(()=>{this.showAlert=!1},5e3)})},copyToken:function(){navigator.clipboard.writeText(this.token),this.alert="Token copied to clipboard",this.alertType="success",this.showAlert=!0,setTimeout(()=>{this.showAlert=!1},3e3)}}},F={class:"d-flex align-center mt-2 mb-2 mx-4"},G={class:"text-caption text-medium-emphasis"};function R(n,e,c,k,l,b){const S=o("v-alert"),u=o("v-spacer"),p=o("v-btn"),K=o("v-list-item-title"),N=o("v-list-item-subtitle"),P=o("v-chip"),V=o("v-tooltip"),A=o("v-list-item"),j=o("v-divider"),z=o("v-list"),E=o("v-toolbar"),O=o("v-textarea"),$=o("v-card-text"),D=o("v-card-actions"),I=o("v-card"),L=o("v-dialog"),Y=o("v-text-field");return h(),f("div",null,[t(S,{modelValue:l.showAlert,"onUpdate:modelValue":e[0]||(e[0]=r=>l.showAlert=r),closable:"",type:l.alertType},{default:a(()=>[s(d(l.alert),1)]),_:1},8,["modelValue","type"]),m("div",F,[m("div",G,d(l.bridges.length)+" bridge"+d(l.bridges.length===1?"":"s"),1),t(u),t(p,{color:"primary","prepend-icon":"mdi-plus","data-test":"create-bridge",onClick:e[1]||(e[1]=r=>l.showCreate=!0)},{default:a(()=>[...e[7]||(e[7]=[s(" Create Bridge ",-1)])]),_:1})]),t(z,{class:"list","data-test":"bridgeList"},{default:a(()=>[(h(!0),f(v,null,C(l.bridges,r=>(h(),f("div",{key:r.name},[t(A,null,{append:a(()=>[t(P,{color:r.reachable?r.app_public_key?"green":"yellow":"grey",size:"small",label:""},{default:a(()=>[s(d(r.reachable?r.app_public_key?"ENROLLED":"UNPAIRED":"STARTING/DOWN"),1)]),_:2},1032,["color"]),t(V,{text:"Generate Enrollment Token",location:"top"},{activator:a(({props:y})=>[t(p,_({ref_for:!0},y,{"aria-label":"Generate Enrollment Token",icon:"mdi-key-plus",variant:"text",disabled:!r.reachable,onClick:q=>b.generateToken(r.name)}),null,16,["disabled","onClick"])]),_:2},1024),t(V,{text:"Delete Bridge",location:"top"},{activator:a(({props:y})=>[t(p,_({ref_for:!0},y,{"aria-label":"Delete Bridge",icon:"mdi-delete",variant:"text","data-test":"delete-bridge",onClick:q=>b.deleteBridge(r.name)}),null,16,["onClick"])]),_:2},1024)]),default:a(()=>[t(K,null,{default:a(()=>[s(d(r.name),1)]),_:2},1024),t(N,null,{default:a(()=>[s(" openc3-app enrolled: "+d(r.app_public_key?"Yes":"No")+" ",1),r.app_public_key?(h(),f(v,{key:0},[s(" ("+d(r.app_public_key.slice(0,12))+"…) ",1)],64)):w("",!0),s(" , Reachable: "+d(r.reachable?"Yes":"No"),1)]),_:2},1024)]),_:2},1024),t(j)]))),128)),l.bridges.length===0?(h(),B(A,{key:0},{default:a(()=>[t(N,null,{default:a(()=>[...e[8]||(e[8]=[s(" No bridges found. Create one to start its bridge hub. ",-1)])]),_:1})]),_:1})):w("",!0)]),_:1}),t(L,{modelValue:l.showToken,"onUpdate:modelValue":e[3]||(e[3]=r=>l.showToken=r),width:"700"},{default:a(()=>[t(I,null,{default:a(()=>[t(E,{height:"24"},{default:a(()=>[t(u),m("span",null," Enrollment Token: "+d(l.tokenBridge),1),t(u)]),_:1}),t($,{class:"mt-4"},{default:a(()=>[e[9]||(e[9]=m("p",{class:"mb-2"}," Paste this one-time token into openc3-app (on the remote host) to pair it with this bridge. It authorizes that openc3-app's identity, expires after 10 minutes, and can only be redeemed once. ",-1)),t(O,{"model-value":l.token,label:"Enrollment Token",variant:"outlined",readonly:"",rows:"4","data-test":"enrollment-token"},null,8,["model-value"])]),_:1}),t(D,null,{default:a(()=>[t(u),t(p,{variant:"text",onClick:b.copyToken},{default:a(()=>[...e[10]||(e[10]=[s(" Copy ",-1)])]),_:1},8,["onClick"]),t(p,{variant:"text",onClick:e[2]||(e[2]=r=>l.showToken=!1)},{default:a(()=>[...e[11]||(e[11]=[s(" Close ",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(L,{modelValue:l.showCreate,"onUpdate:modelValue":e[6]||(e[6]=r=>l.showCreate=r),width:"500"},{default:a(()=>[t(I,null,{default:a(()=>[t(E,{height:"24"},{default:a(()=>[t(u),e[12]||(e[12]=m("span",null," Create Bridge ",-1)),t(u)]),_:1}),t($,{class:"mt-4"},{default:a(()=>[t(Y,{modelValue:l.newBridgeName,"onUpdate:modelValue":e[4]||(e[4]=r=>l.newBridgeName=r),label:"Bridge Name",variant:"outlined",hint:"Letters, numbers, and underscores (e.g. LAB1)","persistent-hint":"",autofocus:"","data-test":"new-bridge-name",onKeyup:x(b.createBridge,["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(D,null,{default:a(()=>[t(u),t(p,{variant:"text",onClick:e[5]||(e[5]=r=>l.showCreate=!1)},{default:a(()=>[...e[13]||(e[13]=[s(" Cancel ",-1)])]),_:1}),t(p,{variant:"text",disabled:!l.newBridgeName,"data-test":"create-bridge-submit",onClick:b.createBridge},{default:a(()=>[...e[14]||(e[14]=[s(" Create ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}const W=U("default",T(i,[["render",R],["__scopeId","data-v-516fc34d"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./main-f0865abbd006d9b2cc5a.js","vue","single-spa","./Widget-ClRi417b-c819f8641946506d7602.js","vue-router","pinia","vuetify"],(function(Y,pe){"use strict";var B,T,C,M,n,z,H,r,a,R,h,b,N,W,Z,K,q;return{setters:[o=>{B=o.f,T=o.A,C=o.q,M=o.O},o=>{n=o.resolveComponent,z=o.openBlock,H=o.createBlock,r=o.withCtx,a=o.createVNode,R=o.createElementVNode,h=o.createTextVNode,b=o.toDisplayString,N=o.createCommentVNode,W=o.withModifiers,Z=o.createElementBlock,K=o.normalizeStyle},null,o=>{q=o.f},null,null,null],execute:(function(){const o={props:{uuid:{type:String,default:null},cmdUser:{type:String,default:null},cmdString:{type:String,default:null},persistent:{type:Boolean,default:!1},modelValue:Boolean},emits:["update:modelValue","status"],data(){return{updater:null,username:null,password:null,canApprove:!1,error:!1,errorText:""}},computed:{show:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},formValid:function(){return!!this.password&&!!this.username},disableButtons:function(){return!this.formValid&&!this.canApprove}},watch:{modelValue:function(t,e){t?(C.get("/openc3-api/criticalcmd/canapprove/"+this.uuid).then(i=>{i.data.status==="ok"&&(this.canApprove=!0)}).catch(console.error),this.updater=setInterval(()=>{this.uuid?C.get("/openc3-api/criticalcmd/status/"+this.uuid).then(i=>{i.data.status!=="WAITING"&&(this.$emit("status",i.data.status,this.uuid),this.show=!1)}).catch(console.error):this.show=!1},1e3)):(clearInterval(this.updater),this.updater=null,this.canApprove=!1,this.username=null,this.password=null)}},beforeUnmount(){clearInterval(this.updater),this.updater=null,this.canApprove=!1,this.username=null,this.password=null},methods:{async approve(){if(this.canApprove)await C.post("/openc3-api/criticalcmd/approve/"+this.uuid,{}).then(t=>{t.status==200&&(this.$emit("status","APPROVED",this.uuid),this.show=!1,this.error=!1)});else{let t=await this.getKeycloakToken();T.post("/openc3-api/criticalcmd/approve/"+this.uuid,{},{headers:{Authorization:t,"Content-Type":"application/json"},params:{scope:window.openc3Scope},timeout:5e3}).then(e=>{this.$emit("status","APPROVED",this.uuid),this.show=!1,this.error=!1}).catch(e=>{this.error=!0,e.response?this.errorText=e.response.data.message:this.errorText=e.message})}},async reject(){if(this.canApprove)await C.post("/openc3-api/criticalcmd/reject/"+this.uuid,{}).then(t=>{t.status==200&&(this.$emit("status","REJECTED",this.uuid),this.show=!1,this.error=!1)});else{let t=await this.getKeycloakToken();(await T.post("/openc3-api/criticalcmd/reject/"+this.uuid,{},{headers:{Authorization:t,"Content-Type":"application/json"},params:{scope:window.openc3Scope},timeout:5e3})).status==200&&(this.$emit("status","REJECTED",this.uuid),this.show=!1,this.error=!1)}},async getKeycloakToken(){return(await T.post(localStorage.keycloakUrl+"/realms/"+localStorage.keycloakRealm+"/protocol/openid-connect/token",{username:this.username,password:this.password,client_id:localStorage.keycloakClientId,grant_type:"password",scope:"openid"},{headers:{"Content-Type":"application/x-www-form-urlencoded"},timeout:5e3})).data.access_token}}};function ee(t,e,i,k,s,u){const w=n("v-spacer"),x=n("v-toolbar"),_=n("v-alert"),f=n("v-row"),V=n("v-text-field"),S=n("v-btn"),v=n("v-container"),A=n("v-card-text"),y=n("v-card"),E=n("v-dialog");return z(),H(E,{modelValue:u.show,"onUpdate:modelValue":e[3]||(e[3]=l=>u.show=l),persistent:i.persistent,width:"600"},{default:r(()=>[a(y,null,{default:r(()=>[a(x,{height:"24"},{default:r(()=>[a(w),e[4]||(e[4]=R("span",null," Waiting for Critical Command Approval ",-1)),a(w)]),_:1}),a(A,null,{default:r(()=>[a(v,{fluid:""},{default:r(()=>[a(_,{modelValue:s.error,"onUpdate:modelValue":e[0]||(e[0]=l=>s.error=l),type:"error",closable:""},{default:r(()=>[h(b(s.errorText),1)]),_:1},8,["modelValue"]),a(f,{class:"pt-4",style:{color:"white"}},{default:r(()=>[h("User "+b(i.cmdUser)+" is waiting for approval to execute: ",1)]),_:1}),a(f,{class:"pa-4",style:{color:"white"}},{default:r(()=>[h(b(i.cmdString),1)]),_:1}),a(f,{class:"text-subtitle-2"},{default:r(()=>[h("UUID: "+b(i.uuid),1)]),_:1}),s.canApprove?N("",!0):(z(),H(f,{key:0},{default:r(()=>[a(V,{modelValue:s.username,"onUpdate:modelValue":e[1]||(e[1]=l=>s.username=l),label:"Username","data-test":"username"},null,8,["modelValue"])]),_:1})),s.canApprove?N("",!0):(z(),H(f,{key:1},{default:r(()=>[a(V,{modelValue:s.password,"onUpdate:modelValue":e[2]||(e[2]=l=>s.password=l),type:"password",label:"Password","data-test":"password"},null,8,["modelValue"])]),_:1})),a(f,{class:"pt-2"},{default:r(()=>[a(w),a(S,{type:"submit",class:"mx-2",color:"secondary",variant:"outlined",disabled:u.disableButtons,"data-test":"reject",onClick:W(u.reject,["prevent"])},{default:r(()=>[...e[5]||(e[5]=[h(" Reject ",-1)])]),_:1},8,["disabled","onClick"]),a(S,{type:"submit",class:"mx-2",color:"primary",disabled:u.disableButtons,"data-test":"approve",onClick:W(u.approve,["prevent"])},{default:r(()=>[...e[6]||(e[6]=[h(" Approve ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue","persistent"])}const te=B(o,[["render",ee],["__scopeId","data-v-f5e2fd67"]]),ae="/sandbox.html",J=new Set(["constructor","__proto__","prototype"]),se=new Set(["open","close","closeAll"]),G={cmd:"cmd_no_hazardous_check",cmd_raw:"cmd_raw_no_hazardous_check"};function D(t){try{return structuredClone(t),t}catch{return}}function re(t){const{code:e,api:i,screen:k,runScript:s,setNamedWidgetValue:u,snapshot:w={},screenValues:x={},screenTimeZone:_="local",onHazardous:f,onCritical:V,timeout:S=12e4,signal:v}=t;return new Promise((A,y)=>{const E=()=>{O(y,new DOMException("Button script aborted","AbortError"))},l=document.createElement("iframe");l.setAttribute("sandbox","allow-scripts"),l.setAttribute("aria-hidden","true"),l.style.display="none",l.src=ae;let F=!1,j=null;const P=()=>{j&&(clearTimeout(j),j=null)},I=()=>{P(),j=setTimeout(()=>{O(y,new Error("Button script timed out"))},S)},le=()=>{window.removeEventListener("message",Q),v?.removeEventListener("abort",E),P(),l.remove()},O=(d,p)=>{F||(F=!0,le(),d(p))},L=d=>{l.contentWindow?.postMessage(d,"*")},de=async(d,p)=>{try{return await i[d](...p)}catch(g){const m=g?.message||"";if(m.includes("CriticalCmdError"))throw V?.(g),g;if(m.includes("is Hazardous")&&G[d]){P();const U=await f?.(g);return I(),U?await i[G[d]](...p):void 0}throw g}},ce=async d=>{const{id:p,target:g,method:m,name:U,op:X,args:$=[],value:ue}=d;try{let c;switch(g){case"api":if(typeof m!="string"||J.has(m)||typeof i[m]!="function")throw new Error(`Unknown api method: ${m}`);c=await de(m,$);break;case"screen":if(!se.has(m))throw new Error(`Unknown screen method: ${m}`);c=k[m](...$),c instanceof Promise&&(c=await c);break;case"runScript":c=s(...$),c instanceof Promise&&(c=await c);break;case"alert":c=window.alert(...$);break;case"namedWidget":if(X==="setValue"&&typeof U=="string"&&!J.has(U))u(U,ue);else throw new Error(`Unknown namedWidget op: ${X}`);break;default:throw new Error(`Unknown bridge target: ${g}`)}L({type:"result",id:p,ok:!0,value:D(c)})}catch(c){L({type:"result",id:p,ok:!1,error:{name:c?.name,message:c?.message}})}},Q=d=>{if(d.origin!=="null"&&d.origin!==""||d.source!==l.contentWindow)return;const p=d.data;if(!(!p||typeof p!="object"))switch(I(),p.type){case"ready":L({type:"init",code:e,snapshot:D(w)??{},screenValues:D(x)??{},screenTimeZone:_});break;case"call":ce(p).catch(console.error);break;case"done":O(A,void 0);break}};if(v){if(v.aborted){E();return}v.addEventListener("abort",E,{once:!0})}window.addEventListener("message",Q),I(),document.body.appendChild(l)})}const oe={components:{CriticalCmdDialog:te},mixins:[q],data(){return{api:null,running:!1,displaySendHazardous:!1,hazardousResolve:null,criticalCmdUuid:null,criticalCmdString:null,criticalCmdUser:null,displayCriticalCmd:!1,abortController:null}},computed:{buttonText(){return this.parameters[0]}},created(){this.api=new M},beforeUnmount(){this.abortController?.abort()},methods:{async onClick(){if(!this.running){this.running=!0,this.abortController=new AbortController;try{await re({code:this.parameters[1],api:this.api,screen:this.screen,runScript:this.runScript,setNamedWidgetValue:(t,e)=>this.setNamedWidgetValue(t,e),snapshot:this.namedWidgetsSnapshot(),screenValues:this.screenValues,screenTimeZone:this.screenTimeZone,onHazardous:this.onHazardous,onCritical:this.onCritical,signal:this.abortController.signal})}catch(t){t?.name!=="AbortError"&&console.error(t)}finally{this.running=!1,this.abortController=null,this.displaySendHazardous=!1,this.hazardousResolve=null}}},onHazardous(){return new Promise(t=>{this.hazardousResolve=t,this.displaySendHazardous=!0})},onCritical(t){this.criticalCmdUuid=t.object.data.instance_variables["@uuid"],this.criticalCmdString=t.object.data.instance_variables["@cmd_string"],this.criticalCmdUser=t.object.data.instance_variables["@username"],this.displayCriticalCmd=!0},sendHazardousCmd(){this.displaySendHazardous=!1;const t=this.hazardousResolve;this.hazardousResolve=null,t?.(!0)},cancelHazardousCmd(){this.displaySendHazardous=!1;const t=this.hazardousResolve;this.hazardousResolve=null,t?.(!1)},runScript(t,e=!0,i={}){let k=[];for(const s in i)k.push({key:s,value:i[s],readonly:!1});C.post(`/script-api/scripts/${t}/run`,{data:{environment:k}}).then(s=>{e&&window.open(`/tools/scriptrunner/${s.data}`,"_blank")}).catch(console.error)}}},ne={class:"mx-1"};function ie(t,e,i,k,s,u){const w=n("v-btn"),x=n("v-card-title"),_=n("v-row"),f=n("v-spacer"),V=n("v-card-text"),S=n("v-card"),v=n("v-dialog"),A=n("critical-cmd-dialog");return z(),Z("div",null,[a(w,{class:"ma-1",color:"primary",style:K(t.computedStyle),loading:s.running,onClick:u.onClick},{default:r(()=>[h(b(u.buttonText),1)]),_:1},8,["style","loading","onClick"]),a(v,{modelValue:s.displaySendHazardous,"onUpdate:modelValue":e[0]||(e[0]=y=>s.displaySendHazardous=y),"max-width":"300"},{default:r(()=>[a(S,null,{default:r(()=>[a(x,null,{default:r(()=>[...e[2]||(e[2]=[h("Hazardous",-1)])]),_:1}),a(V,null,{default:r(()=>[R("div",ne,[a(_,{class:"my-2"},{default:r(()=>[...e[3]||(e[3]=[R("span",null," Warning: Command is Hazardous. Send? ",-1)])]),_:1}),a(_,null,{default:r(()=>[a(f),a(w,{variant:"outlined",onClick:u.cancelHazardousCmd},{default:r(()=>[...e[4]||(e[4]=[h(" Cancel ",-1)])]),_:1},8,["onClick"]),a(w,{class:"bg-primary mx-1",onClick:u.sendHazardousCmd},{default:r(()=>[...e[5]||(e[5]=[h(" Send ",-1)])]),_:1},8,["onClick"])]),_:1})])]),_:1})]),_:1})]),_:1},8,["modelValue"]),a(A,{modelValue:s.displayCriticalCmd,"onUpdate:modelValue":e[1]||(e[1]=y=>s.displayCriticalCmd=y),uuid:s.criticalCmdUuid,"cmd-string":s.criticalCmdString,"cmd-user":s.criticalCmdUser},null,8,["modelValue","uuid","cmd-string","cmd-user"])])}const he=Y("default",B(oe,[["render",ie]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./Layout-
|
|
1
|
+
System.register(["./Layout-Df-lJgpB-228411e9ed7160bf6079.js","vue","./main-f0865abbd006d9b2cc5a.js","./Widget-ClRi417b-c819f8641946506d7602.js","vue-router","pinia","single-spa","vuetify"],(function(d,f){"use strict";var i,r,s,a,l,c,o,u,m,g;return{setters:[e=>{i=e.r},e=>{r=e.openBlock,s=e.createElementBlock,a=e.normalizeStyle,l=e.Fragment,c=e.renderList,o=e.createBlock,u=e.resolveDynamicComponent,m=e.mergeProps},e=>{g=e.f},null,null,null,null,null],execute:(function(){const e={mixins:[i],computed:{width(){return this.parameters[0]+"px"},height(){return this.parameters[1]+"px"}}},h=["width","height"];function v(n,w,B,b,j,p){return r(),s("svg",{id:"canvas",width:p.width,height:p.height,style:a(n.computedStyle)},[(r(!0),s(l,null,c(n.widgets,(t,y)=>(r(),o(u(t.type),m({ref_for:!0},n.listeners,{key:y,target:t.target,parameters:t.parameters,settings:t.settings,"screen-values":n.screenValues,"screen-time-zone":n.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"]))),128))],12,h)}const k=d("default",g(e,[["render",v],["__scopeId","data-v-aeda4a44"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(i,a){"use strict";var t,l,n,c;return{setters:[e=>{t=e.f},e=>{l=e.openBlock,n=e.createElementBlock},e=>{c=e.f},null,null,null,null],execute:(function(){const e={mixins:[t]},s=["cx","cy","r","fill"];function u(r,f,m,p,d,k){return l(),n("circle",{cx:r.parameters[0],cy:r.parameters[1],r:r.parameters[3],fill:r.parameters[2]},null,8,s)}const o=i("default",c(e,[["render",u]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./Widget-
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","./ImageLoader-DH5e4lg8-03c656b21fa2caca8324.js","vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(o,d){"use strict";var i,n,s,a,l,c,h;return{setters:[e=>{i=e.f},e=>{n=e.p},e=>{s=e.openBlock,a=e.createElementBlock,l=e.normalizeStyle,c=e.createCommentVNode},e=>{h=e.f},null,null,null,null],execute:(function(){const e={mixins:[i,n],emits:["open"],data:function(){return{imageUrl:null,screenTarget:null,screenName:null}},computed:{width:function(){return this.parameters[3]?`${this.parameters[3]}px`:"100%"},height:function(){return this.parameters[4]?`${this.parameters[4]}px`:"100%"},pointerStyle(){return this.screenTarget&&this.screenName?{cursor:"pointer"}:{cursor:"default"}}},created:function(){this.appliedSettings.forEach(t=>{t[0]==="SCREEN"&&(this.screenTarget=t[1],this.screenName=t[2])}),this.parameters[0].startsWith("http")?this.imageUrl=this.parameters[0]:this.getPresignedUrl(this.parameters[0]).then(t=>{this.imageUrl=t})},methods:{clickHandler(){this.screenTarget&&this.screenName&&this.$emit("open",this.screenTarget,this.screenName)}}},u=["href","x","y","width","height"];function p(t,m,k,y,N,r){return t.imageUrl?(s(),a("image",{key:0,href:t.imageUrl,x:t.parameters[1],y:t.parameters[2],width:r.width,height:r.height,style:l(r.pointerStyle),onClick:m[0]||(m[0]=(...g)=>r.clickHandler&&r.clickHandler(...g))},null,12,u)):c("",!0)}const f=o("default",h(e,[["render",p]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","./ImageLoader-DH5e4lg8-03c656b21fa2caca8324.js","vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(I,S){"use strict";var m,d,l,n,o,g,h,u,c,p,f;return{setters:[t=>{m=t.f},t=>{d=t.p},t=>{l=t.openBlock,n=t.createElementBlock,o=t.Fragment,g=t.renderList,h=t.withDirectives,u=t.normalizeStyle,c=t.vShow,p=t.createCommentVNode},t=>{f=t.f},null,null,null,null],execute:(function(){const t={mixins:[m,d],emits:["addItem","deleteItem","open"],data:function(){return{images:[],defaultImage:null,screenTarget:null,screenName:null}},computed:{selectedValue:function(){return this.screenValues[this.valueId]?this.screenValues[this.valueId][0]:null},showDefault:function(){return!this.images.some(r=>r.value==this.selectedValue)},pointerStyle(){return this.screenTarget&&this.screenName?{cursor:"pointer"}:{cursor:"default"}}},created:function(){this.appliedSettings.forEach(e=>{e[0]==="SCREEN"&&(this.screenTarget=e[1],this.screenName=e[2])}),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${this.parameters[3]||"RAW"}`,this.$emit("addItem",this.valueId);const r=this.appliedSettings.filter(e=>e[0]==="IMAGE").map(async e=>{let i=e[2];return i.startsWith("http")||(i=await this.getPresignedUrl(i)),{url:i,value:e[1],x:e[3],y:e[4],width:e[5],height:e[6]}});if(Promise.all(r).then(e=>{this.images=e}).catch(console.error),this.parameters[4]){const e={x:this.parameters[5],y:this.parameters[6],width:this.parameters[7]?`${this.parameters[7]}px`:"100%",height:this.parameters[8]?`${this.parameters[8]}px`:"100%"};let i=this.parameters[4];i.startsWith("http")?this.defaultImage={...e,url:i}:this.getPresignedUrl(i).then(y=>{this.defaultImage={...e,url:y}})}},unmounted:function(){this.$emit("deleteItem",this.valueId)},methods:{clickHandler(){this.screenTarget&&this.screenName&&this.$emit("open",this.screenTarget,this.screenName)}}},v=["href","x","y","width","height"],w=["href","x","y","width","height"];function k(r,e,i,y,N,s){return l(),n("g",null,[(l(!0),n(o,null,g(r.images,a=>h((l(),n("image",{key:a.value,href:a.url,x:a.x,y:a.y,width:a.width,height:a.height,style:u(s.pointerStyle),onClick:e[0]||(e[0]=(...x)=>s.clickHandler&&s.clickHandler(...x))},null,12,v)),[[c,a.value==s.selectedValue]])),128)),r.defaultImage?h((l(),n("image",{key:0,href:r.defaultImage.url,x:r.defaultImage.x,y:r.defaultImage.y,width:r.defaultImage.width,height:r.defaultImage.height,style:u(s.pointerStyle),onClick:e[1]||(e[1]=(...a)=>s.clickHandler&&s.clickHandler(...a))},null,12,w)),[[c,s.showDefault]]):p("",!0)])}const $=I("default",f(t,[["render",k]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(u,f){"use strict";var r,l,n,i,s,a;return{setters:[e=>{r=e.f},e=>{l=e.openBlock,n=e.createElementBlock,i=e.normalizeStyle,s=e.toDisplayString},e=>{a=e.f},null,null,null,null],execute:(function(){const e={mixins:[r],computed:{fontSize(){return this.parameters[3]?this.parameters[3]+"px":"12px"},fillColor(){return this.parameters[4]?this.parameters[4]:"black"}}},p=["x","y","font-size","fill"];function c(t,y,x,S,z,o){return l(),n("text",{x:t.parameters[0],y:t.parameters[1],"font-size":o.fontSize,fill:o.fillColor,style:i(t.computedStyle)},s(t.parameters[2]),13,p)}const m=u("default",a(e,[["render",c]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./Widget-
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(m,d){"use strict";var s,a,i,l,n,u;return{setters:[e=>{s=e.f},e=>{a=e.openBlock,i=e.createElementBlock,l=e.normalizeStyle,n=e.toDisplayString},e=>{u=e.f},null,null,null,null],execute:(function(){const e={mixins:[s],emits:["addItem","deleteItem"],data(){return{valueId:null}},computed:{_value(){return this.screenValues[this.valueId]?this.screenValues[this.valueId][0]:""},fontSize(){return this.parameters[5]?this.parameters[5]+"px":"14px"},fillColor(){return this.parameters[6]?this.parameters[6]:"black"}},created(){let t="CONVERTED";this.parameters[7]&&(t=this.parameters[7]),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${t}`,this.$emit("addItem",this.valueId)},unmounted(){this.$emit("deleteItem",this.valueId)}},o=["x","y","font-size","fill"];function p(t,c,f,v,I,r){return a(),i("text",{x:t.parameters[3],y:t.parameters[4],"font-size":r.fontSize,fill:r.fillColor,style:l(t.computedStyle)},n(r._value),13,o)}const h=m("default",u(e,[["render",p]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./Widget-
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(c,p){"use strict";var l,n,a,s,i;return{setters:[e=>{l=e.f},e=>{n=e.openBlock,a=e.createElementBlock,s=e.normalizeStyle},e=>{i=e.f},null,null,null,null],execute:(function(){const e={mixins:[l],computed:{calcStyle(){let t="black";this.parameters[4]&&(t=this.parameters[4]);let r=1;return this.parameters[5]&&(r=this.parameters[5]),"stroke:"+t+";stroke-width:"+r}}},u=["x1","y1","x2","y2"];function m(t,r,f,k,d,o){return n(),a("line",{x1:t.parameters[0],y1:t.parameters[1],x2:t.parameters[2],y2:t.parameters[3],style:s(o.calcStyle)},null,12,u)}const y=c("default",i(e,[["render",m]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./Widget-
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(u,d){"use strict";var s,r,l,i,n;return{setters:[t=>{s=t.f},t=>{r=t.openBlock,l=t.createElementBlock,i=t.normalizeStyle},t=>{n=t.f},null,null,null,null],execute:(function(){const t={mixins:[s],emits:["addItem","deleteItem"],data(){return{valueId:0,valueMap:{}}},computed:{calcStyle(){let e="black";this.screenValues[this.valueId]&&(e=this.valueMap[this.screenValues[this.valueId][0]]);let a=1;return this.parameters[7]&&(a=this.parameters[7]),"stroke:"+e+";stroke-width:"+a}},created(){this.appliedSettings.forEach(a=>{a[0]==="VALUE_EQ"&&(this.valueMap[a[1]]=a[2])});let e="CONVERTED";this.parameters[8]&&(e=this.parameters[8]),this.valueId=`${this.parameters[0]}__${this.parameters[1]}__${this.parameters[2]}__${e}`,this.$emit("addItem",this.valueId)},unmounted(){this.$emit("deleteItem",this.valueId)}},m=["x1","y1","x2","y2"];function c(e,a,o,v,y,h){return r(),l("line",{x1:e.parameters[3],y1:e.parameters[4],x2:e.parameters[5],y2:e.parameters[6],style:i(h.calcStyle)},null,12,m)}const p=u("default",n(t,[["render",c]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(i,p){"use strict";var t,a,n,s,r,o;return{setters:[e=>{t=e.f},e=>{a=e.resolveComponent,n=e.openBlock,s=e.createBlock,r=e.normalizeStyle},e=>{o=e.f},null,null,null,null],execute:(function(){const e={mixins:[t],data(){return{items:[],label:"Checkbox",value:!1}},created(){this.label=this.parameters[0],this.parameters[1]&&(this.value=!0)},methods:{checked(){return this.value}}};function c(d,u,f,b,l,k){const m=a("v-checkbox");return n(),s(m,{modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=h=>l.value=h),"hide-details":"",density:"compact",label:l.label,style:r(d.computedStyle)},null,8,["modelValue","label","style"])}const v=i("default",o(e,[["render",c]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./Widget-
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(o,p){"use strict";var l,n,s,i,a,r;return{setters:[e=>{l=e.f},e=>{n=e.resolveComponent,s=e.openBlock,i=e.createBlock,a=e.normalizeStyle},e=>{r=e.f},null,null,null,null],execute:(function(){const e={mixins:[l],data(){return{items:[],value:null}},created(){this.value=this.parameters[0],this.items=this.parameters},methods:{text(){return this.value}}};function c(m,u,f,h,t,k){const d=n("v-select");return s(),i(d,{modelValue:t.value,"onUpdate:modelValue":u[0]||(u[0]=v=>t.value=v),"hide-details":"",density:"compact",variant:"outlined",items:t.items,style:a(m.computedStyle)},null,8,["modelValue","items","style"])}const y=o("default",r(e,[["render",c]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","./main-f0865abbd006d9b2cc5a.js","vue","vue-router","pinia","single-spa","vuetify"],(function(d,p){"use strict";var l,a,n,r,s,i,u;return{setters:[e=>{l=e.f},e=>{a=e.f,n=e.R},e=>{r=e.resolveComponent,s=e.openBlock,i=e.createBlock,u=e.normalizeStyle},null,null,null,null],execute:(function(){const e={mixins:[l,n],data(){return{label:"Date",dateValue:""}},created(){this.parameters[0]&&(this.label=this.parameters[0]),this.dateValue=this.formatDate(new Date,this.screenTimeZone)},methods:{text(){return this.dateValue},date(){return this.dateValue}}};function c(m,o,v,y,t,b){const h=r("v-text-field");return s(),i(h,{modelValue:t.dateValue,"onUpdate:modelValue":o[0]||(o[0]=f=>t.dateValue=f),label:t.label,style:u(m.computedStyle),type:"date","hide-details":""},null,8,["modelValue","label","style"])}const V=d("default",a(e,[["render",c]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./main-f0865abbd006d9b2cc5a.js","./LimitsBar-DNV39okL-ac8e562bdd6f80498856.js","./LimitsColor-CBcpB-la-3bd861951380f642016e.js","vue"],(function(O,G){"use strict";var L,S,x,B,E,h,u,d,e,t,w,s,n,f,N,p,k,V;return{setters:[c=>{L=c.f,S=c.O},c=>{x=c.x},c=>{B=c.a,E=c.r},c=>{h=c.resolveComponent,u=c.openBlock,d=c.createBlock,e=c.withCtx,t=c.createVNode,w=c.createElementVNode,s=c.createTextVNode,n=c.toDisplayString,f=c.createCommentVNode,N=c.normalizeClass,p=c.createElementBlock,k=c.Fragment,V=c.renderList}],execute:(function(){const c={components:{LimitsBar:x},props:{type:{default:"tlm",validator:function(r){return["cmd","tlm"].indexOf(r)!==-1}},targetName:{type:String,default:null},packetName:{type:String,default:null},itemName:{type:String,default:null},modelValue:Boolean},emits:["update:modelValue"],data(){return{details:Object,available:null,updater:null,rawValue:null,convertedValue:null,formattedValue:null,currentLimitsState:null}},computed:{show:{get(){return this.modelValue},set(r){this.$emit("update:modelValue",r)}},limitsColor(){return E(this.currentLimitsState)},astroStatus(){return B(this.limitsColor)},limitsColorClass(){return this.limitsColor?"openc3-"+this.limitsColor:""}},watch:{modelValue:function(r,a){r?(this.requestDetails(),this.type==="tlm"&&(this.updater=setInterval(()=>{this.available&&this.details&&this.api.get_tlm_values(this.available).then(_=>{for(let b of _){let i=null;if(b[0].json_class==="String"&&b[0].raw!==void 0?i=b[0].raw:this.details.data_type==="BLOCK"&&(i=b[0]),i!==null){i=i.slice(0,Number.parseInt(this.details.bit_size)/8);let m=!1;i.length>64&&(m=!0),b[0]=Array.from(i.slice(0,64),function(v){return v===" "?"20":("0"+(v&255).toString(16)).slice(-2)}).join(" ").toUpperCase(),m&&(b[0]+="...")}}this.details.data_type.includes("INT")&&!this.details.array_size?this.rawValue=`${_[0][0]} (0x${_[0][0].toString(16).toUpperCase()})`:this.rawValue=_[0][0],this.convertedValue=_[1][0],this.formattedValue=_[2][0],this.currentLimitsState=_[1][1]})},1e3))):(clearInterval(this.updater),this.updater=null)}},created(){this.api=new S},beforeUnmount(){clearInterval(this.updater),this.updater=null},methods:{hasLimits(r){let a=!1;return r.limits.DEFAULT&&(a=!0),r.states&&Object.getOwnPropertyNames(r.states).forEach(_=>{r.states[_].color&&(a=!0)}),a},async requestDetails(){if(this.type==="tlm"){const r=await this.api.get_tlm_available([`${this.targetName}__${this.packetName}__${this.itemName}__RAW`,`${this.targetName}__${this.packetName}__${this.itemName}__CONVERTED`,`${this.targetName}__${this.packetName}__${this.itemName}__FORMATTED`]);r&&r.length>0&&(this.available=r);const a=await this.api.get_item(this.targetName,this.packetName,this.itemName);this.details=a,this.hasLimits(a)||(this.details.limits=null)}else{const r=await this.api.get_parameter(this.targetName,this.packetName,this.itemName);this.details=r}},async changeLimitsEnabled(){this.details.limits.enabled?await this.api.enable_limits(this.targetName,this.packetName,this.itemName):await this.api.disable_limits(this.targetName,this.packetName,this.itemName)},formatLimit(r){return r.hasOwnProperty("green_low")?"RL/"+r.red_low+" YL/"+r.yellow_low+" YH/"+r.yellow_high+" RH/"+r.red_high+" GL/"+r.green_low+" GH/"+r.green_high:r.hasOwnProperty("red_low")?"RL/"+r.red_low+" YL/"+r.yellow_low+" YH/"+r.yellow_high+" RH/"+r.red_high:r}}},D={key:5},$={key:7},R={class:"limits-text"},j={key:9};function z(r,a,_,b,i,m){const v=h("v-spacer"),U=h("v-toolbar"),I=h("v-card-title"),T=h("v-card-subtitle"),l=h("v-col"),o=h("v-row"),C=h("rux-status"),F=h("v-switch"),A=h("LimitsBar"),H=h("v-container"),M=h("v-card-text"),P=h("v-card"),Y=h("v-dialog");return u(),d(Y,{modelValue:m.show,"onUpdate:modelValue":a[1]||(a[1]=g=>m.show=g),scrollable:"",width:"700"},{default:e(()=>[t(P,null,{default:e(()=>[t(U,{height:24},{default:e(()=>[t(v),a[2]||(a[2]=w("span",null," Details ",-1)),t(v)]),_:1}),t(I,null,{default:e(()=>[s(n(_.targetName)+" "+n(_.packetName)+" "+n(_.itemName),1)]),_:1}),t(T,null,{default:e(()=>[s(n(i.details.description),1)]),_:1}),t(M,{style:{"max-height":"70vh","overflow-y":"auto"}},{default:e(()=>[t(H,{fluid:""},{default:e(()=>[_.type==="tlm"?(u(),d(o,{key:0,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[3]||(a[3]=[s("Item Values",-1)])]),_:1}),t(l)]),_:1})):f("",!0),t(o,{"no-gutters":"",align:"center"},{default:e(()=>[t(l,{cols:"1"}),t(l,{cols:"4",class:"label"},{default:e(()=>[...a[4]||(a[4]=[s("Raw Value",-1)])]),_:1}),t(l,{class:N([m.limitsColorClass,"d-flex align-center"])},{default:e(()=>[m.astroStatus?(u(),d(C,{key:0,class:"mr-1",status:m.astroStatus},null,8,["status"])):f("",!0),s(" "+n(i.rawValue),1)]),_:1},8,["class"])]),_:1}),t(o,{"no-gutters":"",align:"center"},{default:e(()=>[t(l,{cols:"1"}),t(l,{cols:"4",class:"label"},{default:e(()=>[...a[5]||(a[5]=[s("Converted Value",-1)])]),_:1}),t(l,{class:N([m.limitsColorClass,"d-flex align-center"])},{default:e(()=>[m.astroStatus?(u(),d(C,{key:0,class:"mr-1",status:m.astroStatus},null,8,["status"])):f("",!0),s(" "+n(i.convertedValue),1)]),_:1},8,["class"])]),_:1}),t(o,{"no-gutters":"",align:"center"},{default:e(()=>[t(l,{cols:"1"}),t(l,{cols:"4",class:"label"},{default:e(()=>[...a[6]||(a[6]=[s("Formatted Value",-1)])]),_:1}),t(l,{class:N([m.limitsColorClass,"d-flex align-center"])},{default:e(()=>[m.astroStatus?(u(),d(C,{key:0,class:"mr-1",status:m.astroStatus},null,8,["status"])):f("",!0),s(" "+n(i.formattedValue),1)]),_:1},8,["class"])]),_:1}),t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[7]||(a[7]=[s("Bit Offset",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.bit_offset),1)]),_:1})]),_:1}),t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[8]||(a[8]=[s("Bit Size",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.bit_size),1)]),_:1})]),_:1}),i.details.array_size?(u(),d(o,{key:1,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[9]||(a[9]=[s("Array Size",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.array_size),1)]),_:1})]),_:1})):f("",!0),t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[10]||(a[10]=[s("Data Type",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.data_type),1)]),_:1})]),_:1}),_.type==="cmd"?(u(),d(o,{key:2,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[11]||(a[11]=[s("Minimum",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.minimum),1)]),_:1})]),_:1})):f("",!0),_.type==="cmd"?(u(),d(o,{key:3,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[12]||(a[12]=[s("Maximum",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.maximum),1)]),_:1})]),_:1})):f("",!0),_.type==="cmd"?(u(),d(o,{key:4,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[13]||(a[13]=[s("Default",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.default),1)]),_:1})]),_:1})):f("",!0),t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[14]||(a[14]=[s("Format String",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.format_string),1)]),_:1})]),_:1}),t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[15]||(a[15]=[s("Read Conversion",-1)])]),_:1}),i.details.read_conversion?(u(),d(l,{key:0},{default:e(()=>[s(" Class: "+n(i.details.read_conversion.class)+" ",1),a[16]||(a[16]=w("br",null,null,-1)),s(" Params: "+n(i.details.read_conversion.params),1)]),_:1})):(u(),d(l,{key:1}))]),_:1}),t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[17]||(a[17]=[s("Write Conversion",-1)])]),_:1}),i.details.write_conversion?(u(),d(l,{key:0},{default:e(()=>[s(" Class: "+n(i.details.write_conversion.class)+" ",1),a[18]||(a[18]=w("br",null,null,-1)),s(" Params: "+n(i.details.write_conversion.params),1)]),_:1})):(u(),d(l,{key:1}))]),_:1}),t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[19]||(a[19]=[s("Id Value",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.id_value),1)]),_:1})]),_:1}),t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[20]||(a[20]=[s("Units Full",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.units_full),1)]),_:1})]),_:1}),t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[21]||(a[21]=[s("Units Abbr",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.units),1)]),_:1})]),_:1}),t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[22]||(a[22]=[s("Endianness",-1)])]),_:1}),t(l,null,{default:e(()=>[s(n(i.details.endianness),1)]),_:1})]),_:1}),i.details.states?(u(),p("div",D,[t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[23]||(a[23]=[s("States",-1)])]),_:1}),t(l)]),_:1}),(u(!0),p(k,null,V(i.details.states,(g,y)=>(u(),d(o,{key:y,"no-gutters":""},{default:e(()=>[t(l,{cols:"1"}),t(l,{cols:"4",class:"label"},{default:e(()=>[s(n(y),1)]),_:2},1024),t(l,null,{default:e(()=>[s(n(g.value),1)]),_:2},1024)]),_:2},1024))),128))])):(u(),d(o,{key:6,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[24]||(a[24]=[s("States",-1)])]),_:1}),t(l,null,{default:e(()=>[...a[25]||(a[25]=[s("None",-1)])]),_:1})]),_:1})),i.details.limits?(u(),p("div",$,[t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[26]||(a[26]=[s("Limits",-1)])]),_:1}),t(l)]),_:1}),(u(!0),p(k,null,V(i.details.limits,(g,y)=>(u(),d(o,{key:y,"no-gutters":""},{default:e(()=>[t(l,{cols:"1"}),y==="enabled"?(u(),d(l,{key:0,cols:"4",class:"label"},{default:e(()=>[...a[27]||(a[27]=[s("Enabled",-1)])]),_:1})):f("",!0),y==="enabled"?(u(),d(F,{key:1,modelValue:i.details.limits.enabled,"onUpdate:modelValue":[a[0]||(a[0]=q=>i.details.limits.enabled=q),m.changeLimitsEnabled],density:"compact",color:"primary",class:"compact-switch","hide-details":""},null,8,["modelValue","onUpdate:modelValue"])):f("",!0),y!=="enabled"?(u(),d(l,{key:2,cols:"4",class:"label"},{default:e(()=>[s(n(y),1)]),_:2},1024)):f("",!0),y!=="enabled"?(u(),d(l,{key:3},{default:e(()=>[w("div",R,n(m.formatLimit(g)),1),g.red_low!==void 0?(u(),d(A,{key:0,"red-low":g.red_low,"yellow-low":g.yellow_low,"yellow-high":g.yellow_high,"red-high":g.red_high,"green-low":g.green_low,"green-high":g.green_high,value:i.convertedValue,width:300,height:22},null,8,["red-low","yellow-low","yellow-high","red-high","green-low","green-high","value"])):f("",!0)]),_:2},1024)):f("",!0)]),_:2},1024))),128))])):(u(),d(o,{key:8,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[28]||(a[28]=[s("Limits",-1)])]),_:1}),t(l,null,{default:e(()=>[...a[29]||(a[29]=[s("None",-1)])]),_:1})]),_:1})),i.details.meta?(u(),p("div",j,[t(o,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[30]||(a[30]=[s("Meta",-1)])]),_:1}),t(l)]),_:1}),(u(!0),p(k,null,V(i.details.meta,(g,y)=>(u(),d(o,{key:y,"no-gutters":""},{default:e(()=>[t(l,{cols:"1"}),t(l,{cols:"4",class:"label"},{default:e(()=>[s(n(y),1)]),_:2},1024),t(l,null,{default:e(()=>[s(n(g.join(", ")),1)]),_:2},1024)]),_:2},1024))),128))])):(u(),d(o,{key:10,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[31]||(a[31]=[s("Meta",-1)])]),_:1}),t(l,null,{default:e(()=>[...a[32]||(a[32]=[s("None",-1)])]),_:1})]),_:1}))]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])}const W=O("Z",L(c,[["render",z],["__scopeId","data-v-61eee59d"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(u,p){"use strict";var n,r,i,o,s,a;return{setters:[e=>{n=e.openBlock,r=e.createBlock,i=e.resolveDynamicComponent,o=e.normalizeProps,s=e.guardReactiveProps},e=>{a=e.f},null,null,null,null],execute:(function(){const e={props:{name:{type:String,default:null}},data(){return{widgetType:null}},computed:{url:function(){return`${window.location.origin}/tools/widgets/${this.name}/${this.name}.umd.min.js`}},async mounted(){try{this.widgetType=await System.import(this.url)}catch(t){throw this.screenError(this.name,`Unknown widget: ${this.name}: ${t}`)}}};function l(t,d,g,y,c,w){return n(),r(i(c.widgetType),o(s({...t.$props,...t.$attrs})),null,16)}const m=u("default",a(e,[["render",l]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","vue","./main-f0865abbd006d9b2cc5a.js","vue-router","pinia","single-spa","vuetify"],(function(E,U){"use strict";var f,c,n,g,k,a,r,h,l,u,d,y,p,x,C,v;return{setters:[t=>{f=t.f},t=>{c=t.resolveComponent,n=t.openBlock,g=t.createBlock,k=t.normalizeStyle,a=t.withCtx,r=t.createVNode,h=t.createElementVNode,l=t.toDisplayString,u=t.createElementBlock,d=t.Fragment,y=t.renderList,p=t.createTextVNode,x=t.normalizeClass,C=t.createCommentVNode},t=>{v=t.f},null,null,null,null],execute:(function(){const t={mixins:[f],data(){return{files:[],loading:!1}},computed:{match(){if(this.files.some(s=>s.error))return!1;if(this.files.some(s=>!s.checksum))return null;const e=this.files[0].checksum;return this.files.every(s=>s.checksum===e)},matchStatus(){return{null:{icon:"$info",color:"grey",text:"Comparing..."},true:{icon:"$success",color:"success",text:"Checksums Match"},false:{icon:"$error",color:"error",text:this.files.some(e=>e.error)?"Error loading file(s)":"Checksums Do Not Match"}}[this.match]}},created(){this.files=this.parameters.filter(e=>e).map(e=>({path:e,checksum:null,error:null,copied:!1}))},mounted(){this.files.length&&this.fetchChecksums()},methods:{getDisplayText(e){return e.error?`Error: ${e.error}`:e.checksum?e.checksum:this.loading?"Loading...":"Not loaded"},async computeChecksum(e){const s=new TextEncoder().encode(e),w=await crypto.subtle.digest("SHA-256",s);return Array.from(new Uint8Array(w)).map(b=>b.toString(16).padStart(2,"0")).join("")},async copyChecksum(e){if(e.checksum)try{await navigator.clipboard.writeText(e.checksum),e.copied=!0,setTimeout(()=>e.copied=!1,2e3)}catch(s){console.error("Failed to copy checksum:",s)}},async fetchChecksums(){this.loading=!0,this.clearTargetFileCache(),this.files.forEach(e=>{e.checksum=null,e.error=null}),(await Promise.all(this.files.map(e=>this.fetchTargetFile(e.path).then(s=>this.computeChecksum(s)).catch(s=>({error:s.message||"File not found"}))))).forEach((e,s)=>{e?.error?this.files[s].error=e.error:this.files[s].checksum=e}),this.loading=!1}}},T={class:"text-caption text-medium-emphasis font-weight-regular"},V={class:"text-caption text-medium-emphasis mb-2"},_={class:"ml-1 text-high-emphasis"},z={class:"flex-grow-1 overflow-wrap-anywhere"};function B(e,s,w,b,m,o){const D=c("v-spacer"),S=c("v-btn"),$=c("v-card-title"),F=c("v-divider"),j=c("v-sheet"),L=c("v-chip"),A=c("v-card-text"),M=c("v-card");return n(),g(M,{style:k(e.computedStyle),"min-width":"400"},{default:a(()=>[r($,{class:"d-flex align-center pa-2"},{default:a(()=>[h("span",T,l(m.files.length===1?"File Checksum":"File Checksum Comparison"),1),r(D),r(S,{size:"x-small",icon:"mdi-refresh",variant:"text",loading:m.loading,onClick:o.fetchChecksums},null,8,["loading","onClick"])]),_:1}),r(F),r(A,{class:"pa-3"},{default:a(()=>[(n(!0),u(d,null,y(m.files,(i,N)=>(n(),u(d,{key:N},[h("div",V,[p(l(m.files.length===1?"File:":`File ${N+1}:`)+" ",1),h("span",_,l(i.path),1)]),r(j,{class:x([i.error?"text-error":"","d-flex align-center ga-2 px-2 py-1 mb-3 rounded text-caption"]),style:{"background-color":"rgba(128, 128, 128, 0.2)"}},{default:a(()=>[h("span",z,l(o.getDisplayText(i)),1),r(S,{icon:i.copied?"$success":"mdi-content-copy",color:i.copied?"success":void 0,disabled:!i.checksum,size:"x-small",variant:"plain",density:"compact",onClick:H=>o.copyChecksum(i)},null,8,["icon","color","disabled","onClick"])]),_:2},1032,["class"])],64))),128)),m.files.length>1?(n(),u(d,{key:0},[r(F,{class:"mb-3"}),r(L,{color:o.matchStatus.color,size:"small",variant:"tonal",label:"","prepend-icon":o.matchStatus.icon},{default:a(()=>[p(l(o.matchStatus.text),1)]),_:1},8,["color","prepend-icon"])],64)):C("",!0)]),_:1})]),_:1},8,["style"])}const W=E("default",v(t,[["render",B],["__scopeId","data-v-983f5609"]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./main-f0865abbd006d9b2cc5a.js","./Widget-ClRi417b-c819f8641946506d7602.js","vue","vue-router","pinia","single-spa","vuetify"],(function(m,E){"use strict";var o,h,l,e,d,c,a,s,i,n,f;return{setters:[t=>{o=t.f,h=t.m},t=>{l=t.f},t=>{e=t.resolveComponent,d=t.openBlock,c=t.createBlock,a=t.normalizeStyle,s=t.withCtx,i=t.createVNode,n=t.createElementVNode,f=t.toDisplayString},null,null,null,null],execute:(function(){const t={mixins:[l],data(){return{filePath:"",fileContent:"Loading...",loading:!1,width:600,height:300,editor:null}},computed:{contentStyle(){return{width:this.width+"px",height:this.height+"px"}},aceMode(){const r=this.filePath.split(".").pop()?.toLowerCase();return{json:"ace/mode/json",rb:"ace/mode/ruby",py:"ace/mode/python",txt:"ace/mode/text"}[r]||"ace/mode/text"}},created(){this.parameters[0]&&(this.filePath=this.parameters[0]),this.parameters[1]&&(this.width=Number.parseInt(this.parameters[1])),this.parameters[2]&&(this.height=Number.parseInt(this.parameters[2]))},mounted(){this.editor=h.edit(this.$refs.editor),this.editor.setTheme("ace/theme/twilight"),this.editor.setReadOnly(!0),this.editor.setShowPrintMargin(!1),this.editor.setHighlightActiveLine(!1),this.editor.renderer.setShowGutter(!1),this.editor.renderer.setScrollMargin(8,8,0,0),this.editor.renderer.setPadding(8),this.editor.setValue(this.fileContent,-1),this.filePath&&this.fetchFile()},beforeUnmount(){this.editor&&(this.editor.destroy(),this.editor.container.remove())},methods:{updateEditor(){this.editor&&(this.editor.session.setMode(this.aceMode),this.editor.setValue(this.fileContent,-1))},async fetchFile(){if(!this.filePath){this.fileContent='Error: No file path specified. Usage: FILEDISPLAY "TARGET/path/to/file.txt"',this.updateEditor();return}this.loading=!0;try{this.clearTargetFileCache(),this.fileContent=await this.fetchTargetFile(this.filePath)}catch(r){this.fileContent=`Error: ${r.message||r}`}finally{this.loading=!1,this.updateEditor()}}}},g={class:"text-caption text-medium-emphasis font-weight-regular"};function y(r,b,k,F,p,u){const v=e("v-spacer"),x=e("v-btn"),C=e("v-card-title"),w=e("v-divider"),S=e("v-card-text"),P=e("v-card");return d(),c(P,{style:a(r.computedStyle)},{default:s(()=>[i(C,{class:"d-flex align-center pa-2"},{default:s(()=>[n("span",g,f(p.filePath),1),i(v),i(x,{size:"x-small",icon:"mdi-refresh",variant:"text",loading:p.loading,onClick:u.fetchFile},null,8,["loading","onClick"])]),_:1}),i(w),i(S,{class:"pa-0"},{default:s(()=>[n("div",{ref:"editor",style:a(u.contentStyle)},null,4)]),_:1})]),_:1},8,["style"])}const N=m("default",o(t,[["render",y]]))})}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["./Widget-
|
|
1
|
+
System.register(["./Widget-ClRi417b-c819f8641946506d7602.js","./ValueWidget-B3-Jjoux-9a088d512207d0da3dbd.js","vue","./main-f0865abbd006d9b2cc5a.js","./DetailsDialog-CLPj0nP0-9dcc472124933da9a31b.js","./LimitsBar-DNV39okL-ac8e562bdd6f80498856.js","./LimitsColor-CBcpB-la-3bd861951380f642016e.js","single-spa","./VWidget-C4VLQ7-b-07b1f80f82f119fc5285.js","vue-router","pinia","vuetify"],(function(u,h){"use strict";var s,r,n,a,i,l,o,c,m;return{setters:[e=>{s=e.f},e=>{r=e.default},e=>{n=e.resolveComponent,a=e.openBlock,i=e.createElementBlock,l=e.normalizeStyle,o=e.createVNode,c=e.mergeProps},e=>{m=e.f},null,null,null,null,null,null,null,null],execute:(function(){const p={components:{ValueWidget:r},mixins:[s],computed:{getParameters(){return[this.parameters[0],this.parameters[1],this.parameters[2],this.parameters[4]]}},created(){this.setWidth(Number.parseInt(this.parameters[5])+4,"ch",16);const t=this.parameters[3];t&&/%-?#?\d*[xXo]/.test(t)&&this.appliedSettings.push(["RAW","font-family","monospace"])}};function g(t,j,B,V,y,f){const d=n("value-widget");return a(),i("div",{ref:"container",class:"d-flex flex-row",style:l(t.computedStyle)},[o(d,c(t.$attrs,{parameters:f.getParameters,settings:t.appliedSettings,"screen-values":t.screenValues,"screen-time-zone":t.screenTimeZone,"format-string":t.parameters[3]}),null,16,["parameters","settings","screen-values","screen-time-zone","format-string"])],4)}const v=u("default",m(p,[["render",g]]))})}}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
System.register(["./main-f0865abbd006d9b2cc5a.js","./OpenC3TimePicker-cOr0aOVn-087aabac5576efaa78e2.js","vue","./GraphWidget-BZjBkefj-3075e0b9efe04ad89afa.js"],(function(ce,Xe){"use strict";var E,U,J,Y,ee,te,V,ie,se,F,H,ae,o,f,C,a,n,x,q,k,v,S,T,B,M,le,O,ne,W,re,oe,z,de,K;return{setters:[m=>{E=m.f,U=m.O,J=m.q,Y=m.R,ee=m.y,te=m.N,V=m.o,ie=m.p,se=m.e,F=m.V,H=m.t},m=>{ae=m.w},m=>{o=m.resolveComponent,f=m.openBlock,C=m.createElementBlock,a=m.createVNode,n=m.withCtx,x=m.createBlock,q=m.resolveDynamicComponent,k=m.createCommentVNode,v=m.createTextVNode,S=m.toDisplayString,T=m.createElementVNode,B=m.withModifiers,M=m.withDirectives,le=m.normalizeClass,O=m.vShow,ne=m.mergeProps,W=m.Fragment,re=m.normalizeProps,oe=m.guardReactiveProps,z=m.withKeys,de=m.renderList},m=>{K=m.e}],execute:(function(){const m={props:{allowAll:{type:Boolean,default:!1},allowAllTargets:{type:Boolean,default:!1},allowAllArrayIndex:{type:Boolean,default:!1},buttonText:{type:String,default:null},chooseItem:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},initialTargetName:{type:String,default:""},initialPacketName:{type:String,default:""},initialItemName:{type:String,default:""},selectTypes:{type:Boolean,default:!1},showLatest:{type:Boolean,default:!1},mode:{type:String,default:"tlm",validator:t=>["cmd","tlm"].includes(t)},unknown:{type:Boolean,default:!1},vertical:{type:Boolean,default:!1},hidden:{type:Boolean,default:!1},lockTarget:{type:Boolean,default:!1},lockPacket:{type:Boolean,default:!1},showQueueSelect:{type:Boolean,default:!0},parameterHazardous:{type:Boolean,default:!1},allowGlob:{type:Boolean,default:!1}},emits:["on-set","addItem"],data(){return{targetNames:[],selectedTargetName:this.initialTargetName?.toUpperCase(),packetNames:[],selectedPacketName:this.initialPacketName?.toUpperCase(),queueNames:[{label:"None",value:null}],selectedQueueName:null,itemNames:[],selectedItemName:this.initialItemName?.toUpperCase(),valueTypes:["CONVERTED","RAW"],selectedValueType:"CONVERTED",reductionModes:[{title:"NONE",value:"DECOM"},{title:"REDUCED_MINUTE",value:"REDUCED_MINUTE"},{title:"REDUCED_HOUR",value:"REDUCED_HOUR"},{title:"REDUCED_DAY",value:"REDUCED_DAY"}],selectedArrayIndex:null,selectedReduced:"DECOM",reducedTypes:["MIN","MAX","AVG","STDDEV"],selectedReducedType:"AVG",description:"",hazardous:!1,hazardousDescription:"",internalDisabled:!1,packetsDisabled:!1,itemsDisabled:!1,api:null,ALL:{label:"[ ALL ]",value:"ALL",description:"ALL"},UNKNOWN:{label:"[ UNKNOWN ]",value:"UNKNOWN",description:"UNKNOWN"},LATEST:{label:"[ LATEST ]",value:"LATEST",description:"Latest values from all packets"}}},computed:{actualButtonText:function(){return this.selectedPacketName==="ALL"?"Add Target":this.selectedItemName==="ALL"?"Add Packet":this.buttonText},autocompleteDisabled:function(){return this.disabled||this.internalDisabled},buttonDisabled:function(){return this.disabled||this.internalDisabled||this.selectedTargetName===null||this.selectedPacketName===null||this.selectedItemNameWIndex===null},colSize:function(){return this.vertical?12:!1},selectedItemNameWIndex:function(){return this.itemIsArray&&this.selectedArrayIndex!==null&&this.selectedArrayIndex!==this.ALL.label?`${this.selectedItemName}[${this.selectedArrayIndex}]`:this.selectedItemName},includeLatestPacketInDropdown:function(){return this.showLatest&&this.mode==="tlm"},arrayIndexes:function(){let t=this.itemNames.findIndex(i=>i.value===this.selectedItemName),e=[...new Array(this.itemNames[t].array).keys()];return(this.allowAll||this.allowAllArrayIndex)&&e.unshift(this.ALL.label),e},itemIsArray:function(){let t=this.itemNames.findIndex(e=>e.value===this.selectedItemName);return t!==-1&&this.itemNames[t].array!==void 0&&!Number.isNaN(this.itemNames[t].array)},isHazardous:function(){return this.hazardous||this.parameterHazardous},globEnabled:function(){return this.allowGlob&&this.mode==="tlm"}},watch:{initialTargetName:function(t){t&&(this.selectedTargetName=t.toUpperCase())},initialPacketName:function(t){t&&(this.selectedPacketName=t.toUpperCase())},initialItemName:function(t){t&&(this.selectedItemName=t.toUpperCase())},globEnabled:function(t){if(!t){const e=/[*?]|\[(?!\d+\])/;typeof this.selectedPacketName=="string"&&e.test(this.selectedPacketName)&&(this.selectedPacketName=null,this.selectedItemName=null),typeof this.selectedItemName=="string"&&e.test(this.selectedItemName)&&(this.selectedItemName=null)}},mode:function(t,e){this.selectedPacketName=null,this.selectedItemName=null,this.targetNameChanged(this.selectedTargetName)},chooseItem:function(t,e){t?this.updateItems():this.itemNames=[]},itemIsArray:function(t){t?this.selectedArrayIndex||=0:this.selectedArrayIndex=null}},created(){this.internalDisabled=!0,this.api=new U,this.mode==="cmd"&&J.get("/openc3-api/queues").then(t=>{this.queueNames=[{label:"None",value:null}],t.data&&Array.isArray(t.data)&&t.data.forEach(e=>{this.queueNames.push({label:e.name,value:e.name})})}).catch(t=>{console.error("Error fetching queues:",t)}),this.api.get_target_names().then(t=>{this.targetNames=t.flatMap(e=>e=="UNKNOWN"?[]:{label:e,value:e}),this.allowAllTargets&&this.targetNames.unshift(this.ALL),this.selectedTargetName?this.updatePackets():this.targetNames.length===0?this.internalDisabled=!1:(this.selectedTargetName=this.targetNames[0].value,this.targetNameChanged(this.selectedTargetName)),this.unknown&&this.targetNames.push(this.UNKNOWN)}).catch(()=>{this.internalDisabled=!1})},methods:{emitOnSet:function(){this.$emit("on-set",{targetName:this.selectedTargetName,packetName:this.selectedPacketName,itemName:this.selectedItemNameWIndex,valueType:this.selectedValueType,reduced:this.selectedReduced,reducedType:this.selectedReducedType,queueName:this.selectedQueueName})},selectOnFocus:function(t){this.$nextTick(()=>{const e=this.$refs[t];if(e){const i=e.$el.querySelector("input");i&&i.select()}})},updatePackets:function(){if(this.selectedTargetName==="UNKNOWN"){this.packetNames=[this.UNKNOWN],this.selectedPacketName=this.packetNames[0].value,this.updatePacketDetails(this.UNKNOWN.value),this.description="UNKNOWN";return}if(this.selectedTargetName==="ALL"){this.packetNames=[this.ALL],this.selectedPacketName=this.packetNames[0].value,this.updatePacketDetails(this.ALL.value),this.description="ALL";return}this.internalDisabled=!0;const t=this.mode==="tlm"?"get_all_tlm_names":"get_all_cmd_names";this.api[t](this.selectedTargetName,this.hidden).then(e=>{if(this.packetNames=e.map(i=>({label:i,value:i})),this.includeLatestPacketInDropdown&&this.packetNames.unshift(this.LATEST),this.allowAll&&this.packetNames.unshift(this.ALL),this.packetNames.length===0){this.selectedPacketName=null,this.itemNames=[],this.selectedItemName=null,this.description="",this.hazardous=!1,this.hazardousDescription="",this.internalDisabled=!1,this.emitOnSet();return}this.selectedPacketName||(this.selectedPacketName=this.packetNames[0].value,this.selectedPacketName==="LATEST"&&this.packetNames.length>1&&(this.selectedPacketName=this.packetNames[1].value)),this.updatePacketDetails(this.selectedPacketName),this.internalDisabled=!1}).catch(()=>{this.packetNames=[],this.selectedPacketName=null,this.itemNames=[],this.selectedItemName=null,this.description="",this.hazardous=!1,this.hazardousDescription="",this.internalDisabled=!1,this.emitOnSet()})},updateItems:function(){if(this.selectedPacketName!=="ALL"){if(!this.selectedPacketName){this.itemNames=[],this.selectedItemName=null,this.internalDisabled=!1;return}if(this.globEnabled&&typeof this.selectedPacketName=="string"&&!this.packetNames.find(t=>this.selectedPacketName===t.value)&&this.selectedPacketName!=="LATEST"){this.internalDisabled=!1;return}if(this.internalDisabled=!0,this.selectedPacketName==="LATEST")this.api.get_all_tlm_item_names(this.selectedTargetName).then(t=>{this.itemNames=t.map(e=>({label:e,value:e,description:`LATEST ${e}`})),this.finishUpdateItems()}).catch(()=>{this.itemNames=[],this.selectedItemName=null,this.internalDisabled=!1,this.emitOnSet()});else{const t=this.mode==="tlm"?"get_tlm":"get_cmd";this.api[t](this.selectedTargetName,this.selectedPacketName).then(e=>{let i=[];e.items.forEach(r=>{r.hidden||i.push(r)}),this.itemNames=i.map(r=>{let s=r.name;return r.data_type=="DERIVED"&&(s+=" *"),{label:s,value:r.name,description:r.description,array:r.array_size/r.bit_size}}),this.itemNames.sort((r,s)=>r.label>s.label?1:-1),this.finishUpdateItems()}).catch(()=>{this.itemNames=[],this.selectedItemName=null,this.internalDisabled=!1,this.emitOnSet()})}}},finishUpdateItems:function(){if(this.allowAll&&this.itemNames.unshift(this.ALL),this.itemNames.length===0){this.selectedItemName=null,this.description="",this.internalDisabled=!1,this.emitOnSet();return}this.selectedItemName||(this.selectedItemName=this.itemNames[0].value),this.description=this.itemNames[0].description,this.emitOnSet(),this.internalDisabled=!1},targetNameChanged:function(t){this.selectedTargetName=t,this.selectedPacketName="",this.selectedItemName="",t!==null&&this.updatePackets()},packetNameChanged:function(t){this.selectedItemName="",t!==null&&typeof t=="object"&&t.value&&(t=t.value,this.selectedPacketName=t),t!==null&&(this.globEnabled&&typeof t=="string"?this.packetNames.find(e=>t===e.value)?this.updatePacketDetails(t):(this.itemsDisabled=!1,this.internalDisabled=!1):this.updatePacketDetails(t))},queueNameChanged:function(t){this.selectedQueueName=t,this.emitOnSet()},updatePacketDetails:function(t){if(t==="ALL")this.itemsDisabled=!0,this.internalDisabled=!1;else if(t==="LATEST")this.itemsDisabled=!1,this.selectedPacketName="LATEST",this.description="Latest values from all packets",this.hazardous=!1,this.hazardousDescription="";else{this.itemsDisabled=!1;const e=this.packetNames.find(i=>t===i.value);if(e){this.selectedPacketName=e.value;const i=this.mode==="tlm"?"get_tlm":"get_cmd";this.api[i](this.selectedTargetName,this.selectedPacketName).then(r=>{this.description=r.description,this.hazardous=r.hazardous,this.hazardousDescription=r.hazardous_description||""}).catch(()=>{this.description="",this.hazardous=!1,this.hazardousDescription="",this.internalDisabled=!1})}}this.chooseItem?this.updateItems():this.emitOnSet()},itemNameChanged:function(t){t!==null&&typeof t=="object"&&t.value&&(t=t.value,this.selectedItemName=t);const e=this.itemNames.find(i=>t===i.value);e?(this.selectedItemName=e.value,this.description=e.description,this.emitOnSet()):this.globEnabled&&typeof t=="string"&&/[*?]|\[(?!\d+\])/.test(t)&&(this.selectedItemName=t.toUpperCase())},indexChanged:function(t){this.emitOnSet()},buttonPressed:function(){this.selectedPacketName==="ALL"?this.allTargetPacketItems():this.selectedItemName==="ALL"?this.allPacketItems():this.chooseItem?this.$emit("addItem",{targetName:this.selectedTargetName,packetName:this.selectedPacketName,itemName:this.selectedItemNameWIndex,valueType:this.selectedValueType,reduced:this.selectedReduced,reducedType:this.selectedReducedType}):this.$emit("addItem",{targetName:this.selectedTargetName,packetName:this.selectedPacketName,valueType:this.selectedValueType,reduced:this.selectedReduced,reducedType:this.selectedReducedType})},allTargetPacketItems:function(){this.packetNames.forEach(t=>{if(t===this.ALL||t===this.LATEST)return;const e=this.mode==="tlm"?"get_tlm":"get_cmd";this.api[e](this.selectedTargetName,t.value).then(i=>{i.items.forEach(r=>{r.hidden||this.$emit("addItem",{targetName:this.selectedTargetName,packetName:t.value,itemName:r.name,valueType:this.selectedValueType,reduced:this.selectedReduced,reducedType:this.selectedReducedType})})})})},allPacketItems:function(){this.itemNames.forEach(t=>{t!==this.ALL&&this.$emit("addItem",{targetName:this.selectedTargetName,packetName:this.selectedPacketName,itemName:t.value,valueType:this.selectedValueType,reduced:this.selectedReduced,reducedType:this.selectedReducedType})})}}},me={class:"pt-4 pb-4"},ue={key:0,class:"openc3-yellow font-weight-bold mt-2","data-test":"hazardous-description"};function pe(t,e,i,r,s,l){const d=o("v-autocomplete"),c=o("v-col"),N=o("v-combobox"),g=o("v-btn"),b=o("v-row"),D=o("v-icon");return f(),C("div",me,[a(b,{class:"align-center","no-gutters":!i.vertical},{default:n(()=>[a(c,{cols:l.colSize,class:"tpic-select pr-4","data-test":"select-target"},{default:n(()=>[a(d,{ref:"targetAutocomplete",modelValue:s.selectedTargetName,"onUpdate:modelValue":[e[0]||(e[0]=h=>s.selectedTargetName=h),l.targetNameChanged],label:"Select Target","hide-details":"","auto-select-first":"",density:"compact",variant:"outlined",disabled:l.autocompleteDisabled||i.lockTarget,items:s.targetNames,"item-title":"label","item-value":"value",onFocus:e[1]||(e[1]=h=>l.selectOnFocus("targetAutocomplete"))},null,8,["modelValue","disabled","items","onUpdate:modelValue"])]),_:1},8,["cols"]),a(c,{cols:l.colSize,class:"tpic-select pr-4","data-test":"select-packet"},{default:n(()=>[(f(),x(q(l.globEnabled?"v-combobox":"v-autocomplete"),{ref:"packetAutocomplete",modelValue:s.selectedPacketName,"onUpdate:modelValue":[e[2]||(e[2]=h=>s.selectedPacketName=h),l.packetNameChanged],label:"Select Packet","hide-details":"","auto-select-first":"",density:"compact",variant:"outlined",disabled:s.packetsDisabled||l.autocompleteDisabled||i.lockPacket,items:s.packetNames,"item-title":"label","item-value":"value",onFocus:e[3]||(e[3]=h=>l.selectOnFocus("packetAutocomplete"))},null,40,["modelValue","disabled","items","onUpdate:modelValue"]))]),_:1},8,["cols"]),i.mode==="cmd"&&i.showQueueSelect?(f(),x(c,{key:0,cols:l.colSize,class:"tpic-select pr-4","data-test":"select-queue"},{default:n(()=>[a(d,{ref:"queueAutocomplete",modelValue:s.selectedQueueName,"onUpdate:modelValue":[e[4]||(e[4]=h=>s.selectedQueueName=h),l.queueNameChanged],label:"Select Queue","hide-details":"","auto-select-first":"",density:"compact",variant:"outlined",disabled:l.autocompleteDisabled||s.queueNames.length===1,items:s.queueNames,"item-title":"label","item-value":"value",onFocus:e[5]||(e[5]=h=>l.selectOnFocus("queueAutocomplete"))},null,8,["modelValue","disabled","items","onUpdate:modelValue"])]),_:1},8,["cols"])):k("",!0),i.chooseItem?(f(),x(c,{key:1,cols:l.colSize,class:"tpic-select pr-4","data-test":"select-item"},{default:n(()=>[(f(),x(q(l.globEnabled?"v-combobox":"v-autocomplete"),{ref:"itemAutocomplete",modelValue:s.selectedItemName,"onUpdate:modelValue":[e[6]||(e[6]=h=>s.selectedItemName=h),e[7]||(e[7]=h=>l.itemNameChanged(h))],label:"Select Item","hide-details":"","auto-select-first":"",density:"compact",variant:"outlined",disabled:s.itemsDisabled||l.autocompleteDisabled,items:s.itemNames,"item-title":"label","item-value":"value",onFocus:e[8]||(e[8]=h=>l.selectOnFocus("itemAutocomplete"))},null,40,["modelValue","disabled","items"]))]),_:1},8,["cols"])):k("",!0),i.chooseItem&&l.itemIsArray?(f(),x(c,{key:2,cols:"1",class:"tpic-select pr-4","data-test":"array-index",style:{"min-width":"105px"}},{default:n(()=>[a(N,{ref:"indexCombobox",modelValue:s.selectedArrayIndex,"onUpdate:modelValue":[e[9]||(e[9]=h=>s.selectedArrayIndex=h),e[10]||(e[10]=h=>l.indexChanged(h))],label:"Index","hide-details":"","auto-select-first":"",density:"compact",variant:"outlined",disabled:s.itemsDisabled||l.autocompleteDisabled,items:l.arrayIndexes,"item-title":"label","item-value":"value",onFocus:e[11]||(e[11]=h=>l.selectOnFocus("indexCombobox"))},null,8,["modelValue","disabled","items"])]),_:1})):k("",!0),i.buttonText?(f(),x(c,{key:3,cols:l.colSize,style:{"max-width":"140px"}},{default:n(()=>[a(g,{disabled:l.buttonDisabled,color:"primary","data-test":"select-send",onClick:l.buttonPressed},{default:n(()=>[v(S(l.actualButtonText),1)]),_:1},8,["disabled","onClick"])]),_:1},8,["cols"])):k("",!0)]),_:1},8,["no-gutters"]),i.selectTypes?(f(),x(b,{key:0,class:"pt-6 align-center","no-gutters":""},{default:n(()=>[a(c,{cols:l.colSize,class:"tpic-select pr-4","data-test":"data-type"},{default:n(()=>[a(d,{ref:"valueTypeAutocomplete",modelValue:s.selectedValueType,"onUpdate:modelValue":e[12]||(e[12]=h=>s.selectedValueType=h),label:"Value Type","hide-details":"","auto-select-first":"",density:"compact",variant:"outlined",items:s.valueTypes,onFocus:e[13]||(e[13]=h=>l.selectOnFocus("valueTypeAutocomplete"))},null,8,["modelValue","items"])]),_:1},8,["cols"]),a(c,{cols:l.colSize,class:"tpic-select pr-4","data-test":"reduced"},{default:n(()=>[a(d,{ref:"reducedAutocomplete",modelValue:s.selectedReduced,"onUpdate:modelValue":e[14]||(e[14]=h=>s.selectedReduced=h),label:"Reduced","hide-details":"","auto-select-first":"",density:"compact",variant:"outlined",items:s.reductionModes,onFocus:e[15]||(e[15]=h=>l.selectOnFocus("reducedAutocomplete"))},null,8,["modelValue","items"])]),_:1},8,["cols"]),a(c,{cols:l.colSize,class:"tpic-select pr-4","data-test":"reduced-type"},{default:n(()=>[a(d,{ref:"reducedTypeAutocomplete",modelValue:s.selectedReducedType,"onUpdate:modelValue":e[16]||(e[16]=h=>s.selectedReducedType=h),label:"Reduced Type","hide-details":"","auto-select-first":"",density:"compact",variant:"outlined",disabled:s.selectedReduced==="DECOM",items:s.reducedTypes,onFocus:e[17]||(e[17]=h=>l.selectOnFocus("reducedTypeAutocomplete"))},null,8,["modelValue","disabled","items"])]),_:1},8,["cols"]),a(c,{cols:l.colSize,style:{"max-width":"140px"}},null,8,["cols"])]),_:1})):k("",!0),a(b,{"no-gutters":"",class:"pt-3 px-3 align-center"},{default:n(()=>[a(c,{cols:l.colSize},{default:n(()=>[T("div",null,"Description: "+S(s.description),1),s.hazardousDescription?(f(),C("div",ue,[a(D,{class:"mr-1"},{default:n(()=>[...e[18]||(e[18]=[v("mdi-alert",-1)])]),_:1}),v(" Hazardous: "+S(s.hazardousDescription),1)])):k("",!0)]),_:1},8,["cols"])]),_:1})])}const fe={components:{OpenC3TimePicker:ae,TargetPacketItemChooser:E(m,[["render",pe],["__scopeId","data-v-6e2cca60"]])},mixins:[Y],props:{modelValue:Boolean,title:{type:String,required:!0},legendPosition:{type:String,required:!0},items:{type:Array,required:!0},graphMinY:{type:Number,required:!0},graphMaxY:{type:Number,required:!0},lines:{type:Array,required:!0},colors:{type:Array,required:!0},startDateTime:{type:Number,default:null},endDateTime:{type:Number,default:null},timeZone:{type:String,required:!0},xAxisItemPacket:{type:Object,default:void 0},xAxisItem:{type:String,default:"__time"}},emits:["cancel","ok","remove","update:modelValue","update:xAxisItem"],data:function(){return{tab:0,graph:{},customXAxisEnabled:!1,selectedXAxisItem:null,pendingXAxisSelection:null,legendPositions:["top","bottom","left","right"],startDate:null,startTime:null,endDate:null,endTime:null,lineHeaders:[{title:"Y Value",value:"yValue"},{title:"Color",value:"color"},{title:"Actions",value:"actions",sortable:!1}],itemHeaders:[{title:"Target Name",value:"targetName"},{title:"Packet Name",value:"packetName"},{title:"Item Name",value:"itemName"},{title:"Actions",value:"actions",sortable:!1}]}},computed:{rules(){return{date:t=>{if(!t)return!0;try{return H(K(t,"yyyy-MM-dd",new Date))||"Invalid date (YYYY-MM-DD)"}catch{return"Invalid date (YYYY-MM-DD)"}},time:t=>{if(!t)return!0;try{return H(K(t,"HH:mm:ss",new Date))||"Invalid time (HH:MM:SS)"}catch{return"Invalid time (HH:MM:SS)"}}}},startDateError(){return this.startTime&&!this.startDate?["Start Date required"]:[]},startTimeError(){return this.startDate&&!this.startTime?["Start Time required"]:[]},endDateError(){return this.endTime&&!this.endDate?["End Date required"]:[]},endTimeError(){return this.endDate&&!this.endTime?["End Time required"]:[]},isInvalid(){return!!this.startDate!=!!this.startTime||!!this.endDate!=!!this.endTime},show:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},editItems:function(){if(!this.items)return[];let t=0;return this.items.map(e=>(t+=1,{...e,itemId:t}))},initialXAxisItem:function(){if(this.xAxisItem!=="__time")return this.xAxisItem.split("__").at(4)}},created(){if(this.graph={title:this.title,legendPosition:this.legendPosition,items:this.items,graphMinY:this.graphMinY,graphMaxY:this.graphMaxY,lines:[...this.lines]},this.customXAxisEnabled=this.xAxisItem&&this.xAxisItem!=="__time",this.selectedXAxisItem=this.xAxisItem,this.startDateTime){let t=F(this.startDateTime/1e6);this.startDate=this.formatDate(t,this.timeZone),this.startTime=this.formatTimeHMS(t,this.timeZone)}if(this.endDateTime){let t=F(this.endDateTime/1e6);this.endDate=this.formatDate(t,this.timeZone),this.endTime=this.formatTimeHMS(t,this.timeZone)}},methods:{closeOk(){if(!!this.startDate!=!!this.startTime){this.tab=0;return}if(!!this.endDate!=!!this.endTime){this.tab=0;return}this.startDate&&this.startTime?this.graph.startDateTime=this.startDate+" "+this.startTime:this.graph.startDateTime=null,this.endDate&&this.endTime?this.graph.endDateTime=this.endDate+" "+this.endTime:this.graph.endDateTime=null,this.$emit("ok",this.graph)},setLastHour(){const t=new Date(Date.now()-36e5);this.startDate=this.formatDate(t,this.timeZone),this.startTime=this.formatTimeHMS(t,this.timeZone)},clearStart(){this.startDate=null,this.startTime=null},clearEnd(){this.endDate=null,this.endTime=null},addLine(){this.graph.lines.push({yValue:0,color:"white"})},removeLine(t){let e=this.graph.lines.indexOf(t);this.graph.lines.splice(e,1)},customXAxisToggled(t){t||(this.selectedXAxisItem="__time",this.$emit("update:xAxisItem","__time"))},xAxisItemChanged(t){this.pendingXAxisSelection=t},xAxisItemSelected(t){if(t.targetName&&t.packetName&&t.itemName){const e=`DECOM__TLM__${t.targetName}__${t.packetName}__${t.itemName}__CONVERTED`;this.selectedXAxisItem=e,this.$emit("update:xAxisItem",e)}}}},ge={class:"edit-box"},ve={class:"edit-box"},ye={class:"edit-box"},xe={class:"edit-box"},be={class:"edit-box"};function Ne(t,e,i,r,s,l){const d=o("v-spacer"),c=o("v-toolbar"),N=o("v-tab"),g=o("v-tabs"),b=o("v-text-field"),D=o("v-card-text"),h=o("v-col"),I=o("v-select"),y=o("v-row"),A=o("v-btn"),G=o("OpenC3TimePicker"),P=o("v-tabs-window-item"),w=o("v-number-input"),_=o("v-list-item"),L=o("v-list"),R=o("v-checkbox"),j=o("target-packet-item-chooser"),Z=o("v-data-table"),Q=o("v-tabs-window"),u=o("v-card-actions"),Ue=o("v-card"),ze=o("v-dialog");return f(),x(ze,{modelValue:l.show,"onUpdate:modelValue":e[13]||(e[13]=p=>l.show=p),persistent:"","max-width":"700",onKeydown:e[14]||(e[14]=z(p=>t.$emit("cancel"),["esc"]))},{default:n(()=>[a(c,{height:"24"},{default:n(()=>[a(d),e[15]||(e[15]=T("span",null," Edit Graph ",-1)),a(d)]),_:1}),a(Ue,{class:"pa-3"},{default:n(()=>[a(g,{modelValue:t.tab,"onUpdate:modelValue":e[0]||(e[0]=p=>t.tab=p),class:"ml-3"},{default:n(()=>[a(N,{value:"0"},{default:n(()=>[...e[16]||(e[16]=[v(" Settings ",-1)])]),_:1}),a(N,{value:"1"},{default:n(()=>[...e[17]||(e[17]=[v(" Scale / Lines ",-1)])]),_:1}),a(N,{value:"2"},{default:n(()=>[...e[18]||(e[18]=[v(" Items ",-1)])]),_:1})]),_:1},8,["modelValue"]),a(Q,{modelValue:t.tab,"onUpdate:modelValue":e[11]||(e[11]=p=>t.tab=p)},{default:n(()=>[a(P,{value:"0",eager:""},{default:n(()=>[T("div",ge,[a(y,null,{default:n(()=>[a(h,null,{default:n(()=>[a(D,{class:"pa-0"},{default:n(()=>[a(b,{modelValue:t.graph.title,"onUpdate:modelValue":e[1]||(e[1]=p=>t.graph.title=p),class:"pb-2",label:"Title","hide-details":""},null,8,["modelValue"])]),_:1})]),_:1}),a(h,null,{default:n(()=>[a(I,{modelValue:t.graph.legendPosition,"onUpdate:modelValue":e[2]||(e[2]=p=>t.graph.legendPosition=p),label:"Legend Position","hide-details":"",items:t.legendPositions,style:{"max-width":"280px"}},null,8,["modelValue","items"])]),_:1})]),_:1})]),T("div",ve,[a(D,{class:"pa-0 d-flex align-center"},{default:n(()=>[e[21]||(e[21]=T("span",null," Select a start date/time for the graph. Leave blank to start at current time. ",-1)),a(d),a(A,{size:"small",variant:"outlined",class:"mr-2","data-test":"edit-graph-last-hour",onClick:l.setLastHour},{default:n(()=>[...e[19]||(e[19]=[v(" Last Hour ",-1)])]),_:1},8,["onClick"]),a(A,{size:"small",variant:"outlined","data-test":"edit-graph-clear-start",onClick:l.clearStart},{default:n(()=>[...e[20]||(e[20]=[v(" Clear ",-1)])]),_:1},8,["onClick"])]),_:1}),a(y,null,{default:n(()=>[a(h,null,{default:n(()=>[a(b,{modelValue:t.startDate,"onUpdate:modelValue":e[3]||(e[3]=p=>t.startDate=p),label:"Start Date",name:`date${Date.now()}`,rules:[l.rules.date],"error-messages":l.startDateError,type:"date"},null,8,["modelValue","name","rules","error-messages"])]),_:1}),a(h,null,{default:n(()=>[a(G,{modelValue:t.startTime,"onUpdate:modelValue":e[4]||(e[4]=p=>t.startTime=p),label:"Start Time",rules:[l.rules.time],"error-messages":l.startTimeError},null,8,["modelValue","rules","error-messages"])]),_:1})]),_:1}),a(D,{class:"pa-0 d-flex align-center"},{default:n(()=>[e[23]||(e[23]=T("span",null," Select a end date/time for the graph. Leave blank for continuous real-time graphing. ",-1)),a(d),a(A,{size:"small",variant:"outlined","data-test":"edit-graph-clear-end",onClick:l.clearEnd},{default:n(()=>[...e[22]||(e[22]=[v(" Clear ",-1)])]),_:1},8,["onClick"])]),_:1}),a(y,null,{default:n(()=>[a(h,null,{default:n(()=>[a(b,{modelValue:t.endDate,"onUpdate:modelValue":e[5]||(e[5]=p=>t.endDate=p),label:"End Date",name:`date${Date.now()}`,rules:[l.rules.date],"error-messages":l.endDateError,type:"date"},null,8,["modelValue","name","rules","error-messages"])]),_:1}),a(h,null,{default:n(()=>[a(G,{modelValue:t.endTime,"onUpdate:modelValue":e[6]||(e[6]=p=>t.endTime=p),label:"End Time",rules:[l.rules.time],"error-messages":l.endTimeError},null,8,["modelValue","rules","error-messages"])]),_:1})]),_:1})])]),_:1}),a(P,{value:"1",eager:""},{default:n(()=>[T("div",ye,[a(D,{class:"pa-0"},{default:n(()=>[...e[24]||(e[24]=[v(" Set a min or max Y value to override automatic scaling ",-1)])]),_:1}),a(y,{dense:""},{default:n(()=>[a(h,{class:"px-2"},{default:n(()=>[a(w,{modelValue:t.graph.graphMinY,"onUpdate:modelValue":e[7]||(e[7]=p=>t.graph.graphMinY=p),"control-variant":"stacked","hide-details":"",label:"Min Y Axis (Optional)"},null,8,["modelValue"])]),_:1}),a(h,{class:"px-2"},{default:n(()=>[a(w,{modelValue:t.graph.graphMaxY,"onUpdate:modelValue":e[8]||(e[8]=p=>t.graph.graphMaxY=p),"control-variant":"stacked","hide-details":"",label:"Max Y Axis (Optional)"},null,8,["modelValue"])]),_:1})]),_:1})]),T("div",xe,[a(L,{density:"compact",class:"horizontal-lines"},{default:n(()=>[a(_,null,{default:n(()=>[e[26]||(e[26]=T("span",{style:{"padding-top":"5px"}}," Add horizontal lines to the graph ",-1)),a(d),a(A,{onClick:e[9]||(e[9]=p=>l.addLine())},{default:n(()=>[...e[25]||(e[25]=[v(" New Line ",-1)])]),_:1})]),_:1}),(f(!0),C(W,null,de(t.graph.lines,(p,he)=>(f(),x(_,{key:he,value:p,color:"primary"},{default:n(()=>[a(y,null,{default:n(()=>[a(h,null,{default:n(()=>[a(b,{modelValue:p.yValue,"onUpdate:modelValue":$=>p.yValue=$,label:"Y Value"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),a(h,null,{default:n(()=>[a(I,{modelValue:p.color,"onUpdate:modelValue":$=>p.color=$,label:"Color","hide-details":"",items:i.colors},null,8,["modelValue","onUpdate:modelValue","items"])]),_:2},1024),a(h,null,{default:n(()=>[a(A,{style:{padding:"30px"},icon:"mdi-delete",variant:"text","aria-label":"Remove Line",onClick:$=>l.removeLine(p)},null,8,["onClick"])]),_:2},1024)]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1})]),T("div",be,[a(D,{class:"pa-0 text-medium-emphasis"},{default:n(()=>[...e[27]||(e[27]=[v(" Choose a different item to use for the graph's X axis. If unchecked, the graph will use the packet's PACKET_TIMESECONDS item if it exists, otherwise it will use RECEIVED_TIMESECONDS. ",-1),T("br",null,null,-1),T("span",{class:"font-italic"}," Note that the graph may not work correctly if you choose an item that does not strictly increase in value. It is recommended to use a counter or timestamp. ",-1)])]),_:1}),a(R,{modelValue:t.customXAxisEnabled,"onUpdate:modelValue":[e[10]||(e[10]=p=>t.customXAxisEnabled=p),l.customXAxisToggled],disabled:!i.xAxisItemPacket,label:"Custom X axis item",density:"compact","hide-details":""},null,8,["modelValue","disabled","onUpdate:modelValue"]),i.xAxisItemPacket?k("",!0):(f(),x(D,{key:0,class:"pa-0 text-medium-emphasis"},{default:n(()=>[...e[28]||(e[28]=[v(" All items on the graph must be in the same packet to enable this feature. ",-1)])]),_:1})),t.customXAxisEnabled&&i.xAxisItemPacket?(f(),x(j,{key:1,"initial-target-name":i.xAxisItemPacket.targetName,"initial-packet-name":i.xAxisItemPacket.packetName,"initial-item-name":l.initialXAxisItem,"choose-item":"","lock-target":"","lock-packet":"","button-text":"Set",onOnSet:l.xAxisItemChanged,onAddItem:l.xAxisItemSelected},null,8,["initial-target-name","initial-packet-name","initial-item-name","onOnSet","onAddItem"])):k("",!0)])]),_:1}),a(P,{value:"2",eager:""},{default:n(()=>[a(Z,{"item-key":"itemId",class:"elevation-1 my-2","data-test":"edit-graph-items",headers:t.itemHeaders,items:l.editItems,"items-per-page":5,"footer-props":{"items-per-page-options":[5]}},{"item.actions":n(({item:p})=>[a(A,{icon:"mdi-delete",variant:"text","aria-label":"Remove Item",onClick:he=>t.$emit("remove",p)},null,8,["onClick"])]),"no-data":n(()=>[...e[29]||(e[29]=[T("span",null," Currently no items on this graph ",-1)])]),_:1},8,["headers","items"])]),_:1})]),_:1},8,["modelValue"]),a(u,{class:"px-2"},{default:n(()=>[a(d),a(A,{variant:"outlined",onClick:e[12]||(e[12]=p=>t.$emit("cancel"))},{default:n(()=>[...e[30]||(e[30]=[v(" Cancel ",-1)])]),_:1}),a(A,{variant:"flat",disabled:l.isInvalid,onClick:l.closeOk},{default:n(()=>[...e[31]||(e[31]=[v(" Ok ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])}const Te=E(fe,[["render",Ne]]),ke={props:{modelValue:Boolean,item:{type:Object,required:!0},colors:{type:Array,required:!0}},emits:["cancel","changeColor","changeLimits","close","update:modelValue"],data:function(){return{editItem:null,limitsName:"NONE",limits:{NONE:[]},valueTypes:["CONVERTED","RAW"],reduction:[{title:"NONE",value:"DECOM"},{title:"REDUCED_MINUTE",value:"REDUCED_MINUTE"},{title:"REDUCED_HOUR",value:"REDUCED_HOUR"},{title:"REDUCED_DAY",value:"REDUCED_DAY"}],reducedTypes:["MIN","MAX","AVG","STDDEV"]}},computed:{show:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},limitsNames(){return Object.keys(this.limits)}},async created(){this.editItem={...this.item};const t=await new U().get_item(this.item.targetName,this.item.packetName,this.item.itemName);for(const[e,i]of Object.entries(t.limits))Object.keys(i).includes("red_low")&&(this.limits[e]=Object.values(i));this.limitsName=Object.keys(this.limits).find(e=>this.limits[e]+""==this.editItem.limits+"")}},De={key:0},Ie={class:"pa-3"};function Ae(t,e,i,r,s,l){const d=o("v-card-title"),c=o("v-select"),N=o("v-card-text"),g=o("v-spacer"),b=o("v-btn"),D=o("v-card-actions"),h=o("v-card"),I=o("v-dialog");return f(),x(I,{modelValue:l.show,"onUpdate:modelValue":e[9]||(e[9]=y=>l.show=y),persistent:"",width:"400",onKeydown:[e[10]||(e[10]=z(y=>t.success(),["enter"])),e[11]||(e[11]=z(y=>t.$emit("cancel"),["esc"]))]},{default:n(()=>[a(h,null,{default:n(()=>[a(d,{class:"mb-2"},{default:n(()=>[...e[12]||(e[12]=[v("Edit Item",-1)])]),_:1}),a(N,null,{default:n(()=>[a(c,{modelValue:t.editItem.valueType,"onUpdate:modelValue":e[0]||(e[0]=y=>t.editItem.valueType=y),variant:"outlined","hide-details":"",label:"Value Type",items:t.valueTypes,class:"mb-2"},null,8,["modelValue","items"]),a(c,{modelValue:t.editItem.reduced,"onUpdate:modelValue":e[1]||(e[1]=y=>t.editItem.reduced=y),variant:"outlined","hide-details":"",label:"Reduction",items:t.reduction,class:"mb-2"},null,8,["modelValue","items"]),a(c,{modelValue:t.editItem.reducedType,"onUpdate:modelValue":e[2]||(e[2]=y=>t.editItem.reducedType=y),variant:"outlined","hide-details":"",label:"Reduced Type",items:t.reducedTypes,disabled:t.editItem.reduced==="DECOM",class:"mb-2"},null,8,["modelValue","items","disabled"]),a(c,{modelValue:t.editItem.color,"onUpdate:modelValue":[e[3]||(e[3]=y=>t.editItem.color=y),e[4]||(e[4]=y=>t.$emit("changeColor",y))],variant:"outlined","hide-details":"",label:"Color",items:i.colors,class:"mb-2"},null,8,["modelValue","items"]),l.limitsNames.length>1?(f(),C("div",De,[a(c,{modelValue:t.limitsName,"onUpdate:modelValue":[e[5]||(e[5]=y=>t.limitsName=y),e[6]||(e[6]=y=>t.$emit("changeLimits",t.limits[t.limitsName]))],variant:"outlined","hide-details":"",label:"Display Limits",items:l.limitsNames},null,8,["modelValue","items"]),T("div",Ie,S(t.limitsName)+": "+S(t.limits[t.limitsName]),1)])):k("",!0)]),_:1}),a(D,{class:"px-2"},{default:n(()=>[a(g),a(b,{variant:"outlined",onClick:e[7]||(e[7]=y=>t.$emit("cancel"))},{default:n(()=>[...e[13]||(e[13]=[v(" Cancel ",-1)])]),_:1}),a(b,{variant:"flat",onClick:e[8]||(e[8]=y=>t.$emit("close",t.editItem))},{default:n(()=>[...e[14]||(e[14]=[v(" Ok ",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])}const we=E(ke,[["render",Ae]]),X="__time",_e=10,Se=.25,Ve=.5,Ce=.5,Ee={components:{GraphEditDialog:Te,GraphEditItemDialog:we},mixins:[Y],props:{id:{type:Number,required:!0},selectedGraphId:{type:Number,default:null},state:{type:String,required:!0},startTime:{type:Number,default:null},secondsGraphed:{type:Number,required:!0},pointsSaved:{type:Number,required:!0},pointsGraphed:{type:Number,required:!0},refreshIntervalMs:{type:Number,default:200},hideToolbar:{type:Boolean,default:!1},hideOverview:{type:Boolean,default:!1},hideLegend:{type:Boolean,default:!1},sparkline:{type:Boolean,default:!1},initialItems:{type:Array,default:()=>[]},initialXAxisItem:{type:String,default:X},height:{type:Number,default:null},width:{type:Number,default:null},timeZone:{type:String,default:"local"}},emits:["click","close-graph","edit","error","min-max-graph","pause","recovered","resize","start","started","hide-legend"],setup(){return{store:se()}},data(){return{api:null,lines:[],active:!0,expand:!0,fullWidth:!0,fullHeight:!0,graph:null,editGraph:!1,editGraphMenu:!1,editGraphMenuX:0,editGraphMenuY:0,editItem:!1,itemMenu:!1,itemMenuX:0,itemMenuY:0,legendMenu:!1,legendMenuX:0,legendMenuY:0,legendHidden:this.hideLegend,legendPosition:"bottom",selectedItem:null,hideToolbarData:this.hideToolbar,showOverview:!this.hideOverview,hideOverviewData:this.hideOverview,title:"",overview:null,data:[[]],dataChanged:!1,interval:null,graphMinY:null,graphMaxY:null,graphStartDateTime:null,graphEndDateTime:null,xAxisItem:this.initialXAxisItem,indexes:{},items:this.initialItems,graphItems:[],lastPlaybackDateTime:null,limitsValues:[],drawInterval:null,zoomChart:!1,zoomOverview:!1,cable:new ie,subscription:null,needToUpdate:!1,pendingData:[],processingRAF:null,scrollingRAF:null,realtimeXAxisAnchor:null,realtimeXAxisAnchorTime:null,lastScrolledMax:null,lastOverviewScaleTime:0,lastOverviewSelectTime:0,lastRenderTime:0,subscribeTime:null,emptyDataNotified:!1,notifyNonNumeric:!1,errorDialog:!1,errors:[],colorIndex:0,colors:["#00c7cb","#938bdb","#4dacff","lime","darkorange","red","gold","hotpink","tan","cyan","maroon","blue","teal","purple","green","brown","lightblue","white","black"]}},computed:{calcFullSize:function(){return this.fullWidth||this.fullHeight},error:function(){return this.errorDialog&&this.errors.length>0?JSON.stringify(this.errors,null,4):null},itemSubscriptionKeys:function(){return this.items.map(this.subscriptionKey)},allowableXAxisItemPacket:function(){if(!this.canUseCustomXAxisItem||this.items.length===0)return;const{targetName:t,packetName:e}=this.items[0];return{targetName:t,packetName:e}},canUseCustomXAxisItem:function(){if(this.items.length===0)return!0;const{targetName:t,packetName:e}=this.items[0];return this.items.every(i=>i.targetName===t&&i.packetName===e)},actualXAxisItem:function(){return this.canUseCustomXAxisItem&&this.xAxisItem?this.xAxisItem:X},xAxisConverter:function(){return this.xAxisIsDefault?t=>t/1e9:t=>t},xAxisFormatter:function(){return t=>t==null?"--":this.xAxisIsTime?this.formatSeconds(t,this.timeZone):t},xAxisLabel:function(){return this.xAxisIsTime?"Time":this.actualXAxisItem.split("__").at(-2)},xAxisIsDefault:function(){return this.actualXAxisItem===X},xAxisIsTime:function(){const t=["PACKET_TIMESECONDS","RECEIVED_TIMESECONDS"];return this.xAxisIsDefault||t.includes(this.actualXAxisItem.split("__").at(4))},xAxisIsAlsoGraphedItem:function(){return this.itemSubscriptionKeys.includes(this.actualXAxisItem)},playbackMode:function(){return this.store.playback.playbackMode},playbackDateTime:function(){return this.store.playback.playbackDateTime},playbackStep:function(){return this.store.playback.playbackStep}},watch:{hideLegend:function(t){this.legendHidden=t},legendHidden:function(t){this.applyHideLegend(t)},notifyNonNumeric:function(){this.$notify.caution({title:"Non-numeric item",body:"Received ungraphable data."})},state:function(t,e){switch(t){case"start":e==="stop"?this.startGraph():this.startRealtimeScrolling();break;case"pause":this.stopRealtimeScrolling();break;case"stop":this.stopGraph();break}},playbackMode:function(t,e){this.playbackMode==="playback"?this.setupPlaybackMode():(this.lastPlaybackDateTime=null,this.clearAllData(),this.startGraph())},playbackDateTime:function(t,e){this.playbackMode==="playback"&&(this.lastPlaybackDateTime===null||this.lastPlaybackDateTime>this.playbackDateTime?this.clearAllData():(this.store.updatePlayback({playbackLoading:this.store.playback.playbackLoading+1}),this.api.get_tlm_values(this.graphItems,30,null,this.lastPlaybackDateTime,this.playbackDateTime).then(i=>{if(i.length>0){const r=Array.isArray(i[0])&&Array.isArray(i[0][0])?i:[i];for(const s of r)for(let l=0;l<s.length;l++)this.data[l].push(s[l][0])}this.dataChanged=!0,this.updateGraphData()}).catch(i=>{console.error("Error fetching playback telemetry:",i)}).finally(()=>{this.store.updatePlayback({playbackLoading:Math.max(0,this.store.playback.playbackLoading-1)})})),this.lastPlaybackDateTime=this.playbackDateTime)},data:function(t,e){this.dataChanged=!0},graphMinY:function(t,e){let i=Number.parseFloat(t);Number.isFinite(i)&&(this.graphMinY=i),this.setGraphRange()},graphMaxY:function(t,e){let i=Number.parseFloat(t);Number.isFinite(i)&&(this.graphMaxY=i),this.setGraphRange()},graphStartDateTime:function(t,e){t&&typeof t=="string"?(this.graphStartDateTime=this.parseDateTime(this.graphStartDateTime,this.timeZone)*1e6,this.graphStartDateTime!==e&&(this.needToUpdate=!0)):t===null&&e&&(this.graphStartDateTime=null,this.needToUpdate=!0)},graphEndDateTime:function(t,e){t&&typeof t=="string"?(this.graphEndDateTime=this.parseDateTime(this.graphEndDateTime,this.timeZone)*1e6,this.graphEndDateTime!==e&&(this.needToUpdate=!0)):t===null&&e&&(this.graphEndDateTime=null,this.needToUpdate=!0),this.graphEndDateTime?this.stopRealtimeScrolling():this.startRealtimeScrolling()},actualXAxisItem:function(t,e){let i=JSON.parse(JSON.stringify(this.items));this.removeItems(i),this.graph.destroy(),this.chartOpts.series[0].label=this.xAxisLabel,this.chartOpts.scales.x.time=this.xAxisIsTime,this.graph=new V(this.chartOpts,this.data,document.getElementById(`chart${this.id}`)),this.hideOverview||(this.overview.destroy(),this.overviewOpts.scales.x.time=this.xAxisIsTime,this.overview=new V(this.overviewOpts,this.data,document.getElementById(`overview${this.id}`))),this.addItems(i),this.startRealtimeScrolling()},refreshIntervalMs:function(t){this.interval&&(clearInterval(this.interval),this.interval=setInterval(()=>{this.updateGraphData()},t))}},created(){this.api=new U,this.title=`Graph ${this.id}`;for(const[t,e]of this.items.entries())this.data.push([]),this.indexes[this.subscriptionKey(e)]=t+1,e.color===void 0&&(e.color=this.colors[this.colorIndex]),this.colorIndex++,this.colorIndex===this.colors.length&&(this.colorIndex=0)},mounted(){const{chartSeries:t,overviewSeries:e}=this.items.reduce((i,r)=>{const s={spanGaps:!0};return i.chartSeries.push({...s,item:r,label:this.formatLabel(r),stroke:(l,d)=>this.items[d-1].color,width:2,value:(l,d)=>typeof d=="string"||Number.isNaN(d)?"NaN":d==null?"--":d.toFixed(3)}),i.overviewSeries.push({...s}),i},{chartSeries:[],overviewSeries:[]});if(this.chartOpts={},this.sparkline)this.hideToolbarData=!0,this.hideOverviewData=!0,this.showOverview=!1,this.chartOpts={width:this.width,height:this.height,pxAlign:!1,cursor:{show:!1},select:{show:!1},legend:{show:!1},scales:{x:{time:!1}},axes:[{show:!1},{show:!1}],series:[{},{stroke:"white"}]},this.graph=new V(this.chartOpts,this.data,document.getElementById(`chart${this.id}`));else{let i=Intl.DateTimeFormat().resolvedOptions().timeZone;this.timeZone&&this.timeZone!=="local"&&(i=this.timeZone),this.chartOpts={...this.getSize("chart"),...this.getScales(),...this.getAxes("chart"),plugins:[this.linesPlugin()],tzDate:r=>V.tzDate(new Date(r*1e3),i),series:[{label:this.xAxisLabel,value:(r,s)=>this.xAxisFormatter(s)},...t],cursor:{drag:{x:!0,y:!1},sync:{key:"openc3"},bind:{mouseup:(r,s,l)=>d=>{this.state==="pause"&&r.select.width===0&&this.$emit("start"),l(d)}}},hooks:{setScale:[(r,s)=>{if(s==="x"&&!this.zoomOverview&&this.overview&&this.overviewSyncDue("lastOverviewSelectTime")){this.zoomChart=!0;let l=Math.round(this.overview.valToPos(r.scales.x.min,"x")),d=Math.round(this.overview.valToPos(r.scales.x.max,"x"));this.overview.setSelect({left:l,width:d-l}),this.zoomChart=!1}}],setSelect:[r=>{this.state==="start"&&r.select.width>0&&this.$emit("pause")}],ready:[r=>{r.root.querySelector(".u-over").addEventListener("contextmenu",l=>{l.preventDefault(),this.itemMenu=!1,this.legendMenu=!1,this.editGraphMenuX=l.clientX,this.editGraphMenuY=l.clientY,this.editGraphMenu=!0});let s=r.root.querySelector(".u-legend");s.addEventListener("contextmenu",l=>{l.preventDefault(),this.editGraphMenu=!1,this.legendMenu=!1,this.itemMenuX=l.clientX,this.itemMenuY=l.clientY;let d=l.target.closest(".u-series"),c=Array.prototype.slice.call(s.childNodes[0].childNodes).indexOf(d),N=r.series[c];N.item?(this.selectedItem=N.item,this.itemMenu=!0):(this.itemMenu=!1,this.legendMenuX=l.clientX,this.legendMenuY=l.clientY,this.legendMenu=!0)}),s.querySelector("tbody").appendChild(this.$refs.info)}]}},this.graph=new V(this.chartOpts,this.data,document.getElementById(`chart${this.id}`)),this.overviewOpts={...this.getSize("overview"),...this.getScales(),...this.getAxes("overview"),tzDate:r=>V.tzDate(new Date(r*1e3),i),series:[...e],cursor:{y:!1,drag:{setScale:!1,x:!0,y:!1}},legend:{show:!1},hooks:{setSelect:[r=>{if(!this.zoomChart){this.state==="start"&&r.select.width>0&&this.$emit("pause"),this.zoomOverview=!0;let s=r.posToVal(r.select.left,"x"),l=r.posToVal(r.select.left+r.select.width,"x");this.graph.setScale("x",{min:s,max:l}),this.zoomOverview=!1}}]}},this.hideOverview||(this.overview=new V(this.overviewOpts,this.data,document.getElementById(`overview${this.id}`))),this.moveLegend(this.legendPosition),this.applyHideLegend(this.legendHidden),window.addEventListener("resize",this.resize)}this.playbackMode!=="playback"?this.state!=="stop"&&this.startGraph():this.setupPlaybackMode()},beforeUnmount:function(){this.stopGraph(),this.cable.disconnect(),window.removeEventListener("resize",this.resize)},methods:{setupPlaybackMode:function(){this.stopGraph(),this.clearAllData();const t=this.itemSubscriptionKeys.map(e=>e.split("__").slice(2).join("__"));if(this.actualXAxisItem===X){const e=t[0].split("__").slice(0,2).join("__");t.unshift(`${e}__PACKET_TIMESECONDS__RAW`)}else this.xAxisIsAlsoGraphedItem||t.unshift(this.actualXAxisItem);this.api.get_tlm_available(t).then(e=>{this.graphItems=e,t.length!=e.length&&console.error("Error getting tlm available",t,this.graphItems)})},startGraph:function(){this.subscribe(),this.interval=setInterval(()=>{this.updateGraphData()},this.refreshIntervalMs),this.startRealtimeScrolling()},stopGraph:function(){this.stopRealtimeScrolling(),this.processingRAF!==null&&(cancelAnimationFrame(this.processingRAF),this.processingRAF=null),this.pendingData=[],this.subscription&&(this.subscription.unsubscribe(),this.subscription=null),this.interval&&(clearInterval(this.interval),this.interval=null)},shouldScrollRealtime:function(){return this.playbackMode!=="playback"&&this.state==="start"&&this.xAxisIsTime&&!this.graphEndDateTime&&this.graph!==null},startRealtimeScrolling:function(){this.scrollingRAF===null&&this.shouldScrollRealtime()&&(this.scrollingRAF=requestAnimationFrame(()=>this.scrollRealtimeGraph()))},stopRealtimeScrolling:function(){this.scrollingRAF!==null&&(cancelAnimationFrame(this.scrollingRAF),this.scrollingRAF=null)},scrollRealtimeGraph:function(){if(this.scrollingRAF=null,!!this.shouldScrollRealtime()){if(!(this.pendingData.length>0||this.processingRAF!==null))if(this.dataChanged)this.graph.setData(this.data,!1),this.setXAxisScale(this.getRealtimeXAxisMax());else{const t=this.getRealtimeXAxisMax();this.xAxisPixelsMoved(t)>=Ve&&this.setXAxisScale(t)}this.scrollingRAF=requestAnimationFrame(()=>this.scrollRealtimeGraph())}},xAxisPixelsMoved:function(t){return this.lastScrolledMax===null?1/0:Math.abs(this.graph.valToPos(t,"x")-this.graph.valToPos(this.lastScrolledMax,"x"))},overviewSyncDue:function(t){if(this.scrollingRAF===null)return!0;const e=performance.now();return e-this[t]<this.refreshIntervalMs?!1:(this[t]=e,!0)},getRealtimeXAxisMax:function(){if(this.realtimeXAxisAnchor===null||this.realtimeXAxisAnchorTime===null)return Date.now()/1e3;const t=this.realtimeXAxisAnchor+(performance.now()-this.realtimeXAxisAnchorTime)/1e3,e=this.data[0]?.at(-1);if(e!==void 0&&e-t>Se)return this.realtimeXAxisAnchor=e,this.realtimeXAxisAnchorTime=performance.now(),e;if(e!==void 0&&this.secondsGraphed>0){const i=e+this.secondsGraphed*Ce;if(t>i)return i}return t},initializeRealtimeXAxisAnchor:function(t){(this.realtimeXAxisAnchor===null||this.realtimeXAxisAnchorTime===null)&&(this.realtimeXAxisAnchor=t,this.realtimeXAxisAnchorTime=performance.now())},setXAxisScale:function(t=null){const e=this.data[0];if(e&&e.length){let i=t===null?e.at(-1):t;const r=[e.at(0)];if(this.pointsGraphed<=e.length){const l=e.at(-1)-e.at(-this.pointsGraphed);r.push(i-l)}this.xAxisIsTime&&r.push(i-this.secondsGraphed);const s=Math.max(...r);s>=i&&(i=s+1),this.overview&&t!==null&&this.overviewSyncDue("lastOverviewScaleTime")&&this.overview.setScale("x",{min:e.at(0),max:i}),this.graph.setScale("x",{min:s,max:i})}else if(this.graphStartDateTime){const i=this.graphStartDateTime/1e9,r=this.graphEndDateTime?this.graphEndDateTime/1e9:t||Date.now()/1e3;this.graph.setScale("x",{min:i,max:r})}else if(t!==null){const i=this.secondsGraphed>0?this.secondsGraphed:3600;this.graph.setScale("x",{min:t-i,max:t})}t!==null&&(this.lastScrolledMax=t)},updateGraphData:function(){if(this.state==="pause"||(!this.emptyDataNotified&&this.graphStartDateTime&&this.subscribeTime!==null&&performance.now()-this.subscribeTime>5e3&&(!this.data[0]||this.data[0].length===0)&&(this.emptyDataNotified=!0,this.$notify.caution({title:"Empty graph data",body:"No data was returned for the selected time range."})),!this.dataChanged)||(this.pendingData.length>0||this.processingRAF!==null)&&performance.now()-this.lastRenderTime<1e3)return;const t=this.shouldScrollRealtime()?this.getRealtimeXAxisMax():null;this.graph.setData(this.data),this.overview&&this.overview.setData(this.data),this.lastRenderTime=performance.now(),this.setXAxisScale(t),this.dataChanged=!1},formatLabel(t){if(t.valueType==="CONVERTED"&&t.reduced==="DECOM")return t.itemName;{let e="";return t.valueType!=="CONVERTED"&&(e+=t.valueType),t.reduced!=="DECOM"&&(e!==""&&(e+=" "),e+=`${t.reduced.split("_")[1]} ${t.reducedType}`),`${t.itemName} (${e})`}},applyHideLegend:function(t){if(!this.graph)return;const e=this.graph.root.querySelector(".u-legend");e&&(e.style.display=t?"none":""),this.resize()},legendHide:function(){this.legendHidden=!0,this.$emit("hide-legend")},moveLegend:function(t){switch(t){case"bottom":this.graph.root.classList.remove("side-legend"),this.graph.root.classList.remove("left-legend"),this.graph.root.classList.remove("top-legend");break;case"top":this.graph.root.classList.remove("side-legend"),this.graph.root.classList.remove("left-legend"),this.graph.root.classList.add("top-legend");break;case"left":this.graph.root.classList.remove("top-legend"),this.graph.root.classList.add("side-legend"),this.graph.root.classList.add("left-legend");break;case"right":this.graph.root.classList.remove("top-legend"),this.graph.root.classList.remove("left-legend"),this.graph.root.classList.add("side-legend");break}this.legendPosition=t,this.resize()},clearErrors:function(){this.errors=[]},addError:function(t){const e={time:new Date().getTime(),...t};this.errors.push(e),this.$emit("error",e)},editGraphClose:function(t){this.editGraph=!1,this.title=t.title,this.legendPosition=t.legendPosition,this.graphMinY=t.graphMinY,this.graphMaxY=t.graphMaxY,this.lines=[...t.lines],this.graphStartDateTime=t.startDateTime,this.graphEndDateTime=t.endDateTime,this.$nextTick(()=>{if(this.needToUpdate){if(this.subscription==null)this.startGraph();else{let e=JSON.parse(JSON.stringify(this.items));this.removeItems(e),setTimeout(()=>{this.addItems(e)},0)}this.needToUpdate=!1}}),this.moveLegend(this.legendPosition),this.$emit("edit")},resize:function(){this.graph&&(this.graph.setSize(this.getSize("chart")),this.overview&&this.overview.setSize(this.getSize("overview")),this.$emit("resize",this.id))},expandAll:function(){this.fullWidth=!0,this.fullHeight=!0,this.resize()},collapseAll:function(){this.fullWidth=!1,this.fullHeight=!1,this.resize()},expandWidth:function(){this.fullWidth=!0,this.resize()},collapseWidth:function(){this.fullWidth=!1,this.resize()},expandHeight:function(){this.fullHeight=!0,this.resize()},collapseHeight:function(){this.fullHeight=!1,this.resize()},minMaxTransition:function(){this.expand=!this.expand,this.$emit("min-max-graph",this.id)},setGraphRange:function(){let t=.1;(this.graphMinY||this.graphMinY===0||this.graphMaxY||this.graphMaxY===0)&&(t=0),this.graph.scales.y.range=(e,i,r)=>{let s=i;(this.graphMinY||this.graphMinY===0)&&(s=this.graphMinY);let l=r;return(this.graphMaxY||this.graphMaxY===0)&&(l=this.graphMaxY),V.rangeNum(s,l,t,!0)}},subscribe:function(){this.cable.createSubscription("StreamingChannel",window.openc3Scope,{received:t=>this.received(t),connected:()=>{this.errors=this.errors.filter(e=>!e.transient),this.$emit("recovered");const t=[...this.items];!this.xAxisIsDefault&&!this.xAxisIsAlsoGraphedItem&&t.push(this.actualXAxisItem),this.addItemsToSubscription(t)},disconnected:t=>{t.allowReconnect&&this.addError({type:"disconnected",message:"OpenC3 backend connection disconnected",transient:!0})},rejected:()=>{this.addError({type:"rejected",message:"OpenC3 backend connection rejected"})}}).then(t=>{this.subscription=t})},getSize:function(t){let e=0;const i=document.getElementById("openc3-nav-drawer");i&&(e=i.classList.contains("v-navigation-drawer--active")?i.clientWidth:0);let r=0;(this.legendPosition==="right"||this.legendPosition==="left")&&(r=document.getElementsByClassName("u-legend")[0].clientWidth);const s=Math.max(document.documentElement.clientWidth,window.innerWidth||0)-e-r,l=Math.max(document.documentElement.clientHeight,window.innerHeight||0),d=document.getElementsByClassName("v-expansion-panel")[0];let c=100;t==="overview"?this.fullHeight&&!this.hideOverviewData?this.showOverview=!0:this.showOverview=!1:(c=l-d.clientHeight-c-250,this.fullHeight||(c=c/2+10));let N=s-70;return this.fullWidth||(N=N/2-12),{width:this.width||N,height:this.height||c}},getScales:function(){return{scales:{x:{range:(t,e,i)=>{if(e==null){if(this.graphStartDateTime){const r=this.graphEndDateTime?this.graphEndDateTime/1e9:Date.now()/1e3;return[this.graphStartDateTime/1e9,r]}if(this.xAxisIsTime){const r=Date.now()/1e3;return[r-3600,r]}return[0,1]}return[e,i]},time:this.xAxisIsTime},y:{range:(t,e,i)=>e==null?[-100,100]:V.rangeNum(e,i,.1,!0)}}}},getAxes:function(t){let e="rgba(255, 255, 255, .1)",i="white";return{axes:[{stroke:i,grid:{show:!0,stroke:e,width:2}},{size:80,stroke:i,grid:{show:t!=="overview",stroke:e,width:2},values(r,s){return(s.some(l=>l>=1e7)||s.every(l=>l<.01))&&(s=s.map(l=>l.toExponential(3))),s}}]}},closeEditItem:function(t){this.editItem=!1,(this.graphEndDateTime!==null&&this.selectedItem!==t||this.selectedItem.valueType!==t.valueType||this.selectedItem.reduced!==t.reduced||this.selectedItem.reducedType!==t.reducedType)&&this.changeItem(t)},changeColor:function(t){let e=this.subscriptionKey(this.selectedItem),i=this.indexes[e];this.items[i-1].color=t,this.selectedItem.color=t,this.graph.root.querySelectorAll(".u-marker")[i].style.borderColor=t},changeLimits:function(t){let e=this.subscriptionKey(this.selectedItem),i=this.indexes[e];this.items[i-1].limits=t,this.selectedItem.limits=t,this.limitsValues=t},linesPlugin:function(){return{hooks:{draw:t=>{const{ctx:e,bbox:i}=t,r=t.valToPos(t.scales.y.min,"y",!0),s=t.valToPos(t.scales.y.max,"y",!0),l=t.valToPos(this.limitsValues[0],"y",!0),d=t.valToPos(this.limitsValues[1],"y",!0),c=t.valToPos(this.limitsValues[2],"y",!0),N=t.valToPos(this.limitsValues[3],"y",!0);if(this.lines.forEach(g=>{t.scales.y.min<=g.yValue&&g.yValue<=t.scales.y.max&&(e.save(),e.beginPath(),e.strokeStyle=g.color,e.lineWidth=2,e.moveTo(i.left,t.valToPos(g.yValue,"y",!0)),e.lineTo(i.left+i.width,t.valToPos(g.yValue,"y",!0)),e.stroke(),e.restore())}),e.save(),e.beginPath(),e.fillStyle="rgba(255,0,0,0.15)",t.scales.y.min<this.limitsValues[0]){let g=l<s?s:l;e.fillRect(i.left,l,i.width,r-g)}if(t.scales.y.max>this.limitsValues[3]){let g=r<N?r:N;e.fillRect(i.left,s,i.width,g-s)}if(e.fillStyle="rgba(255,255,0,0.15)",t.scales.y.min<this.limitsValues[1]&&t.scales.y.max>this.limitsValues[0]){let g=d<s?s:d;e.fillRect(i.left,g,i.width,l-g)}if(t.scales.y.max>this.limitsValues[2]&&t.scales.y.min<this.limitsValues[3]){let g=r<N?r:N,b=r<c?r:c;e.fillRect(i.left,g,i.width,b-g)}if(e.fillStyle="rgba(0,255,0,0.15)",this.limitsValues.length===4){if(t.scales.y.min<this.limitsValues[2]&&t.scales.y.max>this.limitsValues[1]){let g=c<s?s:c,b=r<d?r:d;e.fillRect(i.left,g,i.width,b-g)}}else{const g=t.valToPos(this.limitsValues[4],"y",!0),b=t.valToPos(this.limitsValues[5],"y",!0);if(t.scales.y.min<this.limitsValues[4]&&t.scales.y.max>this.limitsValues[1]){let I=g<s?s:g;e.fillRect(i.left,I,i.width,d-I)}if(t.scales.y.max>this.limitsValues[5]&&t.scales.y.min<this.limitsValues[2]){let I=r<c?r:c,y=r<b?r:b;e.fillRect(i.left,I,i.width,y-I)}e.fillStyle="rgba(0,0,255,0.15)";let D=b<s?s:b,h=r<g?r:g;e.fillRect(i.left,D,i.width,h-D)}e.stroke(),e.restore()}}}},changeItem:function(t){this.removeItems([this.selectedItem]),this.selectedItem.valueType=t.valueType,this.selectedItem.reduced=t.reduced,this.selectedItem.reducedType=t.reducedType,setTimeout(()=>{this.addItems([this.selectedItem])},0)},addItems:function(t,e="CONVERTED"){t.forEach(i=>{i.valueType||=e,i.color||=this.colors[this.colorIndex],i.limits||=[],i.limits.length>0&&(this.limitsValues=i.limits),this.colorIndex=(this.colorIndex+1)%this.colors.length,this.items.push(i);const r=this.data.length;this.graph.addSeries(this.createSeriesConfig(i),r),this.overview&&this.overview.addSeries(this.createOverviewSeriesConfig(),r),this.data.splice(r,0,Array(this.data[0].length)),this.indexes[this.subscriptionKey(i)]=r}),this.updateColorIndex(t),this.xAxisIsDefault||t.push(this.actualXAxisItem),this.addItemsToSubscription(t),this.$emit("resize"),this.$emit("edit")},createSeriesConfig:function(t){return{spanGaps:!0,item:t,label:this.formatLabel(t),stroke:(e,i)=>this.items[i-1].color,width:2,value:(e,i)=>typeof i=="string"||Number.isNaN(i)?"NaN":i==null?"--":Math.abs(i)<.01&&i!==0||Math.abs(i)>=1e7?i.toExponential(6):i.toFixed(6)}},createOverviewSeriesConfig:function(){return{spanGaps:!0,stroke:(t,e)=>this.items[e-1].color}},updateColorIndex:function(t){const e=t[t.length-1];if(e){const i=this.colors.indexOf(e.color);i!==-1&&(this.colorIndex=(i+1)%this.colors.length)}},addItemsToSubscription:function(t=this.items){let e=this.startTime;this.graphStartDateTime&&(e=this.graphStartDateTime);const i=t.map(r=>{if(typeof r=="object")return this.subscriptionKey(r);if(typeof r=="string")return r;throw new Error(`Invalid subscription item type for ${r}: ${typeof r}`)});this.subscription&&(this.subscribeTime=performance.now(),this.emptyDataNotified=!1,OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity).then(r=>{r&&OpenC3Auth.setTokens(),this.subscription?.perform("add",{scope:window.openc3Scope,token:localStorage.openc3Token,items:i,start_time:e,end_time:this.graphEndDateTime})}).catch(te))},clearAllData:function(){this.realtimeXAxisAnchor=null,this.realtimeXAxisAnchorTime=null,this.lastScrolledMax=null,this.data[0]=[],this.clearData(this.items)},clearData:function(t){for(const e of t.map(this.subscriptionKey)){let i=this.indexes[e];this.data[i]=Array(this.data[0].length).fill(null),this.graph.setData(this.data),this.overview&&this.overview.setData(this.data)}this.data.length===2&&(this.data[0]=[],this.graph.setData(this.data),this.overview&&this.overview.setData(this.data))},removeItems:function(t){this.removeItemsFromSubscription(t);for(const e of t.map(this.subscriptionKey)){const i=this.reorderIndexes(e);this.items.splice(i-1,1),this.data.splice(i,1),this.graph.delSeries(i),this.graph.setData(this.data),this.overview&&(this.overview.delSeries(i),this.overview.setData(this.data))}this.data.length===1&&(this.data[0]=[],this.graph.setData(this.data),this.overview&&this.overview.setData(this.data)),this.$emit("resize"),this.$emit("edit")},removeItemsFromSubscription:function(t=this.items){if(this.subscription){const e=t.map(i=>{if(typeof i=="object")return this.subscriptionKey(i);if(typeof i=="string")return i;throw new Error(`Invalid subscription item type for ${i}: ${typeof i}`)});this.subscription.perform("remove",{scope:window.openc3Scope,token:localStorage.openc3Token,items:e})}},reorderIndexes:function(t){let e=this.indexes[t];delete this.indexes[t];for(let i in this.indexes)this.indexes[i]>e&&(this.indexes[i]-=1);return e},received:function(t){this.cable.recordPing(),this.pendingData.push(t),this.processingRAF===null&&(this.processingRAF=requestAnimationFrame(()=>this.processReceivedData()))},processReceivedData:function(){this.processingRAF=null;const t=performance.now();for(;this.pendingData.length>0;){const e=this.pendingData.shift();if(this.processDataBatch(e),performance.now()-t>_e&&this.pendingData.length>0){this.processingRAF=requestAnimationFrame(()=>this.processReceivedData());break}}},processDataBatch:function(t){for(let e=0;e<t.length;e++){if(!t[e].hasOwnProperty(this.actualXAxisItem))continue;let i=this.xAxisConverter(t[e][this.actualXAxisItem]),r=this.data[0].length;if(r===0||i>this.data[0][r-1]){for(let s=0;s<this.data.length;s++)this.data[s].push(null);this.setDataAtIndex(this.data[0].length-1,i,t[e])}else if(i===this.data[0][r-1])this.setDataAtIndex(r-1,i,t[e]);else{let s=ee(this.data[0],i,this.bsComparator);if(s>=0)this.setDataAtIndex(s,i,t[e]);else{const l=-s-1;for(let d=0;d<this.data.length;d++)this.data[d].splice(l,0,null);this.setDataAtIndex(l,i,t[e])}}}if(this.pointsSaved>0&&this.data[0].length>this.pointsSaved+300){const e=this.data[0].length-this.pointsSaved;for(let i=0;i<this.data.length;i++)this.data[i].splice(0,e)}if(this.startTime==null&&this.data[0][0]){let e=this.data[0][0]*1e9;this.$emit("started",e)}this.playbackMode!=="playback"&&this.xAxisIsTime&&this.data[0].length>0&&this.initializeRealtimeXAxisAnchor(this.data[0].at(-1)),this.dataChanged=!0},bsComparator:function(t,e){return t-e},setDataAtIndex:function(t,e,i){this.data[0][t]=e;for(const[r,s]of Object.entries(i)){if(r===this.actualXAxisItem&&!this.xAxisIsAlsoGraphedItem)continue;const l=this.indexes[r];if(l){let d=this.data[l];if(s?.raw)d[t]=null;else if(typeof s!="number"){if(d[t]=null,this.notifyNonNumeric=!0,!r.includes("__RAW")){for(let c of this.items)if(this.subscriptionKey(c)===r){this.selectedItem=c;break}this.changeItem({valueType:"RAW",reduced:this.selectedItem.reduced,reducedType:this.selectedItem.reducedType})}}else d[t]=s}}},subscriptionKey:function(t){let e=`${t.reduced}__TLM__${t.targetName}__${t.packetName}__${t.itemName}__${t.valueType}`;return(t.reduced==="REDUCED_MINUTE"||t.reduced==="REDUCED_HOUR"||t.reduced==="REDUCED_DAY")&&(e+=`__${t.reducedType}`),e}}},Me={id:"chart",ref:"chart",class:"pa-1"},Oe=["id"],Pe=["id"],Le={key:5,ref:"info",class:"u-series"};function Re(t,e,i,r,s,l){const d=o("v-btn"),c=o("v-icon"),N=o("v-tooltip"),g=o("v-spacer"),b=o("v-toolbar"),D=o("v-expand-transition"),h=o("v-card"),I=o("graph-edit-dialog"),y=o("v-text-field"),A=o("v-row"),G=o("v-textarea"),P=o("v-dialog"),w=o("v-list-item-title"),_=o("v-list-item"),L=o("v-list"),R=o("v-menu"),j=o("graph-edit-item-dialog"),Z=o("v-list-subheader"),Q=o("v-divider");return f(),C("div",{onClick:e[22]||(e[22]=B(u=>t.$emit("click"),["prevent"]))},[a(h,null,{default:n(()=>[M(a(b,{height:"24",class:le(["pl-2 pr-2",i.selectedGraphId===i.id?"active":""])},{default:n(()=>[M(a(d,{class:"mx-2",icon:"mdi-alert",density:"compact",variant:"text","aria-label":"Show Errors",onClick:e[0]||(e[0]=()=>{s.errorDialog=!0})},null,512),[[O,s.errors.length!==0]]),a(d,{icon:"mdi-pencil",variant:"text",density:"compact","data-test":"edit-graph-icon","aria-label":"Edit Graph",onClick:e[1]||(e[1]=()=>{s.editGraph=!0})}),s.legendHidden?(f(),x(N,{key:0,text:"Legend hidden. Restore via Graph > Settings dialog.",location:"bottom"},{activator:n(({props:u})=>[a(c,ne(u,{size:"small",class:"mx-1"}),{default:n(()=>[...e[23]||(e[23]=[v(" mdi-information-outline ",-1)])]),_:1},16)]),_:1})):k("",!0),a(g),T("span",null,S(s.title),1),a(g),s.expand?(f(),C(W,{key:1},[l.calcFullSize?(f(),x(d,{key:0,icon:"mdi-arrow-collapse",variant:"text",density:"compact","data-test":"collapse-all",onClick:l.collapseAll},null,8,["onClick"])):(f(),x(d,{key:1,icon:"mdi-arrow-expand",variant:"text",density:"compact","data-test":"expand-all",onClick:l.expandAll},null,8,["onClick"])),s.fullWidth?(f(),x(d,{key:2,icon:"mdi-arrow-collapse-horizontal",variant:"text",density:"compact","data-test":"collapse-width",onClick:l.collapseWidth},null,8,["onClick"])):(f(),x(d,{key:3,icon:"mdi-arrow-expand-horizontal",variant:"text",density:"compact","data-test":"expand-width",onClick:l.expandWidth},null,8,["onClick"])),s.fullHeight?(f(),x(d,{key:4,icon:"mdi-arrow-collapse-vertical",variant:"text",density:"compact","data-test":"collapse-height",onClick:l.collapseHeight},null,8,["onClick"])):(f(),x(d,{key:5,icon:"mdi-arrow-expand-vertical",variant:"text",density:"compact","data-test":"expand-height",onClick:l.expandHeight},null,8,["onClick"]))],64)):k("",!0),s.expand?(f(),x(d,{key:2,icon:"mdi-window-minimize",variant:"text",density:"compact","data-test":"minimize-screen-icon",onClick:l.minMaxTransition},null,8,["onClick"])):(f(),x(d,{key:3,icon:"mdi-window-maximize",variant:"text",density:"compact","data-test":"maximize-screen-icon",onClick:l.minMaxTransition},null,8,["onClick"])),a(d,{icon:"mdi-close-box",variant:"text",density:"compact","data-test":"close-graph-icon",onClick:e[2]||(e[2]=B(u=>t.$emit("close-graph"),["stop"]))})]),_:1},8,["class"]),[[O,!s.hideToolbarData]]),a(D,{onAfterEnter:l.resize},{default:n(()=>[M(T("div",Me,[T("div",{id:`chart${i.id}`},null,8,Oe),e[24]||(e[24]=T("div",{id:"betweenCharts"},null,-1)),M(T("div",{id:`overview${i.id}`},null,8,Pe),[[O,s.showOverview]])],512),[[O,s.expand]])]),_:1},8,["onAfterEnter"])]),_:1}),s.editGraph?(f(),x(I,{key:0,modelValue:s.editGraph,"onUpdate:modelValue":e[3]||(e[3]=u=>s.editGraph=u),"x-axis-item":s.xAxisItem,"onUpdate:xAxisItem":e[4]||(e[4]=u=>s.xAxisItem=u),title:s.title,"legend-position":s.legendPosition,items:s.items,"graph-min-y":s.graphMinY,"graph-max-y":s.graphMaxY,lines:s.lines,colors:s.colors,"start-date-time":s.graphStartDateTime,"end-date-time":s.graphEndDateTime,"time-zone":i.timeZone,"x-axis-item-packet":l.allowableXAxisItemPacket,onRemove:e[5]||(e[5]=u=>l.removeItems([u])),onOk:l.editGraphClose,onCancel:e[6]||(e[6]=u=>s.editGraph=!1)},null,8,["modelValue","x-axis-item","title","legend-position","items","graph-min-y","graph-max-y","lines","colors","start-date-time","end-date-time","time-zone","x-axis-item-packet","onOk"])):k("",!0),a(P,{modelValue:s.errorDialog,"onUpdate:modelValue":e[8]||(e[8]=u=>s.errorDialog=u),"max-width":"600"},{default:n(()=>[a(b,{height:"24"},{default:n(()=>[a(g),e[25]||(e[25]=T("span",null," Errors ",-1)),a(g)]),_:1}),a(h,{class:"pa-3"},{default:n(()=>[a(A,{dense:""},{default:n(()=>[a(y,{modelValue:s.title,"onUpdate:modelValue":e[7]||(e[7]=u=>s.title=u),readonly:"","hide-details":"",class:"pb-2",label:"Graph Title"},null,8,["modelValue"])]),_:1}),a(A,{class:"my-3"},{default:n(()=>[a(G,{readonly:"",rows:"8","model-value":l.error},null,8,["model-value"])]),_:1}),a(A,null,{default:n(()=>[a(d,{block:"",onClick:l.clearErrors},{default:n(()=>[...e[26]||(e[26]=[v(" Clear ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),s.editGraphMenu?(f(),x(R,{key:1,modelValue:s.editGraphMenu,"onUpdate:modelValue":e[10]||(e[10]=u=>s.editGraphMenu=u),target:[s.editGraphMenuX,s.editGraphMenuY],absolute:""},{default:n(()=>[a(L,null,{default:n(()=>[a(_,{onClick:e[9]||(e[9]=u=>s.editGraph=!0)},{default:n(()=>[a(w,{style:{cursor:"pointer"}},{default:n(()=>[v(" Edit "+S(s.title),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue","target"])):k("",!0),s.editItem?(f(),x(j,{key:2,modelValue:s.editItem,"onUpdate:modelValue":e[11]||(e[11]=u=>s.editItem=u),colors:s.colors,item:s.selectedItem,onChangeColor:l.changeColor,onChangeLimits:l.changeLimits,onCancel:e[12]||(e[12]=u=>s.editItem=!1),onClose:l.closeEditItem},null,8,["modelValue","colors","item","onChangeColor","onChangeLimits","onClose"])):k("",!0),s.itemMenu?(f(),x(R,{key:3,modelValue:s.itemMenu,"onUpdate:modelValue":e[16]||(e[16]=u=>s.itemMenu=u),target:[s.itemMenuX,s.itemMenuY],absolute:""},{default:n(()=>[a(L,{nav:"",density:"compact"},{default:n(()=>[a(Z,null,{default:n(()=>[v(S(s.selectedItem.targetName)+" "+S(s.selectedItem.packetName)+" "+S(s.selectedItem.itemName),1)]),_:1}),a(_,{onClick:e[13]||(e[13]=u=>s.editItem=!0)},{prepend:n(()=>[a(c,{icon:"mdi-pencil"})]),default:n(()=>[a(w,null,{default:n(()=>[...e[27]||(e[27]=[v(" Edit ",-1)])]),_:1})]),_:1}),a(_,{onClick:e[14]||(e[14]=u=>l.clearData([s.selectedItem]))},{prepend:n(()=>[a(c,{icon:"mdi-eraser"})]),default:n(()=>[a(w,null,{default:n(()=>[...e[28]||(e[28]=[v(" Clear ",-1)])]),_:1})]),_:1}),a(_,{onClick:e[15]||(e[15]=u=>l.removeItems([s.selectedItem]))},{prepend:n(()=>[a(c,{icon:"mdi-delete"})]),default:n(()=>[a(w,null,{default:n(()=>[...e[29]||(e[29]=[v(" Delete ",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue","target"])):k("",!0),s.legendMenu?(f(),x(R,{key:4,modelValue:s.legendMenu,"onUpdate:modelValue":e[21]||(e[21]=u=>s.legendMenu=u),target:[s.legendMenuX,s.legendMenuY],absolute:""},{default:n(()=>[a(L,null,{default:n(()=>[a(_,{onClick:e[17]||(e[17]=u=>l.moveLegend("top"))},{default:n(()=>[a(w,{style:{cursor:"pointer"}},{default:n(()=>[...e[30]||(e[30]=[v(" Legend Top ",-1)])]),_:1})]),_:1}),a(_,{onClick:e[18]||(e[18]=u=>l.moveLegend("bottom"))},{default:n(()=>[a(w,{style:{cursor:"pointer"}},{default:n(()=>[...e[31]||(e[31]=[v(" Legend Bottom ",-1)])]),_:1})]),_:1}),a(_,{onClick:e[19]||(e[19]=u=>l.moveLegend("left"))},{default:n(()=>[a(w,{style:{cursor:"pointer"}},{default:n(()=>[...e[32]||(e[32]=[v(" Legend Left ",-1)])]),_:1})]),_:1}),a(_,{onClick:e[20]||(e[20]=u=>l.moveLegend("right"))},{default:n(()=>[a(w,{style:{cursor:"pointer"}},{default:n(()=>[...e[33]||(e[33]=[v(" Legend Right ",-1)])]),_:1})]),_:1}),a(Q),a(_,{onClick:l.legendHide},{default:n(()=>[a(w,{style:{cursor:"pointer"}},{default:n(()=>[...e[34]||(e[34]=[v(" Hide Legend ",-1)])]),_:1})]),_:1},8,["onClick"])]),_:1})]),_:1},8,["modelValue","target"])):k("",!0),i.sparkline?k("",!0):(f(),C("div",Le,[a(N,{text:"Click item to toggle, Right click to edit",location:"top"},{activator:n(({props:u})=>[a(c,re(oe(u)),{default:n(()=>[...e[35]||(e[35]=[v(" mdi-information-variant-circle ",-1)])]),_:1},16)]),_:1})],512))])}const $e=ce("H",E(Ee,[["render",Re],["__scopeId","data-v-49310553"]]))})}}));
|