mirror of
https://github.com/silenty4ng/k5web
synced 2024-11-14 22:35:31 +00:00
2 lines
3.3 KiB
JavaScript
2 lines
3.3 KiB
JavaScript
import{e as A,q as K,_ as P}from"./index.7f980bfd.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.f883ed21.js";import{e as W,f as Z,g as J}from"./serial.b70f48dc.js";import"./chart.977fd17b.js";import"./vue.170d1f1d.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};
|