openc3-cosmos-tool-admin 7.2.0 → 7.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. checksums.yaml +4 -4
  2. data/tools/admin/{ArrayWidget-D1PArcGr-3885b67514afe732ba36.js → ArrayWidget-DMSm_P6c-efc7746a4ba953cd6808.js} +2 -2
  3. data/tools/admin/{ArrayplotWidget-DPUPy0qM-b6a1c019189be84e4589.js → ArrayplotWidget-fdXLhGAl-bb78ab3e4fdecdfebd67.js} +1 -1
  4. data/tools/admin/{BarColumn-BpdscDQf-e551f56c95340d26cda4.js → BarColumn-Bb305iCi-1d14dd1f021f8d8d5f6a.js} +1 -1
  5. data/tools/admin/{BlockWidget-_VUsK5T9-59058beda215f65a7b09.js → BlockWidget-Do3W6tZh-30b366b735726d3e884d.js} +2 -2
  6. data/tools/admin/{ButtonWidget-DE41o-cg-d0d862704f2cedf509f5.js → ButtonWidget-DukCQt0F-c8a88a1d238108f85fc0.js} +2 -2
  7. data/tools/admin/CanvasWidget-BRdVWln5-68610c4a029476073178.js +1 -0
  8. data/tools/admin/CanvasdotWidget-DV8PeDWz-da21bd87f779b9139269.js +1 -0
  9. data/tools/admin/{CanvasimageWidget-COv_Qnc8-0a502afa265efe2f25ad.js → CanvasimageWidget-Czbq1GuF-5f841f468351c7d6bdbf.js} +1 -1
  10. data/tools/admin/{CanvasimagevalueWidget-BhuUqLOo-53322c8fb2f548104d57.js → CanvasimagevalueWidget-DKt5JgEt-c79bbec74e5403f7b6ec.js} +1 -1
  11. data/tools/admin/CanvaslabelWidget-DW2I1ra1-bf0c322f7c308654cfc2.js +1 -0
  12. data/tools/admin/CanvaslabelvalueWidget-BhzvZVfD-ba39d0f36fbf3db6cd9c.js +1 -0
  13. data/tools/admin/{CanvaslineWidget-D1K_6mAY-986d4445d6db8f24c1b0.js → CanvaslineWidget-DsjY37tp-97707caf9ea6147f085e.js} +1 -1
  14. data/tools/admin/{CanvaslinevalueWidget-D4eaxWhR-443b0d3f93af5d0faf5a.js → CanvaslinevalueWidget-ihI97G8T-a7ccb7b7ca2d2628fdd5.js} +1 -1
  15. data/tools/admin/CheckbuttonWidget-B778Z-Zo-9dbaeff7a2a74130539a.js +1 -0
  16. data/tools/admin/ComboboxWidget-CuuvOL9K-838f18b5b010cb3d71ae.js +1 -0
  17. data/tools/admin/{DateWidget-DkNWx28s-bb439088467e3b1af3aa.js → DateWidget-COvQTAeo-fdab60f30b292f493736.js} +1 -1
  18. data/tools/admin/{DetailsDialog-F4KgYM6m-8435a552f5c10d2191bc.js → DetailsDialog-DE7lK17G-434a9ce6dcc8e6636a47.js} +1 -1
  19. data/tools/admin/{DynamicWidget-BuSbQVhf-6a5228328dcebb177ef8.js → DynamicWidget-BuSbQVhf-f880988884028652fefc.js} +1 -1
  20. data/tools/admin/{FilechecksumWidget-DSfNEnDJ-531bbb7d456d380a62d9.js → FilechecksumWidget-DRnOt_UE-b118998ed499ab04e025.js} +1 -1
  21. data/tools/admin/{FiledisplayWidget-D2cxMmrP-812eb21e2f71f0bd32d6.js → FiledisplayWidget-26R46EjS-312ad25b3132af381df5.js} +1 -1
  22. data/tools/admin/{FormatvalueWidget-6-bj_PJO-4c9daa001cba89fb9103.js → FormatvalueWidget-BxyscMJc-9965b0bd2806cfbe79cb.js} +1 -1
  23. data/tools/admin/Graph-BKw7xw1a-947d95e03148698e323f.js +1 -0
  24. data/tools/admin/{GraphWidget-COXK3Dab-18ccb71d08b630c3446f.js → GraphWidget-Cs9mvqUu-f9a29adafa014c1e26e4.js} +1 -1
  25. data/tools/admin/{HorizontalWidget-C9UFBPsk-91bd1e11d87736b8c758.js → HorizontalWidget-fWLFj7Kg-46768f166783e7c59c1c.js} +1 -1
  26. data/tools/admin/{HorizontalboxWidget-CWLfmRtr-13d452adc9e1100f23c4.js → HorizontalboxWidget-DEaXhKEz-b0ba376ca37ee17a7d70.js} +1 -1
  27. data/tools/admin/HorizontallineWidget-Bvu1QP3S-2ef01995448de3e2d6b7.js +1 -0
  28. data/tools/admin/{IframeWidget-Bn9eGzrq-d71752e23ce712e81e26.js → IframeWidget-B143k4lo-47d90846ad305990fd45.js} +1 -1
  29. data/tools/admin/{ImageLoader-_gAudhVo-23300d0d0133307fb169.js → ImageLoader-BCpmQHIl-90267960b7246cba4d23.js} +1 -1
  30. data/tools/admin/{ImageviewerWidget-BUWhF32Z-0799a243569a53e640e9.js → ImageviewerWidget-CLrvr6dw-6adafd871908af16336a.js} +1 -1
  31. data/tools/admin/InterfacesTab-zhl06TGR-269bf95691e1ca1133d0.js +1 -0
  32. data/tools/admin/{LabelWidget-BhzkN06D-2d7a7f95582b783e18d0.js → LabelWidget-CA1bTX2B-cf65a81edc2678cf21d0.js} +1 -1
  33. data/tools/admin/{LabelledWidget-vx8NvW1b-0d3f99aa750f0631fdc2.js → LabelledWidget-BDhvr03J-d661081e5e66658337e8.js} +1 -1
  34. data/tools/admin/{LabelprogressbarWidget-t5PvKuS4-18438f7d1f021d5247e5.js → LabelprogressbarWidget-g7A5CE8S-3e6d2543cbb4356e663b.js} +1 -1
  35. data/tools/admin/LabelsparklineWidget-B27xXxWg-46ed8faac17cc5e23e2c.js +1 -0
  36. data/tools/admin/{LabelvalueWidget-Cbs1DBK2-8bc763b903941db678a2.js → LabelvalueWidget-DFn8o6LC-83776b27319b83d8f0db.js} +1 -1
  37. data/tools/admin/{LabelvaluedescWidget-B7OIOGc0-21ac0d9663cf49396a58.js → LabelvaluedescWidget-BQpaxFaB-577f3f571587fc3e28a8.js} +1 -1
  38. data/tools/admin/{LabelvaluelimitsbarWidget-C57kf-oQ-8929b2b56023fd39369a.js → LabelvaluelimitsbarWidget-C-z96q8z-05aedeebb4882527347a.js} +1 -1
  39. data/tools/admin/LabelvaluelimitscolumnWidget-D2TMEv9O-8f2ba12f3d8541a80f4f.js +1 -0
  40. data/tools/admin/{LabelvaluerangebarWidget-Pt_evm3v-2f296e2b660ae23cd7e2.js → LabelvaluerangebarWidget-D99dZCjz-f2a7ecfb05831ee9ece6.js} +1 -1
  41. data/tools/admin/{Layout-CKmC50QZ-a4e41facce8302b08009.js → Layout--_zNJWnw-a75e57affb59e71889ad.js} +1 -1
  42. data/tools/admin/{LedWidget-D1lmNXpi-c70ab085a7e75d99db2a.js → LedWidget-D2uxHxe3-b432e645d6f5ac424a50.js} +1 -1
  43. data/tools/admin/{LimitsBar-D5IZu7eX-eed22332c6603ee4301a.js → LimitsBar-DN1s8-MS-5fcc0dd234e18f768e31.js} +1 -1
  44. data/tools/admin/{LimitsbarWidget-VpxQXE-e-48cfee552a9c695bf8f1.js → LimitsbarWidget-Cqhh7LKU-68bbd725e553a8fbb473.js} +1 -1
  45. data/tools/admin/{LimitscolorWidget-79P41CX7-f2eea333aec5c48967e0.js → LimitscolorWidget-haGB4RbY-2bbe52d1c80aded0cc12.js} +1 -1
  46. data/tools/admin/{LimitscolumnWidget-BFDXhJeZ-4eba19b9d6c713c13db1.js → LimitscolumnWidget-B1GdmlR_-ea359135deab006453c1.js} +1 -1
  47. data/tools/admin/{LinegraphWidget-VqkpOlws-f72604545ff9d950311b.js → LinegraphWidget-COSOQ0uM-d51c56629154333d44e4.js} +1 -1
  48. data/tools/admin/{MatrixbycolumnsWidget--ihvirDP-0c6d1476cb4af73ce4ec.js → MatrixbycolumnsWidget-coHlLETG-860f23fb48426b9fd387.js} +1 -1
  49. data/tools/admin/{MicroservicesTab-CQPpb7j1-7daf01af280d2c44c370.js → MicroservicesTab-eR0hpoO1-90e70bfd68ca8cece876.js} +2 -2
  50. data/tools/admin/{OpenC3TimePicker-B0lAIU91-6e7843b535d6cb333926.js → OpenC3TimePicker-B8Vu9GBz-c1433e91ea28dd0e883e.js} +1 -1
  51. data/tools/admin/{OutputDialog-DtrpwjGL-73ebd3c55e7ffbc15652.js → OutputDialog-B0DR879Y-1fe936426c84cb442ac4.js} +1 -1
  52. data/tools/admin/{PackagesTab-DQ5s3nfh-dfdd8bd24af88c946d9d.js → PackagesTab-aA0fmiQh-fb563fc6f35c8b0be850.js} +1 -1
  53. data/tools/admin/{PluginsTab-1tlTx4k1-496335d424694bd25d9a.js → PluginsTab-C-ItW862-32d7ee9164d04691765d.js} +2 -2
  54. data/tools/admin/{ProgressbarWidget-BIB3r9SL-2b2e5705da4fe267fc08.js → ProgressbarWidget-D_yFssIZ-d10aa4e57145b3259669.js} +1 -1
  55. data/tools/admin/{RadiobuttonWidget-C5rxLM7K-9bdffd0ee597d4386ad7.js → RadiobuttonWidget-DL0jVTcb-3c465bd94a1d1501b9aa.js} +1 -1
  56. data/tools/admin/RadiogroupWidget-2-td69IA-a20b41e0ee16fca8216f.js +1 -0
  57. data/tools/admin/{RangebarWidget-MPQYi2Km-b85a235f8e43da24f3ae.js → RangebarWidget-i2mlnxys-4eec6df5412c7c011047.js} +1 -1
  58. data/tools/admin/RedisTab-WR7ODfau-47151697811af67bb310.js +1 -0
  59. data/tools/admin/{RollupWidget-CfjGAhzg-f9d66fe1e702f376333e.js → RollupWidget-BEJ2Icg1-e244836ce5d601a70583.js} +1 -1
  60. data/tools/admin/RoutersTab-DUvEd6IA-b95f4c2224cc6903fd12.js +1 -0
  61. data/tools/admin/{ScrollwindowWidget-CupaygNN-a397b20ae8a40b64a487.js → ScrollwindowWidget-BU1cRpL8-db955ba3d4a28aa695c0.js} +1 -1
  62. data/tools/admin/{SecretsTab-C9xAxuwO-89d69d126612c7b64f6d.js → SecretsTab-CkjjSxCg-e1665e5ecea3aed8dad6.js} +1 -1
  63. data/tools/admin/SettingsTab-CJp0hFpx-bae27f27a99072352713.js +6 -0
  64. data/tools/admin/{SignalWidget-C-qecoTO-c71ca67fb48f421af75e.js → SignalWidget-hiTkeem9-803814029a9fe6a17581.js} +1 -1
  65. data/tools/admin/{SimpleTextDialog-C-0ZC2bs-48d950cb04fe0c899bab.js → SimpleTextDialog-tGqcHHCx-aac1d333cbb9a93606d6.js} +1 -1
  66. data/tools/admin/SpacerWidget-CBmzzS_X-207fd991cbf6a40fe4b0.js +1 -0
  67. data/tools/admin/SparklineWidget-CizRh6QR-125aeb303d4965c33db7.js +1 -0
  68. data/tools/admin/{TabbookWidget-CXklff-l-46b8ed5b3d3fc3f6ff22.js → TabbookWidget-CvL3Ozmx-392ae93cab5b7cbb9764.js} +1 -1
  69. data/tools/admin/{TargetsTab-Ci4cOsIa-d2957154b9bf46fa9617.js → TargetsTab-KTV_gfLE-3a9c157196f584e54664.js} +1 -1
  70. data/tools/admin/TextboxWidget-BtEwXzDO-e4893abb472b9a687d25.js +1 -0
  71. data/tools/admin/{TextfieldWidget-CdANAW-6-82179a958f191dffd85c.js → TextfieldWidget-BDbb57HP-51b0d1e6a5aa914e5ac8.js} +1 -1
  72. data/tools/admin/TimeWidget-DzD8U8l8-2591897a5196cb54b68d.js +1 -0
  73. data/tools/admin/{TitleWidget-68NWCcXB-218c5743097602c7a5d8.js → TitleWidget-CL53vf14-6e11a61576950ccd39fd.js} +1 -1
  74. data/tools/admin/{ToolsTab-BCvmMDIZ-4b33c7b7aab46b7d4119.js → ToolsTab-yFxYcJ-o-7c21c60dd470d658fe4d.js} +1 -1
  75. data/tools/admin/TsdbTab-B0BR-V6A-ab626c8be8b9836c1c78.js +4 -0
  76. data/tools/admin/{VWidget-oMbywhLA-ae9ee9bde0636cb9c9e1.js → VWidget-5qOYva88-4db083a6475508bbf7ce.js} +1 -1
  77. data/tools/admin/ValueWidget-CAkuc_w_-6037c5f1b4e7c0e9c790.js +1 -0
  78. data/tools/admin/ValuelimitsbarWidget-Y8sO05E1-c51344904eca186c081f.js +1 -0
  79. data/tools/admin/{ValuelimitscolumnWidget-BVt6nLXq-08cf4c90f589d1d23b70.js → ValuelimitscolumnWidget-iOjB_fCj-c8c67d58522b7f505b4f.js} +1 -1
  80. data/tools/admin/ValuerangebarWidget-DsCoeAm6-a486168810aca7f0e206.js +1 -0
  81. data/tools/admin/{VerticalWidget-DlftYBjH-ae7352937173846f56d9.js → VerticalWidget-C6O0dhRU-7511fd89efa71860286e.js} +1 -1
  82. data/tools/admin/{VerticalboxWidget-C7RrkfY0-a5135be854d46c8d2871.js → VerticalboxWidget-B-CoqRJG-29951e73bb5144b9ca2c.js} +1 -1
  83. data/tools/admin/{Widget-D_HaosJK-c49796f3af3288426d03.js → Widget-CtYQauzA-ae8839a2e4146c799aec.js} +1 -1
  84. data/tools/admin/main-040488697a5f3eed5115.js +1502 -0
  85. data/tools/admin/main.js +1 -1
  86. data/tools/admin/{settings-DZ910lLo-06b2e35cd3b4b6b6686c.js → settings-BrhbKDEv-791c3f57ac7979ee13b6.js} +1 -1
  87. metadata +85 -85
  88. data/tools/admin/CanvasWidget-BEi8h3Mq-e74743c293400ba5a929.js +0 -1
  89. data/tools/admin/CanvasdotWidget-eZuMgkhL-069ce51cfaf9b6705d69.js +0 -1
  90. data/tools/admin/CanvaslabelWidget-DtvbgeYH-0bb6f6c1d49c8d123129.js +0 -1
  91. data/tools/admin/CanvaslabelvalueWidget-C_FRIeNb-3b5c9903ad9d379fc52a.js +0 -1
  92. data/tools/admin/CheckbuttonWidget-ByxMDkiS-6939f416d1a7977f37fb.js +0 -1
  93. data/tools/admin/ComboboxWidget-CAGxGv2r-28b0f6b63d807a2f3217.js +0 -1
  94. data/tools/admin/Graph-Cz0Ns1FD-9251aa7b63944e24104e.js +0 -1
  95. data/tools/admin/HorizontallineWidget-DeFkOaYO-816f7a06f03f7222e67e.js +0 -1
  96. data/tools/admin/InterfacesTab-CZsnR6xB-abec32626a92ea91aa87.js +0 -1
  97. data/tools/admin/LabelsparklineWidget-CebbEH-j-9c683841d069f9e5b25c.js +0 -1
  98. data/tools/admin/LabelvaluelimitscolumnWidget-BRlNDEqp-d0a4f3d8ee015080c0a8.js +0 -1
  99. data/tools/admin/RadiogroupWidget-CciTCv1U-f9b9584110d84fad120b.js +0 -1
  100. data/tools/admin/RedisTab-DAeGow_e-aad9acabdf7d1943559b.js +0 -1
  101. data/tools/admin/RoutersTab-G4WKtUOo-8f69fb20843fdf62fa85.js +0 -1
  102. data/tools/admin/SettingsTab-BUdeAh4o-f1b85c2ee59d2f206af1.js +0 -5
  103. data/tools/admin/SpacerWidget-VVkOCb6N-356dcf21185ada59e84f.js +0 -1
  104. data/tools/admin/SparklineWidget-Dsmn38z_-2bd86ac75cf900848cd0.js +0 -1
  105. data/tools/admin/TextboxWidget-CHs2VYIv-55be6bce7cab19177b56.js +0 -1
  106. data/tools/admin/TimeWidget-D0xT1wXR-52493dd27717545a87bd.js +0 -1
  107. data/tools/admin/TsdbTab-BytqwnkN-ddc61c1fffc41912b8cb.js +0 -4
  108. data/tools/admin/ValueWidget-B1aGUBP7-320f2f1feb3886640deb.js +0 -1
  109. data/tools/admin/ValuelimitsbarWidget-B7KcRjLS-70f46b11dcb2a83a3562.js +0 -1
  110. data/tools/admin/ValuerangebarWidget-uVZEI32U-ded0715685adaffdaca5.js +0 -1
  111. data/tools/admin/main-320f7a52ead0c027f3e7.js +0 -1502
@@ -1 +1 @@
1
- System.register(["./main-320f7a52ead0c027f3e7.js","vue","vue-router","pinia","single-spa","vuetify"],(function(C,$){"use strict";var V,o,n,u,d,l,s,c,p,m,v,g,N,b;return{setters:[a=>{V=a.f,o=a.u},a=>{n=a.resolveComponent,u=a.openBlock,d=a.createElementBlock,l=a.createVNode,s=a.withCtx,c=a.createTextVNode,p=a.createElementVNode,m=a.toDisplayString,v=a.Fragment,g=a.renderList,N=a.createBlock,b=a.createCommentVNode},null,null,null,null],execute:(function(){const a={data(){return{file:null,loadingSecret:!1,secrets:[],secretName:"",secretValue:"",alert:"",alertType:"success",showAlert:!1,isEnterprise:!1}},created(){o.get("/openc3-api/info").then(({data:i})=>{this.isEnterprise=i.enterprise})},mounted(){this.update()},methods:{update(){o.get("/openc3-api/secrets").then(i=>{this.secrets=i.data})},upload:function(){this.loadingSecret=!0;let i=null;if(this.file){const e=new FormData;e.append("file",this.file,this.file.name),i=o.post(`/openc3-api/secrets/${this.secretName}`,{data:e,headers:{"Content-Type":"multipart/form-data"}})}else i=o.post(`/openc3-api/secrets/${this.secretName}`,{data:{value:this.secretValue}});i.then(e=>{this.loadingSecret=!1,this.file=null,this.secretName="",this.secretValue="",this.update()}).catch(e=>{this.loadingSecret=!1})},deleteSecret:function(i){this.$dialog.confirm(`Are you sure you want to remove: ${i}`,{okText:"Delete",cancelText:"Cancel"}).then(function(e){return o.delete(`/openc3-api/secrets/${i}`)}).then(e=>{this.alert=`Removed secret ${i}`,this.alertType="success",this.showAlert=!0,setTimeout(()=>{this.showAlert=!1},5e3),this.update()})}}};function w(i,e,F,j,t,k){const y=n("v-alert"),T=n("v-file-input"),f=n("v-col"),x=n("v-row"),S=n("v-text-field"),E=n("v-icon"),_=n("v-btn"),B=n("v-list-item-title"),U=n("v-list-item"),A=n("v-divider"),D=n("v-list");return u(),d("div",null,[l(y,{modelValue:t.isEnterprise,"onUpdate:modelValue":e[0]||(e[0]=r=>t.isEnterprise=r),class:"ma-4"},{default:s(()=>[...e[6]||(e[6]=[c(" Note: This cannot be used for setting Kubernetes secrets. You must set them in Kubernetes as a ",-1),p("a",{href:"https://kubernetes.io/docs/concepts/configuration/secret/",target:"_blank"}," Secrets object ",-1),c(" instead. ",-1)])]),_:1},8,["modelValue"]),l(x,{"no-gutters":""},{default:s(()=>[l(f,null,{default:s(()=>[l(T,{ref:"fileInput",modelValue:t.file,"onUpdate:modelValue":e[1]||(e[1]=r=>t.file=r),"show-size":"",accept:"*",class:"mx-2",label:"Click to select a file to create a secret from or enter a secret value"},null,8,["modelValue"])]),_:1})]),_:1}),l(x,{"no-gutters":"",align:"center",style:{"padding-left":"10px"}},{default:s(()=>[l(f,{cols:"3"},{default:s(()=>[l(S,{modelValue:t.secretName,"onUpdate:modelValue":e[2]||(e[2]=r=>t.secretName=r),label:"Secret Name",class:"px-2"},null,8,["modelValue"])]),_:1}),l(f,{cols:"3",class:"px-2"},{default:s(()=>[l(S,{modelValue:t.secretValue,"onUpdate:modelValue":e[3]||(e[3]=r=>t.secretValue=r),disabled:t.file,label:"Secret Value"},null,8,["modelValue","disabled"])]),_:1}),l(f,{cols:"3",class:"px-2"},{default:s(()=>[l(_,{class:"mx-2",color:"primary","data-test":"secretUpload",disabled:t.secretName===""||t.file==null&&t.secretValue==="",loading:t.loadingSecret,onClick:e[4]||(e[4]=r=>k.upload())},{loader:s(()=>[...e[8]||(e[8]=[p("span",null,"Loading...",-1)])]),default:s(()=>[l(E,{start:"",theme:"dark"},{default:s(()=>[...e[7]||(e[7]=[c("mdi-cloud-upload",-1)])]),_:1}),e[9]||(e[9]=p("span",null," Set ",-1))]),_:1},8,["disabled","loading"])]),_:1})]),_:1}),l(y,{modelValue:t.showAlert,"onUpdate:modelValue":e[5]||(e[5]=r=>t.showAlert=r),closable:"",type:t.alertType},{default:s(()=>[c(m(t.alert),1)]),_:1},8,["modelValue","type"]),l(D,{"data-test":"secretList"},{default:s(()=>[(u(!0),d(v,null,g(t.secrets,(r,h)=>(u(),d("div",{key:h},[l(U,null,{append:s(()=>[l(_,{icon:"mdi-delete",variant:"text","aria-label":"Delete Secret",onClick:I=>k.deleteSecret(r)},null,8,["onClick"])]),default:s(()=>[l(B,null,{default:s(()=>[c(m(r),1)]),_:2},1024)]),_:2},1024),h<t.secrets.length-1?(u(),N(A,{key:h})):b("",!0)]))),128))]),_:1})])}const L=C("default",V(a,[["render",w]]))})}}));
1
+ System.register(["./main-040488697a5f3eed5115.js","vue","vue-router","pinia","single-spa","vuetify"],(function(C,$){"use strict";var V,o,n,u,d,l,s,c,p,m,v,g,k,N;return{setters:[a=>{V=a.k,o=a.D},a=>{n=a.resolveComponent,u=a.openBlock,d=a.createElementBlock,l=a.createVNode,s=a.withCtx,c=a.createTextVNode,p=a.createElementVNode,m=a.toDisplayString,v=a.Fragment,g=a.renderList,k=a.createBlock,N=a.createCommentVNode},null,null,null,null],execute:(function(){const a={data(){return{file:null,loadingSecret:!1,secrets:[],secretName:"",secretValue:"",alert:"",alertType:"success",showAlert:!1,isEnterprise:!1}},created(){o.get("/openc3-api/info").then(({data:i})=>{this.isEnterprise=i.enterprise})},mounted(){this.update()},methods:{update(){o.get("/openc3-api/secrets").then(i=>{this.secrets=i.data})},upload:function(){this.loadingSecret=!0;let i=null;if(this.file){const e=new FormData;e.append("file",this.file,this.file.name),i=o.post(`/openc3-api/secrets/${this.secretName}`,{data:e,headers:{"Content-Type":"multipart/form-data"}})}else i=o.post(`/openc3-api/secrets/${this.secretName}`,{data:{value:this.secretValue}});i.then(e=>{this.loadingSecret=!1,this.file=null,this.secretName="",this.secretValue="",this.update()}).catch(e=>{this.loadingSecret=!1})},deleteSecret:function(i){this.$dialog.confirm(`Are you sure you want to remove: ${i}`,{okText:"Delete",cancelText:"Cancel"}).then(function(e){return o.delete(`/openc3-api/secrets/${i}`)}).then(e=>{this.alert=`Removed secret ${i}`,this.alertType="success",this.showAlert=!0,setTimeout(()=>{this.showAlert=!1},5e3),this.update()})}}};function w(i,e,F,j,t,b){const y=n("v-alert"),T=n("v-file-input"),f=n("v-col"),x=n("v-row"),S=n("v-text-field"),D=n("v-icon"),_=n("v-btn"),E=n("v-list-item-title"),B=n("v-list-item"),U=n("v-divider"),A=n("v-list");return u(),d("div",null,[l(y,{modelValue:t.isEnterprise,"onUpdate:modelValue":e[0]||(e[0]=r=>t.isEnterprise=r),class:"ma-4"},{default:s(()=>[...e[6]||(e[6]=[c(" Note: This cannot be used for setting Kubernetes secrets. You must set them in Kubernetes as a ",-1),p("a",{href:"https://kubernetes.io/docs/concepts/configuration/secret/",target:"_blank"}," Secrets object ",-1),c(" instead. ",-1)])]),_:1},8,["modelValue"]),l(x,{"no-gutters":""},{default:s(()=>[l(f,null,{default:s(()=>[l(T,{ref:"fileInput",modelValue:t.file,"onUpdate:modelValue":e[1]||(e[1]=r=>t.file=r),"show-size":"",accept:"*",class:"mx-2",label:"Click to select a file to create a secret from or enter a secret value"},null,8,["modelValue"])]),_:1})]),_:1}),l(x,{"no-gutters":"",align:"center",style:{"padding-left":"10px"}},{default:s(()=>[l(f,{cols:"3"},{default:s(()=>[l(S,{modelValue:t.secretName,"onUpdate:modelValue":e[2]||(e[2]=r=>t.secretName=r),label:"Secret Name",class:"px-2"},null,8,["modelValue"])]),_:1}),l(f,{cols:"3",class:"px-2"},{default:s(()=>[l(S,{modelValue:t.secretValue,"onUpdate:modelValue":e[3]||(e[3]=r=>t.secretValue=r),disabled:t.file,label:"Secret Value"},null,8,["modelValue","disabled"])]),_:1}),l(f,{cols:"3",class:"px-2"},{default:s(()=>[l(_,{class:"mx-2",color:"primary","data-test":"secretUpload",disabled:t.secretName===""||t.file==null&&t.secretValue==="",loading:t.loadingSecret,onClick:e[4]||(e[4]=r=>b.upload())},{loader:s(()=>[...e[8]||(e[8]=[p("span",null,"Loading...",-1)])]),default:s(()=>[l(D,{start:"",theme:"dark"},{default:s(()=>[...e[7]||(e[7]=[c("mdi-cloud-upload",-1)])]),_:1}),e[9]||(e[9]=p("span",null," Set ",-1))]),_:1},8,["disabled","loading"])]),_:1})]),_:1}),l(y,{modelValue:t.showAlert,"onUpdate:modelValue":e[5]||(e[5]=r=>t.showAlert=r),closable:"",type:t.alertType},{default:s(()=>[c(m(t.alert),1)]),_:1},8,["modelValue","type"]),l(A,{"data-test":"secretList"},{default:s(()=>[(u(!0),d(v,null,g(t.secrets,(r,h)=>(u(),d("div",{key:h},[l(B,null,{append:s(()=>[l(_,{icon:"mdi-delete",variant:"text","aria-label":"Delete Secret",onClick:I=>b.deleteSecret(r)},null,8,["onClick"])]),default:s(()=>[l(E,null,{default:s(()=>[c(m(r),1)]),_:2},1024)]),_:2},1024),h<t.secrets.length-1?(u(),k(U,{key:h})):N("",!0)]))),128))]),_:1})])}const L=C("default",V(a,[["render",w]]))})}}));
@@ -0,0 +1,6 @@
1
+ System.register(["./main-040488697a5f3eed5115.js","vue","./settings-BrhbKDEv-791c3f57ac7979ee13b6.js","single-spa","vue-router","pinia","vuetify"],(function(te,$e){"use strict";var k,q,O,a,b,B,l,L,E,V,o,s,C,W,A,F,w,N,T;return{setters:[S=>{k=S.k,q=S.D,O=S.Z},S=>{a=S.resolveComponent,b=S.openBlock,B=S.createElementBlock,l=S.createVNode,L=S.Fragment,E=S.createCommentVNode,V=S.createBlock,o=S.withCtx,s=S.createTextVNode,C=S.toDisplayString,W=S.createSlots,A=S.mergeProps,F=S.withDirectives,w=S.vShow,N=S.renderList},S=>{T=S.n},null,null,null,null],execute:(function(){const S="__default",le={data(){return{suppressedWarnings:[],selectedSuppressedWarnings:[],selectAllSuppressedWarnings:!1}},watch:{selectAllSuppressedWarnings:function(t){t?this.selectedSuppressedWarnings=this.suppressedWarnings.map(e=>e.key):this.selectedSuppressedWarnings=[]}},created(){this.loadSuppressedWarnings()},methods:{loadSuppressedWarnings:function(){this.suppressedWarnings=Object.keys(localStorage).filter(t=>t.startsWith("suppresswarning__")).map(this.localStorageKeyToDisplayObject),this.selectedSuppressedWarnings=[]},localStorageKeyToDisplayObject:function(t){const e=t.split("__")[1].replaceAll("_"," ");return{key:t,text:e.charAt(0).toUpperCase()+e.slice(1),value:localStorage[t]}},resetSuppressedWarnings:function(){this.deleteLocalStorageKeys(this.selectedSuppressedWarnings),this.loadSuppressedWarnings()},deleteLocalStorageKeys:function(t){for(const e of t)delete localStorage[e]}}};function oe(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-card-subtitle"),u=a("v-checkbox"),m=a("v-card-text"),g=a("v-btn"),p=a("v-card-actions"),v=a("v-card");return b(),V(v,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[2]||(e[2]=[s("Reset suppressed warnings",-1)])]),_:1}),l(i,null,{default:o(()=>[...e[3]||(e[3]=[s(` This resets "don't show this again" dialogs on this browser `,-1)])]),_:1}),l(m,null,{default:o(()=>[r.suppressedWarnings.length?(b(),B(L,{key:0},[l(u,{modelValue:r.selectAllSuppressedWarnings,"onUpdate:modelValue":e[0]||(e[0]=n=>r.selectAllSuppressedWarnings=n),label:"Select All Warnings",density:"compact"},null,8,["modelValue"]),(b(!0),B(L,null,N(r.suppressedWarnings,n=>(b(),V(u,{key:n.key,modelValue:r.selectedSuppressedWarnings,"onUpdate:modelValue":e[1]||(e[1]=d=>r.selectedSuppressedWarnings=d),label:n.text,value:n.key,density:"compact","hide-details":""},null,8,["modelValue","label","value"]))),128))],64)):(b(),B(L,{key:1},[s(" No warnings to reset ")],64))]),_:1}),l(p,{class:"px-2"},{default:o(()=>[l(g,{disabled:!r.selectedSuppressedWarnings.length,color:"warning",variant:"text","data-test":"reset-suppressed-warnings",onClick:f.resetSuppressedWarnings},{default:o(()=>[...e[4]||(e[4]=[s(" Reset ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})}const ae=k(le,[["render",oe]]),P="ai_chat",re={mixins:[T],data(){return{aiChatEnabled:!0}},created(){this.loadSetting(P)},methods:{save:function(){this.saveSetting(P,this.aiChatEnabled)},parseSetting:function(t){t!=null&&(this.aiChatEnabled=t)}}};function se(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-alert"),u=a("v-switch"),m=a("v-card-text"),g=a("v-btn"),p=a("v-card-actions"),v=a("v-card");return b(),V(v,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[4]||(e[4]=[s("AI Chat Settings",-1)])]),_:1}),l(i,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=n=>t.errorLoading=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=n=>t.errorSaving=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=n=>t.successSaving=n),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[5]||(e[5]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(m,{class:"pb-0"},{default:o(()=>[l(u,{modelValue:r.aiChatEnabled,"onUpdate:modelValue":e[3]||(e[3]=n=>r.aiChatEnabled=n),label:`Enable the in-app AI Chatbot. When disabled, the AI
2
+ chat button and drawer are hidden for all users.`,color:"primary","data-test":"ai-chat-enabled"},null,8,["modelValue"])]),_:1}),l(p,null,{default:o(()=>[l(g,{color:"success",variant:"text","data-test":"save-ai-chat",onClick:f.save},{default:o(()=>[...e[6]||(e[6]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const ne=k(re,[["render",se]]),de={data(){return{lastConfigs:[],selectedLastConfigs:[],selectAllLastConfigs:!1}},watch:{selectAllLastConfigs:function(t){t?this.selectedLastConfigs=this.lastConfigs.map(e=>e.key):this.selectedLastConfigs=[]}},created(){this.loadLastConfigs()},methods:{loadLastConfigs:function(){localStorage.getItem(S)&&localStorage.removeItem(S),this.lastConfigs=Object.keys(localStorage).filter(t=>t.endsWith(S)).map(t=>{const e=t.split("__")[0].replaceAll("_"," ");return{key:t,text:e.charAt(0).toUpperCase()+e.slice(1)}}),this.selectedLastConfigs=[]},clearLastConfigs:function(){this.deleteLocalStorageKeys(this.selectedLastConfigs),this.loadLastConfigs()},deleteLocalStorageKeys:function(t){for(const e of t)localStorage.removeItem(e)}}};function ie(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-card-subtitle"),u=a("v-checkbox"),m=a("v-card-text"),g=a("v-btn"),p=a("v-card-actions"),v=a("v-card");return b(),V(v,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[2]||(e[2]=[s(" Clear default configs ",-1)])]),_:1}),l(i,null,{default:o(()=>[...e[3]||(e[3]=[s(" This clears the default tool configs on this browser ",-1)])]),_:1}),l(m,null,{default:o(()=>[r.lastConfigs.length?(b(),B(L,{key:0},[l(u,{modelValue:r.selectAllLastConfigs,"onUpdate:modelValue":e[0]||(e[0]=n=>r.selectAllLastConfigs=n),label:"Select All Configs",density:"compact"},null,8,["modelValue"]),(b(!0),B(L,null,N(r.lastConfigs,n=>(b(),V(u,{key:n.key,modelValue:r.selectedLastConfigs,"onUpdate:modelValue":e[1]||(e[1]=d=>r.selectedLastConfigs=d),label:n.text,value:n.key,"hide-details":"",density:"compact"},null,8,["modelValue","label","value"]))),128))],64)):(b(),B(L,{key:1},[s(" No configs to clear ")],64))]),_:1}),l(p,{class:"px-2"},{default:o(()=>[l(g,{disabled:!r.selectedLastConfigs.length,color:"warning",variant:"text","data-test":"clear-default-configs",onClick:f.clearLastConfigs},{default:o(()=>[...e[4]||(e[4]=[s(" Clear ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})}const ue=k(de,[["render",ie]]),Z="script_runner_locking",ce={mixins:[T],data(){return{vimMode:O.isVimModeEnabled(),scriptLockingEnabled:!0,defaultLanguage:O.getDefaultScriptingLanguage(),languageOptions:[{text:"Ruby",value:"ruby"},{text:"Python",value:"python"}]}},created(){this.loadSetting(Z)},methods:{save:function(){O.setVimMode(this.vimMode),O.setDefaultScriptingLanguage(this.defaultLanguage),this.saveSetting(Z,this.scriptLockingEnabled)},parseSetting:function(t){t!=null&&(this.scriptLockingEnabled=t)}}};function me(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-card-subtitle"),u=a("v-alert"),m=a("v-select"),g=a("v-switch"),p=a("v-card-text"),v=a("v-btn"),n=a("v-card-actions"),d=a("v-card");return b(),V(d,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[6]||(e[6]=[s(" Code Editor Settings ",-1)])]),_:1}),l(i,null,{default:o(()=>[...e[7]||(e[7]=[s(" Settings for the code editors built into COSMOS (e.g. in Script Runner). These settings are saved to your browser's local storage. ",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=_=>t.errorLoading=_),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=_=>t.errorSaving=_),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=_=>t.successSaving=_),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[8]||(e[8]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(p,{class:"pb-0"},{default:o(()=>[l(m,{modelValue:r.defaultLanguage,"onUpdate:modelValue":e[3]||(e[3]=_=>r.defaultLanguage=_),label:"Default scripting language",items:r.languageOptions,"item-title":"text","item-value":"value",color:"primary",class:"mt-4","data-test":"default-language"},null,8,["modelValue","items"]),l(g,{modelValue:r.vimMode,"onUpdate:modelValue":e[4]||(e[4]=_=>r.vimMode=_),label:"Vim mode",color:"primary"},null,8,["modelValue"]),l(g,{modelValue:r.scriptLockingEnabled,"onUpdate:modelValue":e[5]||(e[5]=_=>r.scriptLockingEnabled=_),label:`Script File Locking - When enabled, a script being edited
3
+ by one user is read-only for other users until they explicitly force
4
+ unlock. Disable to allow multiple users to edit the same script
5
+ concurrently (last save wins).`,color:"primary","data-test":"script-locking-enabled"},null,8,["modelValue"])]),_:1}),l(n,null,{default:o(()=>[l(v,{color:"success",variant:"text","data-test":"save-editor-settings",onClick:f.save},{default:o(()=>[...e[9]||(e[9]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const ge=k(ce,[["render",me]]),j="astro",pe={mixins:[T],data(){return{hideClock:!1}},created(){this.loadSetting(j)},methods:{save(){this.saveSetting(j,JSON.stringify({hideClock:this.hideClock}))},parseSetting:function(t){if(t){let e=JSON.parse(t);this.hideClock=e.hideClock}}}};function fe(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-alert"),u=a("v-switch"),m=a("v-card-text"),g=a("v-btn"),p=a("v-card-actions"),v=a("v-card");return b(),V(v,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[4]||(e[4]=[s("Astro Settings",-1)])]),_:1}),l(i,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=n=>t.errorLoading=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=n=>t.errorSaving=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=n=>t.successSaving=n),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[5]||(e[5]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(m,{class:"pb-0"},{default:o(()=>[l(u,{modelValue:r.hideClock,"onUpdate:modelValue":e[3]||(e[3]=n=>r.hideClock=n),label:"Hide Astro Clock",color:"primary"},null,8,["modelValue"])]),_:1}),l(p,null,{default:o(()=>[l(g,{color:"success",variant:"text","data-test":"save-astro-settings",onClick:f.save},{default:o(()=>[...e[6]||(e[6]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const ve=k(pe,[["render",fe]]),I="theme",he={mixins:[T],data(){return{selectedTheme:"cosmosDark",themeOptions:[{label:"Astro (Default)",value:"cosmosDark"},{label:"Dark Cobalt",value:"cosmosDarkCobalt"},{label:"Dark Indigo",value:"cosmosDarkIndigo"},{label:"Dark Slate",value:"cosmosDarkSlate"},{label:"Dark Emerald",value:"cosmosDarkEmerald"}]}},created(){this.loadSetting(I)},methods:{save(){this.saveSetting(I,this.selectedTheme)},parseSetting(t){t&&(this.selectedTheme=t)}}};function be(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-alert"),u=a("v-select"),m=a("v-card-text"),g=a("v-btn"),p=a("v-card-actions"),v=a("v-card");return b(),V(v,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[4]||(e[4]=[s("Theme",-1)])]),_:1}),l(i,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=n=>t.errorLoading=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=n=>t.errorSaving=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=n=>t.successSaving=n),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[5]||(e[5]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(m,{class:"pt-4 pb-0"},{default:o(()=>[l(u,{modelValue:r.selectedTheme,"onUpdate:modelValue":e[3]||(e[3]=n=>r.selectedTheme=n),label:"Theme",items:r.themeOptions,"item-title":"label","item-value":"value","data-test":"theme-select"},null,8,["modelValue","items"])]),_:1}),l(p,null,{default:o(()=>[l(g,{color:"success",variant:"text","data-test":"save-theme-settings",onClick:f.save},{default:o(()=>[...e[6]||(e[6]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const Ce=k(he,[["render",be]]),K="classification_banner",Se={mixins:[T],data(){return{text:"",displayTopBanner:!1,displayBottomBanner:!1,topHeight:0,bottomHeight:0,selectedBackgroundColor:"red",customBackgroundColor:"",selectedFontColor:"white",customFontColor:"",customColorHint:"Enter a 3 or 6-digit hex color code",colors:[{text:"Yellow",value:"yellow"},{text:"Orange",value:"orange"},{text:"Red",value:"red"},{text:"Purple",value:"purple"},{text:"Blue",value:"blue"},{text:"Green",value:"green"},{text:"Black",value:"black"},{text:"White",value:"white"},{text:"Custom",value:!1}],rules:{customColor:t=>/^#(?:[0-9a-fA-F]{3}){1,2}$/.test(t)||this.customColorHint}}},computed:{saveObj:function(){return JSON.stringify({text:this.text,fontColor:this.selectedFontColor||this.customFontColor,backgroundColor:this.selectedBackgroundColor||this.customBackgroundColor,topHeight:this.displayTopBanner?this.topHeight:0,bottomHeight:this.displayBottomBanner?this.bottomHeight:0})},formValid:function(){return(this.selectedFontColor||this.rules.customColor(this.customFontColor)===!0)&&(this.selectedBackgroundColor||this.rules.customColor(this.customBackgroundColor)===!0)}},watch:{displayTopBanner:function(t){t?this.topHeight=20:this.topHeight=0},displayBottomBanner:function(t){t?this.bottomHeight=20:this.bottomHeight=0},customFontColor:function(t){t&&t.length&&!t.startsWith("#")&&(this.customFontColor=`#${t}`)},customBackgroundColor:function(t){t&&t.length&&!t.startsWith("#")&&(this.customBackgroundColor=`#${t}`)}},created(){this.loadSetting(K)},methods:{save(){this.saveSetting(K,this.saveObj)},parseSetting:function(t){if(t){const e=JSON.parse(t);this.text=e.text,this.topHeight=e.topHeight,this.bottomHeight=e.bottomHeight,this.displayTopBanner=e.topHeight!==0,this.displayBottomBanner=e.bottomHeight!==0,e.backgroundColor&&e.backgroundColor.startsWith("#")?(this.customBackgroundColor=e.backgroundColor,this.selectedBackgroundColor=!1):this.selectedBackgroundColor=e.backgroundColor,e.fontColor&&e.fontColor.startsWith("#")?(this.customFontColor=e.fontColor,this.selectedFontColor=!1):this.selectedFontColor=e.fontColor}}}};function Ve(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-alert"),u=a("v-text-field"),m=a("v-col"),g=a("v-row"),p=a("v-icon"),v=a("v-list-item"),n=a("v-select"),d=a("v-switch"),_=a("v-number-input"),R=a("v-card-text"),H=a("v-btn"),D=a("v-card-actions"),M=a("v-card");return b(),V(M,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[12]||(e[12]=[s("Classification Banner Settings",-1)])]),_:1}),l(i,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=c=>t.errorLoading=c),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=c=>t.errorSaving=c),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=c=>t.successSaving=c),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[13]||(e[13]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(R,{class:"pb-0"},{default:o(()=>[l(g,{dense:""},{default:o(()=>[l(m,null,{default:o(()=>[l(u,{modelValue:r.text,"onUpdate:modelValue":e[3]||(e[3]=c=>r.text=c),label:"Text","data-test":"classification-banner-text"},null,8,["modelValue"])]),_:1})]),_:1}),l(g,{dense:""},{default:o(()=>[l(m,null,{default:o(()=>[l(n,{modelValue:r.selectedBackgroundColor,"onUpdate:modelValue":e[4]||(e[4]=c=>r.selectedBackgroundColor=c),label:"Background color",items:r.colors,"item-title":"text","data-test":"classification-banner-background-color"},W({item:o(({props:c,item:x})=>[l(v,A(c,{value:x.text}),{prepend:o(()=>[x.value?(b(),V(p,{key:0,color:x.value},{default:o(()=>[...e[15]||(e[15]=[s(" mdi-square ",-1)])]),_:1},8,["color"])):E("",!0)]),_:2},1040,["value"])]),_:2},[r.selectedBackgroundColor?{name:"prepend-inner",fn:o(()=>[l(p,{color:r.selectedBackgroundColor},{default:o(()=>[...e[14]||(e[14]=[s(" mdi-square ",-1)])]),_:1},8,["color"])]),key:"0"}:void 0]),1032,["modelValue","items"])]),_:1}),l(m,null,{default:o(()=>[l(u,{modelValue:r.customBackgroundColor,"onUpdate:modelValue":e[5]||(e[5]=c=>r.customBackgroundColor=c),label:"Custom background color",hint:r.customColorHint,disabled:r.selectedBackgroundColor!==!1,rules:[r.rules.customColor],"data-test":"classification-banner-custom-background-color"},{"prepend-inner":o(()=>[F(l(p,{color:r.customBackgroundColor},{default:o(()=>[...e[16]||(e[16]=[s(" mdi-square ",-1)])]),_:1},8,["color"]),[[w,!r.selectedBackgroundColor]])]),_:1},8,["modelValue","hint","disabled","rules"])]),_:1}),l(m,null,{default:o(()=>[l(n,{modelValue:r.selectedFontColor,"onUpdate:modelValue":e[6]||(e[6]=c=>r.selectedFontColor=c),label:"Font color",items:r.colors,"item-title":"text","data-test":"classification-banner-font-color"},W({item:o(({props:c,item:x})=>[l(v,A(c,{value:x.text}),{prepend:o(()=>[x.value?(b(),V(p,{key:0,color:x.value},{default:o(()=>[...e[18]||(e[18]=[s(" mdi-square ",-1)])]),_:1},8,["color"])):E("",!0)]),_:2},1040,["value"])]),_:2},[r.selectedFontColor?{name:"prepend-inner",fn:o(()=>[F(l(p,{color:r.selectedFontColor},{default:o(()=>[...e[17]||(e[17]=[s(" mdi-square ",-1)])]),_:1},8,["color"]),[[w,r.selectedFontColor]])]),key:"0"}:void 0]),1032,["modelValue","items"])]),_:1}),l(m,null,{default:o(()=>[l(u,{modelValue:r.customFontColor,"onUpdate:modelValue":e[7]||(e[7]=c=>r.customFontColor=c),label:"Custom font color",hint:r.customColorHint,disabled:r.selectedFontColor!==!1,rules:[r.rules.customColor],"data-test":"classification-banner-custom-font-color"},{"prepend-inner":o(()=>[F(l(p,{color:r.customFontColor},{default:o(()=>[...e[19]||(e[19]=[s(" mdi-square ",-1)])]),_:1},8,["color"]),[[w,!r.selectedFontColor]])]),_:1},8,["modelValue","hint","disabled","rules"])]),_:1})]),_:1}),l(g,{dense:""},{default:o(()=>[l(m,null,{default:o(()=>[l(d,{modelValue:r.displayTopBanner,"onUpdate:modelValue":e[8]||(e[8]=c=>r.displayTopBanner=c),label:"Display top banner",color:"primary","data-test":"display-top-banner"},null,8,["modelValue"])]),_:1}),l(m,null,{default:o(()=>[l(_,{modelValue:r.topHeight,"onUpdate:modelValue":e[9]||(e[9]=c=>r.topHeight=c),"control-variant":"stacked",label:"Top height",disabled:!r.displayTopBanner,suffix:"px","data-test":"classification-banner-top-height"},null,8,["modelValue","disabled"])]),_:1}),l(m,null,{default:o(()=>[l(d,{modelValue:r.displayBottomBanner,"onUpdate:modelValue":e[10]||(e[10]=c=>r.displayBottomBanner=c),label:"Display bottom banner",color:"primary","data-test":"display-bottom-banner"},null,8,["modelValue"])]),_:1}),l(m,null,{default:o(()=>[l(_,{modelValue:r.bottomHeight,"onUpdate:modelValue":e[11]||(e[11]=c=>r.bottomHeight=c),"control-variant":"stacked",label:"Bottom height",disabled:!r.displayBottomBanner,suffix:"px","data-test":"classification-banner-bottom-height"},null,8,["modelValue","disabled"])]),_:1})]),_:1})]),_:1}),l(D,null,{default:o(()=>[l(H,{disabled:!f.formValid,color:"success",variant:"text","data-test":"save-classification-banner",onClick:f.save},{default:o(()=>[...e[20]||(e[20]=[s(" Save ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})}const ye=k(Se,[["render",Ve]]),z="time_zone",_e={mixins:[T],data(){return{timeZones:["local","UTC"],timeZone:"local"}},created(){this.loadSetting(z)},methods:{save(){this.saveSetting(z,this.timeZone)},parseSetting:function(t){t&&(this.timeZone=t)}}};function ke(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-card-subtitle"),u=a("v-alert"),m=a("v-select"),g=a("v-card-text"),p=a("v-btn"),v=a("v-card-actions"),n=a("v-card");return b(),V(n,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[4]||(e[4]=[s("Time Zone",-1)])]),_:1}),l(i,null,{default:o(()=>[...e[5]||(e[5]=[s(" The time zone to use in all COSMOS tools (graphs, time choosers, log messages, etc). Anywhere a date / time is displayed, it will be in the chosen time zone. (Note: All timestamps are UTC in the backend). ",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=d=>t.errorLoading=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=d=>t.errorSaving=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=d=>t.successSaving=d),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[6]||(e[6]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(g,null,{default:o(()=>[l(m,{modelValue:r.timeZone,"onUpdate:modelValue":e[3]||(e[3]=d=>r.timeZone=d),items:r.timeZones,label:"Select time display","hide-details":"","prepend-icon":"mdi-map-clock","single-line":"","data-test":"time-zone"},null,8,["modelValue","items"])]),_:1}),l(v,null,{default:o(()=>[l(p,{color:"success",variant:"text","data-test":"save-time-zone",onClick:f.save},{default:o(()=>[...e[7]||(e[7]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const xe=k(_e,[["render",ke]]),J="time_format",Ue={mixins:[T],data(){return{timeFormats:[{title:"12-hour (AM/PM)",value:"ampm"},{title:"24-hour",value:"24hr"}],timeFormat:"ampm"}},created(){this.loadSetting(J)},methods:{save(){this.saveSetting(J,this.timeFormat)},parseSetting:function(t){t&&(this.timeFormat=t)}}};function Te(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-card-subtitle"),u=a("v-alert"),m=a("v-select"),g=a("v-card-text"),p=a("v-btn"),v=a("v-card-actions"),n=a("v-card");return b(),V(n,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[4]||(e[4]=[s("Time Format",-1)])]),_:1}),l(i,null,{default:o(()=>[...e[5]||(e[5]=[s(" The time format to use in all COSMOS tools (time pickers, etc). This setting controls whether time is displayed in 12-hour (AM/PM) or 24-hour format. ",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=d=>t.errorLoading=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=d=>t.errorSaving=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=d=>t.successSaving=d),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[6]||(e[6]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(g,null,{default:o(()=>[l(m,{modelValue:r.timeFormat,"onUpdate:modelValue":e[3]||(e[3]=d=>r.timeFormat=d),items:r.timeFormats,label:"Select time format","hide-details":"","prepend-icon":"mdi-clock-outline","single-line":"","data-test":"time-format"},null,8,["modelValue","items"])]),_:1}),l(v,null,{default:o(()=>[l(p,{color:"success",variant:"text","data-test":"save-time-format",onClick:f.save},{default:o(()=>[...e[7]||(e[7]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const Be=k(Ue,[["render",Te]]),$="news_feed",Le={mixins:[T],data(){return{newsFeed:!0}},created(){this.loadSetting($)},methods:{save(){this.saveSetting($,this.newsFeed),this.newsFeed&&this.api.update_news()},parseSetting:function(t){this.newsFeed=t}}};function Fe(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-alert"),u=a("v-switch"),m=a("v-card-text"),g=a("v-btn"),p=a("v-card-actions"),v=a("v-card");return b(),V(v,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[4]||(e[4]=[s("News Feed Settings",-1)])]),_:1}),l(i,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=n=>t.errorLoading=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=n=>t.errorSaving=n),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(i,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=n=>t.successSaving=n),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[5]||(e[5]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(m,{class:"pb-0"},{default:o(()=>[l(u,{modelValue:r.newsFeed,"onUpdate:modelValue":e[3]||(e[3]=n=>r.newsFeed=n),label:`Allow COSMOS backend to pull the news feed from the COSMOS external news site.
6
+ This is a low bandwidth poll which only happens every 12 hrs. To immediately update the news feed, click the 'Refresh' in the User Menu.`,color:"primary"},null,8,["modelValue"])]),_:1}),l(p,null,{default:o(()=>[l(g,{color:"success",variant:"text","data-test":"save-news-feed",onClick:f.save},{default:o(()=>[...e[6]||(e[6]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const we=k(Le,[["render",Fe]]),G="subtitle",Ee={mixins:[T],data(){return{subtitle:""}},created(){this.loadSetting(G)},methods:{save(){this.saveSetting(G,this.subtitle)},parseSetting:function(t){t&&(this.subtitle=t)}}};function Oe(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-card-subtitle"),u=a("v-alert"),m=a("v-text-field"),g=a("v-card-text"),p=a("v-btn"),v=a("v-card-actions"),n=a("v-card");return b(),V(n,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[4]||(e[4]=[s("Subtitle",-1)])]),_:1}),l(i,null,{default:o(()=>[...e[5]||(e[5]=[s(" This sets a subtitle to display below the COSMOS logo in the Navigation bar. ",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=d=>t.errorLoading=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=d=>t.errorSaving=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=d=>t.successSaving=d),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[6]||(e[6]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(g,{class:"pb-0"},{default:o(()=>[l(m,{modelValue:r.subtitle,"onUpdate:modelValue":e[3]||(e[3]=d=>r.subtitle=d),label:"Subtitle","data-test":"subtitle"},null,8,["modelValue"])]),_:1}),l(v,null,{default:o(()=>[l(p,{color:"success",variant:"text","data-test":"save-subtitle",onClick:f.save},{default:o(()=>[...e[7]||(e[7]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const We=k(Ee,[["render",Oe]]),Y="source_url",Ae={mixins:[T],data(){return{sourceUrl:"https://github.com/OpenC3/cosmos"}},created(){this.loadSetting(Y)},methods:{save(){this.saveSetting(Y,this.sourceUrl)},parseSetting:function(t){t&&(this.sourceUrl=t)}}};function Re(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-card-subtitle"),u=a("v-alert"),m=a("v-text-field"),g=a("v-card-text"),p=a("v-btn"),v=a("v-card-actions"),n=a("v-card");return b(),V(n,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[4]||(e[4]=[s(" Source code URL ",-1)])]),_:1}),l(i,null,{default:o(()=>[...e[5]||(e[5]=[s(' This sets the URL for the "Source" link in the footer. ',-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=d=>t.errorLoading=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=d=>t.errorSaving=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=d=>t.successSaving=d),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[6]||(e[6]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(g,{class:"pb-0"},{default:o(()=>[l(m,{modelValue:r.sourceUrl,"onUpdate:modelValue":e[3]||(e[3]=d=>r.sourceUrl=d),label:"Source URL","data-test":"source-url"},null,8,["modelValue"])]),_:1}),l(v,null,{default:o(()=>[l(p,{color:"success",variant:"text","data-test":"save-source-url",onClick:f.save},{default:o(()=>[...e[7]||(e[7]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const He=k(Ae,[["render",Re]]),Q="rubygems_url",De={mixins:[T],data(){return{rubygemsUrl:"https://rubygems.org"}},created(){this.loadSetting(Q)},methods:{save(){this.saveSetting(Q,this.rubygemsUrl)},parseSetting:function(t){t&&(this.rubygemsUrl=t)}}};function Me(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-card-subtitle"),u=a("v-alert"),m=a("v-text-field"),g=a("v-card-text"),p=a("v-btn"),v=a("v-card-actions"),n=a("v-card");return b(),V(n,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[4]||(e[4]=[s(" Rubygems URL ",-1)])]),_:1}),l(i,null,{default:o(()=>[...e[5]||(e[5]=[s(" This sets the URL for installing dependency rubygems. Also used for rubygem discovery. ",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=d=>t.errorLoading=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=d=>t.errorSaving=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=d=>t.successSaving=d),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[6]||(e[6]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(g,{class:"pb-0"},{default:o(()=>[l(m,{modelValue:r.rubygemsUrl,"onUpdate:modelValue":e[3]||(e[3]=d=>r.rubygemsUrl=d),label:"Rubygems URL","data-test":"rubygems-url"},null,8,["modelValue"])]),_:1}),l(v,null,{default:o(()=>[l(p,{color:"success",variant:"text","data-test":"save-rubygems-url",onClick:f.save},{default:o(()=>[...e[7]||(e[7]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const Ne=k(De,[["render",Me]]),X="pypi_url",qe={mixins:[T],data(){return{pypiUrl:"https://pypi.org"}},created(){this.loadSetting(X)},methods:{save(){this.saveSetting(X,this.pypiUrl)},parseSetting:function(t){t&&(this.pypiUrl=t)}}};function Pe(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-card-subtitle"),u=a("v-alert"),m=a("v-text-field"),g=a("v-card-text"),p=a("v-btn"),v=a("v-card-actions"),n=a("v-card");return b(),V(n,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[4]||(e[4]=[s(" Pypi URL ",-1)])]),_:1}),l(i,null,{default:o(()=>[...e[5]||(e[5]=[s(" This sets the URL for installing dependency python packages. Also used for package discovery. ",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=d=>t.errorLoading=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=d=>t.errorSaving=d),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=d=>t.successSaving=d),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[6]||(e[6]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(g,{class:"pb-0"},{default:o(()=>[l(m,{modelValue:r.pypiUrl,"onUpdate:modelValue":e[3]||(e[3]=d=>r.pypiUrl=d),label:"Pypi URL","data-test":"pypi-url"},null,8,["modelValue"])]),_:1}),l(v,null,{default:o(()=>[l(p,{color:"success",variant:"text","data-test":"save-pypi-url",onClick:f.save},{default:o(()=>[...e[7]||(e[7]=[s(" Save ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})}const Ze=k(qe,[["render",Pe]]),ee="context_tag",je={mixins:[T],data(){return{text:"",displayContextTag:!1,selectedBackgroundColor:"#009fa3",customBackgroundColor:"",selectedFontColor:"white",customFontColor:"",customColorHint:"Enter a 3 or 6-digit hex color code",colors:[{text:"Teal",value:"#009fa3"},{text:"Purple",value:"#6058a8"},{text:"Pink",value:"#81009a"},{text:"Orange",value:"#af420a"},{text:"Black",value:"black"},{text:"White",value:"white"},{text:"Custom",value:!1}],rules:{customColor:t=>/^#(?:[0-9a-fA-F]{3}){1,2}$/.test(t)||this.customColorHint}}},computed:{saveObj:function(){return JSON.stringify({text:this.text,fontColor:this.selectedFontColor||this.customFontColor,backgroundColor:this.selectedBackgroundColor||this.customBackgroundColor})},formValid:function(){return(this.selectedFontColor||this.rules.customColor(this.customFontColor)===!0)&&(this.selectedBackgroundColor||this.rules.customColor(this.customBackgroundColor)===!0)}},watch:{displayContextTag:function(t){t?this.text||(this.text="REPLACEME"):this.text=null},customFontColor:function(t){t&&t.length&&!t.startsWith("#")&&(this.customFontColor=`#${t}`)},customBackgroundColor:function(t){t&&t.length&&!t.startsWith("#")&&(this.customBackgroundColor=`#${t}`)}},created(){this.loadSetting(ee)},methods:{save(){this.saveSetting(ee,this.saveObj)},parseSetting:function(t){if(t){const e=JSON.parse(t);this.text=e.text,this.displayContextTag=!!e.text,e.backgroundColor&&(this.colors.some(y=>y.value===e.backgroundColor)?this.selectedBackgroundColor=e.backgroundColor:(this.customBackgroundColor=e.backgroundColor,this.selectedBackgroundColor=!1)),e.fontColor&&(this.colors.some(y=>y.value===e.fontColor)?this.selectedFontColor=e.fontColor:(this.customFontColor=e.fontColor,this.selectedFontColor=!1))}}}};function Ie(t,e,y,U,r,f){const h=a("v-card-title"),i=a("v-card-subtitle"),u=a("v-alert"),m=a("v-text-field"),g=a("v-col"),p=a("v-row"),v=a("v-switch"),n=a("v-icon"),d=a("v-list-item"),_=a("v-select"),R=a("v-card-text"),H=a("v-btn"),D=a("v-card-actions"),M=a("v-card");return b(),V(M,null,{default:o(()=>[l(h,null,{default:o(()=>[...e[9]||(e[9]=[s("Context Tag Settings",-1)])]),_:1}),l(i,null,{default:o(()=>[...e[10]||(e[10]=[s(" When enabled this displays a Context Tag on the top right of the screen with custom colors and text. This can help differentiate environments. ",-1)])]),_:1}),l(u,{modelValue:t.errorLoading,"onUpdate:modelValue":e[0]||(e[0]=c=>t.errorLoading=c),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error loading previous configuration due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.errorSaving,"onUpdate:modelValue":e[1]||(e[1]=c=>t.errorSaving=c),type:"error",closable:"",density:"compact"},{default:o(()=>[s(" Error saving due to "+C(t.errorText),1)]),_:1},8,["modelValue"]),l(u,{modelValue:t.successSaving,"onUpdate:modelValue":e[2]||(e[2]=c=>t.successSaving=c),type:"success",closable:"",density:"compact"},{default:o(()=>[...e[11]||(e[11]=[s(" Saved! (Refresh the page to see changes) ",-1)])]),_:1},8,["modelValue"]),l(R,{class:"pb-0"},{default:o(()=>[l(p,{dense:""},{default:o(()=>[l(g,null,{default:o(()=>[l(m,{modelValue:r.text,"onUpdate:modelValue":e[3]||(e[3]=c=>r.text=c),label:"Text","data-test":"context-tag-text",disabled:!r.displayContextTag},null,8,["modelValue","disabled"])]),_:1})]),_:1}),l(p,{dense:""},{default:o(()=>[l(g,null,{default:o(()=>[l(v,{modelValue:r.displayContextTag,"onUpdate:modelValue":e[4]||(e[4]=c=>r.displayContextTag=c),label:"Display context tag",color:"primary","data-test":"display-context-tag"},null,8,["modelValue"])]),_:1}),l(g,null,{default:o(()=>[l(_,{modelValue:r.selectedBackgroundColor,"onUpdate:modelValue":e[5]||(e[5]=c=>r.selectedBackgroundColor=c),label:"Background color",items:r.colors,"item-title":"text","data-test":"context-tag-background-color"},W({item:o(({props:c,item:x})=>[l(d,A(c,{value:x.text}),{prepend:o(()=>[x.value?(b(),V(n,{key:0,color:x.value},{default:o(()=>[...e[13]||(e[13]=[s(" mdi-square ",-1)])]),_:1},8,["color"])):E("",!0)]),_:2},1040,["value"])]),_:2},[r.selectedBackgroundColor?{name:"prepend-inner",fn:o(()=>[l(n,{color:r.selectedBackgroundColor},{default:o(()=>[...e[12]||(e[12]=[s(" mdi-square ",-1)])]),_:1},8,["color"])]),key:"0"}:void 0]),1032,["modelValue","items"])]),_:1}),l(g,null,{default:o(()=>[l(m,{modelValue:r.customBackgroundColor,"onUpdate:modelValue":e[6]||(e[6]=c=>r.customBackgroundColor=c),label:"Custom background color",hint:r.customColorHint,disabled:r.selectedBackgroundColor!==!1,rules:[r.rules.customColor],"data-test":"context-tag-custom-background-color"},{"prepend-inner":o(()=>[F(l(n,{color:r.customBackgroundColor},{default:o(()=>[...e[14]||(e[14]=[s(" mdi-square ",-1)])]),_:1},8,["color"]),[[w,!r.selectedBackgroundColor]])]),_:1},8,["modelValue","hint","disabled","rules"])]),_:1}),l(g,null,{default:o(()=>[l(_,{modelValue:r.selectedFontColor,"onUpdate:modelValue":e[7]||(e[7]=c=>r.selectedFontColor=c),label:"Font color",items:r.colors,"item-title":"text","data-test":"context-tag-font-color"},W({item:o(({props:c,item:x})=>[l(d,A(c,{value:x.text}),{prepend:o(()=>[x.value?(b(),V(n,{key:0,color:x.value},{default:o(()=>[...e[16]||(e[16]=[s(" mdi-square ",-1)])]),_:1},8,["color"])):E("",!0)]),_:2},1040,["value"])]),_:2},[r.selectedFontColor?{name:"prepend-inner",fn:o(()=>[F(l(n,{color:r.selectedFontColor},{default:o(()=>[...e[15]||(e[15]=[s(" mdi-square ",-1)])]),_:1},8,["color"]),[[w,r.selectedFontColor]])]),key:"0"}:void 0]),1032,["modelValue","items"])]),_:1}),l(g,null,{default:o(()=>[l(m,{modelValue:r.customFontColor,"onUpdate:modelValue":e[8]||(e[8]=c=>r.customFontColor=c),label:"Custom font color",hint:r.customColorHint,disabled:r.selectedFontColor!==!1,rules:[r.rules.customColor],"data-test":"context-tag-custom-font-color"},{"prepend-inner":o(()=>[F(l(n,{color:r.customFontColor},{default:o(()=>[...e[17]||(e[17]=[s(" mdi-square ",-1)])]),_:1},8,["color"]),[[w,!r.selectedFontColor]])]),_:1},8,["modelValue","hint","disabled","rules"])]),_:1})]),_:1})]),_:1}),l(D,null,{default:o(()=>[l(H,{disabled:!f.formValid,color:"success",variant:"text","data-test":"save-context-tag",onClick:f.save},{default:o(()=>[...e[18]||(e[18]=[s(" Save ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})}const Ke=k(je,[["render",Ie]]),ze={components:{SuppressedSettings:ae,AiChatSettings:ne,DefaultConfigSettings:ue,EditorSettings:ge,AstroSettings:ve,ThemeSettings:Ce,ClassificationBannerSettings:ye,TimeZoneSettings:xe,TimeFormatSettings:Be,NewsFeedSettings:we,SubtitleSettings:We,SourceCodeSettings:He,RubyGemsSettings:Ne,PypiSettings:Ze,ContextTagSettings:Ke},data(){return{isEnterprise:!1}},created(){q.get("/openc3-api/info").then(({data:t})=>{this.isEnterprise=t.enterprise})}};function Je(t,e,y,U,r,f){const h=a("suppressed-settings"),i=a("v-divider"),u=a("default-config-settings"),m=a("editor-settings"),g=a("astro-settings"),p=a("theme-settings"),v=a("time-zone-settings"),n=a("time-format-settings"),d=a("news-feed-settings"),_=a("classification-banner-settings"),R=a("subtitle-settings"),H=a("source-code-settings"),D=a("ruby-gems-settings"),M=a("pypi-settings"),c=a("context-tag-settings"),x=a("ai-chat-settings");return b(),B("div",null,[l(h),l(i),l(u),l(i),l(m),l(i),l(g),l(i),l(p),l(i),l(v),l(i),l(n),l(i),l(d),l(i),l(_),l(i),l(R),l(i),l(H),l(i),l(D),l(i),l(M),l(i),l(c),r.isEnterprise?(b(),B(L,{key:0},[l(i),l(x)],64)):E("",!0)])}const Ge=te("default",k(ze,[["render",Je]]))})}}));
@@ -1 +1 @@
1
- System.register(["./VWidget-oMbywhLA-ae9ee9bde0636cb9c9e1.js","vue","./main-320f7a52ead0c027f3e7.js","./Widget-D_HaosJK-c49796f3af3288426d03.js","./LimitsColor-CBcpB-la-3bd861951380f642016e.js","vue-router","pinia","single-spa","vuetify"],(function(c,p){"use strict";var r,l,n,a,i,s;return{setters:[t=>{r=t.T},t=>{l=t.resolveComponent,n=t.openBlock,a=t.createBlock,i=t.normalizeStyle},t=>{s=t.f},null,null,null,null,null,null],execute:(function(){const t={mixins:[r],props:{value:{type:[Number,String],default:null}},emits:["open"],data:function(){return{item:null,oneBar:30,twoBar:60,threeBar:90}},computed:{displayedIcon:function(){let e="mdi-signal-cellular-outline";return this._value>=this.oneBar&&(e="mdi-signal-cellular-1"),this._value>=this.twoBar&&(e="mdi-signal-cellular-2"),this._value>=this.threeBar&&(e="mdi-signal-cellular-3"),e}},created(){this.appliedSettings.forEach(e=>{switch(e[0].toUpperCase()){case"SCREEN":this.screenTarget=e[1],this.screenName=e[2];break;case"VALUES":this.oneBar=Number.parseFloat(e[1]),this.twoBar=Number.parseFloat(e[2]),this.threeBar=Number.parseFloat(e[3]);break}})},methods:{getType(){let e="CONVERTED";return this.parameters[3]=="RAW"&&(e="RAW"),e},clickHandler(){this.screenTarget&&this.screenName&&this.$emit("open",this.screenTarget,this.screenName)}}};function u(e,d,g,B,v,o){const h=l("v-btn");return n(),a(h,{icon:o.displayedIcon,variant:"text",style:i(e.computedStyle),"aria-label":"Signal Strength",onClick:o.clickHandler},null,8,["icon","style","onClick"])}const m=c("default",s(t,[["render",u]]))})}}));
1
+ System.register(["./VWidget-5qOYva88-4db083a6475508bbf7ce.js","vue","./main-040488697a5f3eed5115.js","./Widget-CtYQauzA-ae8839a2e4146c799aec.js","./LimitsColor-CBcpB-la-3bd861951380f642016e.js","vue-router","pinia","single-spa","vuetify"],(function(c,p){"use strict";var r,l,n,a,i,s;return{setters:[t=>{r=t.T},t=>{l=t.resolveComponent,n=t.openBlock,a=t.createBlock,i=t.normalizeStyle},t=>{s=t.k},null,null,null,null,null,null],execute:(function(){const t={mixins:[r],props:{value:{type:[Number,String],default:null}},emits:["open"],data:function(){return{item:null,oneBar:30,twoBar:60,threeBar:90}},computed:{displayedIcon:function(){let e="mdi-signal-cellular-outline";return this._value>=this.oneBar&&(e="mdi-signal-cellular-1"),this._value>=this.twoBar&&(e="mdi-signal-cellular-2"),this._value>=this.threeBar&&(e="mdi-signal-cellular-3"),e}},created(){this.appliedSettings.forEach(e=>{switch(e[0].toUpperCase()){case"SCREEN":this.screenTarget=e[1],this.screenName=e[2];break;case"VALUES":this.oneBar=Number.parseFloat(e[1]),this.twoBar=Number.parseFloat(e[2]),this.threeBar=Number.parseFloat(e[3]);break}})},methods:{getType(){let e="CONVERTED";return this.parameters[3]=="RAW"&&(e="RAW"),e},clickHandler(){this.screenTarget&&this.screenName&&this.$emit("open",this.screenTarget,this.screenName)}}};function u(e,d,g,B,v,o){const h=l("v-btn");return n(),a(h,{icon:o.displayedIcon,variant:"text",style:i(e.computedStyle),"aria-label":"Signal Strength",onClick:o.clickHandler},null,8,["icon","style","onClick"])}const m=c("default",s(t,[["render",u]]))})}}));
@@ -1 +1 @@
1
- System.register(["vue","./main-320f7a52ead0c027f3e7.js"],(function(f,N){"use strict";var l,u,p,o,e,n,s,h,m;return{setters:[t=>{l=t.resolveComponent,u=t.openBlock,p=t.createBlock,o=t.withCtx,e=t.createVNode,n=t.createElementVNode,s=t.toDisplayString,h=t.createTextVNode},t=>{m=t.f}],execute:(function(){const t={props:{modelValue:Boolean,text:{type:String,default:null},title:{type:String,default:null},width:{type:Number,default:800}},emits:["update:modelValue"],computed:{show:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}}},methods:{download:function(){const i=new Blob([this.text],{type:"text/plain"}),a=document.createElement("a");a.href=URL.createObjectURL(i),a.setAttribute("download",`${this.title}.txt`),a.click()}}},x={class:"mx-2"},V={class:"pa-3"},g={class:"text"};function k(i,a,c,E,D,d){const r=l("v-spacer"),v=l("v-btn"),y=l("v-toolbar"),b=l("v-card-text"),C=l("v-card-actions"),_=l("v-card"),B=l("v-dialog");return u(),p(B,{modelValue:d.show,"onUpdate:modelValue":a[1]||(a[1]=w=>d.show=w),width:c.width,scrollable:""},{default:o(()=>[e(_,null,{default:o(()=>[e(y,{height:"24"},{default:o(()=>[e(r),n("span",null,s(c.title),1),e(r),n("div",x,[e(v,{icon:"mdi-download",variant:"text",density:"compact","data-test":"downloadIcon","aria-label":"Download Content",onClick:d.download},null,8,["onClick"])])]),_:1}),e(b,{style:{"max-height":"80vh"}},{default:o(()=>[n("div",V,[n("span",g,s(c.text),1)])]),_:1}),e(C,{class:"px-2"},{default:o(()=>[e(r),e(v,{variant:"flat",onClick:a[0]||(a[0]=w=>d.show=!d.show)},{default:o(()=>[...a[2]||(a[2]=[h(" Ok ",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue","width"])}const S=f("E",m(t,[["render",k],["__scopeId","data-v-1a0bca65"]]))})}}));
1
+ System.register(["vue","./main-040488697a5f3eed5115.js"],(function(x,N){"use strict";var l,u,p,o,e,n,s,h,m;return{setters:[t=>{l=t.resolveComponent,u=t.openBlock,p=t.createBlock,o=t.withCtx,e=t.createVNode,n=t.createElementVNode,s=t.toDisplayString,h=t.createTextVNode},t=>{m=t.k}],execute:(function(){const t={props:{modelValue:Boolean,text:{type:String,default:null},title:{type:String,default:null},width:{type:Number,default:800}},emits:["update:modelValue"],computed:{show:{get(){return this.modelValue},set(i){this.$emit("update:modelValue",i)}}},methods:{download:function(){const i=new Blob([this.text],{type:"text/plain"}),a=document.createElement("a");a.href=URL.createObjectURL(i),a.setAttribute("download",`${this.title}.txt`),a.click()}}},f={class:"mx-2"},V={class:"pa-3"},k={class:"text"};function g(i,a,c,E,D,d){const r=l("v-spacer"),v=l("v-btn"),y=l("v-toolbar"),b=l("v-card-text"),C=l("v-card-actions"),_=l("v-card"),B=l("v-dialog");return u(),p(B,{modelValue:d.show,"onUpdate:modelValue":a[1]||(a[1]=w=>d.show=w),width:c.width,scrollable:""},{default:o(()=>[e(_,null,{default:o(()=>[e(y,{height:"24"},{default:o(()=>[e(r),n("span",null,s(c.title),1),e(r),n("div",f,[e(v,{icon:"mdi-download",variant:"text",density:"compact","data-test":"downloadIcon","aria-label":"Download Content",onClick:d.download},null,8,["onClick"])])]),_:1}),e(b,{style:{"max-height":"80vh"}},{default:o(()=>[n("div",V,[n("span",k,s(c.text),1)])]),_:1}),e(C,{class:"px-2"},{default:o(()=>[e(r),e(v,{variant:"flat",onClick:a[0]||(a[0]=w=>d.show=!d.show)},{default:o(()=>[...a[2]||(a[2]=[h(" Ok ",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue","width"])}const S=x("E",m(t,[["render",g],["__scopeId","data-v-1a0bca65"]]))})}}));
@@ -0,0 +1 @@
1
+ System.register(["./Widget-CtYQauzA-ae8839a2e4146c799aec.js","vue","./main-040488697a5f3eed5115.js","vue-router","pinia","single-spa","vuetify"],(function(l,o){"use strict";var t,n,i,s,r;return{setters:[e=>{t=e.h},e=>{n=e.openBlock,i=e.createElementBlock,s=e.normalizeStyle},e=>{r=e.k},null,null,null,null],execute:(function(){const e={mixins:[t],created(){this.parameters[0]!==void 0&&this.appliedSettings.push(["WIDTH",this.parameters[0]]),this.parameters[1]!==void 0&&this.appliedSettings.push(["HEIGHT",this.parameters[1]])}};function a(u,p,m,d,h,f){return n(),i("div",{style:s(u.computedStyle)},null,4)}const c=l("default",r(e,[["render",a]]))})}}));
@@ -0,0 +1 @@
1
+ System.register(["./GraphWidget-Cs9mvqUu-f9a29adafa014c1e26e4.js","./main-040488697a5f3eed5115.js","vue","./Graph-BKw7xw1a-947d95e03148698e323f.js","single-spa","./Widget-CtYQauzA-ae8839a2e4146c799aec.js","vue-router","pinia","vuetify","./OpenC3TimePicker-B8Vu9GBz-c1433e91ea28dd0e883e.js"],(function(l,c){"use strict";var i,s,n,r,a,d,o;return{setters:[e=>{i=e.M},e=>{s=e.k},e=>{n=e.resolveComponent,r=e.openBlock,a=e.createBlock,d=e.normalizeStyle},e=>{o=e.Y},null,null,null,null,null,null],execute:(function(){const e={components:{Graph:o},mixins:[i],data:function(){return{secondsGraphed:300,pointsSaved:300,pointsGraphed:300,size:{height:30,width:130}}}};function p(t,g,m,v,f,k){const h=n("graph");return r(),a(h,{id:t.id,ref:"graph"+t.id,state:t.state,"selected-graph-id":t.id,"start-time":t.startTime,"seconds-graphed":t.secondsGraphed,"points-saved":t.pointsSaved,"points-graphed":t.pointsGraphed,"initial-items":t.items,height:t.size.height,width:t.size.width,style:d(t.computedStyle),sparkline:""},null,8,["id","state","selected-graph-id","start-time","seconds-graphed","points-saved","points-graphed","initial-items","height","width","style"])}const u=l("default",s(e,[["render",p]]))})}}));
@@ -1 +1 @@
1
- System.register(["./Layout-CKmC50QZ-a4e41facce8302b08009.js","vue","./main-320f7a52ead0c027f3e7.js","./Widget-D_HaosJK-c49796f3af3288426d03.js","vue-router","pinia","single-spa","vuetify"],(function(k,h){"use strict";var f,l,n,i,g,T,a,c,u,o,w,d,b,y,v,V;return{setters:[e=>{f=e.r},e=>{l=e.resolveComponent,n=e.openBlock,i=e.createElementBlock,g=e.createVNode,T=e.normalizeStyle,a=e.withCtx,c=e.Fragment,u=e.renderList,o=e.createBlock,w=e.createTextVNode,d=e.toDisplayString,b=e.createElementVNode,y=e.resolveDynamicComponent,v=e.mergeProps},e=>{V=e.f},null,null,null,null,null],execute:(function(){const e={mixins:[f],emits:["min-max-screen"],data:function(){return{curTab:null}},watch:{curTab:function(){this.$emit("min-max-screen")}}};function x(r,m,L,P,j,U){const _=l("v-tab"),C=l("v-tabs"),N=l("v-tooltip"),D=l("v-window-item"),S=l("v-window");return n(),i("div",null,[g(C,{modelValue:r.curTab,"onUpdate:modelValue":m[0]||(m[0]=s=>r.curTab=s),style:T(r.computedStyle)},{default:a(()=>[(n(!0),i(c,null,u(r.widgets,(s,p)=>(n(),o(_,{key:p},{default:a(()=>[w(d(s.parameters[0]),1)]),_:2},1024))),128))]),_:1},8,["modelValue","style"]),g(S,{modelValue:r.curTab,"onUpdate:modelValue":m[1]||(m[1]=s=>r.curTab=s)},{default:a(()=>[(n(!0),i(c,null,u(r.widgets,(s,p)=>(n(),o(D,{key:p},{default:a(()=>[(n(!0),i(c,null,u(s.widgets,(t,z)=>(n(),i(c,{key:`${p}-${z}`},[r.getTooltipText(t)?(n(),o(N,{key:0,"open-delay":r.getTooltipDelay(t),location:"top","activator-props":r.getTooltipActivatorProps(t)},{activator:a(({props:B})=>[(n(),o(y(t.type),v({ref_for:!0},{...r.listeners,...B},{target:t.target,parameters:t.parameters,settings:t.settings,"screen-values":r.screenValues,"screen-time-zone":r.screenTimeZone,widgets:t.widgets,name:t.name,line:t.line,"line-number":t.lineNumber}),null,16,["target","parameters","settings","screen-values","screen-time-zone","widgets","name","line","line-number"]))]),default:a(()=>[b("span",null,d(r.getTooltipText(t)),1)]),_:2},1032,["open-delay","activator-props"])):(n(),o(y(t.type),v({key:1,ref_for:!0},r.listeners,{target:t.target,parameters:t.parameters,settings:t.settings,"screen-values":r.screenValues,"screen-time-zone":r.screenTimeZone,widgets:t.widgets,name:t.name,line:t.line,"line-number":t.lineNumber}),null,16,["target","parameters","settings","screen-values","screen-time-zone","widgets","name","line","line-number"]))],64))),128))]),_:2},1024))),128))]),_:1},8,["modelValue"])])}const E=k("default",V(e,[["render",x]]))})}}));
1
+ System.register(["./Layout--_zNJWnw-a75e57affb59e71889ad.js","vue","./main-040488697a5f3eed5115.js","./Widget-CtYQauzA-ae8839a2e4146c799aec.js","vue-router","pinia","single-spa","vuetify"],(function(k,h){"use strict";var f,l,n,i,g,w,a,c,u,o,T,d,b,y,v,V;return{setters:[e=>{f=e.r},e=>{l=e.resolveComponent,n=e.openBlock,i=e.createElementBlock,g=e.createVNode,w=e.normalizeStyle,a=e.withCtx,c=e.Fragment,u=e.renderList,o=e.createBlock,T=e.createTextVNode,d=e.toDisplayString,b=e.createElementVNode,y=e.resolveDynamicComponent,v=e.mergeProps},e=>{V=e.k},null,null,null,null,null],execute:(function(){const e={mixins:[f],emits:["min-max-screen"],data:function(){return{curTab:null}},watch:{curTab:function(){this.$emit("min-max-screen")}}};function x(r,m,L,P,j,U){const N=l("v-tab"),_=l("v-tabs"),z=l("v-tooltip"),C=l("v-window-item"),S=l("v-window");return n(),i("div",null,[g(_,{modelValue:r.curTab,"onUpdate:modelValue":m[0]||(m[0]=s=>r.curTab=s),style:w(r.computedStyle)},{default:a(()=>[(n(!0),i(c,null,u(r.widgets,(s,p)=>(n(),o(N,{key:p},{default:a(()=>[T(d(s.parameters[0]),1)]),_:2},1024))),128))]),_:1},8,["modelValue","style"]),g(S,{modelValue:r.curTab,"onUpdate:modelValue":m[1]||(m[1]=s=>r.curTab=s)},{default:a(()=>[(n(!0),i(c,null,u(r.widgets,(s,p)=>(n(),o(C,{key:p},{default:a(()=>[(n(!0),i(c,null,u(s.widgets,(t,B)=>(n(),i(c,{key:`${p}-${B}`},[r.getTooltipText(t)?(n(),o(z,{key:0,"open-delay":r.getTooltipDelay(t),location:"top","activator-props":r.getTooltipActivatorProps(t)},{activator:a(({props:D})=>[(n(),o(y(t.type),v({ref_for:!0},{...r.listeners,...D},{target:t.target,parameters:t.parameters,settings:t.settings,"screen-values":r.screenValues,"screen-time-zone":r.screenTimeZone,widgets:t.widgets,name:t.name,line:t.line,"line-number":t.lineNumber}),null,16,["target","parameters","settings","screen-values","screen-time-zone","widgets","name","line","line-number"]))]),default:a(()=>[b("span",null,d(r.getTooltipText(t)),1)]),_:2},1032,["open-delay","activator-props"])):(n(),o(y(t.type),v({key:1,ref_for:!0},r.listeners,{target:t.target,parameters:t.parameters,settings:t.settings,"screen-values":r.screenValues,"screen-time-zone":r.screenTimeZone,widgets:t.widgets,name:t.name,line:t.line,"line-number":t.lineNumber}),null,16,["target","parameters","settings","screen-values","screen-time-zone","widgets","name","line","line-number"]))],64))),128))]),_:2},1024))),128))]),_:1},8,["modelValue"])])}const E=k("default",V(e,[["render",x]]))})}}));
@@ -1 +1 @@
1
- System.register(["./main-320f7a52ead0c027f3e7.js","vue","single-spa","./OutputDialog-DtrpwjGL-73ebd3c55e7ffbc15652.js","vue-router","pinia","vuetify"],(function(N,F){"use strict";var k,u,t,d,g,n,o,C,y,m,f,h,D,b,w,T;return{setters:[e=>{k=e.f,u=e.u},e=>{t=e.resolveComponent,d=e.openBlock,g=e.createElementBlock,n=e.createVNode,o=e.withCtx,C=e.Fragment,y=e.renderList,m=e.createTextVNode,f=e.toDisplayString,h=e.createBlock,D=e.createElementVNode,b=e.mergeProps,w=e.createCommentVNode},null,e=>{T=e.S},null,null,null],execute:(function(){const e={components:{OutputDialog:T},data(){return{targets:[],jsonContent:"",dialogTitle:"",showDialog:!1}},mounted(){this.update()},methods:{update(){u.get("/openc3-api/targets_modified").then(l=>{this.targets=l.data})},showTarget(l){u.get(`/openc3-api/targets/${l}`).then(a=>{this.jsonContent=JSON.stringify(a.data,null," "),this.dialogTitle=l,this.showDialog=!0})},dialogCallback(l){this.showDialog=!1},downloadTarget:function(l){u.post(`/openc3-api/targets/${l}/download`).then(a=>{const p=window.atob(a.data.contents),v=new Uint8Array(p.length);for(let c=0;c<p.length;++c)v[c]=p.charCodeAt(c);const i=new Blob([v],{type:"application/zip"}),s=document.createElement("a");s.href=URL.createObjectURL(i),s.setAttribute("download",a.data.filename),s.click()})}}};function x(l,a,p,v,i,s){const c=t("v-list-item-title"),B=t("v-list-item-subtitle"),V=t("v-btn"),S=t("v-tooltip"),j=t("v-list-item"),L=t("v-divider"),E=t("v-list"),O=t("output-dialog");return d(),g("div",null,[n(E,{class:"list","data-test":"targetList"},{default:o(()=>[(d(!0),g(C,null,y(i.targets,r=>(d(),g("div",{key:r},[n(j,null,{append:o(()=>[r.modified?(d(),h(S,{key:0,"open-delay":600,location:"top"},{activator:o(({props:_})=>[n(V,b({ref_for:!0},_,{class:"mx-3",icon:"mdi-folder-download",variant:"text","aria-label":"Download Modified Files",onClick:A=>s.downloadTarget(r.name)}),null,16,["onClick"])]),default:o(()=>[a[1]||(a[1]=D("span",null,"Download Modified Files",-1))]),_:2},1024)):w("",!0),n(V,{icon:"mdi-eye",variant:"text","aria-label":"View Target",onClick:_=>s.showTarget(r.name)},null,8,["onClick"])]),default:o(()=>[n(c,null,{default:o(()=>[m(f(r.name),1)]),_:2},1024),n(B,null,{default:o(()=>[m(" Plugin: "+f(r.plugin),1)]),_:2},1024)]),_:2},1024),n(L)]))),128))]),_:1}),i.showDialog?(d(),h(O,{key:0,modelValue:i.showDialog,"onUpdate:modelValue":a[0]||(a[0]=r=>i.showDialog=r),content:i.jsonContent,type:"Target",name:i.dialogTitle,onSubmit:s.dialogCallback},null,8,["modelValue","content","name","onSubmit"])):w("",!0)])}const U=N("default",k(e,[["render",x],["__scopeId","data-v-85600496"]]))})}}));
1
+ System.register(["./main-040488697a5f3eed5115.js","vue","single-spa","./OutputDialog-B0DR879Y-1fe936426c84cb442ac4.js","vue-router","pinia","vuetify"],(function(N,F){"use strict";var k,u,t,d,g,n,o,C,D,m,f,h,y,b,w,T;return{setters:[e=>{k=e.k,u=e.D},e=>{t=e.resolveComponent,d=e.openBlock,g=e.createElementBlock,n=e.createVNode,o=e.withCtx,C=e.Fragment,D=e.renderList,m=e.createTextVNode,f=e.toDisplayString,h=e.createBlock,y=e.createElementVNode,b=e.mergeProps,w=e.createCommentVNode},null,e=>{T=e.S},null,null,null],execute:(function(){const e={components:{OutputDialog:T},data(){return{targets:[],jsonContent:"",dialogTitle:"",showDialog:!1}},mounted(){this.update()},methods:{update(){u.get("/openc3-api/targets_modified").then(l=>{this.targets=l.data})},showTarget(l){u.get(`/openc3-api/targets/${l}`).then(a=>{this.jsonContent=JSON.stringify(a.data,null," "),this.dialogTitle=l,this.showDialog=!0})},dialogCallback(l){this.showDialog=!1},downloadTarget:function(l){u.post(`/openc3-api/targets/${l}/download`).then(a=>{const p=window.atob(a.data.contents),v=new Uint8Array(p.length);for(let c=0;c<p.length;++c)v[c]=p.charCodeAt(c);const i=new Blob([v],{type:"application/zip"}),s=document.createElement("a");s.href=URL.createObjectURL(i),s.setAttribute("download",a.data.filename),s.click()})}}};function S(l,a,p,v,i,s){const c=t("v-list-item-title"),x=t("v-list-item-subtitle"),V=t("v-btn"),B=t("v-tooltip"),j=t("v-list-item"),L=t("v-divider"),E=t("v-list"),O=t("output-dialog");return d(),g("div",null,[n(E,{class:"list","data-test":"targetList"},{default:o(()=>[(d(!0),g(C,null,D(i.targets,r=>(d(),g("div",{key:r},[n(j,null,{append:o(()=>[r.modified?(d(),h(B,{key:0,"open-delay":600,location:"top"},{activator:o(({props:_})=>[n(V,b({ref_for:!0},_,{class:"mx-3",icon:"mdi-folder-download",variant:"text","aria-label":"Download Modified Files",onClick:A=>s.downloadTarget(r.name)}),null,16,["onClick"])]),default:o(()=>[a[1]||(a[1]=y("span",null,"Download Modified Files",-1))]),_:2},1024)):w("",!0),n(V,{icon:"mdi-eye",variant:"text","aria-label":"View Target",onClick:_=>s.showTarget(r.name)},null,8,["onClick"])]),default:o(()=>[n(c,null,{default:o(()=>[m(f(r.name),1)]),_:2},1024),n(x,null,{default:o(()=>[m(" Plugin: "+f(r.plugin),1)]),_:2},1024)]),_:2},1024),n(L)]))),128))]),_:1}),i.showDialog?(d(),h(O,{key:0,modelValue:i.showDialog,"onUpdate:modelValue":a[0]||(a[0]=r=>i.showDialog=r),content:i.jsonContent,type:"Target",name:i.dialogTitle,onSubmit:s.dialogCallback},null,8,["modelValue","content","name","onSubmit"])):w("",!0)])}const U=N("default",k(e,[["render",S],["__scopeId","data-v-85600496"]]))})}}));
@@ -0,0 +1 @@
1
+ System.register(["./main-040488697a5f3eed5115.js","vue","./DetailsDialog-DE7lK17G-434a9ce6dcc8e6636a47.js","single-spa","./VWidget-5qOYva88-4db083a6475508bbf7ce.js","vue-router","pinia","vuetify","./LimitsBar-DN1s8-MS-5fcc0dd234e18f768e31.js","./LimitsColor-CBcpB-la-3bd861951380f642016e.js","./Widget-CtYQauzA-ae8839a2e4146c799aec.js"],(function(w,_){"use strict";var c,a,s,o,n,u,d,l,m,h,p,g,v,x,C,f;return{setters:[e=>{c=e.k},e=>{a=e.resolveComponent,s=e.openBlock,o=e.createElementBlock,n=e.createVNode,u=e.normalizeStyle,d=e.normalizeClass,l=e.withCtx,m=e.Fragment,h=e.renderList,p=e.createBlock,g=e.withModifiers,v=e.createTextVNode,x=e.toDisplayString},e=>{C=e.Z},null,e=>{f=e.T},null,null,null,null,null,null],execute:(function(){const e={components:{DetailsDialog:C},mixins:[f],data:function(){return{width:200,height:200}},computed:{aging(){return{"--aging":this.grayLevel}}},created:function(){this.width=this.setWidth(this.parameters[3],"px",this.width),this.height=this.setHeight(this.parameters[4],"px",this.height)},methods:{getType:function(){let t="CONVERTED";return this.parameters[5]&&(t=this.parameters[5]),t}}},y={class:"textbox-widget-container"};function k(t,r,E,L,O,V){const D=a("v-textarea"),B=a("v-list-item-title"),S=a("v-list-item"),T=a("v-list"),z=a("v-menu"),M=a("details-dialog");return s(),o("div",y,[n(D,{variant:"solo",density:"compact",readonly:"","no-resize":"","auto-grow":"",rows:"2","hide-details":"","model-value":t._value,class:d(t.valueClass),style:u([t.computedStyle,V.aging]),"data-test":"valueText",onContextmenu:t.showContextMenu},null,8,["model-value","class","style","onContextmenu"]),n(z,{modelValue:t.contextMenuShown,"onUpdate:modelValue":r[0]||(r[0]=i=>t.contextMenuShown=i),target:[t.x,t.y]},{default:l(()=>[n(T,null,{default:l(()=>[(s(!0),o(m,null,h(t.contextMenuOptions,(i,N)=>(s(),p(S,{key:N,onClick:g(i.action,["stop"])},{default:l(()=>[n(B,null,{default:l(()=>[v(x(i.title),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1},8,["modelValue","target"]),n(M,{modelValue:t.viewDetails,"onUpdate:modelValue":r[1]||(r[1]=i=>t.viewDetails=i),"target-name":t.parameters[0],"packet-name":t.parameters[1],"item-name":t.parameters[2]},null,8,["modelValue","target-name","packet-name","item-name"])])}const j=w("default",c(e,[["render",k],["__scopeId","data-v-ce1e6683"]]))})}}));
@@ -1 +1 @@
1
- System.register(["./Widget-D_HaosJK-c49796f3af3288426d03.js","vue","./main-320f7a52ead0c027f3e7.js","vue-router","pinia","single-spa","vuetify"],(function(u,p){"use strict";var t,l,n,a,s,r;return{setters:[e=>{t=e.h},e=>{l=e.resolveComponent,n=e.openBlock,a=e.createBlock,s=e.normalizeStyle},e=>{r=e.f},null,null,null,null],execute:(function(){const e={mixins:[t],data(){return{value:null}},created(){this.setWidth(this.parameters[0],"ch",12),this.parameters[1]&&(this.value=this.parameters[1])},methods:{text(){return this.value}}};function c(d,i,f,y,o,g){const h=l("v-text-field");return n(),a(h,{modelValue:o.value,"onUpdate:modelValue":i[0]||(i[0]=m=>o.value=m),variant:"solo",density:"compact","single-line":"","hide-no-data":"","hide-details":"",style:s(d.computedStyle)},null,8,["modelValue","style"])}const v=u("default",r(e,[["render",c]]))})}}));
1
+ System.register(["./Widget-CtYQauzA-ae8839a2e4146c799aec.js","vue","./main-040488697a5f3eed5115.js","vue-router","pinia","single-spa","vuetify"],(function(u,p){"use strict";var t,l,n,a,s,r;return{setters:[e=>{t=e.h},e=>{l=e.resolveComponent,n=e.openBlock,a=e.createBlock,s=e.normalizeStyle},e=>{r=e.k},null,null,null,null],execute:(function(){const e={mixins:[t],data(){return{value:null}},created(){this.setWidth(this.parameters[0],"ch",12),this.parameters[1]&&(this.value=this.parameters[1])},methods:{text(){return this.value}}};function c(d,i,y,f,o,k){const h=l("v-text-field");return n(),a(h,{modelValue:o.value,"onUpdate:modelValue":i[0]||(i[0]=m=>o.value=m),variant:"solo",density:"compact","single-line":"","hide-no-data":"","hide-details":"",style:s(d.computedStyle)},null,8,["modelValue","style"])}const v=u("default",r(e,[["render",c]]))})}}));
@@ -0,0 +1 @@
1
+ System.register(["./Widget-CtYQauzA-ae8839a2e4146c799aec.js","./OpenC3TimePicker-B8Vu9GBz-c1433e91ea28dd0e883e.js","./main-040488697a5f3eed5115.js","vue","vue-router","pinia","single-spa","vuetify"],(function(c,k){"use strict";var l,i,n,a,r,s,u,o;return{setters:[e=>{l=e.h},e=>{i=e.w},e=>{n=e.k,a=e.R},e=>{r=e.resolveComponent,s=e.openBlock,u=e.createBlock,o=e.normalizeStyle},null,null,null,null],execute:(function(){const e={components:{OpenC3TimePicker:i},mixins:[l,a],data(){return{label:"Time",timeValue:""}},created(){this.parameters[0]&&(this.label=this.parameters[0]),this.timeValue=this.formatTimeHMS(new Date,this.screenTimeZone)},methods:{text(){return this.timeValue},time(){return this.timeValue}}};function p(h,m,y,T,t,v){const d=r("OpenC3TimePicker");return s(),u(d,{modelValue:t.timeValue,"onUpdate:modelValue":m[0]||(m[0]=V=>t.timeValue=V),label:t.label,style:o(h.computedStyle),"hide-details":""},null,8,["modelValue","label","style"])}const f=c("default",n(e,[["render",p]]))})}}));
@@ -1 +1 @@
1
- System.register(["./Widget-D_HaosJK-c49796f3af3288426d03.js","vue","./main-320f7a52ead0c027f3e7.js","vue-router","pinia","single-spa","vuetify"],(function(s,p){"use strict";var t,r,n,l,a,i;return{setters:[e=>{t=e.h},e=>{r=e.openBlock,n=e.createElementBlock,l=e.normalizeStyle,a=e.toDisplayString},e=>{i=e.f},null,null,null,null],execute:(function(){const e={mixins:[t],computed:{labelText(){return this.parameters[0]}},created(){if(this.parameters.length<1)throw new Error("Not enough parameters for TITLE.")}};function o(c,f,h,y,d,u){return r(),n("div",{class:"text-h5 text-center pa-1 mt-1 label",style:l(c.computedStyle)},a(u.labelText),5)}const m=s("default",i(e,[["render",o]]))})}}));
1
+ System.register(["./Widget-CtYQauzA-ae8839a2e4146c799aec.js","vue","./main-040488697a5f3eed5115.js","vue-router","pinia","single-spa","vuetify"],(function(s,p){"use strict";var t,r,n,l,a,i;return{setters:[e=>{t=e.h},e=>{r=e.openBlock,n=e.createElementBlock,l=e.normalizeStyle,a=e.toDisplayString},e=>{i=e.k},null,null,null,null],execute:(function(){const e={mixins:[t],computed:{labelText(){return this.parameters[0]}},created(){if(this.parameters.length<1)throw new Error("Not enough parameters for TITLE.")}};function o(c,f,h,y,d,u){return r(),n("div",{class:"text-h5 text-center pa-1 mt-1 label",style:l(c.computedStyle)},a(u.labelText),5)}const m=s("default",i(e,[["render",o]]))})}}));
@@ -1 +1 @@
1
- System.register(["./main-320f7a52ead0c027f3e7.js","vue","single-spa","./OutputDialog-DtrpwjGL-73ebd3c55e7ffbc15652.js","vue-router","pinia","vuetify"],(function(ze,To){"use strict";var ve,rt,V,ht,Pt,M,R,kt,Kt,be,ye,we,De,Gt,qt,Ee;return{setters:[C=>{ve=C.f,rt=C.u},C=>{V=C.resolveComponent,ht=C.openBlock,Pt=C.createElementBlock,M=C.createVNode,R=C.withCtx,kt=C.createTextVNode,Kt=C.toDisplayString,be=C.createElementVNode,ye=C.Fragment,we=C.renderList,De=C.normalizeClass,Gt=C.createBlock,qt=C.createCommentVNode},null,C=>{Ee=C.S},null,null,null],execute:(function(){function C(t,o,e){return(o=Ge(o))in t?Object.defineProperty(t,o,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[o]=e,t}function Z(){return Z=Object.assign?Object.assign.bind():function(t){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var n in e)({}).hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t},Z.apply(null,arguments)}function Se(t,o){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);o&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable})),e.push.apply(e,n)}return e}function U(t){for(var o=1;o<arguments.length;o++){var e=arguments[o]!=null?arguments[o]:{};o%2?Se(Object(e),!0).forEach(function(n){C(t,n,e[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):Se(Object(e)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))})}return t}function Je(t,o){if(t==null)return{};var e,n,r=Ze(t,o);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n<i.length;n++)e=i[n],o.indexOf(e)===-1&&{}.propertyIsEnumerable.call(t,e)&&(r[e]=t[e])}return r}function Ze(t,o){if(t==null)return{};var e={};for(var n in t)if({}.hasOwnProperty.call(t,n)){if(o.indexOf(n)!==-1)continue;e[n]=t[n]}return e}function Ke(t,o){if(typeof t!="object"||!t)return t;var e=t[Symbol.toPrimitive];if(e!==void 0){var n=e.call(t,o);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(t)}function Ge(t){var o=Ke(t,"string");return typeof o=="symbol"?o:o+""}function Qt(t){"@babel/helpers - typeof";return Qt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},Qt(t)}var qe="1.15.7";function K(t){if(typeof window<"u"&&window.navigator)return!!navigator.userAgent.match(t)}var G=K(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),Dt=K(/Edge/i),_e=K(/firefox/i),Et=K(/safari/i)&&!K(/chrome/i)&&!K(/android/i),te=K(/iP(ad|od|hone)/i),Te=K(/chrome/i)&&K(/android/i),Ce={capture:!1,passive:!1};function b(t,o,e){t.addEventListener(o,e,!G&&Ce)}function v(t,o,e){t.removeEventListener(o,e,!G&&Ce)}function Bt(t,o){if(o){if(o[0]===">"&&(o=o.substring(1)),t)try{if(t.matches)return t.matches(o);if(t.msMatchesSelector)return t.msMatchesSelector(o);if(t.webkitMatchesSelector)return t.webkitMatchesSelector(o)}catch{return!1}return!1}}function xe(t){return t.host&&t!==document&&t.host.nodeType&&t.host!==t?t.host:t.parentNode}function H(t,o,e,n){if(t){e=e||document;do{if(o!=null&&(o[0]===">"?t.parentNode===e&&Bt(t,o):Bt(t,o))||n&&t===e)return t;if(t===e)break}while(t=xe(t))}return null}var Ne=/\s+/g;function Y(t,o,e){if(t&&o)if(t.classList)t.classList[e?"add":"remove"](o);else{var n=(" "+t.className+" ").replace(Ne," ").replace(" "+o+" "," ");t.className=(n+(e?" "+o:"")).replace(Ne," ")}}function f(t,o,e){var n=t&&t.style;if(n){if(e===void 0)return document.defaultView&&document.defaultView.getComputedStyle?e=document.defaultView.getComputedStyle(t,""):t.currentStyle&&(e=t.currentStyle),o===void 0?e:e[o];!(o in n)&&o.indexOf("webkit")===-1&&(o="-webkit-"+o),n[o]=e+(typeof e=="string"?"":"px")}}function ft(t,o){var e="";if(typeof t=="string")e=t;else do{var n=f(t,"transform");n&&n!=="none"&&(e=n+" "+e)}while(!o&&(t=t.parentNode));var r=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return r&&new r(e)}function Oe(t,o,e){if(t){var n=t.getElementsByTagName(o),r=0,i=n.length;if(e)for(;r<i;r++)e(n[r],r);return n}return[]}function z(){var t=document.scrollingElement;return t||document.documentElement}function x(t,o,e,n,r){if(!(!t.getBoundingClientRect&&t!==window)){var i,a,s,l,c,d,h;if(t!==window&&t.parentNode&&t!==z()?(i=t.getBoundingClientRect(),a=i.top,s=i.left,l=i.bottom,c=i.right,d=i.height,h=i.width):(a=0,s=0,l=window.innerHeight,c=window.innerWidth,d=window.innerHeight,h=window.innerWidth),(o||e)&&t!==window&&(r=r||t.parentNode,!G))do if(r&&r.getBoundingClientRect&&(f(r,"transform")!=="none"||e&&f(r,"position")!=="static")){var w=r.getBoundingClientRect();a-=w.top+parseInt(f(r,"border-top-width")),s-=w.left+parseInt(f(r,"border-left-width")),l=a+i.height,c=s+i.width;break}while(r=r.parentNode);if(n&&t!==window){var m=ft(r||t),T=m&&m.a,y=m&&m.d;m&&(a/=y,s/=T,h/=T,d/=y,l=a+d,c=s+h)}return{top:a,left:s,bottom:l,right:c,width:h,height:d}}}function Ae(t,o,e){for(var n=Q(t,!0),r=x(t)[o];n;){var i=x(n)[e],a=void 0;if(a=r>=i,!a)return n;if(n===z())break;n=Q(n,!1)}return!1}function pt(t,o,e,n){for(var r=0,i=0,a=t.children;i<a.length;){if(a[i].style.display!=="none"&&a[i]!==p.ghost&&(n||a[i]!==p.dragged)&&H(a[i],e.draggable,t,!1)){if(r===o)return a[i];r++}i++}return null}function ee(t,o){for(var e=t.lastElementChild;e&&(e===p.ghost||f(e,"display")==="none"||o&&!Bt(e,o));)e=e.previousElementSibling;return e||null}function L(t,o){var e=0;if(!t||!t.parentNode)return-1;for(;t=t.previousElementSibling;)t.nodeName.toUpperCase()!=="TEMPLATE"&&t!==p.clone&&(!o||Bt(t,o))&&e++;return e}function Me(t){var o=0,e=0,n=z();if(t)do{var r=ft(t),i=r.a,a=r.d;o+=t.scrollLeft*i,e+=t.scrollTop*a}while(t!==n&&(t=t.parentNode));return[o,e]}function Qe(t,o){for(var e in t)if(t.hasOwnProperty(e)){for(var n in o)if(o.hasOwnProperty(n)&&o[n]===t[e][n])return Number(e)}return-1}function Q(t,o){if(!t||!t.getBoundingClientRect)return z();var e=t,n=!1;do if(e.clientWidth<e.scrollWidth||e.clientHeight<e.scrollHeight){var r=f(e);if(e.clientWidth<e.scrollWidth&&(r.overflowX=="auto"||r.overflowX=="scroll")||e.clientHeight<e.scrollHeight&&(r.overflowY=="auto"||r.overflowY=="scroll")){if(!e.getBoundingClientRect||e===document.body)return z();if(n||o)return e;n=!0}}while(e=e.parentNode);return z()}function to(t,o){if(t&&o)for(var e in o)o.hasOwnProperty(e)&&(t[e]=o[e]);return t}function oe(t,o){return Math.round(t.top)===Math.round(o.top)&&Math.round(t.left)===Math.round(o.left)&&Math.round(t.height)===Math.round(o.height)&&Math.round(t.width)===Math.round(o.width)}var St;function Ie(t,o){return function(){if(!St){var e=arguments,n=this;e.length===1?t.call(n,e[0]):t.apply(n,e),St=setTimeout(function(){St=void 0},o)}}}function eo(){clearTimeout(St),St=void 0}function Pe(t,o,e){t.scrollLeft+=o,t.scrollTop+=e}function ke(t){var o=window.Polymer,e=window.jQuery||window.Zepto;return o&&o.dom?o.dom(t).cloneNode(!0):e?e(t).clone(!0)[0]:t.cloneNode(!0)}function Be(t,o,e){var n={};return Array.from(t.children).forEach(function(r){var i,a,s,l;if(!(!H(r,o.draggable,t,!1)||r.animated||r===e)){var c=x(r);n.left=Math.min((i=n.left)!==null&&i!==void 0?i:1/0,c.left),n.top=Math.min((a=n.top)!==null&&a!==void 0?a:1/0,c.top),n.right=Math.max((s=n.right)!==null&&s!==void 0?s:-1/0,c.right),n.bottom=Math.max((l=n.bottom)!==null&&l!==void 0?l:-1/0,c.bottom)}}),n.width=n.right-n.left,n.height=n.bottom-n.top,n.x=n.left,n.y=n.top,n}var B="Sortable"+new Date().getTime();function oo(){var t=[],o;return{captureAnimationState:function(){if(t=[],!!this.options.animation){var e=[].slice.call(this.el.children);e.forEach(function(n){if(!(f(n,"display")==="none"||n===p.ghost)){t.push({target:n,rect:x(n)});var r=U({},t[t.length-1].rect);if(n.thisAnimationDuration){var i=ft(n,!0);i&&(r.top-=i.f,r.left-=i.e)}n.fromRect=r}})}},addAnimationState:function(e){t.push(e)},removeAnimationState:function(e){t.splice(Qe(t,{target:e}),1)},animateAll:function(e){var n=this;if(!this.options.animation){clearTimeout(o),typeof e=="function"&&e();return}var r=!1,i=0;t.forEach(function(a){var s=0,l=a.target,c=l.fromRect,d=x(l),h=l.prevFromRect,w=l.prevToRect,m=a.rect,T=ft(l,!0);T&&(d.top-=T.f,d.left-=T.e),l.toRect=d,l.thisAnimationDuration&&oe(h,d)&&!oe(c,d)&&(m.top-d.top)/(m.left-d.left)===(c.top-d.top)/(c.left-d.left)&&(s=ro(m,h,w,n.options)),oe(d,c)||(l.prevFromRect=c,l.prevToRect=d,s||(s=n.options.animation),n.animate(l,m,d,s)),s&&(r=!0,i=Math.max(i,s),clearTimeout(l.animationResetTimer),l.animationResetTimer=setTimeout(function(){l.animationTime=0,l.prevFromRect=null,l.fromRect=null,l.prevToRect=null,l.thisAnimationDuration=null},s),l.thisAnimationDuration=s)}),clearTimeout(o),r?o=setTimeout(function(){typeof e=="function"&&e()},i):typeof e=="function"&&e(),t=[]},animate:function(e,n,r,i){if(i){f(e,"transition",""),f(e,"transform","");var a=ft(this.el),s=a&&a.a,l=a&&a.d,c=(n.left-r.left)/(s||1),d=(n.top-r.top)/(l||1);e.animatingX=!!c,e.animatingY=!!d,f(e,"transform","translate3d("+c+"px,"+d+"px,0)"),this.forRepaintDummy=no(e),f(e,"transition","transform "+i+"ms"+(this.options.easing?" "+this.options.easing:"")),f(e,"transform","translate3d(0,0,0)"),typeof e.animated=="number"&&clearTimeout(e.animated),e.animated=setTimeout(function(){f(e,"transition",""),f(e,"transform",""),e.animated=!1,e.animatingX=!1,e.animatingY=!1},i)}}}}function no(t){return t.offsetWidth}function ro(t,o,e,n){return Math.sqrt(Math.pow(o.top-t.top,2)+Math.pow(o.left-t.left,2))/Math.sqrt(Math.pow(o.top-e.top,2)+Math.pow(o.left-e.left,2))*n.animation}var gt=[],ne={initializeByDefault:!0},_t={mount:function(t){for(var o in ne)ne.hasOwnProperty(o)&&!(o in t)&&(t[o]=ne[o]);gt.forEach(function(e){if(e.pluginName===t.pluginName)throw"Sortable: Cannot mount plugin ".concat(t.pluginName," more than once")}),gt.push(t)},pluginEvent:function(t,o,e){var n=this;this.eventCanceled=!1,e.cancel=function(){n.eventCanceled=!0};var r=t+"Global";gt.forEach(function(i){o[i.pluginName]&&(o[i.pluginName][r]&&o[i.pluginName][r](U({sortable:o},e)),o.options[i.pluginName]&&o[i.pluginName][t]&&o[i.pluginName][t](U({sortable:o},e)))})},initializePlugins:function(t,o,e,n){gt.forEach(function(a){var s=a.pluginName;if(!(!t.options[s]&&!a.initializeByDefault)){var l=new a(t,o,t.options);l.sortable=t,l.options=t.options,t[s]=l,Z(e,l.defaults)}});for(var r in t.options)if(t.options.hasOwnProperty(r)){var i=this.modifyOption(t,r,t.options[r]);typeof i<"u"&&(t.options[r]=i)}},getEventProperties:function(t,o){var e={};return gt.forEach(function(n){typeof n.eventProperties=="function"&&Z(e,n.eventProperties.call(o[n.pluginName],t))}),e},modifyOption:function(t,o,e){var n;return gt.forEach(function(r){t[r.pluginName]&&r.optionListeners&&typeof r.optionListeners[o]=="function"&&(n=r.optionListeners[o].call(t[r.pluginName],e))}),n}};function io(t){var o=t.sortable,e=t.rootEl,n=t.name,r=t.targetEl,i=t.cloneEl,a=t.toEl,s=t.fromEl,l=t.oldIndex,c=t.newIndex,d=t.oldDraggableIndex,h=t.newDraggableIndex,w=t.originalEvent,m=t.putSortable,T=t.extraEventProperties;if(o=o||e&&e[B],!!o){var y,D=o.options,O="on"+n.charAt(0).toUpperCase()+n.substr(1);window.CustomEvent&&!G&&!Dt?y=new CustomEvent(n,{bubbles:!0,cancelable:!0}):(y=document.createEvent("Event"),y.initEvent(n,!0,!0)),y.to=a||e,y.from=s||e,y.item=r||e,y.clone=i,y.oldIndex=l,y.newIndex=c,y.oldDraggableIndex=d,y.newDraggableIndex=h,y.originalEvent=w,y.pullMode=m?m.lastPutMode:void 0;var $=U(U({},T),_t.getEventProperties(n,o));for(var P in $)y[P]=$[P];e&&e.dispatchEvent(y),D[O]&&D[O].call(o,y)}}var ao=["evt"],X=function(t,o){var e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=e.evt,r=Je(e,ao);_t.pluginEvent.bind(p)(t,o,U({dragEl:u,parentEl:_,ghostEl:g,rootEl:E,nextEl:it,lastDownEl:Xt,cloneEl:S,cloneHidden:tt,dragStarted:Ct,putSortable:A,activeSortable:p.active,originalEvent:n,oldIndex:mt,oldDraggableIndex:Tt,newIndex:F,newDraggableIndex:et,hideGhostForTarget:Ve,unhideGhostForTarget:He,cloneNowHidden:function(){tt=!0},cloneNowShown:function(){tt=!1},dispatchSortableEvent:function(i){k({sortable:o,name:i,originalEvent:n})}},r))};function k(t){io(U({putSortable:A,cloneEl:S,targetEl:u,rootEl:E,oldIndex:mt,oldDraggableIndex:Tt,newIndex:F,newDraggableIndex:et},t))}var u,_,g,E,it,Xt,S,tt,mt,F,Tt,et,Yt,A,vt=!1,Ft=!1,jt=[],at,W,re,ie,Xe,Ye,Ct,bt,xt,Nt=!1,Rt=!1,Lt,I,ae=[],le=!1,Vt=[],Ht=typeof document<"u",Wt=te,Fe=Dt||G?"cssFloat":"float",lo=Ht&&!Te&&!te&&"draggable"in document.createElement("div"),je=(function(){if(Ht){if(G)return!1;var t=document.createElement("x");return t.style.cssText="pointer-events:auto",t.style.pointerEvents==="auto"}})(),Re=function(t,o){var e=f(t),n=parseInt(e.width)-parseInt(e.paddingLeft)-parseInt(e.paddingRight)-parseInt(e.borderLeftWidth)-parseInt(e.borderRightWidth),r=pt(t,0,o),i=pt(t,1,o),a=r&&f(r),s=i&&f(i),l=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+x(r).width,c=s&&parseInt(s.marginLeft)+parseInt(s.marginRight)+x(i).width;if(e.display==="flex")return e.flexDirection==="column"||e.flexDirection==="column-reverse"?"vertical":"horizontal";if(e.display==="grid")return e.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(r&&a.float&&a.float!=="none"){var d=a.float==="left"?"left":"right";return i&&(s.clear==="both"||s.clear===d)?"vertical":"horizontal"}return r&&(a.display==="block"||a.display==="flex"||a.display==="table"||a.display==="grid"||l>=n&&e[Fe]==="none"||i&&e[Fe]==="none"&&l+c>n)?"vertical":"horizontal"},so=function(t,o,e){var n=e?t.left:t.top,r=e?t.right:t.bottom,i=e?t.width:t.height,a=e?o.left:o.top,s=e?o.right:o.bottom,l=e?o.width:o.height;return n===a||r===s||n+i/2===a+l/2},uo=function(t,o){var e;return jt.some(function(n){var r=n[B].options.emptyInsertThreshold;if(!(!r||ee(n))){var i=x(n),a=t>=i.left-r&&t<=i.right+r,s=o>=i.top-r&&o<=i.bottom+r;if(a&&s)return e=n}}),e},Le=function(t){function o(r,i){return function(a,s,l,c){var d=a.options.group.name&&s.options.group.name&&a.options.group.name===s.options.group.name;if(r==null&&(i||d))return!0;if(r==null||r===!1)return!1;if(i&&r==="clone")return r;if(typeof r=="function")return o(r(a,s,l,c),i)(a,s,l,c);var h=(i?a:s).options.group.name;return r===!0||typeof r=="string"&&r===h||r.join&&r.indexOf(h)>-1}}var e={},n=t.group;(!n||Qt(n)!="object")&&(n={name:n}),e.name=n.name,e.checkPull=o(n.pull,!0),e.checkPut=o(n.put),e.revertClone=n.revertClone,t.group=e},Ve=function(){!je&&g&&f(g,"display","none")},He=function(){!je&&g&&f(g,"display","")};Ht&&!Te&&document.addEventListener("click",function(t){if(Ft)return t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.stopImmediatePropagation&&t.stopImmediatePropagation(),Ft=!1,!1},!0);var lt=function(t){if(u){t=t.touches?t.touches[0]:t;var o=uo(t.clientX,t.clientY);if(o){var e={};for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);e.target=e.rootEl=o,e.preventDefault=void 0,e.stopPropagation=void 0,o[B]._onDragOver(e)}}},co=function(t){u&&u.parentNode[B]._isOutsideThisEl(t.target)};function p(t,o){if(!(t&&t.nodeType&&t.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(t));this.el=t,this.options=o=Z({},o),t[B]=this;var e={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(t.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Re(t,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(i,a){i.setData("Text",a.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:p.supportPointer!==!1&&"PointerEvent"in window&&(!Et||te),emptyInsertThreshold:5};_t.initializePlugins(this,t,e);for(var n in e)!(n in o)&&(o[n]=e[n]);Le(o);for(var r in this)r.charAt(0)==="_"&&typeof this[r]=="function"&&(this[r]=this[r].bind(this));this.nativeDraggable=o.forceFallback?!1:lo,this.nativeDraggable&&(this.options.touchStartThreshold=1),o.supportPointer?b(t,"pointerdown",this._onTapStart):(b(t,"mousedown",this._onTapStart),b(t,"touchstart",this._onTapStart)),this.nativeDraggable&&(b(t,"dragover",this),b(t,"dragenter",this)),jt.push(this.el),o.store&&o.store.get&&this.sort(o.store.get(this)||[]),Z(this,oo())}p.prototype={constructor:p,_isOutsideThisEl:function(t){!this.el.contains(t)&&t!==this.el&&(bt=null)},_getDirection:function(t,o){return typeof this.options.direction=="function"?this.options.direction.call(this,t,o,u):this.options.direction},_onTapStart:function(t){if(t.cancelable){var o=this,e=this.el,n=this.options,r=n.preventOnFilter,i=t.type,a=t.touches&&t.touches[0]||t.pointerType&&t.pointerType==="touch"&&t,s=(a||t).target,l=t.target.shadowRoot&&(t.path&&t.path[0]||t.composedPath&&t.composedPath()[0])||s,c=n.filter;if(yo(e),!u&&!(/mousedown|pointerdown/.test(i)&&t.button!==0||n.disabled)&&!l.isContentEditable&&!(!this.nativeDraggable&&Et&&s&&s.tagName.toUpperCase()==="SELECT")&&(s=H(s,n.draggable,e,!1),!(s&&s.animated)&&Xt!==s)){if(mt=L(s),Tt=L(s,n.draggable),typeof c=="function"){if(c.call(this,t,s,this)){k({sortable:o,rootEl:l,name:"filter",targetEl:s,toEl:e,fromEl:e}),X("filter",o,{evt:t}),r&&t.preventDefault();return}}else if(c&&(c=c.split(",").some(function(d){if(d=H(l,d.trim(),e,!1),d)return k({sortable:o,rootEl:d,name:"filter",targetEl:s,fromEl:e,toEl:e}),X("filter",o,{evt:t}),!0}),c)){r&&t.preventDefault();return}n.handle&&!H(l,n.handle,e,!1)||this._prepareDragStart(t,a,s)}}},_prepareDragStart:function(t,o,e){var n=this,r=n.el,i=n.options,a=r.ownerDocument,s;if(e&&!u&&e.parentNode===r){var l=x(e);if(E=r,u=e,_=u.parentNode,it=u.nextSibling,Xt=e,Yt=i.group,p.dragged=u,at={target:u,clientX:(o||t).clientX,clientY:(o||t).clientY},Xe=at.clientX-l.left,Ye=at.clientY-l.top,this._lastX=(o||t).clientX,this._lastY=(o||t).clientY,u.style["will-change"]="all",s=function(){if(X("delayEnded",n,{evt:t}),p.eventCanceled){n._onDrop();return}n._disableDelayedDragEvents(),!_e&&n.nativeDraggable&&(u.draggable=!0),n._triggerDragStart(t,o),k({sortable:n,name:"choose",originalEvent:t}),Y(u,i.chosenClass,!0)},i.ignore.split(",").forEach(function(c){Oe(u,c.trim(),se)}),b(a,"dragover",lt),b(a,"mousemove",lt),b(a,"touchmove",lt),i.supportPointer?(b(a,"pointerup",n._onDrop),!this.nativeDraggable&&b(a,"pointercancel",n._onDrop)):(b(a,"mouseup",n._onDrop),b(a,"touchend",n._onDrop),b(a,"touchcancel",n._onDrop)),_e&&this.nativeDraggable&&(this.options.touchStartThreshold=4,u.draggable=!0),X("delayStart",this,{evt:t}),i.delay&&(!i.delayOnTouchOnly||o)&&(!this.nativeDraggable||!(Dt||G))){if(p.eventCanceled){this._onDrop();return}i.supportPointer?(b(a,"pointerup",n._disableDelayedDrag),b(a,"pointercancel",n._disableDelayedDrag)):(b(a,"mouseup",n._disableDelayedDrag),b(a,"touchend",n._disableDelayedDrag),b(a,"touchcancel",n._disableDelayedDrag)),b(a,"mousemove",n._delayedDragTouchMoveHandler),b(a,"touchmove",n._delayedDragTouchMoveHandler),i.supportPointer&&b(a,"pointermove",n._delayedDragTouchMoveHandler),n._dragStartTimer=setTimeout(s,i.delay)}else s()}},_delayedDragTouchMoveHandler:function(t){var o=t.touches?t.touches[0]:t;Math.max(Math.abs(o.clientX-this._lastX),Math.abs(o.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){u&&se(u),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;v(t,"mouseup",this._disableDelayedDrag),v(t,"touchend",this._disableDelayedDrag),v(t,"touchcancel",this._disableDelayedDrag),v(t,"pointerup",this._disableDelayedDrag),v(t,"pointercancel",this._disableDelayedDrag),v(t,"mousemove",this._delayedDragTouchMoveHandler),v(t,"touchmove",this._delayedDragTouchMoveHandler),v(t,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(t,o){o=o||t.pointerType=="touch"&&t,!this.nativeDraggable||o?this.options.supportPointer?b(document,"pointermove",this._onTouchMove):o?b(document,"touchmove",this._onTouchMove):b(document,"mousemove",this._onTouchMove):(b(u,"dragend",this),b(E,"dragstart",this._onDragStart));try{document.selection?Ut(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(t,o){if(vt=!1,E&&u){X("dragStarted",this,{evt:o}),this.nativeDraggable&&b(document,"dragover",co);var e=this.options;!t&&Y(u,e.dragClass,!1),Y(u,e.ghostClass,!0),p.active=this,t&&this._appendGhost(),k({sortable:this,name:"start",originalEvent:o})}else this._nulling()},_emulateDragOver:function(){if(W){this._lastX=W.clientX,this._lastY=W.clientY,Ve();for(var t=document.elementFromPoint(W.clientX,W.clientY),o=t;t&&t.shadowRoot&&(t=t.shadowRoot.elementFromPoint(W.clientX,W.clientY),t!==o);)o=t;if(u.parentNode[B]._isOutsideThisEl(t),o)do{if(o[B]){var e=void 0;if(e=o[B]._onDragOver({clientX:W.clientX,clientY:W.clientY,target:t,rootEl:o}),e&&!this.options.dragoverBubble)break}t=o}while(o=xe(o));He()}},_onTouchMove:function(t){if(at){var o=this.options,e=o.fallbackTolerance,n=o.fallbackOffset,r=t.touches?t.touches[0]:t,i=g&&ft(g,!0),a=g&&i&&i.a,s=g&&i&&i.d,l=Wt&&I&&Me(I),c=(r.clientX-at.clientX+n.x)/(a||1)+(l?l[0]-ae[0]:0)/(a||1),d=(r.clientY-at.clientY+n.y)/(s||1)+(l?l[1]-ae[1]:0)/(s||1);if(!p.active&&!vt){if(e&&Math.max(Math.abs(r.clientX-this._lastX),Math.abs(r.clientY-this._lastY))<e)return;this._onDragStart(t,!0)}if(g){i?(i.e+=c-(re||0),i.f+=d-(ie||0)):i={a:1,b:0,c:0,d:1,e:c,f:d};var h="matrix(".concat(i.a,",").concat(i.b,",").concat(i.c,",").concat(i.d,",").concat(i.e,",").concat(i.f,")");f(g,"webkitTransform",h),f(g,"mozTransform",h),f(g,"msTransform",h),f(g,"transform",h),re=c,ie=d,W=r}t.cancelable&&t.preventDefault()}},_appendGhost:function(){if(!g){var t=this.options.fallbackOnBody?document.body:E,o=x(u,!0,Wt,!0,t),e=this.options;if(Wt){for(I=t;f(I,"position")==="static"&&f(I,"transform")==="none"&&I!==document;)I=I.parentNode;I!==document.body&&I!==document.documentElement?(I===document&&(I=z()),o.top+=I.scrollTop,o.left+=I.scrollLeft):I=z(),ae=Me(I)}g=u.cloneNode(!0),Y(g,e.ghostClass,!1),Y(g,e.fallbackClass,!0),Y(g,e.dragClass,!0),f(g,"transition",""),f(g,"transform",""),f(g,"box-sizing","border-box"),f(g,"margin",0),f(g,"top",o.top),f(g,"left",o.left),f(g,"width",o.width),f(g,"height",o.height),f(g,"opacity","0.8"),f(g,"position",Wt?"absolute":"fixed"),f(g,"zIndex","100000"),f(g,"pointerEvents","none"),p.ghost=g,t.appendChild(g),f(g,"transform-origin",Xe/parseInt(g.style.width)*100+"% "+Ye/parseInt(g.style.height)*100+"%")}},_onDragStart:function(t,o){var e=this,n=t.dataTransfer,r=e.options;if(X("dragStart",this,{evt:t}),p.eventCanceled){this._onDrop();return}X("setupClone",this),p.eventCanceled||(S=ke(u),S.removeAttribute("id"),S.draggable=!1,S.style["will-change"]="",this._hideClone(),Y(S,this.options.chosenClass,!1),p.clone=S),e.cloneId=Ut(function(){X("clone",e),!p.eventCanceled&&(e.options.removeCloneOnHide||E.insertBefore(S,u),e._hideClone(),k({sortable:e,name:"clone"}))}),!o&&Y(u,r.dragClass,!0),o?(Ft=!0,e._loopId=setInterval(e._emulateDragOver,50)):(v(document,"mouseup",e._onDrop),v(document,"touchend",e._onDrop),v(document,"touchcancel",e._onDrop),n&&(n.effectAllowed="move",r.setData&&r.setData.call(e,n,u)),b(document,"drop",e),f(u,"transform","translateZ(0)")),vt=!0,e._dragStartId=Ut(e._dragStarted.bind(e,o,t)),b(document,"selectstart",e),Ct=!0,window.getSelection().removeAllRanges(),Et&&f(document.body,"user-select","none")},_onDragOver:function(t){var o=this.el,e=t.target,n,r,i,a=this.options,s=a.group,l=p.active,c=Yt===s,d=a.sort,h=A||l,w,m=this,T=!1;if(le)return;function y(It,So){X(It,m,U({evt:t,isOwner:c,axis:w?"vertical":"horizontal",revert:i,dragRect:n,targetRect:r,canSort:d,fromSortable:h,target:e,completed:O,onMove:function(Ue,_o){return $t(E,o,u,n,Ue,x(Ue),t,_o)},changed:$},So))}function D(){y("dragOverAnimationCapture"),m.captureAnimationState(),m!==h&&h.captureAnimationState()}function O(It){return y("dragOverCompleted",{insertion:It}),It&&(c?l._hideClone():l._showClone(m),m!==h&&(Y(u,A?A.options.ghostClass:l.options.ghostClass,!1),Y(u,a.ghostClass,!0)),A!==m&&m!==p.active?A=m:m===p.active&&A&&(A=null),h===m&&(m._ignoreWhileAnimating=e),m.animateAll(function(){y("dragOverAnimationComplete"),m._ignoreWhileAnimating=null}),m!==h&&(h.animateAll(),h._ignoreWhileAnimating=null)),(e===u&&!u.animated||e===o&&!e.animated)&&(bt=null),!a.dragoverBubble&&!t.rootEl&&e!==document&&(u.parentNode[B]._isOutsideThisEl(t.target),!It&&lt(t)),!a.dragoverBubble&&t.stopPropagation&&t.stopPropagation(),T=!0}function $(){F=L(u),et=L(u,a.draggable),k({sortable:m,name:"change",toEl:o,newIndex:F,newDraggableIndex:et,originalEvent:t})}if(t.preventDefault!==void 0&&t.cancelable&&t.preventDefault(),e=H(e,a.draggable,o,!0),y("dragOver"),p.eventCanceled)return T;if(u.contains(t.target)||e.animated&&e.animatingX&&e.animatingY||m._ignoreWhileAnimating===e)return O(!1);if(Ft=!1,l&&!a.disabled&&(c?d||(i=_!==E):A===this||(this.lastPutMode=Yt.checkPull(this,l,u,t))&&s.checkPut(this,l,u,t))){if(w=this._getDirection(t,e)==="vertical",n=x(u),y("dragOverValid"),p.eventCanceled)return T;if(i)return _=E,D(),this._hideClone(),y("revert"),p.eventCanceled||(it?E.insertBefore(u,it):E.appendChild(u)),O(!0);var P=ee(o,a.draggable);if(!P||go(t,w,this)&&!P.animated){if(P===u)return O(!1);if(P&&o===t.target&&(e=P),e&&(r=x(e)),$t(E,o,u,n,e,r,t,!!e)!==!1)return D(),P&&P.nextSibling?o.insertBefore(u,P.nextSibling):o.appendChild(u),_=o,$(),O(!0)}else if(P&&po(t,w,this)){var st=pt(o,0,a,!0);if(st===u)return O(!1);if(e=st,r=x(e),$t(E,o,u,n,e,r,t,!1)!==!1)return D(),o.insertBefore(u,st),_=o,$(),O(!0)}else if(e.parentNode===o){r=x(e);var J=0,ut,Mt=u.parentNode!==o,yt=!so(u.animated&&u.toRect||n,e.animated&&e.toRect||r,w),j=w?"top":"left",ot=Ae(e,"top","top")||Ae(u,"top","top"),Zt=ot?ot.scrollTop:void 0;bt!==e&&(ut=r[j],Nt=!1,Rt=!yt&&a.invertSwap||Mt),J=mo(t,e,r,w,yt?1:a.swapThreshold,a.invertedSwapThreshold==null?a.swapThreshold:a.invertedSwapThreshold,Rt,bt===e);var q;if(J!==0){var wt=L(u);do wt-=J,q=_.children[wt];while(q&&(f(q,"display")==="none"||q===g))}if(J===0||q===e)return O(!1);bt=e,xt=J;var ct=e.nextElementSibling,nt=!1;nt=J===1;var dt=$t(E,o,u,n,e,r,t,nt);if(dt!==!1)return(dt===1||dt===-1)&&(nt=dt===1),le=!0,setTimeout(fo,30),D(),nt&&!ct?o.appendChild(u):e.parentNode.insertBefore(u,nt?ct:e),ot&&Pe(ot,0,Zt-ot.scrollTop),_=u.parentNode,ut!==void 0&&!Rt&&(Lt=Math.abs(ut-x(e)[j])),$(),O(!0)}if(o.contains(u))return O(!1)}return!1},_ignoreWhileAnimating:null,_offMoveEvents:function(){v(document,"mousemove",this._onTouchMove),v(document,"touchmove",this._onTouchMove),v(document,"pointermove",this._onTouchMove),v(document,"dragover",lt),v(document,"mousemove",lt),v(document,"touchmove",lt)},_offUpEvents:function(){var t=this.el.ownerDocument;v(t,"mouseup",this._onDrop),v(t,"touchend",this._onDrop),v(t,"pointerup",this._onDrop),v(t,"pointercancel",this._onDrop),v(t,"touchcancel",this._onDrop),v(document,"selectstart",this)},_onDrop:function(t){var o=this.el,e=this.options;if(F=L(u),et=L(u,e.draggable),X("drop",this,{evt:t}),_=u&&u.parentNode,F=L(u),et=L(u,e.draggable),p.eventCanceled){this._nulling();return}vt=!1,Rt=!1,Nt=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),ue(this.cloneId),ue(this._dragStartId),this.nativeDraggable&&(v(document,"drop",this),v(o,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),Et&&f(document.body,"user-select",""),f(u,"transform",""),t&&(Ct&&(t.cancelable&&t.preventDefault(),!e.dropBubble&&t.stopPropagation()),g&&g.parentNode&&g.parentNode.removeChild(g),(E===_||A&&A.lastPutMode!=="clone")&&S&&S.parentNode&&S.parentNode.removeChild(S),u&&(this.nativeDraggable&&v(u,"dragend",this),se(u),u.style["will-change"]="",Ct&&!vt&&Y(u,A?A.options.ghostClass:this.options.ghostClass,!1),Y(u,this.options.chosenClass,!1),k({sortable:this,name:"unchoose",toEl:_,newIndex:null,newDraggableIndex:null,originalEvent:t}),E!==_?(F>=0&&(k({rootEl:_,name:"add",toEl:_,fromEl:E,originalEvent:t}),k({sortable:this,name:"remove",toEl:_,originalEvent:t}),k({rootEl:_,name:"sort",toEl:_,fromEl:E,originalEvent:t}),k({sortable:this,name:"sort",toEl:_,originalEvent:t})),A&&A.save()):F!==mt&&F>=0&&(k({sortable:this,name:"update",toEl:_,originalEvent:t}),k({sortable:this,name:"sort",toEl:_,originalEvent:t})),p.active&&((F==null||F===-1)&&(F=mt,et=Tt),k({sortable:this,name:"end",toEl:_,originalEvent:t}),this.save()))),this._nulling()},_nulling:function(){X("nulling",this),E=u=_=g=it=S=Xt=tt=at=W=Ct=F=et=mt=Tt=bt=xt=A=Yt=p.dragged=p.ghost=p.clone=p.active=null;var t=this.el;Vt.forEach(function(o){t.contains(o)&&(o.checked=!0)}),Vt.length=re=ie=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragenter":case"dragover":u&&(this._onDragOver(t),ho(t));break;case"selectstart":t.preventDefault();break}},toArray:function(){for(var t=[],o,e=this.el.children,n=0,r=e.length,i=this.options;n<r;n++)o=e[n],H(o,i.draggable,this.el,!1)&&t.push(o.getAttribute(i.dataIdAttr)||bo(o));return t},sort:function(t,o){var e={},n=this.el;this.toArray().forEach(function(r,i){var a=n.children[i];H(a,this.options.draggable,n,!1)&&(e[r]=a)},this),o&&this.captureAnimationState(),t.forEach(function(r){e[r]&&(n.removeChild(e[r]),n.appendChild(e[r]))}),o&&this.animateAll()},save:function(){var t=this.options.store;t&&t.set&&t.set(this)},closest:function(t,o){return H(t,o||this.options.draggable,this.el,!1)},option:function(t,o){var e=this.options;if(o===void 0)return e[t];var n=_t.modifyOption(this,t,o);typeof n<"u"?e[t]=n:e[t]=o,t==="group"&&Le(e)},destroy:function(){X("destroy",this);var t=this.el;t[B]=null,v(t,"mousedown",this._onTapStart),v(t,"touchstart",this._onTapStart),v(t,"pointerdown",this._onTapStart),this.nativeDraggable&&(v(t,"dragover",this),v(t,"dragenter",this)),Array.prototype.forEach.call(t.querySelectorAll("[draggable]"),function(o){o.removeAttribute("draggable")}),this._onDrop(),this._disableDelayedDragEvents(),jt.splice(jt.indexOf(this.el),1),this.el=t=null},_hideClone:function(){if(!tt){if(X("hideClone",this),p.eventCanceled)return;f(S,"display","none"),this.options.removeCloneOnHide&&S.parentNode&&S.parentNode.removeChild(S),tt=!0}},_showClone:function(t){if(t.lastPutMode!=="clone"){this._hideClone();return}if(tt){if(X("showClone",this),p.eventCanceled)return;u.parentNode==E&&!this.options.group.revertClone?E.insertBefore(S,u):it?E.insertBefore(S,it):E.appendChild(S),this.options.group.revertClone&&this.animate(u,S),f(S,"display",""),tt=!1}}};function ho(t){t.dataTransfer&&(t.dataTransfer.dropEffect="move"),t.cancelable&&t.preventDefault()}function $t(t,o,e,n,r,i,a,s){var l,c=t[B],d=c.options.onMove,h;return window.CustomEvent&&!G&&!Dt?l=new CustomEvent("move",{bubbles:!0,cancelable:!0}):(l=document.createEvent("Event"),l.initEvent("move",!0,!0)),l.to=o,l.from=t,l.dragged=e,l.draggedRect=n,l.related=r||o,l.relatedRect=i||x(o),l.willInsertAfter=s,l.originalEvent=a,t.dispatchEvent(l),d&&(h=d.call(c,l,a)),h}function se(t){t.draggable=!1}function fo(){le=!1}function po(t,o,e){var n=x(pt(e.el,0,e.options,!0)),r=Be(e.el,e.options,g),i=10;return o?t.clientX<r.left-i||t.clientY<n.top&&t.clientX<n.right:t.clientY<r.top-i||t.clientY<n.bottom&&t.clientX<n.left}function go(t,o,e){var n=x(ee(e.el,e.options.draggable)),r=Be(e.el,e.options,g),i=10;return o?t.clientX>r.right+i||t.clientY>n.bottom&&t.clientX>n.left:t.clientY>r.bottom+i||t.clientX>n.right&&t.clientY>n.top}function mo(t,o,e,n,r,i,a,s){var l=n?t.clientY:t.clientX,c=n?e.height:e.width,d=n?e.top:e.left,h=n?e.bottom:e.right,w=!1;if(!a){if(s&&Lt<c*r){if(!Nt&&(xt===1?l>d+c*i/2:l<h-c*i/2)&&(Nt=!0),Nt)w=!0;else if(xt===1?l<d+Lt:l>h-Lt)return-xt}else if(l>d+c*(1-r)/2&&l<h-c*(1-r)/2)return vo(o)}return w=w||a,w&&(l<d+c*i/2||l>h-c*i/2)?l>d+c/2?1:-1:0}function vo(t){return L(u)<L(t)?1:-1}function bo(t){for(var o=t.tagName+t.className+t.src+t.href+t.textContent,e=o.length,n=0;e--;)n+=o.charCodeAt(e);return n.toString(36)}function yo(t){Vt.length=0;for(var o=t.getElementsByTagName("input"),e=o.length;e--;){var n=o[e];n.checked&&Vt.push(n)}}function Ut(t){return setTimeout(t,0)}function ue(t){return clearTimeout(t)}Ht&&b(document,"touchmove",function(t){(p.active||vt)&&t.cancelable&&t.preventDefault()}),p.utils={on:b,off:v,css:f,find:Oe,is:function(t,o){return!!H(t,o,t,!1)},extend:to,throttle:Ie,closest:H,toggleClass:Y,clone:ke,index:L,nextTick:Ut,cancelNextTick:ue,detectDirection:Re,getChild:pt,expando:B},p.get=function(t){return t[B]},p.mount=function(){for(var t=arguments.length,o=new Array(t),e=0;e<t;e++)o[e]=arguments[e];o[0].constructor===Array&&(o=o[0]),o.forEach(function(n){if(!n.prototype||!n.prototype.constructor)throw"Sortable: Mounted plugin must be a constructor function, not ".concat({}.toString.call(n));n.utils&&(p.utils=U(U({},p.utils),n.utils)),_t.mount(n)})},p.create=function(t,o){return new p(t,o)},p.version=qe;var N=[],Ot,ce,de=!1,he,fe,zt,At;function wo(){function t(){this.defaults={scroll:!0,forceAutoScrollFallback:!1,scrollSensitivity:30,scrollSpeed:10,bubbleScroll:!0};for(var o in this)o.charAt(0)==="_"&&typeof this[o]=="function"&&(this[o]=this[o].bind(this))}return t.prototype={dragStarted:function(o){var e=o.originalEvent;this.sortable.nativeDraggable?b(document,"dragover",this._handleAutoScroll):this.options.supportPointer?b(document,"pointermove",this._handleFallbackAutoScroll):e.touches?b(document,"touchmove",this._handleFallbackAutoScroll):b(document,"mousemove",this._handleFallbackAutoScroll)},dragOverCompleted:function(o){var e=o.originalEvent;!this.options.dragOverBubble&&!e.rootEl&&this._handleAutoScroll(e)},drop:function(){this.sortable.nativeDraggable?v(document,"dragover",this._handleAutoScroll):(v(document,"pointermove",this._handleFallbackAutoScroll),v(document,"touchmove",this._handleFallbackAutoScroll),v(document,"mousemove",this._handleFallbackAutoScroll)),We(),Jt(),eo()},nulling:function(){zt=ce=Ot=de=At=he=fe=null,N.length=0},_handleFallbackAutoScroll:function(o){this._handleAutoScroll(o,!0)},_handleAutoScroll:function(o,e){var n=this,r=(o.touches?o.touches[0]:o).clientX,i=(o.touches?o.touches[0]:o).clientY,a=document.elementFromPoint(r,i);if(zt=o,e||this.options.forceAutoScrollFallback||Dt||G||Et){pe(o,this.options,a,e);var s=Q(a,!0);de&&(!At||r!==he||i!==fe)&&(At&&We(),At=setInterval(function(){var l=Q(document.elementFromPoint(r,i),!0);l!==s&&(s=l,Jt()),pe(o,n.options,l,e)},10),he=r,fe=i)}else{if(!this.options.bubbleScroll||Q(a,!0)===z()){Jt();return}pe(o,this.options,Q(a,!1),!1)}}},Z(t,{pluginName:"scroll",initializeByDefault:!0})}function Jt(){N.forEach(function(t){clearInterval(t.pid)}),N=[]}function We(){clearInterval(At)}var pe=Ie(function(t,o,e,n){if(o.scroll){var r=(t.touches?t.touches[0]:t).clientX,i=(t.touches?t.touches[0]:t).clientY,a=o.scrollSensitivity,s=o.scrollSpeed,l=z(),c=!1,d;ce!==e&&(ce=e,Jt(),Ot=o.scroll,d=o.scrollFn,Ot===!0&&(Ot=Q(e,!0)));var h=0,w=Ot;do{var m=w,T=x(m),y=T.top,D=T.bottom,O=T.left,$=T.right,P=T.width,st=T.height,J=void 0,ut=void 0,Mt=m.scrollWidth,yt=m.scrollHeight,j=f(m),ot=m.scrollLeft,Zt=m.scrollTop;m===l?(J=P<Mt&&(j.overflowX==="auto"||j.overflowX==="scroll"||j.overflowX==="visible"),ut=st<yt&&(j.overflowY==="auto"||j.overflowY==="scroll"||j.overflowY==="visible")):(J=P<Mt&&(j.overflowX==="auto"||j.overflowX==="scroll"),ut=st<yt&&(j.overflowY==="auto"||j.overflowY==="scroll"));var q=J&&(Math.abs($-r)<=a&&ot+P<Mt)-(Math.abs(O-r)<=a&&!!ot),wt=ut&&(Math.abs(D-i)<=a&&Zt+st<yt)-(Math.abs(y-i)<=a&&!!Zt);if(!N[h])for(var ct=0;ct<=h;ct++)N[ct]||(N[ct]={});(N[h].vx!=q||N[h].vy!=wt||N[h].el!==m)&&(N[h].el=m,N[h].vx=q,N[h].vy=wt,clearInterval(N[h].pid),(q!=0||wt!=0)&&(c=!0,N[h].pid=setInterval((function(){n&&this.layer===0&&p.active._onTouchMove(zt);var nt=N[this.layer].vy?N[this.layer].vy*s:0,dt=N[this.layer].vx?N[this.layer].vx*s:0;typeof d=="function"&&d.call(p.dragged.parentNode[B],dt,nt,t,zt,N[this.layer].el)!=="continue"||Pe(N[this.layer].el,dt,nt)}).bind({layer:h}),24))),h++}while(o.bubbleScroll&&w!==l&&(w=Q(w,!1)));de=c}},30),$e=function(t){var o=t.originalEvent,e=t.putSortable,n=t.dragEl,r=t.activeSortable,i=t.dispatchSortableEvent,a=t.hideGhostForTarget,s=t.unhideGhostForTarget;if(o){var l=e||r;a();var c=o.changedTouches&&o.changedTouches.length?o.changedTouches[0]:o,d=document.elementFromPoint(c.clientX,c.clientY);s(),l&&!l.el.contains(d)&&(i("spill"),this.onSpill({dragEl:n,putSortable:e}))}};function ge(){}ge.prototype={startIndex:null,dragStart:function(t){var o=t.oldDraggableIndex;this.startIndex=o},onSpill:function(t){var o=t.dragEl,e=t.putSortable;this.sortable.captureAnimationState(),e&&e.captureAnimationState();var n=pt(this.sortable.el,this.startIndex,this.options);n?this.sortable.el.insertBefore(o,n):this.sortable.el.appendChild(o),this.sortable.animateAll(),e&&e.animateAll()},drop:$e},Z(ge,{pluginName:"revertOnSpill"});function me(){}me.prototype={onSpill:function(t){var o=t.dragEl,e=t.putSortable,n=e||this.sortable;n.captureAnimationState(),o.parentNode&&o.parentNode.removeChild(o),n.animateAll()},drop:$e},Z(me,{pluginName:"removeOnSpill"}),p.mount(new wo),p.mount(me,ge);const Do={components:{OutputDialog:Ee},data(){return{name:null,icon:"astro:add-small",url:null,tools:[],jsonContent:"",dialogTitle:"",showDialog:!1,tool_id:null}},mounted(){this.update();let t=document.getElementById("toollist");p.create(t,{filter:".filter",onUpdate:this.sortChanged})},methods:{sortChanged(t){rt.post(`/openc3-api/tools/position/${this.tools[t.oldIndex]}`,{data:{position:t.newIndex},params:{scope:"DEFAULT"}}).then(o=>{this.$notify.normal({title:`Reordered tool ${this.tools[t.oldIndex]}`}),this.update()})},update(){rt.get("/openc3-api/tools",{params:{scope:"DEFAULT"}}).then(t=>{this.tools=t.data,this.name="",this.url=""})},add(){rt.post("/openc3-api/tools",{data:{id:this.name,json:JSON.stringify({name:this.name,icon:this.icon,url:this.url,window:"NEW"})},params:{scope:"DEFAULT"}}).then(t=>{this.$notify.normal({title:`Added tool ${this.name}`}),this.update()}).catch(t=>{window.$cosmosNotify.serious({title:`Failed to add tool ${this.name}`,message:t.response.data})})},showTool(t){rt.get(`/openc3-api/tools/${t}`,{params:{scope:"DEFAULT"}}).then(o=>{this.tool_id=t,this.jsonContent=JSON.stringify(o.data,null," "),this.dialogTitle=t,this.showDialog=!0})},dialogCallback(t){if(this.showDialog=!1,t!==null){let o=JSON.parse(t),e="put",n=`/openc3-api/tools/${this.tool_id}`;o.name!==this.tool_id&&(e="post",n="/openc3-api/tools"),rt[e](n,{data:{json:t},params:{scope:"DEFAULT"}}).then(r=>{this.$notify.normal({title:`Modified tool ${o.name}`}),this.update()})}},deleteTool(t){this.$dialog.confirm(`Are you sure you want to remove: ${t}`,{okText:"Delete",cancelText:"Cancel"}).then(function(o){return rt.delete(`/openc3-api/tools/${t}`,{params:{scope:"DEFAULT"}})}).then(o=>{this.$notify.normal({title:`Removed tool ${t}`}),this.update()})}}};function Eo(t,o,e,n,r,i){const a=V("v-icon"),s=V("v-btn"),l=V("v-col"),c=V("v-text-field"),d=V("v-row"),h=V("v-list-item-title"),w=V("v-list-item"),m=V("v-divider"),T=V("v-list"),y=V("output-dialog");return ht(),Pt("div",null,[M(d,{"no-gutters":"",align:"center",style:{"padding-left":"10px"}},{default:R(()=>[M(l,{cols:"3"},{default:R(()=>[M(s,{block:"",color:"primary","data-test":"toolAdd",disabled:!r.name||!r.url||!r.icon,onClick:o[0]||(o[0]=D=>i.add())},{default:R(()=>[o[5]||(o[5]=kt(" Add ",-1)),M(a,{end:"",theme:"dark"},{default:R(()=>[kt(Kt(r.icon),1)]),_:1})]),_:1},8,["disabled"])]),_:1}),M(l,{cols:"3"},{default:R(()=>[M(c,{modelValue:r.icon,"onUpdate:modelValue":o[1]||(o[1]=D=>r.icon=D),label:"Tool Icon",class:"px-2"},null,8,["modelValue"])]),_:1}),M(l,{cols:"3"},{default:R(()=>[M(c,{modelValue:r.name,"onUpdate:modelValue":o[2]||(o[2]=D=>r.name=D),label:"Tool Name",class:"px-2"},null,8,["modelValue"])]),_:1}),M(l,{cols:"3",class:"px-2"},{default:R(()=>[M(c,{modelValue:r.url,"onUpdate:modelValue":o[3]||(o[3]=D=>r.url=D),label:"Tool Url"},null,8,["modelValue"])]),_:1})]),_:1}),o[6]||(o[6]=be("span",{class:"text-body1 pa-3"},"Drag and drop to reorder tools in the NavBar. Note: 'Base' and 'Admin' can't be reordered. A browser refresh is required to see the new tool order.",-1)),M(T,{id:"toollist",class:"list","data-test":"toolList"},{default:R(()=>[(ht(!0),Pt(ye,null,we(r.tools,(D,O)=>(ht(),Pt("div",{key:D},[M(w,{class:De({filter:D==="Base"||D==="Admin"}),"prepend-icon":"mdi-drag-horizontal"},{append:R(()=>[M(s,{icon:"mdi-eye",variant:"text","aria-label":"View Tool",onClick:$=>i.showTool(D)},null,8,["onClick"]),M(s,{icon:"mdi-delete",variant:"text","aria-label":"Delete Tool",onClick:$=>i.deleteTool(D)},null,8,["onClick"])]),default:R(()=>[M(h,null,{default:R(()=>[kt(Kt(D),1)]),_:2},1024)]),_:2},1032,["class"]),O<r.tools.length-1?(ht(),Gt(m,{key:O})):qt("",!0)]))),128))]),_:1}),r.showDialog?(ht(),Gt(y,{key:0,modelValue:r.showDialog,"onUpdate:modelValue":o[4]||(o[4]=D=>r.showDialog=D),content:r.jsonContent,type:"Tool",name:r.dialogTitle,onSubmit:i.dialogCallback},null,8,["modelValue","content","name","onSubmit"])):qt("",!0)])}const Co=ze("default",ve(Do,[["render",Eo],["__scopeId","data-v-4b2d1ed0"]]))})}}));
1
+ System.register(["./main-040488697a5f3eed5115.js","vue","single-spa","./OutputDialog-B0DR879Y-1fe936426c84cb442ac4.js","vue-router","pinia","vuetify"],(function(ze,To){"use strict";var ve,rt,V,ht,Pt,M,R,kt,Kt,be,ye,we,De,Gt,qt,Ee;return{setters:[C=>{ve=C.k,rt=C.D},C=>{V=C.resolveComponent,ht=C.openBlock,Pt=C.createElementBlock,M=C.createVNode,R=C.withCtx,kt=C.createTextVNode,Kt=C.toDisplayString,be=C.createElementVNode,ye=C.Fragment,we=C.renderList,De=C.normalizeClass,Gt=C.createBlock,qt=C.createCommentVNode},null,C=>{Ee=C.S},null,null,null],execute:(function(){function C(t,o,e){return(o=Ge(o))in t?Object.defineProperty(t,o,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[o]=e,t}function Z(){return Z=Object.assign?Object.assign.bind():function(t){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var n in e)({}).hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t},Z.apply(null,arguments)}function Se(t,o){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);o&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable})),e.push.apply(e,n)}return e}function U(t){for(var o=1;o<arguments.length;o++){var e=arguments[o]!=null?arguments[o]:{};o%2?Se(Object(e),!0).forEach(function(n){C(t,n,e[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):Se(Object(e)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))})}return t}function Je(t,o){if(t==null)return{};var e,n,r=Ze(t,o);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n<i.length;n++)e=i[n],o.indexOf(e)===-1&&{}.propertyIsEnumerable.call(t,e)&&(r[e]=t[e])}return r}function Ze(t,o){if(t==null)return{};var e={};for(var n in t)if({}.hasOwnProperty.call(t,n)){if(o.indexOf(n)!==-1)continue;e[n]=t[n]}return e}function Ke(t,o){if(typeof t!="object"||!t)return t;var e=t[Symbol.toPrimitive];if(e!==void 0){var n=e.call(t,o);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(t)}function Ge(t){var o=Ke(t,"string");return typeof o=="symbol"?o:o+""}function Qt(t){"@babel/helpers - typeof";return Qt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},Qt(t)}var qe="1.15.7";function K(t){if(typeof window<"u"&&window.navigator)return!!navigator.userAgent.match(t)}var G=K(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),Dt=K(/Edge/i),_e=K(/firefox/i),Et=K(/safari/i)&&!K(/chrome/i)&&!K(/android/i),te=K(/iP(ad|od|hone)/i),Te=K(/chrome/i)&&K(/android/i),Ce={capture:!1,passive:!1};function b(t,o,e){t.addEventListener(o,e,!G&&Ce)}function v(t,o,e){t.removeEventListener(o,e,!G&&Ce)}function Bt(t,o){if(o){if(o[0]===">"&&(o=o.substring(1)),t)try{if(t.matches)return t.matches(o);if(t.msMatchesSelector)return t.msMatchesSelector(o);if(t.webkitMatchesSelector)return t.webkitMatchesSelector(o)}catch{return!1}return!1}}function xe(t){return t.host&&t!==document&&t.host.nodeType&&t.host!==t?t.host:t.parentNode}function H(t,o,e,n){if(t){e=e||document;do{if(o!=null&&(o[0]===">"?t.parentNode===e&&Bt(t,o):Bt(t,o))||n&&t===e)return t;if(t===e)break}while(t=xe(t))}return null}var Ne=/\s+/g;function Y(t,o,e){if(t&&o)if(t.classList)t.classList[e?"add":"remove"](o);else{var n=(" "+t.className+" ").replace(Ne," ").replace(" "+o+" "," ");t.className=(n+(e?" "+o:"")).replace(Ne," ")}}function f(t,o,e){var n=t&&t.style;if(n){if(e===void 0)return document.defaultView&&document.defaultView.getComputedStyle?e=document.defaultView.getComputedStyle(t,""):t.currentStyle&&(e=t.currentStyle),o===void 0?e:e[o];!(o in n)&&o.indexOf("webkit")===-1&&(o="-webkit-"+o),n[o]=e+(typeof e=="string"?"":"px")}}function ft(t,o){var e="";if(typeof t=="string")e=t;else do{var n=f(t,"transform");n&&n!=="none"&&(e=n+" "+e)}while(!o&&(t=t.parentNode));var r=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return r&&new r(e)}function Oe(t,o,e){if(t){var n=t.getElementsByTagName(o),r=0,i=n.length;if(e)for(;r<i;r++)e(n[r],r);return n}return[]}function z(){var t=document.scrollingElement;return t||document.documentElement}function x(t,o,e,n,r){if(!(!t.getBoundingClientRect&&t!==window)){var i,a,s,l,c,d,h;if(t!==window&&t.parentNode&&t!==z()?(i=t.getBoundingClientRect(),a=i.top,s=i.left,l=i.bottom,c=i.right,d=i.height,h=i.width):(a=0,s=0,l=window.innerHeight,c=window.innerWidth,d=window.innerHeight,h=window.innerWidth),(o||e)&&t!==window&&(r=r||t.parentNode,!G))do if(r&&r.getBoundingClientRect&&(f(r,"transform")!=="none"||e&&f(r,"position")!=="static")){var w=r.getBoundingClientRect();a-=w.top+parseInt(f(r,"border-top-width")),s-=w.left+parseInt(f(r,"border-left-width")),l=a+i.height,c=s+i.width;break}while(r=r.parentNode);if(n&&t!==window){var m=ft(r||t),T=m&&m.a,y=m&&m.d;m&&(a/=y,s/=T,h/=T,d/=y,l=a+d,c=s+h)}return{top:a,left:s,bottom:l,right:c,width:h,height:d}}}function Ae(t,o,e){for(var n=Q(t,!0),r=x(t)[o];n;){var i=x(n)[e],a=void 0;if(a=r>=i,!a)return n;if(n===z())break;n=Q(n,!1)}return!1}function pt(t,o,e,n){for(var r=0,i=0,a=t.children;i<a.length;){if(a[i].style.display!=="none"&&a[i]!==p.ghost&&(n||a[i]!==p.dragged)&&H(a[i],e.draggable,t,!1)){if(r===o)return a[i];r++}i++}return null}function ee(t,o){for(var e=t.lastElementChild;e&&(e===p.ghost||f(e,"display")==="none"||o&&!Bt(e,o));)e=e.previousElementSibling;return e||null}function L(t,o){var e=0;if(!t||!t.parentNode)return-1;for(;t=t.previousElementSibling;)t.nodeName.toUpperCase()!=="TEMPLATE"&&t!==p.clone&&(!o||Bt(t,o))&&e++;return e}function Me(t){var o=0,e=0,n=z();if(t)do{var r=ft(t),i=r.a,a=r.d;o+=t.scrollLeft*i,e+=t.scrollTop*a}while(t!==n&&(t=t.parentNode));return[o,e]}function Qe(t,o){for(var e in t)if(t.hasOwnProperty(e)){for(var n in o)if(o.hasOwnProperty(n)&&o[n]===t[e][n])return Number(e)}return-1}function Q(t,o){if(!t||!t.getBoundingClientRect)return z();var e=t,n=!1;do if(e.clientWidth<e.scrollWidth||e.clientHeight<e.scrollHeight){var r=f(e);if(e.clientWidth<e.scrollWidth&&(r.overflowX=="auto"||r.overflowX=="scroll")||e.clientHeight<e.scrollHeight&&(r.overflowY=="auto"||r.overflowY=="scroll")){if(!e.getBoundingClientRect||e===document.body)return z();if(n||o)return e;n=!0}}while(e=e.parentNode);return z()}function to(t,o){if(t&&o)for(var e in o)o.hasOwnProperty(e)&&(t[e]=o[e]);return t}function oe(t,o){return Math.round(t.top)===Math.round(o.top)&&Math.round(t.left)===Math.round(o.left)&&Math.round(t.height)===Math.round(o.height)&&Math.round(t.width)===Math.round(o.width)}var St;function Ie(t,o){return function(){if(!St){var e=arguments,n=this;e.length===1?t.call(n,e[0]):t.apply(n,e),St=setTimeout(function(){St=void 0},o)}}}function eo(){clearTimeout(St),St=void 0}function Pe(t,o,e){t.scrollLeft+=o,t.scrollTop+=e}function ke(t){var o=window.Polymer,e=window.jQuery||window.Zepto;return o&&o.dom?o.dom(t).cloneNode(!0):e?e(t).clone(!0)[0]:t.cloneNode(!0)}function Be(t,o,e){var n={};return Array.from(t.children).forEach(function(r){var i,a,s,l;if(!(!H(r,o.draggable,t,!1)||r.animated||r===e)){var c=x(r);n.left=Math.min((i=n.left)!==null&&i!==void 0?i:1/0,c.left),n.top=Math.min((a=n.top)!==null&&a!==void 0?a:1/0,c.top),n.right=Math.max((s=n.right)!==null&&s!==void 0?s:-1/0,c.right),n.bottom=Math.max((l=n.bottom)!==null&&l!==void 0?l:-1/0,c.bottom)}}),n.width=n.right-n.left,n.height=n.bottom-n.top,n.x=n.left,n.y=n.top,n}var B="Sortable"+new Date().getTime();function oo(){var t=[],o;return{captureAnimationState:function(){if(t=[],!!this.options.animation){var e=[].slice.call(this.el.children);e.forEach(function(n){if(!(f(n,"display")==="none"||n===p.ghost)){t.push({target:n,rect:x(n)});var r=U({},t[t.length-1].rect);if(n.thisAnimationDuration){var i=ft(n,!0);i&&(r.top-=i.f,r.left-=i.e)}n.fromRect=r}})}},addAnimationState:function(e){t.push(e)},removeAnimationState:function(e){t.splice(Qe(t,{target:e}),1)},animateAll:function(e){var n=this;if(!this.options.animation){clearTimeout(o),typeof e=="function"&&e();return}var r=!1,i=0;t.forEach(function(a){var s=0,l=a.target,c=l.fromRect,d=x(l),h=l.prevFromRect,w=l.prevToRect,m=a.rect,T=ft(l,!0);T&&(d.top-=T.f,d.left-=T.e),l.toRect=d,l.thisAnimationDuration&&oe(h,d)&&!oe(c,d)&&(m.top-d.top)/(m.left-d.left)===(c.top-d.top)/(c.left-d.left)&&(s=ro(m,h,w,n.options)),oe(d,c)||(l.prevFromRect=c,l.prevToRect=d,s||(s=n.options.animation),n.animate(l,m,d,s)),s&&(r=!0,i=Math.max(i,s),clearTimeout(l.animationResetTimer),l.animationResetTimer=setTimeout(function(){l.animationTime=0,l.prevFromRect=null,l.fromRect=null,l.prevToRect=null,l.thisAnimationDuration=null},s),l.thisAnimationDuration=s)}),clearTimeout(o),r?o=setTimeout(function(){typeof e=="function"&&e()},i):typeof e=="function"&&e(),t=[]},animate:function(e,n,r,i){if(i){f(e,"transition",""),f(e,"transform","");var a=ft(this.el),s=a&&a.a,l=a&&a.d,c=(n.left-r.left)/(s||1),d=(n.top-r.top)/(l||1);e.animatingX=!!c,e.animatingY=!!d,f(e,"transform","translate3d("+c+"px,"+d+"px,0)"),this.forRepaintDummy=no(e),f(e,"transition","transform "+i+"ms"+(this.options.easing?" "+this.options.easing:"")),f(e,"transform","translate3d(0,0,0)"),typeof e.animated=="number"&&clearTimeout(e.animated),e.animated=setTimeout(function(){f(e,"transition",""),f(e,"transform",""),e.animated=!1,e.animatingX=!1,e.animatingY=!1},i)}}}}function no(t){return t.offsetWidth}function ro(t,o,e,n){return Math.sqrt(Math.pow(o.top-t.top,2)+Math.pow(o.left-t.left,2))/Math.sqrt(Math.pow(o.top-e.top,2)+Math.pow(o.left-e.left,2))*n.animation}var gt=[],ne={initializeByDefault:!0},_t={mount:function(t){for(var o in ne)ne.hasOwnProperty(o)&&!(o in t)&&(t[o]=ne[o]);gt.forEach(function(e){if(e.pluginName===t.pluginName)throw"Sortable: Cannot mount plugin ".concat(t.pluginName," more than once")}),gt.push(t)},pluginEvent:function(t,o,e){var n=this;this.eventCanceled=!1,e.cancel=function(){n.eventCanceled=!0};var r=t+"Global";gt.forEach(function(i){o[i.pluginName]&&(o[i.pluginName][r]&&o[i.pluginName][r](U({sortable:o},e)),o.options[i.pluginName]&&o[i.pluginName][t]&&o[i.pluginName][t](U({sortable:o},e)))})},initializePlugins:function(t,o,e,n){gt.forEach(function(a){var s=a.pluginName;if(!(!t.options[s]&&!a.initializeByDefault)){var l=new a(t,o,t.options);l.sortable=t,l.options=t.options,t[s]=l,Z(e,l.defaults)}});for(var r in t.options)if(t.options.hasOwnProperty(r)){var i=this.modifyOption(t,r,t.options[r]);typeof i<"u"&&(t.options[r]=i)}},getEventProperties:function(t,o){var e={};return gt.forEach(function(n){typeof n.eventProperties=="function"&&Z(e,n.eventProperties.call(o[n.pluginName],t))}),e},modifyOption:function(t,o,e){var n;return gt.forEach(function(r){t[r.pluginName]&&r.optionListeners&&typeof r.optionListeners[o]=="function"&&(n=r.optionListeners[o].call(t[r.pluginName],e))}),n}};function io(t){var o=t.sortable,e=t.rootEl,n=t.name,r=t.targetEl,i=t.cloneEl,a=t.toEl,s=t.fromEl,l=t.oldIndex,c=t.newIndex,d=t.oldDraggableIndex,h=t.newDraggableIndex,w=t.originalEvent,m=t.putSortable,T=t.extraEventProperties;if(o=o||e&&e[B],!!o){var y,D=o.options,O="on"+n.charAt(0).toUpperCase()+n.substr(1);window.CustomEvent&&!G&&!Dt?y=new CustomEvent(n,{bubbles:!0,cancelable:!0}):(y=document.createEvent("Event"),y.initEvent(n,!0,!0)),y.to=a||e,y.from=s||e,y.item=r||e,y.clone=i,y.oldIndex=l,y.newIndex=c,y.oldDraggableIndex=d,y.newDraggableIndex=h,y.originalEvent=w,y.pullMode=m?m.lastPutMode:void 0;var $=U(U({},T),_t.getEventProperties(n,o));for(var P in $)y[P]=$[P];e&&e.dispatchEvent(y),D[O]&&D[O].call(o,y)}}var ao=["evt"],X=function(t,o){var e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=e.evt,r=Je(e,ao);_t.pluginEvent.bind(p)(t,o,U({dragEl:u,parentEl:_,ghostEl:g,rootEl:E,nextEl:it,lastDownEl:Xt,cloneEl:S,cloneHidden:tt,dragStarted:Ct,putSortable:A,activeSortable:p.active,originalEvent:n,oldIndex:mt,oldDraggableIndex:Tt,newIndex:F,newDraggableIndex:et,hideGhostForTarget:Ve,unhideGhostForTarget:He,cloneNowHidden:function(){tt=!0},cloneNowShown:function(){tt=!1},dispatchSortableEvent:function(i){k({sortable:o,name:i,originalEvent:n})}},r))};function k(t){io(U({putSortable:A,cloneEl:S,targetEl:u,rootEl:E,oldIndex:mt,oldDraggableIndex:Tt,newIndex:F,newDraggableIndex:et},t))}var u,_,g,E,it,Xt,S,tt,mt,F,Tt,et,Yt,A,vt=!1,Ft=!1,jt=[],at,W,re,ie,Xe,Ye,Ct,bt,xt,Nt=!1,Rt=!1,Lt,I,ae=[],le=!1,Vt=[],Ht=typeof document<"u",Wt=te,Fe=Dt||G?"cssFloat":"float",lo=Ht&&!Te&&!te&&"draggable"in document.createElement("div"),je=(function(){if(Ht){if(G)return!1;var t=document.createElement("x");return t.style.cssText="pointer-events:auto",t.style.pointerEvents==="auto"}})(),Re=function(t,o){var e=f(t),n=parseInt(e.width)-parseInt(e.paddingLeft)-parseInt(e.paddingRight)-parseInt(e.borderLeftWidth)-parseInt(e.borderRightWidth),r=pt(t,0,o),i=pt(t,1,o),a=r&&f(r),s=i&&f(i),l=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+x(r).width,c=s&&parseInt(s.marginLeft)+parseInt(s.marginRight)+x(i).width;if(e.display==="flex")return e.flexDirection==="column"||e.flexDirection==="column-reverse"?"vertical":"horizontal";if(e.display==="grid")return e.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(r&&a.float&&a.float!=="none"){var d=a.float==="left"?"left":"right";return i&&(s.clear==="both"||s.clear===d)?"vertical":"horizontal"}return r&&(a.display==="block"||a.display==="flex"||a.display==="table"||a.display==="grid"||l>=n&&e[Fe]==="none"||i&&e[Fe]==="none"&&l+c>n)?"vertical":"horizontal"},so=function(t,o,e){var n=e?t.left:t.top,r=e?t.right:t.bottom,i=e?t.width:t.height,a=e?o.left:o.top,s=e?o.right:o.bottom,l=e?o.width:o.height;return n===a||r===s||n+i/2===a+l/2},uo=function(t,o){var e;return jt.some(function(n){var r=n[B].options.emptyInsertThreshold;if(!(!r||ee(n))){var i=x(n),a=t>=i.left-r&&t<=i.right+r,s=o>=i.top-r&&o<=i.bottom+r;if(a&&s)return e=n}}),e},Le=function(t){function o(r,i){return function(a,s,l,c){var d=a.options.group.name&&s.options.group.name&&a.options.group.name===s.options.group.name;if(r==null&&(i||d))return!0;if(r==null||r===!1)return!1;if(i&&r==="clone")return r;if(typeof r=="function")return o(r(a,s,l,c),i)(a,s,l,c);var h=(i?a:s).options.group.name;return r===!0||typeof r=="string"&&r===h||r.join&&r.indexOf(h)>-1}}var e={},n=t.group;(!n||Qt(n)!="object")&&(n={name:n}),e.name=n.name,e.checkPull=o(n.pull,!0),e.checkPut=o(n.put),e.revertClone=n.revertClone,t.group=e},Ve=function(){!je&&g&&f(g,"display","none")},He=function(){!je&&g&&f(g,"display","")};Ht&&!Te&&document.addEventListener("click",function(t){if(Ft)return t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.stopImmediatePropagation&&t.stopImmediatePropagation(),Ft=!1,!1},!0);var lt=function(t){if(u){t=t.touches?t.touches[0]:t;var o=uo(t.clientX,t.clientY);if(o){var e={};for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);e.target=e.rootEl=o,e.preventDefault=void 0,e.stopPropagation=void 0,o[B]._onDragOver(e)}}},co=function(t){u&&u.parentNode[B]._isOutsideThisEl(t.target)};function p(t,o){if(!(t&&t.nodeType&&t.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(t));this.el=t,this.options=o=Z({},o),t[B]=this;var e={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(t.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Re(t,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(i,a){i.setData("Text",a.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:p.supportPointer!==!1&&"PointerEvent"in window&&(!Et||te),emptyInsertThreshold:5};_t.initializePlugins(this,t,e);for(var n in e)!(n in o)&&(o[n]=e[n]);Le(o);for(var r in this)r.charAt(0)==="_"&&typeof this[r]=="function"&&(this[r]=this[r].bind(this));this.nativeDraggable=o.forceFallback?!1:lo,this.nativeDraggable&&(this.options.touchStartThreshold=1),o.supportPointer?b(t,"pointerdown",this._onTapStart):(b(t,"mousedown",this._onTapStart),b(t,"touchstart",this._onTapStart)),this.nativeDraggable&&(b(t,"dragover",this),b(t,"dragenter",this)),jt.push(this.el),o.store&&o.store.get&&this.sort(o.store.get(this)||[]),Z(this,oo())}p.prototype={constructor:p,_isOutsideThisEl:function(t){!this.el.contains(t)&&t!==this.el&&(bt=null)},_getDirection:function(t,o){return typeof this.options.direction=="function"?this.options.direction.call(this,t,o,u):this.options.direction},_onTapStart:function(t){if(t.cancelable){var o=this,e=this.el,n=this.options,r=n.preventOnFilter,i=t.type,a=t.touches&&t.touches[0]||t.pointerType&&t.pointerType==="touch"&&t,s=(a||t).target,l=t.target.shadowRoot&&(t.path&&t.path[0]||t.composedPath&&t.composedPath()[0])||s,c=n.filter;if(yo(e),!u&&!(/mousedown|pointerdown/.test(i)&&t.button!==0||n.disabled)&&!l.isContentEditable&&!(!this.nativeDraggable&&Et&&s&&s.tagName.toUpperCase()==="SELECT")&&(s=H(s,n.draggable,e,!1),!(s&&s.animated)&&Xt!==s)){if(mt=L(s),Tt=L(s,n.draggable),typeof c=="function"){if(c.call(this,t,s,this)){k({sortable:o,rootEl:l,name:"filter",targetEl:s,toEl:e,fromEl:e}),X("filter",o,{evt:t}),r&&t.preventDefault();return}}else if(c&&(c=c.split(",").some(function(d){if(d=H(l,d.trim(),e,!1),d)return k({sortable:o,rootEl:d,name:"filter",targetEl:s,fromEl:e,toEl:e}),X("filter",o,{evt:t}),!0}),c)){r&&t.preventDefault();return}n.handle&&!H(l,n.handle,e,!1)||this._prepareDragStart(t,a,s)}}},_prepareDragStart:function(t,o,e){var n=this,r=n.el,i=n.options,a=r.ownerDocument,s;if(e&&!u&&e.parentNode===r){var l=x(e);if(E=r,u=e,_=u.parentNode,it=u.nextSibling,Xt=e,Yt=i.group,p.dragged=u,at={target:u,clientX:(o||t).clientX,clientY:(o||t).clientY},Xe=at.clientX-l.left,Ye=at.clientY-l.top,this._lastX=(o||t).clientX,this._lastY=(o||t).clientY,u.style["will-change"]="all",s=function(){if(X("delayEnded",n,{evt:t}),p.eventCanceled){n._onDrop();return}n._disableDelayedDragEvents(),!_e&&n.nativeDraggable&&(u.draggable=!0),n._triggerDragStart(t,o),k({sortable:n,name:"choose",originalEvent:t}),Y(u,i.chosenClass,!0)},i.ignore.split(",").forEach(function(c){Oe(u,c.trim(),se)}),b(a,"dragover",lt),b(a,"mousemove",lt),b(a,"touchmove",lt),i.supportPointer?(b(a,"pointerup",n._onDrop),!this.nativeDraggable&&b(a,"pointercancel",n._onDrop)):(b(a,"mouseup",n._onDrop),b(a,"touchend",n._onDrop),b(a,"touchcancel",n._onDrop)),_e&&this.nativeDraggable&&(this.options.touchStartThreshold=4,u.draggable=!0),X("delayStart",this,{evt:t}),i.delay&&(!i.delayOnTouchOnly||o)&&(!this.nativeDraggable||!(Dt||G))){if(p.eventCanceled){this._onDrop();return}i.supportPointer?(b(a,"pointerup",n._disableDelayedDrag),b(a,"pointercancel",n._disableDelayedDrag)):(b(a,"mouseup",n._disableDelayedDrag),b(a,"touchend",n._disableDelayedDrag),b(a,"touchcancel",n._disableDelayedDrag)),b(a,"mousemove",n._delayedDragTouchMoveHandler),b(a,"touchmove",n._delayedDragTouchMoveHandler),i.supportPointer&&b(a,"pointermove",n._delayedDragTouchMoveHandler),n._dragStartTimer=setTimeout(s,i.delay)}else s()}},_delayedDragTouchMoveHandler:function(t){var o=t.touches?t.touches[0]:t;Math.max(Math.abs(o.clientX-this._lastX),Math.abs(o.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){u&&se(u),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;v(t,"mouseup",this._disableDelayedDrag),v(t,"touchend",this._disableDelayedDrag),v(t,"touchcancel",this._disableDelayedDrag),v(t,"pointerup",this._disableDelayedDrag),v(t,"pointercancel",this._disableDelayedDrag),v(t,"mousemove",this._delayedDragTouchMoveHandler),v(t,"touchmove",this._delayedDragTouchMoveHandler),v(t,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(t,o){o=o||t.pointerType=="touch"&&t,!this.nativeDraggable||o?this.options.supportPointer?b(document,"pointermove",this._onTouchMove):o?b(document,"touchmove",this._onTouchMove):b(document,"mousemove",this._onTouchMove):(b(u,"dragend",this),b(E,"dragstart",this._onDragStart));try{document.selection?Ut(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(t,o){if(vt=!1,E&&u){X("dragStarted",this,{evt:o}),this.nativeDraggable&&b(document,"dragover",co);var e=this.options;!t&&Y(u,e.dragClass,!1),Y(u,e.ghostClass,!0),p.active=this,t&&this._appendGhost(),k({sortable:this,name:"start",originalEvent:o})}else this._nulling()},_emulateDragOver:function(){if(W){this._lastX=W.clientX,this._lastY=W.clientY,Ve();for(var t=document.elementFromPoint(W.clientX,W.clientY),o=t;t&&t.shadowRoot&&(t=t.shadowRoot.elementFromPoint(W.clientX,W.clientY),t!==o);)o=t;if(u.parentNode[B]._isOutsideThisEl(t),o)do{if(o[B]){var e=void 0;if(e=o[B]._onDragOver({clientX:W.clientX,clientY:W.clientY,target:t,rootEl:o}),e&&!this.options.dragoverBubble)break}t=o}while(o=xe(o));He()}},_onTouchMove:function(t){if(at){var o=this.options,e=o.fallbackTolerance,n=o.fallbackOffset,r=t.touches?t.touches[0]:t,i=g&&ft(g,!0),a=g&&i&&i.a,s=g&&i&&i.d,l=Wt&&I&&Me(I),c=(r.clientX-at.clientX+n.x)/(a||1)+(l?l[0]-ae[0]:0)/(a||1),d=(r.clientY-at.clientY+n.y)/(s||1)+(l?l[1]-ae[1]:0)/(s||1);if(!p.active&&!vt){if(e&&Math.max(Math.abs(r.clientX-this._lastX),Math.abs(r.clientY-this._lastY))<e)return;this._onDragStart(t,!0)}if(g){i?(i.e+=c-(re||0),i.f+=d-(ie||0)):i={a:1,b:0,c:0,d:1,e:c,f:d};var h="matrix(".concat(i.a,",").concat(i.b,",").concat(i.c,",").concat(i.d,",").concat(i.e,",").concat(i.f,")");f(g,"webkitTransform",h),f(g,"mozTransform",h),f(g,"msTransform",h),f(g,"transform",h),re=c,ie=d,W=r}t.cancelable&&t.preventDefault()}},_appendGhost:function(){if(!g){var t=this.options.fallbackOnBody?document.body:E,o=x(u,!0,Wt,!0,t),e=this.options;if(Wt){for(I=t;f(I,"position")==="static"&&f(I,"transform")==="none"&&I!==document;)I=I.parentNode;I!==document.body&&I!==document.documentElement?(I===document&&(I=z()),o.top+=I.scrollTop,o.left+=I.scrollLeft):I=z(),ae=Me(I)}g=u.cloneNode(!0),Y(g,e.ghostClass,!1),Y(g,e.fallbackClass,!0),Y(g,e.dragClass,!0),f(g,"transition",""),f(g,"transform",""),f(g,"box-sizing","border-box"),f(g,"margin",0),f(g,"top",o.top),f(g,"left",o.left),f(g,"width",o.width),f(g,"height",o.height),f(g,"opacity","0.8"),f(g,"position",Wt?"absolute":"fixed"),f(g,"zIndex","100000"),f(g,"pointerEvents","none"),p.ghost=g,t.appendChild(g),f(g,"transform-origin",Xe/parseInt(g.style.width)*100+"% "+Ye/parseInt(g.style.height)*100+"%")}},_onDragStart:function(t,o){var e=this,n=t.dataTransfer,r=e.options;if(X("dragStart",this,{evt:t}),p.eventCanceled){this._onDrop();return}X("setupClone",this),p.eventCanceled||(S=ke(u),S.removeAttribute("id"),S.draggable=!1,S.style["will-change"]="",this._hideClone(),Y(S,this.options.chosenClass,!1),p.clone=S),e.cloneId=Ut(function(){X("clone",e),!p.eventCanceled&&(e.options.removeCloneOnHide||E.insertBefore(S,u),e._hideClone(),k({sortable:e,name:"clone"}))}),!o&&Y(u,r.dragClass,!0),o?(Ft=!0,e._loopId=setInterval(e._emulateDragOver,50)):(v(document,"mouseup",e._onDrop),v(document,"touchend",e._onDrop),v(document,"touchcancel",e._onDrop),n&&(n.effectAllowed="move",r.setData&&r.setData.call(e,n,u)),b(document,"drop",e),f(u,"transform","translateZ(0)")),vt=!0,e._dragStartId=Ut(e._dragStarted.bind(e,o,t)),b(document,"selectstart",e),Ct=!0,window.getSelection().removeAllRanges(),Et&&f(document.body,"user-select","none")},_onDragOver:function(t){var o=this.el,e=t.target,n,r,i,a=this.options,s=a.group,l=p.active,c=Yt===s,d=a.sort,h=A||l,w,m=this,T=!1;if(le)return;function y(It,So){X(It,m,U({evt:t,isOwner:c,axis:w?"vertical":"horizontal",revert:i,dragRect:n,targetRect:r,canSort:d,fromSortable:h,target:e,completed:O,onMove:function(Ue,_o){return $t(E,o,u,n,Ue,x(Ue),t,_o)},changed:$},So))}function D(){y("dragOverAnimationCapture"),m.captureAnimationState(),m!==h&&h.captureAnimationState()}function O(It){return y("dragOverCompleted",{insertion:It}),It&&(c?l._hideClone():l._showClone(m),m!==h&&(Y(u,A?A.options.ghostClass:l.options.ghostClass,!1),Y(u,a.ghostClass,!0)),A!==m&&m!==p.active?A=m:m===p.active&&A&&(A=null),h===m&&(m._ignoreWhileAnimating=e),m.animateAll(function(){y("dragOverAnimationComplete"),m._ignoreWhileAnimating=null}),m!==h&&(h.animateAll(),h._ignoreWhileAnimating=null)),(e===u&&!u.animated||e===o&&!e.animated)&&(bt=null),!a.dragoverBubble&&!t.rootEl&&e!==document&&(u.parentNode[B]._isOutsideThisEl(t.target),!It&&lt(t)),!a.dragoverBubble&&t.stopPropagation&&t.stopPropagation(),T=!0}function $(){F=L(u),et=L(u,a.draggable),k({sortable:m,name:"change",toEl:o,newIndex:F,newDraggableIndex:et,originalEvent:t})}if(t.preventDefault!==void 0&&t.cancelable&&t.preventDefault(),e=H(e,a.draggable,o,!0),y("dragOver"),p.eventCanceled)return T;if(u.contains(t.target)||e.animated&&e.animatingX&&e.animatingY||m._ignoreWhileAnimating===e)return O(!1);if(Ft=!1,l&&!a.disabled&&(c?d||(i=_!==E):A===this||(this.lastPutMode=Yt.checkPull(this,l,u,t))&&s.checkPut(this,l,u,t))){if(w=this._getDirection(t,e)==="vertical",n=x(u),y("dragOverValid"),p.eventCanceled)return T;if(i)return _=E,D(),this._hideClone(),y("revert"),p.eventCanceled||(it?E.insertBefore(u,it):E.appendChild(u)),O(!0);var P=ee(o,a.draggable);if(!P||go(t,w,this)&&!P.animated){if(P===u)return O(!1);if(P&&o===t.target&&(e=P),e&&(r=x(e)),$t(E,o,u,n,e,r,t,!!e)!==!1)return D(),P&&P.nextSibling?o.insertBefore(u,P.nextSibling):o.appendChild(u),_=o,$(),O(!0)}else if(P&&po(t,w,this)){var st=pt(o,0,a,!0);if(st===u)return O(!1);if(e=st,r=x(e),$t(E,o,u,n,e,r,t,!1)!==!1)return D(),o.insertBefore(u,st),_=o,$(),O(!0)}else if(e.parentNode===o){r=x(e);var J=0,ut,Mt=u.parentNode!==o,yt=!so(u.animated&&u.toRect||n,e.animated&&e.toRect||r,w),j=w?"top":"left",ot=Ae(e,"top","top")||Ae(u,"top","top"),Zt=ot?ot.scrollTop:void 0;bt!==e&&(ut=r[j],Nt=!1,Rt=!yt&&a.invertSwap||Mt),J=mo(t,e,r,w,yt?1:a.swapThreshold,a.invertedSwapThreshold==null?a.swapThreshold:a.invertedSwapThreshold,Rt,bt===e);var q;if(J!==0){var wt=L(u);do wt-=J,q=_.children[wt];while(q&&(f(q,"display")==="none"||q===g))}if(J===0||q===e)return O(!1);bt=e,xt=J;var ct=e.nextElementSibling,nt=!1;nt=J===1;var dt=$t(E,o,u,n,e,r,t,nt);if(dt!==!1)return(dt===1||dt===-1)&&(nt=dt===1),le=!0,setTimeout(fo,30),D(),nt&&!ct?o.appendChild(u):e.parentNode.insertBefore(u,nt?ct:e),ot&&Pe(ot,0,Zt-ot.scrollTop),_=u.parentNode,ut!==void 0&&!Rt&&(Lt=Math.abs(ut-x(e)[j])),$(),O(!0)}if(o.contains(u))return O(!1)}return!1},_ignoreWhileAnimating:null,_offMoveEvents:function(){v(document,"mousemove",this._onTouchMove),v(document,"touchmove",this._onTouchMove),v(document,"pointermove",this._onTouchMove),v(document,"dragover",lt),v(document,"mousemove",lt),v(document,"touchmove",lt)},_offUpEvents:function(){var t=this.el.ownerDocument;v(t,"mouseup",this._onDrop),v(t,"touchend",this._onDrop),v(t,"pointerup",this._onDrop),v(t,"pointercancel",this._onDrop),v(t,"touchcancel",this._onDrop),v(document,"selectstart",this)},_onDrop:function(t){var o=this.el,e=this.options;if(F=L(u),et=L(u,e.draggable),X("drop",this,{evt:t}),_=u&&u.parentNode,F=L(u),et=L(u,e.draggable),p.eventCanceled){this._nulling();return}vt=!1,Rt=!1,Nt=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),ue(this.cloneId),ue(this._dragStartId),this.nativeDraggable&&(v(document,"drop",this),v(o,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),Et&&f(document.body,"user-select",""),f(u,"transform",""),t&&(Ct&&(t.cancelable&&t.preventDefault(),!e.dropBubble&&t.stopPropagation()),g&&g.parentNode&&g.parentNode.removeChild(g),(E===_||A&&A.lastPutMode!=="clone")&&S&&S.parentNode&&S.parentNode.removeChild(S),u&&(this.nativeDraggable&&v(u,"dragend",this),se(u),u.style["will-change"]="",Ct&&!vt&&Y(u,A?A.options.ghostClass:this.options.ghostClass,!1),Y(u,this.options.chosenClass,!1),k({sortable:this,name:"unchoose",toEl:_,newIndex:null,newDraggableIndex:null,originalEvent:t}),E!==_?(F>=0&&(k({rootEl:_,name:"add",toEl:_,fromEl:E,originalEvent:t}),k({sortable:this,name:"remove",toEl:_,originalEvent:t}),k({rootEl:_,name:"sort",toEl:_,fromEl:E,originalEvent:t}),k({sortable:this,name:"sort",toEl:_,originalEvent:t})),A&&A.save()):F!==mt&&F>=0&&(k({sortable:this,name:"update",toEl:_,originalEvent:t}),k({sortable:this,name:"sort",toEl:_,originalEvent:t})),p.active&&((F==null||F===-1)&&(F=mt,et=Tt),k({sortable:this,name:"end",toEl:_,originalEvent:t}),this.save()))),this._nulling()},_nulling:function(){X("nulling",this),E=u=_=g=it=S=Xt=tt=at=W=Ct=F=et=mt=Tt=bt=xt=A=Yt=p.dragged=p.ghost=p.clone=p.active=null;var t=this.el;Vt.forEach(function(o){t.contains(o)&&(o.checked=!0)}),Vt.length=re=ie=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragenter":case"dragover":u&&(this._onDragOver(t),ho(t));break;case"selectstart":t.preventDefault();break}},toArray:function(){for(var t=[],o,e=this.el.children,n=0,r=e.length,i=this.options;n<r;n++)o=e[n],H(o,i.draggable,this.el,!1)&&t.push(o.getAttribute(i.dataIdAttr)||bo(o));return t},sort:function(t,o){var e={},n=this.el;this.toArray().forEach(function(r,i){var a=n.children[i];H(a,this.options.draggable,n,!1)&&(e[r]=a)},this),o&&this.captureAnimationState(),t.forEach(function(r){e[r]&&(n.removeChild(e[r]),n.appendChild(e[r]))}),o&&this.animateAll()},save:function(){var t=this.options.store;t&&t.set&&t.set(this)},closest:function(t,o){return H(t,o||this.options.draggable,this.el,!1)},option:function(t,o){var e=this.options;if(o===void 0)return e[t];var n=_t.modifyOption(this,t,o);typeof n<"u"?e[t]=n:e[t]=o,t==="group"&&Le(e)},destroy:function(){X("destroy",this);var t=this.el;t[B]=null,v(t,"mousedown",this._onTapStart),v(t,"touchstart",this._onTapStart),v(t,"pointerdown",this._onTapStart),this.nativeDraggable&&(v(t,"dragover",this),v(t,"dragenter",this)),Array.prototype.forEach.call(t.querySelectorAll("[draggable]"),function(o){o.removeAttribute("draggable")}),this._onDrop(),this._disableDelayedDragEvents(),jt.splice(jt.indexOf(this.el),1),this.el=t=null},_hideClone:function(){if(!tt){if(X("hideClone",this),p.eventCanceled)return;f(S,"display","none"),this.options.removeCloneOnHide&&S.parentNode&&S.parentNode.removeChild(S),tt=!0}},_showClone:function(t){if(t.lastPutMode!=="clone"){this._hideClone();return}if(tt){if(X("showClone",this),p.eventCanceled)return;u.parentNode==E&&!this.options.group.revertClone?E.insertBefore(S,u):it?E.insertBefore(S,it):E.appendChild(S),this.options.group.revertClone&&this.animate(u,S),f(S,"display",""),tt=!1}}};function ho(t){t.dataTransfer&&(t.dataTransfer.dropEffect="move"),t.cancelable&&t.preventDefault()}function $t(t,o,e,n,r,i,a,s){var l,c=t[B],d=c.options.onMove,h;return window.CustomEvent&&!G&&!Dt?l=new CustomEvent("move",{bubbles:!0,cancelable:!0}):(l=document.createEvent("Event"),l.initEvent("move",!0,!0)),l.to=o,l.from=t,l.dragged=e,l.draggedRect=n,l.related=r||o,l.relatedRect=i||x(o),l.willInsertAfter=s,l.originalEvent=a,t.dispatchEvent(l),d&&(h=d.call(c,l,a)),h}function se(t){t.draggable=!1}function fo(){le=!1}function po(t,o,e){var n=x(pt(e.el,0,e.options,!0)),r=Be(e.el,e.options,g),i=10;return o?t.clientX<r.left-i||t.clientY<n.top&&t.clientX<n.right:t.clientY<r.top-i||t.clientY<n.bottom&&t.clientX<n.left}function go(t,o,e){var n=x(ee(e.el,e.options.draggable)),r=Be(e.el,e.options,g),i=10;return o?t.clientX>r.right+i||t.clientY>n.bottom&&t.clientX>n.left:t.clientY>r.bottom+i||t.clientX>n.right&&t.clientY>n.top}function mo(t,o,e,n,r,i,a,s){var l=n?t.clientY:t.clientX,c=n?e.height:e.width,d=n?e.top:e.left,h=n?e.bottom:e.right,w=!1;if(!a){if(s&&Lt<c*r){if(!Nt&&(xt===1?l>d+c*i/2:l<h-c*i/2)&&(Nt=!0),Nt)w=!0;else if(xt===1?l<d+Lt:l>h-Lt)return-xt}else if(l>d+c*(1-r)/2&&l<h-c*(1-r)/2)return vo(o)}return w=w||a,w&&(l<d+c*i/2||l>h-c*i/2)?l>d+c/2?1:-1:0}function vo(t){return L(u)<L(t)?1:-1}function bo(t){for(var o=t.tagName+t.className+t.src+t.href+t.textContent,e=o.length,n=0;e--;)n+=o.charCodeAt(e);return n.toString(36)}function yo(t){Vt.length=0;for(var o=t.getElementsByTagName("input"),e=o.length;e--;){var n=o[e];n.checked&&Vt.push(n)}}function Ut(t){return setTimeout(t,0)}function ue(t){return clearTimeout(t)}Ht&&b(document,"touchmove",function(t){(p.active||vt)&&t.cancelable&&t.preventDefault()}),p.utils={on:b,off:v,css:f,find:Oe,is:function(t,o){return!!H(t,o,t,!1)},extend:to,throttle:Ie,closest:H,toggleClass:Y,clone:ke,index:L,nextTick:Ut,cancelNextTick:ue,detectDirection:Re,getChild:pt,expando:B},p.get=function(t){return t[B]},p.mount=function(){for(var t=arguments.length,o=new Array(t),e=0;e<t;e++)o[e]=arguments[e];o[0].constructor===Array&&(o=o[0]),o.forEach(function(n){if(!n.prototype||!n.prototype.constructor)throw"Sortable: Mounted plugin must be a constructor function, not ".concat({}.toString.call(n));n.utils&&(p.utils=U(U({},p.utils),n.utils)),_t.mount(n)})},p.create=function(t,o){return new p(t,o)},p.version=qe;var N=[],Ot,ce,de=!1,he,fe,zt,At;function wo(){function t(){this.defaults={scroll:!0,forceAutoScrollFallback:!1,scrollSensitivity:30,scrollSpeed:10,bubbleScroll:!0};for(var o in this)o.charAt(0)==="_"&&typeof this[o]=="function"&&(this[o]=this[o].bind(this))}return t.prototype={dragStarted:function(o){var e=o.originalEvent;this.sortable.nativeDraggable?b(document,"dragover",this._handleAutoScroll):this.options.supportPointer?b(document,"pointermove",this._handleFallbackAutoScroll):e.touches?b(document,"touchmove",this._handleFallbackAutoScroll):b(document,"mousemove",this._handleFallbackAutoScroll)},dragOverCompleted:function(o){var e=o.originalEvent;!this.options.dragOverBubble&&!e.rootEl&&this._handleAutoScroll(e)},drop:function(){this.sortable.nativeDraggable?v(document,"dragover",this._handleAutoScroll):(v(document,"pointermove",this._handleFallbackAutoScroll),v(document,"touchmove",this._handleFallbackAutoScroll),v(document,"mousemove",this._handleFallbackAutoScroll)),We(),Jt(),eo()},nulling:function(){zt=ce=Ot=de=At=he=fe=null,N.length=0},_handleFallbackAutoScroll:function(o){this._handleAutoScroll(o,!0)},_handleAutoScroll:function(o,e){var n=this,r=(o.touches?o.touches[0]:o).clientX,i=(o.touches?o.touches[0]:o).clientY,a=document.elementFromPoint(r,i);if(zt=o,e||this.options.forceAutoScrollFallback||Dt||G||Et){pe(o,this.options,a,e);var s=Q(a,!0);de&&(!At||r!==he||i!==fe)&&(At&&We(),At=setInterval(function(){var l=Q(document.elementFromPoint(r,i),!0);l!==s&&(s=l,Jt()),pe(o,n.options,l,e)},10),he=r,fe=i)}else{if(!this.options.bubbleScroll||Q(a,!0)===z()){Jt();return}pe(o,this.options,Q(a,!1),!1)}}},Z(t,{pluginName:"scroll",initializeByDefault:!0})}function Jt(){N.forEach(function(t){clearInterval(t.pid)}),N=[]}function We(){clearInterval(At)}var pe=Ie(function(t,o,e,n){if(o.scroll){var r=(t.touches?t.touches[0]:t).clientX,i=(t.touches?t.touches[0]:t).clientY,a=o.scrollSensitivity,s=o.scrollSpeed,l=z(),c=!1,d;ce!==e&&(ce=e,Jt(),Ot=o.scroll,d=o.scrollFn,Ot===!0&&(Ot=Q(e,!0)));var h=0,w=Ot;do{var m=w,T=x(m),y=T.top,D=T.bottom,O=T.left,$=T.right,P=T.width,st=T.height,J=void 0,ut=void 0,Mt=m.scrollWidth,yt=m.scrollHeight,j=f(m),ot=m.scrollLeft,Zt=m.scrollTop;m===l?(J=P<Mt&&(j.overflowX==="auto"||j.overflowX==="scroll"||j.overflowX==="visible"),ut=st<yt&&(j.overflowY==="auto"||j.overflowY==="scroll"||j.overflowY==="visible")):(J=P<Mt&&(j.overflowX==="auto"||j.overflowX==="scroll"),ut=st<yt&&(j.overflowY==="auto"||j.overflowY==="scroll"));var q=J&&(Math.abs($-r)<=a&&ot+P<Mt)-(Math.abs(O-r)<=a&&!!ot),wt=ut&&(Math.abs(D-i)<=a&&Zt+st<yt)-(Math.abs(y-i)<=a&&!!Zt);if(!N[h])for(var ct=0;ct<=h;ct++)N[ct]||(N[ct]={});(N[h].vx!=q||N[h].vy!=wt||N[h].el!==m)&&(N[h].el=m,N[h].vx=q,N[h].vy=wt,clearInterval(N[h].pid),(q!=0||wt!=0)&&(c=!0,N[h].pid=setInterval((function(){n&&this.layer===0&&p.active._onTouchMove(zt);var nt=N[this.layer].vy?N[this.layer].vy*s:0,dt=N[this.layer].vx?N[this.layer].vx*s:0;typeof d=="function"&&d.call(p.dragged.parentNode[B],dt,nt,t,zt,N[this.layer].el)!=="continue"||Pe(N[this.layer].el,dt,nt)}).bind({layer:h}),24))),h++}while(o.bubbleScroll&&w!==l&&(w=Q(w,!1)));de=c}},30),$e=function(t){var o=t.originalEvent,e=t.putSortable,n=t.dragEl,r=t.activeSortable,i=t.dispatchSortableEvent,a=t.hideGhostForTarget,s=t.unhideGhostForTarget;if(o){var l=e||r;a();var c=o.changedTouches&&o.changedTouches.length?o.changedTouches[0]:o,d=document.elementFromPoint(c.clientX,c.clientY);s(),l&&!l.el.contains(d)&&(i("spill"),this.onSpill({dragEl:n,putSortable:e}))}};function ge(){}ge.prototype={startIndex:null,dragStart:function(t){var o=t.oldDraggableIndex;this.startIndex=o},onSpill:function(t){var o=t.dragEl,e=t.putSortable;this.sortable.captureAnimationState(),e&&e.captureAnimationState();var n=pt(this.sortable.el,this.startIndex,this.options);n?this.sortable.el.insertBefore(o,n):this.sortable.el.appendChild(o),this.sortable.animateAll(),e&&e.animateAll()},drop:$e},Z(ge,{pluginName:"revertOnSpill"});function me(){}me.prototype={onSpill:function(t){var o=t.dragEl,e=t.putSortable,n=e||this.sortable;n.captureAnimationState(),o.parentNode&&o.parentNode.removeChild(o),n.animateAll()},drop:$e},Z(me,{pluginName:"removeOnSpill"}),p.mount(new wo),p.mount(me,ge);const Do={components:{OutputDialog:Ee},data(){return{name:null,icon:"astro:add-small",url:null,tools:[],jsonContent:"",dialogTitle:"",showDialog:!1,tool_id:null}},mounted(){this.update();let t=document.getElementById("toollist");p.create(t,{filter:".filter",onUpdate:this.sortChanged})},methods:{sortChanged(t){rt.post(`/openc3-api/tools/position/${this.tools[t.oldIndex]}`,{data:{position:t.newIndex},params:{scope:"DEFAULT"}}).then(o=>{this.$notify.normal({title:`Reordered tool ${this.tools[t.oldIndex]}`}),this.update()})},update(){rt.get("/openc3-api/tools",{params:{scope:"DEFAULT"}}).then(t=>{this.tools=t.data,this.name="",this.url=""})},add(){rt.post("/openc3-api/tools",{data:{id:this.name,json:JSON.stringify({name:this.name,icon:this.icon,url:this.url,window:"NEW"})},params:{scope:"DEFAULT"}}).then(t=>{this.$notify.normal({title:`Added tool ${this.name}`}),this.update()}).catch(t=>{window.$cosmosNotify.serious({title:`Failed to add tool ${this.name}`,message:t.response.data})})},showTool(t){rt.get(`/openc3-api/tools/${t}`,{params:{scope:"DEFAULT"}}).then(o=>{this.tool_id=t,this.jsonContent=JSON.stringify(o.data,null," "),this.dialogTitle=t,this.showDialog=!0})},dialogCallback(t){if(this.showDialog=!1,t!==null){let o=JSON.parse(t),e="put",n=`/openc3-api/tools/${this.tool_id}`;o.name!==this.tool_id&&(e="post",n="/openc3-api/tools"),rt[e](n,{data:{json:t},params:{scope:"DEFAULT"}}).then(r=>{this.$notify.normal({title:`Modified tool ${o.name}`}),this.update()})}},deleteTool(t){this.$dialog.confirm(`Are you sure you want to remove: ${t}`,{okText:"Delete",cancelText:"Cancel"}).then(function(o){return rt.delete(`/openc3-api/tools/${t}`,{params:{scope:"DEFAULT"}})}).then(o=>{this.$notify.normal({title:`Removed tool ${t}`}),this.update()})}}};function Eo(t,o,e,n,r,i){const a=V("v-icon"),s=V("v-btn"),l=V("v-col"),c=V("v-text-field"),d=V("v-row"),h=V("v-list-item-title"),w=V("v-list-item"),m=V("v-divider"),T=V("v-list"),y=V("output-dialog");return ht(),Pt("div",null,[M(d,{"no-gutters":"",align:"center",style:{"padding-left":"10px"}},{default:R(()=>[M(l,{cols:"3"},{default:R(()=>[M(s,{block:"",color:"primary","data-test":"toolAdd",disabled:!r.name||!r.url||!r.icon,onClick:o[0]||(o[0]=D=>i.add())},{default:R(()=>[o[5]||(o[5]=kt(" Add ",-1)),M(a,{end:"",theme:"dark"},{default:R(()=>[kt(Kt(r.icon),1)]),_:1})]),_:1},8,["disabled"])]),_:1}),M(l,{cols:"3"},{default:R(()=>[M(c,{modelValue:r.icon,"onUpdate:modelValue":o[1]||(o[1]=D=>r.icon=D),label:"Tool Icon",class:"px-2"},null,8,["modelValue"])]),_:1}),M(l,{cols:"3"},{default:R(()=>[M(c,{modelValue:r.name,"onUpdate:modelValue":o[2]||(o[2]=D=>r.name=D),label:"Tool Name",class:"px-2"},null,8,["modelValue"])]),_:1}),M(l,{cols:"3",class:"px-2"},{default:R(()=>[M(c,{modelValue:r.url,"onUpdate:modelValue":o[3]||(o[3]=D=>r.url=D),label:"Tool Url"},null,8,["modelValue"])]),_:1})]),_:1}),o[6]||(o[6]=be("span",{class:"text-body1 pa-3"},"Drag and drop to reorder tools in the NavBar. Note: 'Base' and 'Admin' can't be reordered. A browser refresh is required to see the new tool order.",-1)),M(T,{id:"toollist",class:"list","data-test":"toolList"},{default:R(()=>[(ht(!0),Pt(ye,null,we(r.tools,(D,O)=>(ht(),Pt("div",{key:D},[M(w,{class:De({filter:D==="Base"||D==="Admin"}),"prepend-icon":"mdi-drag-horizontal"},{append:R(()=>[M(s,{icon:"mdi-eye",variant:"text","aria-label":"View Tool",onClick:$=>i.showTool(D)},null,8,["onClick"]),M(s,{icon:"mdi-delete",variant:"text","aria-label":"Delete Tool",onClick:$=>i.deleteTool(D)},null,8,["onClick"])]),default:R(()=>[M(h,null,{default:R(()=>[kt(Kt(D),1)]),_:2},1024)]),_:2},1032,["class"]),O<r.tools.length-1?(ht(),Gt(m,{key:O})):qt("",!0)]))),128))]),_:1}),r.showDialog?(ht(),Gt(y,{key:0,modelValue:r.showDialog,"onUpdate:modelValue":o[4]||(o[4]=D=>r.showDialog=D),content:r.jsonContent,type:"Tool",name:r.dialogTitle,onSubmit:i.dialogCallback},null,8,["modelValue","content","name","onSubmit"])):qt("",!0)])}const Co=ze("default",ve(Do,[["render",Eo],["__scopeId","data-v-4b2d1ed0"]]))})}}));
@@ -0,0 +1,4 @@
1
+ System.register(["./main-040488697a5f3eed5115.js","vue","vue-router","pinia","single-spa","vuetify"],(function(H,Ve){"use strict";var N,G,r,u,p,s,i,h,R,l,c,f,D,A,U,z;return{setters:[y=>{N=y.k,G=y.D},y=>{r=y.resolveComponent,u=y.openBlock,p=y.createElementBlock,s=y.createVNode,i=y.withCtx,h=y.createTextVNode,R=y.createBlock,l=y.createElementVNode,c=y.toDisplayString,f=y.createCommentVNode,D=y.Fragment,A=y.renderList,U=y.normalizeClass,z=y.mergeProps},null,null,null,null],execute:(function(){const y={downloading:"Downloading files…",enabling_dedup:"Enabling DEDUP…",ingesting:"Ingesting packets…",dedup_cooldown:"Waiting for DEDUP cooldown…",disabling_dedup:"Disabling DEDUP…"},Q={props:{modelValue:{type:Boolean,default:!1},context:{type:Object,required:!0}},emits:["update:modelValue","complete"],data(){return{loadingCandidates:!1,candidates:[],selectedKeys:[],targetVersion:"as_logged",bucketEnv:null,path:null,candidateHeaders:[{title:"File",key:"filename"},{title:"Key",key:"key"}],jobId:null,jobStatus:null,pollHandle:null,errorMessage:null,confirmCloseOpen:!1}},computed:{isRunning(){return this.jobStatus?["Queued","Running"].includes(this.jobStatus.state):!1},phaseLabel(){const a=this.jobStatus?.progress_phase;if(!a)return this.jobStatus?.state||"";if(a==="dedup_cooldown"){const e=this.cooldownRemaining;if(e!=null)return`Waiting for DEDUP cooldown (${e}s)…`}return y[a]||a},cooldownRemaining(){const a=this.jobStatus?.dedup_enabled_at,e=this.jobStatus?.dedup_cooldown_seconds;if(!a||!e)return null;const n=Date.now()/1e3,o=new Date(a).getTime()/1e3,t=Math.round(o+e-n);return Math.max(t,0)},progressPercent(){const a=this.jobStatus;return a?a.state==="Complete"?100:!a.progress_total||a.progress_total===0?0:Math.round(a.progress_current/a.progress_total*100):0}},watch:{modelValue(a){a&&this.fetchCandidates()}},mounted(){this.modelValue&&this.fetchCandidates()},beforeUnmount(){this.stopPolling()},methods:{close(){this.stopPolling();const a=this.jobStatus?.state==="Complete";this.resetState(),this.$emit("update:modelValue",!1),a&&this.$emit("complete")},attemptClose(){this.isRunning?this.confirmCloseOpen=!0:this.close()},confirmClose(){this.confirmCloseOpen=!1,this.close()},resetState(){this.candidates=[],this.selectedKeys=[],this.targetVersion="as_logged",this.bucketEnv=null,this.path=null,this.jobId=null,this.jobStatus=null,this.errorMessage=null,this.loadingCandidates=!1,this.confirmCloseOpen=!1},async fetchCandidates(){this.resetState(),this.loadingCandidates=!0;try{const a=await G.get("/openc3-api/storage/repair_candidates",{params:{scope:this.context.scope,target:this.context.target,packet:this.context.packet,cmd_or_tlm:this.context.cmdOrTlm,start_time:this.context.gap.startIso,end_time:this.context.gap.endIso}});this.candidates=a.data.files||[],this.bucketEnv=a.data.bucket,this.path=a.data.path,this.selectedKeys=this.candidates.map(e=>e.key)}catch(a){this.errorMessage=a.response?.data?.message||a.message}finally{this.loadingCandidates=!1}},async startReingest(){this.errorMessage=null;const a=this.selectedKeys.map(e=>this.path&&e.startsWith(this.path)?e.slice(this.path.length):e.split("/").pop());try{const e=await G.post("/openc3-api/storage/reingest",{data:{scope:this.context.scope,bucket:this.bucketEnv,path:this.path,files:a,target_version:this.targetVersion}});this.jobId=e.data.job_id,this.jobStatus={state:e.data.state},this.startPolling()}catch(e){this.errorMessage=e.response?.data?.message||e.message}},startPolling(){this.stopPolling(),this.pollHandle=setInterval(this.pollStatus,2e3),this.pollStatus()},stopPolling(){this.pollHandle&&(clearInterval(this.pollHandle),this.pollHandle=null)},async pollStatus(){if(this.jobId)try{const a=await G.get(`/openc3-api/storage/reingest/${this.jobId}`,{params:{scope:this.context.scope}});this.jobStatus=a.data,this.isRunning||this.stopPolling()}catch(a){this.errorMessage=a.response?.data?.message||a.message,this.stopPolling()}}}},F={key:0,class:"text-red monospace mb-4"},q={key:0,class:"d-flex align-center mb-4"},W={key:0,class:"text-medium-emphasis"},Y={class:"mb-2"},Z={class:"mt-4"},J={key:0},X={key:1},ee={key:2},te={class:"text-red"},ae={key:3},se={class:"text-orange"};function le(a,e,n,o,t,d){const b=r("v-card-title"),E=r("v-card-subtitle"),S=r("v-progress-circular"),L=r("v-data-table"),x=r("v-radio"),I=r("v-radio-group"),_=r("v-table"),V=r("v-progress-linear"),C=r("v-card-text"),g=r("v-spacer"),v=r("v-btn"),w=r("v-card-actions"),T=r("v-card"),B=r("v-dialog");return u(),R(B,{"model-value":n.modelValue,"max-width":"900",persistent:""},{default:i(()=>[s(T,null,{default:i(()=>[s(b,{class:"d-flex align-center"},{default:i(()=>[h(" Repair Gap: "+c(n.context.target)+" "+c(n.context.packet),1)]),_:1}),n.context.gap?(u(),R(E,{key:0},{default:i(()=>[h(c(n.context.gap.start)+" — "+c(n.context.gap.end)+" ("+c(n.context.gap.duration)+") ",1)]),_:1})):f("",!0),s(C,{style:{"max-height":"75vh","overflow-y":"auto"}},{default:i(()=>[t.errorMessage?(u(),p("div",F," Error: "+c(t.errorMessage),1)):f("",!0),t.jobId?t.jobStatus?(u(),p(D,{key:2},[s(_,{density:"compact",class:"monospace mb-4"},{default:i(()=>[l("tbody",null,[l("tr",null,[e[8]||(e[8]=l("td",{class:"font-weight-bold"},"Job",-1)),l("td",null,c(t.jobId),1)]),l("tr",null,[e[9]||(e[9]=l("td",{class:"font-weight-bold"},"State",-1)),l("td",null,c(t.jobStatus.state),1)]),l("tr",null,[e[10]||(e[10]=l("td",{class:"font-weight-bold"},"Phase",-1)),l("td",null,c(d.phaseLabel),1)]),t.jobStatus.target_version?(u(),p("tr",J,[e[11]||(e[11]=l("td",{class:"font-weight-bold"},"Target Version",-1)),l("td",null,c(t.jobStatus.target_version),1)])):f("",!0),t.jobStatus.packets_written!==void 0?(u(),p("tr",X,[e[12]||(e[12]=l("td",{class:"font-weight-bold"},"Packets Written",-1)),l("td",null,c(t.jobStatus.packets_written.toLocaleString()),1)])):f("",!0),t.jobStatus.error?(u(),p("tr",ee,[e[13]||(e[13]=l("td",{class:"font-weight-bold text-red"},"Error",-1)),l("td",te,c(t.jobStatus.error),1)])):f("",!0),t.jobStatus.warnings&&t.jobStatus.warnings.length?(u(),p("tr",ae,[e[14]||(e[14]=l("td",{class:"font-weight-bold text-orange"},"Warnings",-1)),l("td",se,[(u(!0),p(D,null,A(t.jobStatus.warnings,(M,K)=>(u(),p("div",{key:K},c(M),1))),128))])])):f("",!0)])]),_:1}),s(V,{"model-value":d.progressPercent,indeterminate:d.progressPercent===0&&d.isRunning,class:"mb-2"},null,8,["model-value","indeterminate"])],64)):f("",!0):(u(),p(D,{key:1},[t.loadingCandidates?(u(),p("div",q,[s(S,{indeterminate:"",size:"24",class:"mr-3"}),e[4]||(e[4]=h(" Searching bucket for raw log files that cover this gap… ",-1))])):(u(),p(D,{key:1},[t.candidates.length===0?(u(),p("div",W," No raw log files cover this gap window. Reingest is not available — the data may have been written from a source that skipped raw logging, or the logs have been deleted. ")):(u(),p(D,{key:1},[l("div",Y,c(t.candidates.length)+" raw log file(s) overlap this window. Select which to reingest: ",1),s(L,{modelValue:t.selectedKeys,"onUpdate:modelValue":e[0]||(e[0]=M=>t.selectedKeys=M),headers:t.candidateHeaders,items:t.candidates,"item-value":"key","show-select":"",class:"monospace","items-per-page":20,density:"compact","data-test":"repair-candidates"},null,8,["modelValue","headers","items"]),l("div",Z,[e[7]||(e[7]=l("div",{class:"text-subtitle-2 font-weight-bold mb-1"}," Target Definition Version ",-1)),s(I,{modelValue:t.targetVersion,"onUpdate:modelValue":e[1]||(e[1]=M=>t.targetVersion=M),"hide-details":"",density:"compact","data-test":"repair-version"},{default:i(()=>[s(x,{value:"as_logged","data-test":"repair-version-as-logged"},{label:i(()=>[...e[5]||(e[5]=[l("div",{style:{"padding-left":"10px"}},[l("div",null,"As logged (default)"),l("div",{class:"text-caption text-medium-emphasis"}," Decode each file with the cmd/tlm definition that was in effect when the data was originally logged. Safest for historical fidelity — preserves packet layouts as they existed at that time. "),l("div",{class:"text-caption text-medium-emphasis mt-1"}," If an item's type has changed since the log was written (e.g. STRING → FLOAT), QuestDB column types are kept as-is; historical values are cast to fit the current column, and any values that can't cast are stored as NULL. ")],-1)])]),_:1}),s(x,{value:"current","data-test":"repair-version-current"},{label:i(()=>[...e[6]||(e[6]=[l("div",{style:{"padding-left":"10px"}},[l("div",null,"Current"),l("div",{class:"text-caption text-medium-emphasis"}," Decode all files with the latest cmd/tlm definition. Choose this when the historical definition had a bug that you've since fixed, and you want the reingested data decoded with the corrected layout. ")],-1)])]),_:1})]),_:1},8,["modelValue"])])],64))],64))],64))]),_:1}),s(w,{class:"px-4 pb-4"},{default:i(()=>[s(g),t.jobId?f("",!0):(u(),R(v,{key:0,color:"warning",variant:"elevated",disabled:t.loadingCandidates||t.candidates.length===0||t.selectedKeys.length===0,"data-test":"repair-reingest",onClick:d.startReingest},{default:i(()=>[h(" Reingest "+c(t.selectedKeys.length),1)]),_:1},8,["disabled","onClick"])),s(v,{variant:"text","data-test":"repair-close",onClick:d.attemptClose},{default:i(()=>[...e[15]||(e[15]=[h(" Close ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1}),s(B,{modelValue:t.confirmCloseOpen,"onUpdate:modelValue":e[3]||(e[3]=M=>t.confirmCloseOpen=M),"max-width":"500",persistent:""},{default:i(()=>[s(T,null,{default:i(()=>[s(b,null,{default:i(()=>[...e[16]||(e[16]=[h("Reingest Still Running",-1)])]),_:1}),s(C,null,{default:i(()=>[...e[17]||(e[17]=[h(" The reingest job is still in progress. Closing this dialog will not stop the job, but you will lose visibility into its status. Are you sure you want to close? ",-1)])]),_:1}),s(w,{class:"px-4 pb-4"},{default:i(()=>[s(g),s(v,{variant:"text","data-test":"repair-close-cancel",onClick:e[2]||(e[2]=M=>t.confirmCloseOpen=!1)},{default:i(()=>[...e[18]||(e[18]=[h(" Keep Watching ",-1)])]),_:1}),s(v,{color:"warning",variant:"elevated","data-test":"repair-close-confirm",onClick:d.confirmClose},{default:i(()=>[...e[19]||(e[19]=[h(" Close Anyway ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["model-value"])}const ie=N(Q,[["render",le],["__scopeId","data-v-2ab87eb9"]]);async function P(a,e,n=3){for(let o=1;o<=n;o++)try{let t="/openc3-api/tsdb/exec";return e&&e!==0&&(t+=`?db_shard=${e}`),await G.post(t,{data:a,headers:{Accept:"application/json","Content-Type":"text/plain"}})}catch(t){const d=t.response?.data?.message||t.message||"";if((d.includes("PQconsumeInput")||d.includes("server closed the connection"))&&o<n){await new Promise(b=>setTimeout(b,1e3*o));continue}throw t}}const oe={components:{RepairGapDialog:ie},data(){return{metricsRows:[],metricsError:null,metricsLoading:!1,metricsGroupBy:[{key:"target",order:"asc"}],metricsHeaders:[{title:"Packet",key:"packet"},{title:"Table Name",key:"tableName"},{title:"Partition Count",key:"partitionCount"},{title:"Row Count",key:"rowCount"},{title:"Disk Size",key:"diskSize"},{title:"Actions",key:"actions",sortable:!1}],gapDialog:!1,gapDialogTitle:"",gapLoading:!1,gapProgress:0,gapError:null,gapSummary:null,gapGroupResults:null,gapHeaders:[{title:"Gap Start",key:"start"},{title:"Gap End",key:"end"},{title:"Duration",key:"duration"},{title:"Actions",key:"actions",sortable:!1,width:80}],repairDialog:!1,repairContext:null,gapSampleInterval:"1m",db_shard:0}},computed:{sections(){return[{title:"Telemetry",items:this.metricsRows.filter(a=>a.type==="TLM")},{title:"Commands",items:this.metricsRows.filter(a=>a.type==="CMD")}]}},mounted(){this.fetchMetrics()},methods:{groupRowCount(a){return a.reduce((e,n)=>e+Number((n.raw||n).rowCount||0),0)},groupDiskSize(a){return a.reduce((e,n)=>e+Number((n.raw||n).diskSize||0),0)},formatBytes(a){if(a===0)return"0 B";const e=["B","KB","MB","GB","TB"],n=1024,o=Math.floor(Math.log(a)/Math.log(n));return`${(a/Math.pow(n,o)).toFixed(o===0?0:1)} ${e[o]}`},fetchMetrics(){this.metricsError=null,this.metricsRows=[],this.metricsLoading=!0,P("SELECT tableName, partitionCount, rowCount, diskSize FROM table_storage;",this.db_shard).then(a=>{const e=a.data.columns;this.metricsRows=a.data.rows.map(n=>{const o={};e.forEach((d,b)=>{o[d]=n[b]});const t=(o.tableName||"").split("__");return o.type=t[1]||"",o.target=t[2]||"",o.packet=t[3]||"",o})}).catch(a=>{a.response&&a.response.data?this.metricsError=a.response.data.message:this.metricsError=a.message}).finally(()=>{this.metricsLoading=!1})},dropTable(a){return P(`DROP TABLE '${a}';`,this.db_shard)},deleteTable(a){let e=a.split("__")[2]||a,n=a.split("__")[3]||a;this.$dialog.confirm(`Are you sure you want to drop table: ${a}? This removes ALL decommutated data for ${e} ${n}!`,{okText:"Delete",cancelText:"Cancel"}).then(()=>{this.dropTable(a).then(()=>{this.metricsRows=this.metricsRows.filter(o=>o.tableName!==a)}).catch(o=>{o.response&&o.response.data?this.metricsError=o.response.data.message:this.metricsError=o.message})})},deleteGroup(a){const e=a.map(o=>(o.raw||o).tableName);let n=e[0].split("__")[2];this.$dialog.confirm(`Are you sure you want to drop ${e.length} tables? This removes ALL decommutated data for ${n}!
2
+
3
+ ${e.join(`
4
+ `)}`,{okText:"Delete",cancelText:"Cancel"}).then(()=>{const o=new Set(e);Promise.all(e.map(t=>this.dropTable(t))).then(()=>{this.metricsRows=this.metricsRows.filter(t=>!o.has(t.tableName))}).catch(t=>{t.response&&t.response.data?this.metricsError=t.response.data.message:this.metricsError=t.message})})},formatDuration(a){const e=Math.floor(a/1e3),n=Math.floor(e/86400),o=Math.floor(e%86400/3600),t=Math.floor(e%3600/60),d=[];return n&&d.push(`${n}d`),o&&d.push(`${o}h`),t&&d.push(`${t}m`),d.length||d.push(`${e}s`),d.join(" ")},formatTimestamp(a){return new Date(a).toISOString().replace("T"," ").replace(".000Z","Z")},parseSampleIntervalMs(a){const e=String(a||"").trim().match(/^(\d+)\s*([smhd])$/i);return e?Number.parseInt(e[1],10)*{s:1e3,m:6e4,h:36e5,d:864e5}[e[2].toLowerCase()]:null},async fetchTableGaps(a){const e=(this.gapSampleInterval||"1m").trim(),n=this.parseSampleIntervalMs(e);if(!n)throw new Error(`Invalid sample interval '${e}'. Use a number followed by s, m, h, or d (e.g. 5s, 1m, 2h).`);const o=await P(`SELECT first(PACKET_TIMESECONDS) as first_ts, last(PACKET_TIMESECONDS) as last_ts FROM '${a}';`,this.db_shard),t=o.data.columns,d=o.data.rows[0],b={};t.forEach((g,v)=>{b[g]=d[v]});const E=b.first_ts,S=b.last_ts,L=new Date(S)-new Date(E),x=await P(`(SELECT PACKET_TIMESECONDS, count() as cnt FROM '${a}' SAMPLE BY ${e} FILL(NULL)) WHERE cnt IS NULL`,this.db_shard),I=x.data.columns,_=x.data.rows.map(g=>{const v={};return I.forEach((w,T)=>{v[w]=g[T]}),v}),V=[],C=(g,v)=>{const w=new Date(g).getTime(),T=new Date(v).getTime()+n;return{start:this.formatTimestamp(g),end:this.formatTimestamp(new Date(T)),duration:this.formatDuration(T-w),startIso:new Date(w).toISOString(),endIso:new Date(T).toISOString()}};if(_.length>0){let g=_[0].PACKET_TIMESECONDS,v=g;for(let w=1;w<_.length;w++){const T=new Date(v);new Date(_[w].PACKET_TIMESECONDS)-T>n&&(V.push(C(g,v)),g=_[w].PACKET_TIMESECONDS),v=_[w].PACKET_TIMESECONDS}V.push(C(g,v))}return{firstTs:this.formatTimestamp(E),lastTs:this.formatTimestamp(S),timeSpan:this.formatDuration(L),gaps:V}},async analyzeDataGap(a){this.gapDialogTitle=a,this.gapDialog=!0,this.gapLoading=!0,this.gapProgress=0,this.gapError=null,this.gapSummary=null,this.gapGroupResults=null;try{this.gapSummary=await this.fetchTableGaps(a)}catch(e){this.gapError=e.response?.data?.message||e.message}finally{this.gapLoading=!1}},async analyzeGroupDataGap(a){const e=a.map(o=>(o.raw||o).tableName),n=(a[0].raw||a[0]).target;this.gapDialogTitle=`${n} (${e.length} tables)`,this.gapDialog=!0,this.gapLoading=!0,this.gapProgress=0,this.gapError=null,this.gapSummary=null,this.gapGroupResults=null;try{const o=[];for(let t=0;t<e.length;t++){this.gapProgress=Math.round((t+1)/e.length*100);try{const d=await this.fetchTableGaps(e[t]);if(d.gaps.length>0){const b=e[t].split("__");o.push({tableName:e[t],packet:b[3]||e[t],...d})}}catch{}}this.gapGroupResults={totalTables:e.length,withGaps:o}}catch(o){this.gapError=o.response?.data?.message||o.message}finally{this.gapLoading=!1}},parseTableName(a){const e=a.split("__");return e.length<4?null:{scope:e[0],cmdOrTlm:e[1],target:e[2],packet:e[3]}},isTlmTable(a){return this.parseTableName(a)?.cmdOrTlm==="TLM"},openRepair(a,e){const n=this.parseTableName(e);n&&(this.repairContext={tableName:e,...n,gap:a},this.repairDialog=!0)},onRepairComplete(){this.gapGroupResults||this.gapDialogTitle&&this.analyzeDataGap(this.gapDialogTitle)}}},re={key:0,class:"mt-2 text-red monospace"},ne={key:0},de=["colspan"],ce={class:"font-weight-bold"},ue={class:"ml-4 text-medium-emphasis"},pe={key:1,class:"text-red monospace mb-4"},me={key:0},he={key:1,class:"text-medium-emphasis"},ge={key:0,class:"text-medium-emphasis"},fe={key:1},be={class:"mb-4 text-medium-emphasis"},ye={class:"text-subtitle-1 font-weight-bold mb-1"},ve={class:"text-medium-emphasis monospace mb-2"};function we(a,e,n,o,t,d){const b=r("v-card-title"),E=r("v-card-text"),S=r("v-btn"),L=r("v-number-input"),x=r("v-spacer"),I=r("v-text-field"),_=r("v-card-actions"),V=r("v-icon"),C=r("v-list-item"),g=r("v-list"),v=r("v-menu"),w=r("v-data-table"),T=r("v-card"),B=r("v-progress-linear"),M=r("v-table"),K=r("v-dialog"),Ee=r("repair-gap-dialog");return u(),p("div",null,[s(T,null,{default:i(()=>[s(b,null,{default:i(()=>[...e[5]||(e[5]=[h(" QuestDB Table Storage Metrics ",-1)])]),_:1}),s(E,null,{default:i(()=>[t.metricsError?(u(),p("div",re," Error: "+c(t.metricsError),1)):f("",!0)]),_:1}),s(_,{class:"px-2"},{default:i(()=>[s(S,{loading:t.metricsLoading,color:"success",variant:"text","data-test":"tsdb-metrics-refresh",onClick:d.fetchMetrics},{default:i(()=>[...e[6]||(e[6]=[h(" Refresh ",-1)])]),_:1},8,["loading","onClick"]),s(L,{modelValue:t.db_shard,"onUpdate:modelValue":e[0]||(e[0]=m=>t.db_shard=m),"control-variant":"stacked",min:0,label:"DB Shard",hint:"DB Shard is N/A in Core","hide-details":"",density:"compact",style:{"max-width":"100px"},class:"ml-4"},null,8,["modelValue"]),s(x),s(I,{modelValue:t.gapSampleInterval,"onUpdate:modelValue":e[1]||(e[1]=m=>t.gapSampleInterval=m),label:"Data Gap Sample Interval",hint:"QuestDB SAMPLE BY duration (e.g. 5s, 1m, 10m, 1h)","persistent-hint":"",density:"compact","hide-details":"auto",style:{"max-width":"260px"},"data-test":"gap-sample-interval"},null,8,["modelValue"])]),_:1}),t.metricsRows.length?(u(),p("div",ne,[(u(!0),p(D,null,A(d.sections,(m,O)=>(u(),p(D,{key:m.title},[l("h3",{class:U(["text-h6 ml-2",O===0?"mt-4":"mt-6"])},c(m.title),3),s(w,{headers:t.metricsHeaders,items:m.items,"group-by":t.metricsGroupBy,class:"monospace","items-per-page":50,density:"compact"},{"group-header":i(({item:k,columns:j,toggleGroup:Re,isGroupOpen:Le})=>[l("tr",null,[l("td",{colspan:j.length-1},[s(S,{icon:Le(k)?"$expand":"$next",size:"small",variant:"text",onClick:$=>Re(k)},null,8,["icon","onClick"]),l("span",ce,c(k.value),1),l("span",ue," Packets: "+c(k.items.length)+" — Rows: "+c(d.groupRowCount(k.items).toLocaleString())+" — Disk: "+c(d.formatBytes(d.groupDiskSize(k.items))),1)],8,de),l("td",null,[s(v,null,{activator:i(({props:$})=>[s(V,z({ref_for:!0},$,{icon:"mdi-dots-horizontal","data-test":"group-actions"}),null,16)]),default:i(()=>[s(g,null,{default:i(()=>[s(C,{title:"Analyze Data Gaps","prepend-icon":"mdi-chart-timeline-variant-shimmer","data-test":"group-analyze-gap",onClick:$=>d.analyzeGroupDataGap(k.items)},null,8,["onClick"]),s(C,{title:"Delete All","prepend-icon":"mdi-delete","data-test":"group-delete",onClick:$=>d.deleteGroup(k.items)},null,8,["onClick"])]),_:2},1024)]),_:2},1024)])])]),"item.diskSize":i(({item:k})=>[h(c(d.formatBytes(k.diskSize)),1)]),"item.rowCount":i(({item:k})=>[h(c(Number(k.rowCount).toLocaleString()),1)]),"item.actions":i(({item:k})=>[s(v,null,{activator:i(({props:j})=>[s(V,z({ref_for:!0},j,{icon:"mdi-dots-horizontal","data-test":"row-actions"}),null,16)]),default:i(()=>[s(g,null,{default:i(()=>[s(C,{title:"Analyze Data Gap","prepend-icon":"mdi-chart-timeline-variant-shimmer","data-test":"row-analyze-gap",onClick:j=>d.analyzeDataGap(k.tableName)},null,8,["onClick"]),s(C,{title:"Delete","prepend-icon":"mdi-delete","data-test":"row-delete",onClick:j=>d.deleteTable(k.tableName)},null,8,["onClick"])]),_:2},1024)]),_:2},1024)]),_:1},8,["headers","items","group-by"])],64))),128))])):f("",!0)]),_:1}),s(K,{modelValue:t.gapDialog,"onUpdate:modelValue":e[3]||(e[3]=m=>t.gapDialog=m),"max-width":"900"},{default:i(()=>[s(T,null,{default:i(()=>[s(b,{class:"d-flex align-center"},{default:i(()=>[h(" Data Gap Analysis: "+c(t.gapDialogTitle)+" ",1),s(x),s(S,{icon:"mdi-close",variant:"text",onClick:e[2]||(e[2]=m=>t.gapDialog=!1)})]),_:1}),s(E,{style:{"max-height":"80vh","overflow-y":"auto"}},{default:i(()=>[t.gapLoading?(u(),R(B,{key:0,"model-value":t.gapProgress,indeterminate:t.gapProgress===0,class:"mb-4"},null,8,["model-value","indeterminate"])):f("",!0),t.gapError?(u(),p("div",pe," Error: "+c(t.gapError),1)):f("",!0),!t.gapLoading&&!t.gapError&&t.gapSummary?(u(),p(D,{key:2},[s(M,{density:"compact",class:"monospace mb-4"},{default:i(()=>[l("tbody",null,[l("tr",null,[e[7]||(e[7]=l("td",{class:"font-weight-bold"},"First Record",-1)),l("td",null,c(t.gapSummary.firstTs),1)]),l("tr",null,[e[8]||(e[8]=l("td",{class:"font-weight-bold"},"Last Record",-1)),l("td",null,c(t.gapSummary.lastTs),1)]),l("tr",null,[e[9]||(e[9]=l("td",{class:"font-weight-bold"},"Total Time Span",-1)),l("td",null,c(t.gapSummary.timeSpan),1)]),l("tr",null,[e[10]||(e[10]=l("td",{class:"font-weight-bold"},"Gaps Found",-1)),l("td",null,c(t.gapSummary.gaps.length),1)])])]),_:1}),t.gapSummary.gaps.length?(u(),p("div",me,[e[11]||(e[11]=l("h4",{class:"text-subtitle-1 font-weight-bold mb-2"}," Data Gaps (periods with no data) ",-1)),s(w,{headers:t.gapHeaders,items:t.gapSummary.gaps,class:"monospace","items-per-page":20,density:"compact"},{"item.actions":i(({item:m})=>[d.isTlmTable(t.gapDialogTitle)?(u(),R(S,{key:0,icon:"mdi-wrench",size:"small",variant:"text","data-test":"gap-repair",title:"Repair (reingest raw logs)",onClick:O=>d.openRepair(m,t.gapDialogTitle)},null,8,["onClick"])):f("",!0)]),_:1},8,["headers","items"])])):(u(),p("div",he," No data gaps detected (sampled at "+c(t.gapSampleInterval)+" intervals). ",1))],64)):f("",!0),!t.gapLoading&&!t.gapError&&t.gapGroupResults?(u(),p(D,{key:3},[t.gapGroupResults.withGaps.length===0?(u(),p("div",ge," No data gaps detected across "+c(t.gapGroupResults.totalTables)+" tables (sampled at "+c(t.gapSampleInterval)+" intervals). ",1)):(u(),p("div",fe,[l("div",be,c(t.gapGroupResults.withGaps.length)+" of "+c(t.gapGroupResults.totalTables)+" tables have data gaps. ",1),(u(!0),p(D,null,A(t.gapGroupResults.withGaps,m=>(u(),p("div",{key:m.tableName,class:"mb-6"},[l("h4",ye,c(m.packet),1),l("div",ve,c(m.firstTs)+" to "+c(m.lastTs)+" ("+c(m.timeSpan)+") — "+c(m.gaps.length)+" gap(s) ",1),s(w,{headers:t.gapHeaders,items:m.gaps,class:"monospace","items-per-page":10,density:"compact"},{"item.actions":i(({item:O})=>[d.isTlmTable(m.tableName)?(u(),R(S,{key:0,icon:"mdi-wrench",size:"small",variant:"text","data-test":"gap-repair",title:"Repair (reingest raw logs)",onClick:k=>d.openRepair(O,m.tableName)},null,8,["onClick"])):f("",!0)]),_:2},1032,["headers","items"])]))),128))]))],64)):f("",!0)]),_:1})]),_:1})]),_:1},8,["modelValue"]),t.repairContext?(u(),R(Ee,{key:0,modelValue:t.repairDialog,"onUpdate:modelValue":e[4]||(e[4]=m=>t.repairDialog=m),context:t.repairContext,onComplete:d.onRepairComplete},null,8,["modelValue","context","onComplete"])):f("",!0)])}const _e=N(oe,[["render",we],["__scopeId","data-v-97b64cc5"]]),ke={data(){return{sqlText:"",db_shard:0,columns:[],rows:[],errorMessage:null,loading:!1}},computed:{tableHeaders(){return this.columns.map(a=>({title:a,key:a}))}},methods:{commandKeydown(a){(a.metaKey||a.ctrlKey)&&a.key==="Enter"&&this.executeQuery()},executeQuery(){this.errorMessage=null,this.columns=[],this.rows=[],this.loading=!0,P(this.sqlText,this.db_shard).then(a=>{this.columns=a.data.columns,this.rows=a.data.rows.map(e=>{const n={};return this.columns.forEach((o,t)=>{n[o]=e[t]}),n})}).catch(a=>{a.response&&a.response.data?this.errorMessage=a.response.data.message:this.errorMessage=a.message}).finally(()=>{this.loading=!1})}}},Se={key:0,class:"mt-2 text-red monospace"};function Te(a,e,n,o,t,d){const b=r("v-card-title"),E=r("v-card-subtitle"),S=r("v-textarea"),L=r("v-card-text"),x=r("v-btn"),I=r("v-number-input"),_=r("v-card-actions"),V=r("v-data-table"),C=r("v-card");return u(),R(C,null,{default:i(()=>[s(b,null,{default:i(()=>[...e[2]||(e[2]=[h(" Send SQL Queries to QuestDB ",-1)])]),_:1}),s(E,null,{default:i(()=>[...e[3]||(e[3]=[h(" THIS IS DANGEROUS! This allows you to interact directly with the underlying QuestDB time series database, making it easy to modify or delete data. ",-1),l("br",null,null,-1),l("br",null,null,-1),h(" Enter SQL queries like: ",-1),l("code",null," SELECT * FROM DEFAULT__TLM__INST__HEALTH_STATUS LIMIT 10 ",-1),h(" or ",-1),l("code",null,"SHOW TABLES",-1)])]),_:1}),s(L,{class:"pb-0 ml-2"},{default:i(()=>[s(S,{modelValue:t.sqlText,"onUpdate:modelValue":e[0]||(e[0]=g=>t.sqlText=g),"hide-details":"",label:"SQL query",class:"monospace",rows:"3",onKeydown:d.commandKeydown},null,8,["modelValue","onKeydown"]),t.errorMessage?(u(),p("div",Se," Error: "+c(t.errorMessage),1)):f("",!0)]),_:1}),s(_,{class:"px-2"},{default:i(()=>[s(x,{disabled:!t.sqlText.length,loading:t.loading,color:"success",variant:"text","data-test":"tsdb-execute",onClick:d.executeQuery},{default:i(()=>[...e[4]||(e[4]=[h(" Execute ",-1)])]),_:1},8,["disabled","loading","onClick"]),s(I,{modelValue:t.db_shard,"onUpdate:modelValue":e[1]||(e[1]=g=>t.db_shard=g),"control-variant":"stacked",min:0,label:"DB Shard","hide-details":"",density:"compact",style:{"max-width":"100px"},class:"ml-4"},null,8,["modelValue"])]),_:1}),t.columns.length?(u(),R(V,{key:0,headers:d.tableHeaders,items:t.rows,class:"monospace","items-per-page":50,density:"compact"},null,8,["headers","items"])):f("",!0)]),_:1})}const xe=N(ke,[["render",Te],["__scopeId","data-v-cb31f0ce"]]),Ce={components:{TsdbMetrics:_e,TsdbQueries:xe},data(){return{activeTab:"metrics"}}};function De(a,e,n,o,t,d){const b=r("v-tab"),E=r("v-tabs"),S=r("tsdb-metrics"),L=r("v-window-item"),x=r("tsdb-queries"),I=r("v-window");return u(),p("div",null,[s(E,{modelValue:t.activeTab,"onUpdate:modelValue":e[0]||(e[0]=_=>t.activeTab=_)},{default:i(()=>[s(b,{value:"metrics","data-test":"tsdb-metrics-tab"},{default:i(()=>[...e[2]||(e[2]=[h("Metrics",-1)])]),_:1}),s(b,{value:"queries","data-test":"tsdb-queries-tab"},{default:i(()=>[...e[3]||(e[3]=[h("Queries",-1)])]),_:1})]),_:1},8,["modelValue"]),s(I,{modelValue:t.activeTab,"onUpdate:modelValue":e[1]||(e[1]=_=>t.activeTab=_)},{default:i(()=>[s(L,{value:"metrics"},{default:i(()=>[s(S)]),_:1}),s(L,{value:"queries"},{default:i(()=>[s(x)]),_:1})]),_:1},8,["modelValue"])])}const Me=H("default",N(Ce,[["render",De]]))})}}));