@netless/appliance-plugin 1.1.5-beta.0 → 1.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # appliance-plugin
2
2
 
3
- [中文文档](https://github.com/duty-os/appliance-plugin/blob/master/READMA.zh-CN.md)
3
+ [中文文档](https://github.com/netless-io/fastboard/blob/main/docs/zh/appliance-plugin.md)
4
4
 
5
5
  The plug-in is attached to the plug-in mechanism of white-web-sdk to achieve a set of whiteboard teaching AIDS, state synchronization, playback, scene switching and other functions still rely on white-web-sdk or window-manager.
6
6
 
@@ -135,7 +135,11 @@ module: {
135
135
  ```
136
136
 
137
137
  ## Call introduction
138
+
138
139
  ### api introduction
140
+
141
+ #### Optimize legacy interface
142
+
139
143
  The plugin re-implements some of the interfaces of the same name on room or Windows Manager, but internally we have re-injected them back into the original object via injectMethodToObject. No changes are required for external users. As follows:
140
144
  ```js
141
145
  // Internal hack
@@ -183,10 +187,50 @@ The following interfaces are involved:
183
187
  - `cleanCurrentScene`
184
188
 
185
189
  4. Customize
186
- - `getBoundingRectAsync`
187
- - `screenshotToCanvasAsync`
188
- - `scenePreviewAsync`
189
- - `destroy`
190
+ - `getBoundingRectAsync` Replace the api room.getBoundingRect
191
+ - `screenshotToCanvasAsync` Replace the api room.screenshotToCanvas
192
+ - `scenePreviewAsync` Replace the api room.scenePreview
193
+ - `destroy` Destroy the instance of appliance-plugin
194
+
195
+ 5.Incompatible
196
+ - `exportScene` When the appliance-plugin is enabled, notes cannot be exported in room mode
197
+ - Server-side screenshot, after the appliance-plugin is turned on, notes cannot be obtained by calling server-side screenshot, but need to use `screenshotToCanvasAsync` to obtain the screenshot
198
+
199
+ #### New features
200
+ 1. Minimap function
201
+ ```js
202
+ /** Create a minimap
203
+ * @param viewId ID of the whiteboard under windowManager. The ID of the main whiteboard is mainView, and the ID of other whiteboards is the appID of addApp() return
204
+ * @param div Small map DOM container
205
+ */
206
+ createMiniMap(viewId: string, div: HTMLElement): Promise<void>;
207
+ /** Destroy minimap */
208
+ destroyMiniMap(viewId: string): Promise<void>;
209
+ ```
210
+ 2. Filter Elements
211
+ ```js
212
+ /** Filter Elements
213
+ * @param viewId ID of the whiteboard under windowManager. The ID of the main whiteboard is mainView, and the ID of other whiteboards is the appID of addApp() return
214
+ * @param filter filter condition
215
+ * render: Whether notes can be rendered, [uid1, uid2,...] Or true. true, that is, both render, [uid1, uid2,...] The collection of user Uids rendered for the specified
216
+ * hide: Note is hidden, [uid1, uid2,...] Or true. true, that is to hide, [uid1, uid2,...] To specify a hidden user uid collection
217
+ * clear: Whether notes can be cleared, [uid1, uid2,...] Or true. true, that is, can be cleared, [uid1, uid2,...] Specifies a collection of user Uids that can be cleared
218
+ * @param isSync Whether to synchronize data to other users. The default value is true, that is, the data will be synchronized to other users
219
+ */
220
+ filterRenderByUid(viewId: string, filter: { render?: _ArrayTrue, hide?: _ArrayTrue, clear?: _ArrayTrue}, isSync?:boolean): void;
221
+ /** Filter Elements
222
+ * @param viewId ID of the whiteboard under windowManager. The ID of the main whiteboard is mainView, and the ID of other whiteboards is the appID of addApp() return
223
+ * @param isSync Whether to synchronize data to other users. The default value is true, that is, the data will be synchronized to other users. Keep it the same as the filterRenderByUid setting
224
+ */
225
+ cancelFilterRender(viewId: string, isSync?:boolean): void;
226
+ ```
227
+ 3. Split screen display Elements (little whiteboard featrue), need to combine '@netless/app-little-white-board'
228
+
229
+ 4. laserPen teaching aids
230
+ ```js
231
+ import { EStrokeType, ApplianceNames } from '@netless/appliance-plugin';
232
+ room.setMemberState({currentApplianceName: ApplianceNames.laserPen, strokeType: EStrokeType.Normal});
233
+ ```
190
234
 
191
235
  ### Configure parameters
192
236
  ``getInstance(wm: WindowManager, adaptor: ApplianceAdaptor)``
package/cdn/cdn.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r="/fullWorker-Ci_RYp.js",e="/subWorker-B_Pv2q.js";exports.fullWorkerUrl=r;exports.subWorkerUrl=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r="/fullWorker-XdMBFp.js",e="/subWorker-ChVI4C.js";exports.fullWorkerUrl=r;exports.subWorkerUrl=e;
@@ -396,7 +396,7 @@ _inherits(o,_e$default22);return _createClass(o,[{key:"texture",get:function get
396
396
  l=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
397
397
  n&&(l=="offset"||l=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
398
398
  i&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||// Skip index properties.
399
- gc(l,s)))&&o.push(l);return o;}var kn=yc,Sc=Object.prototype;function xc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||Sc;return h===t;}var Or=xc;function Tc(h,r){return function(t){return h(r(t));};}var Jn=Tc,Mc=Jn,Pc=Mc(Object.keys,Object),Oc=Pc,Ec=Or,Cc=Oc,Ac=Object.prototype,Rc=Ac.hasOwnProperty;function Ic(h){if(!Ec(h))return Cc(h);var r=[];for(var t in Object(h))Rc.call(h,t)&&t!="constructor"&&r.push(t);return r;}var Lc=Ic,bc=Fn,wc=Vn;function Dc(h){return h!=null&&wc(h.length)&&!bc(h);}var Er=Dc,Nc=kn,Wc=Lc,Bc=Er;function Fc(h){return Bc(h)?Nc(h):Wc(h);}var Cr=Fc,Uc=ir,jc=Cr;function $c(h,r){return h&&Uc(r,jc(r),h);}var zc=$c;function Gc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Hc=Gc,Kc=he,Yc=Or,Vc=Hc,Xc=Object.prototype,kc=Xc.hasOwnProperty;function Jc(h){if(!Kc(h))return Vc(h);var r=Yc(h),t=[];for(var e in h)e=="constructor"&&(r||!kc.call(h,e))||t.push(e);return t;}var Zc=Jc,Qc=kn,qc=Zc,_c=Er;function tf(h){return _c(h)?Qc(h,!0):qc(h);}var Ar=tf,ef=ir,rf=Ar;function nf(h,r){return h&&ef(r,rf(r),h);}var sf=nf,Ke={exports:{}};Ke.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ke,Ke.exports);var of=Ke.exports;function af(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var lf=af;function cf(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Zn=cf;function ff(){return[];}var Qn=ff,hf=Zn,uf=Qn,df=Object.prototype,gf=df.propertyIsEnumerable,qr=Object.getOwnPropertySymbols,pf=qr?function(h){return h==null?[]:(h=Object(h),hf(qr(h),function(r){return gf.call(h,r);}));}:uf,Rr=pf,mf=ir,vf=Rr;function yf(h,r){return mf(h,vf(h),r);}var Sf=yf;function xf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Ir=xf,Tf=Jn,Mf=Tf(Object.getPrototypeOf,Object),qn=Mf,Pf=Ir,Of=qn,Ef=Rr,Cf=Qn,Af=Object.getOwnPropertySymbols,Rf=Af?function(h){for(var r=[];h;)Pf(r,Ef(h)),h=Of(h);return r;}:Cf,_n=Rf,If=ir,Lf=_n;function bf(h,r){return If(h,Lf(h),r);}var wf=bf,Df=Ir,Nf=Ue;function Wf(h,r,t){var e=r(h);return Nf(h)?e:Df(e,t(h));}var ti=Wf,Bf=ti,Ff=Rr,Uf=Cr;function jf(h){return Bf(h,Uf,Ff);}var ei=jf,$f=ti,zf=_n,Gf=Ar;function Hf(h){return $f(h,Gf,zf);}var Kf=Hf,Yf=ge,Vf=ee,Xf=Yf(Vf,"DataView"),kf=Xf,Jf=ge,Zf=ee,Qf=Jf(Zf,"Promise"),qf=Qf,_f=ge,th=ee,eh=_f(th,"Set"),ri=eh,rh=ge,nh=ee,ih=rh(nh,"WeakMap"),sh=ih,dr=kf,gr=Tr,pr=qf,mr=ri,vr=sh,ni=de,Ae=Un,_r="[object Map]",oh="[object Object]",tn="[object Promise]",en="[object Set]",rn="[object WeakMap]",nn="[object DataView]",ah=Ae(dr),lh=Ae(gr),ch=Ae(pr),fh=Ae(mr),hh=Ae(vr),ue=ni;(dr&&ue(new dr(new ArrayBuffer(1)))!=nn||gr&&ue(new gr())!=_r||pr&&ue(pr.resolve())!=tn||mr&&ue(new mr())!=en||vr&&ue(new vr())!=rn)&&(ue=function ue(h){var r=ni(h),t=r==oh?h.constructor:void 0,e=t?Ae(t):"";if(e)switch(e){case ah:return nn;case lh:return _r;case ch:return tn;case fh:return en;case hh:return rn;}return r;});var or=ue,uh=Object.prototype,dh=uh.hasOwnProperty;function gh(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&dh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var ph=gh,mh=ee,vh=mh.Uint8Array,ii=vh,sn=ii;function yh(h){var r=new h.constructor(h.byteLength);return new sn(r).set(new sn(h)),r;}var Lr=yh,Sh=Lr;function xh(h,r){var t=r?Sh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Th=xh,Mh=/\w*$/;function Ph(h){var r=new h.constructor(h.source,Mh.exec(h));return r.lastIndex=h.lastIndex,r;}var Oh=Ph,on=Fe,an=on?on.prototype:void 0,ln=an?an.valueOf:void 0;function Eh(h){return ln?Object(ln.call(h)):{};}var Ch=Eh,Ah=Lr;function Rh(h,r){var t=r?Ah(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Ih=Rh,Lh=Lr,bh=Th,wh=Oh,Dh=Ch,Nh=Ih,Wh="[object Boolean]",Bh="[object Date]",Fh="[object Map]",Uh="[object Number]",jh="[object RegExp]",$h="[object Set]",zh="[object String]",Gh="[object Symbol]",Hh="[object ArrayBuffer]",Kh="[object DataView]",Yh="[object Float32Array]",Vh="[object Float64Array]",Xh="[object Int8Array]",kh="[object Int16Array]",Jh="[object Int32Array]",Zh="[object Uint8Array]",Qh="[object Uint8ClampedArray]",qh="[object Uint16Array]",_h="[object Uint32Array]";function tu(h,r,t){var e=h.constructor;switch(r){case Hh:return Lh(h);case Wh:case Bh:return new e(+h);case Kh:return bh(h,t);case Yh:case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:return Nh(h,t);case Fh:return new e();case Uh:case zh:return new e(h);case jh:return wh(h);case $h:return new e();case Gh:return Dh(h);}}var eu=tu,ru=he,cn=Object.create,nu=/* @__PURE__ */function(){function h(){}return function(r){if(!ru(r))return{};if(cn)return cn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),iu=nu,su=iu,ou=qn,au=Or;function lu(h){return typeof h.constructor=="function"&&!au(h)?su(ou(h)):{};}var cu=lu,fu=or,hu=ne,uu="[object Map]";function du(h){return hu(h)&&fu(h)==uu;}var gu=du,pu=gu,mu=sr,fn=Pr,hn=fn&&fn.isMap,vu=hn?mu(hn):pu,yu=vu,Su=or,xu=ne,Tu="[object Set]";function Mu(h){return xu(h)&&Su(h)==Tu;}var Pu=Mu,Ou=Pu,Eu=sr,un=Pr,dn=un&&un.isSet,Cu=dn?Eu(dn):Ou,si=Cu,Au=/* @__PURE__ */fe(si),Ru=$n,Iu=_a,Lu=Hn,bu=zc,wu=sf,Du=of,Nu=lf,Wu=Sf,Bu=wf,Fu=ei,Uu=Kf,ju=or,$u=ph,zu=eu,Gu=cu,Hu=Ue,Ku=Mr,Yu=yu,Vu=he,Xu=si,ku=Cr,Ju=Ar,Zu=1,Qu=2,qu=4,oi="[object Arguments]",_u="[object Array]",td="[object Boolean]",ed="[object Date]",rd="[object Error]",ai="[object Function]",nd="[object GeneratorFunction]",id="[object Map]",sd="[object Number]",li="[object Object]",od="[object RegExp]",ad="[object Set]",ld="[object String]",cd="[object Symbol]",fd="[object WeakMap]",hd="[object ArrayBuffer]",ud="[object DataView]",dd="[object Float32Array]",gd="[object Float64Array]",pd="[object Int8Array]",md="[object Int16Array]",vd="[object Int32Array]",yd="[object Uint8Array]",Sd="[object Uint8ClampedArray]",xd="[object Uint16Array]",Td="[object Uint32Array]",Ft={};Ft[oi]=Ft[_u]=Ft[hd]=Ft[ud]=Ft[td]=Ft[ed]=Ft[dd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[id]=Ft[sd]=Ft[li]=Ft[od]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[yd]=Ft[Sd]=Ft[xd]=Ft[Td]=!0;Ft[rd]=Ft[ai]=Ft[fd]=!1;function ze(h,r,t,e,n,i){var a,o=r&Zu,s=r&Qu,l=r&qu;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Vu(h))return h;var d=Hu(h);if(d){if(a=$u(h),!o)return Nu(h,a);}else{var c=ju(h),p=c==ai||c==nd;if(Ku(h))return Du(h,o);if(c==li||c==oi||p&&!n){if(a=s||p?{}:Gu(h),!o)return s?Bu(h,wu(a,h)):Wu(h,bu(a,h));}else{if(!Ft[c])return n?h:{};a=zu(h,c,o);}}i||(i=new Ru());var y=i.get(h);if(y)return y;i.set(h,a),Xu(h)?h.forEach(function(v){a.add(ze(v,r,t,v,h,i));}):Yu(h)&&h.forEach(function(v,x){a.set(x,ze(v,r,t,x,h,i));});var P=l?s?Uu:Fu:s?Ju:ku,T=d?void 0:P(h);return Iu(T||h,function(v,x){T&&(x=v,v=h[x]),Lu(a,x,ze(v,r,t,x,h,i));}),a;}var Md=ze,Pd=Md,Od=1,Ed=4;function Cd(h){return Pd(h,Od|Ed);}var Ad=Cd,Xt=/* @__PURE__ */fe(Ad);var ci="1.1.5-beta.0",Rd="@netless/appliance-plugin",Id=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Rd,"@").concat(ci,"_").concat(Id),window.__netlessUA=h;}var re={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:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Fr(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)Ur(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=Sr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Oi(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Gg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Hg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var br={exports:{}};br.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
399
+ gc(l,s)))&&o.push(l);return o;}var kn=yc,Sc=Object.prototype;function xc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||Sc;return h===t;}var Or=xc;function Tc(h,r){return function(t){return h(r(t));};}var Jn=Tc,Mc=Jn,Pc=Mc(Object.keys,Object),Oc=Pc,Ec=Or,Cc=Oc,Ac=Object.prototype,Rc=Ac.hasOwnProperty;function Ic(h){if(!Ec(h))return Cc(h);var r=[];for(var t in Object(h))Rc.call(h,t)&&t!="constructor"&&r.push(t);return r;}var Lc=Ic,bc=Fn,wc=Vn;function Dc(h){return h!=null&&wc(h.length)&&!bc(h);}var Er=Dc,Nc=kn,Wc=Lc,Bc=Er;function Fc(h){return Bc(h)?Nc(h):Wc(h);}var Cr=Fc,Uc=ir,jc=Cr;function $c(h,r){return h&&Uc(r,jc(r),h);}var zc=$c;function Gc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Hc=Gc,Kc=he,Yc=Or,Vc=Hc,Xc=Object.prototype,kc=Xc.hasOwnProperty;function Jc(h){if(!Kc(h))return Vc(h);var r=Yc(h),t=[];for(var e in h)e=="constructor"&&(r||!kc.call(h,e))||t.push(e);return t;}var Zc=Jc,Qc=kn,qc=Zc,_c=Er;function tf(h){return _c(h)?Qc(h,!0):qc(h);}var Ar=tf,ef=ir,rf=Ar;function nf(h,r){return h&&ef(r,rf(r),h);}var sf=nf,Ke={exports:{}};Ke.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ke,Ke.exports);var of=Ke.exports;function af(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var lf=af;function cf(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Zn=cf;function ff(){return[];}var Qn=ff,hf=Zn,uf=Qn,df=Object.prototype,gf=df.propertyIsEnumerable,qr=Object.getOwnPropertySymbols,pf=qr?function(h){return h==null?[]:(h=Object(h),hf(qr(h),function(r){return gf.call(h,r);}));}:uf,Rr=pf,mf=ir,vf=Rr;function yf(h,r){return mf(h,vf(h),r);}var Sf=yf;function xf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Ir=xf,Tf=Jn,Mf=Tf(Object.getPrototypeOf,Object),qn=Mf,Pf=Ir,Of=qn,Ef=Rr,Cf=Qn,Af=Object.getOwnPropertySymbols,Rf=Af?function(h){for(var r=[];h;)Pf(r,Ef(h)),h=Of(h);return r;}:Cf,_n=Rf,If=ir,Lf=_n;function bf(h,r){return If(h,Lf(h),r);}var wf=bf,Df=Ir,Nf=Ue;function Wf(h,r,t){var e=r(h);return Nf(h)?e:Df(e,t(h));}var ti=Wf,Bf=ti,Ff=Rr,Uf=Cr;function jf(h){return Bf(h,Uf,Ff);}var ei=jf,$f=ti,zf=_n,Gf=Ar;function Hf(h){return $f(h,Gf,zf);}var Kf=Hf,Yf=ge,Vf=ee,Xf=Yf(Vf,"DataView"),kf=Xf,Jf=ge,Zf=ee,Qf=Jf(Zf,"Promise"),qf=Qf,_f=ge,th=ee,eh=_f(th,"Set"),ri=eh,rh=ge,nh=ee,ih=rh(nh,"WeakMap"),sh=ih,dr=kf,gr=Tr,pr=qf,mr=ri,vr=sh,ni=de,Ae=Un,_r="[object Map]",oh="[object Object]",tn="[object Promise]",en="[object Set]",rn="[object WeakMap]",nn="[object DataView]",ah=Ae(dr),lh=Ae(gr),ch=Ae(pr),fh=Ae(mr),hh=Ae(vr),ue=ni;(dr&&ue(new dr(new ArrayBuffer(1)))!=nn||gr&&ue(new gr())!=_r||pr&&ue(pr.resolve())!=tn||mr&&ue(new mr())!=en||vr&&ue(new vr())!=rn)&&(ue=function ue(h){var r=ni(h),t=r==oh?h.constructor:void 0,e=t?Ae(t):"";if(e)switch(e){case ah:return nn;case lh:return _r;case ch:return tn;case fh:return en;case hh:return rn;}return r;});var or=ue,uh=Object.prototype,dh=uh.hasOwnProperty;function gh(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&dh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var ph=gh,mh=ee,vh=mh.Uint8Array,ii=vh,sn=ii;function yh(h){var r=new h.constructor(h.byteLength);return new sn(r).set(new sn(h)),r;}var Lr=yh,Sh=Lr;function xh(h,r){var t=r?Sh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Th=xh,Mh=/\w*$/;function Ph(h){var r=new h.constructor(h.source,Mh.exec(h));return r.lastIndex=h.lastIndex,r;}var Oh=Ph,on=Fe,an=on?on.prototype:void 0,ln=an?an.valueOf:void 0;function Eh(h){return ln?Object(ln.call(h)):{};}var Ch=Eh,Ah=Lr;function Rh(h,r){var t=r?Ah(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Ih=Rh,Lh=Lr,bh=Th,wh=Oh,Dh=Ch,Nh=Ih,Wh="[object Boolean]",Bh="[object Date]",Fh="[object Map]",Uh="[object Number]",jh="[object RegExp]",$h="[object Set]",zh="[object String]",Gh="[object Symbol]",Hh="[object ArrayBuffer]",Kh="[object DataView]",Yh="[object Float32Array]",Vh="[object Float64Array]",Xh="[object Int8Array]",kh="[object Int16Array]",Jh="[object Int32Array]",Zh="[object Uint8Array]",Qh="[object Uint8ClampedArray]",qh="[object Uint16Array]",_h="[object Uint32Array]";function tu(h,r,t){var e=h.constructor;switch(r){case Hh:return Lh(h);case Wh:case Bh:return new e(+h);case Kh:return bh(h,t);case Yh:case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:return Nh(h,t);case Fh:return new e();case Uh:case zh:return new e(h);case jh:return wh(h);case $h:return new e();case Gh:return Dh(h);}}var eu=tu,ru=he,cn=Object.create,nu=/* @__PURE__ */function(){function h(){}return function(r){if(!ru(r))return{};if(cn)return cn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),iu=nu,su=iu,ou=qn,au=Or;function lu(h){return typeof h.constructor=="function"&&!au(h)?su(ou(h)):{};}var cu=lu,fu=or,hu=ne,uu="[object Map]";function du(h){return hu(h)&&fu(h)==uu;}var gu=du,pu=gu,mu=sr,fn=Pr,hn=fn&&fn.isMap,vu=hn?mu(hn):pu,yu=vu,Su=or,xu=ne,Tu="[object Set]";function Mu(h){return xu(h)&&Su(h)==Tu;}var Pu=Mu,Ou=Pu,Eu=sr,un=Pr,dn=un&&un.isSet,Cu=dn?Eu(dn):Ou,si=Cu,Au=/* @__PURE__ */fe(si),Ru=$n,Iu=_a,Lu=Hn,bu=zc,wu=sf,Du=of,Nu=lf,Wu=Sf,Bu=wf,Fu=ei,Uu=Kf,ju=or,$u=ph,zu=eu,Gu=cu,Hu=Ue,Ku=Mr,Yu=yu,Vu=he,Xu=si,ku=Cr,Ju=Ar,Zu=1,Qu=2,qu=4,oi="[object Arguments]",_u="[object Array]",td="[object Boolean]",ed="[object Date]",rd="[object Error]",ai="[object Function]",nd="[object GeneratorFunction]",id="[object Map]",sd="[object Number]",li="[object Object]",od="[object RegExp]",ad="[object Set]",ld="[object String]",cd="[object Symbol]",fd="[object WeakMap]",hd="[object ArrayBuffer]",ud="[object DataView]",dd="[object Float32Array]",gd="[object Float64Array]",pd="[object Int8Array]",md="[object Int16Array]",vd="[object Int32Array]",yd="[object Uint8Array]",Sd="[object Uint8ClampedArray]",xd="[object Uint16Array]",Td="[object Uint32Array]",Ft={};Ft[oi]=Ft[_u]=Ft[hd]=Ft[ud]=Ft[td]=Ft[ed]=Ft[dd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[id]=Ft[sd]=Ft[li]=Ft[od]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[yd]=Ft[Sd]=Ft[xd]=Ft[Td]=!0;Ft[rd]=Ft[ai]=Ft[fd]=!1;function ze(h,r,t,e,n,i){var a,o=r&Zu,s=r&Qu,l=r&qu;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Vu(h))return h;var d=Hu(h);if(d){if(a=$u(h),!o)return Nu(h,a);}else{var c=ju(h),p=c==ai||c==nd;if(Ku(h))return Du(h,o);if(c==li||c==oi||p&&!n){if(a=s||p?{}:Gu(h),!o)return s?Bu(h,wu(a,h)):Wu(h,bu(a,h));}else{if(!Ft[c])return n?h:{};a=zu(h,c,o);}}i||(i=new Ru());var y=i.get(h);if(y)return y;i.set(h,a),Xu(h)?h.forEach(function(v){a.add(ze(v,r,t,v,h,i));}):Yu(h)&&h.forEach(function(v,x){a.set(x,ze(v,r,t,x,h,i));});var P=l?s?Uu:Fu:s?Ju:ku,T=d?void 0:P(h);return Iu(T||h,function(v,x){T&&(x=v,v=h[x]),Lu(a,x,ze(v,r,t,x,h,i));}),a;}var Md=ze,Pd=Md,Od=1,Ed=4;function Cd(h){return Pd(h,Od|Ed);}var Ad=Cd,Xt=/* @__PURE__ */fe(Ad);var ci="1.1.5",Rd="@netless/appliance-plugin",Id=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Rd,"@").concat(ci,"_").concat(Id),window.__netlessUA=h;}var re={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:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Fr(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)Ur(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=Sr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Oi(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Gg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Hg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var br={exports:{}};br.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
400
400
  compressToUint8Array:function compressToUint8Array(s){for(var l=o.compress(s),d=new Uint8Array(l.length*2),c=0,p=l.length;c<p;c++){var y=l.charCodeAt(c);d[c*2]=y>>>8,d[c*2+1]=y%256;}return d;},//decompress from uint8array (UCS-2 big endian format)
401
401
  decompressFromUint8Array:function decompressFromUint8Array(s){if(s==null)return o.decompress(s);for(var l=new Array(s.length/2),d=0,c=l.length;d<c;d++)l[d]=s[d*2]*256+s[d*2+1];var p=[];return l.forEach(function(y){p.push(t(y));}),o.decompress(p.join(""));},//compress into a string that is already URI encoded
402
402
  compressToEncodedURIComponent:function compressToEncodedURIComponent(s){return s==null?"":o._compress(s,6,function(l){return n.charAt(l);});},//decompress from an output of compressToEncodedURIComponent
@@ -396,7 +396,7 @@ _inherits(o,_e$default22);return _createClass(o,[{key:"texture",get:function get
396
396
  l=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
397
397
  n&&(l=="offset"||l=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
398
398
  i&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||// Skip index properties.
399
- gc(l,s)))&&o.push(l);return o;}var kn=yc,Sc=Object.prototype;function xc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||Sc;return h===t;}var Or=xc;function Tc(h,r){return function(t){return h(r(t));};}var Jn=Tc,Mc=Jn,Pc=Mc(Object.keys,Object),Oc=Pc,Ec=Or,Cc=Oc,Ac=Object.prototype,Rc=Ac.hasOwnProperty;function Ic(h){if(!Ec(h))return Cc(h);var r=[];for(var t in Object(h))Rc.call(h,t)&&t!="constructor"&&r.push(t);return r;}var Lc=Ic,bc=Fn,wc=Vn;function Dc(h){return h!=null&&wc(h.length)&&!bc(h);}var Er=Dc,Nc=kn,Wc=Lc,Bc=Er;function Fc(h){return Bc(h)?Nc(h):Wc(h);}var Cr=Fc,Uc=ir,jc=Cr;function $c(h,r){return h&&Uc(r,jc(r),h);}var zc=$c;function Gc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Hc=Gc,Kc=he,Yc=Or,Vc=Hc,Xc=Object.prototype,kc=Xc.hasOwnProperty;function Jc(h){if(!Kc(h))return Vc(h);var r=Yc(h),t=[];for(var e in h)e=="constructor"&&(r||!kc.call(h,e))||t.push(e);return t;}var Zc=Jc,Qc=kn,qc=Zc,_c=Er;function tf(h){return _c(h)?Qc(h,!0):qc(h);}var Ar=tf,ef=ir,rf=Ar;function nf(h,r){return h&&ef(r,rf(r),h);}var sf=nf,Ke={exports:{}};Ke.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ke,Ke.exports);var of=Ke.exports;function af(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var lf=af;function cf(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Zn=cf;function ff(){return[];}var Qn=ff,hf=Zn,uf=Qn,df=Object.prototype,gf=df.propertyIsEnumerable,qr=Object.getOwnPropertySymbols,pf=qr?function(h){return h==null?[]:(h=Object(h),hf(qr(h),function(r){return gf.call(h,r);}));}:uf,Rr=pf,mf=ir,vf=Rr;function yf(h,r){return mf(h,vf(h),r);}var Sf=yf;function xf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Ir=xf,Tf=Jn,Mf=Tf(Object.getPrototypeOf,Object),qn=Mf,Pf=Ir,Of=qn,Ef=Rr,Cf=Qn,Af=Object.getOwnPropertySymbols,Rf=Af?function(h){for(var r=[];h;)Pf(r,Ef(h)),h=Of(h);return r;}:Cf,_n=Rf,If=ir,Lf=_n;function bf(h,r){return If(h,Lf(h),r);}var wf=bf,Df=Ir,Nf=Ue;function Wf(h,r,t){var e=r(h);return Nf(h)?e:Df(e,t(h));}var ti=Wf,Bf=ti,Ff=Rr,Uf=Cr;function jf(h){return Bf(h,Uf,Ff);}var ei=jf,$f=ti,zf=_n,Gf=Ar;function Hf(h){return $f(h,Gf,zf);}var Kf=Hf,Yf=ge,Vf=ee,Xf=Yf(Vf,"DataView"),kf=Xf,Jf=ge,Zf=ee,Qf=Jf(Zf,"Promise"),qf=Qf,_f=ge,th=ee,eh=_f(th,"Set"),ri=eh,rh=ge,nh=ee,ih=rh(nh,"WeakMap"),sh=ih,dr=kf,gr=Tr,pr=qf,mr=ri,vr=sh,ni=de,Ae=Un,_r="[object Map]",oh="[object Object]",tn="[object Promise]",en="[object Set]",rn="[object WeakMap]",nn="[object DataView]",ah=Ae(dr),lh=Ae(gr),ch=Ae(pr),fh=Ae(mr),hh=Ae(vr),ue=ni;(dr&&ue(new dr(new ArrayBuffer(1)))!=nn||gr&&ue(new gr())!=_r||pr&&ue(pr.resolve())!=tn||mr&&ue(new mr())!=en||vr&&ue(new vr())!=rn)&&(ue=function ue(h){var r=ni(h),t=r==oh?h.constructor:void 0,e=t?Ae(t):"";if(e)switch(e){case ah:return nn;case lh:return _r;case ch:return tn;case fh:return en;case hh:return rn;}return r;});var or=ue,uh=Object.prototype,dh=uh.hasOwnProperty;function gh(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&dh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var ph=gh,mh=ee,vh=mh.Uint8Array,ii=vh,sn=ii;function yh(h){var r=new h.constructor(h.byteLength);return new sn(r).set(new sn(h)),r;}var Lr=yh,Sh=Lr;function xh(h,r){var t=r?Sh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Th=xh,Mh=/\w*$/;function Ph(h){var r=new h.constructor(h.source,Mh.exec(h));return r.lastIndex=h.lastIndex,r;}var Oh=Ph,on=Fe,an=on?on.prototype:void 0,ln=an?an.valueOf:void 0;function Eh(h){return ln?Object(ln.call(h)):{};}var Ch=Eh,Ah=Lr;function Rh(h,r){var t=r?Ah(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Ih=Rh,Lh=Lr,bh=Th,wh=Oh,Dh=Ch,Nh=Ih,Wh="[object Boolean]",Bh="[object Date]",Fh="[object Map]",Uh="[object Number]",jh="[object RegExp]",$h="[object Set]",zh="[object String]",Gh="[object Symbol]",Hh="[object ArrayBuffer]",Kh="[object DataView]",Yh="[object Float32Array]",Vh="[object Float64Array]",Xh="[object Int8Array]",kh="[object Int16Array]",Jh="[object Int32Array]",Zh="[object Uint8Array]",Qh="[object Uint8ClampedArray]",qh="[object Uint16Array]",_h="[object Uint32Array]";function tu(h,r,t){var e=h.constructor;switch(r){case Hh:return Lh(h);case Wh:case Bh:return new e(+h);case Kh:return bh(h,t);case Yh:case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:return Nh(h,t);case Fh:return new e();case Uh:case zh:return new e(h);case jh:return wh(h);case $h:return new e();case Gh:return Dh(h);}}var eu=tu,ru=he,cn=Object.create,nu=/* @__PURE__ */function(){function h(){}return function(r){if(!ru(r))return{};if(cn)return cn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),iu=nu,su=iu,ou=qn,au=Or;function lu(h){return typeof h.constructor=="function"&&!au(h)?su(ou(h)):{};}var cu=lu,fu=or,hu=ne,uu="[object Map]";function du(h){return hu(h)&&fu(h)==uu;}var gu=du,pu=gu,mu=sr,fn=Pr,hn=fn&&fn.isMap,vu=hn?mu(hn):pu,yu=vu,Su=or,xu=ne,Tu="[object Set]";function Mu(h){return xu(h)&&Su(h)==Tu;}var Pu=Mu,Ou=Pu,Eu=sr,un=Pr,dn=un&&un.isSet,Cu=dn?Eu(dn):Ou,si=Cu,Au=/* @__PURE__ */fe(si),Ru=$n,Iu=_a,Lu=Hn,bu=zc,wu=sf,Du=of,Nu=lf,Wu=Sf,Bu=wf,Fu=ei,Uu=Kf,ju=or,$u=ph,zu=eu,Gu=cu,Hu=Ue,Ku=Mr,Yu=yu,Vu=he,Xu=si,ku=Cr,Ju=Ar,Zu=1,Qu=2,qu=4,oi="[object Arguments]",_u="[object Array]",td="[object Boolean]",ed="[object Date]",rd="[object Error]",ai="[object Function]",nd="[object GeneratorFunction]",id="[object Map]",sd="[object Number]",li="[object Object]",od="[object RegExp]",ad="[object Set]",ld="[object String]",cd="[object Symbol]",fd="[object WeakMap]",hd="[object ArrayBuffer]",ud="[object DataView]",dd="[object Float32Array]",gd="[object Float64Array]",pd="[object Int8Array]",md="[object Int16Array]",vd="[object Int32Array]",yd="[object Uint8Array]",Sd="[object Uint8ClampedArray]",xd="[object Uint16Array]",Td="[object Uint32Array]",Ft={};Ft[oi]=Ft[_u]=Ft[hd]=Ft[ud]=Ft[td]=Ft[ed]=Ft[dd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[id]=Ft[sd]=Ft[li]=Ft[od]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[yd]=Ft[Sd]=Ft[xd]=Ft[Td]=!0;Ft[rd]=Ft[ai]=Ft[fd]=!1;function ze(h,r,t,e,n,i){var a,o=r&Zu,s=r&Qu,l=r&qu;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Vu(h))return h;var d=Hu(h);if(d){if(a=$u(h),!o)return Nu(h,a);}else{var c=ju(h),p=c==ai||c==nd;if(Ku(h))return Du(h,o);if(c==li||c==oi||p&&!n){if(a=s||p?{}:Gu(h),!o)return s?Bu(h,wu(a,h)):Wu(h,bu(a,h));}else{if(!Ft[c])return n?h:{};a=zu(h,c,o);}}i||(i=new Ru());var y=i.get(h);if(y)return y;i.set(h,a),Xu(h)?h.forEach(function(v){a.add(ze(v,r,t,v,h,i));}):Yu(h)&&h.forEach(function(v,x){a.set(x,ze(v,r,t,x,h,i));});var P=l?s?Uu:Fu:s?Ju:ku,T=d?void 0:P(h);return Iu(T||h,function(v,x){T&&(x=v,v=h[x]),Lu(a,x,ze(v,r,t,x,h,i));}),a;}var Md=ze,Pd=Md,Od=1,Ed=4;function Cd(h){return Pd(h,Od|Ed);}var Ad=Cd,Xt=/* @__PURE__ */fe(Ad);var ci="1.1.5-beta.0",Rd="@netless/appliance-plugin",Id=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Rd,"@").concat(ci,"_").concat(Id),window.__netlessUA=h;}var re={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:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Fr(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)Ur(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=Sr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Oi(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Gg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Hg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var br={exports:{}};br.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
399
+ gc(l,s)))&&o.push(l);return o;}var kn=yc,Sc=Object.prototype;function xc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||Sc;return h===t;}var Or=xc;function Tc(h,r){return function(t){return h(r(t));};}var Jn=Tc,Mc=Jn,Pc=Mc(Object.keys,Object),Oc=Pc,Ec=Or,Cc=Oc,Ac=Object.prototype,Rc=Ac.hasOwnProperty;function Ic(h){if(!Ec(h))return Cc(h);var r=[];for(var t in Object(h))Rc.call(h,t)&&t!="constructor"&&r.push(t);return r;}var Lc=Ic,bc=Fn,wc=Vn;function Dc(h){return h!=null&&wc(h.length)&&!bc(h);}var Er=Dc,Nc=kn,Wc=Lc,Bc=Er;function Fc(h){return Bc(h)?Nc(h):Wc(h);}var Cr=Fc,Uc=ir,jc=Cr;function $c(h,r){return h&&Uc(r,jc(r),h);}var zc=$c;function Gc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Hc=Gc,Kc=he,Yc=Or,Vc=Hc,Xc=Object.prototype,kc=Xc.hasOwnProperty;function Jc(h){if(!Kc(h))return Vc(h);var r=Yc(h),t=[];for(var e in h)e=="constructor"&&(r||!kc.call(h,e))||t.push(e);return t;}var Zc=Jc,Qc=kn,qc=Zc,_c=Er;function tf(h){return _c(h)?Qc(h,!0):qc(h);}var Ar=tf,ef=ir,rf=Ar;function nf(h,r){return h&&ef(r,rf(r),h);}var sf=nf,Ke={exports:{}};Ke.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ke,Ke.exports);var of=Ke.exports;function af(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var lf=af;function cf(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Zn=cf;function ff(){return[];}var Qn=ff,hf=Zn,uf=Qn,df=Object.prototype,gf=df.propertyIsEnumerable,qr=Object.getOwnPropertySymbols,pf=qr?function(h){return h==null?[]:(h=Object(h),hf(qr(h),function(r){return gf.call(h,r);}));}:uf,Rr=pf,mf=ir,vf=Rr;function yf(h,r){return mf(h,vf(h),r);}var Sf=yf;function xf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Ir=xf,Tf=Jn,Mf=Tf(Object.getPrototypeOf,Object),qn=Mf,Pf=Ir,Of=qn,Ef=Rr,Cf=Qn,Af=Object.getOwnPropertySymbols,Rf=Af?function(h){for(var r=[];h;)Pf(r,Ef(h)),h=Of(h);return r;}:Cf,_n=Rf,If=ir,Lf=_n;function bf(h,r){return If(h,Lf(h),r);}var wf=bf,Df=Ir,Nf=Ue;function Wf(h,r,t){var e=r(h);return Nf(h)?e:Df(e,t(h));}var ti=Wf,Bf=ti,Ff=Rr,Uf=Cr;function jf(h){return Bf(h,Uf,Ff);}var ei=jf,$f=ti,zf=_n,Gf=Ar;function Hf(h){return $f(h,Gf,zf);}var Kf=Hf,Yf=ge,Vf=ee,Xf=Yf(Vf,"DataView"),kf=Xf,Jf=ge,Zf=ee,Qf=Jf(Zf,"Promise"),qf=Qf,_f=ge,th=ee,eh=_f(th,"Set"),ri=eh,rh=ge,nh=ee,ih=rh(nh,"WeakMap"),sh=ih,dr=kf,gr=Tr,pr=qf,mr=ri,vr=sh,ni=de,Ae=Un,_r="[object Map]",oh="[object Object]",tn="[object Promise]",en="[object Set]",rn="[object WeakMap]",nn="[object DataView]",ah=Ae(dr),lh=Ae(gr),ch=Ae(pr),fh=Ae(mr),hh=Ae(vr),ue=ni;(dr&&ue(new dr(new ArrayBuffer(1)))!=nn||gr&&ue(new gr())!=_r||pr&&ue(pr.resolve())!=tn||mr&&ue(new mr())!=en||vr&&ue(new vr())!=rn)&&(ue=function ue(h){var r=ni(h),t=r==oh?h.constructor:void 0,e=t?Ae(t):"";if(e)switch(e){case ah:return nn;case lh:return _r;case ch:return tn;case fh:return en;case hh:return rn;}return r;});var or=ue,uh=Object.prototype,dh=uh.hasOwnProperty;function gh(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&dh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var ph=gh,mh=ee,vh=mh.Uint8Array,ii=vh,sn=ii;function yh(h){var r=new h.constructor(h.byteLength);return new sn(r).set(new sn(h)),r;}var Lr=yh,Sh=Lr;function xh(h,r){var t=r?Sh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Th=xh,Mh=/\w*$/;function Ph(h){var r=new h.constructor(h.source,Mh.exec(h));return r.lastIndex=h.lastIndex,r;}var Oh=Ph,on=Fe,an=on?on.prototype:void 0,ln=an?an.valueOf:void 0;function Eh(h){return ln?Object(ln.call(h)):{};}var Ch=Eh,Ah=Lr;function Rh(h,r){var t=r?Ah(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Ih=Rh,Lh=Lr,bh=Th,wh=Oh,Dh=Ch,Nh=Ih,Wh="[object Boolean]",Bh="[object Date]",Fh="[object Map]",Uh="[object Number]",jh="[object RegExp]",$h="[object Set]",zh="[object String]",Gh="[object Symbol]",Hh="[object ArrayBuffer]",Kh="[object DataView]",Yh="[object Float32Array]",Vh="[object Float64Array]",Xh="[object Int8Array]",kh="[object Int16Array]",Jh="[object Int32Array]",Zh="[object Uint8Array]",Qh="[object Uint8ClampedArray]",qh="[object Uint16Array]",_h="[object Uint32Array]";function tu(h,r,t){var e=h.constructor;switch(r){case Hh:return Lh(h);case Wh:case Bh:return new e(+h);case Kh:return bh(h,t);case Yh:case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:return Nh(h,t);case Fh:return new e();case Uh:case zh:return new e(h);case jh:return wh(h);case $h:return new e();case Gh:return Dh(h);}}var eu=tu,ru=he,cn=Object.create,nu=/* @__PURE__ */function(){function h(){}return function(r){if(!ru(r))return{};if(cn)return cn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),iu=nu,su=iu,ou=qn,au=Or;function lu(h){return typeof h.constructor=="function"&&!au(h)?su(ou(h)):{};}var cu=lu,fu=or,hu=ne,uu="[object Map]";function du(h){return hu(h)&&fu(h)==uu;}var gu=du,pu=gu,mu=sr,fn=Pr,hn=fn&&fn.isMap,vu=hn?mu(hn):pu,yu=vu,Su=or,xu=ne,Tu="[object Set]";function Mu(h){return xu(h)&&Su(h)==Tu;}var Pu=Mu,Ou=Pu,Eu=sr,un=Pr,dn=un&&un.isSet,Cu=dn?Eu(dn):Ou,si=Cu,Au=/* @__PURE__ */fe(si),Ru=$n,Iu=_a,Lu=Hn,bu=zc,wu=sf,Du=of,Nu=lf,Wu=Sf,Bu=wf,Fu=ei,Uu=Kf,ju=or,$u=ph,zu=eu,Gu=cu,Hu=Ue,Ku=Mr,Yu=yu,Vu=he,Xu=si,ku=Cr,Ju=Ar,Zu=1,Qu=2,qu=4,oi="[object Arguments]",_u="[object Array]",td="[object Boolean]",ed="[object Date]",rd="[object Error]",ai="[object Function]",nd="[object GeneratorFunction]",id="[object Map]",sd="[object Number]",li="[object Object]",od="[object RegExp]",ad="[object Set]",ld="[object String]",cd="[object Symbol]",fd="[object WeakMap]",hd="[object ArrayBuffer]",ud="[object DataView]",dd="[object Float32Array]",gd="[object Float64Array]",pd="[object Int8Array]",md="[object Int16Array]",vd="[object Int32Array]",yd="[object Uint8Array]",Sd="[object Uint8ClampedArray]",xd="[object Uint16Array]",Td="[object Uint32Array]",Ft={};Ft[oi]=Ft[_u]=Ft[hd]=Ft[ud]=Ft[td]=Ft[ed]=Ft[dd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[id]=Ft[sd]=Ft[li]=Ft[od]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[yd]=Ft[Sd]=Ft[xd]=Ft[Td]=!0;Ft[rd]=Ft[ai]=Ft[fd]=!1;function ze(h,r,t,e,n,i){var a,o=r&Zu,s=r&Qu,l=r&qu;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Vu(h))return h;var d=Hu(h);if(d){if(a=$u(h),!o)return Nu(h,a);}else{var c=ju(h),p=c==ai||c==nd;if(Ku(h))return Du(h,o);if(c==li||c==oi||p&&!n){if(a=s||p?{}:Gu(h),!o)return s?Bu(h,wu(a,h)):Wu(h,bu(a,h));}else{if(!Ft[c])return n?h:{};a=zu(h,c,o);}}i||(i=new Ru());var y=i.get(h);if(y)return y;i.set(h,a),Xu(h)?h.forEach(function(v){a.add(ze(v,r,t,v,h,i));}):Yu(h)&&h.forEach(function(v,x){a.set(x,ze(v,r,t,x,h,i));});var P=l?s?Uu:Fu:s?Ju:ku,T=d?void 0:P(h);return Iu(T||h,function(v,x){T&&(x=v,v=h[x]),Lu(a,x,ze(v,r,t,x,h,i));}),a;}var Md=ze,Pd=Md,Od=1,Ed=4;function Cd(h){return Pd(h,Od|Ed);}var Ad=Cd,Xt=/* @__PURE__ */fe(Ad);var ci="1.1.5",Rd="@netless/appliance-plugin",Id=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Rd,"@").concat(ci,"_").concat(Id),window.__netlessUA=h;}var re={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:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Fr(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)Ur(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=Sr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Oi(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Gg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Hg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var br={exports:{}};br.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
400
400
  compressToUint8Array:function compressToUint8Array(s){for(var l=o.compress(s),d=new Uint8Array(l.length*2),c=0,p=l.length;c<p;c++){var y=l.charCodeAt(c);d[c*2]=y>>>8,d[c*2+1]=y%256;}return d;},//decompress from uint8array (UCS-2 big endian format)
401
401
  decompressFromUint8Array:function decompressFromUint8Array(s){if(s==null)return o.decompress(s);for(var l=new Array(s.length/2),d=0,c=l.length;d<c;d++)l[d]=s[d*2]*256+s[d*2+1];var p=[];return l.forEach(function(y){p.push(t(y));}),o.decompress(p.join(""));},//compress into a string that is already URI encoded
402
402
  compressToEncodedURIComponent:function compressToEncodedURIComponent(s){return s==null?"":o._compress(s,6,function(l){return n.charAt(l);});},//decompress from an output of compressToEncodedURIComponent
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-SHjau6rI.js");exports.ActiveContainerType=e.ActiveContainerType;exports.ApplianceMultiPlugin=e.ApplianceMultiPlugin;exports.ApplianceNames=e.ApplianceNames;exports.ApplianceSigleWrapper=e.ApplianceSigleWrapper;exports.ApplianceSinglePlugin=e.ApplianceSinglePlugin;exports.ECanvasShowType=e.ECanvasShowType;exports.EDataType=e.EDataType;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.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-VnPTZ-8D.js");exports.ActiveContainerType=e.ActiveContainerType;exports.ApplianceMultiPlugin=e.ApplianceMultiPlugin;exports.ApplianceNames=e.ApplianceNames;exports.ApplianceSigleWrapper=e.ApplianceSigleWrapper;exports.ApplianceSinglePlugin=e.ApplianceSinglePlugin;exports.ECanvasShowType=e.ECanvasShowType;exports.EDataType=e.EDataType;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.ShapeType=e.ShapeType;exports.fullWorkerUrl=e.fullWorker;exports.subWorkerUrl=e.subWorker;
@@ -1,4 +1,4 @@
1
- import { H as s, A as p, B as r, z as t, y as l, J as y, h as i, r as n, P as E, k as T, Q as o, N as v, F as g, E as S, L as c, p as k, K as A, a as u, O as M, I as W, G as m, w as P, x as h } from "./index-CCSJm7F7.mjs";
1
+ import { H as s, A as p, B as r, z as t, y as l, J as y, h as i, r as n, P as E, k as T, Q as o, N as v, F as g, E as S, L as c, p as k, K as A, a as u, O as M, I as W, G as m, w as P, x as h } from "./index-Dkg_PdHZ.mjs";
2
2
  export {
3
3
  s as ActiveContainerType,
4
4
  p as ApplianceMultiPlugin,
@@ -396,7 +396,7 @@ _inherits(o,_e$default22);return _createClass(o,[{key:"texture",get:function get
396
396
  l=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
397
397
  n&&(l=="offset"||l=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
398
398
  i&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||// Skip index properties.
399
- gc(l,s)))&&o.push(l);return o;}var kn=yc,Sc=Object.prototype;function xc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||Sc;return h===t;}var Or=xc;function Tc(h,r){return function(t){return h(r(t));};}var Jn=Tc,Mc=Jn,Pc=Mc(Object.keys,Object),Oc=Pc,Ec=Or,Cc=Oc,Ac=Object.prototype,Rc=Ac.hasOwnProperty;function Ic(h){if(!Ec(h))return Cc(h);var r=[];for(var t in Object(h))Rc.call(h,t)&&t!="constructor"&&r.push(t);return r;}var Lc=Ic,bc=Fn,wc=Vn;function Dc(h){return h!=null&&wc(h.length)&&!bc(h);}var Er=Dc,Nc=kn,Wc=Lc,Bc=Er;function Fc(h){return Bc(h)?Nc(h):Wc(h);}var Cr=Fc,Uc=ir,jc=Cr;function $c(h,r){return h&&Uc(r,jc(r),h);}var zc=$c;function Gc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Hc=Gc,Kc=he,Yc=Or,Vc=Hc,Xc=Object.prototype,kc=Xc.hasOwnProperty;function Jc(h){if(!Kc(h))return Vc(h);var r=Yc(h),t=[];for(var e in h)e=="constructor"&&(r||!kc.call(h,e))||t.push(e);return t;}var Zc=Jc,Qc=kn,qc=Zc,_c=Er;function tf(h){return _c(h)?Qc(h,!0):qc(h);}var Ar=tf,ef=ir,rf=Ar;function nf(h,r){return h&&ef(r,rf(r),h);}var sf=nf,Ke={exports:{}};Ke.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ke,Ke.exports);var of=Ke.exports;function af(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var lf=af;function cf(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Zn=cf;function ff(){return[];}var Qn=ff,hf=Zn,uf=Qn,df=Object.prototype,gf=df.propertyIsEnumerable,qr=Object.getOwnPropertySymbols,pf=qr?function(h){return h==null?[]:(h=Object(h),hf(qr(h),function(r){return gf.call(h,r);}));}:uf,Rr=pf,mf=ir,vf=Rr;function yf(h,r){return mf(h,vf(h),r);}var Sf=yf;function xf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Ir=xf,Tf=Jn,Mf=Tf(Object.getPrototypeOf,Object),qn=Mf,Pf=Ir,Of=qn,Ef=Rr,Cf=Qn,Af=Object.getOwnPropertySymbols,Rf=Af?function(h){for(var r=[];h;)Pf(r,Ef(h)),h=Of(h);return r;}:Cf,_n=Rf,If=ir,Lf=_n;function bf(h,r){return If(h,Lf(h),r);}var wf=bf,Df=Ir,Nf=Ue;function Wf(h,r,t){var e=r(h);return Nf(h)?e:Df(e,t(h));}var ti=Wf,Bf=ti,Ff=Rr,Uf=Cr;function jf(h){return Bf(h,Uf,Ff);}var ei=jf,$f=ti,zf=_n,Gf=Ar;function Hf(h){return $f(h,Gf,zf);}var Kf=Hf,Yf=ge,Vf=ee,Xf=Yf(Vf,"DataView"),kf=Xf,Jf=ge,Zf=ee,Qf=Jf(Zf,"Promise"),qf=Qf,_f=ge,th=ee,eh=_f(th,"Set"),ri=eh,rh=ge,nh=ee,ih=rh(nh,"WeakMap"),sh=ih,dr=kf,gr=Tr,pr=qf,mr=ri,vr=sh,ni=de,Ae=Un,_r="[object Map]",oh="[object Object]",tn="[object Promise]",en="[object Set]",rn="[object WeakMap]",nn="[object DataView]",ah=Ae(dr),lh=Ae(gr),ch=Ae(pr),fh=Ae(mr),hh=Ae(vr),ue=ni;(dr&&ue(new dr(new ArrayBuffer(1)))!=nn||gr&&ue(new gr())!=_r||pr&&ue(pr.resolve())!=tn||mr&&ue(new mr())!=en||vr&&ue(new vr())!=rn)&&(ue=function ue(h){var r=ni(h),t=r==oh?h.constructor:void 0,e=t?Ae(t):"";if(e)switch(e){case ah:return nn;case lh:return _r;case ch:return tn;case fh:return en;case hh:return rn;}return r;});var or=ue,uh=Object.prototype,dh=uh.hasOwnProperty;function gh(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&dh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var ph=gh,mh=ee,vh=mh.Uint8Array,ii=vh,sn=ii;function yh(h){var r=new h.constructor(h.byteLength);return new sn(r).set(new sn(h)),r;}var Lr=yh,Sh=Lr;function xh(h,r){var t=r?Sh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Th=xh,Mh=/\w*$/;function Ph(h){var r=new h.constructor(h.source,Mh.exec(h));return r.lastIndex=h.lastIndex,r;}var Oh=Ph,on=Fe,an=on?on.prototype:void 0,ln=an?an.valueOf:void 0;function Eh(h){return ln?Object(ln.call(h)):{};}var Ch=Eh,Ah=Lr;function Rh(h,r){var t=r?Ah(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Ih=Rh,Lh=Lr,bh=Th,wh=Oh,Dh=Ch,Nh=Ih,Wh="[object Boolean]",Bh="[object Date]",Fh="[object Map]",Uh="[object Number]",jh="[object RegExp]",$h="[object Set]",zh="[object String]",Gh="[object Symbol]",Hh="[object ArrayBuffer]",Kh="[object DataView]",Yh="[object Float32Array]",Vh="[object Float64Array]",Xh="[object Int8Array]",kh="[object Int16Array]",Jh="[object Int32Array]",Zh="[object Uint8Array]",Qh="[object Uint8ClampedArray]",qh="[object Uint16Array]",_h="[object Uint32Array]";function tu(h,r,t){var e=h.constructor;switch(r){case Hh:return Lh(h);case Wh:case Bh:return new e(+h);case Kh:return bh(h,t);case Yh:case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:return Nh(h,t);case Fh:return new e();case Uh:case zh:return new e(h);case jh:return wh(h);case $h:return new e();case Gh:return Dh(h);}}var eu=tu,ru=he,cn=Object.create,nu=/* @__PURE__ */function(){function h(){}return function(r){if(!ru(r))return{};if(cn)return cn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),iu=nu,su=iu,ou=qn,au=Or;function lu(h){return typeof h.constructor=="function"&&!au(h)?su(ou(h)):{};}var cu=lu,fu=or,hu=ne,uu="[object Map]";function du(h){return hu(h)&&fu(h)==uu;}var gu=du,pu=gu,mu=sr,fn=Pr,hn=fn&&fn.isMap,vu=hn?mu(hn):pu,yu=vu,Su=or,xu=ne,Tu="[object Set]";function Mu(h){return xu(h)&&Su(h)==Tu;}var Pu=Mu,Ou=Pu,Eu=sr,un=Pr,dn=un&&un.isSet,Cu=dn?Eu(dn):Ou,si=Cu,Au=/* @__PURE__ */fe(si),Ru=$n,Iu=_a,Lu=Hn,bu=zc,wu=sf,Du=of,Nu=lf,Wu=Sf,Bu=wf,Fu=ei,Uu=Kf,ju=or,$u=ph,zu=eu,Gu=cu,Hu=Ue,Ku=Mr,Yu=yu,Vu=he,Xu=si,ku=Cr,Ju=Ar,Zu=1,Qu=2,qu=4,oi="[object Arguments]",_u="[object Array]",td="[object Boolean]",ed="[object Date]",rd="[object Error]",ai="[object Function]",nd="[object GeneratorFunction]",id="[object Map]",sd="[object Number]",li="[object Object]",od="[object RegExp]",ad="[object Set]",ld="[object String]",cd="[object Symbol]",fd="[object WeakMap]",hd="[object ArrayBuffer]",ud="[object DataView]",dd="[object Float32Array]",gd="[object Float64Array]",pd="[object Int8Array]",md="[object Int16Array]",vd="[object Int32Array]",yd="[object Uint8Array]",Sd="[object Uint8ClampedArray]",xd="[object Uint16Array]",Td="[object Uint32Array]",Ft={};Ft[oi]=Ft[_u]=Ft[hd]=Ft[ud]=Ft[td]=Ft[ed]=Ft[dd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[id]=Ft[sd]=Ft[li]=Ft[od]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[yd]=Ft[Sd]=Ft[xd]=Ft[Td]=!0;Ft[rd]=Ft[ai]=Ft[fd]=!1;function ze(h,r,t,e,n,i){var a,o=r&Zu,s=r&Qu,l=r&qu;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Vu(h))return h;var d=Hu(h);if(d){if(a=$u(h),!o)return Nu(h,a);}else{var c=ju(h),p=c==ai||c==nd;if(Ku(h))return Du(h,o);if(c==li||c==oi||p&&!n){if(a=s||p?{}:Gu(h),!o)return s?Bu(h,wu(a,h)):Wu(h,bu(a,h));}else{if(!Ft[c])return n?h:{};a=zu(h,c,o);}}i||(i=new Ru());var y=i.get(h);if(y)return y;i.set(h,a),Xu(h)?h.forEach(function(v){a.add(ze(v,r,t,v,h,i));}):Yu(h)&&h.forEach(function(v,x){a.set(x,ze(v,r,t,x,h,i));});var P=l?s?Uu:Fu:s?Ju:ku,T=d?void 0:P(h);return Iu(T||h,function(v,x){T&&(x=v,v=h[x]),Lu(a,x,ze(v,r,t,x,h,i));}),a;}var Md=ze,Pd=Md,Od=1,Ed=4;function Cd(h){return Pd(h,Od|Ed);}var Ad=Cd,Xt=/* @__PURE__ */fe(Ad);var ci="1.1.5-beta.0",Rd="@netless/appliance-plugin",Id=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Rd,"@").concat(ci,"_").concat(Id),window.__netlessUA=h;}var re={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:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Fr(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)Ur(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=Sr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Oi(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Gg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Hg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var br={exports:{}};br.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
399
+ gc(l,s)))&&o.push(l);return o;}var kn=yc,Sc=Object.prototype;function xc(h){var r=h&&h.constructor,t=typeof r=="function"&&r.prototype||Sc;return h===t;}var Or=xc;function Tc(h,r){return function(t){return h(r(t));};}var Jn=Tc,Mc=Jn,Pc=Mc(Object.keys,Object),Oc=Pc,Ec=Or,Cc=Oc,Ac=Object.prototype,Rc=Ac.hasOwnProperty;function Ic(h){if(!Ec(h))return Cc(h);var r=[];for(var t in Object(h))Rc.call(h,t)&&t!="constructor"&&r.push(t);return r;}var Lc=Ic,bc=Fn,wc=Vn;function Dc(h){return h!=null&&wc(h.length)&&!bc(h);}var Er=Dc,Nc=kn,Wc=Lc,Bc=Er;function Fc(h){return Bc(h)?Nc(h):Wc(h);}var Cr=Fc,Uc=ir,jc=Cr;function $c(h,r){return h&&Uc(r,jc(r),h);}var zc=$c;function Gc(h){var r=[];if(h!=null)for(var t in Object(h))r.push(t);return r;}var Hc=Gc,Kc=he,Yc=Or,Vc=Hc,Xc=Object.prototype,kc=Xc.hasOwnProperty;function Jc(h){if(!Kc(h))return Vc(h);var r=Yc(h),t=[];for(var e in h)e=="constructor"&&(r||!kc.call(h,e))||t.push(e);return t;}var Zc=Jc,Qc=kn,qc=Zc,_c=Er;function tf(h){return _c(h)?Qc(h,!0):qc(h);}var Ar=tf,ef=ir,rf=Ar;function nf(h,r){return h&&ef(r,rf(r),h);}var sf=nf,Ke={exports:{}};Ke.exports;(function(h,r){var t=ee,e=r&&!r.nodeType&&r,n=e&&!0&&h&&!h.nodeType&&h,i=n&&n.exports===e,a=i?t.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(l,d){if(d)return l.slice();var c=l.length,p=o?o(c):new l.constructor(c);return l.copy(p),p;}h.exports=s;})(Ke,Ke.exports);var of=Ke.exports;function af(h,r){var t=-1,e=h.length;for(r||(r=Array(e));++t<e;)r[t]=h[t];return r;}var lf=af;function cf(h,r){for(var t=-1,e=h==null?0:h.length,n=0,i=[];++t<e;){var a=h[t];r(a,t,h)&&(i[n++]=a);}return i;}var Zn=cf;function ff(){return[];}var Qn=ff,hf=Zn,uf=Qn,df=Object.prototype,gf=df.propertyIsEnumerable,qr=Object.getOwnPropertySymbols,pf=qr?function(h){return h==null?[]:(h=Object(h),hf(qr(h),function(r){return gf.call(h,r);}));}:uf,Rr=pf,mf=ir,vf=Rr;function yf(h,r){return mf(h,vf(h),r);}var Sf=yf;function xf(h,r){for(var t=-1,e=r.length,n=h.length;++t<e;)h[n+t]=r[t];return h;}var Ir=xf,Tf=Jn,Mf=Tf(Object.getPrototypeOf,Object),qn=Mf,Pf=Ir,Of=qn,Ef=Rr,Cf=Qn,Af=Object.getOwnPropertySymbols,Rf=Af?function(h){for(var r=[];h;)Pf(r,Ef(h)),h=Of(h);return r;}:Cf,_n=Rf,If=ir,Lf=_n;function bf(h,r){return If(h,Lf(h),r);}var wf=bf,Df=Ir,Nf=Ue;function Wf(h,r,t){var e=r(h);return Nf(h)?e:Df(e,t(h));}var ti=Wf,Bf=ti,Ff=Rr,Uf=Cr;function jf(h){return Bf(h,Uf,Ff);}var ei=jf,$f=ti,zf=_n,Gf=Ar;function Hf(h){return $f(h,Gf,zf);}var Kf=Hf,Yf=ge,Vf=ee,Xf=Yf(Vf,"DataView"),kf=Xf,Jf=ge,Zf=ee,Qf=Jf(Zf,"Promise"),qf=Qf,_f=ge,th=ee,eh=_f(th,"Set"),ri=eh,rh=ge,nh=ee,ih=rh(nh,"WeakMap"),sh=ih,dr=kf,gr=Tr,pr=qf,mr=ri,vr=sh,ni=de,Ae=Un,_r="[object Map]",oh="[object Object]",tn="[object Promise]",en="[object Set]",rn="[object WeakMap]",nn="[object DataView]",ah=Ae(dr),lh=Ae(gr),ch=Ae(pr),fh=Ae(mr),hh=Ae(vr),ue=ni;(dr&&ue(new dr(new ArrayBuffer(1)))!=nn||gr&&ue(new gr())!=_r||pr&&ue(pr.resolve())!=tn||mr&&ue(new mr())!=en||vr&&ue(new vr())!=rn)&&(ue=function ue(h){var r=ni(h),t=r==oh?h.constructor:void 0,e=t?Ae(t):"";if(e)switch(e){case ah:return nn;case lh:return _r;case ch:return tn;case fh:return en;case hh:return rn;}return r;});var or=ue,uh=Object.prototype,dh=uh.hasOwnProperty;function gh(h){var r=h.length,t=new h.constructor(r);return r&&typeof h[0]=="string"&&dh.call(h,"index")&&(t.index=h.index,t.input=h.input),t;}var ph=gh,mh=ee,vh=mh.Uint8Array,ii=vh,sn=ii;function yh(h){var r=new h.constructor(h.byteLength);return new sn(r).set(new sn(h)),r;}var Lr=yh,Sh=Lr;function xh(h,r){var t=r?Sh(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.byteLength);}var Th=xh,Mh=/\w*$/;function Ph(h){var r=new h.constructor(h.source,Mh.exec(h));return r.lastIndex=h.lastIndex,r;}var Oh=Ph,on=Fe,an=on?on.prototype:void 0,ln=an?an.valueOf:void 0;function Eh(h){return ln?Object(ln.call(h)):{};}var Ch=Eh,Ah=Lr;function Rh(h,r){var t=r?Ah(h.buffer):h.buffer;return new h.constructor(t,h.byteOffset,h.length);}var Ih=Rh,Lh=Lr,bh=Th,wh=Oh,Dh=Ch,Nh=Ih,Wh="[object Boolean]",Bh="[object Date]",Fh="[object Map]",Uh="[object Number]",jh="[object RegExp]",$h="[object Set]",zh="[object String]",Gh="[object Symbol]",Hh="[object ArrayBuffer]",Kh="[object DataView]",Yh="[object Float32Array]",Vh="[object Float64Array]",Xh="[object Int8Array]",kh="[object Int16Array]",Jh="[object Int32Array]",Zh="[object Uint8Array]",Qh="[object Uint8ClampedArray]",qh="[object Uint16Array]",_h="[object Uint32Array]";function tu(h,r,t){var e=h.constructor;switch(r){case Hh:return Lh(h);case Wh:case Bh:return new e(+h);case Kh:return bh(h,t);case Yh:case Vh:case Xh:case kh:case Jh:case Zh:case Qh:case qh:case _h:return Nh(h,t);case Fh:return new e();case Uh:case zh:return new e(h);case jh:return wh(h);case $h:return new e();case Gh:return Dh(h);}}var eu=tu,ru=he,cn=Object.create,nu=/* @__PURE__ */function(){function h(){}return function(r){if(!ru(r))return{};if(cn)return cn(r);h.prototype=r;var t=new h();return h.prototype=void 0,t;};}(),iu=nu,su=iu,ou=qn,au=Or;function lu(h){return typeof h.constructor=="function"&&!au(h)?su(ou(h)):{};}var cu=lu,fu=or,hu=ne,uu="[object Map]";function du(h){return hu(h)&&fu(h)==uu;}var gu=du,pu=gu,mu=sr,fn=Pr,hn=fn&&fn.isMap,vu=hn?mu(hn):pu,yu=vu,Su=or,xu=ne,Tu="[object Set]";function Mu(h){return xu(h)&&Su(h)==Tu;}var Pu=Mu,Ou=Pu,Eu=sr,un=Pr,dn=un&&un.isSet,Cu=dn?Eu(dn):Ou,si=Cu,Au=/* @__PURE__ */fe(si),Ru=$n,Iu=_a,Lu=Hn,bu=zc,wu=sf,Du=of,Nu=lf,Wu=Sf,Bu=wf,Fu=ei,Uu=Kf,ju=or,$u=ph,zu=eu,Gu=cu,Hu=Ue,Ku=Mr,Yu=yu,Vu=he,Xu=si,ku=Cr,Ju=Ar,Zu=1,Qu=2,qu=4,oi="[object Arguments]",_u="[object Array]",td="[object Boolean]",ed="[object Date]",rd="[object Error]",ai="[object Function]",nd="[object GeneratorFunction]",id="[object Map]",sd="[object Number]",li="[object Object]",od="[object RegExp]",ad="[object Set]",ld="[object String]",cd="[object Symbol]",fd="[object WeakMap]",hd="[object ArrayBuffer]",ud="[object DataView]",dd="[object Float32Array]",gd="[object Float64Array]",pd="[object Int8Array]",md="[object Int16Array]",vd="[object Int32Array]",yd="[object Uint8Array]",Sd="[object Uint8ClampedArray]",xd="[object Uint16Array]",Td="[object Uint32Array]",Ft={};Ft[oi]=Ft[_u]=Ft[hd]=Ft[ud]=Ft[td]=Ft[ed]=Ft[dd]=Ft[gd]=Ft[pd]=Ft[md]=Ft[vd]=Ft[id]=Ft[sd]=Ft[li]=Ft[od]=Ft[ad]=Ft[ld]=Ft[cd]=Ft[yd]=Ft[Sd]=Ft[xd]=Ft[Td]=!0;Ft[rd]=Ft[ai]=Ft[fd]=!1;function ze(h,r,t,e,n,i){var a,o=r&Zu,s=r&Qu,l=r&qu;if(t&&(a=n?t(h,e,n,i):t(h)),a!==void 0)return a;if(!Vu(h))return h;var d=Hu(h);if(d){if(a=$u(h),!o)return Nu(h,a);}else{var c=ju(h),p=c==ai||c==nd;if(Ku(h))return Du(h,o);if(c==li||c==oi||p&&!n){if(a=s||p?{}:Gu(h),!o)return s?Bu(h,wu(a,h)):Wu(h,bu(a,h));}else{if(!Ft[c])return n?h:{};a=zu(h,c,o);}}i||(i=new Ru());var y=i.get(h);if(y)return y;i.set(h,a),Xu(h)?h.forEach(function(v){a.add(ze(v,r,t,v,h,i));}):Yu(h)&&h.forEach(function(v,x){a.set(x,ze(v,r,t,x,h,i));});var P=l?s?Uu:Fu:s?Ju:ku,T=d?void 0:P(h);return Iu(T||h,function(v,x){T&&(x=v,v=h[x]),Lu(a,x,ze(v,r,t,x,h,i));}),a;}var Md=ze,Pd=Md,Od=1,Ed=4;function Cd(h){return Pd(h,Od|Ed);}var Ad=Cd,Xt=/* @__PURE__ */fe(Ad);var ci="1.1.5",Rd="@netless/appliance-plugin",Id=typeof OffscreenCanvas=="function"?"worker":"mainThread";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var h=window.__netlessUA||"";h+=" ".concat(Rd,"@").concat(ci,"_").concat(Id),window.__netlessUA=h;}var re={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:1e3},bezier:{combineUnitTime:100},pencilEraser:{useBitMap:!0}};function ae(h){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=h.length;if(t<2)return"";var e=h[0],n=h[1];if(t===2)return"M".concat(pe(e),"L").concat(pe(n));var i="";for(var a=2,o=t-1;a<o;a++)e=h[a],n=h[a+1],i+=me(e,n);return r?"M".concat(me(h[0],h[1]),"Q").concat(pe(h[1])).concat(me(h[1],h[2]),"T").concat(i).concat(me(h[t-1],h[0])).concat(me(h[0],h[1]),"Z"):"M".concat(pe(h[0]),"Q").concat(pe(h[1])).concat(me(h[1],h[2])).concat(h.length>3?"T":"").concat(i,"L").concat(pe(h[t-1]));}var Jt=/*#__PURE__*/function(){function Jt(r){_classCallCheck(this,Jt);et(this,"syncUnitTime",re.syncOpt.interval);et(this,"vNodes");et(this,"drawLayer");et(this,"fullLayer");et(this,"workId");var t=r.vNodes,e=r.fullLayer,n=r.drawLayer,i=r.workId,a=r.toolsOpt;this.vNodes=t,this.fullLayer=e,this.drawLayer=n,this.workId=i,this.syncUnitTime=a.syncUnitTime||this.syncUnitTime;}return _createClass(Jt,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return r.reduce(function(e,n){var i=e[e.length-1];return(n&&!i||n&&i&&!n.isNear(i,t))&&e.push(n),e;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(r){this.workId=r;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(r){var n,i,a;this.workOptions=r,this.syncUnitTime=r.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),e=t&&((i=this.vNodes)==null?void 0:i.get(t))||void 0;t&&e&&(e.opt=r,(a=this.vNodes)==null||a.setInfo(t,e));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(r){var n,i;var t;var e=(n=this.workId)==null?void 0:n.toString();if(e&&r){var a=this.fullLayer.getElementsByName(e)||this.drawLayer&&this.drawLayer.getElementsByName(e)||[];if(a.length!==1)return;var o=a[0],s=r.pos,l=r.zIndex,d=r.scale,c=r.angle,p=r.translate,y={};_t(l)&&(y.zIndex=l),s&&(y.pos=[s[0],s[1]]),d&&(y.scale=d),c&&(y.rotate=c),p&&(y.translate=p),o.attr(y);var P=o==null?void 0:o.getBoundingClientRect();return P&&(t=Pt(t,{x:Math.floor(P.x-Jt.SafeBorderPadding),y:Math.floor(P.y-Jt.SafeBorderPadding),w:Math.floor(P.width+Jt.SafeBorderPadding*2),h:Math.floor(P.height+Jt.SafeBorderPadding*2)})),(i=this.vNodes)==null||i.setInfo(e,{rect:t,centerPos:s}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(r){var t=r.group,e=r.eraserlines,n=r.pos,i=r.layer,_r$isClear=r.isClear,a=_r$isClear===void 0?!0:_r$isClear,o=!!i.parent.gl;var _iterator13=_createForOfIteratorHelper(e),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var l=s.thickness,d=s.op;var _iterator14=_createForOfIteratorHelper(d),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var c=_step14.value;var p=c.map(function(x,f){return f%2?x-n[1]:x-n[0];}),y=this.computEraserPoints(p,l),P=ae(y,!0),T={pos:[0,0],d:P,fillColor:"rgba(0,0,0,1)"},v=new ce(T);a&&(v.addEventListener("beforerender",function(_ref165){var x=_ref165.detail;var f=x.context;o?f.blendFuncSeparate(f.ZERO,f.ZERO,f.ZERO,f.ZERO):f.globalCompositeOperation="destination-out";}),v.addEventListener("afterrender",function(_ref166){var x=_ref166.detail;var f=x.context;o?f.blendFuncSeparate(f.SRC_ALPHA,f.ONE_MINUS_SRC_ALPHA,f.ONE,f.ONE_MINUS_SRC_ALPHA):f.globalCompositeOperation="source-over";})),t.append(v);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"computEraserPoints",value:function computEraserPoints(r,t){var e=Math.ceil(t/2);return r.length===2?this.computDot(r,e):this.computLine(r,e);}},{key:"computDot",value:function computDot(r,t){var e=new xt(r[0],r[1]);return xt.GetDotStroke(e,t,8);}},{key:"computLine",value:function computLine(r,t){var e=[],n=[];var i,a;for(var o=0;o<r.length;o+=2){var s=new xt(r[o],r[o+1]);var l=void 0;if(o==r.length-2){var d=new xt(r[o-2],r[o-1]);l=_.Sub(s,d).uni(),i=s;}else{o===0&&(a=s);var _d4=new xt(r[o+2],r[o+3]);l=_.Sub(_d4,s).uni();}if(l){var _d5=_.Per(l).mul(t);e.push(xt.Sub(s,_d5)),n.push(xt.Add(s,_d5));}}if(i&&a){var _o3=xt.GetSemicircleStroke(i,e[e.length-1],-1,8),_s4=xt.GetSemicircleStroke(a,n[0],-1,8);return e.concat(_o3,n.reverse(),_s4);}return[];}},{key:"replace",value:function replace(r,t,e){var _this61=this;var o;var n=r.getElementsByName(t),i=n.length;if(i){if(i>1)for(var s=1;s<n.length;s++)r.removeChild(n[s]),n[s].disconnect();e?r.replaceChild(e,n[0]):r.removeChild(n[0]),n[0].disconnect();}else e&&r.append(e);this.fullLayer===r?(o=this.drawLayer)==null||o.getElementsByName(t).forEach(function(s){var l;(l=_this61.drawLayer)==null||l.removeChild(s),s.disconnect();}):this.fullLayer.getElementsByName(t).forEach(function(s){_this61.fullLayer.removeChild(s),s.disconnect();});}}],[{key:"updateNodeOpt",value:function updateNodeOpt(r){var f;var t=r.node,e=r.opt,n=r.vNodes,i=r.willSerializeData,a=r.targetNode,o=e.zIndex,s=e.translate,l=e.angle,d=e.originPoint,c=e.scenePoint,p=e.scale,y=e.pointMap,P=e.thickness;var T;var v=a&&Xt(a)||n.get(t.name);if(!v)return;_t(o)&&(t.setAttribute("zIndex",o),v.opt.zIndex=o);var x=t.parent;if(x){if(d&&p&&a){var g=[v.op[0],v.op[1]];Fr(v.op,c,p,s);var u=[v.op[0],v.op[1]],m=[u[0]-g[0],u[1]-g[1]];if(v.centerPos=[v.centerPos[0]+m[0],v.centerPos[1]+m[1]],v.opt.translate=void 0,v.opt.scale=void 0,v.opt.eraserlines)for(var _i2=0,_Object$values=Object.values(v.opt.eraserlines);_i2<_Object$values.length;_i2++){var M=_Object$values[_i2];var E=M.op,R=M.thickness;M.thickness=R*Math.max(p[0],p[1]);for(var b=0;b<E.length;b++)Ur(E[b],c,p,s);}}else if(s){if(t.setAttribute("translate",s),v.opt.translate=s,a){var _g6=[s[0]*x.worldScaling[0],s[1]*x.worldScaling[1]];T=Sr(v.rect,_g6),v.rect=T;}else{var _g7=Jt.getRectFromLayer(x,t.name);v.rect=_g7||v.rect;}}else if(_t(l))if(t.setAttribute("rotate",l),v.opt.rotate=l,a)T=Oi(v.rect,l),v.rect=T;else{var _g8=Jt.getRectFromLayer(x,t.name);v.rect=_g8||v.rect;}if(y){var _g9=y.get(t.name);if(_g9)for(var _u10=0,_m9=0;_u10<v.op.length;_u10+=3,_m9++)v.op[_u10]=_g9[_m9][0],v.op[_u10+1]=_g9[_m9][1];}if(P&&(f=v==null?void 0:v.opt)!=null&&f.thickness&&(v.opt.thickness=P),i&&!(d&&p&&a)){if(s){var _g10=v.op.map(function(u,m){var M=m%3;return M===0?u+s[0]:M===1?u+s[1]:u;});if(v.op=_g10,v.centerPos=[v.centerPos[0]+s[0],v.centerPos[1]+s[1]],v!=null&&v.opt&&(v.opt.translate=void 0),v.opt.eraserlines)for(var _i3=0,_Object$values2=Object.values(v.opt.eraserlines);_i3<_Object$values2.length;_i3++){var _u11=_Object$values2[_i3];var _m10=_u11.op;for(var _M6=0;_M6<_m10.length;_M6++){var _E3=_m10[_M6].map(function(R,b){return b%2?R+s[1]:R+s[0];});_u11.op[_M6]=_E3;}}}else if(_t(l)){var _g11=v.op;if(Gg(_g11,v.centerPos,l),v.op=_g11,v!=null&&v.opt&&(v.opt.rotate=void 0),v.opt.eraserlines)for(var _i4=0,_Object$values3=Object.values(v.opt.eraserlines);_i4<_Object$values3.length;_i4++){var _u12=_Object$values3[_i4];var _m11=_u12.op;for(var _M7=0;_M7<_m11.length;_M7++)Hg(_m11[_M7],v.centerPos,l);}}}v&&n.setInfo(t.name,v);}}},{key:"getCenterPos",value:function getCenterPos(r,t){var e=t.worldPosition,n=t.worldScaling;return[(r.x+r.w/2-e[0])/n[0],(r.y+r.h/2-e[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(r,t){var e=r.getElementsByName(t)[0];if(e){var n=e.getBoundingClientRect();return{x:Math.floor(n.x-Jt.SafeBorderPadding),y:Math.floor(n.y-Jt.SafeBorderPadding),w:Math.floor(n.width+Jt.SafeBorderPadding*2),h:Math.floor(n.height+Jt.SafeBorderPadding*2)};}}}]);}();et(Jt,"SafeBorderPadding",10);var vt=Jt;var br={exports:{}};br.exports;(function(h){var r=function(){var t=String.fromCharCode,e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",i={};function a(s,l){if(!i[s]){i[s]={};for(var d=0;d<s.length;d++)i[s][s.charAt(d)]=d;}return i[s][l];}var o={compressToBase64:function compressToBase64(s){if(s==null)return"";var l=o._compress(s,6,function(d){return e.charAt(d);});switch(l.length%4){default:case 0:return l;case 1:return l+"===";case 2:return l+"==";case 3:return l+"=";}},decompressFromBase64:function decompressFromBase64(s){return s==null?"":s==""?null:o._decompress(s.length,32,function(l){return a(e,s.charAt(l));});},compressToUTF16:function compressToUTF16(s){return s==null?"":o._compress(s,15,function(l){return t(l+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(s){return s==null?"":s==""?null:o._decompress(s.length,16384,function(l){return s.charCodeAt(l)-32;});},//compress into uint8array (UCS-2 big endian format)
400
400
  compressToUint8Array:function compressToUint8Array(s){for(var l=o.compress(s),d=new Uint8Array(l.length*2),c=0,p=l.length;c<p;c++){var y=l.charCodeAt(c);d[c*2]=y>>>8,d[c*2+1]=y%256;}return d;},//decompress from uint8array (UCS-2 big endian format)
401
401
  decompressFromUint8Array:function decompressFromUint8Array(s){if(s==null)return o.decompress(s);for(var l=new Array(s.length/2),d=0,c=l.length;d<c;d++)l[d]=s[d*2]*256+s[d*2+1];var p=[];return l.forEach(function(y){p.push(t(y));}),o.decompress(p.join(""));},//compress into a string that is already URI encoded
402
402
  compressToEncodedURIComponent:function compressToEncodedURIComponent(s){return s==null?"":o._compress(s,6,function(l){return n.charAt(l);});},//decompress from an output of compressToEncodedURIComponent
@@ -1,7 +1,7 @@
1
1
  var ee = Object.defineProperty;
2
2
  var te = (N, t, e) => t in N ? ee(N, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : N[t] = e;
3
3
  var d = (N, t, e) => te(N, typeof t != "symbol" ? t + "" : t, e);
4
- import { E as f, a as T, c as D, b as se, i as oe, d as re, e as U, g as ie, S as P, f as ae, D as A, h as v, j as B, t as x, k as p, l as L, m as K, n as ce, C as _, o as ne, p as I, M as R, T as G, q as z, r as V, s as le, u as $, V as Z, v as he } from "./index-CCSJm7F7.mjs";
4
+ import { E as f, a as T, c as D, b as se, i as oe, d as re, e as U, g as ie, S as P, f as ae, D as A, h as v, j as B, t as x, k as p, l as L, m as K, n as ce, C as _, o as ne, p as I, M as R, T as G, q as z, r as V, s as le, u as $, V as Z, v as he } from "./index-Dkg_PdHZ.mjs";
5
5
  import { Scene as X, Group as Y } from "spritejs";
6
6
  import { cloneDeep as Q, xor as pe, isEqual as j, isNumber as de } from "lodash";
7
7
  import "lineclip";