openc3-cosmos-tool-cmdtlmserver 6.9.1 → 6.10.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/cmdtlmserver/{ArrayWidget-DLfNWDzN-668cf74ee813dc5f8b4e.js → ArrayWidget-DQRQ7dPa-32b61d76530621722572.js} +2 -2
- data/tools/cmdtlmserver/{ArrayplotWidget-CoRsUxHG-cf7fff88417fb2243c3d.js → ArrayplotWidget-BeSfz3MR-7a56b97ea5bbac39037a.js} +1 -1
- data/tools/cmdtlmserver/{BarColumn-DHP-zQ4R-8f7de54e6fbaa25e4ec4.js → BarColumn-BdIaQfOz-c7830367e783872ea1ce.js} +1 -1
- data/tools/cmdtlmserver/{BlockWidget-BmHSFvOq-7972fe8dc7ee035e8bc5.js → BlockWidget-DSFKrUxl-95339dcf2952b370f163.js} +2 -2
- data/tools/cmdtlmserver/{ButtonWidget-C3ZWRjZZ-d4f10adaa4d980be147b.js → ButtonWidget-CFbjdxSr-bef39130626037620706.js} +2 -2
- data/tools/cmdtlmserver/{CanvasWidget-CL-XzPF4-5cb52c70d0a7623af62d.js → CanvasWidget-BloYxuKE-80969a9c374686934749.js} +1 -1
- data/tools/cmdtlmserver/{CanvasdotWidget-D8Y9DgVE-d4ce1b672cfd13141a61.js → CanvasdotWidget-CZxUOPRd-3a3d48ea53fa059e8f32.js} +1 -1
- data/tools/cmdtlmserver/{CanvasimageWidget-DHSGK_tD-b0b463aa2a7854867228.js → CanvasimageWidget-ULQq3nqZ-909bb80515b48d2e71dc.js} +1 -1
- data/tools/cmdtlmserver/{CanvasimagevalueWidget-Btt_fQfC-9bad1ce95b773296304d.js → CanvasimagevalueWidget-jFCVXYhi-5575222a4323c7485dc4.js} +1 -1
- data/tools/cmdtlmserver/{CanvaslabelWidget-BF_8RTjv-cc491567aedeb0a05962.js → CanvaslabelWidget-DQhBI1vZ-d87b11e9b31556dd29db.js} +1 -1
- data/tools/cmdtlmserver/{CanvaslabelvalueWidget-scbwaujI-921ddd08e78e6a07a01e.js → CanvaslabelvalueWidget-C4REgztL-45da328b78c6bf4b4308.js} +1 -1
- data/tools/cmdtlmserver/CanvaslineWidget-S4PCEvZM-28dcb953f20bd7cb4647.js +1 -0
- data/tools/cmdtlmserver/{CanvaslinevalueWidget-CljziRek-55c5928bcdef9cd5c3e1.js → CanvaslinevalueWidget-597khOSA-c652e625ca97dc92da79.js} +1 -1
- data/tools/cmdtlmserver/CheckbuttonWidget-BcblKat3-565f8ee1b897988e4048.js +1 -0
- data/tools/cmdtlmserver/{CmdPacketsTab-2fc1a07bfa4480ac1f08.js → CmdPacketsTab-3bf324378cc5053fae84.js} +1 -1
- data/tools/cmdtlmserver/CmdTlmServer-be8d10fa10641805ff41.js +2 -0
- data/tools/cmdtlmserver/{ComboboxWidget-BLXNYFiY-13a3fa2f54e442f31472.js → ComboboxWidget-BMcHS4g5-f4681e5e15d49b1cba4a.js} +1 -1
- data/tools/cmdtlmserver/{DataFlowsTab-d5417860ccc3925137e9.js → DataFlowsTab-c0d1d592eaacc73a8f92.js} +1 -1
- data/tools/cmdtlmserver/{DateWidget-BTqLCtLS-8daf3620df3f82d93460.js → DateWidget-BpnMzSBn-ea6f5f41e4d0dbc4b7ce.js} +1 -1
- data/tools/cmdtlmserver/DetailsDialog-q9piPmHq-1def7fd6a368b27b09aa.js +1 -0
- data/tools/cmdtlmserver/{DynamicWidget-CfMtj7H8-c6963e567e7e1f83eb47.js → DynamicWidget-DHL7pbgW-14b18524247f48271cbe.js} +1 -1
- data/tools/cmdtlmserver/{FormatvalueWidget-CLYx8qbg-a8b84f8338259639bf3e.js → FormatvalueWidget-Cm-HmAmw-1d77547c65f83327b6c3.js} +1 -1
- data/tools/cmdtlmserver/Graph-BEodMaxQ-b8114e2d242d3a9fe54f.js +1 -0
- data/tools/cmdtlmserver/{GraphWidget-Cb6Ozf54-9a6662f6a20837d0632e.js → GraphWidget-CAADBFV--248abfce9cccc4fe88df.js} +1 -1
- data/tools/cmdtlmserver/{HorizontalWidget-AY2M01qP-2edc328bb61ab1d8c352.js → HorizontalWidget-NcXIXxh7-e8667359d77d3e87a063.js} +1 -1
- data/tools/cmdtlmserver/{HorizontalboxWidget-2MEKvq_C-5f3d5a6c63938edc7e25.js → HorizontalboxWidget-CW9XX4uH-371c9dbe917b9ab51374.js} +1 -1
- data/tools/cmdtlmserver/HorizontallineWidget-Cu2dDt7k-5245e229a85767e68094.js +1 -0
- data/tools/cmdtlmserver/{IframeWidget-UKKUl7k5-d952d6f2121f46bd5cd1.js → IframeWidget-BBU3MkSq-f0490f3eef79e1a0521b.js} +1 -1
- data/tools/cmdtlmserver/{ImageLoader-C-CIL4YD-5c9f041325968056ecee.js → ImageLoader-XAGgjKkq-e7c973572e5e4bb6f563.js} +1 -1
- data/tools/cmdtlmserver/{ImageviewerWidget-DhuQH5Io-3ffa4eba2d5ec7fab561.js → ImageviewerWidget-UByjeO63-afef74a37a42e2dc3a28.js} +1 -1
- data/tools/cmdtlmserver/InterfaceFlowChart-ce0b0842d428f141fb10.js +27 -0
- data/tools/cmdtlmserver/{InterfacesTab-c4826fb489e9ede4a629.js → InterfacesTab-98c7f6a0c9ab234a78f3.js} +1 -1
- data/tools/cmdtlmserver/{LabelWidget-SO9zqcNN-ad11c9cf1f60a49a2e18.js → LabelWidget-BsOpolUL-e57548068be4d8479e60.js} +1 -1
- data/tools/cmdtlmserver/LabelledWidget-DVOGpgZ--e24a9c2bd02eb2608420.js +1 -0
- data/tools/cmdtlmserver/LabelprogressbarWidget-BeE9fDs6-36d8ae7b5fba888b1c23.js +1 -0
- data/tools/cmdtlmserver/{LabelsparklineWidget-DO0T-Jot-1037dec1f749b07920ed.js → LabelsparklineWidget-Bj7trKML-5788b21256972ec598a6.js} +1 -1
- data/tools/cmdtlmserver/{LabelvalueWidget-B6BbNFnk-841a2d1e10f7ed6c758b.js → LabelvalueWidget-Dwqsh5o2-cd58afc0c6f83ccb71d3.js} +1 -1
- data/tools/cmdtlmserver/{LabelvaluedescWidget-CxfL-H9C-8070d7b77c88031486ce.js → LabelvaluedescWidget-Cfu2vuja-9f4695dbb5f6455fcf9b.js} +1 -1
- data/tools/cmdtlmserver/LabelvaluelimitsbarWidget-DYV68AJ_-ee78838496e699dea39b.js +1 -0
- data/tools/cmdtlmserver/LabelvaluelimitscolumnWidget-CtaoTixt-2c576192ec2b1596659b.js +1 -0
- data/tools/cmdtlmserver/{LabelvaluerangebarWidget-DexAc2UB-93c700592d4adb69c24f.js → LabelvaluerangebarWidget-3EaUB6E6-6aba4287a9719284f8dc.js} +1 -1
- data/tools/cmdtlmserver/{Layout-Dd6dRf3R-5d9525589ebd67d04af3.js → Layout-DNR3xnku-34141297d190f14e00e4.js} +1 -1
- data/tools/cmdtlmserver/{LedWidget-D1RwHb_V-e70a453d62de53fc4cc4.js → LedWidget-Gi6GXtrW-d33481b5c5d4329c398b.js} +1 -1
- data/tools/cmdtlmserver/{LimitsbarWidget-ClOmoV50-32e4687296483925ef45.js → LimitsbarWidget-BTZQY9XQ-c70d78a09c0a452573b2.js} +1 -1
- data/tools/cmdtlmserver/{LimitscolorWidget-CBUoEYKp-2eda2f669a46488e8a70.js → LimitscolorWidget-CFnmvlrA-5c50083fd95f86412d31.js} +1 -1
- data/tools/cmdtlmserver/{LimitscolumnWidget-hsHkmY-_-dfe985da8cb1e4fb8f44.js → LimitscolumnWidget-DSsz36tT-dea3480aa38760f9cdee.js} +1 -1
- data/tools/cmdtlmserver/LinegraphWidget-CeBijgDo-67fd1624529512322762.js +1 -0
- data/tools/cmdtlmserver/MatrixbycolumnsWidget-DX9uhjAv-b6dc305f5b8dd8ca4892.js +1 -0
- data/tools/cmdtlmserver/{ProgressbarWidget-CO6CEkxP-c039479ecf62eded7ca5.js → ProgressbarWidget-DJepvOip-b11c1ddffdff5dd4c10a.js} +1 -1
- data/tools/cmdtlmserver/{RadiobuttonWidget-DrxUclws-bf048676c97fbc5f15f9.js → RadiobuttonWidget-4e8ROIfg-0c8a9e6bfba2f4950058.js} +1 -1
- data/tools/cmdtlmserver/{RadiogroupWidget-DN9C38cg-d3e6f1038a6500acab63.js → RadiogroupWidget-CUucj6aT-78de49e21a6b13024b64.js} +1 -1
- data/tools/cmdtlmserver/{RangebarWidget-5uQTfLMP-fbf20be901d74457c1e3.js → RangebarWidget-Bu4rqlrx-2c346709f4b1b35d3774.js} +1 -1
- data/tools/cmdtlmserver/{RawBuffer-297eb45db5fd466515cf.js → RawBuffer-cccb79b877d7a7d027ae.js} +1 -1
- data/tools/cmdtlmserver/{RawDialog-4bd995f9b817bead62bc.js → RawDialog-ceb6e42c59fe0adfb1ef.js} +1 -1
- data/tools/cmdtlmserver/{RollupWidget-B0DCULnu-c1c8709da1baf6ebd6ee.js → RollupWidget-ByLvEEau-bf925f6491999bd4dd94.js} +1 -1
- data/tools/cmdtlmserver/{RoutersTab-5b98f50d4e2f63f9dd35.js → RoutersTab-68c87e2a36e938ef4b17.js} +1 -1
- data/tools/cmdtlmserver/ScrollwindowWidget-CXJ9QGN1-1a026ea64f3ac2ef355e.js +1 -0
- data/tools/cmdtlmserver/{SignalWidget-Cis0Xkea-d93e29d8a24c7fa83262.js → SignalWidget-qvL2YZJA-93a70bc899dfbbbe9453.js} +1 -1
- data/tools/cmdtlmserver/{SpacerWidget-CLcqC2Qk-5a2784ed86deeb186b04.js → SpacerWidget-CaWx41K7-24a22551304012ee55af.js} +1 -1
- data/tools/cmdtlmserver/{SparklineWidget-CTp83eZ--d8923fe24ad5454672ea.js → SparklineWidget-BkNSRypJ-d51121cdc8b3170fd1f1.js} +1 -1
- data/tools/cmdtlmserver/{StatusTab-f0d97741c9b81165be4d.js → StatusTab-7052917fd7fe7f14ac5e.js} +1 -1
- data/tools/cmdtlmserver/TabbookWidget-MsrRG1vn-943cbf258dc72cdee84f.js +1 -0
- data/tools/cmdtlmserver/{TargetsTab-e73932f8e410c019a7fb.js → TargetsTab-47a9d296026df09b1a89.js} +1 -1
- data/tools/cmdtlmserver/TextboxWidget-DbwpPVGB-89ca76b61eaea0e8435c.js +1 -0
- data/tools/cmdtlmserver/TextfieldWidget-DzMlTMYW-6f16bba1dca9d85b5427.js +1 -0
- data/tools/cmdtlmserver/{TimeWidget-CPNVZaUM-5c584984fa282cb34f7d.js → TimeWidget-BHybAfg8-2a3fdda019ac11ba0234.js} +1 -1
- data/tools/cmdtlmserver/TitleWidget-DL_sE5YE-58d46477f1bd2375c0ca.js +1 -0
- data/tools/cmdtlmserver/{TlmPacketsTab-e3cc489a1a75be3ad163.js → TlmPacketsTab-21f2ae12b6b1065ef51d.js} +1 -1
- data/tools/cmdtlmserver/{Updater-837ca86e536f4a3bdfa3.js → Updater-71ca8068ee5f6c21c44c.js} +1 -1
- data/tools/cmdtlmserver/VWidget-D06LY-Yc-a61e456754f3a2974de1.js +1 -0
- data/tools/cmdtlmserver/{ValueWidget-Bk1RFjks-bafe9d75ed0ad230977c.js → ValueWidget-CGT0LV_n-36237e7706445829a3cc.js} +1 -1
- data/tools/cmdtlmserver/ValuelimitsbarWidget-CmpyPO-1-cd558bce07411aa7ed8c.js +1 -0
- data/tools/cmdtlmserver/{ValuelimitscolumnWidget-BTT90uyX-9f2d92c01237bf9eac93.js → ValuelimitscolumnWidget-jzxrQd-f-c6a0c020716b66d054b7.js} +1 -1
- data/tools/cmdtlmserver/{ValuerangebarWidget-CcQw_XK9-cf89ccb88ad449e8cbae.js → ValuerangebarWidget-C8ckuAeh-bf46dfa98828cc5d9e02.js} +1 -1
- data/tools/cmdtlmserver/{VerticalWidget-CNtFQv3R-f4938160b8ca4f6f8e29.js → VerticalWidget-qN82km_m-4a2d46bca6228142ff35.js} +1 -1
- data/tools/cmdtlmserver/VerticalboxWidget-CiJZDlHJ-d3ab89f5451eb45157f0.js +1 -0
- data/tools/cmdtlmserver/{Widget-LsyjS7ZS-cdba91229220d626542a.js → Widget-DXvVFSH5-a1f2327db30cd8726e79.js} +1 -1
- data/tools/cmdtlmserver/main-14f121a4ebc6fc306ca1.js +1505 -0
- data/tools/cmdtlmserver/main.js +1 -1
- data/tools/cmdtlmserver/services-44f970948da944fde95a.js +7 -0
- metadata +80 -80
- data/tools/cmdtlmserver/CanvaslineWidget-gRvm_-TT-3f553128be52acccf4b4.js +0 -1
- data/tools/cmdtlmserver/CheckbuttonWidget-BOabI_jE-7719358d066394c0e656.js +0 -1
- data/tools/cmdtlmserver/CmdTlmServer-8583a13b294ed4f3cb46.js +0 -2
- data/tools/cmdtlmserver/DetailsDialog-BNCS3QAe-321aef533102379472dd.js +0 -1
- data/tools/cmdtlmserver/Graph-BliBYJxD-4840ff23f489551cb5c6.js +0 -1
- data/tools/cmdtlmserver/HorizontallineWidget-DgpOPA7q-4d2f373e68599c0b3c9a.js +0 -1
- data/tools/cmdtlmserver/InterfaceFlowChart-cf8e7ac29846b6274daf.js +0 -27
- data/tools/cmdtlmserver/LabelledWidget-DWoM5AJ5-5be5b0fc4b1d554cd2c9.js +0 -1
- data/tools/cmdtlmserver/LabelprogressbarWidget-D3vnkvQZ-ecdff8119d3acede9267.js +0 -1
- data/tools/cmdtlmserver/LabelvaluelimitsbarWidget-BT5k9mHv-5ae949fa461b8d83a90b.js +0 -1
- data/tools/cmdtlmserver/LabelvaluelimitscolumnWidget-DUbmxh4p-83f93e14d0e7f5d6567d.js +0 -1
- data/tools/cmdtlmserver/LinegraphWidget-CXrKtxOo-b32b5ac365e8b55b70b1.js +0 -1
- data/tools/cmdtlmserver/MatrixbycolumnsWidget-CsogVU9c-10fd32777925d9442a96.js +0 -1
- data/tools/cmdtlmserver/ScrollwindowWidget-BOkZQgtf-e6cc33bc849eb8d7bd65.js +0 -1
- data/tools/cmdtlmserver/TabbookWidget-uucd-zsX-9ca00b138ad0410a395d.js +0 -1
- data/tools/cmdtlmserver/TextboxWidget-C2n38ti5-c9817307d1c09190a5a7.js +0 -1
- data/tools/cmdtlmserver/TextfieldWidget--HTv9ddk-68f02460d9d011823773.js +0 -1
- data/tools/cmdtlmserver/TitleWidget-Cp0cb6V8-f81d2e0d0b8018f28841.js +0 -1
- data/tools/cmdtlmserver/VWidget-DQGJRgAk-5116c4895c75eb64bc95.js +0 -1
- data/tools/cmdtlmserver/ValuelimitsbarWidget-C0HIBYh2-f90d82733623ccfbbb25.js +0 -1
- data/tools/cmdtlmserver/VerticalboxWidget-Yxmz1SnU-e3f9ebb22e5e4d61a3ad.js +0 -1
- data/tools/cmdtlmserver/main-65cfe3c3762daf491069.js +0 -1505
- data/tools/cmdtlmserver/services-eb1403f6c88517815ca2.js +0 -7
data/tools/cmdtlmserver/main.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["vue","./main-
|
|
1
|
+
System.register(["vue","./main-14f121a4ebc6fc306ca1.js","vue-router","single-spa","vuex","vuetify"],function(t,e){"use strict";return{setters:[null,u=>{t({bootstrap:u.b,mount:u.m,unmount:u.u})},null,null,null,null],execute:function(){}}});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
System.register([],function(Te,Gn){"use strict";return{execute:function(){var nr=Object.defineProperty,ir=(t,e,r)=>e in t?nr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,he=(t,e,r)=>ir(t,typeof e!="symbol"?e+"":e,r);function Qe(t,e){return function(){return t.apply(e,arguments)}}const{toString:or}=Object.prototype,{getPrototypeOf:ke}=Object,{iterator:de,toStringTag:Ye}=Symbol,fe=(t=>e=>{const r=or.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),N=t=>(t=t.toLowerCase(),e=>fe(e)===t),pe=t=>e=>typeof e===t,{isArray:G}=Array,Z=pe("undefined");function re(t){return t!==null&&!Z(t)&&t.constructor!==null&&!Z(t.constructor)&&A(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const et=N("ArrayBuffer");function cr(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&et(t.buffer),e}const ar=pe("string"),A=pe("function"),tt=pe("number"),se=t=>t!==null&&typeof t=="object",lr=t=>t===!0||t===!1,ge=t=>{if(fe(t)!=="object")return!1;const e=ke(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Ye in t)&&!(de in t)},ur=t=>{if(!se(t)||re(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch{return!1}},hr=N("Date"),dr=N("File"),fr=N("Blob"),pr=N("FileList"),gr=t=>se(t)&&A(t.pipe),mr=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||A(t.append)&&((e=fe(t))==="formdata"||e==="object"&&A(t.toString)&&t.toString()==="[object FormData]"))},br=N("URLSearchParams"),[_r,yr,wr,vr]=["ReadableStream","Request","Response","Headers"].map(N),Sr=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ne(t,e,{allOwnKeys:r=!1}={}){if(t===null||typeof t>"u")return;let s,n;if(typeof t!="object"&&(t=[t]),G(t))for(s=0,n=t.length;s<n;s++)e.call(null,t[s],s,t);else{if(re(t))return;const o=r?Object.getOwnPropertyNames(t):Object.keys(t),i=o.length;let c;for(s=0;s<i;s++)c=o[s],e.call(null,t[c],c,t)}}function rt(t,e){if(re(t))return null;e=e.toLowerCase();const r=Object.keys(t);let s=r.length,n;for(;s-- >0;)if(n=r[s],e===n.toLowerCase())return n;return null}const J=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,st=t=>!Z(t)&&t!==J;function je(){const{caseless:t,skipUndefined:e}=st(this)&&this||{},r={},s=(n,o)=>{const i=t&&rt(r,o)||o;ge(r[i])&&ge(n)?r[i]=je(r[i],n):ge(n)?r[i]=je({},n):G(n)?r[i]=n.slice():(!e||!Z(n))&&(r[i]=n)};for(let n=0,o=arguments.length;n<o;n++)arguments[n]&&ne(arguments[n],s);return r}const Er=(t,e,r,{allOwnKeys:s}={})=>(ne(e,(n,o)=>{r&&A(n)?t[o]=Qe(n,r):t[o]=n},{allOwnKeys:s}),t),xr=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),Or=(t,e,r,s)=>{t.prototype=Object.create(e.prototype,s),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),r&&Object.assign(t.prototype,r)},Rr=(t,e,r,s)=>{let n,o,i;const c={};if(e=e||{},t==null)return e;do{for(n=Object.getOwnPropertyNames(t),o=n.length;o-- >0;)i=n[o],(!s||s(i,t,e))&&!c[i]&&(e[i]=t[i],c[i]=!0);t=r!==!1&&ke(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},Ar=(t,e,r)=>{t=String(t),(r===void 0||r>t.length)&&(r=t.length),r-=e.length;const s=t.indexOf(e,r);return s!==-1&&s===r},Cr=t=>{if(!t)return null;if(G(t))return t;let e=t.length;if(!tt(e))return null;const r=new Array(e);for(;e-- >0;)r[e]=t[e];return r},Tr=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&ke(Uint8Array)),kr=(t,e)=>{const r=(t&&t[de]).call(t);let s;for(;(s=r.next())&&!s.done;){const n=s.value;e.call(t,n[0],n[1])}},jr=(t,e)=>{let r;const s=[];for(;(r=t.exec(e))!==null;)s.push(r);return s},Pr=N("HTMLFormElement"),Ir=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(e,r,s){return r.toUpperCase()+s}),nt=(({hasOwnProperty:t})=>(e,r)=>t.call(e,r))(Object.prototype),Nr=N("RegExp"),it=(t,e)=>{const r=Object.getOwnPropertyDescriptors(t),s={};ne(r,(n,o)=>{let i;(i=e(n,o,t))!==!1&&(s[o]=i||n)}),Object.defineProperties(t,s)},Ur=t=>{it(t,(e,r)=>{if(A(t)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const s=t[r];if(A(s)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},Lr=(t,e)=>{const r={},s=n=>{n.forEach(o=>{r[o]=!0})};return G(t)?s(t):s(String(t).split(e)),r},Fr=()=>{},$r=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function qr(t){return!!(t&&A(t.append)&&t[Ye]==="FormData"&&t[de])}const Dr=t=>{const e=new Array(10),r=(s,n)=>{if(se(s)){if(e.indexOf(s)>=0)return;if(re(s))return s;if(!("toJSON"in s)){e[n]=s;const o=G(s)?[]:{};return ne(s,(i,c)=>{const l=r(i,n+1);!Z(l)&&(o[c]=l)}),e[n]=void 0,o}}return s};return r(t,0)},Br=N("AsyncFunction"),Mr=t=>t&&(se(t)||A(t))&&A(t.then)&&A(t.catch),ot=((t,e)=>t?setImmediate:e?((r,s)=>(J.addEventListener("message",({source:n,data:o})=>{n===J&&o===r&&s.length&&s.shift()()},!1),n=>{s.push(n),J.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",A(J.postMessage)),zr=typeof queueMicrotask<"u"?queueMicrotask.bind(J):typeof process<"u"&&process.nextTick||ot,Jr=t=>t!=null&&A(t[de]),a={isArray:G,isArrayBuffer:et,isBuffer:re,isFormData:mr,isArrayBufferView:cr,isString:ar,isNumber:tt,isBoolean:lr,isObject:se,isPlainObject:ge,isEmptyObject:ur,isReadableStream:_r,isRequest:yr,isResponse:wr,isHeaders:vr,isUndefined:Z,isDate:hr,isFile:dr,isBlob:fr,isRegExp:Nr,isFunction:A,isStream:gr,isURLSearchParams:br,isTypedArray:Tr,isFileList:pr,forEach:ne,merge:je,extend:Er,trim:Sr,stripBOM:xr,inherits:Or,toFlatObject:Rr,kindOf:fe,kindOfTest:N,endsWith:Ar,toArray:Cr,forEachEntry:kr,matchAll:jr,isHTMLForm:Pr,hasOwnProperty:nt,hasOwnProp:nt,reduceDescriptors:it,freezeMethods:Ur,toObjectSet:Lr,toCamelCase:Ir,noop:Fr,toFiniteNumber:$r,findKey:rt,global:J,isContextDefined:st,isSpecCompliantForm:qr,toJSONObject:Dr,isAsyncFn:Br,isThenable:Mr,setImmediate:ot,asap:zr,isIterable:Jr};function _(t,e,r,s,n){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),s&&(this.request=s),n&&(this.response=n,this.status=n.status?n.status:null)}a.inherits(_,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:a.toJSONObject(this.config),code:this.code,status:this.status}}});const ct=_.prototype,at={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{at[t]={value:t}}),Object.defineProperties(_,at),Object.defineProperty(ct,"isAxiosError",{value:!0}),_.from=(t,e,r,s,n,o)=>{const i=Object.create(ct);a.toFlatObject(t,i,function(u){return u!==Error.prototype},u=>u!=="isAxiosError");const c=t&&t.message?t.message:"Error",l=e==null&&t?t.code:e;return _.call(i,c,l,r,s,n),t&&i.cause==null&&Object.defineProperty(i,"cause",{value:t,configurable:!0}),i.name=t&&t.name||"Error",o&&Object.assign(i,o),i};const Wr=null;function Pe(t){return a.isPlainObject(t)||a.isArray(t)}function lt(t){return a.endsWith(t,"[]")?t.slice(0,-2):t}function ut(t,e,r){return t?t.concat(e).map(function(s,n){return s=lt(s),!r&&n?"["+s+"]":s}).join(r?".":""):e}function Hr(t){return a.isArray(t)&&!t.some(Pe)}const Vr=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function me(t,e,r){if(!a.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,r=a.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(f,p){return!a.isUndefined(p[f])});const s=r.metaTokens,n=r.visitor||u,o=r.dots,i=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(e);if(!a.isFunction(n))throw new TypeError("visitor must be a function");function l(f){if(f===null)return"";if(a.isDate(f))return f.toISOString();if(a.isBoolean(f))return f.toString();if(!c&&a.isBlob(f))throw new _("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(f)||a.isTypedArray(f)?c&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function u(f,p,d){let v=f;if(f&&!d&&typeof f=="object"){if(a.endsWith(p,"{}"))p=s?p:p.slice(0,-2),f=JSON.stringify(f);else if(a.isArray(f)&&Hr(f)||(a.isFileList(f)||a.endsWith(p,"[]"))&&(v=a.toArray(f)))return p=lt(p),v.forEach(function(x,w){!(a.isUndefined(x)||x===null)&&e.append(i===!0?ut([p],w,o):i===null?p:p+"[]",l(x))}),!1}return Pe(f)?!0:(e.append(ut(d,p,o),l(f)),!1)}const h=[],g=Object.assign(Vr,{defaultVisitor:u,convertValue:l,isVisitable:Pe});function m(f,p){if(!a.isUndefined(f)){if(h.indexOf(f)!==-1)throw Error("Circular reference detected in "+p.join("."));h.push(f),a.forEach(f,function(d,v){(!(a.isUndefined(d)||d===null)&&n.call(e,d,a.isString(v)?v.trim():v,p,g))===!0&&m(d,p?p.concat(v):[v])}),h.pop()}}if(!a.isObject(t))throw new TypeError("data must be an object");return m(t),e}function ht(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(r){return e[r]})}function Ie(t,e){this._pairs=[],t&&me(t,this,e)}const dt=Ie.prototype;dt.append=function(t,e){this._pairs.push([t,e])},dt.toString=function(t){const e=t?function(r){return t.call(this,r,ht)}:ht;return this._pairs.map(function(r){return e(r[0])+"="+e(r[1])},"").join("&")};function Kr(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function ft(t,e,r){if(!e)return t;const s=r&&r.encode||Kr;a.isFunction(r)&&(r={serialize:r});const n=r&&r.serialize;let o;if(n?o=n(e,r):o=a.isURLSearchParams(e)?e.toString():new Ie(e,r).toString(s),o){const i=t.indexOf("#");i!==-1&&(t=t.slice(0,i)),t+=(t.indexOf("?")===-1?"?":"&")+o}return t}class pt{constructor(){this.handlers=[]}use(e,r,s){return this.handlers.push({fulfilled:e,rejected:r,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){a.forEach(this.handlers,function(r){r!==null&&e(r)})}}const gt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Xr=typeof URLSearchParams<"u"?URLSearchParams:Ie,Gr=typeof FormData<"u"?FormData:null,Zr=typeof Blob<"u"?Blob:null,Qr={isBrowser:!0,classes:{URLSearchParams:Xr,FormData:Gr,Blob:Zr},protocols:["http","https","file","blob","url","data"]},Ne=typeof window<"u"&&typeof document<"u",Ue=typeof navigator=="object"&&navigator||void 0,Yr=Ne&&(!Ue||["ReactNative","NativeScript","NS"].indexOf(Ue.product)<0),es=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",ts=Ne&&window.location.href||"http://localhost",rs=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Ne,hasStandardBrowserEnv:Yr,hasStandardBrowserWebWorkerEnv:es,navigator:Ue,origin:ts},Symbol.toStringTag,{value:"Module"})),O={...rs,...Qr};function ss(t,e){return me(t,new O.classes.URLSearchParams,{visitor:function(r,s,n,o){return O.isNode&&a.isBuffer(r)?(this.append(s,r.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...e})}function ns(t){return a.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function is(t){const e={},r=Object.keys(t);let s;const n=r.length;let o;for(s=0;s<n;s++)o=r[s],e[o]=t[o];return e}function mt(t){function e(r,s,n,o){let i=r[o++];if(i==="__proto__")return!0;const c=Number.isFinite(+i),l=o>=r.length;return i=!i&&a.isArray(n)?n.length:i,l?(a.hasOwnProp(n,i)?n[i]=[n[i],s]:n[i]=s,!c):((!n[i]||!a.isObject(n[i]))&&(n[i]=[]),e(r,s,n[i],o)&&a.isArray(n[i])&&(n[i]=is(n[i])),!c)}if(a.isFormData(t)&&a.isFunction(t.entries)){const r={};return a.forEachEntry(t,(s,n)=>{e(ns(s),n,r,0)}),r}return null}function os(t,e,r){if(a.isString(t))try{return(e||JSON.parse)(t),a.trim(t)}catch(s){if(s.name!=="SyntaxError")throw s}return(r||JSON.stringify)(t)}const ie={transitional:gt,adapter:["xhr","http","fetch"],transformRequest:[function(t,e){const r=e.getContentType()||"",s=r.indexOf("application/json")>-1,n=a.isObject(t);if(n&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return s?JSON.stringify(mt(t)):t;if(a.isArrayBuffer(t)||a.isBuffer(t)||a.isStream(t)||a.isFile(t)||a.isBlob(t)||a.isReadableStream(t))return t;if(a.isArrayBufferView(t))return t.buffer;if(a.isURLSearchParams(t))return e.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let o;if(n){if(r.indexOf("application/x-www-form-urlencoded")>-1)return ss(t,this.formSerializer).toString();if((o=a.isFileList(t))||r.indexOf("multipart/form-data")>-1){const i=this.env&&this.env.FormData;return me(o?{"files[]":t}:t,i&&new i,this.formSerializer)}}return n||s?(e.setContentType("application/json",!1),os(t)):t}],transformResponse:[function(t){const e=this.transitional||ie.transitional,r=e&&e.forcedJSONParsing,s=this.responseType==="json";if(a.isResponse(t)||a.isReadableStream(t))return t;if(t&&a.isString(t)&&(r&&!this.responseType||s)){const n=!(e&&e.silentJSONParsing)&&s;try{return JSON.parse(t,this.parseReviver)}catch(o){if(n)throw o.name==="SyntaxError"?_.from(o,_.ERR_BAD_RESPONSE,this,null,this.response):o}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:O.classes.FormData,Blob:O.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};a.forEach(["delete","get","head","post","put","patch"],t=>{ie.headers[t]={}});const cs=a.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),as=t=>{const e={};let r,s,n;return t&&t.split(`
|
|
2
|
+
`).forEach(function(o){n=o.indexOf(":"),r=o.substring(0,n).trim().toLowerCase(),s=o.substring(n+1).trim(),!(!r||e[r]&&cs[r])&&(r==="set-cookie"?e[r]?e[r].push(s):e[r]=[s]:e[r]=e[r]?e[r]+", "+s:s)}),e},bt=Symbol("internals");function oe(t){return t&&String(t).trim().toLowerCase()}function be(t){return t===!1||t==null?t:a.isArray(t)?t.map(be):String(t)}function ls(t){const e=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=r.exec(t);)e[s[1]]=s[2];return e}const us=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Le(t,e,r,s,n){if(a.isFunction(s))return s.call(this,e,r);if(n&&(e=r),!!a.isString(e)){if(a.isString(s))return e.indexOf(s)!==-1;if(a.isRegExp(s))return s.test(e)}}function hs(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,s)=>r.toUpperCase()+s)}function ds(t,e){const r=a.toCamelCase(" "+e);["get","set","has"].forEach(s=>{Object.defineProperty(t,s+r,{value:function(n,o,i){return this[s].call(this,e,n,o,i)},configurable:!0})})}let C=class{constructor(t){t&&this.set(t)}set(t,e,r){const s=this;function n(i,c,l){const u=oe(c);if(!u)throw new Error("header name must be a non-empty string");const h=a.findKey(s,u);(!h||s[h]===void 0||l===!0||l===void 0&&s[h]!==!1)&&(s[h||c]=be(i))}const o=(i,c)=>a.forEach(i,(l,u)=>n(l,u,c));if(a.isPlainObject(t)||t instanceof this.constructor)o(t,e);else if(a.isString(t)&&(t=t.trim())&&!us(t))o(as(t),e);else if(a.isObject(t)&&a.isIterable(t)){let i={},c,l;for(const u of t){if(!a.isArray(u))throw TypeError("Object iterator must return a key-value pair");i[l=u[0]]=(c=i[l])?a.isArray(c)?[...c,u[1]]:[c,u[1]]:u[1]}o(i,e)}else t!=null&&n(e,t,r);return this}get(t,e){if(t=oe(t),t){const r=a.findKey(this,t);if(r){const s=this[r];if(!e)return s;if(e===!0)return ls(s);if(a.isFunction(e))return e.call(this,s,r);if(a.isRegExp(e))return e.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,e){if(t=oe(t),t){const r=a.findKey(this,t);return!!(r&&this[r]!==void 0&&(!e||Le(this,this[r],r,e)))}return!1}delete(t,e){const r=this;let s=!1;function n(o){if(o=oe(o),o){const i=a.findKey(r,o);i&&(!e||Le(r,r[i],i,e))&&(delete r[i],s=!0)}}return a.isArray(t)?t.forEach(n):n(t),s}clear(t){const e=Object.keys(this);let r=e.length,s=!1;for(;r--;){const n=e[r];(!t||Le(this,this[n],n,t,!0))&&(delete this[n],s=!0)}return s}normalize(t){const e=this,r={};return a.forEach(this,(s,n)=>{const o=a.findKey(r,n);if(o){e[o]=be(s),delete e[n];return}const i=t?hs(n):String(n).trim();i!==n&&delete e[n],e[i]=be(s),r[i]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const e=Object.create(null);return a.forEach(this,(r,s)=>{r!=null&&r!==!1&&(e[s]=t&&a.isArray(r)?r.join(", "):r)}),e}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,e])=>t+": "+e).join(`
|
|
3
|
+
`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...e){const r=new this(t);return e.forEach(s=>r.set(s)),r}static accessor(t){const e=(this[bt]=this[bt]={accessors:{}}).accessors,r=this.prototype;function s(n){const o=oe(n);e[o]||(ds(r,n),e[o]=!0)}return a.isArray(t)?t.forEach(s):s(t),this}};C.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),a.reduceDescriptors(C.prototype,({value:t},e)=>{let r=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(s){this[r]=s}}}),a.freezeMethods(C);function Fe(t,e){const r=this||ie,s=e||r,n=C.from(s.headers);let o=s.data;return a.forEach(t,function(i){o=i.call(r,o,n.normalize(),e?e.status:void 0)}),n.normalize(),o}function _t(t){return!!(t&&t.__CANCEL__)}function Q(t,e,r){_.call(this,t??"canceled",_.ERR_CANCELED,e,r),this.name="CanceledError"}a.inherits(Q,_,{__CANCEL__:!0});function yt(t,e,r){const s=r.config.validateStatus;!r.status||!s||s(r.status)?t(r):e(new _("Request failed with status code "+r.status,[_.ERR_BAD_REQUEST,_.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function fs(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function ps(t,e){t=t||10;const r=new Array(t),s=new Array(t);let n=0,o=0,i;return e=e!==void 0?e:1e3,function(c){const l=Date.now(),u=s[o];i||(i=l),r[n]=c,s[n]=l;let h=o,g=0;for(;h!==n;)g+=r[h++],h=h%t;if(n=(n+1)%t,n===o&&(o=(o+1)%t),l-i<e)return;const m=u&&l-u;return m?Math.round(g*1e3/m):void 0}}function gs(t,e){let r=0,s=1e3/e,n,o;const i=(c,l=Date.now())=>{r=l,n=null,o&&(clearTimeout(o),o=null),t(...c)};return[(...c)=>{const l=Date.now(),u=l-r;u>=s?i(c,l):(n=c,o||(o=setTimeout(()=>{o=null,i(n)},s-u)))},()=>n&&i(n)]}const _e=(t,e,r=3)=>{let s=0;const n=ps(50,250);return gs(o=>{const i=o.loaded,c=o.lengthComputable?o.total:void 0,l=i-s,u=n(l),h=i<=c;s=i;const g={loaded:i,total:c,progress:c?i/c:void 0,bytes:l,rate:u||void 0,estimated:u&&c&&h?(c-i)/u:void 0,event:o,lengthComputable:c!=null,[e?"download":"upload"]:!0};t(g)},r)},wt=(t,e)=>{const r=t!=null;return[s=>e[0]({lengthComputable:r,total:t,loaded:s}),e[1]]},vt=t=>(...e)=>a.asap(()=>t(...e)),ms=O.hasStandardBrowserEnv?((t,e)=>r=>(r=new URL(r,O.origin),t.protocol===r.protocol&&t.host===r.host&&(e||t.port===r.port)))(new URL(O.origin),O.navigator&&/(msie|trident)/i.test(O.navigator.userAgent)):()=>!0,bs=O.hasStandardBrowserEnv?{write(t,e,r,s,n,o,i){if(typeof document>"u")return;const c=[`${t}=${encodeURIComponent(e)}`];a.isNumber(r)&&c.push(`expires=${new Date(r).toUTCString()}`),a.isString(s)&&c.push(`path=${s}`),a.isString(n)&&c.push(`domain=${n}`),o===!0&&c.push("secure"),a.isString(i)&&c.push(`SameSite=${i}`),document.cookie=c.join("; ")},read(t){if(typeof document>"u")return null;const e=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function _s(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function ys(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function St(t,e,r){let s=!_s(e);return t&&(s||r==!1)?ys(t,e):e}const Et=t=>t instanceof C?{...t}:t;function W(t,e){e=e||{};const r={};function s(u,h,g,m){return a.isPlainObject(u)&&a.isPlainObject(h)?a.merge.call({caseless:m},u,h):a.isPlainObject(h)?a.merge({},h):a.isArray(h)?h.slice():h}function n(u,h,g,m){if(a.isUndefined(h)){if(!a.isUndefined(u))return s(void 0,u,g,m)}else return s(u,h,g,m)}function o(u,h){if(!a.isUndefined(h))return s(void 0,h)}function i(u,h){if(a.isUndefined(h)){if(!a.isUndefined(u))return s(void 0,u)}else return s(void 0,h)}function c(u,h,g){if(g in e)return s(u,h);if(g in t)return s(void 0,u)}const l={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:c,headers:(u,h,g)=>n(Et(u),Et(h),g,!0)};return a.forEach(Object.keys({...t,...e}),function(u){const h=l[u]||n,g=h(t[u],e[u],u);a.isUndefined(g)&&h!==c||(r[u]=g)}),r}const xt=t=>{const e=W({},t);let{data:r,withXSRFToken:s,xsrfHeaderName:n,xsrfCookieName:o,headers:i,auth:c}=e;if(e.headers=i=C.from(i),e.url=ft(St(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),c&&i.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),a.isFormData(r)){if(O.hasStandardBrowserEnv||O.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if(a.isFunction(r.getHeaders)){const l=r.getHeaders(),u=["content-type","content-length"];Object.entries(l).forEach(([h,g])=>{u.includes(h.toLowerCase())&&i.set(h,g)})}}if(O.hasStandardBrowserEnv&&(s&&a.isFunction(s)&&(s=s(e)),s||s!==!1&&ms(e.url))){const l=n&&o&&bs.read(o);l&&i.set(n,l)}return e},ws=typeof XMLHttpRequest<"u",vs=ws&&function(t){return new Promise(function(e,r){const s=xt(t);let n=s.data;const o=C.from(s.headers).normalize();let{responseType:i,onUploadProgress:c,onDownloadProgress:l}=s,u,h,g,m,f;function p(){m&&m(),f&&f(),s.cancelToken&&s.cancelToken.unsubscribe(u),s.signal&&s.signal.removeEventListener("abort",u)}let d=new XMLHttpRequest;d.open(s.method.toUpperCase(),s.url,!0),d.timeout=s.timeout;function v(){if(!d)return;const w=C.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),R={data:!i||i==="text"||i==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:w,config:t,request:d};yt(function(T){e(T),p()},function(T){r(T),p()},R),d=null}"onloadend"in d?d.onloadend=v:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(v)},d.onabort=function(){d&&(r(new _("Request aborted",_.ECONNABORTED,t,d)),d=null)},d.onerror=function(w){const R=w&&w.message?w.message:"Network Error",T=new _(R,_.ERR_NETWORK,t,d);T.event=w||null,r(T),d=null},d.ontimeout=function(){let w=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const R=s.transitional||gt;s.timeoutErrorMessage&&(w=s.timeoutErrorMessage),r(new _(w,R.clarifyTimeoutError?_.ETIMEDOUT:_.ECONNABORTED,t,d)),d=null},n===void 0&&o.setContentType(null),"setRequestHeader"in d&&a.forEach(o.toJSON(),function(w,R){d.setRequestHeader(R,w)}),a.isUndefined(s.withCredentials)||(d.withCredentials=!!s.withCredentials),i&&i!=="json"&&(d.responseType=s.responseType),l&&([g,f]=_e(l,!0),d.addEventListener("progress",g)),c&&d.upload&&([h,m]=_e(c),d.upload.addEventListener("progress",h),d.upload.addEventListener("loadend",m)),(s.cancelToken||s.signal)&&(u=w=>{d&&(r(!w||w.type?new Q(null,t,d):w),d.abort(),d=null)},s.cancelToken&&s.cancelToken.subscribe(u),s.signal&&(s.signal.aborted?u():s.signal.addEventListener("abort",u)));const x=fs(s.url);if(x&&O.protocols.indexOf(x)===-1){r(new _("Unsupported protocol "+x+":",_.ERR_BAD_REQUEST,t));return}d.send(n||null)})},Ss=(t,e)=>{const{length:r}=t=t?t.filter(Boolean):[];if(e||r){let s=new AbortController,n;const o=function(u){if(!n){n=!0,c();const h=u instanceof Error?u:this.reason;s.abort(h instanceof _?h:new Q(h instanceof Error?h.message:h))}};let i=e&&setTimeout(()=>{i=null,o(new _(`timeout ${e} of ms exceeded`,_.ETIMEDOUT))},e);const c=()=>{t&&(i&&clearTimeout(i),i=null,t.forEach(u=>{u.unsubscribe?u.unsubscribe(o):u.removeEventListener("abort",o)}),t=null)};t.forEach(u=>u.addEventListener("abort",o));const{signal:l}=s;return l.unsubscribe=()=>a.asap(c),l}},Es=function*(t,e){let r=t.byteLength;if(r<e){yield t;return}let s=0,n;for(;s<r;)n=s+e,yield t.slice(s,n),s=n},xs=async function*(t,e){for await(const r of Os(t))yield*Es(r,e)},Os=async function*(t){if(t[Symbol.asyncIterator]){yield*t;return}const e=t.getReader();try{for(;;){const{done:r,value:s}=await e.read();if(r)break;yield s}}finally{await e.cancel()}},Ot=(t,e,r,s)=>{const n=xs(t,e);let o=0,i,c=l=>{i||(i=!0,s&&s(l))};return new ReadableStream({async pull(l){try{const{done:u,value:h}=await n.next();if(u){c(),l.close();return}let g=h.byteLength;if(r){let m=o+=g;r(m)}l.enqueue(new Uint8Array(h))}catch(u){throw c(u),u}},cancel(l){return c(l),n.return()}},{highWaterMark:2})},Rt=64*1024,{isFunction:ye}=a,Rs=(({Request:t,Response:e})=>({Request:t,Response:e}))(a.global),{ReadableStream:At,TextEncoder:Ct}=a.global,Tt=(t,...e)=>{try{return!!t(...e)}catch{return!1}},As=t=>{t=a.merge.call({skipUndefined:!0},Rs,t);const{fetch:e,Request:r,Response:s}=t,n=e?ye(e):typeof fetch=="function",o=ye(r),i=ye(s);if(!n)return!1;const c=n&&ye(At),l=n&&(typeof Ct=="function"?(p=>d=>p.encode(d))(new Ct):async p=>new Uint8Array(await new r(p).arrayBuffer())),u=o&&c&&Tt(()=>{let p=!1;const d=new r(O.origin,{body:new At,method:"POST",get duplex(){return p=!0,"half"}}).headers.has("Content-Type");return p&&!d}),h=i&&c&&Tt(()=>a.isReadableStream(new s("").body)),g={stream:h&&(p=>p.body)};n&&["text","arrayBuffer","blob","formData","stream"].forEach(p=>{!g[p]&&(g[p]=(d,v)=>{let x=d&&d[p];if(x)return x.call(d);throw new _(`Response type '${p}' is not supported`,_.ERR_NOT_SUPPORT,v)})});const m=async p=>{if(p==null)return 0;if(a.isBlob(p))return p.size;if(a.isSpecCompliantForm(p))return(await new r(O.origin,{method:"POST",body:p}).arrayBuffer()).byteLength;if(a.isArrayBufferView(p)||a.isArrayBuffer(p))return p.byteLength;if(a.isURLSearchParams(p)&&(p=p+""),a.isString(p))return(await l(p)).byteLength},f=async(p,d)=>a.toFiniteNumber(p.getContentLength())??m(d);return async p=>{let{url:d,method:v,data:x,signal:w,cancelToken:R,timeout:T,onDownloadProgress:D,onUploadProgress:ee,responseType:P,headers:X,withCredentials:L="same-origin",fetchOptions:te}=xt(p),B=e||fetch;P=P?(P+"").toLowerCase():"text";let F=Ss([w,R&&R.toAbortSignal()],T),$=null;const k=F&&F.unsubscribe&&(()=>{F.unsubscribe()});let Ae;try{if(ee&&u&&v!=="get"&&v!=="head"&&(Ae=await f(X,x))!==0){let j=new r(d,{method:"POST",body:x,duplex:"half"}),z;if(a.isFormData(x)&&(z=j.headers.get("content-type"))&&X.setContentType(z),j.body){const[Ze,Ce]=wt(Ae,_e(vt(ee)));x=Ot(j.body,Rt,Ze,Ce)}}a.isString(L)||(L=L?"include":"omit");const E=o&&"credentials"in r.prototype,b={...te,signal:F,method:v.toUpperCase(),headers:X.normalize().toJSON(),body:x,duplex:"half",credentials:E?L:void 0};$=o&&new r(d,b);let y=await(o?B($,te):B(d,b));const I=h&&(P==="stream"||P==="response");if(h&&(D||I&&k)){const j={};["status","statusText","headers"].forEach(rr=>{j[rr]=y[rr]});const z=a.toFiniteNumber(y.headers.get("content-length")),[Ze,Ce]=D&&wt(z,_e(vt(D),!0))||[];y=new s(Ot(y.body,Rt,Ze,()=>{Ce&&Ce(),k&&k()}),j)}P=P||"text";let M=await g[a.findKey(g,P)||"text"](y,p);return!I&&k&&k(),await new Promise((j,z)=>{yt(j,z,{data:M,headers:C.from(y.headers),status:y.status,statusText:y.statusText,config:p,request:$})})}catch(E){throw k&&k(),E&&E.name==="TypeError"&&/Load failed|fetch/i.test(E.message)?Object.assign(new _("Network Error",_.ERR_NETWORK,p,$),{cause:E.cause||E}):_.from(E,E&&E.code,p,$)}}},Cs=new Map,kt=t=>{let e=t&&t.env||{};const{fetch:r,Request:s,Response:n}=e,o=[s,n,r];let i=o.length,c=i,l,u,h=Cs;for(;c--;)l=o[c],u=h.get(l),u===void 0&&h.set(l,u=c?new Map:As(e)),h=u;return u};kt();const $e={http:Wr,xhr:vs,fetch:{get:kt}};a.forEach($e,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});const jt=t=>`- ${t}`,Ts=t=>a.isFunction(t)||t===null||t===!1;function ks(t,e){t=a.isArray(t)?t:[t];const{length:r}=t;let s,n;const o={};for(let i=0;i<r;i++){s=t[i];let c;if(n=s,!Ts(s)&&(n=$e[(c=String(s)).toLowerCase()],n===void 0))throw new _(`Unknown adapter '${c}'`);if(n&&(a.isFunction(n)||(n=n.get(e))))break;o[c||"#"+i]=n}if(!n){const i=Object.entries(o).map(([l,u])=>`adapter ${l} `+(u===!1?"is not supported by the environment":"is not available in the build"));let c=r?i.length>1?`since :
|
|
4
|
+
`+i.map(jt).join(`
|
|
5
|
+
`):" "+jt(i[0]):"as no adapter specified";throw new _("There is no suitable adapter to dispatch the request "+c,"ERR_NOT_SUPPORT")}return n}const Pt={getAdapter:ks,adapters:$e};function qe(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new Q(null,t)}function It(t){return qe(t),t.headers=C.from(t.headers),t.data=Fe.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),Pt.getAdapter(t.adapter||ie.adapter,t)(t).then(function(e){return qe(t),e.data=Fe.call(t,t.transformResponse,e),e.headers=C.from(e.headers),e},function(e){return _t(e)||(qe(t),e&&e.response&&(e.response.data=Fe.call(t,t.transformResponse,e.response),e.response.headers=C.from(e.response.headers))),Promise.reject(e)})}const Nt="1.13.2",we={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{we[t]=function(r){return typeof r===t||"a"+(e<1?"n ":" ")+t}});const Ut={};we.transitional=function(t,e,r){function s(n,o){return"[Axios v"+Nt+"] Transitional option '"+n+"'"+o+(r?". "+r:"")}return(n,o,i)=>{if(t===!1)throw new _(s(o," has been removed"+(e?" in "+e:"")),_.ERR_DEPRECATED);return e&&!Ut[o]&&(Ut[o]=!0,console.warn(s(o," has been deprecated since v"+e+" and will be removed in the near future"))),t?t(n,o,i):!0}},we.spelling=function(t){return(e,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function js(t,e,r){if(typeof t!="object")throw new _("options must be an object",_.ERR_BAD_OPTION_VALUE);const s=Object.keys(t);let n=s.length;for(;n-- >0;){const o=s[n],i=e[o];if(i){const c=t[o],l=c===void 0||i(c,o,t);if(l!==!0)throw new _("option "+o+" must be "+l,_.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new _("Unknown option "+o,_.ERR_BAD_OPTION)}}const ve={assertOptions:js,validators:we},q=ve.validators;let H=class{constructor(t){this.defaults=t||{},this.interceptors={request:new pt,response:new pt}}async request(t,e){try{return await this._request(t,e)}catch(r){if(r instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const n=s.stack?s.stack.replace(/^.+\n/,""):"";try{r.stack?n&&!String(r.stack).endsWith(n.replace(/^.+\n.+\n/,""))&&(r.stack+=`
|
|
6
|
+
`+n):r.stack=n}catch{}}throw r}}_request(t,e){typeof t=="string"?(e=e||{},e.url=t):e=t||{},e=W(this.defaults,e);const{transitional:r,paramsSerializer:s,headers:n}=e;r!==void 0&&ve.assertOptions(r,{silentJSONParsing:q.transitional(q.boolean),forcedJSONParsing:q.transitional(q.boolean),clarifyTimeoutError:q.transitional(q.boolean)},!1),s!=null&&(a.isFunction(s)?e.paramsSerializer={serialize:s}:ve.assertOptions(s,{encode:q.function,serialize:q.function},!0)),e.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?e.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:e.allowAbsoluteUrls=!0),ve.assertOptions(e,{baseUrl:q.spelling("baseURL"),withXsrfToken:q.spelling("withXSRFToken")},!0),e.method=(e.method||this.defaults.method||"get").toLowerCase();let o=n&&a.merge(n.common,n[e.method]);n&&a.forEach(["delete","get","head","post","put","patch","common"],f=>{delete n[f]}),e.headers=C.concat(o,n);const i=[];let c=!0;this.interceptors.request.forEach(function(f){typeof f.runWhen=="function"&&f.runWhen(e)===!1||(c=c&&f.synchronous,i.unshift(f.fulfilled,f.rejected))});const l=[];this.interceptors.response.forEach(function(f){l.push(f.fulfilled,f.rejected)});let u,h=0,g;if(!c){const f=[It.bind(this),void 0];for(f.unshift(...i),f.push(...l),g=f.length,u=Promise.resolve(e);h<g;)u=u.then(f[h++],f[h++]);return u}g=i.length;let m=e;for(;h<g;){const f=i[h++],p=i[h++];try{m=f(m)}catch(d){p.call(this,d);break}}try{u=It.call(this,m)}catch(f){return Promise.reject(f)}for(h=0,g=l.length;h<g;)u=u.then(l[h++],l[h++]);return u}getUri(t){t=W(this.defaults,t);const e=St(t.baseURL,t.url,t.allowAbsoluteUrls);return ft(e,t.params,t.paramsSerializer)}};a.forEach(["delete","get","head","options"],function(t){H.prototype[t]=function(e,r){return this.request(W(r||{},{method:t,url:e,data:(r||{}).data}))}}),a.forEach(["post","put","patch"],function(t){function e(r){return function(s,n,o){return this.request(W(o||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:s,data:n}))}}H.prototype[t]=e(),H.prototype[t+"Form"]=e(!0)});let Ps=class sr{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(n){r=n});const s=this;this.promise.then(n=>{if(!s._listeners)return;let o=s._listeners.length;for(;o-- >0;)s._listeners[o](n);s._listeners=null}),this.promise.then=n=>{let o;const i=new Promise(c=>{s.subscribe(c),o=c}).then(n);return i.cancel=function(){s.unsubscribe(o)},i},e(function(n,o,i){s.reason||(s.reason=new Q(n,o,i),r(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const r=this._listeners.indexOf(e);r!==-1&&this._listeners.splice(r,1)}toAbortSignal(){const e=new AbortController,r=s=>{e.abort(s)};return this.subscribe(r),e.signal.unsubscribe=()=>this.unsubscribe(r),e.signal}static source(){let e;return{token:new sr(function(r){e=r}),cancel:e}}};function Is(t){return function(e){return t.apply(null,e)}}function Ns(t){return a.isObject(t)&&t.isAxiosError===!0}const De={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(De).forEach(([t,e])=>{De[e]=t});function Lt(t){const e=new H(t),r=Qe(H.prototype.request,e);return a.extend(r,H.prototype,e,{allOwnKeys:!0}),a.extend(r,e,null,{allOwnKeys:!0}),r.create=function(s){return Lt(W(t,s))},r}const S=Lt(ie);S.Axios=H,S.CanceledError=Q,S.CancelToken=Ps,S.isCancel=_t,S.VERSION=Nt,S.toFormData=me,S.AxiosError=_,S.Cancel=S.CanceledError,S.all=function(t){return Promise.all(t)},S.spread=Is,S.isAxiosError=Ns,S.mergeConfig=W,S.AxiosHeaders=C,S.formToJSON=t=>mt(a.isHTMLForm(t)?new FormData(t):t),S.getAdapter=Pt.getAdapter,S.HttpStatusCode=De,S.default=S;const{Axios:Zn,AxiosError:Qn,CanceledError:Yn,isCancel:ei,CancelToken:ti,VERSION:ri,all:si,Cancel:ni,isAxiosError:ii,spread:oi,toFormData:ci,AxiosHeaders:ai,HttpStatusCode:li,formToJSON:ui,getAdapter:hi,mergeConfig:di}=S,Be=S.create({baseURL:location.origin,timeout:6e4,params:{}});Be.interceptors.response.use(t=>t,t=>{var e,r,s,n,o,i,c,l,u,h,g;if(t.response){if(t.response.status===401&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then(function(p){p&&OpenC3Auth.setTokens()}),t.response.config.headers["Ignore-Errors"]&&t.response.config.headers["Ignore-Errors"].includes(t.response.status.toString()))return Promise.reject(t);let m=`HTTP ${t.response.status} - `;(e=t.response)!=null&&e.statusText&&(m+=`${t.response.statusText} `),(s=(r=t.response)==null?void 0:r.config)!=null&&s.data&&(m+=`${t.response.config.data} `),(o=(n=t.response)==null?void 0:n.data)!=null&&o.message?m+=`${t.response.data.message}`:(c=(i=t.response)==null?void 0:i.data)!=null&&c.exception?m+=`${t.response.data.exception}`:(h=(u=(l=t.response)==null?void 0:l.data)==null?void 0:u.error)!=null&&h.message?(t.response.data.error.class&&(m+=`${t.response.data.error.class} `),m+=`${t.response.data.error.message}`):m+=`${(g=t.response)==null?void 0:g.data}`;const{$cosmosNotify:f}=window;throw f&&f.serious({title:"Network error",body:m}),t}else throw t});const Se=async function(t,e,{data:r,params:s={},headers:n,noAuth:o=!1,noScope:i=!1,onUploadProgress:c=!1}={}){if(!o){try{await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity)&&OpenC3Auth.setTokens()}catch{OpenC3Auth.login()}n.Authorization=localStorage.openc3Token}return n.manual=!0,!i&&!s.scope&&(s.scope=window.openc3Scope),Be({method:t,url:e,data:r,params:s,headers:n,onUploadProgress:c})},Me={Accept:"application/json"},Ft={...Me,"Content-Type":"application/json"},fi=Te("f",{get:function(t,{params:e,headers:r=Me,noScope:s,noAuth:n,onUploadProgress:o}={}){return Se("get",t,{params:e,headers:r,noScope:s,noAuth:n,onUploadProgress:o})},put:function(t,{data:e,params:r,headers:s=Ft,noScope:n,noAuth:o,onUploadProgress:i}={}){return Se("put",t,{data:e,params:r,headers:s,noScope:n,noAuth:o,onUploadProgress:i})},post:function(t,{data:e,params:r,headers:s=Ft,noScope:n,noAuth:o,onUploadProgress:i}={}){return Se("post",t,{data:e,params:r,headers:s,noScope:n,noAuth:o,onUploadProgress:i})},delete:function(t,{params:e,headers:r=Me,noScope:s,noAuth:n,onUploadProgress:o}={}){return Se("delete",t,{params:e,headers:r,noScope:s,noAuth:n,onUploadProgress:o})}});let Ee=()=>({emit(t,...e){for(let r=this.events[t]||[],s=0,n=r.length;s<n;s++)r[s](...e)},events:{},on(t,e){var r;return((r=this.events)[t]||(r[t]=[])).push(e),()=>{var s;this.events[t]=(s=this.events[t])==null?void 0:s.filter(n=>e!==n)}}});class ce extends Error{constructor(e,r){e instanceof Error?(super(e.message),this.cause=e):super(e),this.reason=r,this.name="ReasonError"}}class ze extends ce{constructor(e){super("Rejected",e),this.name="SubscriptionRejectedError"}}class Us extends ce{constructor(e){super(e||"Timed out to receive subscription ack"),this.name="SubscriptionTimeoutError"}}class U extends ce{constructor(e,r){r?super(e,r):super("Disconnected",e),this.name="DisconnectedError"}}class Ls extends U{constructor(e){super(e,"stale_connection"),this.name="StaleConnectionError"}}function $t(t){return t?`{${Object.keys(t).sort().filter(e=>t[e]!==void 0).map(e=>{let r=JSON.stringify(t[e]);return`${JSON.stringify(e)}:${r}`}).join(",")}}`:""}class Fs{constructor(e){this.channel=e,this.listeners=[]}watch(){this.listeners.push(this.channel.on("presence",e=>{if(e.type==="info"){this._state||(this._state=this.stateFromInfo(e));return}this._state&&(e.type==="join"?this._state[e.id]=e.info:e.type==="leave"&&delete this._state[e.id])}))}reset(){delete this._state}dispose(){delete this._info,delete this._state,this.listeners.forEach(e=>e()),this.listeners.length=0}async join(e,r){if(!this._info)return this._info={id:e,info:r},this.channel.perform("$presence:join",this._info)}async leave(){if(!this._info)return;let e=await this.channel.perform("$presence:leave");return delete this._info,e}async info(){return this._state?this._state:(this._promise||(this._promise=this._sync()),await this._promise,this._state)}async _sync(){this.watch();try{let e=await this.channel.perform("$presence:info",{});return this._state=this.stateFromInfo(e),this._state}finally{delete this._promise}}stateFromInfo(e){return e.records.reduce((r,{id:s,info:n})=>(r[s]=n,r),{})}}const V=Symbol("state");class qt{constructor(e={}){this.emitter=Ee(),this.params=Object.freeze(e),this.presence=new Fs(this),this.initialConnect=!0,this[V]="idle"}get identifier(){return this._identifier?this._identifier:(this._identifier=$t({channel:this.channelId,...this.params}),this._identifier)}get channelId(){return this.constructor.identifier}get state(){return this[V]}attached(e){if(this.receiver){if(this.receiver!==e)throw Error("Already connected to a different receiver");return!1}return this.receiver=e,!0}connecting(){this[V]="connecting"}connected(){if(this.state==="connected"||this.state==="closed")return;this[V]="connected";let e=!1;this.initialConnect?(this.initialConnect=!1,this.emit("connect",{reconnect:!1,restored:e})):this.emit("connect",{reconnect:!0,restored:e})}restored(){if(this.state==="connected")throw Error("Already connected");this[V]="connected";let e=!0,r=!0;this.initialConnect=!1,this.emit("connect",{reconnect:r,restored:e})}disconnected(e){this.state==="disconnected"||this.state==="closed"||(this[V]="disconnected",this.presence.reset(),this.emit("disconnect",e))}closed(e){this.state!=="closed"&&(this[V]="closed",delete this.receiver,this.initialConnect=!0,this.presence.dispose(),this.emit("close",e))}disconnect(){this.state==="idle"||this.state==="closed"||this.receiver.unsubscribe(this)}async perform(e,r){if(this.state==="idle"||this.state==="closed")throw Error("Channel is not subscribed");return this.receiver.perform(this.identifier,e,r)}async send(e){return this.perform(void 0,e)}async whisper(e){try{await this.perform("$whisper",e)}catch(r){let s=this.receiver?this.receiver.logger:null;s&&s.warn("whisper failed: ",r)}}receive(e,r){this.emit("message",e,r)}on(e,r){return this.emitter.on(e,r)}once(e,r){let s=this.emitter.on(e,(...n)=>{s(),r(...n)});return s}emit(e,...r){return this.emitter.emit(e,...r)}ensureSubscribed(){return this.state==="connected"?Promise.resolve():this.state==="closed"?Promise.reject(Error("Channel is unsubscribed")):this.pendingSubscribe()}pendingSubscribe(){return this._pendingSubscribe?this._pendingSubscribe:(this._pendingSubscribe=new Promise((e,r)=>{let s=[()=>delete this._pendingSubscribe];s.push(this.on("connect",()=>{s.forEach(n=>n()),e()})),s.push(this.on("close",n=>{s.forEach(o=>o()),r(n||new ce("Channel was disconnected before subscribing","canceled"))}))}),this._pendingSubscribe)}}class $s{constructor(e){this.id=e,this.intent="unsubscribed",this.state="idle",this.channels=[],this.disposed=!1,this._pendings=[]}add(e){this.channels.includes(e)||this.channels.push(e)}remove(e){let r=this.channels.indexOf(e);r>-1&&this.channels.splice(r,1)}notify(e,...r){this.state=e==="restored"?"connected":e,r.length===1?this.channels.forEach(s=>s[e](r[0])):this.channels.forEach(s=>s[e]())}pending(e){this._checkIntent(e);let r=this._pendings[0];return!r||r.intent!==e?Promise.resolve():r.promise}ensureResubscribed(){this.disposed||(this.intent=void 0,this.ensureSubscribed())}ensureSubscribed(){if(this.intent!=="subscribed"){if(this.disposed)throw Error("Subscription is disposed");this.intent="subscribed",!this._mergeWithPending("unsubscribed")&&this.subscriber(this)}}maybeUnsubscribe(){this.disposed||this.intent==="unsubscribed"||this.channels.length>0||(this.intent="unsubscribed",this._mergeWithPending("subscribed"))||this.unsubscriber(this)}async acquire(e){this._checkIntent(e);let r,s={promise:new Promise(o=>{r=o}),intent:e,release:()=>{this._pendings.splice(this._pendings.indexOf(s),1),r(s)},canceled:!1,acquired:!1},n=this._pendingTop;return this._pendings.push(s),n&&await n.promise,this.gvl&&await this.gvl.acquire(s,e),s.acquired=!0,s}close(e){this.disposed=!0,this.intent=void 0,this.notify("closed",e)}_checkIntent(e){if(!(e==="unsubscribed"||e==="subscribed"))throw Error(`Unknown subscription intent: ${e}`)}get _pendingTop(){return this._pendings.length?this._pendings[this._pendings.length-1]:void 0}_mergeWithPending(e){let r=this._pendingTop;return!r||r.acquired||r.intent!==e?!1:(this._pendings.pop(),r.canceled=!0,!0)}}class qs{constructor(){this.queue=[]}async acquire(e,r){r==="subscribed"&&(this.queue.push(e.promise.then(()=>{this.queue.splice(this.queue.indexOf(e),1)})),this.queue.length>1&&await this.queue[this.queue.length-2])}}class Ds{constructor(e){e.concurrentSubscribes===!1&&(this.glv=new qs),this._subscriptions={},this._localToRemote={}}all(){return Object.values(this._subscriptions)}get(e){return this._subscriptions[e]}create(e,{subscribe:r,unsubscribe:s}){let n=this._subscriptions[e]=new $s(e);return n.remoteId=this._localToRemote[e],n.subscriber=r,n.unsubscriber=s,n.gvl=this.glv,n}remove(e){delete this._subscriptions[e],delete this._localToRemote[e]}storeRemoteId(e,r){this._localToRemote[e]=r;let s=this.get(e);s&&(s.remoteId=r)}}class Bs{constructor(e={}){this.subscriptions=new Ds(e),this._pendingMessages=[],this._remoteToLocal={}}subscribe(e,r){this._remoteToLocal[r]=e,this.subscriptions.storeRemoteId(e,r),this.flush(r)}unsubscribe(e){let r=this.subscriptions.get(e);if(!r)return;let s=r.remoteId;s&&delete this._remoteToLocal[s],this.subscriptions.remove(e)}transmit(e,r,s){let n=this._remoteToLocal[e];if(!n){this._pendingMessages.push([e,r,s]);return}let o=this.subscriptions.get(n);o&&o.channels.forEach(i=>{i.receive(r,s)})}notify(e,r,s){let n=this._remoteToLocal[e];if(!n)return;let o=this.subscriptions.get(n);o&&o.channels.forEach(i=>i.emit(r,s))}close(){this._pendingMessages.length=0}get size(){return this.channels.length}get channels(){return this.subscriptions.all().flatMap(e=>e.channels)}flush(e){let r=[];for(let s of this._pendingMessages)s[0]===e?this.transmit(s[0],s[1],s[2]):r.push(s);this._pendingMessages=r}}const Dt={debug:0,info:1,warn:2,error:3};class Bt{constructor(e){this.level=e||"warn"}log(e,r,s){Dt[e]<Dt[this.level]||this.writeLogEntry(e,r,s)}writeLogEntry(){throw Error("Not implemented")}debug(e,r){this.log("debug",e,r)}info(e,r){this.log("info",e,r)}warn(e,r){this.log("warn",e,r)}error(e,r){this.log("error",e,r)}}class ae extends Bt{writeLogEntry(){}}class Ms{encode(e){return JSON.stringify(e)}decode(e){try{return JSON.parse(e)}catch{}}}let zs=0;class Mt{constructor(e={}){let{logger:r}=e;this.logger=r||new ae,this.pendingSubscriptions={},this.pendingUnsubscriptions={},this.subscribeCooldownInterval=e.subscribeCooldownInterval||250,this.subscribeRetryInterval=e.subscribeRetryInterval||5e3}attached(e){this.cable=e}subscribe(e,r){let s={channel:e};r&&Object.assign(s,r);let n=$t(s);if(this.pendingUnsubscriptions[n]){let i=this.subscribeCooldownInterval*1.5;return this.logger.debug(`unsubscribed recently, cooldown for ${i}`,n),new Promise(c=>{setTimeout(()=>{c(this.subscribe(e,r))},i)})}if(this.pendingSubscriptions[n])return this.logger.warn("subscription is already pending, skipping",n),Promise.reject(Error("Already subscribing"));let o=this.subscribeRetryInterval;return new Promise((i,c)=>{let l=++zs;this.pendingSubscriptions[n]={resolve:i,reject:c,id:l},this.cable.send(this.buildSubscribeRequest(n)),this.maybeRetrySubscribe(l,n,o)})}buildSubscribeRequest(e){return{command:"subscribe",identifier:e}}maybeRetrySubscribe(e,r,s){setTimeout(()=>{let n=this.pendingSubscriptions[r];n&&n.id===e&&(this.logger.warn(`no subscription ack received in ${s}ms, retrying subscribe`,r),this.cable.send(this.buildSubscribeRequest(r)),this.maybeExpireSubscribe(e,r,s))},s)}maybeExpireSubscribe(e,r,s){setTimeout(()=>{let n=this.pendingSubscriptions[r];n&&n.id===e&&(delete this.pendingSubscriptions[r],n.reject(new Us(`Haven't received subscription ack in ${s*2}ms for ${r}`)))},s)}unsubscribe(e){return this.cable.send({command:"unsubscribe",identifier:e}),this.pendingUnsubscriptions[e]=!0,setTimeout(()=>{delete this.pendingUnsubscriptions[e]},this.subscribeCooldownInterval),Promise.resolve()}perform(e,r,s){return r==="$whisper"?this.whisper(e,s):(s||(s={}),s.action=r,this.cable.send({command:"message",identifier:e,data:JSON.stringify(s)}),Promise.resolve())}whisper(e,r){return this.cable.send({command:"whisper",identifier:e,data:r}),Promise.resolve()}receive(e){if(typeof e!="object"){this.logger.error("unsupported message format",{message:e});return}let{type:r,identifier:s,message:n,reason:o,reconnect:i}=e;if(r==="ping")return this.cable.keepalive(e.message);if(this.cable.keepalive(),r==="welcome"){let c=e.sid;return c&&this.cable.setSessionId(c),this.cable.connected()}if(r==="disconnect"){let c=new U(o);this.reset(c),i===!1?this.cable.closed(c):this.cable.disconnected(c);return}if(r==="confirm_subscription"){let c=this.pendingSubscriptions[s];if(!c){this.logger.error("subscription not found, unsubscribing",{type:r,identifier:s}),this.unsubscribe(s);return}return delete this.pendingSubscriptions[s],c.resolve(s)}if(r==="reject_subscription"){let c=this.pendingSubscriptions[s];return c?(delete this.pendingSubscriptions[s],c.reject(new ze)):this.logger.error("subscription not found",{type:r,identifier:s})}if(n)return{identifier:s,message:n};this.logger.warn(`unknown message type: ${r}`,{message:e})}reset(e){for(let r in this.pendingSubscriptions)this.pendingSubscriptions[r].reject(e);this.pendingSubscriptions={}}recoverableClosure(){return!1}}const zt=()=>Date.now()/1e3|0;class Js extends Mt{constructor(e={}){super(e),this.streamsPositions={},this.subscriptionStreams={},this.pendingHistory={},this.pendingPresence={},this.presenceInfo={},this.restoreSince=e.historyTimestamp,this.disableSessionRecovery=e.disableSessionRecovery,this.restoreSince===void 0&&(this.restoreSince=zt()),this.sessionId=void 0,this.sendPongs=e.pongs}reset(e){for(let r in this.pendingPresence)this.pendingPresence[r].reject(e);return this.pendingPresence={},super.reset()}receive(e){if(typeof e!="object"){this.logger.error("unsupported message format",{message:e});return}let{type:r,identifier:s,message:n}=e;if(r==="disconnect")return delete this.sessionId,this.cable.setSessionId(""),super.receive(e);if(r==="reject_subscription")return super.receive(e);if(r==="confirm_subscription")return this.subscriptionStreams[s]||(this.subscriptionStreams[s]=new Set),super.receive(e);if(r==="ping")return this.restoreSince&&(this.restoreSince=zt()),this.sendPongs&&this.sendPong(),this.cable.keepalive(e.message);if(this.cable.keepalive(),r==="confirm_history"){this.logger.debug("history result received",e),this.cable.notify("history_received",s);return}if(r==="reject_history"){this.logger.warn("failed to retrieve history",e),this.cable.notify("history_not_found",s);return}if(r==="welcome"){if(this.disableSessionRecovery||(this.sessionId=e.sid,this.sessionId&&this.cable.setSessionId(this.sessionId)),e.restored){let o=e.restored_ids||Object.keys(this.subscriptionStreams);for(let i of o)this.cable.send({identifier:i,command:"history",history:this.historyRequestFor(i)}),this.presenceInfo[i]&&this.cable.send({identifier:i,command:"join",presence:this.presenceInfo[i]});return this.cable.restored(o)}return this.cable.connected(this.sessionId)}if(r==="presence"){let o=n.type;if(o==="info"){let i=this.pendingPresence[s];i&&(delete this.pendingPresence[s],i.resolve(n))}else if(o==="error"){let i=this.pendingPresence[s];i&&(delete this.pendingPresence[s],i.reject(new Error("failed to retrieve presence")))}return{type:r,identifier:s,message:n}}if(n){let o=this.trackStreamPosition(s,e.stream_id,e.epoch,e.offset);return{identifier:s,message:n,meta:o}}this.logger.warn(`unknown message type: ${r}`,{message:e})}perform(e,r,s){switch(r){case"$presence:join":return this.join(e,s);case"$presence:leave":return this.leave(e,s);case"$presence:info":return this.presence(e,s)}return super.perform(e,r,s)}unsubscribe(e){return delete this.presenceInfo[e],super.unsubscribe(e)}buildSubscribeRequest(e){let r=super.buildSubscribeRequest(e),s=this.historyRequestFor(e);s&&(r.history=s,this.pendingHistory[e]=!0);let n=this.presenceInfo[e];return n&&(r.presence=n),r}recoverableClosure(){return!!this.sessionId}historyRequestFor(e){let r={},s=!1;if(this.subscriptionStreams[e])for(let n of this.subscriptionStreams[e]){let o=this.streamsPositions[n];o&&(s=!0,r[n]=o)}if(!(!s&&!this.restoreSince))return{since:this.restoreSince,streams:r}}trackStreamPosition(e,r,s,n){if(!(!r||!s))return this.subscriptionStreams[e]||(this.subscriptionStreams[e]=new Set),this.subscriptionStreams[e].add(r),this.streamsPositions[r]={epoch:s,offset:n},{stream:r,epoch:s,offset:n}}async sendPong(){await new Promise(e=>setTimeout(e,0)),this.cable.state==="connected"&&this.cable.send({command:"pong"})}async join(e,r){return this.presenceInfo[e]=r,this.cable.send({command:"join",identifier:e,presence:r}),Promise.resolve()}async leave(e,r){return delete this.presenceInfo[e],this.cable.send({command:"leave",identifier:e,presence:r}),Promise.resolve()}presence(e,r){return this.pendingPresence[e]?(this.logger.warn("presence is already pending, skipping",e),Promise.reject(Error("presence request is already pending"))):new Promise((s,n)=>{this.pendingPresence[e]={resolve:s,reject:n},this.cable.send({command:"presence",identifier:e,data:r})})}}class Ws extends ce{constructor(){super("No connection","closed"),this.name="NoConnectionError"}}class Je extends qt{constructor(e,r){super(r),this.channelId=e}set channelId(e){this._channelId=e}get channelId(){return this._channelId}}he(Je,"identifier","__ghost__");const Hs="$pubsub";class We extends qt{async perform(e,r){if(e.startsWith("$"))return super.perform(e,r);throw Error("not implemented")}}he(We,"identifier",Hs);const K=Symbol("state");let Vs=class{constructor({transport:t,protocol:e,encoder:r,logger:s,lazy:n,hubOptions:o,performFailures:i,transportConfigurator:c}){this.emitter=Ee(),this.transport=t,this.encoder=r,this.logger=s||new ae,this.protocol=e,this.performFailures=i||"throw",this.protocol.attached(this),this.hub=new Bs(o||{}),this[K]="idle",this.handleClose=this.handleClose.bind(this),this.handleIncoming=this.handleIncoming.bind(this),this.transportConfigurator=c,this.transport.on("close",this.handleClose),this.transport.on("data",this.handleIncoming),this.initialConnect=!0,this.recovering=!1,n===!1&&this.connect().catch(()=>{})}get state(){return this[K]}async connect(){if(this.state==="connected")return Promise.resolve();if(this.state==="connecting")return this.pendingConnect();let t=this.state==="idle";this[K]="connecting";let e=this.pendingConnect();this.logger.debug("connecting");try{this.transportConfigurator&&await this.transportConfigurator(this.transport,{initial:t}),await this.transport.open()}catch(r){this.handleClose(r)}return e}setSessionId(t){this.sessionId=t,this.transport.setParam("sid",t)}connected(){if(this.state==="connected")return;this.logger.info("connected"),this[K]="connected",this.recovering&&this.hub.subscriptions.all().forEach(e=>e.notify("disconnected",new U("recovery_failed"))),this.hub.subscriptions.all().forEach(e=>this._resubscribe(e));let t=!1;this.recovering=!1,this.initialConnect?(this.initialConnect=!1,this.emit("connect",{reconnect:!1,restored:t})):this.emit("connect",{reconnect:!0,restored:t})}restored(t){this.logger.info("connection recovered",{remoteIds:t}),this[K]="connected",this.hub.subscriptions.all().forEach(s=>{t&&s.remoteId&&t.includes(s.remoteId)?s.notify("restored"):(s.notify("disconnected",new U("recovery_failed")),this._resubscribe(s))});let e=!this.initialConnect,r=!0;this.recovering=!1,this.initialConnect=!1,this.emit("connect",{reconnect:e,restored:r})}notify(t,e,r){e&&typeof e!="string"&&(r=e,e=void 0),e?this.hub.notify(e,"info",{type:t,data:r}):this.emit("info",{type:t,data:r})}handleClose(t){this.logger.debug("transport closed",{error:t}),this.disconnected(new U(t,"transport_closed"))}disconnected(t){(this.state==="connected"||this.state==="connecting")&&(this.logger.info("disconnected",{reason:t}),this[K]="disconnected",this.recovering=this.protocol.recoverableClosure(t),this.recovering?this.hub.subscriptions.all().forEach(e=>e.notify("connecting")):this.hub.subscriptions.all().forEach(e=>{e.notify("disconnected",t)}),this.protocol.reset(t),this.hub.close(),this.transport.close(),this.emit("disconnect",t))}closed(t){if(this.state==="closed"||this.state==="idle")return;let e;t&&(e=t instanceof U?t:new U(t,void 0)),this.logger.info("closed",{reason:t||"user"}),this[K]="closed";let r=e||new U("cable_closed");this.hub.subscriptions.all().forEach(s=>s.notify("disconnected",r)),this.hub.close(),this.protocol.reset(),this.transport.close(),this.initialConnect=!0,this.emit("close",e)}disconnect(){this.closed()}handleIncoming(t){if(this.state==="closed"||this.state==="idle")return;let e=this.encoder.decode(t);if(e===void 0){this.logger.error("failed to decode message",{message:t});return}this.logger.debug("incoming data",e);let r=this.protocol.receive(e);if(r){this.logger.debug("processed incoming message",r);let{type:s,identifier:n,message:o,meta:i}=r;s?this.hub.notify(n,s,o):this.hub.transmit(n,o,i)}}send(t){if(this.state==="closed")throw Error("Cable is closed");let e=this.encoder.encode(t);if(e===void 0){this.logger.error("failed to encode message",{message:t});return}this.logger.debug("outgoing message",t),this.transport.send(e)}keepalive(t){this.emit("keepalive",t)}streamFrom(t){let e=new We({stream_name:t});return this.subscribe(e)}streamFromSigned(t){let e=new We({signed_stream_name:t});return this.subscribe(e)}subscribeTo(t,e){let r,s;return typeof t=="string"&&(s=t,t=Je),r=s?new t(s,e):new t(e),this.subscribe(r)}subscribe(t){if(!t.attached(this))return t;let e=t.identifier;t.connecting();let r=this.hub.subscriptions.get(e)||this.hub.subscriptions.create(e,{subscribe:s=>this._subscribe(s,t.channelId,t.params),unsubscribe:s=>this._unsubscribe(s)});return r.add(t),r.intent==="subscribed"&&r.state==="connected"&&t.connected(),r.ensureSubscribed(),t}async _resubscribe(t){t.intent!=="subscribed"||!t.channels[0]||(t.notify("connecting"),t.ensureResubscribed())}async _subscribe(t,e,r){let s=t.id;if(this.state==="idle"&&this.connect().catch(()=>{}),this.state!=="connected"){this.logger.debug("cancel subscribe, no connection",{identifier:s});return}this.logger.debug("acquiring subscribe lock",{identifier:s});let n=await t.acquire("subscribed");if(n.canceled){this.logger.debug("subscribe lock has been canceled",{identifier:s}),n.release();return}if(this.logger.debug("subscribe lock has been acquired",{identifier:s}),t.intent!=="subscribed"){this.logger.debug("cancel subscribe request, already unsubscribed"),n.release();return}if(this.state!=="connected"){this.logger.debug("cancel subscribe, no connection",{identifier:s}),n.release();return}if(t.state==="connected"){this.logger.debug("already connected, skip subscribe command",{identifier:s}),t.notify("connected"),n.release();return}let o={identifier:e,params:r};this.logger.debug("subscribing",o);try{let i=await this.protocol.subscribe(e,r);this.hub.subscribe(s,i),this.logger.debug("subscribed",{...o,remoteId:i}),t.notify("connected")}catch(i){if(i){if(i instanceof ze&&this.logger.warn("rejected",o),i instanceof U){this.logger.debug("disconnected during subscription; will retry on connect",o),n.release();return}this.logger.error("failed to subscribe",{error:i,...o})}t.close(i),this.hub.unsubscribe(s)}n.release()}unsubscribe(t){let e=t.identifier,r=this.hub.subscriptions.get(e);if(!r)throw Error(`Subscription not found: ${e}`);r.remove(t),t.closed(),r.maybeUnsubscribe()}async _unsubscribe(t){let e=t.id;this.logger.debug("acquiring unsubscribe lock",{identifier:e});let r=await t.acquire("unsubscribed");if(r.canceled){this.logger.debug("unsubscribe lock has been canceled",{identifier:e}),r.release();return}if(this.logger.debug("unsubscribe lock has been acquired",{identifier:e}),t.intent!=="unsubscribed"){this.logger.debug("cancel unsubscribe, no longer needed",{identifier:e,intent:t.intent}),r.release();return}if(t.state==="disconnected"||t.state==="closed"){this.logger.debug(`already ${t.state} connected, skip unsubscribe command`,{identifier:e}),r.release();return}let s=t.remoteId;if(this.logger.debug("unsubscribing...",{remoteId:s}),this.state!=="connected"){this.logger.debug("unsubscribe skipped (cable is not connected)",{id:e}),t.close(),this.hub.unsubscribe(e),r.release();return}try{await this.protocol.unsubscribe(s),this.logger.debug("unsubscribed remotely",{id:e})}catch(n){n&&(n instanceof U?this.logger.debug("cable disconnected during the unsubscribe command execution",{id:e,error:n}):this.logger.error("unsubscribe failed",{id:e,error:n}))}t.intent==="unsubscribed"?(t.close(),this.hub.unsubscribe(e)):t.state="closed",r.release()}async perform(t,e,r){if(this.performFailures==="throw")return this._perform(t,e,r);try{return await this._perform(t,e,r)}catch(s){this.performFailures==="warn"&&this.logger.warn("perform failed",{error:s});return}}async _perform(t,e,r){if(this.state==="connecting"&&await this.pendingConnect(),this.state==="closed"||this.state==="disconnected")throw new Ws;let s=this.hub.subscriptions.get(t);if(!s)throw Error(`Subscription not found: ${t}`);if(await s.pending("subscribed"),s.intent!=="subscribed")throw Error(`Subscription is closed: ${t}`);let n=s.remoteId,o={id:n,action:e,payload:r};this.logger.debug("perform",o);try{let i=await this.protocol.perform(n,e,r);return i&&this.logger.debug("perform result",{message:i,request:o}),i}catch(i){throw this.logger.error("perform failed",{error:i,request:o}),i}}on(t,e){return this.emitter.on(t,e)}once(t,e){let r=this.emitter.on(t,(...s)=>{r(),e(...s)});return r}emit(t,...e){return this.emitter.emit(t,...e)}pendingConnect(){return this._pendingConnect?this._pendingConnect:(this._pendingConnect=new Promise((t,e)=>{let r=[()=>delete this._pendingConnect];r.push(this.on("connect",()=>{r.forEach(s=>s()),t()})),r.push(this.on("close",s=>{r.forEach(n=>n()),e(s)})),r.push(this.on("disconnect",s=>{r.forEach(n=>n()),e(s)}))}),this._pendingConnect)}};const Ks={maxMissingPings:2,maxReconnectAttempts:1/0},Y=()=>Date.now(),Jt=(t,e)=>{e=e||{};let{backoffRate:r,jitterRatio:s,maxInterval:n}=e;return r=r||2,s===void 0&&(s=.5),o=>{let i=t*r**o,c=i*r,l=i+(c-i)*Math.random(),u=2*(Math.random()-.5)*s;return l=l*(1+u),n&&n<l&&(l=n),l}};let Wt=class{constructor({pingInterval:t,...e}){if(this.pingInterval=t,!this.pingInterval)throw Error(`Incorrect pingInterval is provided: ${t}`);if(e=Object.assign({},Ks,e),this.strategy=e.reconnectStrategy,!this.strategy)throw Error("Reconnect strategy must be provided");this.maxMissingPings=e.maxMissingPings,this.maxReconnectAttempts=e.maxReconnectAttempts,this.logger=e.logger||new ae,this.state="pending_connect",this.attempts=0,this.disconnectedAt=Y()}watch(t){this.target=t,this.initListeners()}reconnectNow(){return this.state==="connected"||this.state==="pending_connect"||this.state==="closed"?!1:(this.cancelReconnect(),this.state="pending_connect",this.target.connect().catch(t=>{this.logger.info("Failed at reconnecting: "+t)}),!0)}initListeners(){this.unbind=[],this.unbind.push(this.target.on("connect",()=>{this.attempts=0,this.pingedAt=Y(),this.state="connected",this.cancelReconnect(),this.startPolling()})),this.unbind.push(this.target.on("disconnect",()=>{this.disconnectedAt=Y(),this.state="disconnected",this.stopPolling(),this.scheduleReconnect()})),this.unbind.push(this.target.on("close",()=>{this.disconnectedAt=Y(),this.state="closed",this.cancelReconnect(),this.stopPolling()})),this.unbind.push(this.target.on("keepalive",()=>{this.pingedAt=Y()})),this.unbind.push(()=>{this.cancelReconnect(),this.stopPolling()})}dispose(){delete this.target,this.unbind&&this.unbind.forEach(t=>t()),delete this.unbind}startPolling(){this.pollId&&clearTimeout(this.pollId);let t=this.pingInterval+(Math.random()-.5)*this.pingInterval*.5;this.pollId=setTimeout(()=>{this.checkStale(),this.state==="connected"&&this.startPolling()},t)}stopPolling(){this.pollId&&clearTimeout(this.pollId)}checkStale(){let t=Y()-this.pingedAt;t>this.maxMissingPings*this.pingInterval&&(this.logger.warn(`Stale connection: ${t}ms without pings`),this.state="pending_disconnect",this.target.disconnected(new Ls))}scheduleReconnect(){if(this.attempts>=this.maxReconnectAttempts){this.target.close();return}let t=this.strategy(this.attempts);this.attempts++,this.logger.info(`Reconnecting in ${t}ms (${this.attempts} attempt)`),this.state="pending_reconnect",this.reconnnectId=setTimeout(()=>this.reconnectNow(),t)}cancelReconnect(){this.reconnnectId&&(clearTimeout(this.reconnnectId),delete this.reconnnectId)}};class Xs{constructor(e,r={}){this.transports=e,this.transport=null,this.emitter=Ee(),this.unbind=[],this.logger=r.logger||new ae}displayName(){return"fallbacked transport"}async open(){for(let e=0;e<this.transports.length;e++){let r=this.transports[e];try{this.transport=r,this.resetListeners(),this.logger.debug(`Trying to connect via ${r.displayName()}`),await r.open(),this.logger.debug(`Connected via ${r.displayName()}`);return}catch(s){this.logger.debug(`Failed to connect via ${r.displayName()}: ${s.message}`)}}throw this.transport=null,this.resetListeners(),new Error("Couldn't connect via any available transport")}send(e){if(!this.transport)throw new Error("No transport is open");this.transport.send(e)}async close(){if(!this.transport)throw new Error("No transport is open");await this.transport.close(),this.transport=null}setURL(){throw new Error("Not implemented. Set URL for each transport separately")}setParam(e,r){this.transports.forEach(s=>{s.setParam(e,r)})}setToken(e,r){this.transports.forEach(s=>{s.setToken(e,r)})}on(e,r){return this.emitter.on(e,r)}once(e,r){let s=this.emitter.on(e,(...n)=>{s(),r(...n)});return s}get url(){return this.transport?this.transport.url:""}resetListeners(){this.unbind.forEach(e=>e()),this.unbind.length=0,this.transport&&this.unbind.push(this.transport.on("open",()=>{this.emitter.emit("open")}),this.transport.on("data",e=>{this.emitter.emit("data",e)}),this.transport.on("close",e=>{this.emitter.emit("close",e)}),this.transport.on("error",e=>{this.emitter.emit("error",e)}))}}class Gs{constructor(e,r={}){this.url=e;let s=r.websocketImplementation;if(s)this.Impl=s;else if(typeof WebSocket<"u")this.Impl=WebSocket;else throw new Error("No WebSocket support");this.connected=!1,this.emitter=Ee();let{format:n,subprotocol:o,authStrategy:i}=r;this.format=n||"text",this.connectionOptions=r.websocketOptions,this.authStrategy=i||"param",this.authProtocol="",this.subprotocol=o}displayName(){return"WebSocket("+this.url+")"}open(){let e=this.subprotocol;return this.authStrategy==="sub-protocol"&&(e=[this.subprotocol,this.authProtocol]),this.connectionOptions?this.ws=new this.Impl(this.url,e,this.connectionOptions):this.ws=new this.Impl(this.url,e),this.ws.binaryType="arraybuffer",this.initListeners(),new Promise((r,s)=>{let n=[];n.push(this.once("open",()=>{n.forEach(o=>o()),r()})),n.push(this.once("close",()=>{n.forEach(o=>o()),s(Error("WS connection closed"))}))})}setURL(e){this.url=e}setParam(e,r){let s=new URL(this.url);s.searchParams.set(e,r);let n=`${s.protocol}//${s.host}${s.pathname}?${s.searchParams}`;this.setURL(n)}setToken(e,r="jid"){if(this.authStrategy==="param")this.setParam(r,e);else if(this.authStrategy==="header"){this.connectionOptions=this.connectionOptions||{},this.connectionOptions.headers=this.connectionOptions.headers||{};let s=`x-${r}`.toLowerCase();s=Object.keys(this.connectionOptions.headers).find(n=>n.toLowerCase()===s)||s,this.connectionOptions.headers[s]=e}else if(this.authStrategy==="sub-protocol")this.authProtocol=`anycable-token.${e}`;else throw new Error("Unknown auth strategy: "+this.authStrategy)}send(e){if(!this.ws||!this.connected)throw Error("WebSocket is not connected");this.ws.send(e)}close(){this.ws?this.onclose():this.connected=!1}on(e,r){return this.emitter.on(e,r)}once(e,r){let s=this.emitter.on(e,(...n)=>{s(),r(...n)});return s}initListeners(){this.ws.onerror=e=>{this.connected&&this.emitter.emit("error",e.error||new Error("WS Error"))},this.ws.onclose=()=>{this.onclose()},this.ws.onmessage=e=>{let r=e.data;this.format==="binary"&&(r=new Uint8Array(r)),this.emitter.emit("data",r)},this.ws.onopen=()=>{this.connected=!0,this.emitter.emit("open")}}onclose(){this.ws.onclose=void 0,this.ws.onmessage=void 0,this.ws.onopen=void 0,this.ws.close(),delete this.ws,this.connected=!1,this.emitter.emit("close")}}const Ht={protocol:"actioncable-v1-json",pingInterval:3e3,maxReconnectAttempts:1/0,maxMissingPings:2,logLevel:"warn",lazy:!0};function Zs(t,e){if(typeof t=="object"&&typeof e>"u"&&(e=t,t=void 0),e=e||{},!t&&!e.transport)throw Error("URL or transport must be specified");e=Object.assign({},Ht,e);let{protocol:r,websocketImplementation:s,websocketFormat:n,websocketOptions:o,websocketAuthStrategy:i,fallbacks:c,logLevel:l,logger:u,transport:h,encoder:g,lazy:m,monitor:f,pingInterval:p,reconnectStrategy:d,maxMissingPings:v,maxReconnectAttempts:x,subprotocol:w,tokenRefresher:R,historyTimestamp:T,protocolOptions:D,concurrentSubscribes:ee,performFailures:P,transportConfigurator:X,auth:L}=e;if(u=u||new ae(l),typeof r=="string"){w=w||r;let F=r.substring(0,r.lastIndexOf("-")),$=r.substring(r.lastIndexOf("-")+1);if(D=D||{},F==="actioncable-v1")r=new Mt({logger:u,...D});else if(F==="actioncable-v1-ext")r=new Js({logger:u,historyTimestamp:T,...D});else throw Error(`Protocol is not supported yet: ${r}`);if($==="json")g=g||new Ms,n=n||"text";else if($==="msgpack"){if(n="binary",!g)throw Error("Msgpack encoder must be specified explicitly. Use `@anycable/msgpack-encoder` package or build your own")}else if($==="protobuf"){if(n=n||"binary",!g)throw Error("Protobuf encoder must be specified explicitly. Use `@anycable/protobuf-encoder` package or build your own")}else throw Error(`Protocol is not supported yet: ${r}`)}if(!r)throw Error("Protocol must be specified");h=h||new Gs(t,{websocketImplementation:s,websocketOptions:o,subprotocol:w,authStrategy:i,format:n}),c&&(h=new Xs([h,...c],{logger:u})),L&&L.token&&h.setToken(L.token,L.param||"jid"),d=d||Jt(p),f!==!1&&(f=f||new Wt({pingInterval:p,reconnectStrategy:d,maxMissingPings:v,maxReconnectAttempts:x,logger:u}));let te={concurrentSubscribes:ee},B=new Vs({protocol:r,transport:h,encoder:g,logger:u,lazy:m,hubOptions:te,performFailures:P,transportConfigurator:X});return f&&(f.watch(B),B.monitor=f),R&&Qs(B,async()=>{try{await R(h)}catch(F){return u.error("Failed to refresh authentication token: "+F),!1}return B.connect().catch(()=>{}),!0}),B}function Qs(t,e){let r=!1;t.on("connect",()=>r=!1),t.on("close",async s=>{if(s){if(r){t.logger.warn("Token auto-refresh is disabled",s);return}s.reason==="token_expired"&&(r=!0,await e())}})}class Ys{constructor(e){this.channel=e}notify(e,...r){typeof this[e]=="function"&&this[e](...r)}perform(e,r={}){this.channel.perform(e,r)}send(e){this.channel.send(e)}get identifier(){return this.channel.identifier}unsubscribe(){return this.channel.disconnect()}}class en extends Je{constructor(e,r,s){super(e,r),this.subscription=new Ys(this),Object.assign(this.subscription,s),this.on("connect",({reconnect:n})=>this.subscription.notify("connected",{reconnected:n})),this.on("disconnect",()=>this.subscription.notify("disconnected",{allowReconnect:!0})),this.on("message",n=>this.subscription.notify("received",n)),this.on("close",n=>{n&&n instanceof ze?this.subscription.notify("rejected"):this.subscription.notify("disconnected",{allowReconnect:!1})})}}class tn{constructor(e){this.cable=e}create(e,r){let s,n;typeof e=="object"?(s=e.channel,delete e.channel,n=e):(s=e,n={});let o=new en(s,n,r);return o.subscription.notify("initialized"),this.cable.subscribe(o),o.subscription}findAll(e){return this.cable.hub.channels.filter(r=>r.identifier===e).map(r=>r.subscription)}}class rn{constructor(e){this.cable=e,this.subscriptions=new tn(e)}}class sn extends Bt{writeLogEntry(e,r,s){s?console[e](r,s):console[e](r)}}class nn extends Wt{watch(e){super.watch(e),this.initActivityListeners()}initActivityListeners(){if(typeof document<"u"&&typeof window<"u"&&document.addEventListener&&window.addEventListener){let e=()=>{document.hidden||this.reconnectNow()&&this.logger.debug("Trigger reconnect due to visibility change")},r=n=>{this.reconnectNow()&&this.logger.debug("Trigger reconnect",{event:n})},s=()=>this.disconnect(new U("page_frozen"));document.addEventListener("visibilitychange",e,!1),window.addEventListener("focus",r,!1),window.addEventListener("online",r,!1),window.addEventListener("resume",r,!1),window.addEventListener("freeze",s,!1),this.unbind.push(()=>{document.removeEventListener("visibilitychange",e,!1),window.removeEventListener("focus",r,!1),window.removeEventListener("online",r,!1),window.removeEventListener("resume",r,!1),window.removeEventListener("freeze",s,!1)})}}disconnect(e){this.state==="disconnected"||this.state==="closed"||(this.logger.info("Disconnecting",{reason:e.message}),this.cancelReconnect(),this.stopPolling(),this.state="pending_disconnect",this.target.disconnected(e))}}const on=["cable","action-cable"],cn="/cable",xe=(t,e)=>{for(let r of on){let s=t.head.querySelector(`meta[name='${r}-${e}']`);if(s)return s.getAttribute("content")}},Vt=t=>t.match(/wss?:\/\//)?t:typeof window<"u"?`${window.location.protocol.replace("http","ws")}//${window.location.host}${t}`:t,an=()=>{if(typeof document<"u"&&document.head){let t=xe(document,"url");if(t)return Vt(t)}return Vt(cn)},ln=()=>{if(typeof document<"u"&&document.head){let t=xe(document,"history-timestamp");if(t)return t|0}},un=()=>{if(typeof document<"u"&&document.head)return xe(document,"token")},hn=()=>{if(typeof document<"u"&&document.head)return xe(document,"token-param")};function dn(t,e){typeof t=="object"&&typeof e>"u"&&(e=t,t=void 0),t=t||an(),e=e||{},e.historyTimestamp||(e.historyTimestamp=ln());let r=un();if(r){let u=hn();e.auth=Object.assign({token:r,param:u},e.auth||{})}e=Object.assign({},Ht,e);let{logLevel:s,logger:n,pingInterval:o,reconnectStrategy:i,maxMissingPings:c,maxReconnectAttempts:l}=e;return n=e.logger=e.logger||new sn(s),i=e.reconnectStrategy=e.reconnectStrategy||Jt(o),e.monitor!==!1&&(e.monitor=e.monitor||new nn({pingInterval:o,reconnectStrategy:i,maxMissingPings:c,maxReconnectAttempts:l,logger:n})),Zs(t,e)}function fn(t,e){let r=dn(t,e);return new rn(r)}class pn{constructor(e="/openc3-api/cable"){this._cable=null,this._url=e}disconnect(){this._cable&&(this._cable.cable.disconnect(),this._cable=null)}createSubscription(e,r,s={},n={}){return OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity).then(o=>{if(o&&OpenC3Auth.setTokens(),this._cable==null){let i=this._url+"?scope="+encodeURIComponent(r)+"&authorization="+encodeURIComponent(localStorage.openc3Token);i=new URL(i,document.baseURI).href,this._cable=fn(i)}return this._cable.subscriptions.create({channel:e,...n},s)})}recordPing(){}}Te("g",pn);function le(t){return gn.test(t)}const gn=/^-?[0-9]+$/;function Kt(t){return mn.test(t)}const mn=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function Xt(t,e){if(le(t))return Number.isSafeInteger(Number.parseInt(t,10));const r=Number.parseFloat(t),s=String(r);if(t===s)return!0;const n=Gt(t),o=Gt(s);return!!(n===o||(e==null?void 0:e.approx)===!0&&!le(t)&&o.length>=14&&n.startsWith(o.substring(0,14)))}let ue=function(t){return t.underflow="underflow",t.overflow="overflow",t.truncate_integer="truncate_integer",t.truncate_float="truncate_float",t}({});function bn(t){if(Xt(t,{approx:!1}))return;if(le(t))return ue.truncate_integer;const e=Number.parseFloat(t);return Number.isFinite(e)?e===0?ue.underflow:ue.truncate_float:ue.overflow}function Gt(t){const{start:e,end:r}=_n(t),s=t.substring(e,r),n=s.indexOf(".");return n===-1?s:s.substring(0,n)+s.substring(n+1)}function _n(t){let e=0;for(t[0]==="-"&&e++;t[e]==="0"||t[e]===".";)e++;let r=t.lastIndexOf("e");for(r===-1&&(r=t.lastIndexOf("E")),r===-1&&(r=t.length);(t[r-1]==="0"||t[r-1]===".")&&r>e;)r--;return{start:e,end:r}}class yn{constructor(e){if(he(this,"isLosslessNumber",!0),!Kt(e))throw new Error(`Invalid number (value: "${e}")`);this.value=e}valueOf(){const e=bn(this.value);if(e===void 0||e===ue.truncate_float)return Number.parseFloat(this.value);if(le(this.value))return BigInt(this.value);throw new Error(`Cannot safely convert to number: the value '${this.value}' would ${e} and become ${Number.parseFloat(this.value)}`)}toString(){return this.value}}function wn(t){return t&&typeof t=="object"&&t.isLosslessNumber||!1}function vn(t){return new yn(t)}function Sn(t,e){return He({"":t},"",t,e)}function He(t,e,r,s){return Array.isArray(r)?s.call(t,e,xn(r,s)):r&&typeof r=="object"&&!wn(r)?s.call(t,e,En(r,s)):s.call(t,e,r)}function En(t,e){for(const r of Object.keys(t)){const s=He(t,r,t[r],e);s!==void 0?t[r]=s:delete t[r]}return t}function xn(t,e){for(let r=0;r<t.length;r++)t[r]=He(t,String(r),t[r],e);return t}function On(t,e,r){const s=typeof r=="function"?{parseNumber:r}:r,n=(s==null?void 0:s.parseNumber)??vn,o=(s==null?void 0:s.onDuplicateKey)??P;let i=0;const c=h();return x(c),R(),e?Sn(c,e):c;function l(){if(t.charCodeAt(i)===jn){i++,m();const b={};let y=!0;for(;i<t.length&&t.charCodeAt(i)!==Qt;){y?y=!1:(d(),m());const I=i,M=f();if(M===void 0){ee();return}m(),v();const j=h();if(j===void 0){F();return}if(Object.prototype.hasOwnProperty.call(b,M)&&!Ve(j,b[M])){const z=o({key:M,position:I+1,oldValue:b[M],newValue:j});z!==void 0&&(b[M]=z)}else b[M]=j}return t.charCodeAt(i)!==Qt&&X(),i++,b}}function u(){if(t.charCodeAt(i)===Pn){i++,m();const b=[];let y=!0;for(;i<t.length&&t.charCodeAt(i)!==Yt;){y?y=!1:d();const I=h();w(I),b.push(I)}return t.charCodeAt(i)!==Yt&&L(),i++,b}}function h(){m();const b=f()??p()??l()??u()??g("true",!0)??g("false",!1)??g("null",null);return m(),b}function g(b,y){if(t.slice(i,i+b.length)===b)return i+=b.length,y}function m(){for(;Rn(t.charCodeAt(i));)i++}function f(){if(t.charCodeAt(i)===Ke){i++;let b="";for(;i<t.length&&t.charCodeAt(i)!==Ke;){if(t.charCodeAt(i)===kn){const y=t[i+1],I=Tn[y];I!==void 0?(b+=I,i++):y==="u"?Oe(t.charCodeAt(i+2))&&Oe(t.charCodeAt(i+3))&&Oe(t.charCodeAt(i+4))&&Oe(t.charCodeAt(i+5))?(b+=String.fromCharCode(Number.parseInt(t.slice(i+2,i+6),16)),i+=5):$(i):B(i)}else Cn(t.charCodeAt(i))?b+=t[i]:te(t[i]);i++}return D(),i++,b}}function p(){const b=i;if(t.charCodeAt(i)===er&&(i++,T(b)),t.charCodeAt(i)===Xe)i++;else if(An(t.charCodeAt(i)))for(i++;Re(t.charCodeAt(i));)i++;if(t.charCodeAt(i)===Dn)for(i++,T(b);Re(t.charCodeAt(i));)i++;if(t.charCodeAt(i)===Wn||t.charCodeAt(i)===Jn)for(i++,(t.charCodeAt(i)===er||t.charCodeAt(i)===Fn)&&i++,T(b);Re(t.charCodeAt(i));)i++;if(i>b)return n(t.slice(b,i))}function d(){if(t.charCodeAt(i)!==qn)throw new SyntaxError(`Comma ',' expected after value ${E()}`);i++}function v(){if(t.charCodeAt(i)!==Bn)throw new SyntaxError(`Colon ':' expected after property name ${E()}`);i++}function x(b){if(b===void 0)throw new SyntaxError(`JSON value expected ${E()}`)}function w(b){if(b===void 0)throw new SyntaxError(`Array item expected ${E()}`)}function R(){if(i<t.length)throw new SyntaxError(`Expected end of input ${E()}`)}function T(b){if(!Re(t.charCodeAt(i))){const y=t.slice(b,i);throw new SyntaxError(`Invalid number '${y}', expecting a digit ${E()}`)}}function D(){if(t.charCodeAt(i)!==Ke)throw new SyntaxError(`End of string '"' expected ${E()}`)}function ee(){throw new SyntaxError(`Quoted object key expected ${E()}`)}function P(b){let{key:y,position:I}=b;throw new SyntaxError(`Duplicate key '${y}' encountered at position ${I}`)}function X(){throw new SyntaxError(`Quoted object key or end of object '}' expected ${E()}`)}function L(){throw new SyntaxError(`Array item or end of array ']' expected ${E()}`)}function te(b){throw new SyntaxError(`Invalid character '${b}' ${k()}`)}function B(b){const y=t.slice(b,b+2);throw new SyntaxError(`Invalid escape character '${y}' ${k()}`)}function F(){throw new SyntaxError(`Object value expected after ':' ${k()}`)}function $(b){const y=t.slice(b,b+6);throw new SyntaxError(`Invalid unicode character '${y}' ${k()}`)}function k(){return`at position ${i}`}function Ae(){return i<t.length?`but got '${t[i]}'`:"but reached end of input"}function E(){return`${Ae()} ${k()}`}}function Rn(t){return t===In||t===Nn||t===Un||t===Ln}function Oe(t){return t>=Xe&&t<=Ge||t>=Mn&&t<=Hn||t>=zn&&t<=Vn}function Re(t){return t>=Xe&&t<=Ge}function An(t){return t>=$n&&t<=Ge}function Cn(t){return t>=32&&t<=1114111}function Ve(t,e){return t===e?!0:Array.isArray(t)&&Array.isArray(e)?t.length===e.length&&t.every((r,s)=>Ve(r,e[s])):Zt(t)&&Zt(e)?[...new Set([...Object.keys(t),...Object.keys(e)])].every(r=>Ve(t[r],e[r])):!1}function Zt(t){return typeof t=="object"&&t!==null}const Tn={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
|
|
7
|
+
`,r:"\r",t:" "},kn=92,jn=123,Qt=125,Pn=91,Yt=93,In=32,Nn=10,Un=9,Ln=13,Ke=34,Fn=43,er=45,Xe=48,$n=49,Ge=57,qn=44,Dn=46,Bn=58,Mn=65,zn=97,Jn=69,Wn=101,Hn=70,Vn=102;function tr(t,e,r,s){return n(t);function n(l,u){if(Array.isArray(s)){const h=s.find(g=>g.test(l));if(h){const g=h.stringify(l);if(typeof g!="string"||!Kt(g))throw new Error(`Invalid JSON number: output of a number stringifier must be a string containing a JSON number (output: ${g})`);return g}}if(typeof l=="boolean"||typeof l=="number"||typeof l=="string"||l===null||l instanceof Date||l instanceof Boolean||l instanceof Number||l instanceof String)return JSON.stringify(l);if(l!=null&&l.isLosslessNumber||typeof l=="bigint")return l.toString();if(Array.isArray(l))return o(l);if(l&&typeof l=="object")return i(l)}function o(l,u){if(l.length===0)return"[]";let h="[";for(let g=0;g<l.length;g++){const m=l[g];typeof m<"u"&&typeof m!="function"?h+=n(m):h+="null",g<l.length-1&&(h+=",")}return h+="]",h}function i(l,u){if(typeof l.toJSON=="function")return tr(l.toJSON(),e,r,void 0);const h=Array.isArray(e)?e.map(String):Object.keys(l);if(h.length===0)return"{}";let g=!0,m="{";for(const f of h){const p=l[f];if(c(f,p)){g?g=!1:m+=",";const d=JSON.stringify(f);m+=`${d}:`,m+=n(p)}}return m+="}",m}function c(l,u){return typeof u<"u"&&typeof u!="function"&&typeof u!="symbol"}}function Kn(t){return le(t)&&!Xt(t)?BigInt(t):parseFloat(t)}class Xn{constructor(){he(this,"id",1)}async exec(e,r,s={},n={},o=6e4){try{await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity)&&OpenC3Auth.setTokens()}catch{OpenC3Auth.login()}this.id=this.id+1;try{return s.scope=window.openc3Scope,n.manual=!0,(await Be.post("/openc3-api/api",{jsonrpc:"2.0",method:e,params:r,id:this.id,keyword_params:s},{headers:{Authorization:localStorage.openc3Token,"Content-Type":"application/json-rpc",...n},timeout:o,transformRequest:[(i,c)=>tr(i)],transformResponse:[i=>On(i,void 0,Kn)]})).data.result}catch(i){let c=new Error;throw i.response?(c.name=i.response.data.error.data.class,c.message=i.response.data.error.data.message,c.object=i.response.data.error):i.request?(c.name="Request error",c.message="Request error, no response received"):c=i,c}}decode_openc3_type(e){if(e!==null&&typeof e=="object"&&e.json_class=="Float"&&e.raw){if(e.raw=="NaN")return NaN;if(e.raw=="Infinity")return 1/0;if(e.raw=="-Infinity")return-1/0}return null}encode_openc3_type(e){return Number.isNaN(e)?{json_class:"Float",raw:"NaN"}:e==Number.POSITIVE_INFINITY?{json_class:"Float",raw:"Infinity"}:e==Number.NEGATIVE_INFINITY?{json_class:"Float",raw:"-Infinity"}:null}ensure_offline_access(){this.offline_access_needed().then(e=>{e&&(localStorage.openc3OfflineToken?this.set_offline_access(localStorage.openc3OfflineToken).then(()=>{delete localStorage.openc3OfflineToken}):OpenC3Auth.getOfflineAccess())})}offline_access_needed(){return this.exec("offline_access_needed",[])}set_offline_access(e){return this.exec("set_offline_access",[e])}get_all_interface_info(){return this.exec("get_all_interface_info",[])}map_target_to_interface(e,r,s,n,o){return this.exec("map_target_to_interface",[e,r],{cmd_only:s,tlm_only:n,unmap_old:o})}unmap_target_from_interface(e,r,s,n){return this.exec("unmap_target_from_interface",[e,r],{cmd_only:s,tlm_only:n})}connect_interface(e,...r){return r.length>0?this.exec("connect_interface",[e,...r]):this.exec("connect_interface",[e])}disconnect_interface(e){return this.exec("disconnect_interface",[e])}interface_cmd(e,r,...s){return this.exec("interface_cmd",[e,r,...s])}interface_target_enable(e,r,s=!1,n=!1){return this.exec("interface_target_enable",[e,r],{cmd_only:s,tlm_only:n})}interface_target_disable(e,r,s=!1,n=!1){return this.exec("interface_target_disable",[e,r],{cmd_only:s,tlm_only:n})}interface_details(e){return this.exec("interface_details",[e])}get_all_router_info(){return this.exec("get_all_router_info",[])}map_target_to_router(e,r,s,n,o){return this.exec("map_target_to_router",[e,r],{cmd_only:s,tlm_only:n,unmap_old:o})}unmap_target_from_router(e,r,s,n){return this.exec("unmap_target_from_router",[e,r],{cmd_only:s,tlm_only:n})}connect_router(e){return this.exec("connect_router",[e])}disconnect_router(e){return this.exec("disconnect_router",[e])}router_target_enable(e,r,s=!1,n=!1){return this.exec("router_target_enable",[e,r],{cmd_only:s,tlm_only:n})}router_target_disable(e,r,s=!1,n=!1){return this.exec("router_target_disable",[e,r],{cmd_only:s,tlm_only:n})}router_details(e){return this.exec("router_details",[e])}get_target_interfaces(){return this.exec("get_target_interfaces",[])}get_tlm_cnts(e){return this.exec("get_tlm_cnts",[e])}get_item(e,r,s){return this.exec("get_item",[e,r,s])}get_param(e,r,s){return this.exec("get_param",[e,r,s])}get_parameter(e,r,s){return this.exec("get_param",[e,r,s])}get_limits_sets(){return this.exec("get_limits_sets",[])}get_limits_set(){return this.exec("get_limits_set",[])}set_limits_set(e){return this.exec("set_limits_set",[e])}get_target(e){return this.exec("get_target",[e])}get_target_names(){return this.exec("get_target_names",[])}get_target_list(){return this.exec("get_target_names",[])}get_tlm(e,r){return this.exec("get_tlm",[e,r])}get_telemetry(e,r){return this.exec("get_tlm",[e,r])}get_all_tlm(e){return this.exec("get_all_tlm",[e])}get_all_telemetry(e){return this.exec("get_all_tlm",[e])}get_all_tlm_names(e,r=!1){return this.exec("get_all_tlm_names",[e],{hidden:r})}get_all_telemetry_names(e){return this.exec("get_all_tlm_names",[e])}get_all_tlm_item_names(e){return this.exec("get_all_tlm_item_names",[e])}async get_tlm_packet(e,r,s,n=30){const o=await this.exec("get_tlm_packet",[e,r],{type:s,stale_time:n});if(o!=null){let i=o.length,c=null;for(let l=0;l<i;l++)c=this.decode_openc3_type(o[l][1]),c!==null&&(o[l][1]=c)}return o}get_packet_derived_items(e,r){return this.exec("get_packet_derived_items",[e,r])}get_tlm_buffer(e,r){return this.exec("get_tlm_buffer",[e,r])}get_tlm_available(e){return this.exec("get_tlm_available",[e])}async get_tlm_values(e,r=30,s=null,n=null,o=null){let i={stale_time:r};s!==null&&(i.cache_timeout=s),n!==null&&(i.start_time=n.toISOString()),o!==null&&(i.end_time=o.toISOString());const c=await this.exec("get_tlm_values",[e],i,{},1e4);if(c&&c.length>0){let l=c.length,u=null;for(let h=0;h<l;h++)u=this.decode_openc3_type(c[h][0]),u!==null&&(c[h][0]=u)}return c}get_limits(e,r,s){return this.exec("get_limits",[e,r,s])}async tlm(e,r,s,n="CONVERTED"){let o=null;if(r===void 0)o=await this.exec("tlm",[e]);else if(s===void 0)if(["RAW","CONVERTED","FORMATTED","WITH_UNITS"].includes(r))o=await this.exec("tlm",[e],{type:r});else{let c=new Error;throw c.name="TypeError",c.message=`Invalid data type ${r}. Valid options are RAW, CONVERTED, FORMATTED, and WITH_UNITS.`,c}else o=await this.exec("tlm",[e,r,s],{type:n});let i=this.decode_openc3_type(o);return i!==null&&(o=i),o}async inject_tlm(e,r,s=null,n="CONVERTED"){await this.exec("inject_tlm",[e,r,s],{type:n})}set_tlm(e,r,s,n){return this.exec("set_tlm",[e,r,s],{type:n})}override_tlm(e,r,s,n){return this.exec("override_tlm",[e,r,s],{type:n})}get_overrides(){return this.exec("get_overrides")}normalize_tlm(e,r,s,n){return this.exec("normalize_tlm",[e,r,s],{type:n})}get_all_cmds(e){return this.exec("get_all_cmds",[e])}get_all_commands(e){return this.exec("get_all_cmds",[e])}get_all_cmd_names(e,r=!1){return this.exec("get_all_cmd_names",[e],{hidden:r})}get_all_command_names(e){return this.exec("get_all_cmd_names",[e])}get_cmd(e,r){return this.exec("get_cmd",[e,r])}get_command(e,r){return this.exec("get_cmd",[e,r])}get_cmd_cnts(e){return this.exec("get_cmd_cnts",[e])}get_cmd_value(e,r,s,n="CONVERTED"){return this.exec("get_cmd_value",[e,r,s,n])}get_cmd_buffer(e,r){return this.exec("get_cmd_buffer",[e,r])}_cmd(e,r,s,n,o,i={}){let c=null;for(let l in n)Object.prototype.hasOwnProperty.call(n,l)&&(c=this.encode_openc3_type(n[l]),c!==null&&(n[l]=c));return this.exec(e,[r,s,n],i,o)}get_cmd_hazardous(e,r,s,n={}){return r===void 0?this.exec("get_cmd_hazardous",e,{},n):this._cmd("get_cmd_hazardous",e,r,s,n)}cmd(e,r,s,n={},o={}){return r===void 0?this.exec("cmd",e,o,n):this._cmd("cmd",e,r,s,n,o)}cmd_no_range_check(e,r,s,n={},o={}){return r===void 0?this.exec("cmd_no_range_check",e,o,n):this._cmd("cmd_no_range_check",e,r,s,n,o)}cmd_raw(e,r,s,n={},o={}){return r===void 0?this.exec("cmd_raw",e,o,n):this._cmd("cmd_raw",e,r,s,n,o)}cmd_raw_no_range_check(e,r,s,n={},o={}){return r===void 0?this.exec("cmd_raw_no_range_check",e,o,n):this._cmd("cmd_raw_no_range_check",e,r,s,n,o)}cmd_no_hazardous_check(e,r,s,n={},o={}){return r===void 0?this.exec("cmd_no_hazardous_check",e,o,n):this._cmd("cmd_no_hazardous_check",e,r,s,n,o)}cmd_no_checks(e,r,s,n={},o={}){return r===void 0?this.exec("cmd_no_checks",e,o,n):this._cmd("cmd_no_checks",e,r,s,n,o)}cmd_raw_no_hazardous_check(e,r,s,n={},o={}){return r===void 0?this.exec("cmd_raw_no_hazardous_check",e,o,n):this._cmd("cmd_raw_no_hazardous_check",e,r,s,n,o)}cmd_raw_no_checks(e,r,s,n={},o={}){return r===void 0?this.exec("cmd_raw_no_checks",e,o,n):this._cmd("cmd_raw_no_checks",e,r,s,n,o)}build_cmd(e,r,s,n={},o={}){return r===void 0?this.exec("build_cmd",e,o,n):this._cmd("build_cmd",e,r,s,n,o)}build_command(e,r,s,n={},o={}){return r===void 0?this.exec("build_cmd",e,o,n):this._cmd("build_cmd",e,r,s,n,o)}get_interface_names(){return this.exec("get_interface_names",[])}get_router_names(){return this.exec("get_router_names",[])}send_raw(e,r){return this.exec("send_raw",[e,r])}list_configs(e){return this.exec("list_configs",[e])}load_config(e,r){return this.exec("load_config",[e,r])}save_config(e,r,s){return this.exec("save_config",[e,r,s])}delete_config(e,r){return this.exec("delete_config",[e,r])}enable_limits(e,r,s){return this.exec("enable_limits",[e,r,s])}disable_limits(e,r,s){return this.exec("disable_limits",[e,r,s])}get_out_of_limits(){return this.exec("get_out_of_limits",[])}get_overall_limits_state(e){return this.exec("get_overall_limits_state",[e])}list_settings(){return this.exec("list_settings",[])}get_all_settings(){return this.exec("get_all_settings",[])}get_setting(e,r){return this.exec("get_setting",[e],r)}get_settings(e,r){return this.exec("get_settings",e,r)}set_setting(e,r){return this.exec("set_setting",[e,r])}update_news(){return this.exec("update_news",[])}update_plugin_store(){return this.exec("update_plugin_store",[])}save_setting(e,r){return this.exec("set_setting",[e,r])}get_metrics(){return this.exec("get_metrics",[])}async hashString(e){if(window.isSecureContext){const r=new TextEncoder().encode(e),s=await crypto.subtle.digest("SHA-256",r),n=new Uint8Array(s);return Array.from(n).map(o=>o.toString(16).padStart(2,"0")).join("")}}}Te("y",Xn)}}});
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: openc3-cosmos-tool-cmdtlmserver
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 6.
|
|
4
|
+
version: 6.10.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ryan Melton
|
|
@@ -22,86 +22,86 @@ files:
|
|
|
22
22
|
- README.md
|
|
23
23
|
- Rakefile
|
|
24
24
|
- plugin.txt
|
|
25
|
-
- tools/cmdtlmserver/ArrayWidget-
|
|
26
|
-
- tools/cmdtlmserver/ArrayplotWidget-
|
|
27
|
-
- tools/cmdtlmserver/BarColumn-
|
|
28
|
-
- tools/cmdtlmserver/BlockWidget-
|
|
29
|
-
- tools/cmdtlmserver/ButtonWidget-
|
|
30
|
-
- tools/cmdtlmserver/CanvasWidget-
|
|
31
|
-
- tools/cmdtlmserver/CanvasdotWidget-
|
|
32
|
-
- tools/cmdtlmserver/CanvasimageWidget-
|
|
33
|
-
- tools/cmdtlmserver/CanvasimagevalueWidget-
|
|
34
|
-
- tools/cmdtlmserver/CanvaslabelWidget-
|
|
35
|
-
- tools/cmdtlmserver/CanvaslabelvalueWidget-
|
|
36
|
-
- tools/cmdtlmserver/CanvaslineWidget-
|
|
37
|
-
- tools/cmdtlmserver/CanvaslinevalueWidget-
|
|
38
|
-
- tools/cmdtlmserver/CheckbuttonWidget-
|
|
39
|
-
- tools/cmdtlmserver/CmdPacketsTab-
|
|
40
|
-
- tools/cmdtlmserver/CmdTlmServer-
|
|
41
|
-
- tools/cmdtlmserver/ComboboxWidget-
|
|
42
|
-
- tools/cmdtlmserver/DataFlowsTab-
|
|
43
|
-
- tools/cmdtlmserver/DateWidget-
|
|
44
|
-
- tools/cmdtlmserver/DetailsDialog-
|
|
45
|
-
- tools/cmdtlmserver/DynamicWidget-
|
|
46
|
-
- tools/cmdtlmserver/FormatvalueWidget-
|
|
47
|
-
- tools/cmdtlmserver/Graph-
|
|
48
|
-
- tools/cmdtlmserver/GraphWidget-
|
|
49
|
-
- tools/cmdtlmserver/HorizontalWidget-
|
|
50
|
-
- tools/cmdtlmserver/HorizontalboxWidget-
|
|
51
|
-
- tools/cmdtlmserver/HorizontallineWidget-
|
|
52
|
-
- tools/cmdtlmserver/IframeWidget-
|
|
53
|
-
- tools/cmdtlmserver/ImageLoader-
|
|
54
|
-
- tools/cmdtlmserver/ImageviewerWidget-
|
|
55
|
-
- tools/cmdtlmserver/InterfaceFlowChart-
|
|
56
|
-
- tools/cmdtlmserver/InterfacesTab-
|
|
57
|
-
- tools/cmdtlmserver/LabelWidget-
|
|
58
|
-
- tools/cmdtlmserver/LabelledWidget-
|
|
59
|
-
- tools/cmdtlmserver/LabelprogressbarWidget-
|
|
60
|
-
- tools/cmdtlmserver/LabelsparklineWidget-
|
|
61
|
-
- tools/cmdtlmserver/LabelvalueWidget-
|
|
62
|
-
- tools/cmdtlmserver/LabelvaluedescWidget-
|
|
63
|
-
- tools/cmdtlmserver/LabelvaluelimitsbarWidget-
|
|
64
|
-
- tools/cmdtlmserver/LabelvaluelimitscolumnWidget-
|
|
65
|
-
- tools/cmdtlmserver/LabelvaluerangebarWidget-
|
|
66
|
-
- tools/cmdtlmserver/Layout-
|
|
67
|
-
- tools/cmdtlmserver/LedWidget-
|
|
68
|
-
- tools/cmdtlmserver/LimitsbarWidget-
|
|
69
|
-
- tools/cmdtlmserver/LimitscolorWidget-
|
|
70
|
-
- tools/cmdtlmserver/LimitscolumnWidget-
|
|
71
|
-
- tools/cmdtlmserver/LinegraphWidget-
|
|
72
|
-
- tools/cmdtlmserver/MatrixbycolumnsWidget-
|
|
73
|
-
- tools/cmdtlmserver/ProgressbarWidget-
|
|
74
|
-
- tools/cmdtlmserver/RadiobuttonWidget-
|
|
75
|
-
- tools/cmdtlmserver/RadiogroupWidget-
|
|
76
|
-
- tools/cmdtlmserver/RangebarWidget-
|
|
77
|
-
- tools/cmdtlmserver/RawBuffer-
|
|
78
|
-
- tools/cmdtlmserver/RawDialog-
|
|
79
|
-
- tools/cmdtlmserver/RollupWidget-
|
|
80
|
-
- tools/cmdtlmserver/RoutersTab-
|
|
81
|
-
- tools/cmdtlmserver/ScrollwindowWidget-
|
|
82
|
-
- tools/cmdtlmserver/SignalWidget-
|
|
83
|
-
- tools/cmdtlmserver/SpacerWidget-
|
|
84
|
-
- tools/cmdtlmserver/SparklineWidget-
|
|
85
|
-
- tools/cmdtlmserver/StatusTab-
|
|
86
|
-
- tools/cmdtlmserver/TabbookWidget-
|
|
87
|
-
- tools/cmdtlmserver/TargetsTab-
|
|
88
|
-
- tools/cmdtlmserver/TextboxWidget-
|
|
89
|
-
- tools/cmdtlmserver/TextfieldWidget
|
|
90
|
-
- tools/cmdtlmserver/TimeWidget-
|
|
91
|
-
- tools/cmdtlmserver/TitleWidget-
|
|
92
|
-
- tools/cmdtlmserver/TlmPacketsTab-
|
|
93
|
-
- tools/cmdtlmserver/Updater-
|
|
94
|
-
- tools/cmdtlmserver/VWidget-
|
|
95
|
-
- tools/cmdtlmserver/ValueWidget-
|
|
96
|
-
- tools/cmdtlmserver/ValuelimitsbarWidget-
|
|
97
|
-
- tools/cmdtlmserver/ValuelimitscolumnWidget-
|
|
98
|
-
- tools/cmdtlmserver/ValuerangebarWidget-
|
|
99
|
-
- tools/cmdtlmserver/VerticalWidget-
|
|
100
|
-
- tools/cmdtlmserver/VerticalboxWidget-
|
|
101
|
-
- tools/cmdtlmserver/Widget-
|
|
102
|
-
- tools/cmdtlmserver/main-
|
|
25
|
+
- tools/cmdtlmserver/ArrayWidget-DQRQ7dPa-32b61d76530621722572.js
|
|
26
|
+
- tools/cmdtlmserver/ArrayplotWidget-BeSfz3MR-7a56b97ea5bbac39037a.js
|
|
27
|
+
- tools/cmdtlmserver/BarColumn-BdIaQfOz-c7830367e783872ea1ce.js
|
|
28
|
+
- tools/cmdtlmserver/BlockWidget-DSFKrUxl-95339dcf2952b370f163.js
|
|
29
|
+
- tools/cmdtlmserver/ButtonWidget-CFbjdxSr-bef39130626037620706.js
|
|
30
|
+
- tools/cmdtlmserver/CanvasWidget-BloYxuKE-80969a9c374686934749.js
|
|
31
|
+
- tools/cmdtlmserver/CanvasdotWidget-CZxUOPRd-3a3d48ea53fa059e8f32.js
|
|
32
|
+
- tools/cmdtlmserver/CanvasimageWidget-ULQq3nqZ-909bb80515b48d2e71dc.js
|
|
33
|
+
- tools/cmdtlmserver/CanvasimagevalueWidget-jFCVXYhi-5575222a4323c7485dc4.js
|
|
34
|
+
- tools/cmdtlmserver/CanvaslabelWidget-DQhBI1vZ-d87b11e9b31556dd29db.js
|
|
35
|
+
- tools/cmdtlmserver/CanvaslabelvalueWidget-C4REgztL-45da328b78c6bf4b4308.js
|
|
36
|
+
- tools/cmdtlmserver/CanvaslineWidget-S4PCEvZM-28dcb953f20bd7cb4647.js
|
|
37
|
+
- tools/cmdtlmserver/CanvaslinevalueWidget-597khOSA-c652e625ca97dc92da79.js
|
|
38
|
+
- tools/cmdtlmserver/CheckbuttonWidget-BcblKat3-565f8ee1b897988e4048.js
|
|
39
|
+
- tools/cmdtlmserver/CmdPacketsTab-3bf324378cc5053fae84.js
|
|
40
|
+
- tools/cmdtlmserver/CmdTlmServer-be8d10fa10641805ff41.js
|
|
41
|
+
- tools/cmdtlmserver/ComboboxWidget-BMcHS4g5-f4681e5e15d49b1cba4a.js
|
|
42
|
+
- tools/cmdtlmserver/DataFlowsTab-c0d1d592eaacc73a8f92.js
|
|
43
|
+
- tools/cmdtlmserver/DateWidget-BpnMzSBn-ea6f5f41e4d0dbc4b7ce.js
|
|
44
|
+
- tools/cmdtlmserver/DetailsDialog-q9piPmHq-1def7fd6a368b27b09aa.js
|
|
45
|
+
- tools/cmdtlmserver/DynamicWidget-DHL7pbgW-14b18524247f48271cbe.js
|
|
46
|
+
- tools/cmdtlmserver/FormatvalueWidget-Cm-HmAmw-1d77547c65f83327b6c3.js
|
|
47
|
+
- tools/cmdtlmserver/Graph-BEodMaxQ-b8114e2d242d3a9fe54f.js
|
|
48
|
+
- tools/cmdtlmserver/GraphWidget-CAADBFV--248abfce9cccc4fe88df.js
|
|
49
|
+
- tools/cmdtlmserver/HorizontalWidget-NcXIXxh7-e8667359d77d3e87a063.js
|
|
50
|
+
- tools/cmdtlmserver/HorizontalboxWidget-CW9XX4uH-371c9dbe917b9ab51374.js
|
|
51
|
+
- tools/cmdtlmserver/HorizontallineWidget-Cu2dDt7k-5245e229a85767e68094.js
|
|
52
|
+
- tools/cmdtlmserver/IframeWidget-BBU3MkSq-f0490f3eef79e1a0521b.js
|
|
53
|
+
- tools/cmdtlmserver/ImageLoader-XAGgjKkq-e7c973572e5e4bb6f563.js
|
|
54
|
+
- tools/cmdtlmserver/ImageviewerWidget-UByjeO63-afef74a37a42e2dc3a28.js
|
|
55
|
+
- tools/cmdtlmserver/InterfaceFlowChart-ce0b0842d428f141fb10.js
|
|
56
|
+
- tools/cmdtlmserver/InterfacesTab-98c7f6a0c9ab234a78f3.js
|
|
57
|
+
- tools/cmdtlmserver/LabelWidget-BsOpolUL-e57548068be4d8479e60.js
|
|
58
|
+
- tools/cmdtlmserver/LabelledWidget-DVOGpgZ--e24a9c2bd02eb2608420.js
|
|
59
|
+
- tools/cmdtlmserver/LabelprogressbarWidget-BeE9fDs6-36d8ae7b5fba888b1c23.js
|
|
60
|
+
- tools/cmdtlmserver/LabelsparklineWidget-Bj7trKML-5788b21256972ec598a6.js
|
|
61
|
+
- tools/cmdtlmserver/LabelvalueWidget-Dwqsh5o2-cd58afc0c6f83ccb71d3.js
|
|
62
|
+
- tools/cmdtlmserver/LabelvaluedescWidget-Cfu2vuja-9f4695dbb5f6455fcf9b.js
|
|
63
|
+
- tools/cmdtlmserver/LabelvaluelimitsbarWidget-DYV68AJ_-ee78838496e699dea39b.js
|
|
64
|
+
- tools/cmdtlmserver/LabelvaluelimitscolumnWidget-CtaoTixt-2c576192ec2b1596659b.js
|
|
65
|
+
- tools/cmdtlmserver/LabelvaluerangebarWidget-3EaUB6E6-6aba4287a9719284f8dc.js
|
|
66
|
+
- tools/cmdtlmserver/Layout-DNR3xnku-34141297d190f14e00e4.js
|
|
67
|
+
- tools/cmdtlmserver/LedWidget-Gi6GXtrW-d33481b5c5d4329c398b.js
|
|
68
|
+
- tools/cmdtlmserver/LimitsbarWidget-BTZQY9XQ-c70d78a09c0a452573b2.js
|
|
69
|
+
- tools/cmdtlmserver/LimitscolorWidget-CFnmvlrA-5c50083fd95f86412d31.js
|
|
70
|
+
- tools/cmdtlmserver/LimitscolumnWidget-DSsz36tT-dea3480aa38760f9cdee.js
|
|
71
|
+
- tools/cmdtlmserver/LinegraphWidget-CeBijgDo-67fd1624529512322762.js
|
|
72
|
+
- tools/cmdtlmserver/MatrixbycolumnsWidget-DX9uhjAv-b6dc305f5b8dd8ca4892.js
|
|
73
|
+
- tools/cmdtlmserver/ProgressbarWidget-DJepvOip-b11c1ddffdff5dd4c10a.js
|
|
74
|
+
- tools/cmdtlmserver/RadiobuttonWidget-4e8ROIfg-0c8a9e6bfba2f4950058.js
|
|
75
|
+
- tools/cmdtlmserver/RadiogroupWidget-CUucj6aT-78de49e21a6b13024b64.js
|
|
76
|
+
- tools/cmdtlmserver/RangebarWidget-Bu4rqlrx-2c346709f4b1b35d3774.js
|
|
77
|
+
- tools/cmdtlmserver/RawBuffer-cccb79b877d7a7d027ae.js
|
|
78
|
+
- tools/cmdtlmserver/RawDialog-ceb6e42c59fe0adfb1ef.js
|
|
79
|
+
- tools/cmdtlmserver/RollupWidget-ByLvEEau-bf925f6491999bd4dd94.js
|
|
80
|
+
- tools/cmdtlmserver/RoutersTab-68c87e2a36e938ef4b17.js
|
|
81
|
+
- tools/cmdtlmserver/ScrollwindowWidget-CXJ9QGN1-1a026ea64f3ac2ef355e.js
|
|
82
|
+
- tools/cmdtlmserver/SignalWidget-qvL2YZJA-93a70bc899dfbbbe9453.js
|
|
83
|
+
- tools/cmdtlmserver/SpacerWidget-CaWx41K7-24a22551304012ee55af.js
|
|
84
|
+
- tools/cmdtlmserver/SparklineWidget-BkNSRypJ-d51121cdc8b3170fd1f1.js
|
|
85
|
+
- tools/cmdtlmserver/StatusTab-7052917fd7fe7f14ac5e.js
|
|
86
|
+
- tools/cmdtlmserver/TabbookWidget-MsrRG1vn-943cbf258dc72cdee84f.js
|
|
87
|
+
- tools/cmdtlmserver/TargetsTab-47a9d296026df09b1a89.js
|
|
88
|
+
- tools/cmdtlmserver/TextboxWidget-DbwpPVGB-89ca76b61eaea0e8435c.js
|
|
89
|
+
- tools/cmdtlmserver/TextfieldWidget-DzMlTMYW-6f16bba1dca9d85b5427.js
|
|
90
|
+
- tools/cmdtlmserver/TimeWidget-BHybAfg8-2a3fdda019ac11ba0234.js
|
|
91
|
+
- tools/cmdtlmserver/TitleWidget-DL_sE5YE-58d46477f1bd2375c0ca.js
|
|
92
|
+
- tools/cmdtlmserver/TlmPacketsTab-21f2ae12b6b1065ef51d.js
|
|
93
|
+
- tools/cmdtlmserver/Updater-71ca8068ee5f6c21c44c.js
|
|
94
|
+
- tools/cmdtlmserver/VWidget-D06LY-Yc-a61e456754f3a2974de1.js
|
|
95
|
+
- tools/cmdtlmserver/ValueWidget-CGT0LV_n-36237e7706445829a3cc.js
|
|
96
|
+
- tools/cmdtlmserver/ValuelimitsbarWidget-CmpyPO-1-cd558bce07411aa7ed8c.js
|
|
97
|
+
- tools/cmdtlmserver/ValuelimitscolumnWidget-jzxrQd-f-c6a0c020716b66d054b7.js
|
|
98
|
+
- tools/cmdtlmserver/ValuerangebarWidget-C8ckuAeh-bf46dfa98828cc5d9e02.js
|
|
99
|
+
- tools/cmdtlmserver/VerticalWidget-qN82km_m-4a2d46bca6228142ff35.js
|
|
100
|
+
- tools/cmdtlmserver/VerticalboxWidget-CiJZDlHJ-d3ab89f5451eb45157f0.js
|
|
101
|
+
- tools/cmdtlmserver/Widget-DXvVFSH5-a1f2327db30cd8726e79.js
|
|
102
|
+
- tools/cmdtlmserver/main-14f121a4ebc6fc306ca1.js
|
|
103
103
|
- tools/cmdtlmserver/main.js
|
|
104
|
-
- tools/cmdtlmserver/services-
|
|
104
|
+
- tools/cmdtlmserver/services-44f970948da944fde95a.js
|
|
105
105
|
homepage: https://github.com/OpenC3/cosmos
|
|
106
106
|
licenses:
|
|
107
107
|
- AGPL-3.0-only
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
System.register(["./Widget-LsyjS7ZS-cdba91229220d626542a.js","vue","./main-65cfe3c3762daf491069.js","vue-router","single-spa","vuex","vuetify"],function(i,p){"use strict";var l,s,a,n,c;return{setters:[e=>{l=e.o},e=>{s=e.createElementBlock,a=e.openBlock,n=e.normalizeStyle},e=>{c=e.d},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 o(t,r,d,k,x,m){return a(),s("line",{x1:t.parameters[0],y1:t.parameters[1],x2:t.parameters[2],y2:t.parameters[3],style:n(m.calcStyle)},null,12,u)}const y=i("default",c(e,[["render",o]]))}}});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
System.register(["./Widget-LsyjS7ZS-cdba91229220d626542a.js","vue","./main-65cfe3c3762daf491069.js","vue-router","single-spa","vuex","vuetify"],function(c,h){"use strict";var t,a,n,s,o,r;return{setters:[e=>{t=e.o},e=>{a=e.resolveComponent,n=e.createBlock,s=e.openBlock,o=e.normalizeStyle},e=>{r=e.d},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 i(d,u,y,k,l,b){const m=a("v-checkbox");return s(),n(m,{"hide-details":"",density:"compact",label:l.label,modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=v=>l.value=v),style:o(d.computedStyle)},null,8,["label","modelValue","style"])}const p=c("default",r(e,[["render",i]]))}}});
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
System.register(["./services-eb1403f6c88517815ca2.js","./main-65cfe3c3762daf491069.js","vue","vue-router","single-spa","vuex","vuetify"],function(H,ee){"use strict";var A,R,Z,G,l,s,o,O,n,e,y,v,p,m,f,_,M,N,w,U,q;return{setters:[a=>{A=a.g},a=>{R=a.d,Z=a._,G=a.v},a=>{l=a.resolveComponent,s=a.createBlock,o=a.openBlock,O=a.Teleport,n=a.createVNode,e=a.withCtx,y=a.createElementVNode,v=a.toDisplayString,p=a.createElementBlock,m=a.Fragment,f=a.renderList,_=a.createTextVNode,M=a.mergeProps,N=a.createSlots,w=a.createCommentVNode,U=a.normalizeStyle,q=a.withModifiers},null,null,null,null],execute:function(){var a=document.createElement("style");a.textContent=`.v-expansion-panel-text[data-v-c2e7b313] .v-expansion-panel-text__wrapper{padding:0}.v-list[data-v-c2e7b313] .v-label{margin-left:5px}.v-list-item__icon[data-v-c2e7b313]{margin-right:15px!important}.v-list-item__title[data-v-c2e7b313]{color:#fff}.v-expansion-panel-title[data-v-c2e7b313]{min-height:initial;padding:0}
|
|
2
|
-
/*$vite$:1*/`,document.head.appendChild(a);const J={props:{menus:{type:Array,default:function(){return[]}},title:{type:String,default:""}},methods:{formatDT:function(d){return d.replaceAll(" ","-").toLowerCase()},subMenuClick(d){d.command(d),this.$refs.topmenu[0].isActive=!1}},mounted(){document.title=this.title}},K={class:"app-title mr-2"};function Q(d,i,k,$,r,S){const B=l("v-col"),D=l("v-row"),b=l("v-icon"),z=l("v-btn"),F=l("v-divider"),C=l("v-list-item-title"),g=l("v-list-item"),I=l("v-list"),T=l("v-menu"),E=l("v-radio"),V=l("v-list-item-action"),L=l("v-radio-group"),P=l("v-checkbox");return o(),s(O,{to:"#openc3-menu"},[n(D,{"no-gutters":""},{default:e(()=>[n(B,{"align-self":"end"},{default:e(()=>[y("span",K,v(k.title),1)]),_:1})]),_:1}),n(D,{dense:"",class:"flex-nowrap"},{default:e(()=>[(o(!0),p(m,null,f(k.menus,(h,u)=>(o(),s(T,{ref_for:!0,ref:"topmenu",key:u},{activator:e(({props:t})=>[n(z,M({ref_for:!0},t,{variant:"outlined",class:"mx-1 menu-button",text:h.label,"data-test":S.formatDT(`${k.title} ${h.label}`)}),{append:e(()=>[n(b,{class:"menu-button-icon"},{default:e(()=>[...i[0]||(i[0]=[_(" mdi-menu-down ",-1)])]),_:1})]),_:1},16,["text","data-test"])]),default:e(()=>[n(I,null,{default:e(()=>[(o(!0),p(m,null,f(h.items,(t,x)=>(o(),p(m,null,[t.divider?(o(),s(F,{key:x+"-divider"})):t.subMenu&&t.subMenu.length>0?(o(),p("div",{key:x+"-submenu"},[(o(),s(T,{"open-on-hover":"",location:"right",key:x},{activator:e(({props:c})=>[(o(),s(g,M({ref_for:!0},c,{disabled:t.disabled,key:x}),N({append:e(()=>[n(b,null,{default:e(()=>[...i[1]||(i[1]=[_(" mdi-chevron-right ",-1)])]),_:1})]),default:e(()=>[!t.radio&&!t.checkbox?(o(),s(C,{key:0,style:U("cursor: pointer;"+(t.disabled?"opacity: 0.2":""))},{default:e(()=>[_(v(t.label),1)]),_:2},1032,["style"])):w("",!0)]),_:2},[t.icon?{name:"prepend",fn:e(()=>[n(b,{disabled:t.disabled},{default:e(()=>[_(v(t.icon),1)]),_:2},1032,["disabled"])]),key:"0"}:void 0]),1040,["disabled"]))]),default:e(()=>[n(I,null,{default:e(()=>[(o(!0),p(m,null,f(t.subMenu,(c,j)=>(o(),s(g,{key:j,"prepend-icon":c.icon,onClick:le=>S.subMenuClick(c)},{default:e(()=>[n(C,null,{default:e(()=>[_(v(c.label),1)]),_:2},1024)]),_:2},1032,["prepend-icon","onClick"]))),128))]),_:2},1024)]),_:2},1024))])):t.radioGroup?(o(),s(L,{"model-value":t.value,"onUpdate:modelValue":t.command,key:x+"-radio-group","hide-details":"",density:"compact",class:"ma-0 pa-0"},{default:e(()=>[(o(!0),p(m,null,f(t.choices,(c,j)=>(o(),s(g,{key:j+"-choice"},{default:e(()=>[n(V,{class:"list-action"},{default:e(()=>[n(E,{color:"secondary",label:c.label,value:c.value,density:"compact","hide-details":""},null,8,["label","value"])]),_:2},1024)]),_:2},1024))),128))]),_:2},1032,["model-value","onUpdate:modelValue"])):(o(),s(g,{onClick:c=>t.command(t),disabled:t.disabled,"data-test":S.formatDT(`${k.title} ${h.label} ${t.label}`),key:x+"-list"},N({default:e(()=>[t.checkbox?(o(),s(V,{key:0,class:"list-action"},{default:e(()=>[n(P,{modelValue:t.checked,"onUpdate:modelValue":c=>t.checked=c,label:t.label,color:"secondary",density:"compact","hide-details":""},null,8,["modelValue","onUpdate:modelValue","label"])]),_:2},1024)):w("",!0),!t.radio&&!t.checkbox?(o(),s(C,{key:1,style:U("cursor: pointer;"+(t.disabled?"opacity: 0.2":""))},{default:e(()=>[_(v(t.label),1)]),_:2},1032,["style"])):w("",!0)]),_:2},[t.icon?{name:"prepend",fn:e(()=>[n(b,{icon:t.icon,disabled:t.disabled},null,8,["icon","disabled"])]),key:"0"}:void 0]),1032,["onClick","disabled","data-test"]))],64))),256))]),_:2},1024)]),_:2},1024))),128))]),_:1})])}const W={components:{LogMessages:G,TopBar:R(J,[["render",Q],["__scopeId","data-v-4d454b93"]])},data(){return{api:null,title:"CmdTlmServer",timeZone:"local",panel:0,curTab:0,tabs:[{name:"Interfaces",path:{name:"InterfacesTab"}},{name:"Targets",path:{name:"TargetsTab"}},{name:"Cmd packets",path:{name:"CmdPacketsTab"}},{name:"Tlm packets",path:{name:"TlmPacketsTab"}},{name:"Routers",path:{name:"RoutersTab"}},{name:"Data Flows",path:{name:"DataFlowsTab"}},{name:"Status",path:{name:"StatusTab"}}],updater:null,refreshInterval:1e3,optionsDialog:!1,menus:[{label:"File",items:[{label:"Options",icon:"mdi-cog",command:()=>{this.optionsDialog=!0}},{label:"Clear Counters",icon:"mdi-eraser",command:()=>{this.clearCounters()}}]}]}},created(){this.api=new A,this.api.get_setting("time_zone").then(d=>{d&&(this.timeZone=d)}).catch(d=>{})},methods:{clearCounters(){this.api.get_interface_names().then(d=>{for(const i of d)this.api.interface_cmd(i,"clear_counters")})}}},X={class:"mt-6 pa-3"};function Y(d,i,k,$,r,S){const B=l("top-bar"),D=l("v-tab"),b=l("v-tabs"),z=l("v-expansion-panel-title"),F=l("router-view"),C=l("v-expansion-panel-text"),g=l("v-expansion-panel"),I=l("v-expansion-panels"),T=l("v-card"),E=l("log-messages"),V=l("v-spacer"),L=l("v-toolbar"),P=l("v-text-field"),h=l("v-dialog");return o(),p(m,null,[n(B,{menus:r.menus,title:r.title},null,8,["menus","title"]),n(T,{style:{"z-index":"4 !important"}},{default:e(()=>[n(I,{modelValue:r.panel,"onUpdate:modelValue":i[2]||(i[2]=u=>r.panel=u)},{default:e(()=>[n(g,null,{default:e(()=>[n(z,null,{default:e(()=>[n(b,{modelValue:r.curTab,"onUpdate:modelValue":i[1]||(i[1]=u=>r.curTab=u),"fixed-tabs":"",grow:"","align-tabs":"start"},{default:e(()=>[(o(!0),p(m,null,f(r.tabs,(u,t)=>(o(),s(D,{key:t,to:u.path,text:u.name,onClick:i[0]||(i[0]=q(()=>{},["stop"]))},null,8,["to","text"]))),128))]),_:1},8,["modelValue"])]),_:1}),n(C,null,{default:e(()=>[n(F,{"refresh-interval":r.refreshInterval},null,8,["refresh-interval"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1}),i[6]||(i[6]=y("div",{style:{height:"15px"}},null,-1)),n(E,{"time-zone":r.timeZone},null,8,["time-zone"]),n(h,{modelValue:r.optionsDialog,"onUpdate:modelValue":i[4]||(i[4]=u=>r.optionsDialog=u),"max-width":"300"},{default:e(()=>[n(T,null,{default:e(()=>[n(L,{height:"24"},{default:e(()=>[n(V),i[5]||(i[5]=y("span",null,"Options",-1)),n(V)]),_:1}),y("div",X,[n(P,{min:"0",max:"10000",step:"100",type:"number",label:"Refresh Interval (ms)","model-value":r.refreshInterval,"onUpdate:modelValue":i[3]||(i[3]=u=>r.refreshInterval=u)},null,8,["model-value"])])]),_:1})]),_:1},8,["modelValue"])],64)}const ne=H("default",Z(W,[["render",Y],["__scopeId","data-v-c2e7b313"]]))}}});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
System.register(["./main-65cfe3c3762daf491069.js","vue"],function(C,P){"use strict";var V,L,m,o,r,e,t,v,s,d,h,g,k,w;return{setters:[c=>{V=c.d,L=c.W},c=>{m=c.resolveComponent,o=c.createBlock,r=c.openBlock,e=c.withCtx,t=c.createVNode,v=c.createElementVNode,s=c.createTextVNode,d=c.toDisplayString,h=c.createCommentVNode,g=c.createElementBlock,k=c.Fragment,w=c.renderList}],execute:function(){const c={props:{type:{default:"tlm",validator:function(u){return["cmd","tlm"].indexOf(u)!==-1}},targetName:String,packetName:String,itemName:String,modelValue:Boolean},data(){return{details:Object,updater:null,rawValue:null,convertedValue:null,formattedValue:null,unitsValue:null}},computed:{show:{get(){return this.modelValue},set(u){this.$emit("update:modelValue",u)}}},watch:{modelValue:function(u,a){u?(this.requestDetails(),this.type==="tlm"&&(this.updater=setInterval(()=>{this.api.get_tlm_values([`${this.targetName}__${this.packetName}__${this.itemName}__RAW`,`${this.targetName}__${this.packetName}__${this.itemName}__CONVERTED`,`${this.targetName}__${this.packetName}__${this.itemName}__FORMATTED`,`${this.targetName}__${this.packetName}__${this.itemName}__WITH_UNITS`]).then(_=>{for(let p of _){let i=null;if(p[0].json_class==="String"&&p[0].raw!==void 0?i=p[0].raw:this.details.data_type==="BLOCK"&&(i=p[0]),i!==null){i=i.slice(0,parseInt(this.details.bit_size)/8);let b=!1;i.length>64&&(b=!0),p[0]=Array.from(i.slice(0,64),function(N){return N===" "?"20":("0"+(N&255).toString(16)).slice(-2)}).join(" ").toUpperCase(),b&&(p[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.unitsValue=_[3][0]})},1e3))):(clearInterval(this.updater),this.updater=null)}},created(){this.api=new L},beforeUnmount(){clearInterval(this.updater),this.updater=null},methods:{hasLimits(u){let a=!1;return u.limits.DEFAULT&&(a=!0),u.states&&Object.getOwnPropertyNames(u.states).forEach(_=>{u.states[_].color&&(a=!0)}),a},async requestDetails(){this.type==="tlm"?await this.api.get_item(this.targetName,this.packetName,this.itemName).then(u=>{this.details=u,this.hasLimits(u)||(this.details.limits=null)}):await this.api.get_parameter(this.targetName,this.packetName,this.itemName).then(u=>{this.details=u})},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(u){return u.hasOwnProperty("green_low")?"RL/"+u.red_low+" YL/"+u.yellow_low+" YH/"+u.yellow_high+" RH/"+u.red_high+" GL/"+u.green_low+" GH/"+u.green_high:u.hasOwnProperty("red_low")?"RL/"+u.red_low+" YL/"+u.yellow_low+" YH/"+u.yellow_high+" RH/"+u.red_high:u}}},S={key:5},$={key:7},E={key:3},x={key:9};function B(u,a,_,p,i,b){const N=m("v-spacer"),D=m("v-toolbar"),T=m("v-card-title"),U=m("v-card-subtitle"),l=m("v-col"),n=m("v-row"),I=m("v-switch"),O=m("v-container"),R=m("v-card-text"),z=m("v-card"),A=m("v-dialog");return r(),o(A,{modelValue:b.show,"onUpdate:modelValue":a[1]||(a[1]=y=>b.show=y),width:"700"},{default:e(()=>[t(z,null,{default:e(()=>[t(D,{height:24},{default:e(()=>[t(N),a[2]||(a[2]=v("span",null," Details ",-1)),t(N)]),_:1}),t(T,null,{default:e(()=>[s(d(_.targetName)+" "+d(_.packetName)+" "+d(_.itemName),1)]),_:1}),t(U,null,{default:e(()=>[s(d(i.details.description),1)]),_:1}),t(R,null,{default:e(()=>[t(O,{fluid:""},{default:e(()=>[_.type==="tlm"?(r(),o(n,{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})):h("",!0),t(n,{"no-gutters":""},{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,null,{default:e(()=>[s(d(i.rawValue),1)]),_:1})]),_:1}),t(n,{"no-gutters":""},{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,null,{default:e(()=>[s(d(i.convertedValue),1)]),_:1})]),_:1}),t(n,{"no-gutters":""},{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,null,{default:e(()=>[s(d(i.formattedValue),1)]),_:1})]),_:1}),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"1"}),t(l,{cols:"4",class:"label"},{default:e(()=>[...a[7]||(a[7]=[s("With Units Value",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.unitsValue),1)]),_:1})]),_:1}),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[8]||(a[8]=[s("Bit Offset",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.bit_offset),1)]),_:1})]),_:1}),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[9]||(a[9]=[s("Bit Size",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.bit_size),1)]),_:1})]),_:1}),i.details.array_size?(r(),o(n,{key:1,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[10]||(a[10]=[s("Array Size",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.array_size),1)]),_:1})]),_:1})):h("",!0),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[11]||(a[11]=[s("Data Type",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.data_type),1)]),_:1})]),_:1}),_.type==="cmd"?(r(),o(n,{key:2,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[12]||(a[12]=[s("Minimum",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.minimum),1)]),_:1})]),_:1})):h("",!0),_.type==="cmd"?(r(),o(n,{key:3,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[13]||(a[13]=[s("Maximum",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.maximum),1)]),_:1})]),_:1})):h("",!0),_.type==="cmd"?(r(),o(n,{key:4,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[14]||(a[14]=[s("Default",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.default),1)]),_:1})]),_:1})):h("",!0),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[15]||(a[15]=[s("Format String",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.format_string),1)]),_:1})]),_:1}),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[16]||(a[16]=[s("Read Conversion",-1)])]),_:1}),i.details.read_conversion?(r(),o(l,{key:0},{default:e(()=>[s(" Class: "+d(i.details.read_conversion.class)+" ",1),a[17]||(a[17]=v("br",null,null,-1)),s(" Params: "+d(i.details.read_conversion.params),1)]),_:1})):(r(),o(l,{key:1}))]),_:1}),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[18]||(a[18]=[s("Write Conversion",-1)])]),_:1}),i.details.write_conversion?(r(),o(l,{key:0},{default:e(()=>[s(" Class: "+d(i.details.write_conversion.class)+" ",1),a[19]||(a[19]=v("br",null,null,-1)),s(" Params: "+d(i.details.write_conversion.params),1)]),_:1})):(r(),o(l,{key:1}))]),_:1}),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[20]||(a[20]=[s("Id Value",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.id_value),1)]),_:1})]),_:1}),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[21]||(a[21]=[s("Units Full",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.units_full),1)]),_:1})]),_:1}),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[22]||(a[22]=[s("Units Abbr",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.units),1)]),_:1})]),_:1}),t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[23]||(a[23]=[s("Endianness",-1)])]),_:1}),t(l,null,{default:e(()=>[s(d(i.details.endianness),1)]),_:1})]),_:1}),i.details.states?(r(),g("div",S,[t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[24]||(a[24]=[s("States",-1)])]),_:1}),t(l)]),_:1}),(r(!0),g(k,null,w(i.details.states,(y,f)=>(r(),o(n,{key:f,"no-gutters":""},{default:e(()=>[t(l,{cols:"1"}),t(l,{cols:"4",class:"label"},{default:e(()=>[s(d(f),1)]),_:2},1024),t(l,null,{default:e(()=>[s(d(y.value),1)]),_:2},1024)]),_:2},1024))),128))])):(r(),o(n,{key:6,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[25]||(a[25]=[s("States",-1)])]),_:1}),t(l,null,{default:e(()=>[...a[26]||(a[26]=[s("None",-1)])]),_:1})]),_:1})),i.details.limits?(r(),g("div",$,[t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[27]||(a[27]=[s("Limits",-1)])]),_:1}),t(l)]),_:1}),(r(!0),g(k,null,w(i.details.limits,(y,f)=>(r(),o(n,{key:f,"no-gutters":""},{default:e(()=>[t(l,{cols:"1"}),f==="enabled"?(r(),o(l,{key:0,cols:"4",class:"label"},{default:e(()=>[...a[28]||(a[28]=[s("Enabled",-1)])]),_:1})):h("",!0),f==="enabled"?(r(),o(I,{key:1,modelValue:i.details.limits.enabled,"onUpdate:modelValue":[a[0]||(a[0]=F=>i.details.limits.enabled=F),b.changeLimitsEnabled],density:"compact",color:"primary",class:"compact-switch","hide-details":""},null,8,["modelValue","onUpdate:modelValue"])):h("",!0),f!=="enabled"?(r(),o(l,{key:2,cols:"4",class:"label"},{default:e(()=>[s(d(f),1)]),_:2},1024)):h("",!0),f!=="enabled"?(r(),g("div",E,d(b.formatLimit(y)),1)):h("",!0),t(l)]),_:2},1024))),128))])):(r(),o(n,{key:8,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[29]||(a[29]=[s("Limits",-1)])]),_:1}),t(l,null,{default:e(()=>[...a[30]||(a[30]=[s("None",-1)])]),_:1})]),_:1})),i.details.meta?(r(),g("div",x,[t(n,{"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[31]||(a[31]=[s("Meta",-1)])]),_:1}),t(l)]),_:1}),(r(!0),g(k,null,w(i.details.meta,(y,f)=>(r(),o(n,{key:f,"no-gutters":""},{default:e(()=>[t(l,{cols:"1"}),t(l,{cols:"4",class:"label"},{default:e(()=>[s(d(f),1)]),_:2},1024),t(l,null,{default:e(()=>[s(d(y.join(", ")),1)]),_:2},1024)]),_:2},1024))),128))])):(r(),o(n,{key:10,"no-gutters":""},{default:e(()=>[t(l,{cols:"5",class:"label"},{default:e(()=>[...a[32]||(a[32]=[s("Meta",-1)])]),_:1}),t(l,null,{default:e(()=>[...a[33]||(a[33]=[s("None",-1)])]),_:1})]),_:1}))]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])}const j=C("P",V(c,[["render",B],["__scopeId","data-v-6065a19b"]]))}}});
|