This commit is contained in:
Silent YANG 2024-02-08 18:38:30 +08:00
parent 27ed51dba3
commit 205975f7d4
32 changed files with 1 additions and 799 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1 +0,0 @@
import{d as x,c as q,b3 as R,C as i,D as m,G as s,aI as e,aH as n,aK as D,aJ as E,aE as j,aN as r,b4 as z,f as A,r as G,b5 as H,b6 as J,b7 as K,b8 as Q,b9 as T,u as C,aM as f,aY as W,ba as Y,bb as Z,aZ as O,bc as X,bd as ee}from"./arco.beabb834.js";import{F as oe}from"./index.a6934ed4.js";import{v as V,_ as k,u as se,I as ae,a as ne}from"./index.4f271108.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{f as te,g as re}from"./vue.30c84055.js";import{u as le}from"./loading.04079284.js";import"./chart.83b8c11b.js";const S=""+new URL("login-banner.426fb77f.png",import.meta.url).href,ce={class:"banner"},ie={class:"banner-inner"},de={class:"carousel-title"},_e={class:"carousel-sub-title"},ue=["src"],me=x({__name:"banner",setup(c){const{t}=V.exports.useI18n(),g=q(()=>[{slogan:t("login.banner.slogan1"),subSlogan:t("login.banner.subSlogan1"),image:S},{slogan:t("login.banner.slogan2"),subSlogan:t("login.banner.subSlogan2"),image:S},{slogan:t("login.banner.slogan3"),subSlogan:t("login.banner.subSlogan3"),image:S}]);return(b,v)=>{const p=z,h=R;return i(),m("div",ce,[s("div",ie,[e(h,{class:"carousel","animation-name":"fade"},{default:n(()=>[(i(!0),m(D,null,E(g.value,a=>(i(),j(p,{key:a.slogan},{default:n(()=>[(i(),m("div",{key:a.slogan,class:"carousel-item"},[s("div",de,r(a.slogan),1),s("div",_e,r(a.subSlogan),1),s("img",{class:"carousel-image",src:a.image},null,8,ue)]))]),_:2},1024))),128))]),_:1})])])}}});const ge=k(me,[["__scopeId","data-v-741ef175"]]),pe={class:"login-form-wrapper"},fe={class:"login-form-title"},be={class:"login-form-sub-title"},ve={class:"login-form-error-msg"},he={class:"login-form-password-actions"},we=x({__name:"login-form",setup(c){const t=te(),{t:g}=V.exports.useI18n(),b=A(""),{loading:v,setLoading:p}=le(),h=se(),a=re("login-config",{rememberPassword:!0,username:"admin",password:"admin"}),d=G({username:a.value.username,password:a.value.password}),F=async({errors:o,values:l})=>{if(!v.value&&!o){p(!0);try{await h.login(l);const{redirect:_,...w}=t.currentRoute.value.query;t.push({name:_||"Workplace",query:{...w}}),W.success(g("login.form.login.success"));const{rememberPassword:u}=a.value,{username:y,password:$}=l;a.value.username=u?y:"",a.value.password=u?$:""}catch(_){b.value=_.message}finally{p(!1)}}},L=o=>{a.value.rememberPassword=o};return(o,l)=>{const _=ae,w=H,u=Y,y=ne,$=Z,B=J,N=K,P=O,M=Q,U=T;return i(),m("div",pe,[s("div",fe,r(o.$t("login.form.title")),1),s("div",be,r(o.$t("login.form.title")),1),s("div",ve,r(b.value),1),e(U,{ref:"loginForm",model:d,class:"login-form",layout:"vertical",onSubmit:F},{default:n(()=>[e(u,{field:"username",rules:[{required:!0,message:o.$t("login.form.userName.errMsg")}],"validate-trigger":["change","blur"],"hide-label":""},{default:n(()=>[e(w,{modelValue:d.username,"onUpdate:modelValue":l[0]||(l[0]=I=>d.username=I),placeholder:o.$t("login.form.userName.placeholder")},{prefix:n(()=>[e(_)]),_:1},8,["modelValue","placeholder"])]),_:1},8,["rules"]),e(u,{field:"password",rules:[{required:!0,message:o.$t("login.form.password.errMsg")}],"validate-trigger":["change","blur"],"hide-label":""},{default:n(()=>[e($,{modelValue:d.password,"onUpdate:modelValue":l[1]||(l[1]=I=>d.password=I),placeholder:o.$t("login.form.password.placeholder"),"allow-clear":""},{prefix:n(()=>[e(y)]),_:1},8,["modelValue","placeholder"])]),_:1},8,["rules"]),e(M,{size:16,direction:"vertical"},{default:n(()=>[s("div",he,[e(B,{checked:"rememberPassword","model-value":C(a).rememberPassword,onChange:L},{default:n(()=>[f(r(o.$t("login.form.rememberPassword")),1)]),_:1},8,["model-value","onChange"]),e(N,null,{default:n(()=>[f(r(o.$t("login.form.forgetPassword")),1)]),_:1})]),e(P,{type:"primary","html-type":"submit",long:"",loading:C(v)},{default:n(()=>[f(r(o.$t("login.form.login")),1)]),_:1},8,["loading"]),e(P,{type:"text",long:"",class:"login-form-register-btn"},{default:n(()=>[f(r(o.$t("login.form.register")),1)]),_:1})]),_:1})]),_:1},8,["model"])])}}});const ye=k(we,[["__scopeId","data-v-12db3177"]]),$e=c=>(X("data-v-24cebde1"),c=c(),ee(),c),Ie={class:"container"},Se=$e(()=>s("div",{class:"logo"},[s("img",{alt:"logo",src:"//p3-armor.byteimg.com/tos-cn-i-49unhts6dw/dfdba5317c0c20ce20e64fac803d52bc.svg~tplv-49unhts6dw-image.image"}),s("div",{class:"logo-text"},"Arco Design Pro")],-1)),xe={class:"content"},ke={class:"content-inner"},Pe={class:"footer"},Ce=x({__name:"index",setup(c){return(t,g)=>(i(),m("div",Ie,[Se,e(ge),s("div",xe,[s("div",ke,[e(ye)]),s("div",Pe,[e(oe)])])]))}});const je=k(Ce,[["__scopeId","data-v-24cebde1"]]);export{je as default};

Binary file not shown.

View File

@ -1 +0,0 @@
import{e as E,q as h,_ as v}from"./index.4f271108.js";/* empty css *//* empty css *//* empty css *//* empty css */import{d as D,r as k,bB as C,bC as A,C as x,D as y,aI as a,aH as _,aM as B,G as H,aZ as T,b8 as R,bD as K,bM as M,n as P}from"./arco.beabb834.js";import{e as S,f as I,g as N}from"./serial.b70f48dc.js";import"./chart.83b8c11b.js";import"./vue.30c84055.js";const U={class:"container"},V=["innerHTML"],$={name:"Chi"},L=D({...$,setup(q){const n=E(),i=k({status:"\u70B9\u51FB\u5199\u5165\u6309\u94AE\u5199\u5165\u5B57\u5E93\u5230\u8BBE\u5907<br/><br/>",eepromType:""}),g=async(e=0,t)=>{var c;await S(n.connectPort);for(let u=e;u<t.length+e;u+=128)await I(n.connectPort,u,t.slice(u-e,u-e+128),128,(c=n.configuration)==null?void 0:c.uart),i.status=i.status+"\u5199\u5165\u8FDB\u5EA6\uFF1A"+((u-e)/t.length*100).toFixed(1)+"%<br/>",P(()=>{const o=document==null?void 0:document.getElementById("statusArea");o&&(o.scrollTop=o==null?void 0:o.scrollHeight)});i.status=i.status+"\u5199\u5165\u8FDB\u5EA6\uFF1A100.0%<br/>",await N(n.connectPort)},w=async(e=1)=>{var c,u,o,p,F,m,b;if(n.connectState!=!0){alert("\u8BF7\u5148\u8FDE\u63A5\u624B\u53F0\uFF01");return}if(((c=n.configuration)==null?void 0:c.uart)=="official"){alert("\u56FA\u4EF6\u7248\u672C\u4E0D\u5339\u914D");return}if(e==1&&((u=n.configuration)==null?void 0:u.charset)!="losehu"||e==1&&((o=n.configuration)==null?void 0:o.K)!=!0){alert("\u56FA\u4EF6\u7248\u672C\u4E0D\u5339\u914D");return}if(e==2&&((p=n.configuration)==null?void 0:p.charset)!="gb2312"||e==2&&((F=n.configuration)==null?void 0:F.K)!=!0){alert("\u56FA\u4EF6\u7248\u672C\u4E0D\u5339\u914D");return}if(e==3&&((m=n.configuration)==null?void 0:m.charset)!="gb2312"||e==3&&((b=n.configuration)==null?void 0:b.H)!=!0){alert("\u56FA\u4EF6\u7248\u672C\u4E0D\u5339\u914D");return}i.status=i.status+"\u6B63\u5728\u4E0B\u8F7D\u5B57\u5E93...<br />";let t;if(e==1){t=await fetch("/old_font.bin");const r=t.body.getReader(),s=[];for(;;){const{done:d,value:f}=await r.read();if(d)break;s.push(...f)}const l=new Uint8Array(s);await g(8192,l);return}if(e==2){t=await fetch("/new_font_k.bin");const r=t.body.getReader(),s=[];for(;;){const{done:d,value:f}=await r.read();if(d)break;s.push(...f)}const l=new Uint8Array(s);await g(9344,l);return}if(e==3){t=await fetch("/new_font_h.bin");const r=t.body.getReader(),s=[];for(;;){const{done:d,value:f}=await r.read();if(d)break;s.push(...f)}const l=new Uint8Array(s);await g(9344,l);return}};return(e,t)=>{const c=h,u=T,o=R,p=C,F=A,m=K,b=M;return x(),y("div",U,[a(c,{items:["\u5C0F\u5DE5\u5177","\u5B57\u5E93\u5199\u5165"]}),a(b,{gutter:20,align:"stretch"},{default:_(()=>[a(m,{span:24},{default:_(()=>[a(F,{class:"general-card",title:"\u5B57\u5E93\u5199\u5165"},{default:_(()=>[a(o,null,{default:_(()=>[a(u,{onClick:t[0]||(t[0]=r=>w(1))},{default:_(()=>[B("\u5199\u5165 117 \u5B57\u5E93\uFF08K\uFF09")]),_:1}),a(u,{onClick:t[1]||(t[1]=r=>w(2))},{default:_(()=>[B("\u5199\u5165 118+ \u5B57\u5E93\uFF08K\uFF09")]),_:1}),a(u,{onClick:t[2]||(t[2]=r=>w(3))},{default:_(()=>[B("\u5199\u5165 118+ \u5B57\u5E93\uFF08H\uFF09")]),_:1})]),_:1}),a(p),H("div",{id:"statusArea",style:{height:"20em","background-color":"azure",color:"silver",overflow:"auto",padding:"20px"},innerHTML:i.status},null,8,V)]),_:1})]),_:1})]),_:1})])}}});const Y=v(L,[["__scopeId","data-v-c103becb"]]);export{Y as default};

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1 +0,0 @@
import{e as g,q as B,_ as E}from"./index.4f271108.js";/* empty css *//* empty css *//* empty css *//* empty css */import{d as w,r as A,bB as k,bC as v,C,D as x,aI as s,aH as c,aM as p,aN as D,G as N,n as m,aZ as P,b8 as S,bD as T,bM as H}from"./arco.beabb834.js";import{d as F,c as I,r as _,i as M,j as b,l as V,n as j}from"./serial.b70f48dc.js";import"./chart.83b8c11b.js";import"./vue.30c84055.js";const L={class:"container"},R=["innerHTML"],U={name:"Flash"},q=w({...U,setup(z){const u=g(),t=A({status:"\u70B9\u51FB\u66F4\u65B0\u6309\u94AE\u66F4\u65B0\u56FA\u4EF6\u5230\u8BBE\u5907<br/><br/>",binaryFile:void 0,binaryName:""}),f=()=>{const a=document.createElement("input");a.type="file",a.onchange=async()=>{const r=new Blob([a.files[0]],{type:"application/octet-stream"}),i=new Uint8Array(await r.arrayBuffer());t.binaryFile=i,t.binaryName=a.files[0].name},a.click()},y=async()=>{if(!t.binaryFile){alert("\u8BF7\u9009\u62E9\u6587\u4EF6");return}u.connectPort&&await F(u.connectPort);let a=await I();await _(a,24,1e3);const r=M(t.binaryFile),i=new Uint8Array([48,5,r.length,0,...r]);await b(a,i),await _(a,24);const o=V(t.binaryFile);if(o.length>61439)throw new Error("Last resort boundary check failed. Whoever touched the code is an idiot.");for(let e=0;e<o.length;e+=256){const l=o.slice(e,e+256),d=j(l,e,o.length);try{await b(a,d),await _(a,26)}catch(n){return console.log("Flash command rejected. Aborting."),Promise.reject(n)}t.status=t.status+`\u66F4\u65B0\u8FDB\u5EA6 ${(e/o.length*100).toFixed(1)}%<br/>`,m(()=>{const n=document==null?void 0:document.getElementById("statusArea");n&&(n.scrollTop=n==null?void 0:n.scrollHeight)})}t.status=t.status+"\u66F4\u65B0\u8FDB\u5EA6 100.0%<br/>",t.status=t.status+"\u56FA\u4EF6\u66F4\u65B0\u6210\u529F",m(()=>{const e=document==null?void 0:document.getElementById("statusArea");e&&(e.scrollTop=e==null?void 0:e.scrollHeight)}),F(a),u.updateSettings({connectState:!1})};return(a,r)=>{const i=B,o=P,e=S,l=k,d=v,n=T,h=H;return C(),x("div",L,[s(i,{items:["\u5C0F\u5DE5\u5177","\u56FA\u4EF6\u5347\u7EA7"]}),s(h,{gutter:20,align:"stretch"},{default:c(()=>[s(n,{span:24},{default:c(()=>[s(d,{class:"general-card",title:"\u56FA\u4EF6\u5347\u7EA7"},{default:c(()=>[s(e,null,{default:c(()=>[s(o,{onClick:f},{default:c(()=>[p(D(t.binaryFile?t.binaryName:"\u9009\u62E9\u56FA\u4EF6"),1)]),_:1}),s(o,{type:"primary",disabled:!t.binaryFile,onClick:y},{default:c(()=>[p("\u66F4\u65B0")]),_:1},8,["disabled"])]),_:1}),s(l),N("div",{id:"statusArea",style:{height:"20em","background-color":"azure",color:"silver",overflow:"auto",padding:"20px"},innerHTML:t.status},null,8,R)]),_:1})]),_:1})]),_:1})])}}});const Y=E(q,[["__scopeId","data-v-dacccb62"]]);export{Y as default};

Binary file not shown.

View File

@ -1 +0,0 @@
import{_ as n}from"./index.4f271108.js";/* empty css */import{d as _,bA as c,aZ as r,D as u,aI as e,G as p,aH as i,C as d,aM as l}from"./arco.beabb834.js";import{f as m}from"./vue.30c84055.js";import"./chart.83b8c11b.js";const f={class:"content"},x={class:"operation-row"},b=_({__name:"index",setup(k){const t=m(),o=()=>{t.push({name:"Workplace"})};return(h,v)=>{const s=c,a=r;return d(),u("div",f,[e(s,{class:"result",status:"404",subtitle:"\u627E\u4E0D\u5230\u7F51\u9875"}),p("div",x,[e(a,{key:"back",type:"primary",onClick:o},{default:i(()=>[l(" \u8FD4\u56DE ")]),_:1})])])}}});const N=n(b,[["__scopeId","data-v-8bef407f"]]);export{N as default};

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1 +0,0 @@
import{_ as t}from"./index.4f271108.js";import{C as c,aE as a,aH as s,be as _,bc as n,bd as r,G as d}from"./arco.beabb834.js";const p={},f=e=>(n("data-v-c675c8f8"),e=e(),r(),e),i=f(()=>d("a",{href:"https://github.com/silenty4ng/k5web",target:"_blank"},"K5Web - V0.1.202402031340",-1));function l(e,u){const o=_;return c(),a(o,{class:"footer"},{default:s(()=>[i]),_:1})}const m=t(p,[["render",l],["__scopeId","data-v-c675c8f8"]]);export{m as F};

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1 +0,0 @@
import{e as A,q as K,_ as P}from"./index.4f271108.js";/* empty css *//* empty css *//* empty css *//* empty css */import{d as L,r as N,bV as U,bC as H,bN as M,C as v,D as O,aI as r,aH as _,aE as D,aM as x,bW as R,aZ as T,b8 as V,bD as j,bM as q,bc as z,bd as G,G as C}from"./arco.beabb834.js";import{e as W,f as Z,g as J}from"./serial.b70f48dc.js";import"./chart.83b8c11b.js";import"./vue.30c84055.js";const I=y=>(z("data-v-208cc1d9"),y=y(),G(),y),Q={class:"container"},X=I(()=>C("div",{id:"canvasDiv",style:{zoom:"250%"}},null,-1)),Y=I(()=>C("br",null,null,-1)),$={name:"Backup"},tt=L({...$,setup(y){const l=A(),a=N({activeKey:1,binaryFile:void 0,loading:!1}),k=()=>{const n=document.createElement("input");n.type="file",n.onchange=async()=>{const p=new Blob([n.files[0]],{type:"application/octet-stream"}),f=URL.createObjectURL(p),t=document.createElement("canvas");t.width=128,t.height=64;const u=t.cloneNode(),c=document.getElementById("canvasDiv");c.innerHTML="",c==null||c.append(t,u);const o=new Image;o.src=f,o.onload=()=>{const d=t.getContext("2d");d==null||d.drawImage(o,0,0,128,64);const g=d==null?void 0:d.getImageData(0,0,t.width,t.height).data;function b(i,s){const e=(s*128+i)*4;return g[e]+g[e+1]+g[e+2]>128*3?0:1}const h=u.getContext("2d"),m=h.getImageData(0,0,u.width,u.height);for(let i=0;i<64;i++)for(let s=0;s<128;s++){const e=(i*128+s)*4,F=!b(s,i);m.data[e]=F*255,m.data[e+1]=F*255,m.data[e+2]=F*255,m.data[e+3]=255}h.putImageData(m,0,0);const w=new Uint8Array(1024);let S=0;for(let i=0;i<64;i+=8)for(let s=0;s<128;s++){let E=0;for(let e=0;e<8;e++)E|=b(s,i+e)<<e;w[S++]=E}a.binaryFile=w}},n.click()},B=async()=>{var f,t,u,c;if(l.connectState!=!0){alert("\u8BF7\u5148\u8FDE\u63A5\u624B\u53F0\uFF01");return}if(((f=l.configuration)==null?void 0:f.uart)=="official"){alert("\u56FA\u4EF6\u7248\u672C\u4E0D\u5339\u914D");return}if(a.activeKey==2&&((t=l.configuration)==null?void 0:t.charset)!="gb2312"){alert("\u56FA\u4EF6\u7248\u672C\u4E0D\u5339\u914D");return}if(a.activeKey==1&&((u=l.configuration)==null?void 0:u.charset)!="losehu"){alert("\u56FA\u4EF6\u7248\u672C\u4E0D\u5339\u914D");return}a.loading=!0;let n=123728;a.activeKey==2&&(n=8320),await W(l.connectPort);const p=a.binaryFile;for(let o=n;o<p.length+n;o+=128)await Z(l.connectPort,o,p.slice(o-n,o-n+128),128,(c=l.configuration)==null?void 0:c.uart);await J(l.connectPort),a.loading=!1};return(n,p)=>{const f=K,t=R,u=U,c=T,o=V,d=H,g=M,b=j,h=q;return v(),O("div",Q,[r(f,{items:["\u5C0F\u5DE5\u5177","\u5F00\u673A\u56FE\u7247"]}),r(h,{gutter:20,align:"stretch"},{default:_(()=>[r(b,{span:24},{default:_(()=>[r(g,{loading:a.loading,tip:"\u5199\u5165\u4E2D...",style:{width:"100%"}},{default:_(()=>[r(d,{class:"general-card",title:"\u5F00\u673A\u56FE\u7247"},{default:_(()=>[r(u,{"active-key":a.activeKey,onChange:p[0]||(p[0]=m=>{a.activeKey=m})},{default:_(()=>[(v(),D(t,{key:1,title:"LOSEHU 117"})),(v(),D(t,{key:2,title:"LOSEHU 118+"}))]),_:1},8,["active-key"]),X,Y,r(o,null,{default:_(()=>[r(c,{onClick:k},{default:_(()=>[x("\u9009\u62E9\u56FE\u7247")]),_:1}),r(c,{type:"primary",disabled:!a.binaryFile,onClick:B},{default:_(()=>[x("\u5199\u5165")]),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1},8,["loading"])]),_:1})]),_:1})])}}});const lt=P(tt,[["__scopeId","data-v-208cc1d9"]]);export{lt as default};

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1 +0,0 @@
import{d,r as y,bB as D,bC as C,C as l,aE as g,aH as t,aI as e,aM as s,aN as u,u as _,bw as x,bx as E,bl as A,bD as S,aZ as w,b8 as I,bc as k,bd as T,G as o,D as N}from"./arco.beabb834.js";import{e as V,_ as m}from"./index.4f271108.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./chart.83b8c11b.js";import"./vue.30c84055.js";const $=""+new URL("../gy.png",import.meta.url).href,c=a=>(k("data-v-ec38e55a"),a=a(),T(),a),z=c(()=>o("br",null,null,-1)),O=c(()=>o("br",null,null,-1)),G=c(()=>o("div",null,[o("img",{style:{"margin-bottom":"10px"},width:"600px",src:$})],-1)),H=d({__name:"banner",setup(a){const n=V(),r=y({eepromSize:"\u70B9\u51FB\u68C0\u6D4B\u6309\u94AE\u68C0\u6D4B"}),F=async()=>{alert("TODO")};return(q,J)=>{const f=A,i=S,h=D,B=w,b=C,v=I;return l(),g(i,{class:"banner"},{default:t(()=>[e(i,null,{default:t(()=>[e(f,{heading:5,style:{"margin-top":"0"}},{default:t(()=>[s(u(_(n).connectState?"\u6B22\u8FCE\u4F60~\uFF0C\u8FDE\u63A5\u6210\u529F\uFF01":"\u6B22\u8FCE\u4F60~\uFF0C\u70B9\u51FB\u53F3\u4E0A\u89D2\u201C\u8FDE\u63A5\u201D\u6309\u94AE\u8FDE\u63A5\u624B\u53F0\u3002"),1)]),_:1})]),_:1}),e(h,{class:"panel-border"}),e(v,null,{default:t(()=>[x(e(b,{style:{marginTop:"2em",marginBottom:"2em"},title:"\u624B\u53F0\u4FE1\u606F"},{default:t(()=>{var p;return[s(" \u5F53\u524D\u56FA\u4EF6\u7248\u672C\uFF1A"+u(_(n).firmwareVersion)+" ",1),z,s(" \u5339\u914D\u5199\u9891\u914D\u7F6E\uFF1A"+u((p=_(n).configuration)==null?void 0:p.name)+" ",1),O,s(" \u5B58\u50A8\u5927\u5C0F\uFF1A"+u(r.eepromSize)+" ",1),e(B,{size:"mini",type:"primary",onClick:F},{default:t(()=>[s("\u68C0\u6D4B")]),_:1})]}),_:1},512),[[E,_(n).connectState]])]),_:1}),G]),_:1})}}});const L=m(H,[["__scopeId","data-v-ec38e55a"]]),M={class:"container"},R={class:"left-side"},U={class:"panel"},Z={name:"Dashboard"},j=d({...Z,setup(a){return(n,r)=>(l(),N("div",M,[o("div",R,[o("div",U,[e(L)])])]))}});const ne=m(j,[["__scopeId","data-v-8f743d99"]]);export{ne as default};

Binary file not shown.

View File

@ -22,7 +22,7 @@
background-color: var(--color-text-3); background-color: var(--color-text-3);
} }
</style> </style>
<script type="module" crossorigin src="./assets/index.4f271108.js"></script> <script type="module" crossorigin src="./assets/index.ecebec16.js"></script>
<link rel="modulepreload" crossorigin href="./assets/arco.beabb834.js"> <link rel="modulepreload" crossorigin href="./assets/arco.beabb834.js">
<link rel="modulepreload" crossorigin href="./assets/chart.83b8c11b.js"> <link rel="modulepreload" crossorigin href="./assets/chart.83b8c11b.js">
<link rel="modulepreload" crossorigin href="./assets/vue.30c84055.js"> <link rel="modulepreload" crossorigin href="./assets/vue.30c84055.js">

Binary file not shown.