@netless/appliance-plugin 1.1.18-beta.0 → 1.1.18-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/cdn/cdn.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r="/fullWorker-BXw0UY.js",e="/subWorker-CQwRsl.js";exports.fullWorkerUrl=r;exports.subWorkerUrl=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r="/fullWorker-DlXyXX.js",e="/subWorker-BjXh7r.js";exports.fullWorkerUrl=r;exports.subWorkerUrl=e;
@@ -396,7 +396,7 @@ _inherits(o,_r$default22);return _createClass(o,[{key:"texture",get:function get
396
396
  f=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
397
397
  n&&(f=="offset"||f=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
398
398
  i&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||// Skip index properties.
399
- Rf(f,a)))&&o.push(f);return o;}var Oi=Bf,Wf=Object.prototype;function Ff(u){var e=u&&u.constructor,t=typeof e=="function"&&e.prototype||Wf;return u===t;}var tn=Ff;function Uf(u,e){return function(t){return u(e(t));};}var Mi=Uf,jf=Mi,Yf=jf(Object.keys,Object),Xf=Yf,zf=tn,$f=Xf,Gf=Object.prototype,Hf=Gf.hasOwnProperty;function kf(u){if(!zf(u))return $f(u);var e=[];for(var t in Object(u))Hf.call(u,t)&&t!="constructor"&&e.push(t);return e;}var Vf=kf,Kf=pi,Zf=Ci;function Jf(u){return u!=null&&Zf(u.length)&&!Kf(u);}var en=Jf,Qf=Oi,qf=Vf,_f=en;function th(u){return _f(u)?Qf(u):qf(u);}var rn=th,eh=Br,rh=rn;function nh(u,e){return u&&eh(e,rh(e),u);}var ih=nh;function sh(u){var e=[];if(u!=null)for(var t in Object(u))e.push(t);return e;}var oh=sh,ah=hr,lh=tn,ch=oh,fh=Object.prototype,hh=fh.hasOwnProperty;function uh(u){if(!ah(u))return ch(u);var e=lh(u),t=[];for(var r in u)r=="constructor"&&(e||!hh.call(u,r))||t.push(r);return t;}var dh=uh,ph=Oi,mh=dh,vh=en;function yh(u){return vh(u)?ph(u,!0):mh(u);}var nn=yh,gh=Br,Ph=nn;function xh(u,e){return u&&gh(e,Ph(e),u);}var Sh=xh,xr={exports:{}};xr.exports;(function(u,e){var t=Le,r=e&&!e.nodeType&&e,n=r&&!0&&u&&!u.nodeType&&u,i=n&&n.exports===r,l=i?t.Buffer:void 0,o=l?l.allocUnsafe:void 0;function a(f,g){if(g)return f.slice();var c=f.length,m=o?o(c):new f.constructor(c);return f.copy(m),m;}u.exports=a;})(xr,xr.exports);var Th=xr.exports;function Ch(u,e){var t=-1,r=u.length;for(e||(e=Array(r));++t<r;)e[t]=u[t];return e;}var Ih=Ch;function Oh(u,e){for(var t=-1,r=u==null?0:u.length,n=0,i=[];++t<r;){var l=u[t];e(l,t,u)&&(i[n++]=l);}return i;}var Ei=Oh;function Mh(){return[];}var Ai=Mh,Eh=Ei,Ah=Ai,Lh=Object.prototype,wh=Lh.propertyIsEnumerable,wn=Object.getOwnPropertySymbols,Rh=wn?function(u){return u==null?[]:(u=Object(u),Eh(wn(u),function(e){return wh.call(u,e);}));}:Ah,sn=Rh,Dh=Br,bh=sn;function Nh(u,e){return Dh(u,bh(u),e);}var Bh=Nh;function Wh(u,e){for(var t=-1,r=e.length,n=u.length;++t<r;)u[n+t]=e[t];return u;}var on=Wh,Fh=Mi,Uh=Fh(Object.getPrototypeOf,Object),Li=Uh,jh=on,Yh=Li,Xh=sn,zh=Ai,$h=Object.getOwnPropertySymbols,Gh=$h?function(u){for(var e=[];u;)jh(e,Xh(u)),u=Yh(u);return e;}:zh,wi=Gh,Hh=Br,kh=wi;function Vh(u,e){return Hh(u,kh(u),e);}var Kh=Vh,Zh=on,Jh=ur;function Qh(u,e,t){var r=e(u);return Jh(u)?r:Zh(r,t(u));}var Ri=Qh,qh=Ri,_h=sn,tu=rn;function eu(u){return qh(u,tu,_h);}var Di=eu,ru=Ri,nu=wi,iu=nn;function su(u){return ru(u,iu,nu);}var ou=su,au=Ue,lu=Le,cu=au(lu,"DataView"),fu=cu,hu=Ue,uu=Le,du=hu(uu,"Promise"),pu=du,mu=Ue,vu=Le,yu=mu(vu,"Set"),bi=yu,gu=Ue,Pu=Le,xu=gu(Pu,"WeakMap"),Su=xu,zr=fu,$r=Qr,Gr=pu,Hr=bi,kr=Su,Ni=Je,er=mi,Rn="[object Map]",Tu="[object Object]",Dn="[object Promise]",bn="[object Set]",Nn="[object WeakMap]",Bn="[object DataView]",Cu=er(zr),Iu=er($r),Ou=er(Gr),Mu=er(Hr),Eu=er(kr),Fe=Ni;(zr&&Fe(new zr(new ArrayBuffer(1)))!=Bn||$r&&Fe(new $r())!=Rn||Gr&&Fe(Gr.resolve())!=Dn||Hr&&Fe(new Hr())!=bn||kr&&Fe(new kr())!=Nn)&&(Fe=function Fe(u){var e=Ni(u),t=e==Tu?u.constructor:void 0,r=t?er(t):"";if(r)switch(r){case Cu:return Bn;case Iu:return Rn;case Ou:return Dn;case Mu:return bn;case Eu:return Nn;}return e;});var Fr=Fe,Au=Object.prototype,Lu=Au.hasOwnProperty;function wu(u){var e=u.length,t=new u.constructor(e);return e&&typeof u[0]=="string"&&Lu.call(u,"index")&&(t.index=u.index,t.input=u.input),t;}var Ru=wu,Du=Le,bu=Du.Uint8Array,Bi=bu,Wn=Bi;function Nu(u){var e=new u.constructor(u.byteLength);return new Wn(e).set(new Wn(u)),e;}var an=Nu,Bu=an;function Wu(u,e){var t=e?Bu(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.byteLength);}var Fu=Wu,Uu=/\w*$/;function ju(u){var e=new u.constructor(u.source,Uu.exec(u));return e.lastIndex=u.lastIndex,e;}var Yu=ju,Fn=fr,Un=Fn?Fn.prototype:void 0,jn=Un?Un.valueOf:void 0;function Xu(u){return jn?Object(jn.call(u)):{};}var zu=Xu,$u=an;function Gu(u,e){var t=e?$u(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.length);}var Hu=Gu,ku=an,Vu=Fu,Ku=Yu,Zu=zu,Ju=Hu,Qu="[object Boolean]",qu="[object Date]",_u="[object Map]",td="[object Number]",ed="[object RegExp]",rd="[object Set]",nd="[object String]",id="[object Symbol]",sd="[object ArrayBuffer]",od="[object DataView]",ad="[object Float32Array]",ld="[object Float64Array]",cd="[object Int8Array]",fd="[object Int16Array]",hd="[object Int32Array]",ud="[object Uint8Array]",dd="[object Uint8ClampedArray]",pd="[object Uint16Array]",md="[object Uint32Array]";function vd(u,e,t){var r=u.constructor;switch(e){case sd:return ku(u);case Qu:case qu:return new r(+u);case od:return Vu(u,t);case ad:case ld:case cd:case fd:case hd:case ud:case dd:case pd:case md:return Ju(u,t);case _u:return new r();case td:case nd:return new r(u);case ed:return Ku(u);case rd:return new r();case id:return Zu(u);}}var yd=vd,gd=hr,Yn=Object.create,Pd=/* @__PURE__ */function(){function u(){}return function(e){if(!gd(e))return{};if(Yn)return Yn(e);u.prototype=e;var t=new u();return u.prototype=void 0,t;};}(),xd=Pd,Sd=xd,Td=Li,Cd=tn;function Id(u){return typeof u.constructor=="function"&&!Cd(u)?Sd(Td(u)):{};}var Od=Id,Md=Fr,Ed=De,Ad="[object Map]";function Ld(u){return Ed(u)&&Md(u)==Ad;}var wd=Ld,Rd=wd,Dd=Wr,Xn=_r,zn=Xn&&Xn.isMap,bd=zn?Dd(zn):Rd,Nd=bd,Bd=Fr,Wd=De,Fd="[object Set]";function Ud(u){return Wd(u)&&Bd(u)==Fd;}var jd=Ud,Yd=jd,Xd=Wr,$n=_r,Gn=$n&&$n.isSet,zd=Gn?Xd(Gn):Yd,Wi=zd,$d=/* @__PURE__ */Ne(Wi),Gd=yi,Hd=mc,kd=xi,Vd=ih,Kd=Sh,Zd=Th,Jd=Ih,Qd=Bh,qd=Kh,_d=Di,tp=ou,ep=Fr,rp=Ru,np=yd,ip=Od,sp=ur,op=qr,ap=Nd,lp=hr,cp=Wi,fp=rn,hp=nn,up=1,dp=2,pp=4,Fi="[object Arguments]",mp="[object Array]",vp="[object Boolean]",yp="[object Date]",gp="[object Error]",Ui="[object Function]",Pp="[object GeneratorFunction]",xp="[object Map]",Sp="[object Number]",ji="[object Object]",Tp="[object RegExp]",Cp="[object Set]",Ip="[object String]",Op="[object Symbol]",Mp="[object WeakMap]",Ep="[object ArrayBuffer]",Ap="[object DataView]",Lp="[object Float32Array]",wp="[object Float64Array]",Rp="[object Int8Array]",Dp="[object Int16Array]",bp="[object Int32Array]",Np="[object Uint8Array]",Bp="[object Uint8ClampedArray]",Wp="[object Uint16Array]",Fp="[object Uint32Array]",re={};re[Fi]=re[mp]=re[Ep]=re[Ap]=re[vp]=re[yp]=re[Lp]=re[wp]=re[Rp]=re[Dp]=re[bp]=re[xp]=re[Sp]=re[ji]=re[Tp]=re[Cp]=re[Ip]=re[Op]=re[Np]=re[Bp]=re[Wp]=re[Fp]=!0;re[gp]=re[Ui]=re[Mp]=!1;function yr(u,e,t,r,n,i){var l,o=e&up,a=e&dp,f=e&pp;if(t&&(l=n?t(u,r,n,i):t(u)),l!==void 0)return l;if(!lp(u))return u;var g=sp(u);if(g){if(l=rp(u),!o)return Jd(u,l);}else{var c=ep(u),m=c==Ui||c==Pp;if(op(u))return Zd(u,o);if(c==ji||c==Fi||m&&!n){if(l=a||m?{}:ip(u),!o)return a?qd(u,Kd(l,u)):Qd(u,Vd(l,u));}else{if(!re[c])return n?u:{};l=np(u,c,o);}}i||(i=new Gd());var x=i.get(u);if(x)return x;i.set(u,l),cp(u)?u.forEach(function(P){l.add(yr(P,e,t,P,u,i));}):ap(u)&&u.forEach(function(P,T){l.set(T,yr(P,e,t,T,u,i));});var M=f?a?tp:_d:a?hp:fp,S=g?void 0:M(u);return Hd(S||u,function(P,T){S&&(T=P,P=u[T]),kd(l,T,yr(P,e,t,T,u,i));}),l;}var Up=yr,jp=Up,Yp=1,Xp=4;function zp(u){return jp(u,Yp|Xp);}var $p=zp,ue=/* @__PURE__ */Ne($p);var Yi="1.1.18-beta.0",Gp="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var u=window.__netlessUA||"";u+=" ".concat(Gp,"@").concat(Yi),window.__netlessUA=u;}var Se={syncOpt:{interval:500},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:600},bezier:{maxDrawCount:1/0,combineUnitTime:500},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1}};function Ee(u){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=u.length;if(t<2)return"";var r=u[0],n=u[1];if(t===2)return"M".concat(ze(r),"L").concat(ze(n));var i="";for(var l=2,o=t-1;l<o;l++)r=u[l],n=u[l+1],i+=$e(r,n);return e?"M".concat($e(u[0],u[1]),"Q").concat(ze(u[1])).concat($e(u[1],u[2]),"T").concat(i).concat($e(u[t-1],u[0])).concat($e(u[0],u[1]),"Z"):"M".concat(ze(u[0]),"Q").concat(ze(u[1])).concat($e(u[1],u[2])).concat(u.length>3?"T":"").concat(i,"L").concat(ze(u[t-1]));}var Pe=/*#__PURE__*/function(){function Pe(e){_classCallCheck(this,Pe);at(this,"maxImageWidth",Se.pencilEraser.maxImageWidth);at(this,"maxImageHeight",Se.pencilEraser.maxImageHeight);at(this,"syncUnitTime",Se.syncOpt.interval);at(this,"vNodes");at(this,"drawLayer");at(this,"fullLayer");at(this,"workId");at(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,i=e.workId,l=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=i,this.syncUnitTime=l.syncUnitTime||this.syncUnitTime;}return _createClass(Pe,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var i=r[r.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,i,l;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&r&&(r.opt=e,(l=this.vNodes)==null||l.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,i;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var l=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(l.length!==1)return;var o=l[0],a=e.pos,f=e.zIndex,g=e.scale,c=e.angle,m=e.translate,x={};he(f)&&(x.zIndex=f),a&&(x.pos=[a[0],a[1]]),g&&(x.scale=g),c&&(x.rotate=c),m&&(x.translate=m),o.attr(x);var M=o==null?void 0:o.getBoundingClientRect();return M&&(t=Wt(t,{x:Math.floor(M.x-Pe.SafeBorderPadding),y:Math.floor(M.y-Pe.SafeBorderPadding),w:Math.floor(M.width+Pe.SafeBorderPadding*2),h:Math.floor(M.height+Pe.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(r,{rect:t,centerPos:a}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,i=e.pos,l=e.layer,o=l.parent;if(t)try{var f=(l.renderer.glRenderer||l.renderer.canvasRenderer).options.displayRatio,g=r.getBoundingClientRect(),c=g.width*f*l.worldScaling[0],m=g.height*f*l.worldScaling[1];var x=1;(c>this.maxImageWidth||m>this.maxImageHeight)&&(x=Math.min(this.maxImageWidth/c,this.maxImageHeight/m));var M=l.getAttribute("scale");M=[M[0]*x,M[1]*x];var S=l.parent.parent,P=l.getAttribute("translate"),_T28=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),S,{offscreen:o.offscreen,width:o.width,height:o.height,contextType:"2d",autoRender:!1,bufferSize:500},M,P),_h26=r.cloneNode(!0);this.addEraserlines(_h26,n,i,!1),_T28.appendChild(_h26);var p=_T28.parent;p.render();var d=_T28.renderer.canvasRenderer,y=d.context;if(!y)return;var O=d.options.displayRatio,E=_h26.getBoundingClientRect(),w={x:E.x,y:E.y,w:E.width,h:E.height},B={x:0,y:0,w:S.width,h:S.height};if(sr(w,B)===ye.outside){xe(_h26,p),S.removeChild(p),this.isDelete=!0;return;}var b=ue(w);b.x=Math.floor(Math.max(w.x,0)),b.y=Math.floor(Math.max(w.y,0)),b.w=Math.min(w.x+w.w,S.width)-b.x,b.h=Math.min(w.y+w.h,S.height)-b.y;var W=this.getGroupRect(b,O),D=W.x,R=W.y,j=W.w,k=W.h;var J=y.getImageData(D,R,j,k);if(this.isTransparentRectByCanvas(J)){xe(_h26,p),S.removeChild(p),this.isDelete=!0,J=null;return;}xe(r,o);var st=this.createSpriteNode({imageData:J,safariRect:b,originRect:w,worldScaling:_T28.worldScaling});st&&r.append(st),xe(_h26,p),S.removeChild(p),o.deleteTexture(J),J=null;}catch(a){console.error(a);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,i){var l=r.width,o=r.height,a="bitMap-".concat(e),f=t.layer(a,r),g=new de({anchor:[0.5,0.5],pos:[l*0.5,o*0.5],size:[l,o],name:"viewport",id:e});return g.setAttribute("scale",n),g.setAttribute("translate",i),f.append(g),g;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),i=Math.floor(e.w*t),l=Math.floor(e.h*t);return{x:r,y:n,w:i,h:l};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var i=_step13.value;var l=i.thickness,o=i.op;var _iterator14=_createForOfIteratorHelper(o),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var a=_step14.value;var f=a.map(function(M,S){return S%2?M-r[1]:M-r[0];}),g=this.computEraserPoints(f,l),c=Ee(g,!0),m={pos:[0,0],d:c,fillColor:"rgba(0,0,0,1)"},x=new Ae(m);x.addEventListener("beforerender",function(_ref164){var M=_ref164.detail;var S=M.context;n?S.blendFuncSeparate(S.ZERO,S.ZERO,S.ZERO,S.ZERO):S.globalCompositeOperation="destination-out";}),x.addEventListener("afterrender",function(_ref165){var M=_ref165.detail;var S=M.context;n?S.blendFuncSeparate(S.SRC_ALPHA,S.ONE_MINUS_SRC_ALPHA,S.ONE,S.ONE_MINUS_SRC_ALPHA):S.globalCompositeOperation="source-over";}),e.append(x);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,i=e.originRect;var l;if(typeof OffscreenCanvas=="function"){l=new OffscreenCanvas(t.width,t.height);var g=l.getContext("2d");g&&g.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){l=document.createElement("canvas"),l.width=t.width,l.height=t.height;var _g3=l.getContext("2d");_g3&&_g3.putImageData(t,0,0);}if(!l)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var o=[Math.floor(i.w/r[0]),Math.floor(i.h/r[1])],a=[Math.floor((n.x-i.x)/r[0]),Math.floor((n.y-i.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],f={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:o,texture:l,textureRect:a};return new hi(f);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Dt(e[0],e[1]);return Dt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var i,l;for(var o=0;o<e.length;o+=2){var a=new Dt(e[o],e[o+1]);var f=void 0;if(o==e.length-2){var g=new Dt(e[o-2],e[o-1]);f=ot.Sub(a,g).uni(),i=a;}else{o===0&&(l=a);var _g4=new Dt(e[o+2],e[o+3]);f=ot.Sub(_g4,a).uni();}if(f){var _g5=ot.Per(f).mul(t);r.push(Dt.Sub(a,_g5)),n.push(Dt.Add(a,_g5));}}if(i&&l){var _o3=Dt.GetSemicircleStroke(i,r[r.length-1],-1,8),_a4=Dt.GetSemicircleStroke(l,n[0],-1,8);return r.concat(_o3,n.reverse(),_a4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var i;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var l=_step15.value;r?gm(r,l,e):(l.remove(),_me(l,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(i=this.drawLayer)==null||i.getElementsByName(t).forEach(function(o){var a;o.remove(),_me(o,(a=_this61.drawLayer)==null?void 0:a.parent);}):this.fullLayer.getElementsByName(t).forEach(function(o){o.remove(),_me(o,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_me(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var h;var t=e.node,r=e.opt,n=e.vNodes,i=e.willSerializeData,l=e.targetNode,o=r.zIndex,a=r.translate,f=r.angle,g=r.originPoint,c=r.scenePoint,m=r.scale,x=r.pointMap,M=r.thickness;var S;var P=l&&ue(l)||n.get(t.name);if(!P)return;he(o)&&(t.setAttribute("zIndex",o),P.opt.zIndex=o);var T=t.parent;if(T){if(g&&m&&l){var p=[P.op[0],P.op[1]];mn(P.op,c,m,a);var d=[P.op[0],P.op[1]],y=[d[0]-p[0],d[1]-p[1]];if(P.centerPos=[P.centerPos[0]+y[0],P.centerPos[1]+y[1]],P.opt.translate=void 0,P.opt.scale=void 0,P.opt.eraserlines)for(var _i3=0,_Object$values=Object.values(P.opt.eraserlines);_i3<_Object$values.length;_i3++){var O=_Object$values[_i3];var E=O.op,w=O.thickness;O.thickness=w*Math.max(m[0],m[1]);for(var B=0;B<E.length;B++)vn(E[B],c,m,a);}}else if(a){if(t.setAttribute("translate",a),P.opt.translate=a,l){var _p6=[a[0]*T.worldScaling[0],a[1]*T.worldScaling[1]];S=cr(P.rect,_p6),P.rect=S;}else{var _p7=Pe.getRectFromLayer(T,t.name);P.rect=_p7||P.rect;}}else if(he(f))if(t.setAttribute("rotate",f),P.opt.rotate=f,l)S=ns(P.rect,f),P.rect=S;else{var _p8=Pe.getRectFromLayer(T,t.name);P.rect=_p8||P.rect;}if(x){var _p9=x.get(t.name);if(_p9)for(var _d11=0,_y9=0;_d11<P.op.length;_d11+=3,_y9++)P.op[_d11]=_p9[_y9][0],P.op[_d11+1]=_p9[_y9][1];}if(M&&(h=P==null?void 0:P.opt)!=null&&h.thickness&&(P.opt.thickness=M),i&&!(g&&m&&l)){if(a){var _p10=P.op.map(function(d,y){var O=y%3;return O===0?d+a[0]:O===1?d+a[1]:d;});if(P.op=_p10,P.centerPos=[P.centerPos[0]+a[0],P.centerPos[1]+a[1]],P!=null&&P.opt&&(P.opt.translate=void 0),P.opt.eraserlines)for(var _i4=0,_Object$values2=Object.values(P.opt.eraserlines);_i4<_Object$values2.length;_i4++){var _d12=_Object$values2[_i4];var _y10=_d12.op;for(var _O6=0;_O6<_y10.length;_O6++){var _E3=_y10[_O6].map(function(w,B){return B%2?w+a[1]:w+a[0];});_d12.op[_O6]=_E3;}}}else if(he(f)){var _p11=P.op;if(fm(_p11,P.centerPos,f),P.op=_p11,P!=null&&P.opt&&(P.opt.rotate=void 0),P.opt.eraserlines)for(var _i5=0,_Object$values3=Object.values(P.opt.eraserlines);_i5<_Object$values3.length;_i5++){var _d13=_Object$values3[_i5];var _y11=_d13.op;for(var _O7=0;_O7<_y11.length;_O7++)hm(_y11[_O7],P.centerPos,f);}}}P&&n.setInfo(t.name,P);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Pe.SafeBorderPadding),y:Math.floor(n.y-Pe.SafeBorderPadding),w:Math.floor(n.width+Pe.SafeBorderPadding*2),h:Math.floor(n.height+Pe.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,i=e.updateOpt,l=e.willSerializeData;return!!(l&&(i.angle||i.translate)||i.thickness&&r.thickness&&r.thickness!==i.thickness||i.strokeType&&r.strokeType&&r.strokeType!==i.strokeType||i.originPoint&&i.scenePoint&&i.scale||i.pointMap&&i.pointMap.has(n.name)||t===St.Text&&(i.fontSize||i.translate||i.textInfos&&i.textInfos.get(n.name))||t===St.Image&&(i.angle||i.translate||i.scale||i.strokeColor&&i.type===Zr.Iconify)||t===i.toolsType&&i.willRefresh||r.eraserlines&&r.eraserlines.length&&(i.strokeColor||i.fillColor));}}]);}();at(Pe,"SafeBorderPadding",10);var Mt=Pe;var ln=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var cn={exports:{}};cn.exports;(function(u){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function l(a,f){if(!i[a]){i[a]={};for(var g=0;g<a.length;g++)i[a][a.charAt(g)]=g;}return i[a][f];}var o={compressToBase64:function compressToBase64(a){if(a==null)return"";var f=o._compress(a,6,function(g){return r.charAt(g);});switch(f.length%4){default:case 0:return f;case 1:return f+"===";case 2:return f+"==";case 3:return f+"=";}},decompressFromBase64:function decompressFromBase64(a){return a==null?"":a==""?null:o._decompress(a.length,32,function(f){return l(r,a.charAt(f));});},compressToUTF16:function compressToUTF16(a){return a==null?"":o._compress(a,15,function(f){return t(f+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(a){return a==null?"":a==""?null:o._decompress(a.length,16384,function(f){return a.charCodeAt(f)-32;});},//compress into uint8array (UCS-2 big endian format)
399
+ Rf(f,a)))&&o.push(f);return o;}var Oi=Bf,Wf=Object.prototype;function Ff(u){var e=u&&u.constructor,t=typeof e=="function"&&e.prototype||Wf;return u===t;}var tn=Ff;function Uf(u,e){return function(t){return u(e(t));};}var Mi=Uf,jf=Mi,Yf=jf(Object.keys,Object),Xf=Yf,zf=tn,$f=Xf,Gf=Object.prototype,Hf=Gf.hasOwnProperty;function kf(u){if(!zf(u))return $f(u);var e=[];for(var t in Object(u))Hf.call(u,t)&&t!="constructor"&&e.push(t);return e;}var Vf=kf,Kf=pi,Zf=Ci;function Jf(u){return u!=null&&Zf(u.length)&&!Kf(u);}var en=Jf,Qf=Oi,qf=Vf,_f=en;function th(u){return _f(u)?Qf(u):qf(u);}var rn=th,eh=Br,rh=rn;function nh(u,e){return u&&eh(e,rh(e),u);}var ih=nh;function sh(u){var e=[];if(u!=null)for(var t in Object(u))e.push(t);return e;}var oh=sh,ah=hr,lh=tn,ch=oh,fh=Object.prototype,hh=fh.hasOwnProperty;function uh(u){if(!ah(u))return ch(u);var e=lh(u),t=[];for(var r in u)r=="constructor"&&(e||!hh.call(u,r))||t.push(r);return t;}var dh=uh,ph=Oi,mh=dh,vh=en;function yh(u){return vh(u)?ph(u,!0):mh(u);}var nn=yh,gh=Br,Ph=nn;function xh(u,e){return u&&gh(e,Ph(e),u);}var Sh=xh,xr={exports:{}};xr.exports;(function(u,e){var t=Le,r=e&&!e.nodeType&&e,n=r&&!0&&u&&!u.nodeType&&u,i=n&&n.exports===r,l=i?t.Buffer:void 0,o=l?l.allocUnsafe:void 0;function a(f,g){if(g)return f.slice();var c=f.length,m=o?o(c):new f.constructor(c);return f.copy(m),m;}u.exports=a;})(xr,xr.exports);var Th=xr.exports;function Ch(u,e){var t=-1,r=u.length;for(e||(e=Array(r));++t<r;)e[t]=u[t];return e;}var Ih=Ch;function Oh(u,e){for(var t=-1,r=u==null?0:u.length,n=0,i=[];++t<r;){var l=u[t];e(l,t,u)&&(i[n++]=l);}return i;}var Ei=Oh;function Mh(){return[];}var Ai=Mh,Eh=Ei,Ah=Ai,Lh=Object.prototype,wh=Lh.propertyIsEnumerable,wn=Object.getOwnPropertySymbols,Rh=wn?function(u){return u==null?[]:(u=Object(u),Eh(wn(u),function(e){return wh.call(u,e);}));}:Ah,sn=Rh,Dh=Br,bh=sn;function Nh(u,e){return Dh(u,bh(u),e);}var Bh=Nh;function Wh(u,e){for(var t=-1,r=e.length,n=u.length;++t<r;)u[n+t]=e[t];return u;}var on=Wh,Fh=Mi,Uh=Fh(Object.getPrototypeOf,Object),Li=Uh,jh=on,Yh=Li,Xh=sn,zh=Ai,$h=Object.getOwnPropertySymbols,Gh=$h?function(u){for(var e=[];u;)jh(e,Xh(u)),u=Yh(u);return e;}:zh,wi=Gh,Hh=Br,kh=wi;function Vh(u,e){return Hh(u,kh(u),e);}var Kh=Vh,Zh=on,Jh=ur;function Qh(u,e,t){var r=e(u);return Jh(u)?r:Zh(r,t(u));}var Ri=Qh,qh=Ri,_h=sn,tu=rn;function eu(u){return qh(u,tu,_h);}var Di=eu,ru=Ri,nu=wi,iu=nn;function su(u){return ru(u,iu,nu);}var ou=su,au=Ue,lu=Le,cu=au(lu,"DataView"),fu=cu,hu=Ue,uu=Le,du=hu(uu,"Promise"),pu=du,mu=Ue,vu=Le,yu=mu(vu,"Set"),bi=yu,gu=Ue,Pu=Le,xu=gu(Pu,"WeakMap"),Su=xu,zr=fu,$r=Qr,Gr=pu,Hr=bi,kr=Su,Ni=Je,er=mi,Rn="[object Map]",Tu="[object Object]",Dn="[object Promise]",bn="[object Set]",Nn="[object WeakMap]",Bn="[object DataView]",Cu=er(zr),Iu=er($r),Ou=er(Gr),Mu=er(Hr),Eu=er(kr),Fe=Ni;(zr&&Fe(new zr(new ArrayBuffer(1)))!=Bn||$r&&Fe(new $r())!=Rn||Gr&&Fe(Gr.resolve())!=Dn||Hr&&Fe(new Hr())!=bn||kr&&Fe(new kr())!=Nn)&&(Fe=function Fe(u){var e=Ni(u),t=e==Tu?u.constructor:void 0,r=t?er(t):"";if(r)switch(r){case Cu:return Bn;case Iu:return Rn;case Ou:return Dn;case Mu:return bn;case Eu:return Nn;}return e;});var Fr=Fe,Au=Object.prototype,Lu=Au.hasOwnProperty;function wu(u){var e=u.length,t=new u.constructor(e);return e&&typeof u[0]=="string"&&Lu.call(u,"index")&&(t.index=u.index,t.input=u.input),t;}var Ru=wu,Du=Le,bu=Du.Uint8Array,Bi=bu,Wn=Bi;function Nu(u){var e=new u.constructor(u.byteLength);return new Wn(e).set(new Wn(u)),e;}var an=Nu,Bu=an;function Wu(u,e){var t=e?Bu(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.byteLength);}var Fu=Wu,Uu=/\w*$/;function ju(u){var e=new u.constructor(u.source,Uu.exec(u));return e.lastIndex=u.lastIndex,e;}var Yu=ju,Fn=fr,Un=Fn?Fn.prototype:void 0,jn=Un?Un.valueOf:void 0;function Xu(u){return jn?Object(jn.call(u)):{};}var zu=Xu,$u=an;function Gu(u,e){var t=e?$u(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.length);}var Hu=Gu,ku=an,Vu=Fu,Ku=Yu,Zu=zu,Ju=Hu,Qu="[object Boolean]",qu="[object Date]",_u="[object Map]",td="[object Number]",ed="[object RegExp]",rd="[object Set]",nd="[object String]",id="[object Symbol]",sd="[object ArrayBuffer]",od="[object DataView]",ad="[object Float32Array]",ld="[object Float64Array]",cd="[object Int8Array]",fd="[object Int16Array]",hd="[object Int32Array]",ud="[object Uint8Array]",dd="[object Uint8ClampedArray]",pd="[object Uint16Array]",md="[object Uint32Array]";function vd(u,e,t){var r=u.constructor;switch(e){case sd:return ku(u);case Qu:case qu:return new r(+u);case od:return Vu(u,t);case ad:case ld:case cd:case fd:case hd:case ud:case dd:case pd:case md:return Ju(u,t);case _u:return new r();case td:case nd:return new r(u);case ed:return Ku(u);case rd:return new r();case id:return Zu(u);}}var yd=vd,gd=hr,Yn=Object.create,Pd=/* @__PURE__ */function(){function u(){}return function(e){if(!gd(e))return{};if(Yn)return Yn(e);u.prototype=e;var t=new u();return u.prototype=void 0,t;};}(),xd=Pd,Sd=xd,Td=Li,Cd=tn;function Id(u){return typeof u.constructor=="function"&&!Cd(u)?Sd(Td(u)):{};}var Od=Id,Md=Fr,Ed=De,Ad="[object Map]";function Ld(u){return Ed(u)&&Md(u)==Ad;}var wd=Ld,Rd=wd,Dd=Wr,Xn=_r,zn=Xn&&Xn.isMap,bd=zn?Dd(zn):Rd,Nd=bd,Bd=Fr,Wd=De,Fd="[object Set]";function Ud(u){return Wd(u)&&Bd(u)==Fd;}var jd=Ud,Yd=jd,Xd=Wr,$n=_r,Gn=$n&&$n.isSet,zd=Gn?Xd(Gn):Yd,Wi=zd,$d=/* @__PURE__ */Ne(Wi),Gd=yi,Hd=mc,kd=xi,Vd=ih,Kd=Sh,Zd=Th,Jd=Ih,Qd=Bh,qd=Kh,_d=Di,tp=ou,ep=Fr,rp=Ru,np=yd,ip=Od,sp=ur,op=qr,ap=Nd,lp=hr,cp=Wi,fp=rn,hp=nn,up=1,dp=2,pp=4,Fi="[object Arguments]",mp="[object Array]",vp="[object Boolean]",yp="[object Date]",gp="[object Error]",Ui="[object Function]",Pp="[object GeneratorFunction]",xp="[object Map]",Sp="[object Number]",ji="[object Object]",Tp="[object RegExp]",Cp="[object Set]",Ip="[object String]",Op="[object Symbol]",Mp="[object WeakMap]",Ep="[object ArrayBuffer]",Ap="[object DataView]",Lp="[object Float32Array]",wp="[object Float64Array]",Rp="[object Int8Array]",Dp="[object Int16Array]",bp="[object Int32Array]",Np="[object Uint8Array]",Bp="[object Uint8ClampedArray]",Wp="[object Uint16Array]",Fp="[object Uint32Array]",re={};re[Fi]=re[mp]=re[Ep]=re[Ap]=re[vp]=re[yp]=re[Lp]=re[wp]=re[Rp]=re[Dp]=re[bp]=re[xp]=re[Sp]=re[ji]=re[Tp]=re[Cp]=re[Ip]=re[Op]=re[Np]=re[Bp]=re[Wp]=re[Fp]=!0;re[gp]=re[Ui]=re[Mp]=!1;function yr(u,e,t,r,n,i){var l,o=e&up,a=e&dp,f=e&pp;if(t&&(l=n?t(u,r,n,i):t(u)),l!==void 0)return l;if(!lp(u))return u;var g=sp(u);if(g){if(l=rp(u),!o)return Jd(u,l);}else{var c=ep(u),m=c==Ui||c==Pp;if(op(u))return Zd(u,o);if(c==ji||c==Fi||m&&!n){if(l=a||m?{}:ip(u),!o)return a?qd(u,Kd(l,u)):Qd(u,Vd(l,u));}else{if(!re[c])return n?u:{};l=np(u,c,o);}}i||(i=new Gd());var x=i.get(u);if(x)return x;i.set(u,l),cp(u)?u.forEach(function(P){l.add(yr(P,e,t,P,u,i));}):ap(u)&&u.forEach(function(P,T){l.set(T,yr(P,e,t,T,u,i));});var M=f?a?tp:_d:a?hp:fp,S=g?void 0:M(u);return Hd(S||u,function(P,T){S&&(T=P,P=u[T]),kd(l,T,yr(P,e,t,T,u,i));}),l;}var Up=yr,jp=Up,Yp=1,Xp=4;function zp(u){return jp(u,Yp|Xp);}var $p=zp,ue=/* @__PURE__ */Ne($p);var Yi="1.1.18-beta.1",Gp="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var u=window.__netlessUA||"";u+=" ".concat(Gp,"@").concat(Yi),window.__netlessUA=u;}var Se={syncOpt:{interval:300},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:600},bezier:{maxDrawCount:1/0,combineUnitTime:300},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1}};function Ee(u){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=u.length;if(t<2)return"";var r=u[0],n=u[1];if(t===2)return"M".concat(ze(r),"L").concat(ze(n));var i="";for(var l=2,o=t-1;l<o;l++)r=u[l],n=u[l+1],i+=$e(r,n);return e?"M".concat($e(u[0],u[1]),"Q").concat(ze(u[1])).concat($e(u[1],u[2]),"T").concat(i).concat($e(u[t-1],u[0])).concat($e(u[0],u[1]),"Z"):"M".concat(ze(u[0]),"Q").concat(ze(u[1])).concat($e(u[1],u[2])).concat(u.length>3?"T":"").concat(i,"L").concat(ze(u[t-1]));}var Pe=/*#__PURE__*/function(){function Pe(e){_classCallCheck(this,Pe);at(this,"maxImageWidth",Se.pencilEraser.maxImageWidth);at(this,"maxImageHeight",Se.pencilEraser.maxImageHeight);at(this,"syncUnitTime",Se.syncOpt.interval);at(this,"vNodes");at(this,"drawLayer");at(this,"fullLayer");at(this,"workId");at(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,i=e.workId,l=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=i,this.syncUnitTime=l.syncUnitTime||this.syncUnitTime;}return _createClass(Pe,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var i=r[r.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,i,l;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&r&&(r.opt=e,(l=this.vNodes)==null||l.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,i;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var l=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(l.length!==1)return;var o=l[0],a=e.pos,f=e.zIndex,g=e.scale,c=e.angle,m=e.translate,x={};he(f)&&(x.zIndex=f),a&&(x.pos=[a[0],a[1]]),g&&(x.scale=g),c&&(x.rotate=c),m&&(x.translate=m),o.attr(x);var M=o==null?void 0:o.getBoundingClientRect();return M&&(t=Wt(t,{x:Math.floor(M.x-Pe.SafeBorderPadding),y:Math.floor(M.y-Pe.SafeBorderPadding),w:Math.floor(M.width+Pe.SafeBorderPadding*2),h:Math.floor(M.height+Pe.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(r,{rect:t,centerPos:a}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,i=e.pos,l=e.layer,o=l.parent;if(t)try{var f=(l.renderer.glRenderer||l.renderer.canvasRenderer).options.displayRatio,g=r.getBoundingClientRect(),c=g.width*f*l.worldScaling[0],m=g.height*f*l.worldScaling[1];var x=1;(c>this.maxImageWidth||m>this.maxImageHeight)&&(x=Math.min(this.maxImageWidth/c,this.maxImageHeight/m));var M=l.getAttribute("scale");M=[M[0]*x,M[1]*x];var S=l.parent.parent,P=l.getAttribute("translate"),_T28=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),S,{offscreen:o.offscreen,width:o.width,height:o.height,contextType:"2d",autoRender:!1,bufferSize:500},M,P),_h26=r.cloneNode(!0);this.addEraserlines(_h26,n,i,!1),_T28.appendChild(_h26);var p=_T28.parent;p.render();var d=_T28.renderer.canvasRenderer,y=d.context;if(!y)return;var O=d.options.displayRatio,E=_h26.getBoundingClientRect(),w={x:E.x,y:E.y,w:E.width,h:E.height},B={x:0,y:0,w:S.width,h:S.height};if(sr(w,B)===ye.outside){xe(_h26,p),S.removeChild(p),this.isDelete=!0;return;}var b=ue(w);b.x=Math.floor(Math.max(w.x,0)),b.y=Math.floor(Math.max(w.y,0)),b.w=Math.min(w.x+w.w,S.width)-b.x,b.h=Math.min(w.y+w.h,S.height)-b.y;var W=this.getGroupRect(b,O),D=W.x,R=W.y,j=W.w,k=W.h;var J=y.getImageData(D,R,j,k);if(this.isTransparentRectByCanvas(J)){xe(_h26,p),S.removeChild(p),this.isDelete=!0,J=null;return;}xe(r,o);var st=this.createSpriteNode({imageData:J,safariRect:b,originRect:w,worldScaling:_T28.worldScaling});st&&r.append(st),xe(_h26,p),S.removeChild(p),o.deleteTexture(J),J=null;}catch(a){console.error("[BaseShapeTool] drawEraserlines error:",a);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,i){var l=r.width,o=r.height,a="bitMap-".concat(e),f=t.layer(a,r),g=new de({anchor:[0.5,0.5],pos:[l*0.5,o*0.5],size:[l,o],name:"viewport",id:e});return g.setAttribute("scale",n),g.setAttribute("translate",i),f.append(g),g;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),i=Math.floor(e.w*t),l=Math.floor(e.h*t);return{x:r,y:n,w:i,h:l};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var i=_step13.value;var l=i.thickness,o=i.op;var _iterator14=_createForOfIteratorHelper(o),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var a=_step14.value;var f=a.map(function(M,S){return S%2?M-r[1]:M-r[0];}),g=this.computEraserPoints(f,l),c=Ee(g,!0),m={pos:[0,0],d:c,fillColor:"rgba(0,0,0,1)"},x=new Ae(m);x.addEventListener("beforerender",function(_ref164){var M=_ref164.detail;var S=M.context;n?S.blendFuncSeparate(S.ZERO,S.ZERO,S.ZERO,S.ZERO):S.globalCompositeOperation="destination-out";}),x.addEventListener("afterrender",function(_ref165){var M=_ref165.detail;var S=M.context;n?S.blendFuncSeparate(S.SRC_ALPHA,S.ONE_MINUS_SRC_ALPHA,S.ONE,S.ONE_MINUS_SRC_ALPHA):S.globalCompositeOperation="source-over";}),e.append(x);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,i=e.originRect;var l;if(typeof OffscreenCanvas=="function"){l=new OffscreenCanvas(t.width,t.height);var g=l.getContext("2d");g&&g.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){l=document.createElement("canvas"),l.width=t.width,l.height=t.height;var _g3=l.getContext("2d");_g3&&_g3.putImageData(t,0,0);}if(!l)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var o=[Math.floor(i.w/r[0]),Math.floor(i.h/r[1])],a=[Math.floor((n.x-i.x)/r[0]),Math.floor((n.y-i.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],f={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:o,texture:l,textureRect:a};return new hi(f);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Dt(e[0],e[1]);return Dt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var i,l;for(var o=0;o<e.length;o+=2){var a=new Dt(e[o],e[o+1]);var f=void 0;if(o==e.length-2){var g=new Dt(e[o-2],e[o-1]);f=ot.Sub(a,g).uni(),i=a;}else{o===0&&(l=a);var _g4=new Dt(e[o+2],e[o+3]);f=ot.Sub(_g4,a).uni();}if(f){var _g5=ot.Per(f).mul(t);r.push(Dt.Sub(a,_g5)),n.push(Dt.Add(a,_g5));}}if(i&&l){var _o3=Dt.GetSemicircleStroke(i,r[r.length-1],-1,8),_a4=Dt.GetSemicircleStroke(l,n[0],-1,8);return r.concat(_o3,n.reverse(),_a4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var i;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var l=_step15.value;r?gm(r,l,e):(l.remove(),_me(l,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(i=this.drawLayer)==null||i.getElementsByName(t).forEach(function(o){var a;o.remove(),_me(o,(a=_this61.drawLayer)==null?void 0:a.parent);}):this.fullLayer.getElementsByName(t).forEach(function(o){o.remove(),_me(o,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_me(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var h;var t=e.node,r=e.opt,n=e.vNodes,i=e.willSerializeData,l=e.targetNode,o=r.zIndex,a=r.translate,f=r.angle,g=r.originPoint,c=r.scenePoint,m=r.scale,x=r.pointMap,M=r.thickness;var S;var P=l&&ue(l)||n.get(t.name);if(!P)return;he(o)&&(t.setAttribute("zIndex",o),P.opt.zIndex=o);var T=t.parent;if(T){if(g&&m&&l){var p=[P.op[0],P.op[1]];mn(P.op,c,m,a);var d=[P.op[0],P.op[1]],y=[d[0]-p[0],d[1]-p[1]];if(P.centerPos=[P.centerPos[0]+y[0],P.centerPos[1]+y[1]],P.opt.translate=void 0,P.opt.scale=void 0,P.opt.eraserlines)for(var _i3=0,_Object$values=Object.values(P.opt.eraserlines);_i3<_Object$values.length;_i3++){var O=_Object$values[_i3];var E=O.op,w=O.thickness;O.thickness=w*Math.max(m[0],m[1]);for(var B=0;B<E.length;B++)vn(E[B],c,m,a);}}else if(a){if(t.setAttribute("translate",a),P.opt.translate=a,l){var _p6=[a[0]*T.worldScaling[0],a[1]*T.worldScaling[1]];S=cr(P.rect,_p6),P.rect=S;}else{var _p7=Pe.getRectFromLayer(T,t.name);P.rect=_p7||P.rect;}}else if(he(f))if(t.setAttribute("rotate",f),P.opt.rotate=f,l)S=ns(P.rect,f),P.rect=S;else{var _p8=Pe.getRectFromLayer(T,t.name);P.rect=_p8||P.rect;}if(x){var _p9=x.get(t.name);if(_p9)for(var _d11=0,_y9=0;_d11<P.op.length;_d11+=3,_y9++)P.op[_d11]=_p9[_y9][0],P.op[_d11+1]=_p9[_y9][1];}if(M&&(h=P==null?void 0:P.opt)!=null&&h.thickness&&(P.opt.thickness=M),i&&!(g&&m&&l)){if(a){var _p10=P.op.map(function(d,y){var O=y%3;return O===0?d+a[0]:O===1?d+a[1]:d;});if(P.op=_p10,P.centerPos=[P.centerPos[0]+a[0],P.centerPos[1]+a[1]],P!=null&&P.opt&&(P.opt.translate=void 0),P.opt.eraserlines)for(var _i4=0,_Object$values2=Object.values(P.opt.eraserlines);_i4<_Object$values2.length;_i4++){var _d12=_Object$values2[_i4];var _y10=_d12.op;for(var _O6=0;_O6<_y10.length;_O6++){var _E3=_y10[_O6].map(function(w,B){return B%2?w+a[1]:w+a[0];});_d12.op[_O6]=_E3;}}}else if(he(f)){var _p11=P.op;if(fm(_p11,P.centerPos,f),P.op=_p11,P!=null&&P.opt&&(P.opt.rotate=void 0),P.opt.eraserlines)for(var _i5=0,_Object$values3=Object.values(P.opt.eraserlines);_i5<_Object$values3.length;_i5++){var _d13=_Object$values3[_i5];var _y11=_d13.op;for(var _O7=0;_O7<_y11.length;_O7++)hm(_y11[_O7],P.centerPos,f);}}}P&&n.setInfo(t.name,P);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Pe.SafeBorderPadding),y:Math.floor(n.y-Pe.SafeBorderPadding),w:Math.floor(n.width+Pe.SafeBorderPadding*2),h:Math.floor(n.height+Pe.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,i=e.updateOpt,l=e.willSerializeData;return!!(l&&(i.angle||i.translate)||i.thickness&&r.thickness&&r.thickness!==i.thickness||i.strokeType&&r.strokeType&&r.strokeType!==i.strokeType||i.originPoint&&i.scenePoint&&i.scale||i.pointMap&&i.pointMap.has(n.name)||t===St.Text&&(i.fontSize||i.translate||i.textInfos&&i.textInfos.get(n.name))||t===St.Image&&(i.angle||i.translate||i.scale||i.strokeColor&&i.type===Zr.Iconify)||t===i.toolsType&&i.willRefresh||r.eraserlines&&r.eraserlines.length&&(i.strokeColor||i.fillColor));}}]);}();at(Pe,"SafeBorderPadding",10);var Mt=Pe;var ln=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var cn={exports:{}};cn.exports;(function(u){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function l(a,f){if(!i[a]){i[a]={};for(var g=0;g<a.length;g++)i[a][a.charAt(g)]=g;}return i[a][f];}var o={compressToBase64:function compressToBase64(a){if(a==null)return"";var f=o._compress(a,6,function(g){return r.charAt(g);});switch(f.length%4){default:case 0:return f;case 1:return f+"===";case 2:return f+"==";case 3:return f+"=";}},decompressFromBase64:function decompressFromBase64(a){return a==null?"":a==""?null:o._decompress(a.length,32,function(f){return l(r,a.charAt(f));});},compressToUTF16:function compressToUTF16(a){return a==null?"":o._compress(a,15,function(f){return t(f+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(a){return a==null?"":a==""?null:o._decompress(a.length,16384,function(f){return a.charCodeAt(f)-32;});},//compress into uint8array (UCS-2 big endian format)
400
400
  compressToUint8Array:function compressToUint8Array(a){for(var f=o.compress(a),g=new Uint8Array(f.length*2),c=0,m=f.length;c<m;c++){var x=f.charCodeAt(c);g[c*2]=x>>>8,g[c*2+1]=x%256;}return g;},//decompress from uint8array (UCS-2 big endian format)
401
401
  decompressFromUint8Array:function decompressFromUint8Array(a){if(a==null)return o.decompress(a);for(var f=new Array(a.length/2),g=0,c=f.length;g<c;g++)f[g]=a[g*2]*256+a[g*2+1];var m=[];return f.forEach(function(x){m.push(t(x));}),o.decompress(m.join(""));},//compress into a string that is already URI encoded
402
402
  compressToEncodedURIComponent:function compressToEncodedURIComponent(a){return a==null?"":o._compress(a,6,function(f){return n.charAt(f);});},//decompress from an output of compressToEncodedURIComponent
@@ -396,7 +396,7 @@ _inherits(o,_r$default22);return _createClass(o,[{key:"texture",get:function get
396
396
  f=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
397
397
  n&&(f=="offset"||f=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
398
398
  i&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||// Skip index properties.
399
- Rf(f,a)))&&o.push(f);return o;}var Oi=Bf,Wf=Object.prototype;function Ff(u){var e=u&&u.constructor,t=typeof e=="function"&&e.prototype||Wf;return u===t;}var tn=Ff;function Uf(u,e){return function(t){return u(e(t));};}var Mi=Uf,jf=Mi,Yf=jf(Object.keys,Object),Xf=Yf,zf=tn,$f=Xf,Gf=Object.prototype,Hf=Gf.hasOwnProperty;function kf(u){if(!zf(u))return $f(u);var e=[];for(var t in Object(u))Hf.call(u,t)&&t!="constructor"&&e.push(t);return e;}var Vf=kf,Kf=pi,Zf=Ci;function Jf(u){return u!=null&&Zf(u.length)&&!Kf(u);}var en=Jf,Qf=Oi,qf=Vf,_f=en;function th(u){return _f(u)?Qf(u):qf(u);}var rn=th,eh=Br,rh=rn;function nh(u,e){return u&&eh(e,rh(e),u);}var ih=nh;function sh(u){var e=[];if(u!=null)for(var t in Object(u))e.push(t);return e;}var oh=sh,ah=hr,lh=tn,ch=oh,fh=Object.prototype,hh=fh.hasOwnProperty;function uh(u){if(!ah(u))return ch(u);var e=lh(u),t=[];for(var r in u)r=="constructor"&&(e||!hh.call(u,r))||t.push(r);return t;}var dh=uh,ph=Oi,mh=dh,vh=en;function yh(u){return vh(u)?ph(u,!0):mh(u);}var nn=yh,gh=Br,Ph=nn;function xh(u,e){return u&&gh(e,Ph(e),u);}var Sh=xh,xr={exports:{}};xr.exports;(function(u,e){var t=Le,r=e&&!e.nodeType&&e,n=r&&!0&&u&&!u.nodeType&&u,i=n&&n.exports===r,l=i?t.Buffer:void 0,o=l?l.allocUnsafe:void 0;function a(f,g){if(g)return f.slice();var c=f.length,m=o?o(c):new f.constructor(c);return f.copy(m),m;}u.exports=a;})(xr,xr.exports);var Th=xr.exports;function Ch(u,e){var t=-1,r=u.length;for(e||(e=Array(r));++t<r;)e[t]=u[t];return e;}var Ih=Ch;function Oh(u,e){for(var t=-1,r=u==null?0:u.length,n=0,i=[];++t<r;){var l=u[t];e(l,t,u)&&(i[n++]=l);}return i;}var Ei=Oh;function Mh(){return[];}var Ai=Mh,Eh=Ei,Ah=Ai,Lh=Object.prototype,wh=Lh.propertyIsEnumerable,wn=Object.getOwnPropertySymbols,Rh=wn?function(u){return u==null?[]:(u=Object(u),Eh(wn(u),function(e){return wh.call(u,e);}));}:Ah,sn=Rh,Dh=Br,bh=sn;function Nh(u,e){return Dh(u,bh(u),e);}var Bh=Nh;function Wh(u,e){for(var t=-1,r=e.length,n=u.length;++t<r;)u[n+t]=e[t];return u;}var on=Wh,Fh=Mi,Uh=Fh(Object.getPrototypeOf,Object),Li=Uh,jh=on,Yh=Li,Xh=sn,zh=Ai,$h=Object.getOwnPropertySymbols,Gh=$h?function(u){for(var e=[];u;)jh(e,Xh(u)),u=Yh(u);return e;}:zh,wi=Gh,Hh=Br,kh=wi;function Vh(u,e){return Hh(u,kh(u),e);}var Kh=Vh,Zh=on,Jh=ur;function Qh(u,e,t){var r=e(u);return Jh(u)?r:Zh(r,t(u));}var Ri=Qh,qh=Ri,_h=sn,tu=rn;function eu(u){return qh(u,tu,_h);}var Di=eu,ru=Ri,nu=wi,iu=nn;function su(u){return ru(u,iu,nu);}var ou=su,au=Ue,lu=Le,cu=au(lu,"DataView"),fu=cu,hu=Ue,uu=Le,du=hu(uu,"Promise"),pu=du,mu=Ue,vu=Le,yu=mu(vu,"Set"),bi=yu,gu=Ue,Pu=Le,xu=gu(Pu,"WeakMap"),Su=xu,zr=fu,$r=Qr,Gr=pu,Hr=bi,kr=Su,Ni=Je,er=mi,Rn="[object Map]",Tu="[object Object]",Dn="[object Promise]",bn="[object Set]",Nn="[object WeakMap]",Bn="[object DataView]",Cu=er(zr),Iu=er($r),Ou=er(Gr),Mu=er(Hr),Eu=er(kr),Fe=Ni;(zr&&Fe(new zr(new ArrayBuffer(1)))!=Bn||$r&&Fe(new $r())!=Rn||Gr&&Fe(Gr.resolve())!=Dn||Hr&&Fe(new Hr())!=bn||kr&&Fe(new kr())!=Nn)&&(Fe=function Fe(u){var e=Ni(u),t=e==Tu?u.constructor:void 0,r=t?er(t):"";if(r)switch(r){case Cu:return Bn;case Iu:return Rn;case Ou:return Dn;case Mu:return bn;case Eu:return Nn;}return e;});var Fr=Fe,Au=Object.prototype,Lu=Au.hasOwnProperty;function wu(u){var e=u.length,t=new u.constructor(e);return e&&typeof u[0]=="string"&&Lu.call(u,"index")&&(t.index=u.index,t.input=u.input),t;}var Ru=wu,Du=Le,bu=Du.Uint8Array,Bi=bu,Wn=Bi;function Nu(u){var e=new u.constructor(u.byteLength);return new Wn(e).set(new Wn(u)),e;}var an=Nu,Bu=an;function Wu(u,e){var t=e?Bu(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.byteLength);}var Fu=Wu,Uu=/\w*$/;function ju(u){var e=new u.constructor(u.source,Uu.exec(u));return e.lastIndex=u.lastIndex,e;}var Yu=ju,Fn=fr,Un=Fn?Fn.prototype:void 0,jn=Un?Un.valueOf:void 0;function Xu(u){return jn?Object(jn.call(u)):{};}var zu=Xu,$u=an;function Gu(u,e){var t=e?$u(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.length);}var Hu=Gu,ku=an,Vu=Fu,Ku=Yu,Zu=zu,Ju=Hu,Qu="[object Boolean]",qu="[object Date]",_u="[object Map]",td="[object Number]",ed="[object RegExp]",rd="[object Set]",nd="[object String]",id="[object Symbol]",sd="[object ArrayBuffer]",od="[object DataView]",ad="[object Float32Array]",ld="[object Float64Array]",cd="[object Int8Array]",fd="[object Int16Array]",hd="[object Int32Array]",ud="[object Uint8Array]",dd="[object Uint8ClampedArray]",pd="[object Uint16Array]",md="[object Uint32Array]";function vd(u,e,t){var r=u.constructor;switch(e){case sd:return ku(u);case Qu:case qu:return new r(+u);case od:return Vu(u,t);case ad:case ld:case cd:case fd:case hd:case ud:case dd:case pd:case md:return Ju(u,t);case _u:return new r();case td:case nd:return new r(u);case ed:return Ku(u);case rd:return new r();case id:return Zu(u);}}var yd=vd,gd=hr,Yn=Object.create,Pd=/* @__PURE__ */function(){function u(){}return function(e){if(!gd(e))return{};if(Yn)return Yn(e);u.prototype=e;var t=new u();return u.prototype=void 0,t;};}(),xd=Pd,Sd=xd,Td=Li,Cd=tn;function Id(u){return typeof u.constructor=="function"&&!Cd(u)?Sd(Td(u)):{};}var Od=Id,Md=Fr,Ed=De,Ad="[object Map]";function Ld(u){return Ed(u)&&Md(u)==Ad;}var wd=Ld,Rd=wd,Dd=Wr,Xn=_r,zn=Xn&&Xn.isMap,bd=zn?Dd(zn):Rd,Nd=bd,Bd=Fr,Wd=De,Fd="[object Set]";function Ud(u){return Wd(u)&&Bd(u)==Fd;}var jd=Ud,Yd=jd,Xd=Wr,$n=_r,Gn=$n&&$n.isSet,zd=Gn?Xd(Gn):Yd,Wi=zd,$d=/* @__PURE__ */Ne(Wi),Gd=yi,Hd=mc,kd=xi,Vd=ih,Kd=Sh,Zd=Th,Jd=Ih,Qd=Bh,qd=Kh,_d=Di,tp=ou,ep=Fr,rp=Ru,np=yd,ip=Od,sp=ur,op=qr,ap=Nd,lp=hr,cp=Wi,fp=rn,hp=nn,up=1,dp=2,pp=4,Fi="[object Arguments]",mp="[object Array]",vp="[object Boolean]",yp="[object Date]",gp="[object Error]",Ui="[object Function]",Pp="[object GeneratorFunction]",xp="[object Map]",Sp="[object Number]",ji="[object Object]",Tp="[object RegExp]",Cp="[object Set]",Ip="[object String]",Op="[object Symbol]",Mp="[object WeakMap]",Ep="[object ArrayBuffer]",Ap="[object DataView]",Lp="[object Float32Array]",wp="[object Float64Array]",Rp="[object Int8Array]",Dp="[object Int16Array]",bp="[object Int32Array]",Np="[object Uint8Array]",Bp="[object Uint8ClampedArray]",Wp="[object Uint16Array]",Fp="[object Uint32Array]",re={};re[Fi]=re[mp]=re[Ep]=re[Ap]=re[vp]=re[yp]=re[Lp]=re[wp]=re[Rp]=re[Dp]=re[bp]=re[xp]=re[Sp]=re[ji]=re[Tp]=re[Cp]=re[Ip]=re[Op]=re[Np]=re[Bp]=re[Wp]=re[Fp]=!0;re[gp]=re[Ui]=re[Mp]=!1;function yr(u,e,t,r,n,i){var l,o=e&up,a=e&dp,f=e&pp;if(t&&(l=n?t(u,r,n,i):t(u)),l!==void 0)return l;if(!lp(u))return u;var g=sp(u);if(g){if(l=rp(u),!o)return Jd(u,l);}else{var c=ep(u),m=c==Ui||c==Pp;if(op(u))return Zd(u,o);if(c==ji||c==Fi||m&&!n){if(l=a||m?{}:ip(u),!o)return a?qd(u,Kd(l,u)):Qd(u,Vd(l,u));}else{if(!re[c])return n?u:{};l=np(u,c,o);}}i||(i=new Gd());var x=i.get(u);if(x)return x;i.set(u,l),cp(u)?u.forEach(function(P){l.add(yr(P,e,t,P,u,i));}):ap(u)&&u.forEach(function(P,T){l.set(T,yr(P,e,t,T,u,i));});var M=f?a?tp:_d:a?hp:fp,S=g?void 0:M(u);return Hd(S||u,function(P,T){S&&(T=P,P=u[T]),kd(l,T,yr(P,e,t,T,u,i));}),l;}var Up=yr,jp=Up,Yp=1,Xp=4;function zp(u){return jp(u,Yp|Xp);}var $p=zp,ue=/* @__PURE__ */Ne($p);var Yi="1.1.18-beta.0",Gp="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var u=window.__netlessUA||"";u+=" ".concat(Gp,"@").concat(Yi),window.__netlessUA=u;}var Se={syncOpt:{interval:500},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:600},bezier:{maxDrawCount:1/0,combineUnitTime:500},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1}};function Ee(u){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=u.length;if(t<2)return"";var r=u[0],n=u[1];if(t===2)return"M".concat(ze(r),"L").concat(ze(n));var i="";for(var l=2,o=t-1;l<o;l++)r=u[l],n=u[l+1],i+=$e(r,n);return e?"M".concat($e(u[0],u[1]),"Q").concat(ze(u[1])).concat($e(u[1],u[2]),"T").concat(i).concat($e(u[t-1],u[0])).concat($e(u[0],u[1]),"Z"):"M".concat(ze(u[0]),"Q").concat(ze(u[1])).concat($e(u[1],u[2])).concat(u.length>3?"T":"").concat(i,"L").concat(ze(u[t-1]));}var Pe=/*#__PURE__*/function(){function Pe(e){_classCallCheck(this,Pe);at(this,"maxImageWidth",Se.pencilEraser.maxImageWidth);at(this,"maxImageHeight",Se.pencilEraser.maxImageHeight);at(this,"syncUnitTime",Se.syncOpt.interval);at(this,"vNodes");at(this,"drawLayer");at(this,"fullLayer");at(this,"workId");at(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,i=e.workId,l=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=i,this.syncUnitTime=l.syncUnitTime||this.syncUnitTime;}return _createClass(Pe,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var i=r[r.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,i,l;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&r&&(r.opt=e,(l=this.vNodes)==null||l.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,i;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var l=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(l.length!==1)return;var o=l[0],a=e.pos,f=e.zIndex,g=e.scale,c=e.angle,m=e.translate,x={};he(f)&&(x.zIndex=f),a&&(x.pos=[a[0],a[1]]),g&&(x.scale=g),c&&(x.rotate=c),m&&(x.translate=m),o.attr(x);var M=o==null?void 0:o.getBoundingClientRect();return M&&(t=Wt(t,{x:Math.floor(M.x-Pe.SafeBorderPadding),y:Math.floor(M.y-Pe.SafeBorderPadding),w:Math.floor(M.width+Pe.SafeBorderPadding*2),h:Math.floor(M.height+Pe.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(r,{rect:t,centerPos:a}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,i=e.pos,l=e.layer,o=l.parent;if(t)try{var f=(l.renderer.glRenderer||l.renderer.canvasRenderer).options.displayRatio,g=r.getBoundingClientRect(),c=g.width*f*l.worldScaling[0],m=g.height*f*l.worldScaling[1];var x=1;(c>this.maxImageWidth||m>this.maxImageHeight)&&(x=Math.min(this.maxImageWidth/c,this.maxImageHeight/m));var M=l.getAttribute("scale");M=[M[0]*x,M[1]*x];var S=l.parent.parent,P=l.getAttribute("translate"),_T28=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),S,{offscreen:o.offscreen,width:o.width,height:o.height,contextType:"2d",autoRender:!1,bufferSize:500},M,P),_h26=r.cloneNode(!0);this.addEraserlines(_h26,n,i,!1),_T28.appendChild(_h26);var p=_T28.parent;p.render();var d=_T28.renderer.canvasRenderer,y=d.context;if(!y)return;var O=d.options.displayRatio,E=_h26.getBoundingClientRect(),w={x:E.x,y:E.y,w:E.width,h:E.height},B={x:0,y:0,w:S.width,h:S.height};if(sr(w,B)===ye.outside){xe(_h26,p),S.removeChild(p),this.isDelete=!0;return;}var b=ue(w);b.x=Math.floor(Math.max(w.x,0)),b.y=Math.floor(Math.max(w.y,0)),b.w=Math.min(w.x+w.w,S.width)-b.x,b.h=Math.min(w.y+w.h,S.height)-b.y;var W=this.getGroupRect(b,O),D=W.x,R=W.y,j=W.w,k=W.h;var J=y.getImageData(D,R,j,k);if(this.isTransparentRectByCanvas(J)){xe(_h26,p),S.removeChild(p),this.isDelete=!0,J=null;return;}xe(r,o);var st=this.createSpriteNode({imageData:J,safariRect:b,originRect:w,worldScaling:_T28.worldScaling});st&&r.append(st),xe(_h26,p),S.removeChild(p),o.deleteTexture(J),J=null;}catch(a){console.error(a);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,i){var l=r.width,o=r.height,a="bitMap-".concat(e),f=t.layer(a,r),g=new de({anchor:[0.5,0.5],pos:[l*0.5,o*0.5],size:[l,o],name:"viewport",id:e});return g.setAttribute("scale",n),g.setAttribute("translate",i),f.append(g),g;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),i=Math.floor(e.w*t),l=Math.floor(e.h*t);return{x:r,y:n,w:i,h:l};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var i=_step13.value;var l=i.thickness,o=i.op;var _iterator14=_createForOfIteratorHelper(o),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var a=_step14.value;var f=a.map(function(M,S){return S%2?M-r[1]:M-r[0];}),g=this.computEraserPoints(f,l),c=Ee(g,!0),m={pos:[0,0],d:c,fillColor:"rgba(0,0,0,1)"},x=new Ae(m);x.addEventListener("beforerender",function(_ref164){var M=_ref164.detail;var S=M.context;n?S.blendFuncSeparate(S.ZERO,S.ZERO,S.ZERO,S.ZERO):S.globalCompositeOperation="destination-out";}),x.addEventListener("afterrender",function(_ref165){var M=_ref165.detail;var S=M.context;n?S.blendFuncSeparate(S.SRC_ALPHA,S.ONE_MINUS_SRC_ALPHA,S.ONE,S.ONE_MINUS_SRC_ALPHA):S.globalCompositeOperation="source-over";}),e.append(x);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,i=e.originRect;var l;if(typeof OffscreenCanvas=="function"){l=new OffscreenCanvas(t.width,t.height);var g=l.getContext("2d");g&&g.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){l=document.createElement("canvas"),l.width=t.width,l.height=t.height;var _g3=l.getContext("2d");_g3&&_g3.putImageData(t,0,0);}if(!l)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var o=[Math.floor(i.w/r[0]),Math.floor(i.h/r[1])],a=[Math.floor((n.x-i.x)/r[0]),Math.floor((n.y-i.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],f={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:o,texture:l,textureRect:a};return new hi(f);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Dt(e[0],e[1]);return Dt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var i,l;for(var o=0;o<e.length;o+=2){var a=new Dt(e[o],e[o+1]);var f=void 0;if(o==e.length-2){var g=new Dt(e[o-2],e[o-1]);f=ot.Sub(a,g).uni(),i=a;}else{o===0&&(l=a);var _g4=new Dt(e[o+2],e[o+3]);f=ot.Sub(_g4,a).uni();}if(f){var _g5=ot.Per(f).mul(t);r.push(Dt.Sub(a,_g5)),n.push(Dt.Add(a,_g5));}}if(i&&l){var _o3=Dt.GetSemicircleStroke(i,r[r.length-1],-1,8),_a4=Dt.GetSemicircleStroke(l,n[0],-1,8);return r.concat(_o3,n.reverse(),_a4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var i;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var l=_step15.value;r?gm(r,l,e):(l.remove(),_me(l,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(i=this.drawLayer)==null||i.getElementsByName(t).forEach(function(o){var a;o.remove(),_me(o,(a=_this61.drawLayer)==null?void 0:a.parent);}):this.fullLayer.getElementsByName(t).forEach(function(o){o.remove(),_me(o,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_me(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var h;var t=e.node,r=e.opt,n=e.vNodes,i=e.willSerializeData,l=e.targetNode,o=r.zIndex,a=r.translate,f=r.angle,g=r.originPoint,c=r.scenePoint,m=r.scale,x=r.pointMap,M=r.thickness;var S;var P=l&&ue(l)||n.get(t.name);if(!P)return;he(o)&&(t.setAttribute("zIndex",o),P.opt.zIndex=o);var T=t.parent;if(T){if(g&&m&&l){var p=[P.op[0],P.op[1]];mn(P.op,c,m,a);var d=[P.op[0],P.op[1]],y=[d[0]-p[0],d[1]-p[1]];if(P.centerPos=[P.centerPos[0]+y[0],P.centerPos[1]+y[1]],P.opt.translate=void 0,P.opt.scale=void 0,P.opt.eraserlines)for(var _i3=0,_Object$values=Object.values(P.opt.eraserlines);_i3<_Object$values.length;_i3++){var O=_Object$values[_i3];var E=O.op,w=O.thickness;O.thickness=w*Math.max(m[0],m[1]);for(var B=0;B<E.length;B++)vn(E[B],c,m,a);}}else if(a){if(t.setAttribute("translate",a),P.opt.translate=a,l){var _p6=[a[0]*T.worldScaling[0],a[1]*T.worldScaling[1]];S=cr(P.rect,_p6),P.rect=S;}else{var _p7=Pe.getRectFromLayer(T,t.name);P.rect=_p7||P.rect;}}else if(he(f))if(t.setAttribute("rotate",f),P.opt.rotate=f,l)S=ns(P.rect,f),P.rect=S;else{var _p8=Pe.getRectFromLayer(T,t.name);P.rect=_p8||P.rect;}if(x){var _p9=x.get(t.name);if(_p9)for(var _d11=0,_y9=0;_d11<P.op.length;_d11+=3,_y9++)P.op[_d11]=_p9[_y9][0],P.op[_d11+1]=_p9[_y9][1];}if(M&&(h=P==null?void 0:P.opt)!=null&&h.thickness&&(P.opt.thickness=M),i&&!(g&&m&&l)){if(a){var _p10=P.op.map(function(d,y){var O=y%3;return O===0?d+a[0]:O===1?d+a[1]:d;});if(P.op=_p10,P.centerPos=[P.centerPos[0]+a[0],P.centerPos[1]+a[1]],P!=null&&P.opt&&(P.opt.translate=void 0),P.opt.eraserlines)for(var _i4=0,_Object$values2=Object.values(P.opt.eraserlines);_i4<_Object$values2.length;_i4++){var _d12=_Object$values2[_i4];var _y10=_d12.op;for(var _O6=0;_O6<_y10.length;_O6++){var _E3=_y10[_O6].map(function(w,B){return B%2?w+a[1]:w+a[0];});_d12.op[_O6]=_E3;}}}else if(he(f)){var _p11=P.op;if(fm(_p11,P.centerPos,f),P.op=_p11,P!=null&&P.opt&&(P.opt.rotate=void 0),P.opt.eraserlines)for(var _i5=0,_Object$values3=Object.values(P.opt.eraserlines);_i5<_Object$values3.length;_i5++){var _d13=_Object$values3[_i5];var _y11=_d13.op;for(var _O7=0;_O7<_y11.length;_O7++)hm(_y11[_O7],P.centerPos,f);}}}P&&n.setInfo(t.name,P);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Pe.SafeBorderPadding),y:Math.floor(n.y-Pe.SafeBorderPadding),w:Math.floor(n.width+Pe.SafeBorderPadding*2),h:Math.floor(n.height+Pe.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,i=e.updateOpt,l=e.willSerializeData;return!!(l&&(i.angle||i.translate)||i.thickness&&r.thickness&&r.thickness!==i.thickness||i.strokeType&&r.strokeType&&r.strokeType!==i.strokeType||i.originPoint&&i.scenePoint&&i.scale||i.pointMap&&i.pointMap.has(n.name)||t===St.Text&&(i.fontSize||i.translate||i.textInfos&&i.textInfos.get(n.name))||t===St.Image&&(i.angle||i.translate||i.scale||i.strokeColor&&i.type===Zr.Iconify)||t===i.toolsType&&i.willRefresh||r.eraserlines&&r.eraserlines.length&&(i.strokeColor||i.fillColor));}}]);}();at(Pe,"SafeBorderPadding",10);var Mt=Pe;var ln=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var cn={exports:{}};cn.exports;(function(u){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function l(a,f){if(!i[a]){i[a]={};for(var g=0;g<a.length;g++)i[a][a.charAt(g)]=g;}return i[a][f];}var o={compressToBase64:function compressToBase64(a){if(a==null)return"";var f=o._compress(a,6,function(g){return r.charAt(g);});switch(f.length%4){default:case 0:return f;case 1:return f+"===";case 2:return f+"==";case 3:return f+"=";}},decompressFromBase64:function decompressFromBase64(a){return a==null?"":a==""?null:o._decompress(a.length,32,function(f){return l(r,a.charAt(f));});},compressToUTF16:function compressToUTF16(a){return a==null?"":o._compress(a,15,function(f){return t(f+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(a){return a==null?"":a==""?null:o._decompress(a.length,16384,function(f){return a.charCodeAt(f)-32;});},//compress into uint8array (UCS-2 big endian format)
399
+ Rf(f,a)))&&o.push(f);return o;}var Oi=Bf,Wf=Object.prototype;function Ff(u){var e=u&&u.constructor,t=typeof e=="function"&&e.prototype||Wf;return u===t;}var tn=Ff;function Uf(u,e){return function(t){return u(e(t));};}var Mi=Uf,jf=Mi,Yf=jf(Object.keys,Object),Xf=Yf,zf=tn,$f=Xf,Gf=Object.prototype,Hf=Gf.hasOwnProperty;function kf(u){if(!zf(u))return $f(u);var e=[];for(var t in Object(u))Hf.call(u,t)&&t!="constructor"&&e.push(t);return e;}var Vf=kf,Kf=pi,Zf=Ci;function Jf(u){return u!=null&&Zf(u.length)&&!Kf(u);}var en=Jf,Qf=Oi,qf=Vf,_f=en;function th(u){return _f(u)?Qf(u):qf(u);}var rn=th,eh=Br,rh=rn;function nh(u,e){return u&&eh(e,rh(e),u);}var ih=nh;function sh(u){var e=[];if(u!=null)for(var t in Object(u))e.push(t);return e;}var oh=sh,ah=hr,lh=tn,ch=oh,fh=Object.prototype,hh=fh.hasOwnProperty;function uh(u){if(!ah(u))return ch(u);var e=lh(u),t=[];for(var r in u)r=="constructor"&&(e||!hh.call(u,r))||t.push(r);return t;}var dh=uh,ph=Oi,mh=dh,vh=en;function yh(u){return vh(u)?ph(u,!0):mh(u);}var nn=yh,gh=Br,Ph=nn;function xh(u,e){return u&&gh(e,Ph(e),u);}var Sh=xh,xr={exports:{}};xr.exports;(function(u,e){var t=Le,r=e&&!e.nodeType&&e,n=r&&!0&&u&&!u.nodeType&&u,i=n&&n.exports===r,l=i?t.Buffer:void 0,o=l?l.allocUnsafe:void 0;function a(f,g){if(g)return f.slice();var c=f.length,m=o?o(c):new f.constructor(c);return f.copy(m),m;}u.exports=a;})(xr,xr.exports);var Th=xr.exports;function Ch(u,e){var t=-1,r=u.length;for(e||(e=Array(r));++t<r;)e[t]=u[t];return e;}var Ih=Ch;function Oh(u,e){for(var t=-1,r=u==null?0:u.length,n=0,i=[];++t<r;){var l=u[t];e(l,t,u)&&(i[n++]=l);}return i;}var Ei=Oh;function Mh(){return[];}var Ai=Mh,Eh=Ei,Ah=Ai,Lh=Object.prototype,wh=Lh.propertyIsEnumerable,wn=Object.getOwnPropertySymbols,Rh=wn?function(u){return u==null?[]:(u=Object(u),Eh(wn(u),function(e){return wh.call(u,e);}));}:Ah,sn=Rh,Dh=Br,bh=sn;function Nh(u,e){return Dh(u,bh(u),e);}var Bh=Nh;function Wh(u,e){for(var t=-1,r=e.length,n=u.length;++t<r;)u[n+t]=e[t];return u;}var on=Wh,Fh=Mi,Uh=Fh(Object.getPrototypeOf,Object),Li=Uh,jh=on,Yh=Li,Xh=sn,zh=Ai,$h=Object.getOwnPropertySymbols,Gh=$h?function(u){for(var e=[];u;)jh(e,Xh(u)),u=Yh(u);return e;}:zh,wi=Gh,Hh=Br,kh=wi;function Vh(u,e){return Hh(u,kh(u),e);}var Kh=Vh,Zh=on,Jh=ur;function Qh(u,e,t){var r=e(u);return Jh(u)?r:Zh(r,t(u));}var Ri=Qh,qh=Ri,_h=sn,tu=rn;function eu(u){return qh(u,tu,_h);}var Di=eu,ru=Ri,nu=wi,iu=nn;function su(u){return ru(u,iu,nu);}var ou=su,au=Ue,lu=Le,cu=au(lu,"DataView"),fu=cu,hu=Ue,uu=Le,du=hu(uu,"Promise"),pu=du,mu=Ue,vu=Le,yu=mu(vu,"Set"),bi=yu,gu=Ue,Pu=Le,xu=gu(Pu,"WeakMap"),Su=xu,zr=fu,$r=Qr,Gr=pu,Hr=bi,kr=Su,Ni=Je,er=mi,Rn="[object Map]",Tu="[object Object]",Dn="[object Promise]",bn="[object Set]",Nn="[object WeakMap]",Bn="[object DataView]",Cu=er(zr),Iu=er($r),Ou=er(Gr),Mu=er(Hr),Eu=er(kr),Fe=Ni;(zr&&Fe(new zr(new ArrayBuffer(1)))!=Bn||$r&&Fe(new $r())!=Rn||Gr&&Fe(Gr.resolve())!=Dn||Hr&&Fe(new Hr())!=bn||kr&&Fe(new kr())!=Nn)&&(Fe=function Fe(u){var e=Ni(u),t=e==Tu?u.constructor:void 0,r=t?er(t):"";if(r)switch(r){case Cu:return Bn;case Iu:return Rn;case Ou:return Dn;case Mu:return bn;case Eu:return Nn;}return e;});var Fr=Fe,Au=Object.prototype,Lu=Au.hasOwnProperty;function wu(u){var e=u.length,t=new u.constructor(e);return e&&typeof u[0]=="string"&&Lu.call(u,"index")&&(t.index=u.index,t.input=u.input),t;}var Ru=wu,Du=Le,bu=Du.Uint8Array,Bi=bu,Wn=Bi;function Nu(u){var e=new u.constructor(u.byteLength);return new Wn(e).set(new Wn(u)),e;}var an=Nu,Bu=an;function Wu(u,e){var t=e?Bu(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.byteLength);}var Fu=Wu,Uu=/\w*$/;function ju(u){var e=new u.constructor(u.source,Uu.exec(u));return e.lastIndex=u.lastIndex,e;}var Yu=ju,Fn=fr,Un=Fn?Fn.prototype:void 0,jn=Un?Un.valueOf:void 0;function Xu(u){return jn?Object(jn.call(u)):{};}var zu=Xu,$u=an;function Gu(u,e){var t=e?$u(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.length);}var Hu=Gu,ku=an,Vu=Fu,Ku=Yu,Zu=zu,Ju=Hu,Qu="[object Boolean]",qu="[object Date]",_u="[object Map]",td="[object Number]",ed="[object RegExp]",rd="[object Set]",nd="[object String]",id="[object Symbol]",sd="[object ArrayBuffer]",od="[object DataView]",ad="[object Float32Array]",ld="[object Float64Array]",cd="[object Int8Array]",fd="[object Int16Array]",hd="[object Int32Array]",ud="[object Uint8Array]",dd="[object Uint8ClampedArray]",pd="[object Uint16Array]",md="[object Uint32Array]";function vd(u,e,t){var r=u.constructor;switch(e){case sd:return ku(u);case Qu:case qu:return new r(+u);case od:return Vu(u,t);case ad:case ld:case cd:case fd:case hd:case ud:case dd:case pd:case md:return Ju(u,t);case _u:return new r();case td:case nd:return new r(u);case ed:return Ku(u);case rd:return new r();case id:return Zu(u);}}var yd=vd,gd=hr,Yn=Object.create,Pd=/* @__PURE__ */function(){function u(){}return function(e){if(!gd(e))return{};if(Yn)return Yn(e);u.prototype=e;var t=new u();return u.prototype=void 0,t;};}(),xd=Pd,Sd=xd,Td=Li,Cd=tn;function Id(u){return typeof u.constructor=="function"&&!Cd(u)?Sd(Td(u)):{};}var Od=Id,Md=Fr,Ed=De,Ad="[object Map]";function Ld(u){return Ed(u)&&Md(u)==Ad;}var wd=Ld,Rd=wd,Dd=Wr,Xn=_r,zn=Xn&&Xn.isMap,bd=zn?Dd(zn):Rd,Nd=bd,Bd=Fr,Wd=De,Fd="[object Set]";function Ud(u){return Wd(u)&&Bd(u)==Fd;}var jd=Ud,Yd=jd,Xd=Wr,$n=_r,Gn=$n&&$n.isSet,zd=Gn?Xd(Gn):Yd,Wi=zd,$d=/* @__PURE__ */Ne(Wi),Gd=yi,Hd=mc,kd=xi,Vd=ih,Kd=Sh,Zd=Th,Jd=Ih,Qd=Bh,qd=Kh,_d=Di,tp=ou,ep=Fr,rp=Ru,np=yd,ip=Od,sp=ur,op=qr,ap=Nd,lp=hr,cp=Wi,fp=rn,hp=nn,up=1,dp=2,pp=4,Fi="[object Arguments]",mp="[object Array]",vp="[object Boolean]",yp="[object Date]",gp="[object Error]",Ui="[object Function]",Pp="[object GeneratorFunction]",xp="[object Map]",Sp="[object Number]",ji="[object Object]",Tp="[object RegExp]",Cp="[object Set]",Ip="[object String]",Op="[object Symbol]",Mp="[object WeakMap]",Ep="[object ArrayBuffer]",Ap="[object DataView]",Lp="[object Float32Array]",wp="[object Float64Array]",Rp="[object Int8Array]",Dp="[object Int16Array]",bp="[object Int32Array]",Np="[object Uint8Array]",Bp="[object Uint8ClampedArray]",Wp="[object Uint16Array]",Fp="[object Uint32Array]",re={};re[Fi]=re[mp]=re[Ep]=re[Ap]=re[vp]=re[yp]=re[Lp]=re[wp]=re[Rp]=re[Dp]=re[bp]=re[xp]=re[Sp]=re[ji]=re[Tp]=re[Cp]=re[Ip]=re[Op]=re[Np]=re[Bp]=re[Wp]=re[Fp]=!0;re[gp]=re[Ui]=re[Mp]=!1;function yr(u,e,t,r,n,i){var l,o=e&up,a=e&dp,f=e&pp;if(t&&(l=n?t(u,r,n,i):t(u)),l!==void 0)return l;if(!lp(u))return u;var g=sp(u);if(g){if(l=rp(u),!o)return Jd(u,l);}else{var c=ep(u),m=c==Ui||c==Pp;if(op(u))return Zd(u,o);if(c==ji||c==Fi||m&&!n){if(l=a||m?{}:ip(u),!o)return a?qd(u,Kd(l,u)):Qd(u,Vd(l,u));}else{if(!re[c])return n?u:{};l=np(u,c,o);}}i||(i=new Gd());var x=i.get(u);if(x)return x;i.set(u,l),cp(u)?u.forEach(function(P){l.add(yr(P,e,t,P,u,i));}):ap(u)&&u.forEach(function(P,T){l.set(T,yr(P,e,t,T,u,i));});var M=f?a?tp:_d:a?hp:fp,S=g?void 0:M(u);return Hd(S||u,function(P,T){S&&(T=P,P=u[T]),kd(l,T,yr(P,e,t,T,u,i));}),l;}var Up=yr,jp=Up,Yp=1,Xp=4;function zp(u){return jp(u,Yp|Xp);}var $p=zp,ue=/* @__PURE__ */Ne($p);var Yi="1.1.18-beta.1",Gp="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var u=window.__netlessUA||"";u+=" ".concat(Gp,"@").concat(Yi),window.__netlessUA=u;}var Se={syncOpt:{interval:300},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:600},bezier:{maxDrawCount:1/0,combineUnitTime:300},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1}};function Ee(u){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=u.length;if(t<2)return"";var r=u[0],n=u[1];if(t===2)return"M".concat(ze(r),"L").concat(ze(n));var i="";for(var l=2,o=t-1;l<o;l++)r=u[l],n=u[l+1],i+=$e(r,n);return e?"M".concat($e(u[0],u[1]),"Q").concat(ze(u[1])).concat($e(u[1],u[2]),"T").concat(i).concat($e(u[t-1],u[0])).concat($e(u[0],u[1]),"Z"):"M".concat(ze(u[0]),"Q").concat(ze(u[1])).concat($e(u[1],u[2])).concat(u.length>3?"T":"").concat(i,"L").concat(ze(u[t-1]));}var Pe=/*#__PURE__*/function(){function Pe(e){_classCallCheck(this,Pe);at(this,"maxImageWidth",Se.pencilEraser.maxImageWidth);at(this,"maxImageHeight",Se.pencilEraser.maxImageHeight);at(this,"syncUnitTime",Se.syncOpt.interval);at(this,"vNodes");at(this,"drawLayer");at(this,"fullLayer");at(this,"workId");at(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,i=e.workId,l=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=i,this.syncUnitTime=l.syncUnitTime||this.syncUnitTime;}return _createClass(Pe,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var i=r[r.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,i,l;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&r&&(r.opt=e,(l=this.vNodes)==null||l.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,i;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var l=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(l.length!==1)return;var o=l[0],a=e.pos,f=e.zIndex,g=e.scale,c=e.angle,m=e.translate,x={};he(f)&&(x.zIndex=f),a&&(x.pos=[a[0],a[1]]),g&&(x.scale=g),c&&(x.rotate=c),m&&(x.translate=m),o.attr(x);var M=o==null?void 0:o.getBoundingClientRect();return M&&(t=Wt(t,{x:Math.floor(M.x-Pe.SafeBorderPadding),y:Math.floor(M.y-Pe.SafeBorderPadding),w:Math.floor(M.width+Pe.SafeBorderPadding*2),h:Math.floor(M.height+Pe.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(r,{rect:t,centerPos:a}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,i=e.pos,l=e.layer,o=l.parent;if(t)try{var f=(l.renderer.glRenderer||l.renderer.canvasRenderer).options.displayRatio,g=r.getBoundingClientRect(),c=g.width*f*l.worldScaling[0],m=g.height*f*l.worldScaling[1];var x=1;(c>this.maxImageWidth||m>this.maxImageHeight)&&(x=Math.min(this.maxImageWidth/c,this.maxImageHeight/m));var M=l.getAttribute("scale");M=[M[0]*x,M[1]*x];var S=l.parent.parent,P=l.getAttribute("translate"),_T28=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),S,{offscreen:o.offscreen,width:o.width,height:o.height,contextType:"2d",autoRender:!1,bufferSize:500},M,P),_h26=r.cloneNode(!0);this.addEraserlines(_h26,n,i,!1),_T28.appendChild(_h26);var p=_T28.parent;p.render();var d=_T28.renderer.canvasRenderer,y=d.context;if(!y)return;var O=d.options.displayRatio,E=_h26.getBoundingClientRect(),w={x:E.x,y:E.y,w:E.width,h:E.height},B={x:0,y:0,w:S.width,h:S.height};if(sr(w,B)===ye.outside){xe(_h26,p),S.removeChild(p),this.isDelete=!0;return;}var b=ue(w);b.x=Math.floor(Math.max(w.x,0)),b.y=Math.floor(Math.max(w.y,0)),b.w=Math.min(w.x+w.w,S.width)-b.x,b.h=Math.min(w.y+w.h,S.height)-b.y;var W=this.getGroupRect(b,O),D=W.x,R=W.y,j=W.w,k=W.h;var J=y.getImageData(D,R,j,k);if(this.isTransparentRectByCanvas(J)){xe(_h26,p),S.removeChild(p),this.isDelete=!0,J=null;return;}xe(r,o);var st=this.createSpriteNode({imageData:J,safariRect:b,originRect:w,worldScaling:_T28.worldScaling});st&&r.append(st),xe(_h26,p),S.removeChild(p),o.deleteTexture(J),J=null;}catch(a){console.error("[BaseShapeTool] drawEraserlines error:",a);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,i){var l=r.width,o=r.height,a="bitMap-".concat(e),f=t.layer(a,r),g=new de({anchor:[0.5,0.5],pos:[l*0.5,o*0.5],size:[l,o],name:"viewport",id:e});return g.setAttribute("scale",n),g.setAttribute("translate",i),f.append(g),g;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),i=Math.floor(e.w*t),l=Math.floor(e.h*t);return{x:r,y:n,w:i,h:l};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var i=_step13.value;var l=i.thickness,o=i.op;var _iterator14=_createForOfIteratorHelper(o),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var a=_step14.value;var f=a.map(function(M,S){return S%2?M-r[1]:M-r[0];}),g=this.computEraserPoints(f,l),c=Ee(g,!0),m={pos:[0,0],d:c,fillColor:"rgba(0,0,0,1)"},x=new Ae(m);x.addEventListener("beforerender",function(_ref164){var M=_ref164.detail;var S=M.context;n?S.blendFuncSeparate(S.ZERO,S.ZERO,S.ZERO,S.ZERO):S.globalCompositeOperation="destination-out";}),x.addEventListener("afterrender",function(_ref165){var M=_ref165.detail;var S=M.context;n?S.blendFuncSeparate(S.SRC_ALPHA,S.ONE_MINUS_SRC_ALPHA,S.ONE,S.ONE_MINUS_SRC_ALPHA):S.globalCompositeOperation="source-over";}),e.append(x);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,i=e.originRect;var l;if(typeof OffscreenCanvas=="function"){l=new OffscreenCanvas(t.width,t.height);var g=l.getContext("2d");g&&g.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){l=document.createElement("canvas"),l.width=t.width,l.height=t.height;var _g3=l.getContext("2d");_g3&&_g3.putImageData(t,0,0);}if(!l)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var o=[Math.floor(i.w/r[0]),Math.floor(i.h/r[1])],a=[Math.floor((n.x-i.x)/r[0]),Math.floor((n.y-i.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],f={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:o,texture:l,textureRect:a};return new hi(f);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Dt(e[0],e[1]);return Dt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var i,l;for(var o=0;o<e.length;o+=2){var a=new Dt(e[o],e[o+1]);var f=void 0;if(o==e.length-2){var g=new Dt(e[o-2],e[o-1]);f=ot.Sub(a,g).uni(),i=a;}else{o===0&&(l=a);var _g4=new Dt(e[o+2],e[o+3]);f=ot.Sub(_g4,a).uni();}if(f){var _g5=ot.Per(f).mul(t);r.push(Dt.Sub(a,_g5)),n.push(Dt.Add(a,_g5));}}if(i&&l){var _o3=Dt.GetSemicircleStroke(i,r[r.length-1],-1,8),_a4=Dt.GetSemicircleStroke(l,n[0],-1,8);return r.concat(_o3,n.reverse(),_a4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var i;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var l=_step15.value;r?gm(r,l,e):(l.remove(),_me(l,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(i=this.drawLayer)==null||i.getElementsByName(t).forEach(function(o){var a;o.remove(),_me(o,(a=_this61.drawLayer)==null?void 0:a.parent);}):this.fullLayer.getElementsByName(t).forEach(function(o){o.remove(),_me(o,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_me(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var h;var t=e.node,r=e.opt,n=e.vNodes,i=e.willSerializeData,l=e.targetNode,o=r.zIndex,a=r.translate,f=r.angle,g=r.originPoint,c=r.scenePoint,m=r.scale,x=r.pointMap,M=r.thickness;var S;var P=l&&ue(l)||n.get(t.name);if(!P)return;he(o)&&(t.setAttribute("zIndex",o),P.opt.zIndex=o);var T=t.parent;if(T){if(g&&m&&l){var p=[P.op[0],P.op[1]];mn(P.op,c,m,a);var d=[P.op[0],P.op[1]],y=[d[0]-p[0],d[1]-p[1]];if(P.centerPos=[P.centerPos[0]+y[0],P.centerPos[1]+y[1]],P.opt.translate=void 0,P.opt.scale=void 0,P.opt.eraserlines)for(var _i3=0,_Object$values=Object.values(P.opt.eraserlines);_i3<_Object$values.length;_i3++){var O=_Object$values[_i3];var E=O.op,w=O.thickness;O.thickness=w*Math.max(m[0],m[1]);for(var B=0;B<E.length;B++)vn(E[B],c,m,a);}}else if(a){if(t.setAttribute("translate",a),P.opt.translate=a,l){var _p6=[a[0]*T.worldScaling[0],a[1]*T.worldScaling[1]];S=cr(P.rect,_p6),P.rect=S;}else{var _p7=Pe.getRectFromLayer(T,t.name);P.rect=_p7||P.rect;}}else if(he(f))if(t.setAttribute("rotate",f),P.opt.rotate=f,l)S=ns(P.rect,f),P.rect=S;else{var _p8=Pe.getRectFromLayer(T,t.name);P.rect=_p8||P.rect;}if(x){var _p9=x.get(t.name);if(_p9)for(var _d11=0,_y9=0;_d11<P.op.length;_d11+=3,_y9++)P.op[_d11]=_p9[_y9][0],P.op[_d11+1]=_p9[_y9][1];}if(M&&(h=P==null?void 0:P.opt)!=null&&h.thickness&&(P.opt.thickness=M),i&&!(g&&m&&l)){if(a){var _p10=P.op.map(function(d,y){var O=y%3;return O===0?d+a[0]:O===1?d+a[1]:d;});if(P.op=_p10,P.centerPos=[P.centerPos[0]+a[0],P.centerPos[1]+a[1]],P!=null&&P.opt&&(P.opt.translate=void 0),P.opt.eraserlines)for(var _i4=0,_Object$values2=Object.values(P.opt.eraserlines);_i4<_Object$values2.length;_i4++){var _d12=_Object$values2[_i4];var _y10=_d12.op;for(var _O6=0;_O6<_y10.length;_O6++){var _E3=_y10[_O6].map(function(w,B){return B%2?w+a[1]:w+a[0];});_d12.op[_O6]=_E3;}}}else if(he(f)){var _p11=P.op;if(fm(_p11,P.centerPos,f),P.op=_p11,P!=null&&P.opt&&(P.opt.rotate=void 0),P.opt.eraserlines)for(var _i5=0,_Object$values3=Object.values(P.opt.eraserlines);_i5<_Object$values3.length;_i5++){var _d13=_Object$values3[_i5];var _y11=_d13.op;for(var _O7=0;_O7<_y11.length;_O7++)hm(_y11[_O7],P.centerPos,f);}}}P&&n.setInfo(t.name,P);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Pe.SafeBorderPadding),y:Math.floor(n.y-Pe.SafeBorderPadding),w:Math.floor(n.width+Pe.SafeBorderPadding*2),h:Math.floor(n.height+Pe.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,i=e.updateOpt,l=e.willSerializeData;return!!(l&&(i.angle||i.translate)||i.thickness&&r.thickness&&r.thickness!==i.thickness||i.strokeType&&r.strokeType&&r.strokeType!==i.strokeType||i.originPoint&&i.scenePoint&&i.scale||i.pointMap&&i.pointMap.has(n.name)||t===St.Text&&(i.fontSize||i.translate||i.textInfos&&i.textInfos.get(n.name))||t===St.Image&&(i.angle||i.translate||i.scale||i.strokeColor&&i.type===Zr.Iconify)||t===i.toolsType&&i.willRefresh||r.eraserlines&&r.eraserlines.length&&(i.strokeColor||i.fillColor));}}]);}();at(Pe,"SafeBorderPadding",10);var Mt=Pe;var ln=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var cn={exports:{}};cn.exports;(function(u){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function l(a,f){if(!i[a]){i[a]={};for(var g=0;g<a.length;g++)i[a][a.charAt(g)]=g;}return i[a][f];}var o={compressToBase64:function compressToBase64(a){if(a==null)return"";var f=o._compress(a,6,function(g){return r.charAt(g);});switch(f.length%4){default:case 0:return f;case 1:return f+"===";case 2:return f+"==";case 3:return f+"=";}},decompressFromBase64:function decompressFromBase64(a){return a==null?"":a==""?null:o._decompress(a.length,32,function(f){return l(r,a.charAt(f));});},compressToUTF16:function compressToUTF16(a){return a==null?"":o._compress(a,15,function(f){return t(f+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(a){return a==null?"":a==""?null:o._decompress(a.length,16384,function(f){return a.charCodeAt(f)-32;});},//compress into uint8array (UCS-2 big endian format)
400
400
  compressToUint8Array:function compressToUint8Array(a){for(var f=o.compress(a),g=new Uint8Array(f.length*2),c=0,m=f.length;c<m;c++){var x=f.charCodeAt(c);g[c*2]=x>>>8,g[c*2+1]=x%256;}return g;},//decompress from uint8array (UCS-2 big endian format)
401
401
  decompressFromUint8Array:function decompressFromUint8Array(a){if(a==null)return o.decompress(a);for(var f=new Array(a.length/2),g=0,c=f.length;g<c;g++)f[g]=a[g*2]*256+a[g*2+1];var m=[];return f.forEach(function(x){m.push(t(x));}),o.decompress(m.join(""));},//compress into a string that is already URI encoded
402
402
  compressToEncodedURIComponent:function compressToEncodedURIComponent(a){return a==null?"":o._compress(a,6,function(f){return n.charAt(f);});},//decompress from an output of compressToEncodedURIComponent
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-DNughIC2.js");exports.ActiveContainerType=e.ActiveContainerType;exports.ApplianceMultiPlugin=e.ApplianceMultiPlugin;exports.ApplianceNames=e.ApplianceNames;exports.ApplianceSigleWrapper=e.ApplianceSigleWrapper;exports.ApplianceSinglePlugin=e.ApplianceSinglePlugin;exports.AutoDrawPlugin=e.AutoDrawPlugin;exports.ECanvasShowType=e.ECanvasShowType;exports.EDataType=e.EDataType;exports.EForceStopReason=e.EForceStopReason;exports.EImageType=e.EImageType;exports.EMatrixrRelationType=e.EMatrixrRelationType;exports.EOperationType=e.EOperationType;exports.EPostMessageType=e.EPostMessageType;exports.ERenderFilterType=e.ERenderFilterType;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.Plugin=e.Plugin;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-u5GMq5Ct.js");exports.ActiveContainerType=e.ActiveContainerType;exports.ApplianceMultiPlugin=e.ApplianceMultiPlugin;exports.ApplianceNames=e.ApplianceNames;exports.ApplianceSigleWrapper=e.ApplianceSigleWrapper;exports.ApplianceSinglePlugin=e.ApplianceSinglePlugin;exports.AutoDrawPlugin=e.AutoDrawPlugin;exports.ECanvasShowType=e.ECanvasShowType;exports.EDataType=e.EDataType;exports.EForceStopReason=e.EForceStopReason;exports.EImageType=e.EImageType;exports.EMatrixrRelationType=e.EMatrixrRelationType;exports.EOperationType=e.EOperationType;exports.EPostMessageType=e.EPostMessageType;exports.ERenderFilterType=e.ERenderFilterType;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.Plugin=e.Plugin;exports.ShapeType=e.ShapeType;exports.fullWorkerUrl=e.fullWorker;exports.subWorkerUrl=e.subWorker;
@@ -1,4 +1,4 @@
1
- import { B as s, A as p, x as r, w as t, v as l, Q as n, G as i, b as y, F as E, j as o, l as T, N as g, c as u, O as v, K as c, y as S, a as A, J as P, h as k, H as m, E as M, L as W, I as h, P as w, z as x, s as F, u as I } from "./index-CR2nlCh1.mjs";
1
+ import { B as s, A as p, x as r, w as t, v as l, Q as n, G as i, b as y, F as E, j as o, l as T, N as g, c as u, O as v, K as c, y as S, a as A, J as P, h as k, H as m, E as M, L as W, I as h, P as w, z as x, s as F, u as I } from "./index-D8K7uSYW.mjs";
2
2
  export {
3
3
  s as ActiveContainerType,
4
4
  p as ApplianceMultiPlugin,
@@ -396,7 +396,7 @@ _inherits(o,_r$default22);return _createClass(o,[{key:"texture",get:function get
396
396
  f=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
397
397
  n&&(f=="offset"||f=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
398
398
  i&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||// Skip index properties.
399
- Rf(f,a)))&&o.push(f);return o;}var Oi=Bf,Wf=Object.prototype;function Ff(u){var e=u&&u.constructor,t=typeof e=="function"&&e.prototype||Wf;return u===t;}var tn=Ff;function Uf(u,e){return function(t){return u(e(t));};}var Mi=Uf,jf=Mi,Yf=jf(Object.keys,Object),Xf=Yf,zf=tn,$f=Xf,Gf=Object.prototype,Hf=Gf.hasOwnProperty;function kf(u){if(!zf(u))return $f(u);var e=[];for(var t in Object(u))Hf.call(u,t)&&t!="constructor"&&e.push(t);return e;}var Vf=kf,Kf=pi,Zf=Ci;function Jf(u){return u!=null&&Zf(u.length)&&!Kf(u);}var en=Jf,Qf=Oi,qf=Vf,_f=en;function th(u){return _f(u)?Qf(u):qf(u);}var rn=th,eh=Br,rh=rn;function nh(u,e){return u&&eh(e,rh(e),u);}var ih=nh;function sh(u){var e=[];if(u!=null)for(var t in Object(u))e.push(t);return e;}var oh=sh,ah=hr,lh=tn,ch=oh,fh=Object.prototype,hh=fh.hasOwnProperty;function uh(u){if(!ah(u))return ch(u);var e=lh(u),t=[];for(var r in u)r=="constructor"&&(e||!hh.call(u,r))||t.push(r);return t;}var dh=uh,ph=Oi,mh=dh,vh=en;function yh(u){return vh(u)?ph(u,!0):mh(u);}var nn=yh,gh=Br,Ph=nn;function xh(u,e){return u&&gh(e,Ph(e),u);}var Sh=xh,xr={exports:{}};xr.exports;(function(u,e){var t=Le,r=e&&!e.nodeType&&e,n=r&&!0&&u&&!u.nodeType&&u,i=n&&n.exports===r,l=i?t.Buffer:void 0,o=l?l.allocUnsafe:void 0;function a(f,g){if(g)return f.slice();var c=f.length,m=o?o(c):new f.constructor(c);return f.copy(m),m;}u.exports=a;})(xr,xr.exports);var Th=xr.exports;function Ch(u,e){var t=-1,r=u.length;for(e||(e=Array(r));++t<r;)e[t]=u[t];return e;}var Ih=Ch;function Oh(u,e){for(var t=-1,r=u==null?0:u.length,n=0,i=[];++t<r;){var l=u[t];e(l,t,u)&&(i[n++]=l);}return i;}var Ei=Oh;function Mh(){return[];}var Ai=Mh,Eh=Ei,Ah=Ai,Lh=Object.prototype,wh=Lh.propertyIsEnumerable,wn=Object.getOwnPropertySymbols,Rh=wn?function(u){return u==null?[]:(u=Object(u),Eh(wn(u),function(e){return wh.call(u,e);}));}:Ah,sn=Rh,Dh=Br,bh=sn;function Nh(u,e){return Dh(u,bh(u),e);}var Bh=Nh;function Wh(u,e){for(var t=-1,r=e.length,n=u.length;++t<r;)u[n+t]=e[t];return u;}var on=Wh,Fh=Mi,Uh=Fh(Object.getPrototypeOf,Object),Li=Uh,jh=on,Yh=Li,Xh=sn,zh=Ai,$h=Object.getOwnPropertySymbols,Gh=$h?function(u){for(var e=[];u;)jh(e,Xh(u)),u=Yh(u);return e;}:zh,wi=Gh,Hh=Br,kh=wi;function Vh(u,e){return Hh(u,kh(u),e);}var Kh=Vh,Zh=on,Jh=ur;function Qh(u,e,t){var r=e(u);return Jh(u)?r:Zh(r,t(u));}var Ri=Qh,qh=Ri,_h=sn,tu=rn;function eu(u){return qh(u,tu,_h);}var Di=eu,ru=Ri,nu=wi,iu=nn;function su(u){return ru(u,iu,nu);}var ou=su,au=Ue,lu=Le,cu=au(lu,"DataView"),fu=cu,hu=Ue,uu=Le,du=hu(uu,"Promise"),pu=du,mu=Ue,vu=Le,yu=mu(vu,"Set"),bi=yu,gu=Ue,Pu=Le,xu=gu(Pu,"WeakMap"),Su=xu,zr=fu,$r=Qr,Gr=pu,Hr=bi,kr=Su,Ni=Je,er=mi,Rn="[object Map]",Tu="[object Object]",Dn="[object Promise]",bn="[object Set]",Nn="[object WeakMap]",Bn="[object DataView]",Cu=er(zr),Iu=er($r),Ou=er(Gr),Mu=er(Hr),Eu=er(kr),Fe=Ni;(zr&&Fe(new zr(new ArrayBuffer(1)))!=Bn||$r&&Fe(new $r())!=Rn||Gr&&Fe(Gr.resolve())!=Dn||Hr&&Fe(new Hr())!=bn||kr&&Fe(new kr())!=Nn)&&(Fe=function Fe(u){var e=Ni(u),t=e==Tu?u.constructor:void 0,r=t?er(t):"";if(r)switch(r){case Cu:return Bn;case Iu:return Rn;case Ou:return Dn;case Mu:return bn;case Eu:return Nn;}return e;});var Fr=Fe,Au=Object.prototype,Lu=Au.hasOwnProperty;function wu(u){var e=u.length,t=new u.constructor(e);return e&&typeof u[0]=="string"&&Lu.call(u,"index")&&(t.index=u.index,t.input=u.input),t;}var Ru=wu,Du=Le,bu=Du.Uint8Array,Bi=bu,Wn=Bi;function Nu(u){var e=new u.constructor(u.byteLength);return new Wn(e).set(new Wn(u)),e;}var an=Nu,Bu=an;function Wu(u,e){var t=e?Bu(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.byteLength);}var Fu=Wu,Uu=/\w*$/;function ju(u){var e=new u.constructor(u.source,Uu.exec(u));return e.lastIndex=u.lastIndex,e;}var Yu=ju,Fn=fr,Un=Fn?Fn.prototype:void 0,jn=Un?Un.valueOf:void 0;function Xu(u){return jn?Object(jn.call(u)):{};}var zu=Xu,$u=an;function Gu(u,e){var t=e?$u(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.length);}var Hu=Gu,ku=an,Vu=Fu,Ku=Yu,Zu=zu,Ju=Hu,Qu="[object Boolean]",qu="[object Date]",_u="[object Map]",td="[object Number]",ed="[object RegExp]",rd="[object Set]",nd="[object String]",id="[object Symbol]",sd="[object ArrayBuffer]",od="[object DataView]",ad="[object Float32Array]",ld="[object Float64Array]",cd="[object Int8Array]",fd="[object Int16Array]",hd="[object Int32Array]",ud="[object Uint8Array]",dd="[object Uint8ClampedArray]",pd="[object Uint16Array]",md="[object Uint32Array]";function vd(u,e,t){var r=u.constructor;switch(e){case sd:return ku(u);case Qu:case qu:return new r(+u);case od:return Vu(u,t);case ad:case ld:case cd:case fd:case hd:case ud:case dd:case pd:case md:return Ju(u,t);case _u:return new r();case td:case nd:return new r(u);case ed:return Ku(u);case rd:return new r();case id:return Zu(u);}}var yd=vd,gd=hr,Yn=Object.create,Pd=/* @__PURE__ */function(){function u(){}return function(e){if(!gd(e))return{};if(Yn)return Yn(e);u.prototype=e;var t=new u();return u.prototype=void 0,t;};}(),xd=Pd,Sd=xd,Td=Li,Cd=tn;function Id(u){return typeof u.constructor=="function"&&!Cd(u)?Sd(Td(u)):{};}var Od=Id,Md=Fr,Ed=De,Ad="[object Map]";function Ld(u){return Ed(u)&&Md(u)==Ad;}var wd=Ld,Rd=wd,Dd=Wr,Xn=_r,zn=Xn&&Xn.isMap,bd=zn?Dd(zn):Rd,Nd=bd,Bd=Fr,Wd=De,Fd="[object Set]";function Ud(u){return Wd(u)&&Bd(u)==Fd;}var jd=Ud,Yd=jd,Xd=Wr,$n=_r,Gn=$n&&$n.isSet,zd=Gn?Xd(Gn):Yd,Wi=zd,$d=/* @__PURE__ */Ne(Wi),Gd=yi,Hd=mc,kd=xi,Vd=ih,Kd=Sh,Zd=Th,Jd=Ih,Qd=Bh,qd=Kh,_d=Di,tp=ou,ep=Fr,rp=Ru,np=yd,ip=Od,sp=ur,op=qr,ap=Nd,lp=hr,cp=Wi,fp=rn,hp=nn,up=1,dp=2,pp=4,Fi="[object Arguments]",mp="[object Array]",vp="[object Boolean]",yp="[object Date]",gp="[object Error]",Ui="[object Function]",Pp="[object GeneratorFunction]",xp="[object Map]",Sp="[object Number]",ji="[object Object]",Tp="[object RegExp]",Cp="[object Set]",Ip="[object String]",Op="[object Symbol]",Mp="[object WeakMap]",Ep="[object ArrayBuffer]",Ap="[object DataView]",Lp="[object Float32Array]",wp="[object Float64Array]",Rp="[object Int8Array]",Dp="[object Int16Array]",bp="[object Int32Array]",Np="[object Uint8Array]",Bp="[object Uint8ClampedArray]",Wp="[object Uint16Array]",Fp="[object Uint32Array]",re={};re[Fi]=re[mp]=re[Ep]=re[Ap]=re[vp]=re[yp]=re[Lp]=re[wp]=re[Rp]=re[Dp]=re[bp]=re[xp]=re[Sp]=re[ji]=re[Tp]=re[Cp]=re[Ip]=re[Op]=re[Np]=re[Bp]=re[Wp]=re[Fp]=!0;re[gp]=re[Ui]=re[Mp]=!1;function yr(u,e,t,r,n,i){var l,o=e&up,a=e&dp,f=e&pp;if(t&&(l=n?t(u,r,n,i):t(u)),l!==void 0)return l;if(!lp(u))return u;var g=sp(u);if(g){if(l=rp(u),!o)return Jd(u,l);}else{var c=ep(u),m=c==Ui||c==Pp;if(op(u))return Zd(u,o);if(c==ji||c==Fi||m&&!n){if(l=a||m?{}:ip(u),!o)return a?qd(u,Kd(l,u)):Qd(u,Vd(l,u));}else{if(!re[c])return n?u:{};l=np(u,c,o);}}i||(i=new Gd());var x=i.get(u);if(x)return x;i.set(u,l),cp(u)?u.forEach(function(P){l.add(yr(P,e,t,P,u,i));}):ap(u)&&u.forEach(function(P,T){l.set(T,yr(P,e,t,T,u,i));});var M=f?a?tp:_d:a?hp:fp,S=g?void 0:M(u);return Hd(S||u,function(P,T){S&&(T=P,P=u[T]),kd(l,T,yr(P,e,t,T,u,i));}),l;}var Up=yr,jp=Up,Yp=1,Xp=4;function zp(u){return jp(u,Yp|Xp);}var $p=zp,ue=/* @__PURE__ */Ne($p);var Yi="1.1.18-beta.0",Gp="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var u=window.__netlessUA||"";u+=" ".concat(Gp,"@").concat(Yi),window.__netlessUA=u;}var Se={syncOpt:{interval:500},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:600},bezier:{maxDrawCount:1/0,combineUnitTime:500},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1}};function Ee(u){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=u.length;if(t<2)return"";var r=u[0],n=u[1];if(t===2)return"M".concat(ze(r),"L").concat(ze(n));var i="";for(var l=2,o=t-1;l<o;l++)r=u[l],n=u[l+1],i+=$e(r,n);return e?"M".concat($e(u[0],u[1]),"Q").concat(ze(u[1])).concat($e(u[1],u[2]),"T").concat(i).concat($e(u[t-1],u[0])).concat($e(u[0],u[1]),"Z"):"M".concat(ze(u[0]),"Q").concat(ze(u[1])).concat($e(u[1],u[2])).concat(u.length>3?"T":"").concat(i,"L").concat(ze(u[t-1]));}var Pe=/*#__PURE__*/function(){function Pe(e){_classCallCheck(this,Pe);at(this,"maxImageWidth",Se.pencilEraser.maxImageWidth);at(this,"maxImageHeight",Se.pencilEraser.maxImageHeight);at(this,"syncUnitTime",Se.syncOpt.interval);at(this,"vNodes");at(this,"drawLayer");at(this,"fullLayer");at(this,"workId");at(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,i=e.workId,l=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=i,this.syncUnitTime=l.syncUnitTime||this.syncUnitTime;}return _createClass(Pe,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var i=r[r.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,i,l;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&r&&(r.opt=e,(l=this.vNodes)==null||l.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,i;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var l=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(l.length!==1)return;var o=l[0],a=e.pos,f=e.zIndex,g=e.scale,c=e.angle,m=e.translate,x={};he(f)&&(x.zIndex=f),a&&(x.pos=[a[0],a[1]]),g&&(x.scale=g),c&&(x.rotate=c),m&&(x.translate=m),o.attr(x);var M=o==null?void 0:o.getBoundingClientRect();return M&&(t=Wt(t,{x:Math.floor(M.x-Pe.SafeBorderPadding),y:Math.floor(M.y-Pe.SafeBorderPadding),w:Math.floor(M.width+Pe.SafeBorderPadding*2),h:Math.floor(M.height+Pe.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(r,{rect:t,centerPos:a}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,i=e.pos,l=e.layer,o=l.parent;if(t)try{var f=(l.renderer.glRenderer||l.renderer.canvasRenderer).options.displayRatio,g=r.getBoundingClientRect(),c=g.width*f*l.worldScaling[0],m=g.height*f*l.worldScaling[1];var x=1;(c>this.maxImageWidth||m>this.maxImageHeight)&&(x=Math.min(this.maxImageWidth/c,this.maxImageHeight/m));var M=l.getAttribute("scale");M=[M[0]*x,M[1]*x];var S=l.parent.parent,P=l.getAttribute("translate"),_T28=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),S,{offscreen:o.offscreen,width:o.width,height:o.height,contextType:"2d",autoRender:!1,bufferSize:500},M,P),_h26=r.cloneNode(!0);this.addEraserlines(_h26,n,i,!1),_T28.appendChild(_h26);var p=_T28.parent;p.render();var d=_T28.renderer.canvasRenderer,y=d.context;if(!y)return;var O=d.options.displayRatio,E=_h26.getBoundingClientRect(),w={x:E.x,y:E.y,w:E.width,h:E.height},B={x:0,y:0,w:S.width,h:S.height};if(sr(w,B)===ye.outside){xe(_h26,p),S.removeChild(p),this.isDelete=!0;return;}var b=ue(w);b.x=Math.floor(Math.max(w.x,0)),b.y=Math.floor(Math.max(w.y,0)),b.w=Math.min(w.x+w.w,S.width)-b.x,b.h=Math.min(w.y+w.h,S.height)-b.y;var W=this.getGroupRect(b,O),D=W.x,R=W.y,j=W.w,k=W.h;var J=y.getImageData(D,R,j,k);if(this.isTransparentRectByCanvas(J)){xe(_h26,p),S.removeChild(p),this.isDelete=!0,J=null;return;}xe(r,o);var st=this.createSpriteNode({imageData:J,safariRect:b,originRect:w,worldScaling:_T28.worldScaling});st&&r.append(st),xe(_h26,p),S.removeChild(p),o.deleteTexture(J),J=null;}catch(a){console.error(a);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,i){var l=r.width,o=r.height,a="bitMap-".concat(e),f=t.layer(a,r),g=new de({anchor:[0.5,0.5],pos:[l*0.5,o*0.5],size:[l,o],name:"viewport",id:e});return g.setAttribute("scale",n),g.setAttribute("translate",i),f.append(g),g;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),i=Math.floor(e.w*t),l=Math.floor(e.h*t);return{x:r,y:n,w:i,h:l};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var i=_step13.value;var l=i.thickness,o=i.op;var _iterator14=_createForOfIteratorHelper(o),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var a=_step14.value;var f=a.map(function(M,S){return S%2?M-r[1]:M-r[0];}),g=this.computEraserPoints(f,l),c=Ee(g,!0),m={pos:[0,0],d:c,fillColor:"rgba(0,0,0,1)"},x=new Ae(m);x.addEventListener("beforerender",function(_ref164){var M=_ref164.detail;var S=M.context;n?S.blendFuncSeparate(S.ZERO,S.ZERO,S.ZERO,S.ZERO):S.globalCompositeOperation="destination-out";}),x.addEventListener("afterrender",function(_ref165){var M=_ref165.detail;var S=M.context;n?S.blendFuncSeparate(S.SRC_ALPHA,S.ONE_MINUS_SRC_ALPHA,S.ONE,S.ONE_MINUS_SRC_ALPHA):S.globalCompositeOperation="source-over";}),e.append(x);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,i=e.originRect;var l;if(typeof OffscreenCanvas=="function"){l=new OffscreenCanvas(t.width,t.height);var g=l.getContext("2d");g&&g.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){l=document.createElement("canvas"),l.width=t.width,l.height=t.height;var _g3=l.getContext("2d");_g3&&_g3.putImageData(t,0,0);}if(!l)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var o=[Math.floor(i.w/r[0]),Math.floor(i.h/r[1])],a=[Math.floor((n.x-i.x)/r[0]),Math.floor((n.y-i.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],f={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:o,texture:l,textureRect:a};return new hi(f);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Dt(e[0],e[1]);return Dt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var i,l;for(var o=0;o<e.length;o+=2){var a=new Dt(e[o],e[o+1]);var f=void 0;if(o==e.length-2){var g=new Dt(e[o-2],e[o-1]);f=ot.Sub(a,g).uni(),i=a;}else{o===0&&(l=a);var _g4=new Dt(e[o+2],e[o+3]);f=ot.Sub(_g4,a).uni();}if(f){var _g5=ot.Per(f).mul(t);r.push(Dt.Sub(a,_g5)),n.push(Dt.Add(a,_g5));}}if(i&&l){var _o3=Dt.GetSemicircleStroke(i,r[r.length-1],-1,8),_a4=Dt.GetSemicircleStroke(l,n[0],-1,8);return r.concat(_o3,n.reverse(),_a4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var i;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var l=_step15.value;r?gm(r,l,e):(l.remove(),_me(l,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(i=this.drawLayer)==null||i.getElementsByName(t).forEach(function(o){var a;o.remove(),_me(o,(a=_this61.drawLayer)==null?void 0:a.parent);}):this.fullLayer.getElementsByName(t).forEach(function(o){o.remove(),_me(o,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_me(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var h;var t=e.node,r=e.opt,n=e.vNodes,i=e.willSerializeData,l=e.targetNode,o=r.zIndex,a=r.translate,f=r.angle,g=r.originPoint,c=r.scenePoint,m=r.scale,x=r.pointMap,M=r.thickness;var S;var P=l&&ue(l)||n.get(t.name);if(!P)return;he(o)&&(t.setAttribute("zIndex",o),P.opt.zIndex=o);var T=t.parent;if(T){if(g&&m&&l){var p=[P.op[0],P.op[1]];mn(P.op,c,m,a);var d=[P.op[0],P.op[1]],y=[d[0]-p[0],d[1]-p[1]];if(P.centerPos=[P.centerPos[0]+y[0],P.centerPos[1]+y[1]],P.opt.translate=void 0,P.opt.scale=void 0,P.opt.eraserlines)for(var _i3=0,_Object$values=Object.values(P.opt.eraserlines);_i3<_Object$values.length;_i3++){var O=_Object$values[_i3];var E=O.op,w=O.thickness;O.thickness=w*Math.max(m[0],m[1]);for(var B=0;B<E.length;B++)vn(E[B],c,m,a);}}else if(a){if(t.setAttribute("translate",a),P.opt.translate=a,l){var _p6=[a[0]*T.worldScaling[0],a[1]*T.worldScaling[1]];S=cr(P.rect,_p6),P.rect=S;}else{var _p7=Pe.getRectFromLayer(T,t.name);P.rect=_p7||P.rect;}}else if(he(f))if(t.setAttribute("rotate",f),P.opt.rotate=f,l)S=ns(P.rect,f),P.rect=S;else{var _p8=Pe.getRectFromLayer(T,t.name);P.rect=_p8||P.rect;}if(x){var _p9=x.get(t.name);if(_p9)for(var _d11=0,_y9=0;_d11<P.op.length;_d11+=3,_y9++)P.op[_d11]=_p9[_y9][0],P.op[_d11+1]=_p9[_y9][1];}if(M&&(h=P==null?void 0:P.opt)!=null&&h.thickness&&(P.opt.thickness=M),i&&!(g&&m&&l)){if(a){var _p10=P.op.map(function(d,y){var O=y%3;return O===0?d+a[0]:O===1?d+a[1]:d;});if(P.op=_p10,P.centerPos=[P.centerPos[0]+a[0],P.centerPos[1]+a[1]],P!=null&&P.opt&&(P.opt.translate=void 0),P.opt.eraserlines)for(var _i4=0,_Object$values2=Object.values(P.opt.eraserlines);_i4<_Object$values2.length;_i4++){var _d12=_Object$values2[_i4];var _y10=_d12.op;for(var _O6=0;_O6<_y10.length;_O6++){var _E3=_y10[_O6].map(function(w,B){return B%2?w+a[1]:w+a[0];});_d12.op[_O6]=_E3;}}}else if(he(f)){var _p11=P.op;if(fm(_p11,P.centerPos,f),P.op=_p11,P!=null&&P.opt&&(P.opt.rotate=void 0),P.opt.eraserlines)for(var _i5=0,_Object$values3=Object.values(P.opt.eraserlines);_i5<_Object$values3.length;_i5++){var _d13=_Object$values3[_i5];var _y11=_d13.op;for(var _O7=0;_O7<_y11.length;_O7++)hm(_y11[_O7],P.centerPos,f);}}}P&&n.setInfo(t.name,P);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Pe.SafeBorderPadding),y:Math.floor(n.y-Pe.SafeBorderPadding),w:Math.floor(n.width+Pe.SafeBorderPadding*2),h:Math.floor(n.height+Pe.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,i=e.updateOpt,l=e.willSerializeData;return!!(l&&(i.angle||i.translate)||i.thickness&&r.thickness&&r.thickness!==i.thickness||i.strokeType&&r.strokeType&&r.strokeType!==i.strokeType||i.originPoint&&i.scenePoint&&i.scale||i.pointMap&&i.pointMap.has(n.name)||t===St.Text&&(i.fontSize||i.translate||i.textInfos&&i.textInfos.get(n.name))||t===St.Image&&(i.angle||i.translate||i.scale||i.strokeColor&&i.type===Zr.Iconify)||t===i.toolsType&&i.willRefresh||r.eraserlines&&r.eraserlines.length&&(i.strokeColor||i.fillColor));}}]);}();at(Pe,"SafeBorderPadding",10);var Mt=Pe;var ln=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var cn={exports:{}};cn.exports;(function(u){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function l(a,f){if(!i[a]){i[a]={};for(var g=0;g<a.length;g++)i[a][a.charAt(g)]=g;}return i[a][f];}var o={compressToBase64:function compressToBase64(a){if(a==null)return"";var f=o._compress(a,6,function(g){return r.charAt(g);});switch(f.length%4){default:case 0:return f;case 1:return f+"===";case 2:return f+"==";case 3:return f+"=";}},decompressFromBase64:function decompressFromBase64(a){return a==null?"":a==""?null:o._decompress(a.length,32,function(f){return l(r,a.charAt(f));});},compressToUTF16:function compressToUTF16(a){return a==null?"":o._compress(a,15,function(f){return t(f+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(a){return a==null?"":a==""?null:o._decompress(a.length,16384,function(f){return a.charCodeAt(f)-32;});},//compress into uint8array (UCS-2 big endian format)
399
+ Rf(f,a)))&&o.push(f);return o;}var Oi=Bf,Wf=Object.prototype;function Ff(u){var e=u&&u.constructor,t=typeof e=="function"&&e.prototype||Wf;return u===t;}var tn=Ff;function Uf(u,e){return function(t){return u(e(t));};}var Mi=Uf,jf=Mi,Yf=jf(Object.keys,Object),Xf=Yf,zf=tn,$f=Xf,Gf=Object.prototype,Hf=Gf.hasOwnProperty;function kf(u){if(!zf(u))return $f(u);var e=[];for(var t in Object(u))Hf.call(u,t)&&t!="constructor"&&e.push(t);return e;}var Vf=kf,Kf=pi,Zf=Ci;function Jf(u){return u!=null&&Zf(u.length)&&!Kf(u);}var en=Jf,Qf=Oi,qf=Vf,_f=en;function th(u){return _f(u)?Qf(u):qf(u);}var rn=th,eh=Br,rh=rn;function nh(u,e){return u&&eh(e,rh(e),u);}var ih=nh;function sh(u){var e=[];if(u!=null)for(var t in Object(u))e.push(t);return e;}var oh=sh,ah=hr,lh=tn,ch=oh,fh=Object.prototype,hh=fh.hasOwnProperty;function uh(u){if(!ah(u))return ch(u);var e=lh(u),t=[];for(var r in u)r=="constructor"&&(e||!hh.call(u,r))||t.push(r);return t;}var dh=uh,ph=Oi,mh=dh,vh=en;function yh(u){return vh(u)?ph(u,!0):mh(u);}var nn=yh,gh=Br,Ph=nn;function xh(u,e){return u&&gh(e,Ph(e),u);}var Sh=xh,xr={exports:{}};xr.exports;(function(u,e){var t=Le,r=e&&!e.nodeType&&e,n=r&&!0&&u&&!u.nodeType&&u,i=n&&n.exports===r,l=i?t.Buffer:void 0,o=l?l.allocUnsafe:void 0;function a(f,g){if(g)return f.slice();var c=f.length,m=o?o(c):new f.constructor(c);return f.copy(m),m;}u.exports=a;})(xr,xr.exports);var Th=xr.exports;function Ch(u,e){var t=-1,r=u.length;for(e||(e=Array(r));++t<r;)e[t]=u[t];return e;}var Ih=Ch;function Oh(u,e){for(var t=-1,r=u==null?0:u.length,n=0,i=[];++t<r;){var l=u[t];e(l,t,u)&&(i[n++]=l);}return i;}var Ei=Oh;function Mh(){return[];}var Ai=Mh,Eh=Ei,Ah=Ai,Lh=Object.prototype,wh=Lh.propertyIsEnumerable,wn=Object.getOwnPropertySymbols,Rh=wn?function(u){return u==null?[]:(u=Object(u),Eh(wn(u),function(e){return wh.call(u,e);}));}:Ah,sn=Rh,Dh=Br,bh=sn;function Nh(u,e){return Dh(u,bh(u),e);}var Bh=Nh;function Wh(u,e){for(var t=-1,r=e.length,n=u.length;++t<r;)u[n+t]=e[t];return u;}var on=Wh,Fh=Mi,Uh=Fh(Object.getPrototypeOf,Object),Li=Uh,jh=on,Yh=Li,Xh=sn,zh=Ai,$h=Object.getOwnPropertySymbols,Gh=$h?function(u){for(var e=[];u;)jh(e,Xh(u)),u=Yh(u);return e;}:zh,wi=Gh,Hh=Br,kh=wi;function Vh(u,e){return Hh(u,kh(u),e);}var Kh=Vh,Zh=on,Jh=ur;function Qh(u,e,t){var r=e(u);return Jh(u)?r:Zh(r,t(u));}var Ri=Qh,qh=Ri,_h=sn,tu=rn;function eu(u){return qh(u,tu,_h);}var Di=eu,ru=Ri,nu=wi,iu=nn;function su(u){return ru(u,iu,nu);}var ou=su,au=Ue,lu=Le,cu=au(lu,"DataView"),fu=cu,hu=Ue,uu=Le,du=hu(uu,"Promise"),pu=du,mu=Ue,vu=Le,yu=mu(vu,"Set"),bi=yu,gu=Ue,Pu=Le,xu=gu(Pu,"WeakMap"),Su=xu,zr=fu,$r=Qr,Gr=pu,Hr=bi,kr=Su,Ni=Je,er=mi,Rn="[object Map]",Tu="[object Object]",Dn="[object Promise]",bn="[object Set]",Nn="[object WeakMap]",Bn="[object DataView]",Cu=er(zr),Iu=er($r),Ou=er(Gr),Mu=er(Hr),Eu=er(kr),Fe=Ni;(zr&&Fe(new zr(new ArrayBuffer(1)))!=Bn||$r&&Fe(new $r())!=Rn||Gr&&Fe(Gr.resolve())!=Dn||Hr&&Fe(new Hr())!=bn||kr&&Fe(new kr())!=Nn)&&(Fe=function Fe(u){var e=Ni(u),t=e==Tu?u.constructor:void 0,r=t?er(t):"";if(r)switch(r){case Cu:return Bn;case Iu:return Rn;case Ou:return Dn;case Mu:return bn;case Eu:return Nn;}return e;});var Fr=Fe,Au=Object.prototype,Lu=Au.hasOwnProperty;function wu(u){var e=u.length,t=new u.constructor(e);return e&&typeof u[0]=="string"&&Lu.call(u,"index")&&(t.index=u.index,t.input=u.input),t;}var Ru=wu,Du=Le,bu=Du.Uint8Array,Bi=bu,Wn=Bi;function Nu(u){var e=new u.constructor(u.byteLength);return new Wn(e).set(new Wn(u)),e;}var an=Nu,Bu=an;function Wu(u,e){var t=e?Bu(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.byteLength);}var Fu=Wu,Uu=/\w*$/;function ju(u){var e=new u.constructor(u.source,Uu.exec(u));return e.lastIndex=u.lastIndex,e;}var Yu=ju,Fn=fr,Un=Fn?Fn.prototype:void 0,jn=Un?Un.valueOf:void 0;function Xu(u){return jn?Object(jn.call(u)):{};}var zu=Xu,$u=an;function Gu(u,e){var t=e?$u(u.buffer):u.buffer;return new u.constructor(t,u.byteOffset,u.length);}var Hu=Gu,ku=an,Vu=Fu,Ku=Yu,Zu=zu,Ju=Hu,Qu="[object Boolean]",qu="[object Date]",_u="[object Map]",td="[object Number]",ed="[object RegExp]",rd="[object Set]",nd="[object String]",id="[object Symbol]",sd="[object ArrayBuffer]",od="[object DataView]",ad="[object Float32Array]",ld="[object Float64Array]",cd="[object Int8Array]",fd="[object Int16Array]",hd="[object Int32Array]",ud="[object Uint8Array]",dd="[object Uint8ClampedArray]",pd="[object Uint16Array]",md="[object Uint32Array]";function vd(u,e,t){var r=u.constructor;switch(e){case sd:return ku(u);case Qu:case qu:return new r(+u);case od:return Vu(u,t);case ad:case ld:case cd:case fd:case hd:case ud:case dd:case pd:case md:return Ju(u,t);case _u:return new r();case td:case nd:return new r(u);case ed:return Ku(u);case rd:return new r();case id:return Zu(u);}}var yd=vd,gd=hr,Yn=Object.create,Pd=/* @__PURE__ */function(){function u(){}return function(e){if(!gd(e))return{};if(Yn)return Yn(e);u.prototype=e;var t=new u();return u.prototype=void 0,t;};}(),xd=Pd,Sd=xd,Td=Li,Cd=tn;function Id(u){return typeof u.constructor=="function"&&!Cd(u)?Sd(Td(u)):{};}var Od=Id,Md=Fr,Ed=De,Ad="[object Map]";function Ld(u){return Ed(u)&&Md(u)==Ad;}var wd=Ld,Rd=wd,Dd=Wr,Xn=_r,zn=Xn&&Xn.isMap,bd=zn?Dd(zn):Rd,Nd=bd,Bd=Fr,Wd=De,Fd="[object Set]";function Ud(u){return Wd(u)&&Bd(u)==Fd;}var jd=Ud,Yd=jd,Xd=Wr,$n=_r,Gn=$n&&$n.isSet,zd=Gn?Xd(Gn):Yd,Wi=zd,$d=/* @__PURE__ */Ne(Wi),Gd=yi,Hd=mc,kd=xi,Vd=ih,Kd=Sh,Zd=Th,Jd=Ih,Qd=Bh,qd=Kh,_d=Di,tp=ou,ep=Fr,rp=Ru,np=yd,ip=Od,sp=ur,op=qr,ap=Nd,lp=hr,cp=Wi,fp=rn,hp=nn,up=1,dp=2,pp=4,Fi="[object Arguments]",mp="[object Array]",vp="[object Boolean]",yp="[object Date]",gp="[object Error]",Ui="[object Function]",Pp="[object GeneratorFunction]",xp="[object Map]",Sp="[object Number]",ji="[object Object]",Tp="[object RegExp]",Cp="[object Set]",Ip="[object String]",Op="[object Symbol]",Mp="[object WeakMap]",Ep="[object ArrayBuffer]",Ap="[object DataView]",Lp="[object Float32Array]",wp="[object Float64Array]",Rp="[object Int8Array]",Dp="[object Int16Array]",bp="[object Int32Array]",Np="[object Uint8Array]",Bp="[object Uint8ClampedArray]",Wp="[object Uint16Array]",Fp="[object Uint32Array]",re={};re[Fi]=re[mp]=re[Ep]=re[Ap]=re[vp]=re[yp]=re[Lp]=re[wp]=re[Rp]=re[Dp]=re[bp]=re[xp]=re[Sp]=re[ji]=re[Tp]=re[Cp]=re[Ip]=re[Op]=re[Np]=re[Bp]=re[Wp]=re[Fp]=!0;re[gp]=re[Ui]=re[Mp]=!1;function yr(u,e,t,r,n,i){var l,o=e&up,a=e&dp,f=e&pp;if(t&&(l=n?t(u,r,n,i):t(u)),l!==void 0)return l;if(!lp(u))return u;var g=sp(u);if(g){if(l=rp(u),!o)return Jd(u,l);}else{var c=ep(u),m=c==Ui||c==Pp;if(op(u))return Zd(u,o);if(c==ji||c==Fi||m&&!n){if(l=a||m?{}:ip(u),!o)return a?qd(u,Kd(l,u)):Qd(u,Vd(l,u));}else{if(!re[c])return n?u:{};l=np(u,c,o);}}i||(i=new Gd());var x=i.get(u);if(x)return x;i.set(u,l),cp(u)?u.forEach(function(P){l.add(yr(P,e,t,P,u,i));}):ap(u)&&u.forEach(function(P,T){l.set(T,yr(P,e,t,T,u,i));});var M=f?a?tp:_d:a?hp:fp,S=g?void 0:M(u);return Hd(S||u,function(P,T){S&&(T=P,P=u[T]),kd(l,T,yr(P,e,t,T,u,i));}),l;}var Up=yr,jp=Up,Yp=1,Xp=4;function zp(u){return jp(u,Yp|Xp);}var $p=zp,ue=/* @__PURE__ */Ne($p);var Yi="1.1.18-beta.1",Gp="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var u=window.__netlessUA||"";u+=" ".concat(Gp,"@").concat(Yi),window.__netlessUA=u;}var Se={syncOpt:{interval:300},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:600},bezier:{maxDrawCount:1/0,combineUnitTime:300},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1}};function Ee(u){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=u.length;if(t<2)return"";var r=u[0],n=u[1];if(t===2)return"M".concat(ze(r),"L").concat(ze(n));var i="";for(var l=2,o=t-1;l<o;l++)r=u[l],n=u[l+1],i+=$e(r,n);return e?"M".concat($e(u[0],u[1]),"Q").concat(ze(u[1])).concat($e(u[1],u[2]),"T").concat(i).concat($e(u[t-1],u[0])).concat($e(u[0],u[1]),"Z"):"M".concat(ze(u[0]),"Q").concat(ze(u[1])).concat($e(u[1],u[2])).concat(u.length>3?"T":"").concat(i,"L").concat(ze(u[t-1]));}var Pe=/*#__PURE__*/function(){function Pe(e){_classCallCheck(this,Pe);at(this,"maxImageWidth",Se.pencilEraser.maxImageWidth);at(this,"maxImageHeight",Se.pencilEraser.maxImageHeight);at(this,"syncUnitTime",Se.syncOpt.interval);at(this,"vNodes");at(this,"drawLayer");at(this,"fullLayer");at(this,"workId");at(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,i=e.workId,l=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=i,this.syncUnitTime=l.syncUnitTime||this.syncUnitTime;}return _createClass(Pe,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var i=r[r.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,i,l;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&r&&(r.opt=e,(l=this.vNodes)==null||l.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,i;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var l=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(l.length!==1)return;var o=l[0],a=e.pos,f=e.zIndex,g=e.scale,c=e.angle,m=e.translate,x={};he(f)&&(x.zIndex=f),a&&(x.pos=[a[0],a[1]]),g&&(x.scale=g),c&&(x.rotate=c),m&&(x.translate=m),o.attr(x);var M=o==null?void 0:o.getBoundingClientRect();return M&&(t=Wt(t,{x:Math.floor(M.x-Pe.SafeBorderPadding),y:Math.floor(M.y-Pe.SafeBorderPadding),w:Math.floor(M.width+Pe.SafeBorderPadding*2),h:Math.floor(M.height+Pe.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(r,{rect:t,centerPos:a}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,i=e.pos,l=e.layer,o=l.parent;if(t)try{var f=(l.renderer.glRenderer||l.renderer.canvasRenderer).options.displayRatio,g=r.getBoundingClientRect(),c=g.width*f*l.worldScaling[0],m=g.height*f*l.worldScaling[1];var x=1;(c>this.maxImageWidth||m>this.maxImageHeight)&&(x=Math.min(this.maxImageWidth/c,this.maxImageHeight/m));var M=l.getAttribute("scale");M=[M[0]*x,M[1]*x];var S=l.parent.parent,P=l.getAttribute("translate"),_T28=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),S,{offscreen:o.offscreen,width:o.width,height:o.height,contextType:"2d",autoRender:!1,bufferSize:500},M,P),_h26=r.cloneNode(!0);this.addEraserlines(_h26,n,i,!1),_T28.appendChild(_h26);var p=_T28.parent;p.render();var d=_T28.renderer.canvasRenderer,y=d.context;if(!y)return;var O=d.options.displayRatio,E=_h26.getBoundingClientRect(),w={x:E.x,y:E.y,w:E.width,h:E.height},B={x:0,y:0,w:S.width,h:S.height};if(sr(w,B)===ye.outside){xe(_h26,p),S.removeChild(p),this.isDelete=!0;return;}var b=ue(w);b.x=Math.floor(Math.max(w.x,0)),b.y=Math.floor(Math.max(w.y,0)),b.w=Math.min(w.x+w.w,S.width)-b.x,b.h=Math.min(w.y+w.h,S.height)-b.y;var W=this.getGroupRect(b,O),D=W.x,R=W.y,j=W.w,k=W.h;var J=y.getImageData(D,R,j,k);if(this.isTransparentRectByCanvas(J)){xe(_h26,p),S.removeChild(p),this.isDelete=!0,J=null;return;}xe(r,o);var st=this.createSpriteNode({imageData:J,safariRect:b,originRect:w,worldScaling:_T28.worldScaling});st&&r.append(st),xe(_h26,p),S.removeChild(p),o.deleteTexture(J),J=null;}catch(a){console.error("[BaseShapeTool] drawEraserlines error:",a);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,i){var l=r.width,o=r.height,a="bitMap-".concat(e),f=t.layer(a,r),g=new de({anchor:[0.5,0.5],pos:[l*0.5,o*0.5],size:[l,o],name:"viewport",id:e});return g.setAttribute("scale",n),g.setAttribute("translate",i),f.append(g),g;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),i=Math.floor(e.w*t),l=Math.floor(e.h*t);return{x:r,y:n,w:i,h:l};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var i=_step13.value;var l=i.thickness,o=i.op;var _iterator14=_createForOfIteratorHelper(o),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var a=_step14.value;var f=a.map(function(M,S){return S%2?M-r[1]:M-r[0];}),g=this.computEraserPoints(f,l),c=Ee(g,!0),m={pos:[0,0],d:c,fillColor:"rgba(0,0,0,1)"},x=new Ae(m);x.addEventListener("beforerender",function(_ref164){var M=_ref164.detail;var S=M.context;n?S.blendFuncSeparate(S.ZERO,S.ZERO,S.ZERO,S.ZERO):S.globalCompositeOperation="destination-out";}),x.addEventListener("afterrender",function(_ref165){var M=_ref165.detail;var S=M.context;n?S.blendFuncSeparate(S.SRC_ALPHA,S.ONE_MINUS_SRC_ALPHA,S.ONE,S.ONE_MINUS_SRC_ALPHA):S.globalCompositeOperation="source-over";}),e.append(x);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,i=e.originRect;var l;if(typeof OffscreenCanvas=="function"){l=new OffscreenCanvas(t.width,t.height);var g=l.getContext("2d");g&&g.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){l=document.createElement("canvas"),l.width=t.width,l.height=t.height;var _g3=l.getContext("2d");_g3&&_g3.putImageData(t,0,0);}if(!l)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var o=[Math.floor(i.w/r[0]),Math.floor(i.h/r[1])],a=[Math.floor((n.x-i.x)/r[0]),Math.floor((n.y-i.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],f={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:o,texture:l,textureRect:a};return new hi(f);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Dt(e[0],e[1]);return Dt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var i,l;for(var o=0;o<e.length;o+=2){var a=new Dt(e[o],e[o+1]);var f=void 0;if(o==e.length-2){var g=new Dt(e[o-2],e[o-1]);f=ot.Sub(a,g).uni(),i=a;}else{o===0&&(l=a);var _g4=new Dt(e[o+2],e[o+3]);f=ot.Sub(_g4,a).uni();}if(f){var _g5=ot.Per(f).mul(t);r.push(Dt.Sub(a,_g5)),n.push(Dt.Add(a,_g5));}}if(i&&l){var _o3=Dt.GetSemicircleStroke(i,r[r.length-1],-1,8),_a4=Dt.GetSemicircleStroke(l,n[0],-1,8);return r.concat(_o3,n.reverse(),_a4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var i;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var l=_step15.value;r?gm(r,l,e):(l.remove(),_me(l,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(i=this.drawLayer)==null||i.getElementsByName(t).forEach(function(o){var a;o.remove(),_me(o,(a=_this61.drawLayer)==null?void 0:a.parent);}):this.fullLayer.getElementsByName(t).forEach(function(o){o.remove(),_me(o,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_me(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var h;var t=e.node,r=e.opt,n=e.vNodes,i=e.willSerializeData,l=e.targetNode,o=r.zIndex,a=r.translate,f=r.angle,g=r.originPoint,c=r.scenePoint,m=r.scale,x=r.pointMap,M=r.thickness;var S;var P=l&&ue(l)||n.get(t.name);if(!P)return;he(o)&&(t.setAttribute("zIndex",o),P.opt.zIndex=o);var T=t.parent;if(T){if(g&&m&&l){var p=[P.op[0],P.op[1]];mn(P.op,c,m,a);var d=[P.op[0],P.op[1]],y=[d[0]-p[0],d[1]-p[1]];if(P.centerPos=[P.centerPos[0]+y[0],P.centerPos[1]+y[1]],P.opt.translate=void 0,P.opt.scale=void 0,P.opt.eraserlines)for(var _i3=0,_Object$values=Object.values(P.opt.eraserlines);_i3<_Object$values.length;_i3++){var O=_Object$values[_i3];var E=O.op,w=O.thickness;O.thickness=w*Math.max(m[0],m[1]);for(var B=0;B<E.length;B++)vn(E[B],c,m,a);}}else if(a){if(t.setAttribute("translate",a),P.opt.translate=a,l){var _p6=[a[0]*T.worldScaling[0],a[1]*T.worldScaling[1]];S=cr(P.rect,_p6),P.rect=S;}else{var _p7=Pe.getRectFromLayer(T,t.name);P.rect=_p7||P.rect;}}else if(he(f))if(t.setAttribute("rotate",f),P.opt.rotate=f,l)S=ns(P.rect,f),P.rect=S;else{var _p8=Pe.getRectFromLayer(T,t.name);P.rect=_p8||P.rect;}if(x){var _p9=x.get(t.name);if(_p9)for(var _d11=0,_y9=0;_d11<P.op.length;_d11+=3,_y9++)P.op[_d11]=_p9[_y9][0],P.op[_d11+1]=_p9[_y9][1];}if(M&&(h=P==null?void 0:P.opt)!=null&&h.thickness&&(P.opt.thickness=M),i&&!(g&&m&&l)){if(a){var _p10=P.op.map(function(d,y){var O=y%3;return O===0?d+a[0]:O===1?d+a[1]:d;});if(P.op=_p10,P.centerPos=[P.centerPos[0]+a[0],P.centerPos[1]+a[1]],P!=null&&P.opt&&(P.opt.translate=void 0),P.opt.eraserlines)for(var _i4=0,_Object$values2=Object.values(P.opt.eraserlines);_i4<_Object$values2.length;_i4++){var _d12=_Object$values2[_i4];var _y10=_d12.op;for(var _O6=0;_O6<_y10.length;_O6++){var _E3=_y10[_O6].map(function(w,B){return B%2?w+a[1]:w+a[0];});_d12.op[_O6]=_E3;}}}else if(he(f)){var _p11=P.op;if(fm(_p11,P.centerPos,f),P.op=_p11,P!=null&&P.opt&&(P.opt.rotate=void 0),P.opt.eraserlines)for(var _i5=0,_Object$values3=Object.values(P.opt.eraserlines);_i5<_Object$values3.length;_i5++){var _d13=_Object$values3[_i5];var _y11=_d13.op;for(var _O7=0;_O7<_y11.length;_O7++)hm(_y11[_O7],P.centerPos,f);}}}P&&n.setInfo(t.name,P);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Pe.SafeBorderPadding),y:Math.floor(n.y-Pe.SafeBorderPadding),w:Math.floor(n.width+Pe.SafeBorderPadding*2),h:Math.floor(n.height+Pe.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,i=e.updateOpt,l=e.willSerializeData;return!!(l&&(i.angle||i.translate)||i.thickness&&r.thickness&&r.thickness!==i.thickness||i.strokeType&&r.strokeType&&r.strokeType!==i.strokeType||i.originPoint&&i.scenePoint&&i.scale||i.pointMap&&i.pointMap.has(n.name)||t===St.Text&&(i.fontSize||i.translate||i.textInfos&&i.textInfos.get(n.name))||t===St.Image&&(i.angle||i.translate||i.scale||i.strokeColor&&i.type===Zr.Iconify)||t===i.toolsType&&i.willRefresh||r.eraserlines&&r.eraserlines.length&&(i.strokeColor||i.fillColor));}}]);}();at(Pe,"SafeBorderPadding",10);var Mt=Pe;var ln=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var cn={exports:{}};cn.exports;(function(u){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function l(a,f){if(!i[a]){i[a]={};for(var g=0;g<a.length;g++)i[a][a.charAt(g)]=g;}return i[a][f];}var o={compressToBase64:function compressToBase64(a){if(a==null)return"";var f=o._compress(a,6,function(g){return r.charAt(g);});switch(f.length%4){default:case 0:return f;case 1:return f+"===";case 2:return f+"==";case 3:return f+"=";}},decompressFromBase64:function decompressFromBase64(a){return a==null?"":a==""?null:o._decompress(a.length,32,function(f){return l(r,a.charAt(f));});},compressToUTF16:function compressToUTF16(a){return a==null?"":o._compress(a,15,function(f){return t(f+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(a){return a==null?"":a==""?null:o._decompress(a.length,16384,function(f){return a.charCodeAt(f)-32;});},//compress into uint8array (UCS-2 big endian format)
400
400
  compressToUint8Array:function compressToUint8Array(a){for(var f=o.compress(a),g=new Uint8Array(f.length*2),c=0,m=f.length;c<m;c++){var x=f.charCodeAt(c);g[c*2]=x>>>8,g[c*2+1]=x%256;}return g;},//decompress from uint8array (UCS-2 big endian format)
401
401
  decompressFromUint8Array:function decompressFromUint8Array(a){if(a==null)return o.decompress(a);for(var f=new Array(a.length/2),g=0,c=f.length;g<c;g++)f[g]=a[g*2]*256+a[g*2+1];var m=[];return f.forEach(function(x){m.push(t(x));}),o.decompress(m.join(""));},//compress into a string that is already URI encoded
402
402
  compressToEncodedURIComponent:function compressToEncodedURIComponent(a){return a==null?"":o._compress(a,6,function(f){return n.charAt(f);});},//decompress from an output of compressToEncodedURIComponent
@@ -1135,14 +1135,14 @@ function xg(r) {
1135
1135
  return Sg(r, Cg | kg);
1136
1136
  }
1137
1137
  var Dg = xg;
1138
- const Yt = /* @__PURE__ */ Je(Dg), Mn = "1.1.18-beta.0", Lg = "@netless/appliance-plugin", ho = typeof OffscreenCanvas == "function" ? "worker" : "mainThread";
1138
+ const Yt = /* @__PURE__ */ Je(Dg), Mn = "1.1.18-beta.1", Lg = "@netless/appliance-plugin", ho = typeof OffscreenCanvas == "function" ? "worker" : "mainThread";
1139
1139
  if (typeof window < "u") {
1140
1140
  let r = window.__netlessUA || "";
1141
1141
  r += ` ${Lg}@${Mn}`, window.__netlessUA = r;
1142
1142
  }
1143
1143
  const Ct = {
1144
1144
  syncOpt: {
1145
- interval: 500
1145
+ interval: 300
1146
1146
  },
1147
1147
  cdn: {
1148
1148
  subWorkerUrl: "https://cdn.jsdelivr.net/npm/@netless/appliance-plugin@latest/dist/subWorker.js",
@@ -1157,7 +1157,7 @@ const Ct = {
1157
1157
  },
1158
1158
  bezier: {
1159
1159
  maxDrawCount: 1 / 0,
1160
- combineUnitTime: 500
1160
+ combineUnitTime: 300
1161
1161
  },
1162
1162
  pencilEraser: {
1163
1163
  useBitMap: !0,
@@ -1314,7 +1314,7 @@ const te = class te {
1314
1314
  });
1315
1315
  et && e.append(et), _t(w, v), f.removeChild(v), a.deleteTexture(U), U = null;
1316
1316
  } catch (c) {
1317
- console.error(c);
1317
+ console.error("[BaseShapeTool] drawEraserlines error:", c);
1318
1318
  return;
1319
1319
  }
1320
1320
  }
@@ -8015,7 +8015,7 @@ class Vy {
8015
8015
  if (!n && !o)
8016
8016
  return !0;
8017
8017
  const h = ((g = this.collector) == null ? void 0 : g.isLocalId(i)) ? (p = this.collector) == null ? void 0 : p.transformKey(i) : i, d = ((f = this.collector) == null ? void 0 : f.storage[e]) && this.collector.storage[e][s] && this.collector.storage[e][s][h] || void 0;
8018
- console.log("curStore===>", d, o, n), d ? d.toolsType === I.Text && (n && (this.control.worker.queryTaskBatchData({
8018
+ d ? d.toolsType === I.Text && (n && (this.control.worker.queryTaskBatchData({
8019
8019
  workId: i,
8020
8020
  msgType: D.UpdateNode
8021
8021
  }).forEach((N) => {
@@ -9916,7 +9916,7 @@ class cm extends am {
9916
9916
  }
9917
9917
  async useMainThread() {
9918
9918
  console.info("no OffscreenCanvas");
9919
- const { MainThreadManagerImpl: t } = await import("./index-C5FDT_Kb.mjs");
9919
+ const { MainThreadManagerImpl: t } = await import("./index-u69ppBP2.mjs");
9920
9920
  this.mainThread = new t(this);
9921
9921
  }
9922
9922
  async on() {
@@ -10151,7 +10151,7 @@ class cm extends am {
10151
10151
  for (const a of t) {
10152
10152
  const { type: c, op: l, workId: u, index: h, removeIds: d, ops: g, opt: p, updateNodeOpt: f, toolsType: y, isSync: m, viewId: w, isLockSentEventCursor: v, nextTasks: S } = a;
10153
10153
  if (!w) {
10154
- console.error("collectorAsyncData", a);
10154
+ console.error("[MasterControlForWorker] collectorAsyncData on viewId in", a);
10155
10155
  return;
10156
10156
  }
10157
10157
  const N = a.scenePath || this.viewContainerManager.getCurScenePath(w);
@@ -10247,7 +10247,7 @@ class cm extends am {
10247
10247
  }), this.willSelectorWorkId = h.toString();
10248
10248
  }
10249
10249
  } catch (u) {
10250
- console.log("error", u);
10250
+ console.error("[MasterControlForWorker] onLocalEventEnd error:", u);
10251
10251
  }
10252
10252
  this.delayWorkStateToDoneResolve = void 0, c.length = 0;
10253
10253
  }
@@ -10578,14 +10578,13 @@ class cm extends am {
10578
10578
  return this.currentLocalWorkData.workState !== j.Unwritable;
10579
10579
  }
10580
10580
  post(t) {
10581
- var o;
10582
- const e = [...t].filter((n) => n.msgType !== D.CursorHover);
10583
- if (e.length && console.log("post", e.map((n) => n.msgType), e), !this.control.hasOffscreenCanvas()) {
10581
+ var s;
10582
+ if (!this.control.hasOffscreenCanvas()) {
10584
10583
  if (!this.mainThread) {
10585
- let n = [];
10586
- n = pt([...t]), setTimeout(() => {
10587
- for (const a of n)
10588
- this.taskBatchData.add(a);
10584
+ let o = [];
10585
+ o = pt([...t]), setTimeout(() => {
10586
+ for (const n of o)
10587
+ this.taskBatchData.add(n);
10589
10588
  }, 0);
10590
10589
  return;
10591
10590
  }
@@ -10593,12 +10592,12 @@ class cm extends am {
10593
10592
  return;
10594
10593
  }
10595
10594
  this.fullWorker.postMessage(t);
10596
- const s = /* @__PURE__ */ new Set();
10597
- for (const n of t.values()) {
10598
- const a = n.msgType;
10599
- (a === D.Init || a === D.Clear || a === D.Destroy || a === D.UpdateCamera || n.isRunSubWork) && s.add(n);
10595
+ const e = /* @__PURE__ */ new Set();
10596
+ for (const o of t.values()) {
10597
+ const n = o.msgType;
10598
+ (n === D.Init || n === D.Clear || n === D.Destroy || n === D.UpdateCamera || o.isRunSubWork) && e.add(o);
10600
10599
  }
10601
- s.size && (this.subWorker.postMessage(s), this.control.priority === "ui" && ((o = this.subMainThreadWorker) == null || o.consume(s)));
10600
+ e.size && (this.subWorker.postMessage(e), this.control.priority === "ui" && ((s = this.subMainThreadWorker) == null || s.consume(e)));
10602
10601
  }
10603
10602
  updateNode(t, e, s, o) {
10604
10603
  this.taskBatchData.add({
@@ -15029,7 +15028,6 @@ const hw = (r) => {
15029
15028
  }, c = (d) => {
15030
15029
  var v, S;
15031
15030
  if (!t) return;
15032
- console.log("handleKeyUp===>", d);
15033
15031
  const g = n(d), p = d.id, f = t.control.textEditorManager.get(p), y = Xt(g), m = j.Doing, w = [d.offsetWidth, d.offsetHeight];
15034
15032
  if (!f || f && (f.opt.text !== y || !Mt(f.opt.boxSize, w) || !Mt(f.opt.workState, m))) {
15035
15033
  const N = p && pt(((v = t.control.textEditorManager) == null ? void 0 : v.get(p)) || ((S = r.editors) == null ? void 0 : S.get(p)));