@netless/appliance-plugin 1.1.1-beta.4 → 1.1.1-beta.5

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.
package/cdn/cdn.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r="/fullWorker-CArgcQ.js",e="/subWorker-BKg3Xk.js";exports.fullWorkerUrl=r;exports.subWorkerUrl=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r="/fullWorker-BJ0Jq5.js",e="/subWorker-Drryxv.js";exports.fullWorkerUrl=r;exports.subWorkerUrl=e;
@@ -396,7 +396,7 @@ _inherits(o,_e$default22);return _createClass(o,[{key:"texture",get:function get
396
396
  l=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
397
397
  n&&(l=="offset"||l=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
398
398
  i&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||// Skip index properties.
399
- pc(l,s)))&&o.push(l);return o;}var Jn=Sc,xc=Object.prototype;function Tc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||xc;return h===t;}var Er=Tc;function Mc(h,r){return function(t){return h(r(t));};}var Zn=Mc,Pc=Zn,Oc=Pc(Object.keys,Object),Ec=Oc,Cc=Er,Ac=Ec,Rc=Object.prototype,Ic=Rc.hasOwnProperty;function Lc(h){if(!Cc(h))return Ac(h);var r=[];for(var t in Object(h))Ic.call(h,t)&&t!="constructor"&&r.push(t);return r;}var bc=Lc,wc=Un,Dc=Xn;function Nc(h){return h!=null&&Dc(h.length)&&!wc(h);}var Cr=Nc,Wc=Jn,Bc=bc,Fc=Cr;function Uc(h){return Fc(h)?Wc(h):Bc(h);}var Ar=Uc,jc=sr,$c=Ar;function zc(h,r){return h&&jc(r,$c(r),h);}var Gc=zc;function Hc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Kc=Hc,Yc=he,Vc=Er,Xc=Kc,kc=Object.prototype,Jc=kc.hasOwnProperty;function Zc(h){if(!Yc(h))return Xc(h);var r=Vc(h),t=[];for(var e in h)e=="constructor"&&(r||!Jc.call(h,e))||t.push(e);return t;}var Qc=Zc,qc=Jn,_c=Qc,tf=Cr;function ef(h){return tf(h)?qc(h,!0):_c(h);}var Rr=ef,rf=sr,nf=Rr;function sf(h,r){return h&&rf(r,nf(r),h);}var of=sf,Ye={exports:{}};Ye.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ye,Ye.exports);var af=Ye.exports;function lf(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var cf=lf;function ff(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Qn=ff;function hf(){return[];}var qn=hf,uf=Qn,df=qn,gf=Object.prototype,pf=gf.propertyIsEnumerable,_r=Object.getOwnPropertySymbols,mf=_r?function(h){return h==null?[]:(h=Object(h),uf(_r(h),function(r){return pf.call(h,r);}));}:df,Ir=mf,vf=sr,yf=Ir;function Sf(h,r){return vf(h,yf(h),r);}var xf=Sf;function Tf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Lr=Tf,Mf=Zn,Pf=Mf(Object.getPrototypeOf,Object),_n=Pf,Of=Lr,Ef=_n,Cf=Ir,Af=qn,Rf=Object.getOwnPropertySymbols,If=Rf?function(h){for(var r=[];h;)Of(r,Cf(h)),h=Ef(h);return r;}:Af,ti=If,Lf=sr,bf=ti;function wf(h,r){return Lf(h,bf(h),r);}var Df=wf,Nf=Lr,Wf=je;function Bf(h,r,t){var e=r(h);return Wf(h)?e:Nf(e,t(h));}var ei=Bf,Ff=ei,Uf=Ir,jf=Ar;function $f(h){return Ff(h,jf,Uf);}var ri=$f,zf=ei,Gf=ti,Hf=Rr;function Kf(h){return zf(h,Hf,Gf);}var Yf=Kf,Vf=ge,Xf=ee,kf=Vf(Xf,"DataView"),Jf=kf,Zf=ge,Qf=ee,qf=Zf(Qf,"Promise"),_f=qf,th=ge,eh=ee,rh=th(eh,"Set"),ni=rh,nh=ge,ih=ee,sh=nh(ih,"WeakMap"),oh=sh,gr=Jf,pr=Mr,mr=_f,vr=ni,yr=oh,ii=de,Re=jn,tn="[object Map]",ah="[object Object]",en="[object Promise]",rn="[object Set]",nn="[object WeakMap]",sn="[object DataView]",lh=Re(gr),ch=Re(pr),fh=Re(mr),hh=Re(vr),uh=Re(yr),ue=ii;(gr&&ue(new gr(new ArrayBuffer(1)))!=sn||pr&&ue(new pr())!=tn||mr&&ue(mr.resolve())!=en||vr&&ue(new vr())!=rn||yr&&ue(new yr())!=nn)&&(ue=function ue(h){var r=ii(h),t=r==ah?h.constructor:void 0,e=t?Re(t):"";if(e)switch(e){case lh:return sn;case ch:return tn;case fh:return en;case hh:return rn;case uh:return nn;}return r;});var ar=ue,dh=Object.prototype,gh=dh.hasOwnProperty;function ph(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&gh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var mh=ph,vh=ee,yh=vh.Uint8Array,si=yh,on=si;function Sh(h){var r=new h.constructor(h.byteLength);return new on(r).set(new on(h)),r;}var br=Sh,xh=br;function Th(h,r){var t=r?xh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Mh=Th,Ph=/\w*$/;function Oh(h){var r=new h.constructor(h.source,Ph.exec(h));return r.lastIndex=h.lastIndex,r;}var Eh=Oh,an=Ue,ln=an?an.prototype:void 0,cn=ln?ln.valueOf:void 0;function Ch(h){return cn?Object(cn.call(h)):{};}var Ah=Ch,Rh=br;function Ih(h,r){var t=r?Rh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Lh=Ih,bh=br,wh=Mh,Dh=Eh,Nh=Ah,Wh=Lh,Bh="[object Boolean]",Fh="[object Date]",Uh="[object Map]",jh="[object Number]",$h="[object RegExp]",zh="[object Set]",Gh="[object String]",Hh="[object Symbol]",Kh="[object ArrayBuffer]",Yh="[object DataView]",Vh="[object Float32Array]",Xh="[object Float64Array]",kh="[object Int8Array]",Jh="[object Int16Array]",Zh="[object Int32Array]",Qh="[object Uint8Array]",qh="[object Uint8ClampedArray]",_h="[object Uint16Array]",tu="[object Uint32Array]";function eu(h,r,t){var e=h.constructor;switch(r){case Kh:return bh(h);case Bh:case Fh:return new e(+h);case Yh:return wh(h,t);case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:case tu:return Wh(h,t);case Uh:return new e();case jh:case Gh:return new e(h);case $h:return Dh(h);case zh:return new e();case Hh:return Nh(h);}}var ru=eu,nu=he,fn=Object.create,iu=/* @__PURE__ */function(){function h(){}return function(r){if(!nu(r))return{};if(fn)return fn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),su=iu,ou=su,au=_n,lu=Er;function cu(h){return typeof h.constructor=="function"&&!lu(h)?ou(au(h)):{};}var fu=cu,hu=ar,uu=ne,du="[object Map]";function gu(h){return uu(h)&&hu(h)==du;}var pu=gu,mu=pu,vu=or,hn=Or,un=hn&&hn.isMap,yu=un?vu(un):mu,Su=yu,xu=ar,Tu=ne,Mu="[object Set]";function Pu(h){return Tu(h)&&xu(h)==Mu;}var Ou=Pu,Eu=Ou,Cu=or,dn=Or,gn=dn&&dn.isSet,Au=gn?Cu(gn):Eu,oi=Au,Ru=/* @__PURE__ */fe(oi),Iu=zn,Lu=tl,bu=Kn,wu=Gc,Du=of,Nu=af,Wu=cf,Bu=xf,Fu=Df,Uu=ri,ju=Yf,$u=ar,zu=mh,Gu=ru,Hu=fu,Ku=je,Yu=Pr,Vu=Su,Xu=he,ku=oi,Ju=Ar,Zu=Rr,Qu=1,qu=2,_u=4,ai="[object Arguments]",td="[object Array]",ed="[object Boolean]",rd="[object Date]",nd="[object Error]",li="[object Function]",id="[object GeneratorFunction]",sd="[object Map]",od="[object Number]",ci="[object Object]",ad="[object RegExp]",ld="[object Set]",cd="[object String]",fd="[object Symbol]",hd="[object WeakMap]",ud="[object ArrayBuffer]",dd="[object DataView]",gd="[object Float32Array]",pd="[object Float64Array]",md="[object Int8Array]",vd="[object Int16Array]",yd="[object Int32Array]",Sd="[object Uint8Array]",xd="[object Uint8ClampedArray]",Td="[object Uint16Array]",Md="[object Uint32Array]",Ft={};Ft[ai]=Ft[td]=Ft[ud]=Ft[dd]=Ft[ed]=Ft[rd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[yd]=Ft[sd]=Ft[od]=Ft[ci]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[fd]=Ft[Sd]=Ft[xd]=Ft[Td]=Ft[Md]=!0;Ft[nd]=Ft[li]=Ft[hd]=!1;function Ge(h,r,t,e,n,i){var a,o=r&Qu,s=r&qu,l=r&_u;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Xu(h))return h;var d=Ku(h);if(d){if(a=zu(h),!o)return Wu(h,a);}else{var c=$u(h),p=c==li||c==id;if(Yu(h))return Nu(h,o);if(c==ci||c==ai||p&&!n){if(a=s||p?{}:Hu(h),!o)return s?Fu(h,Du(a,h)):Bu(h,wu(a,h));}else{if(!Ft[c])return n?h:{};a=Gu(h,c,o);}}i||(i=new Iu());var y=i.get(h);if(y)return y;i.set(h,a),ku(h)?h.forEach(function(v){a.add(Ge(v,r,t,v,h,i));}):Vu(h)&&h.forEach(function(v,x){a.set(x,Ge(v,r,t,x,h,i));});var P=l?s?ju:Uu:s?Zu:Ju,T=d?void 0:P(h);return Lu(T||h,function(v,x){T&&(x=v,v=h[x]),bu(a,x,Ge(v,r,t,x,h,i));}),a;}var Pd=Ge,Od=Pd,Ed=1,Cd=4;function Ad(h){return Od(h,Ed|Cd);}var Rd=Ad,Xt=/* @__PURE__ */fe(Rd);var fi="1.1.1-beta.4",Id="@netless/appliance-plugin",Ld=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Id,"@").concat(fi,"_").concat(Ld),window.__netlessUA=h;}var re={syncOpt:{interval:500},canvasOpt:{contextType:ve.Canvas2d},cdn:{subWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/subWorker.js",fullWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/fullWorker.js"},cursor:{expirationTime:5e3},bufferSize:{full:2e4,sub:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Ur(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)jr(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=xr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Ei(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Hg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Kg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var wr={exports:{}};wr.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
399
+ pc(l,s)))&&o.push(l);return o;}var Jn=Sc,xc=Object.prototype;function Tc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||xc;return h===t;}var Er=Tc;function Mc(h,r){return function(t){return h(r(t));};}var Zn=Mc,Pc=Zn,Oc=Pc(Object.keys,Object),Ec=Oc,Cc=Er,Ac=Ec,Rc=Object.prototype,Ic=Rc.hasOwnProperty;function Lc(h){if(!Cc(h))return Ac(h);var r=[];for(var t in Object(h))Ic.call(h,t)&&t!="constructor"&&r.push(t);return r;}var bc=Lc,wc=Un,Dc=Xn;function Nc(h){return h!=null&&Dc(h.length)&&!wc(h);}var Cr=Nc,Wc=Jn,Bc=bc,Fc=Cr;function Uc(h){return Fc(h)?Wc(h):Bc(h);}var Ar=Uc,jc=sr,$c=Ar;function zc(h,r){return h&&jc(r,$c(r),h);}var Gc=zc;function Hc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Kc=Hc,Yc=he,Vc=Er,Xc=Kc,kc=Object.prototype,Jc=kc.hasOwnProperty;function Zc(h){if(!Yc(h))return Xc(h);var r=Vc(h),t=[];for(var e in h)e=="constructor"&&(r||!Jc.call(h,e))||t.push(e);return t;}var Qc=Zc,qc=Jn,_c=Qc,tf=Cr;function ef(h){return tf(h)?qc(h,!0):_c(h);}var Rr=ef,rf=sr,nf=Rr;function sf(h,r){return h&&rf(r,nf(r),h);}var of=sf,Ye={exports:{}};Ye.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ye,Ye.exports);var af=Ye.exports;function lf(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var cf=lf;function ff(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Qn=ff;function hf(){return[];}var qn=hf,uf=Qn,df=qn,gf=Object.prototype,pf=gf.propertyIsEnumerable,_r=Object.getOwnPropertySymbols,mf=_r?function(h){return h==null?[]:(h=Object(h),uf(_r(h),function(r){return pf.call(h,r);}));}:df,Ir=mf,vf=sr,yf=Ir;function Sf(h,r){return vf(h,yf(h),r);}var xf=Sf;function Tf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Lr=Tf,Mf=Zn,Pf=Mf(Object.getPrototypeOf,Object),_n=Pf,Of=Lr,Ef=_n,Cf=Ir,Af=qn,Rf=Object.getOwnPropertySymbols,If=Rf?function(h){for(var r=[];h;)Of(r,Cf(h)),h=Ef(h);return r;}:Af,ti=If,Lf=sr,bf=ti;function wf(h,r){return Lf(h,bf(h),r);}var Df=wf,Nf=Lr,Wf=je;function Bf(h,r,t){var e=r(h);return Wf(h)?e:Nf(e,t(h));}var ei=Bf,Ff=ei,Uf=Ir,jf=Ar;function $f(h){return Ff(h,jf,Uf);}var ri=$f,zf=ei,Gf=ti,Hf=Rr;function Kf(h){return zf(h,Hf,Gf);}var Yf=Kf,Vf=ge,Xf=ee,kf=Vf(Xf,"DataView"),Jf=kf,Zf=ge,Qf=ee,qf=Zf(Qf,"Promise"),_f=qf,th=ge,eh=ee,rh=th(eh,"Set"),ni=rh,nh=ge,ih=ee,sh=nh(ih,"WeakMap"),oh=sh,gr=Jf,pr=Mr,mr=_f,vr=ni,yr=oh,ii=de,Re=jn,tn="[object Map]",ah="[object Object]",en="[object Promise]",rn="[object Set]",nn="[object WeakMap]",sn="[object DataView]",lh=Re(gr),ch=Re(pr),fh=Re(mr),hh=Re(vr),uh=Re(yr),ue=ii;(gr&&ue(new gr(new ArrayBuffer(1)))!=sn||pr&&ue(new pr())!=tn||mr&&ue(mr.resolve())!=en||vr&&ue(new vr())!=rn||yr&&ue(new yr())!=nn)&&(ue=function ue(h){var r=ii(h),t=r==ah?h.constructor:void 0,e=t?Re(t):"";if(e)switch(e){case lh:return sn;case ch:return tn;case fh:return en;case hh:return rn;case uh:return nn;}return r;});var ar=ue,dh=Object.prototype,gh=dh.hasOwnProperty;function ph(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&gh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var mh=ph,vh=ee,yh=vh.Uint8Array,si=yh,on=si;function Sh(h){var r=new h.constructor(h.byteLength);return new on(r).set(new on(h)),r;}var br=Sh,xh=br;function Th(h,r){var t=r?xh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Mh=Th,Ph=/\w*$/;function Oh(h){var r=new h.constructor(h.source,Ph.exec(h));return r.lastIndex=h.lastIndex,r;}var Eh=Oh,an=Ue,ln=an?an.prototype:void 0,cn=ln?ln.valueOf:void 0;function Ch(h){return cn?Object(cn.call(h)):{};}var Ah=Ch,Rh=br;function Ih(h,r){var t=r?Rh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Lh=Ih,bh=br,wh=Mh,Dh=Eh,Nh=Ah,Wh=Lh,Bh="[object Boolean]",Fh="[object Date]",Uh="[object Map]",jh="[object Number]",$h="[object RegExp]",zh="[object Set]",Gh="[object String]",Hh="[object Symbol]",Kh="[object ArrayBuffer]",Yh="[object DataView]",Vh="[object Float32Array]",Xh="[object Float64Array]",kh="[object Int8Array]",Jh="[object Int16Array]",Zh="[object Int32Array]",Qh="[object Uint8Array]",qh="[object Uint8ClampedArray]",_h="[object Uint16Array]",tu="[object Uint32Array]";function eu(h,r,t){var e=h.constructor;switch(r){case Kh:return bh(h);case Bh:case Fh:return new e(+h);case Yh:return wh(h,t);case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:case tu:return Wh(h,t);case Uh:return new e();case jh:case Gh:return new e(h);case $h:return Dh(h);case zh:return new e();case Hh:return Nh(h);}}var ru=eu,nu=he,fn=Object.create,iu=/* @__PURE__ */function(){function h(){}return function(r){if(!nu(r))return{};if(fn)return fn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),su=iu,ou=su,au=_n,lu=Er;function cu(h){return typeof h.constructor=="function"&&!lu(h)?ou(au(h)):{};}var fu=cu,hu=ar,uu=ne,du="[object Map]";function gu(h){return uu(h)&&hu(h)==du;}var pu=gu,mu=pu,vu=or,hn=Or,un=hn&&hn.isMap,yu=un?vu(un):mu,Su=yu,xu=ar,Tu=ne,Mu="[object Set]";function Pu(h){return Tu(h)&&xu(h)==Mu;}var Ou=Pu,Eu=Ou,Cu=or,dn=Or,gn=dn&&dn.isSet,Au=gn?Cu(gn):Eu,oi=Au,Ru=/* @__PURE__ */fe(oi),Iu=zn,Lu=tl,bu=Kn,wu=Gc,Du=of,Nu=af,Wu=cf,Bu=xf,Fu=Df,Uu=ri,ju=Yf,$u=ar,zu=mh,Gu=ru,Hu=fu,Ku=je,Yu=Pr,Vu=Su,Xu=he,ku=oi,Ju=Ar,Zu=Rr,Qu=1,qu=2,_u=4,ai="[object Arguments]",td="[object Array]",ed="[object Boolean]",rd="[object Date]",nd="[object Error]",li="[object Function]",id="[object GeneratorFunction]",sd="[object Map]",od="[object Number]",ci="[object Object]",ad="[object RegExp]",ld="[object Set]",cd="[object String]",fd="[object Symbol]",hd="[object WeakMap]",ud="[object ArrayBuffer]",dd="[object DataView]",gd="[object Float32Array]",pd="[object Float64Array]",md="[object Int8Array]",vd="[object Int16Array]",yd="[object Int32Array]",Sd="[object Uint8Array]",xd="[object Uint8ClampedArray]",Td="[object Uint16Array]",Md="[object Uint32Array]",Ft={};Ft[ai]=Ft[td]=Ft[ud]=Ft[dd]=Ft[ed]=Ft[rd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[yd]=Ft[sd]=Ft[od]=Ft[ci]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[fd]=Ft[Sd]=Ft[xd]=Ft[Td]=Ft[Md]=!0;Ft[nd]=Ft[li]=Ft[hd]=!1;function Ge(h,r,t,e,n,i){var a,o=r&Qu,s=r&qu,l=r&_u;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Xu(h))return h;var d=Ku(h);if(d){if(a=zu(h),!o)return Wu(h,a);}else{var c=$u(h),p=c==li||c==id;if(Yu(h))return Nu(h,o);if(c==ci||c==ai||p&&!n){if(a=s||p?{}:Hu(h),!o)return s?Fu(h,Du(a,h)):Bu(h,wu(a,h));}else{if(!Ft[c])return n?h:{};a=Gu(h,c,o);}}i||(i=new Iu());var y=i.get(h);if(y)return y;i.set(h,a),ku(h)?h.forEach(function(v){a.add(Ge(v,r,t,v,h,i));}):Vu(h)&&h.forEach(function(v,x){a.set(x,Ge(v,r,t,x,h,i));});var P=l?s?ju:Uu:s?Zu:Ju,T=d?void 0:P(h);return Lu(T||h,function(v,x){T&&(x=v,v=h[x]),bu(a,x,Ge(v,r,t,x,h,i));}),a;}var Pd=Ge,Od=Pd,Ed=1,Cd=4;function Ad(h){return Od(h,Ed|Cd);}var Rd=Ad,Xt=/* @__PURE__ */fe(Rd);var fi="1.1.1-beta.5",Id="@netless/appliance-plugin",Ld=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Id,"@").concat(fi,"_").concat(Ld),window.__netlessUA=h;}var re={syncOpt:{interval:500},canvasOpt:{contextType:ve.Canvas2d},cdn:{subWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/subWorker.js",fullWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/fullWorker.js"},cursor:{expirationTime:5e3},bufferSize:{full:2e4,sub:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Ur(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)jr(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=xr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Ei(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Hg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Kg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var wr={exports:{}};wr.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
400
400
  compressToUint8Array:function compressToUint8Array(s){for(var l=o.compress(s),d=new Uint8Array(l.length*2),c=0,p=l.length;c<p;c++){var y=l.charCodeAt(c);d[c*2]=y>>>8,d[c*2+1]=y%256;}return d;},//decompress from uint8array (UCS-2 big endian format)
401
401
  decompressFromUint8Array:function decompressFromUint8Array(s){if(s==null)return o.decompress(s);for(var l=new Array(s.length/2),d=0,c=l.length;d<c;d++)l[d]=s[d*2]*256+s[d*2+1];var p=[];return l.forEach(function(y){p.push(t(y));}),o.decompress(p.join(""));},//compress into a string that is already URI encoded
402
402
  compressToEncodedURIComponent:function compressToEncodedURIComponent(s){return s==null?"":o._compress(s,6,function(l){return n.charAt(l);});},//decompress from an output of compressToEncodedURIComponent
@@ -396,7 +396,7 @@ _inherits(o,_e$default22);return _createClass(o,[{key:"texture",get:function get
396
396
  l=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
397
397
  n&&(l=="offset"||l=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
398
398
  i&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||// Skip index properties.
399
- pc(l,s)))&&o.push(l);return o;}var Jn=Sc,xc=Object.prototype;function Tc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||xc;return h===t;}var Er=Tc;function Mc(h,r){return function(t){return h(r(t));};}var Zn=Mc,Pc=Zn,Oc=Pc(Object.keys,Object),Ec=Oc,Cc=Er,Ac=Ec,Rc=Object.prototype,Ic=Rc.hasOwnProperty;function Lc(h){if(!Cc(h))return Ac(h);var r=[];for(var t in Object(h))Ic.call(h,t)&&t!="constructor"&&r.push(t);return r;}var bc=Lc,wc=Un,Dc=Xn;function Nc(h){return h!=null&&Dc(h.length)&&!wc(h);}var Cr=Nc,Wc=Jn,Bc=bc,Fc=Cr;function Uc(h){return Fc(h)?Wc(h):Bc(h);}var Ar=Uc,jc=sr,$c=Ar;function zc(h,r){return h&&jc(r,$c(r),h);}var Gc=zc;function Hc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Kc=Hc,Yc=he,Vc=Er,Xc=Kc,kc=Object.prototype,Jc=kc.hasOwnProperty;function Zc(h){if(!Yc(h))return Xc(h);var r=Vc(h),t=[];for(var e in h)e=="constructor"&&(r||!Jc.call(h,e))||t.push(e);return t;}var Qc=Zc,qc=Jn,_c=Qc,tf=Cr;function ef(h){return tf(h)?qc(h,!0):_c(h);}var Rr=ef,rf=sr,nf=Rr;function sf(h,r){return h&&rf(r,nf(r),h);}var of=sf,Ye={exports:{}};Ye.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ye,Ye.exports);var af=Ye.exports;function lf(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var cf=lf;function ff(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Qn=ff;function hf(){return[];}var qn=hf,uf=Qn,df=qn,gf=Object.prototype,pf=gf.propertyIsEnumerable,_r=Object.getOwnPropertySymbols,mf=_r?function(h){return h==null?[]:(h=Object(h),uf(_r(h),function(r){return pf.call(h,r);}));}:df,Ir=mf,vf=sr,yf=Ir;function Sf(h,r){return vf(h,yf(h),r);}var xf=Sf;function Tf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Lr=Tf,Mf=Zn,Pf=Mf(Object.getPrototypeOf,Object),_n=Pf,Of=Lr,Ef=_n,Cf=Ir,Af=qn,Rf=Object.getOwnPropertySymbols,If=Rf?function(h){for(var r=[];h;)Of(r,Cf(h)),h=Ef(h);return r;}:Af,ti=If,Lf=sr,bf=ti;function wf(h,r){return Lf(h,bf(h),r);}var Df=wf,Nf=Lr,Wf=je;function Bf(h,r,t){var e=r(h);return Wf(h)?e:Nf(e,t(h));}var ei=Bf,Ff=ei,Uf=Ir,jf=Ar;function $f(h){return Ff(h,jf,Uf);}var ri=$f,zf=ei,Gf=ti,Hf=Rr;function Kf(h){return zf(h,Hf,Gf);}var Yf=Kf,Vf=ge,Xf=ee,kf=Vf(Xf,"DataView"),Jf=kf,Zf=ge,Qf=ee,qf=Zf(Qf,"Promise"),_f=qf,th=ge,eh=ee,rh=th(eh,"Set"),ni=rh,nh=ge,ih=ee,sh=nh(ih,"WeakMap"),oh=sh,gr=Jf,pr=Mr,mr=_f,vr=ni,yr=oh,ii=de,Re=jn,tn="[object Map]",ah="[object Object]",en="[object Promise]",rn="[object Set]",nn="[object WeakMap]",sn="[object DataView]",lh=Re(gr),ch=Re(pr),fh=Re(mr),hh=Re(vr),uh=Re(yr),ue=ii;(gr&&ue(new gr(new ArrayBuffer(1)))!=sn||pr&&ue(new pr())!=tn||mr&&ue(mr.resolve())!=en||vr&&ue(new vr())!=rn||yr&&ue(new yr())!=nn)&&(ue=function ue(h){var r=ii(h),t=r==ah?h.constructor:void 0,e=t?Re(t):"";if(e)switch(e){case lh:return sn;case ch:return tn;case fh:return en;case hh:return rn;case uh:return nn;}return r;});var ar=ue,dh=Object.prototype,gh=dh.hasOwnProperty;function ph(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&gh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var mh=ph,vh=ee,yh=vh.Uint8Array,si=yh,on=si;function Sh(h){var r=new h.constructor(h.byteLength);return new on(r).set(new on(h)),r;}var br=Sh,xh=br;function Th(h,r){var t=r?xh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Mh=Th,Ph=/\w*$/;function Oh(h){var r=new h.constructor(h.source,Ph.exec(h));return r.lastIndex=h.lastIndex,r;}var Eh=Oh,an=Ue,ln=an?an.prototype:void 0,cn=ln?ln.valueOf:void 0;function Ch(h){return cn?Object(cn.call(h)):{};}var Ah=Ch,Rh=br;function Ih(h,r){var t=r?Rh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Lh=Ih,bh=br,wh=Mh,Dh=Eh,Nh=Ah,Wh=Lh,Bh="[object Boolean]",Fh="[object Date]",Uh="[object Map]",jh="[object Number]",$h="[object RegExp]",zh="[object Set]",Gh="[object String]",Hh="[object Symbol]",Kh="[object ArrayBuffer]",Yh="[object DataView]",Vh="[object Float32Array]",Xh="[object Float64Array]",kh="[object Int8Array]",Jh="[object Int16Array]",Zh="[object Int32Array]",Qh="[object Uint8Array]",qh="[object Uint8ClampedArray]",_h="[object Uint16Array]",tu="[object Uint32Array]";function eu(h,r,t){var e=h.constructor;switch(r){case Kh:return bh(h);case Bh:case Fh:return new e(+h);case Yh:return wh(h,t);case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:case tu:return Wh(h,t);case Uh:return new e();case jh:case Gh:return new e(h);case $h:return Dh(h);case zh:return new e();case Hh:return Nh(h);}}var ru=eu,nu=he,fn=Object.create,iu=/* @__PURE__ */function(){function h(){}return function(r){if(!nu(r))return{};if(fn)return fn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),su=iu,ou=su,au=_n,lu=Er;function cu(h){return typeof h.constructor=="function"&&!lu(h)?ou(au(h)):{};}var fu=cu,hu=ar,uu=ne,du="[object Map]";function gu(h){return uu(h)&&hu(h)==du;}var pu=gu,mu=pu,vu=or,hn=Or,un=hn&&hn.isMap,yu=un?vu(un):mu,Su=yu,xu=ar,Tu=ne,Mu="[object Set]";function Pu(h){return Tu(h)&&xu(h)==Mu;}var Ou=Pu,Eu=Ou,Cu=or,dn=Or,gn=dn&&dn.isSet,Au=gn?Cu(gn):Eu,oi=Au,Ru=/* @__PURE__ */fe(oi),Iu=zn,Lu=tl,bu=Kn,wu=Gc,Du=of,Nu=af,Wu=cf,Bu=xf,Fu=Df,Uu=ri,ju=Yf,$u=ar,zu=mh,Gu=ru,Hu=fu,Ku=je,Yu=Pr,Vu=Su,Xu=he,ku=oi,Ju=Ar,Zu=Rr,Qu=1,qu=2,_u=4,ai="[object Arguments]",td="[object Array]",ed="[object Boolean]",rd="[object Date]",nd="[object Error]",li="[object Function]",id="[object GeneratorFunction]",sd="[object Map]",od="[object Number]",ci="[object Object]",ad="[object RegExp]",ld="[object Set]",cd="[object String]",fd="[object Symbol]",hd="[object WeakMap]",ud="[object ArrayBuffer]",dd="[object DataView]",gd="[object Float32Array]",pd="[object Float64Array]",md="[object Int8Array]",vd="[object Int16Array]",yd="[object Int32Array]",Sd="[object Uint8Array]",xd="[object Uint8ClampedArray]",Td="[object Uint16Array]",Md="[object Uint32Array]",Ft={};Ft[ai]=Ft[td]=Ft[ud]=Ft[dd]=Ft[ed]=Ft[rd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[yd]=Ft[sd]=Ft[od]=Ft[ci]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[fd]=Ft[Sd]=Ft[xd]=Ft[Td]=Ft[Md]=!0;Ft[nd]=Ft[li]=Ft[hd]=!1;function Ge(h,r,t,e,n,i){var a,o=r&Qu,s=r&qu,l=r&_u;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Xu(h))return h;var d=Ku(h);if(d){if(a=zu(h),!o)return Wu(h,a);}else{var c=$u(h),p=c==li||c==id;if(Yu(h))return Nu(h,o);if(c==ci||c==ai||p&&!n){if(a=s||p?{}:Hu(h),!o)return s?Fu(h,Du(a,h)):Bu(h,wu(a,h));}else{if(!Ft[c])return n?h:{};a=Gu(h,c,o);}}i||(i=new Iu());var y=i.get(h);if(y)return y;i.set(h,a),ku(h)?h.forEach(function(v){a.add(Ge(v,r,t,v,h,i));}):Vu(h)&&h.forEach(function(v,x){a.set(x,Ge(v,r,t,x,h,i));});var P=l?s?ju:Uu:s?Zu:Ju,T=d?void 0:P(h);return Lu(T||h,function(v,x){T&&(x=v,v=h[x]),bu(a,x,Ge(v,r,t,x,h,i));}),a;}var Pd=Ge,Od=Pd,Ed=1,Cd=4;function Ad(h){return Od(h,Ed|Cd);}var Rd=Ad,Xt=/* @__PURE__ */fe(Rd);var fi="1.1.1-beta.4",Id="@netless/appliance-plugin",Ld=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Id,"@").concat(fi,"_").concat(Ld),window.__netlessUA=h;}var re={syncOpt:{interval:500},canvasOpt:{contextType:ve.Canvas2d},cdn:{subWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/subWorker.js",fullWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/fullWorker.js"},cursor:{expirationTime:5e3},bufferSize:{full:2e4,sub:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Ur(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)jr(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=xr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Ei(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Hg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Kg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var wr={exports:{}};wr.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
399
+ pc(l,s)))&&o.push(l);return o;}var Jn=Sc,xc=Object.prototype;function Tc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||xc;return h===t;}var Er=Tc;function Mc(h,r){return function(t){return h(r(t));};}var Zn=Mc,Pc=Zn,Oc=Pc(Object.keys,Object),Ec=Oc,Cc=Er,Ac=Ec,Rc=Object.prototype,Ic=Rc.hasOwnProperty;function Lc(h){if(!Cc(h))return Ac(h);var r=[];for(var t in Object(h))Ic.call(h,t)&&t!="constructor"&&r.push(t);return r;}var bc=Lc,wc=Un,Dc=Xn;function Nc(h){return h!=null&&Dc(h.length)&&!wc(h);}var Cr=Nc,Wc=Jn,Bc=bc,Fc=Cr;function Uc(h){return Fc(h)?Wc(h):Bc(h);}var Ar=Uc,jc=sr,$c=Ar;function zc(h,r){return h&&jc(r,$c(r),h);}var Gc=zc;function Hc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Kc=Hc,Yc=he,Vc=Er,Xc=Kc,kc=Object.prototype,Jc=kc.hasOwnProperty;function Zc(h){if(!Yc(h))return Xc(h);var r=Vc(h),t=[];for(var e in h)e=="constructor"&&(r||!Jc.call(h,e))||t.push(e);return t;}var Qc=Zc,qc=Jn,_c=Qc,tf=Cr;function ef(h){return tf(h)?qc(h,!0):_c(h);}var Rr=ef,rf=sr,nf=Rr;function sf(h,r){return h&&rf(r,nf(r),h);}var of=sf,Ye={exports:{}};Ye.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ye,Ye.exports);var af=Ye.exports;function lf(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var cf=lf;function ff(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Qn=ff;function hf(){return[];}var qn=hf,uf=Qn,df=qn,gf=Object.prototype,pf=gf.propertyIsEnumerable,_r=Object.getOwnPropertySymbols,mf=_r?function(h){return h==null?[]:(h=Object(h),uf(_r(h),function(r){return pf.call(h,r);}));}:df,Ir=mf,vf=sr,yf=Ir;function Sf(h,r){return vf(h,yf(h),r);}var xf=Sf;function Tf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Lr=Tf,Mf=Zn,Pf=Mf(Object.getPrototypeOf,Object),_n=Pf,Of=Lr,Ef=_n,Cf=Ir,Af=qn,Rf=Object.getOwnPropertySymbols,If=Rf?function(h){for(var r=[];h;)Of(r,Cf(h)),h=Ef(h);return r;}:Af,ti=If,Lf=sr,bf=ti;function wf(h,r){return Lf(h,bf(h),r);}var Df=wf,Nf=Lr,Wf=je;function Bf(h,r,t){var e=r(h);return Wf(h)?e:Nf(e,t(h));}var ei=Bf,Ff=ei,Uf=Ir,jf=Ar;function $f(h){return Ff(h,jf,Uf);}var ri=$f,zf=ei,Gf=ti,Hf=Rr;function Kf(h){return zf(h,Hf,Gf);}var Yf=Kf,Vf=ge,Xf=ee,kf=Vf(Xf,"DataView"),Jf=kf,Zf=ge,Qf=ee,qf=Zf(Qf,"Promise"),_f=qf,th=ge,eh=ee,rh=th(eh,"Set"),ni=rh,nh=ge,ih=ee,sh=nh(ih,"WeakMap"),oh=sh,gr=Jf,pr=Mr,mr=_f,vr=ni,yr=oh,ii=de,Re=jn,tn="[object Map]",ah="[object Object]",en="[object Promise]",rn="[object Set]",nn="[object WeakMap]",sn="[object DataView]",lh=Re(gr),ch=Re(pr),fh=Re(mr),hh=Re(vr),uh=Re(yr),ue=ii;(gr&&ue(new gr(new ArrayBuffer(1)))!=sn||pr&&ue(new pr())!=tn||mr&&ue(mr.resolve())!=en||vr&&ue(new vr())!=rn||yr&&ue(new yr())!=nn)&&(ue=function ue(h){var r=ii(h),t=r==ah?h.constructor:void 0,e=t?Re(t):"";if(e)switch(e){case lh:return sn;case ch:return tn;case fh:return en;case hh:return rn;case uh:return nn;}return r;});var ar=ue,dh=Object.prototype,gh=dh.hasOwnProperty;function ph(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&gh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var mh=ph,vh=ee,yh=vh.Uint8Array,si=yh,on=si;function Sh(h){var r=new h.constructor(h.byteLength);return new on(r).set(new on(h)),r;}var br=Sh,xh=br;function Th(h,r){var t=r?xh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Mh=Th,Ph=/\w*$/;function Oh(h){var r=new h.constructor(h.source,Ph.exec(h));return r.lastIndex=h.lastIndex,r;}var Eh=Oh,an=Ue,ln=an?an.prototype:void 0,cn=ln?ln.valueOf:void 0;function Ch(h){return cn?Object(cn.call(h)):{};}var Ah=Ch,Rh=br;function Ih(h,r){var t=r?Rh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Lh=Ih,bh=br,wh=Mh,Dh=Eh,Nh=Ah,Wh=Lh,Bh="[object Boolean]",Fh="[object Date]",Uh="[object Map]",jh="[object Number]",$h="[object RegExp]",zh="[object Set]",Gh="[object String]",Hh="[object Symbol]",Kh="[object ArrayBuffer]",Yh="[object DataView]",Vh="[object Float32Array]",Xh="[object Float64Array]",kh="[object Int8Array]",Jh="[object Int16Array]",Zh="[object Int32Array]",Qh="[object Uint8Array]",qh="[object Uint8ClampedArray]",_h="[object Uint16Array]",tu="[object Uint32Array]";function eu(h,r,t){var e=h.constructor;switch(r){case Kh:return bh(h);case Bh:case Fh:return new e(+h);case Yh:return wh(h,t);case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:case tu:return Wh(h,t);case Uh:return new e();case jh:case Gh:return new e(h);case $h:return Dh(h);case zh:return new e();case Hh:return Nh(h);}}var ru=eu,nu=he,fn=Object.create,iu=/* @__PURE__ */function(){function h(){}return function(r){if(!nu(r))return{};if(fn)return fn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),su=iu,ou=su,au=_n,lu=Er;function cu(h){return typeof h.constructor=="function"&&!lu(h)?ou(au(h)):{};}var fu=cu,hu=ar,uu=ne,du="[object Map]";function gu(h){return uu(h)&&hu(h)==du;}var pu=gu,mu=pu,vu=or,hn=Or,un=hn&&hn.isMap,yu=un?vu(un):mu,Su=yu,xu=ar,Tu=ne,Mu="[object Set]";function Pu(h){return Tu(h)&&xu(h)==Mu;}var Ou=Pu,Eu=Ou,Cu=or,dn=Or,gn=dn&&dn.isSet,Au=gn?Cu(gn):Eu,oi=Au,Ru=/* @__PURE__ */fe(oi),Iu=zn,Lu=tl,bu=Kn,wu=Gc,Du=of,Nu=af,Wu=cf,Bu=xf,Fu=Df,Uu=ri,ju=Yf,$u=ar,zu=mh,Gu=ru,Hu=fu,Ku=je,Yu=Pr,Vu=Su,Xu=he,ku=oi,Ju=Ar,Zu=Rr,Qu=1,qu=2,_u=4,ai="[object Arguments]",td="[object Array]",ed="[object Boolean]",rd="[object Date]",nd="[object Error]",li="[object Function]",id="[object GeneratorFunction]",sd="[object Map]",od="[object Number]",ci="[object Object]",ad="[object RegExp]",ld="[object Set]",cd="[object String]",fd="[object Symbol]",hd="[object WeakMap]",ud="[object ArrayBuffer]",dd="[object DataView]",gd="[object Float32Array]",pd="[object Float64Array]",md="[object Int8Array]",vd="[object Int16Array]",yd="[object Int32Array]",Sd="[object Uint8Array]",xd="[object Uint8ClampedArray]",Td="[object Uint16Array]",Md="[object Uint32Array]",Ft={};Ft[ai]=Ft[td]=Ft[ud]=Ft[dd]=Ft[ed]=Ft[rd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[yd]=Ft[sd]=Ft[od]=Ft[ci]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[fd]=Ft[Sd]=Ft[xd]=Ft[Td]=Ft[Md]=!0;Ft[nd]=Ft[li]=Ft[hd]=!1;function Ge(h,r,t,e,n,i){var a,o=r&Qu,s=r&qu,l=r&_u;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Xu(h))return h;var d=Ku(h);if(d){if(a=zu(h),!o)return Wu(h,a);}else{var c=$u(h),p=c==li||c==id;if(Yu(h))return Nu(h,o);if(c==ci||c==ai||p&&!n){if(a=s||p?{}:Hu(h),!o)return s?Fu(h,Du(a,h)):Bu(h,wu(a,h));}else{if(!Ft[c])return n?h:{};a=Gu(h,c,o);}}i||(i=new Iu());var y=i.get(h);if(y)return y;i.set(h,a),ku(h)?h.forEach(function(v){a.add(Ge(v,r,t,v,h,i));}):Vu(h)&&h.forEach(function(v,x){a.set(x,Ge(v,r,t,x,h,i));});var P=l?s?ju:Uu:s?Zu:Ju,T=d?void 0:P(h);return Lu(T||h,function(v,x){T&&(x=v,v=h[x]),bu(a,x,Ge(v,r,t,x,h,i));}),a;}var Pd=Ge,Od=Pd,Ed=1,Cd=4;function Ad(h){return Od(h,Ed|Cd);}var Rd=Ad,Xt=/* @__PURE__ */fe(Rd);var fi="1.1.1-beta.5",Id="@netless/appliance-plugin",Ld=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Id,"@").concat(fi,"_").concat(Ld),window.__netlessUA=h;}var re={syncOpt:{interval:500},canvasOpt:{contextType:ve.Canvas2d},cdn:{subWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/subWorker.js",fullWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/fullWorker.js"},cursor:{expirationTime:5e3},bufferSize:{full:2e4,sub:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Ur(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)jr(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=xr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Ei(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Hg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Kg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var wr={exports:{}};wr.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
400
400
  compressToUint8Array:function compressToUint8Array(s){for(var l=o.compress(s),d=new Uint8Array(l.length*2),c=0,p=l.length;c<p;c++){var y=l.charCodeAt(c);d[c*2]=y>>>8,d[c*2+1]=y%256;}return d;},//decompress from uint8array (UCS-2 big endian format)
401
401
  decompressFromUint8Array:function decompressFromUint8Array(s){if(s==null)return o.decompress(s);for(var l=new Array(s.length/2),d=0,c=l.length;d<c;d++)l[d]=s[d*2]*256+s[d*2+1];var p=[];return l.forEach(function(y){p.push(t(y));}),o.decompress(p.join(""));},//compress into a string that is already URI encoded
402
402
  compressToEncodedURIComponent:function compressToEncodedURIComponent(s){return s==null?"":o._compress(s,6,function(l){return n.charAt(l);});},//decompress from an output of compressToEncodedURIComponent
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-BYmAlYsz.js");exports.ActiveContainerType=e.ActiveContainerType;exports.ApplianceMultiPlugin=e.ApplianceMultiPlugin;exports.ApplianceNames=e.ApplianceNames;exports.ApplianceSigleWrapper=e.ApplianceSigleWrapper;exports.ApplianceSinglePlugin=e.ApplianceSinglePlugin;exports.ECanvasContextType=e.ECanvasContextType;exports.ECanvasShowType=e.ECanvasShowType;exports.EDataType=e.EDataType;exports.EMatrixrRelationType=e.EMatrixrRelationType;exports.EPostMessageType=e.EPostMessageType;exports.EScaleType=e.EScaleType;exports.EStrokeType=e.EStrokeType;exports.EToolsKey=e.EToolsKey;exports.ElayerType=e.ElayerType;exports.EmitEventType=e.EmitEventType;exports.EventMessageType=e.EventMessageType;exports.EvevtWorkState=e.EvevtWorkState;exports.EvevtWorkType=e.EvevtWorkType;exports.InternalMsgEmitterType=e.InternalMsgEmitterType;exports.ShapeType=e.ShapeType;exports.fullWorkerUrl=e.fullWorker;exports.subWorkerUrl=e.subWorker;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-sLm2RCtV.js");exports.ActiveContainerType=e.ActiveContainerType;exports.ApplianceMultiPlugin=e.ApplianceMultiPlugin;exports.ApplianceNames=e.ApplianceNames;exports.ApplianceSigleWrapper=e.ApplianceSigleWrapper;exports.ApplianceSinglePlugin=e.ApplianceSinglePlugin;exports.ECanvasContextType=e.ECanvasContextType;exports.ECanvasShowType=e.ECanvasShowType;exports.EDataType=e.EDataType;exports.EMatrixrRelationType=e.EMatrixrRelationType;exports.EPostMessageType=e.EPostMessageType;exports.EScaleType=e.EScaleType;exports.EStrokeType=e.EStrokeType;exports.EToolsKey=e.EToolsKey;exports.ElayerType=e.ElayerType;exports.EmitEventType=e.EmitEventType;exports.EventMessageType=e.EventMessageType;exports.EvevtWorkState=e.EvevtWorkState;exports.EvevtWorkType=e.EvevtWorkType;exports.InternalMsgEmitterType=e.InternalMsgEmitterType;exports.ShapeType=e.ShapeType;exports.fullWorkerUrl=e.fullWorker;exports.subWorkerUrl=e.subWorker;
@@ -1,4 +1,4 @@
1
- import { H as s, A as p, B as t, z as r, y as l, J as n, K as y, h as E, r as i, k as T, O as o, F as v, E as g, N as S, p as c, L as k, a as A, P as u, I as M, G as W, w as m, x } from "./index-CTPO-oj_.mjs";
1
+ import { H as s, A as p, B as t, z as r, y as l, J as n, K as y, h as E, r as i, k as T, O as o, F as v, E as g, N as S, p as c, L as k, a as A, P as u, I as M, G as W, w as m, x } from "./index-BoSQAir5.mjs";
2
2
  export {
3
3
  s as ActiveContainerType,
4
4
  p as ApplianceMultiPlugin,
@@ -396,7 +396,7 @@ _inherits(o,_e$default22);return _createClass(o,[{key:"texture",get:function get
396
396
  l=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
397
397
  n&&(l=="offset"||l=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
398
398
  i&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||// Skip index properties.
399
- pc(l,s)))&&o.push(l);return o;}var Jn=Sc,xc=Object.prototype;function Tc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||xc;return h===t;}var Er=Tc;function Mc(h,r){return function(t){return h(r(t));};}var Zn=Mc,Pc=Zn,Oc=Pc(Object.keys,Object),Ec=Oc,Cc=Er,Ac=Ec,Rc=Object.prototype,Ic=Rc.hasOwnProperty;function Lc(h){if(!Cc(h))return Ac(h);var r=[];for(var t in Object(h))Ic.call(h,t)&&t!="constructor"&&r.push(t);return r;}var bc=Lc,wc=Un,Dc=Xn;function Nc(h){return h!=null&&Dc(h.length)&&!wc(h);}var Cr=Nc,Wc=Jn,Bc=bc,Fc=Cr;function Uc(h){return Fc(h)?Wc(h):Bc(h);}var Ar=Uc,jc=sr,$c=Ar;function zc(h,r){return h&&jc(r,$c(r),h);}var Gc=zc;function Hc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Kc=Hc,Yc=he,Vc=Er,Xc=Kc,kc=Object.prototype,Jc=kc.hasOwnProperty;function Zc(h){if(!Yc(h))return Xc(h);var r=Vc(h),t=[];for(var e in h)e=="constructor"&&(r||!Jc.call(h,e))||t.push(e);return t;}var Qc=Zc,qc=Jn,_c=Qc,tf=Cr;function ef(h){return tf(h)?qc(h,!0):_c(h);}var Rr=ef,rf=sr,nf=Rr;function sf(h,r){return h&&rf(r,nf(r),h);}var of=sf,Ye={exports:{}};Ye.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ye,Ye.exports);var af=Ye.exports;function lf(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var cf=lf;function ff(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Qn=ff;function hf(){return[];}var qn=hf,uf=Qn,df=qn,gf=Object.prototype,pf=gf.propertyIsEnumerable,_r=Object.getOwnPropertySymbols,mf=_r?function(h){return h==null?[]:(h=Object(h),uf(_r(h),function(r){return pf.call(h,r);}));}:df,Ir=mf,vf=sr,yf=Ir;function Sf(h,r){return vf(h,yf(h),r);}var xf=Sf;function Tf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Lr=Tf,Mf=Zn,Pf=Mf(Object.getPrototypeOf,Object),_n=Pf,Of=Lr,Ef=_n,Cf=Ir,Af=qn,Rf=Object.getOwnPropertySymbols,If=Rf?function(h){for(var r=[];h;)Of(r,Cf(h)),h=Ef(h);return r;}:Af,ti=If,Lf=sr,bf=ti;function wf(h,r){return Lf(h,bf(h),r);}var Df=wf,Nf=Lr,Wf=je;function Bf(h,r,t){var e=r(h);return Wf(h)?e:Nf(e,t(h));}var ei=Bf,Ff=ei,Uf=Ir,jf=Ar;function $f(h){return Ff(h,jf,Uf);}var ri=$f,zf=ei,Gf=ti,Hf=Rr;function Kf(h){return zf(h,Hf,Gf);}var Yf=Kf,Vf=ge,Xf=ee,kf=Vf(Xf,"DataView"),Jf=kf,Zf=ge,Qf=ee,qf=Zf(Qf,"Promise"),_f=qf,th=ge,eh=ee,rh=th(eh,"Set"),ni=rh,nh=ge,ih=ee,sh=nh(ih,"WeakMap"),oh=sh,gr=Jf,pr=Mr,mr=_f,vr=ni,yr=oh,ii=de,Re=jn,tn="[object Map]",ah="[object Object]",en="[object Promise]",rn="[object Set]",nn="[object WeakMap]",sn="[object DataView]",lh=Re(gr),ch=Re(pr),fh=Re(mr),hh=Re(vr),uh=Re(yr),ue=ii;(gr&&ue(new gr(new ArrayBuffer(1)))!=sn||pr&&ue(new pr())!=tn||mr&&ue(mr.resolve())!=en||vr&&ue(new vr())!=rn||yr&&ue(new yr())!=nn)&&(ue=function ue(h){var r=ii(h),t=r==ah?h.constructor:void 0,e=t?Re(t):"";if(e)switch(e){case lh:return sn;case ch:return tn;case fh:return en;case hh:return rn;case uh:return nn;}return r;});var ar=ue,dh=Object.prototype,gh=dh.hasOwnProperty;function ph(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&gh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var mh=ph,vh=ee,yh=vh.Uint8Array,si=yh,on=si;function Sh(h){var r=new h.constructor(h.byteLength);return new on(r).set(new on(h)),r;}var br=Sh,xh=br;function Th(h,r){var t=r?xh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Mh=Th,Ph=/\w*$/;function Oh(h){var r=new h.constructor(h.source,Ph.exec(h));return r.lastIndex=h.lastIndex,r;}var Eh=Oh,an=Ue,ln=an?an.prototype:void 0,cn=ln?ln.valueOf:void 0;function Ch(h){return cn?Object(cn.call(h)):{};}var Ah=Ch,Rh=br;function Ih(h,r){var t=r?Rh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Lh=Ih,bh=br,wh=Mh,Dh=Eh,Nh=Ah,Wh=Lh,Bh="[object Boolean]",Fh="[object Date]",Uh="[object Map]",jh="[object Number]",$h="[object RegExp]",zh="[object Set]",Gh="[object String]",Hh="[object Symbol]",Kh="[object ArrayBuffer]",Yh="[object DataView]",Vh="[object Float32Array]",Xh="[object Float64Array]",kh="[object Int8Array]",Jh="[object Int16Array]",Zh="[object Int32Array]",Qh="[object Uint8Array]",qh="[object Uint8ClampedArray]",_h="[object Uint16Array]",tu="[object Uint32Array]";function eu(h,r,t){var e=h.constructor;switch(r){case Kh:return bh(h);case Bh:case Fh:return new e(+h);case Yh:return wh(h,t);case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:case tu:return Wh(h,t);case Uh:return new e();case jh:case Gh:return new e(h);case $h:return Dh(h);case zh:return new e();case Hh:return Nh(h);}}var ru=eu,nu=he,fn=Object.create,iu=/* @__PURE__ */function(){function h(){}return function(r){if(!nu(r))return{};if(fn)return fn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),su=iu,ou=su,au=_n,lu=Er;function cu(h){return typeof h.constructor=="function"&&!lu(h)?ou(au(h)):{};}var fu=cu,hu=ar,uu=ne,du="[object Map]";function gu(h){return uu(h)&&hu(h)==du;}var pu=gu,mu=pu,vu=or,hn=Or,un=hn&&hn.isMap,yu=un?vu(un):mu,Su=yu,xu=ar,Tu=ne,Mu="[object Set]";function Pu(h){return Tu(h)&&xu(h)==Mu;}var Ou=Pu,Eu=Ou,Cu=or,dn=Or,gn=dn&&dn.isSet,Au=gn?Cu(gn):Eu,oi=Au,Ru=/* @__PURE__ */fe(oi),Iu=zn,Lu=tl,bu=Kn,wu=Gc,Du=of,Nu=af,Wu=cf,Bu=xf,Fu=Df,Uu=ri,ju=Yf,$u=ar,zu=mh,Gu=ru,Hu=fu,Ku=je,Yu=Pr,Vu=Su,Xu=he,ku=oi,Ju=Ar,Zu=Rr,Qu=1,qu=2,_u=4,ai="[object Arguments]",td="[object Array]",ed="[object Boolean]",rd="[object Date]",nd="[object Error]",li="[object Function]",id="[object GeneratorFunction]",sd="[object Map]",od="[object Number]",ci="[object Object]",ad="[object RegExp]",ld="[object Set]",cd="[object String]",fd="[object Symbol]",hd="[object WeakMap]",ud="[object ArrayBuffer]",dd="[object DataView]",gd="[object Float32Array]",pd="[object Float64Array]",md="[object Int8Array]",vd="[object Int16Array]",yd="[object Int32Array]",Sd="[object Uint8Array]",xd="[object Uint8ClampedArray]",Td="[object Uint16Array]",Md="[object Uint32Array]",Ft={};Ft[ai]=Ft[td]=Ft[ud]=Ft[dd]=Ft[ed]=Ft[rd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[yd]=Ft[sd]=Ft[od]=Ft[ci]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[fd]=Ft[Sd]=Ft[xd]=Ft[Td]=Ft[Md]=!0;Ft[nd]=Ft[li]=Ft[hd]=!1;function Ge(h,r,t,e,n,i){var a,o=r&Qu,s=r&qu,l=r&_u;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Xu(h))return h;var d=Ku(h);if(d){if(a=zu(h),!o)return Wu(h,a);}else{var c=$u(h),p=c==li||c==id;if(Yu(h))return Nu(h,o);if(c==ci||c==ai||p&&!n){if(a=s||p?{}:Hu(h),!o)return s?Fu(h,Du(a,h)):Bu(h,wu(a,h));}else{if(!Ft[c])return n?h:{};a=Gu(h,c,o);}}i||(i=new Iu());var y=i.get(h);if(y)return y;i.set(h,a),ku(h)?h.forEach(function(v){a.add(Ge(v,r,t,v,h,i));}):Vu(h)&&h.forEach(function(v,x){a.set(x,Ge(v,r,t,x,h,i));});var P=l?s?ju:Uu:s?Zu:Ju,T=d?void 0:P(h);return Lu(T||h,function(v,x){T&&(x=v,v=h[x]),bu(a,x,Ge(v,r,t,x,h,i));}),a;}var Pd=Ge,Od=Pd,Ed=1,Cd=4;function Ad(h){return Od(h,Ed|Cd);}var Rd=Ad,Xt=/* @__PURE__ */fe(Rd);var fi="1.1.1-beta.4",Id="@netless/appliance-plugin",Ld=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Id,"@").concat(fi,"_").concat(Ld),window.__netlessUA=h;}var re={syncOpt:{interval:500},canvasOpt:{contextType:ve.Canvas2d},cdn:{subWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/subWorker.js",fullWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/fullWorker.js"},cursor:{expirationTime:5e3},bufferSize:{full:2e4,sub:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Ur(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)jr(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=xr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Ei(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Hg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Kg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var wr={exports:{}};wr.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
399
+ pc(l,s)))&&o.push(l);return o;}var Jn=Sc,xc=Object.prototype;function Tc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||xc;return h===t;}var Er=Tc;function Mc(h,r){return function(t){return h(r(t));};}var Zn=Mc,Pc=Zn,Oc=Pc(Object.keys,Object),Ec=Oc,Cc=Er,Ac=Ec,Rc=Object.prototype,Ic=Rc.hasOwnProperty;function Lc(h){if(!Cc(h))return Ac(h);var r=[];for(var t in Object(h))Ic.call(h,t)&&t!="constructor"&&r.push(t);return r;}var bc=Lc,wc=Un,Dc=Xn;function Nc(h){return h!=null&&Dc(h.length)&&!wc(h);}var Cr=Nc,Wc=Jn,Bc=bc,Fc=Cr;function Uc(h){return Fc(h)?Wc(h):Bc(h);}var Ar=Uc,jc=sr,$c=Ar;function zc(h,r){return h&&jc(r,$c(r),h);}var Gc=zc;function Hc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Kc=Hc,Yc=he,Vc=Er,Xc=Kc,kc=Object.prototype,Jc=kc.hasOwnProperty;function Zc(h){if(!Yc(h))return Xc(h);var r=Vc(h),t=[];for(var e in h)e=="constructor"&&(r||!Jc.call(h,e))||t.push(e);return t;}var Qc=Zc,qc=Jn,_c=Qc,tf=Cr;function ef(h){return tf(h)?qc(h,!0):_c(h);}var Rr=ef,rf=sr,nf=Rr;function sf(h,r){return h&&rf(r,nf(r),h);}var of=sf,Ye={exports:{}};Ye.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ye,Ye.exports);var af=Ye.exports;function lf(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var cf=lf;function ff(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Qn=ff;function hf(){return[];}var qn=hf,uf=Qn,df=qn,gf=Object.prototype,pf=gf.propertyIsEnumerable,_r=Object.getOwnPropertySymbols,mf=_r?function(h){return h==null?[]:(h=Object(h),uf(_r(h),function(r){return pf.call(h,r);}));}:df,Ir=mf,vf=sr,yf=Ir;function Sf(h,r){return vf(h,yf(h),r);}var xf=Sf;function Tf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Lr=Tf,Mf=Zn,Pf=Mf(Object.getPrototypeOf,Object),_n=Pf,Of=Lr,Ef=_n,Cf=Ir,Af=qn,Rf=Object.getOwnPropertySymbols,If=Rf?function(h){for(var r=[];h;)Of(r,Cf(h)),h=Ef(h);return r;}:Af,ti=If,Lf=sr,bf=ti;function wf(h,r){return Lf(h,bf(h),r);}var Df=wf,Nf=Lr,Wf=je;function Bf(h,r,t){var e=r(h);return Wf(h)?e:Nf(e,t(h));}var ei=Bf,Ff=ei,Uf=Ir,jf=Ar;function $f(h){return Ff(h,jf,Uf);}var ri=$f,zf=ei,Gf=ti,Hf=Rr;function Kf(h){return zf(h,Hf,Gf);}var Yf=Kf,Vf=ge,Xf=ee,kf=Vf(Xf,"DataView"),Jf=kf,Zf=ge,Qf=ee,qf=Zf(Qf,"Promise"),_f=qf,th=ge,eh=ee,rh=th(eh,"Set"),ni=rh,nh=ge,ih=ee,sh=nh(ih,"WeakMap"),oh=sh,gr=Jf,pr=Mr,mr=_f,vr=ni,yr=oh,ii=de,Re=jn,tn="[object Map]",ah="[object Object]",en="[object Promise]",rn="[object Set]",nn="[object WeakMap]",sn="[object DataView]",lh=Re(gr),ch=Re(pr),fh=Re(mr),hh=Re(vr),uh=Re(yr),ue=ii;(gr&&ue(new gr(new ArrayBuffer(1)))!=sn||pr&&ue(new pr())!=tn||mr&&ue(mr.resolve())!=en||vr&&ue(new vr())!=rn||yr&&ue(new yr())!=nn)&&(ue=function ue(h){var r=ii(h),t=r==ah?h.constructor:void 0,e=t?Re(t):"";if(e)switch(e){case lh:return sn;case ch:return tn;case fh:return en;case hh:return rn;case uh:return nn;}return r;});var ar=ue,dh=Object.prototype,gh=dh.hasOwnProperty;function ph(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&gh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var mh=ph,vh=ee,yh=vh.Uint8Array,si=yh,on=si;function Sh(h){var r=new h.constructor(h.byteLength);return new on(r).set(new on(h)),r;}var br=Sh,xh=br;function Th(h,r){var t=r?xh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Mh=Th,Ph=/\w*$/;function Oh(h){var r=new h.constructor(h.source,Ph.exec(h));return r.lastIndex=h.lastIndex,r;}var Eh=Oh,an=Ue,ln=an?an.prototype:void 0,cn=ln?ln.valueOf:void 0;function Ch(h){return cn?Object(cn.call(h)):{};}var Ah=Ch,Rh=br;function Ih(h,r){var t=r?Rh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Lh=Ih,bh=br,wh=Mh,Dh=Eh,Nh=Ah,Wh=Lh,Bh="[object Boolean]",Fh="[object Date]",Uh="[object Map]",jh="[object Number]",$h="[object RegExp]",zh="[object Set]",Gh="[object String]",Hh="[object Symbol]",Kh="[object ArrayBuffer]",Yh="[object DataView]",Vh="[object Float32Array]",Xh="[object Float64Array]",kh="[object Int8Array]",Jh="[object Int16Array]",Zh="[object Int32Array]",Qh="[object Uint8Array]",qh="[object Uint8ClampedArray]",_h="[object Uint16Array]",tu="[object Uint32Array]";function eu(h,r,t){var e=h.constructor;switch(r){case Kh:return bh(h);case Bh:case Fh:return new e(+h);case Yh:return wh(h,t);case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:case tu:return Wh(h,t);case Uh:return new e();case jh:case Gh:return new e(h);case $h:return Dh(h);case zh:return new e();case Hh:return Nh(h);}}var ru=eu,nu=he,fn=Object.create,iu=/* @__PURE__ */function(){function h(){}return function(r){if(!nu(r))return{};if(fn)return fn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),su=iu,ou=su,au=_n,lu=Er;function cu(h){return typeof h.constructor=="function"&&!lu(h)?ou(au(h)):{};}var fu=cu,hu=ar,uu=ne,du="[object Map]";function gu(h){return uu(h)&&hu(h)==du;}var pu=gu,mu=pu,vu=or,hn=Or,un=hn&&hn.isMap,yu=un?vu(un):mu,Su=yu,xu=ar,Tu=ne,Mu="[object Set]";function Pu(h){return Tu(h)&&xu(h)==Mu;}var Ou=Pu,Eu=Ou,Cu=or,dn=Or,gn=dn&&dn.isSet,Au=gn?Cu(gn):Eu,oi=Au,Ru=/* @__PURE__ */fe(oi),Iu=zn,Lu=tl,bu=Kn,wu=Gc,Du=of,Nu=af,Wu=cf,Bu=xf,Fu=Df,Uu=ri,ju=Yf,$u=ar,zu=mh,Gu=ru,Hu=fu,Ku=je,Yu=Pr,Vu=Su,Xu=he,ku=oi,Ju=Ar,Zu=Rr,Qu=1,qu=2,_u=4,ai="[object Arguments]",td="[object Array]",ed="[object Boolean]",rd="[object Date]",nd="[object Error]",li="[object Function]",id="[object GeneratorFunction]",sd="[object Map]",od="[object Number]",ci="[object Object]",ad="[object RegExp]",ld="[object Set]",cd="[object String]",fd="[object Symbol]",hd="[object WeakMap]",ud="[object ArrayBuffer]",dd="[object DataView]",gd="[object Float32Array]",pd="[object Float64Array]",md="[object Int8Array]",vd="[object Int16Array]",yd="[object Int32Array]",Sd="[object Uint8Array]",xd="[object Uint8ClampedArray]",Td="[object Uint16Array]",Md="[object Uint32Array]",Ft={};Ft[ai]=Ft[td]=Ft[ud]=Ft[dd]=Ft[ed]=Ft[rd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[yd]=Ft[sd]=Ft[od]=Ft[ci]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[fd]=Ft[Sd]=Ft[xd]=Ft[Td]=Ft[Md]=!0;Ft[nd]=Ft[li]=Ft[hd]=!1;function Ge(h,r,t,e,n,i){var a,o=r&Qu,s=r&qu,l=r&_u;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Xu(h))return h;var d=Ku(h);if(d){if(a=zu(h),!o)return Wu(h,a);}else{var c=$u(h),p=c==li||c==id;if(Yu(h))return Nu(h,o);if(c==ci||c==ai||p&&!n){if(a=s||p?{}:Hu(h),!o)return s?Fu(h,Du(a,h)):Bu(h,wu(a,h));}else{if(!Ft[c])return n?h:{};a=Gu(h,c,o);}}i||(i=new Iu());var y=i.get(h);if(y)return y;i.set(h,a),ku(h)?h.forEach(function(v){a.add(Ge(v,r,t,v,h,i));}):Vu(h)&&h.forEach(function(v,x){a.set(x,Ge(v,r,t,x,h,i));});var P=l?s?ju:Uu:s?Zu:Ju,T=d?void 0:P(h);return Lu(T||h,function(v,x){T&&(x=v,v=h[x]),bu(a,x,Ge(v,r,t,x,h,i));}),a;}var Pd=Ge,Od=Pd,Ed=1,Cd=4;function Ad(h){return Od(h,Ed|Cd);}var Rd=Ad,Xt=/* @__PURE__ */fe(Rd);var fi="1.1.1-beta.5",Id="@netless/appliance-plugin",Ld=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Id,"@").concat(fi,"_").concat(Ld),window.__netlessUA=h;}var re={syncOpt:{interval:500},canvasOpt:{contextType:ve.Canvas2d},cdn:{subWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/subWorker.js",fullWorkerUrl:"https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/fullWorker.js"},cursor:{expirationTime:5e3},bufferSize:{full:2e4,sub:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Ur(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)jr(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=xr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Ei(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Hg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Kg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var wr={exports:{}};wr.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
400
400
  compressToUint8Array:function compressToUint8Array(s){for(var l=o.compress(s),d=new Uint8Array(l.length*2),c=0,p=l.length;c<p;c++){var y=l.charCodeAt(c);d[c*2]=y>>>8,d[c*2+1]=y%256;}return d;},//decompress from uint8array (UCS-2 big endian format)
401
401
  decompressFromUint8Array:function decompressFromUint8Array(s){if(s==null)return o.decompress(s);for(var l=new Array(s.length/2),d=0,c=l.length;d<c;d++)l[d]=s[d*2]*256+s[d*2+1];var p=[];return l.forEach(function(y){p.push(t(y));}),o.decompress(p.join(""));},//compress into a string that is already URI encoded
402
402
  compressToEncodedURIComponent:function compressToEncodedURIComponent(s){return s==null?"":o._compress(s,6,function(l){return n.charAt(l);});},//decompress from an output of compressToEncodedURIComponent
@@ -1133,7 +1133,7 @@ function Op(a) {
1133
1133
  return jp(a, Ap | Ep);
1134
1134
  }
1135
1135
  var Rp = Op;
1136
- const ae = /* @__PURE__ */ ze(Rp), Ss = "1.1.1-beta.4", Yp = "@netless/appliance-plugin", Cs = typeof OffscreenCanvas == "function" ? "worker" : "mainThread";
1136
+ const ae = /* @__PURE__ */ ze(Rp), Ss = "1.1.1-beta.5", Yp = "@netless/appliance-plugin", Cs = typeof OffscreenCanvas == "function" ? "worker" : "mainThread";
1137
1137
  if (typeof window < "u") {
1138
1138
  let a = window.__netlessUA || "";
1139
1139
  a += ` ${Yp}@${Ss}_${Cs}`, window.__netlessUA = a;
@@ -7885,7 +7885,7 @@ class zg extends kg {
7885
7885
  }
7886
7886
  async useMainThread() {
7887
7887
  console.info("no OffscreenCanvas");
7888
- const { MainThreadManagerImpl: t } = await import("./index-B4d6e2_h.mjs");
7888
+ const { MainThreadManagerImpl: t } = await import("./index-Ct-neIwD.mjs");
7889
7889
  this.mainThread = new t(this);
7890
7890
  }
7891
7891
  async on() {
@@ -9580,13 +9580,13 @@ class lM {
9580
9580
  this.readonlyUids = i;
9581
9581
  } else
9582
9582
  this.readonlyUids = /* @__PURE__ */ new Set();
9583
- this.writeEffect(), (e = this.control.collector) == null || e.dispatchAuth({
9583
+ (e = this.control.collector) == null || e.dispatchAuth({
9584
9584
  type: x.AuthWriter,
9585
9585
  writeData: {
9586
9586
  writable: o,
9587
9587
  readOnly: t
9588
9588
  }
9589
- });
9589
+ }), this.writeEffect();
9590
9590
  }
9591
9591
  publishOneWriteAble(o, t, e = !0) {
9592
9592
  var i;
@@ -9599,13 +9599,13 @@ class lM {
9599
9599
  mt(this.readonlyUids) && this.readonlyUids.add(o), mt(this.writeableUids) && this.writeableUids.has(o) && this.writeableUids.delete(o);
9600
9600
  break;
9601
9601
  }
9602
- this.writeEffect(), e && ((i = this.control.collector) == null || i.dispatchAuth({
9602
+ e && ((i = this.control.collector) == null || i.dispatchAuth({
9603
9603
  type: x.AuthWriter,
9604
9604
  writeData: {
9605
9605
  writable: this.writeableUids === !0 && !0 || Array.from(this.writeableUids),
9606
9606
  readOnly: this.readonlyUids === !0 && !0 || Array.from(this.readonlyUids)
9607
9607
  }
9608
- }));
9608
+ })), this.writeEffect();
9609
9609
  }
9610
9610
  }
9611
9611
  publishRender(o) {
@@ -9616,11 +9616,11 @@ class lM {
9616
9616
  r && (n.render = r === !0 && !0 || new Set(r)), c && (n.hide = c === !0 && !0 || new Set(c)), l && (n.clear = l === !0 && !0 || new Set(l)), this.renderUids.set(t, n);
9617
9617
  } else
9618
9618
  this.renderUids.delete(t);
9619
- this.renderEffect(t), i && ((s = this.control.collector) == null || s.dispatchAuth({
9619
+ i && ((s = this.control.collector) == null || s.dispatchAuth({
9620
9620
  type: x.AuthReader,
9621
9621
  viewId: t,
9622
9622
  renderData: e
9623
- }, i));
9623
+ }, i)), this.renderEffect(t);
9624
9624
  }
9625
9625
  publishOneRender(o, t, e, i = !0) {
9626
9626
  var n;
@@ -9633,7 +9633,7 @@ class lM {
9633
9633
  s ? (s.hide || (s.hide = /* @__PURE__ */ new Set()), mt(s.hide) && s.hide.add(t), mt(s.render) && s.render.delete(t)) : this.renderUids.set(o, { hide: /* @__PURE__ */ new Set([t]) });
9634
9634
  break;
9635
9635
  }
9636
- if (s ? this.renderUids.set(o, s) : this.renderUids.delete(o), this.renderEffect(o), i) {
9636
+ if (s ? this.renderUids.set(o, s) : this.renderUids.delete(o), i) {
9637
9637
  const r = {};
9638
9638
  if (s)
9639
9639
  for (const c of Object.keys(s)) {
@@ -9646,11 +9646,12 @@ class lM {
9646
9646
  renderData: r
9647
9647
  }, i);
9648
9648
  }
9649
+ this.renderEffect(o);
9649
9650
  }
9650
9651
  publishOneClear(o, t, e, i = !0) {
9651
9652
  var n;
9652
9653
  const s = this.renderUids.get(o);
9653
- if (e ? s ? (s.clear || (s.clear = /* @__PURE__ */ new Set()), mt(s.clear) && s.clear.add(t)) : this.renderUids.set(o, { clear: /* @__PURE__ */ new Set([t]) }) : s && mt(s.clear) && s.clear.has(t) && s.clear.delete(t), s ? this.renderUids.set(o, s) : this.renderUids.delete(o), this.renderEffect(o), i) {
9654
+ if (e ? s ? (s.clear || (s.clear = /* @__PURE__ */ new Set()), mt(s.clear) && s.clear.add(t)) : this.renderUids.set(o, { clear: /* @__PURE__ */ new Set([t]) }) : s && mt(s.clear) && s.clear.has(t) && s.clear.delete(t), s ? this.renderUids.set(o, s) : this.renderUids.delete(o), i) {
9654
9655
  const r = {};
9655
9656
  if (s)
9656
9657
  for (const c of Object.keys(s)) {
@@ -9663,6 +9664,7 @@ class lM {
9663
9664
  renderData: r
9664
9665
  }, i);
9665
9666
  }
9667
+ this.renderEffect(o);
9666
9668
  }
9667
9669
  syncRenderUids(o, t, e, i) {
9668
9670
  const s = t === !0 ? !0 : he(t) ? new Set(t) : void 0, n = e === !0 ? !0 : he(e) ? new Set(e) : void 0, r = i === !0 ? !0 : he(i) ? new Set(i) : void 0;
@@ -14377,10 +14379,18 @@ const V = class V extends Ji {
14377
14379
  t && V.currentManager && (V.currentManager.bindPlugin(t), t.init(t.displayer));
14378
14380
  }
14379
14381
  static async createApplianceMultiPlugin(t, e) {
14380
- await t.createInvisiblePlugin(
14381
- V,
14382
- {}
14383
- );
14382
+ try {
14383
+ await t.createInvisiblePlugin(
14384
+ V,
14385
+ {}
14386
+ );
14387
+ } catch {
14388
+ if (!t.isWritable) {
14389
+ await t.setWritable(!0);
14390
+ const n = await this.createApplianceMultiPlugin(t, e);
14391
+ return await t.setWritable(!1), n;
14392
+ }
14393
+ }
14384
14394
  let i = t.getInvisiblePlugin(e);
14385
14395
  return i || (i = await V.createApplianceMultiPlugin(t, e)), i;
14386
14396
  }
@@ -14818,10 +14828,18 @@ const W = class W extends Ji {
14818
14828
  t && W.currentManager && (W.currentManager.bindPlugin(t), t.init(t.displayer));
14819
14829
  }
14820
14830
  static async createAppliancePlugin(t, e) {
14821
- await t.createInvisiblePlugin(
14822
- W,
14823
- {}
14824
- );
14831
+ try {
14832
+ await t.createInvisiblePlugin(
14833
+ W,
14834
+ {}
14835
+ );
14836
+ } catch {
14837
+ if (!t.isWritable) {
14838
+ await t.setWritable(!0);
14839
+ const n = await this.createAppliancePlugin(t, e);
14840
+ return await t.setWritable(!1), n;
14841
+ }
14842
+ }
14825
14843
  let i = t.getInvisiblePlugin(e);
14826
14844
  return i || (i = await W.createAppliancePlugin(t, e)), i;
14827
14845
  }
@@ -1,7 +1,7 @@
1
1
  var ee = Object.defineProperty;
2
2
  var te = (N, t, e) => t in N ? ee(N, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : N[t] = e;
3
3
  var d = (N, t, e) => te(N, typeof t != "symbol" ? t + "" : t, e);
4
- import { E as f, a as T, c as D, b as se, i as oe, d as re, e as U, g as ie, S as P, f as ae, D as A, h as v, j as B, t as x, k as p, l as L, m as K, n as ce, C as _, o as ne, p as I, M as R, T as G, q as z, r as V, s as le, u as $, V as Z, v as he } from "./index-CTPO-oj_.mjs";
4
+ import { E as f, a as T, c as D, b as se, i as oe, d as re, e as U, g as ie, S as P, f as ae, D as A, h as v, j as B, t as x, k as p, l as L, m as K, n as ce, C as _, o as ne, p as I, M as R, T as G, q as z, r as V, s as le, u as $, V as Z, v as he } from "./index-BoSQAir5.mjs";
5
5
  import { Scene as X, Group as Y } from "spritejs";
6
6
  import { cloneDeep as Q, xor as pe, isEqual as j, isNumber as de } from "lodash";
7
7
  import "lineclip";