@netless/appliance-plugin 1.1.27-beta.7 → 1.1.27
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/READMA.zh-CN.md +599 -0
- package/README.md +89 -4
- package/cdn/cdn.js +1 -1
- package/cdn/{fullWorker-CtDHN_.js → fullWorker-DCfVcI.js} +1 -1
- package/cdn/{subWorker-DuuVTa.js → subWorker-DtUO-T.js} +1 -1
- package/dist/appliance-plugin.js +1 -1
- package/dist/appliance-plugin.mjs +1 -1
- package/dist/fullWorker.js +1 -1
- package/dist/{index-BO1MFbPV.js → index-BVgkgGj9.js} +1 -1
- package/dist/index-Ci0eJ9wV.js +1 -0
- package/dist/{index-5QkhtZxL.mjs → index-Cqizo6hB.mjs} +2 -2
- package/dist/{index-UtFjMigk.mjs → index-Dble46rY.mjs} +1 -1
- package/dist/subWorker.js +1 -1
- package/package.json +4 -2
- package/dist/index-CP2FuJ5f.js +0 -1
package/README.md
CHANGED
|
@@ -270,7 +270,14 @@ The following interfaces are involved:
|
|
|
270
270
|
- `removeListener` remove appliance plugin Listener
|
|
271
271
|
- `disableDeviceInputs` Replace the api `room.disableDeviceInputs`
|
|
272
272
|
- `disableEraseImage` Replace the api `room.disableEraseImage` **This method only suppert when currentApplianceName is `eraser`**
|
|
273
|
-
- `disableCameraTransform` Replace the api `room.disableCameraTransform`
|
|
273
|
+
- `disableCameraTransform` Replace the api `room.disableCameraTransform` (Version >=1.1.17)
|
|
274
|
+
- `insertText` Insert text at the specified position (Version >=1.1.18)
|
|
275
|
+
- `updateText` Update the content of the specified text (Version >=1.1.18)
|
|
276
|
+
- `blurText` Remove text focus (Version >=1.1.19)
|
|
277
|
+
- `hasElements` Check if there are elements in the specified scene (Version >=1.1.19)
|
|
278
|
+
- `getElements` Get all elements in the specified scene (Version >=1.1.19)
|
|
279
|
+
- `stopDraw` Stop draw event (Version >=1.1.19)
|
|
280
|
+
- `setViewLocalScenePathChange` Set the local scene path change for the whiteboard view (Version >=1.1.27)
|
|
274
281
|
|
|
275
282
|
5.Incompatible
|
|
276
283
|
|
|
@@ -422,7 +429,48 @@ The following interfaces are involved:
|
|
|
422
429
|
|
|
423
430
|
3. Split screen display Elements (little whiteboard featrue), need to combine [`@netless/app-little-white-board`](https://github.com/netless-io/app-little-white-board) (Version >=1.1.3)
|
|
424
431
|

|
|
425
|
-
4.
|
|
432
|
+
4. Text editing APIs (Version >=1.1.18)
|
|
433
|
+
```js
|
|
434
|
+
/** Insert text at the specified position
|
|
435
|
+
* @param x The x coordinate of the left edge midpoint of the first character in the world coordinate system
|
|
436
|
+
* @param y The y coordinate of the left edge midpoint of the first character in the world coordinate system
|
|
437
|
+
* @param textContent Initial text content, empty if not provided
|
|
438
|
+
* @returns The identifier of the text
|
|
439
|
+
*/
|
|
440
|
+
insertText(x: number, y: number, textContent?: string): string | undefined;
|
|
441
|
+
|
|
442
|
+
/** Update the content of the specified text
|
|
443
|
+
* @param identifier The identifier of the text, returned by insertText()
|
|
444
|
+
* @param textContent The new content of the text
|
|
445
|
+
*/
|
|
446
|
+
updateText(identifier: string, textContent: string): void;
|
|
447
|
+
|
|
448
|
+
/** Remove text focus */
|
|
449
|
+
blurText(): void;
|
|
450
|
+
```
|
|
451
|
+
5. Element query APIs (Version >=1.1.19)
|
|
452
|
+
```js
|
|
453
|
+
/** Check if there are elements in the specified scene
|
|
454
|
+
* @param scenePath Scene path, defaults to the currently focused scene
|
|
455
|
+
* @param filter Filter condition
|
|
456
|
+
* @returns Whether elements exist
|
|
457
|
+
*/
|
|
458
|
+
hasElements(
|
|
459
|
+
scenePath?: string,
|
|
460
|
+
filter?: (toolsType: EToolsKey) => boolean,
|
|
461
|
+
): boolean;
|
|
462
|
+
|
|
463
|
+
/** Get all elements in the specified scene
|
|
464
|
+
* @param scenePath Scene path, defaults to the currently focused scene
|
|
465
|
+
* @param filter Filter condition
|
|
466
|
+
* @returns All elements
|
|
467
|
+
*/
|
|
468
|
+
getElements(
|
|
469
|
+
scenePath?: string,
|
|
470
|
+
filter?: (toolsType: EToolsKey) => boolean,
|
|
471
|
+
): BaseCollectorReducerAction[];
|
|
472
|
+
```
|
|
473
|
+
6. Minimap function (Version >=1.1.6)
|
|
426
474
|
```js
|
|
427
475
|
/** Create a minimap
|
|
428
476
|
* @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
|
|
@@ -433,7 +481,7 @@ The following interfaces are involved:
|
|
|
433
481
|
destroyMiniMap(viewId: string): Promise<void>;
|
|
434
482
|
```
|
|
435
483
|

|
|
436
|
-
|
|
484
|
+
7. Filter Elements (Version >=1.1.6)
|
|
437
485
|
`js
|
|
438
486
|
/** Filter Elements
|
|
439
487
|
* @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
|
|
@@ -451,7 +499,15 @@ The following interfaces are involved:
|
|
|
451
499
|
cancelFilterRender(viewId: string, isSync?:boolean): void;
|
|
452
500
|
`
|
|
453
501
|

|
|
454
|
-
|
|
502
|
+
8. Set view local scene path change (Version >=1.1.27)
|
|
503
|
+
```js
|
|
504
|
+
/** Set the local scene path change for the whiteboard view
|
|
505
|
+
* @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
|
|
506
|
+
* @param scenePath The scene path to set
|
|
507
|
+
*/
|
|
508
|
+
setViewLocalScenePathChange(viewId: string, scenePath: string): Promise<void>;
|
|
509
|
+
```
|
|
510
|
+
<!-- 9. Handwriting graphics automatic association function: 'autoDraw' (version >=1.1.7)
|
|
455
511
|
```js
|
|
456
512
|
export type AutoDrawOptions = {
|
|
457
513
|
/** Automatically associate rest api addresses */
|
|
@@ -487,6 +543,35 @@ The following interfaces are involved:
|
|
|
487
543
|
extras?: ExtrasOptions;
|
|
488
544
|
}
|
|
489
545
|
```
|
|
546
|
+
|
|
547
|
+
Extended configuration items (`ExtrasOptions`):
|
|
548
|
+
```js
|
|
549
|
+
export type ExtrasOptions = {
|
|
550
|
+
/** Use simple mode, default false (Version >=1.1.22) */
|
|
551
|
+
useSimple?: boolean;
|
|
552
|
+
/** Text editor configuration */
|
|
553
|
+
textEditor?: {
|
|
554
|
+
/** Whether to show float bar */
|
|
555
|
+
showFloatBar?: boolean;
|
|
556
|
+
/** Whether can switch by selector tool */
|
|
557
|
+
canSelectorSwitch?: boolean;
|
|
558
|
+
/** Whether right boundary auto wrap */
|
|
559
|
+
rightBoundBreak?: boolean;
|
|
560
|
+
/** Extended font list (Version >=1.1.22) */
|
|
561
|
+
extendFontFaces?: { fontFamily: string; src: string }[];
|
|
562
|
+
/** Font loading timeout, unit: milliseconds */
|
|
563
|
+
loadFontFacesTimeout?: number;
|
|
564
|
+
};
|
|
565
|
+
/** Undo redo configuration */
|
|
566
|
+
undoRedo?: {
|
|
567
|
+
/** Whether to enable global undo redo, default false (Version >=1.1.27) */
|
|
568
|
+
enableGlobal?: boolean;
|
|
569
|
+
/** Maximum stack length for undo redo, default 20 */
|
|
570
|
+
maxStackLength?: number;
|
|
571
|
+
};
|
|
572
|
+
// ... other configuration items
|
|
573
|
+
};
|
|
574
|
+
```
|
|
490
575
|
- `cursorAdapter? : CursorAdapter`; This parameter is optional. In single whiteboard mode, customize the mouse style.
|
|
491
576
|
- `logger?: Logger`; This parameter is optional. Configure the log printer object. The default output is on the local console. If logs need to be uploaded to the specified server, you need to manually configure the configuration.
|
|
492
577
|
> If you need to upload the log to the whiteboard log server, configure the `room.logger` to this item。
|
package/cdn/cdn.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r="/fullWorker-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r="/fullWorker-DCfVcI.js",e="/subWorker-DtUO-T.js";exports.fullWorkerUrl=r;exports.subWorkerUrl=e;
|
|
@@ -396,7 +396,7 @@ _inherits(l,_r$default22);return _createClass(l,[{key:"texture",get:function get
|
|
|
396
396
|
h=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
|
|
397
397
|
n&&(h=="offset"||h=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
|
|
398
398
|
s&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||// Skip index properties.
|
|
399
|
-
AT(h,f)))&&l.push(h);return l;}var th=RT,bT=Object.prototype;function DT(i){var e=i&&i.constructor,t=typeof e=="function"&&e.prototype||bT;return i===t;}var vl=DT;function NT(i,e){return function(t){return i(e(t));};}var eh=NT,BT=eh,WT=BT(Object.keys,Object),FT=WT,UT=vl,YT=FT,XT=Object.prototype,zT=XT.hasOwnProperty;function $T(i){if(!UT(i))return YT(i);var e=[];for(var t in Object(i))zT.call(i,t)&&t!="constructor"&&e.push(t);return e;}var jT=$T,GT=ju,kT=qu;function HT(i){return i!=null&&kT(i.length)&&!GT(i);}var gl=HT,KT=th,VT=jT,ZT=gl;function JT(i){return ZT(i)?KT(i):VT(i);}var ml=JT,QT=Po,qT=ml;function _T(i,e){return i&&QT(e,qT(e),i);}var tC=_T;function eC(i){var e=[];if(i!=null)for(var t in Object(i))e.push(t);return e;}var rC=eC,nC=Qi,iC=vl,sC=rC,oC=Object.prototype,aC=oC.hasOwnProperty;function lC(i){if(!nC(i))return sC(i);var e=iC(i),t=[];for(var r in i)r=="constructor"&&(e||!aC.call(i,r))||t.push(r);return t;}var fC=lC,cC=th,uC=fC,hC=gl;function dC(i){return hC(i)?cC(i,!0):uC(i);}var yl=dC,pC=Po,vC=yl;function gC(i,e){return i&&pC(e,vC(e),i);}var mC=gC,ro={exports:{}};ro.exports;(function(i,e){var t=_r,r=e&&!e.nodeType&&e,n=r&&!0&&i&&!i.nodeType&&i,s=n&&n.exports===r,c=s?t.Buffer:void 0,l=c?c.allocUnsafe:void 0;function f(h,m){if(m)return h.slice();var u=h.length,y=l?l(u):new h.constructor(u);return h.copy(y),y;}i.exports=f;})(ro,ro.exports);var yC=ro.exports;function PC(i,e){var t=-1,r=i.length;for(e||(e=Array(r));++t<r;)e[t]=i[t];return e;}var SC=PC;function xC(i,e){for(var t=-1,r=i==null?0:i.length,n=0,s=[];++t<r;){var c=i[t];e(c,t,i)&&(s[n++]=c);}return s;}var rh=xC;function TC(){return[];}var nh=TC,CC=rh,IC=nh,OC=Object.prototype,wC=OC.propertyIsEnumerable,qc=Object.getOwnPropertySymbols,AC=qc?function(i){return i==null?[]:(i=Object(i),CC(qc(i),function(e){return wC.call(i,e);}));}:IC,Pl=AC,EC=Po,MC=Pl;function LC(i,e){return EC(i,MC(i),e);}var RC=LC;function bC(i,e){for(var t=-1,r=e.length,n=i.length;++t<r;)i[n+t]=e[t];return i;}var Sl=bC,DC=eh,NC=DC(Object.getPrototypeOf,Object),ih=NC,BC=Sl,WC=ih,FC=Pl,UC=nh,YC=Object.getOwnPropertySymbols,XC=YC?function(i){for(var e=[];i;)BC(e,FC(i)),i=WC(i);return e;}:UC,sh=XC,zC=Po,$C=sh;function jC(i,e){return zC(i,$C(i),e);}var GC=jC,kC=Sl,HC=qi;function KC(i,e,t){var r=e(i);return HC(i)?r:kC(r,t(i));}var oh=KC,VC=oh,ZC=Pl,JC=ml;function QC(i){return VC(i,JC,ZC);}var ah=QC,qC=oh,_C=sh,tI=yl;function eI(i){return qC(i,tI,_C);}var rI=eI,nI=jn,iI=_r,sI=nI(iI,"DataView"),oI=sI,aI=jn,lI=_r,fI=aI(lI,"Promise"),cI=fI,uI=jn,hI=_r,dI=uI(hI,"Set"),lh=dI,pI=jn,vI=_r,gI=pI(vI,"WeakMap"),mI=gI,nl=oI,il=hl,sl=cI,ol=lh,al=mI,fh=Si,Oi=Gu,_c="[object Map]",yI="[object Object]",tu="[object Promise]",eu="[object Set]",ru="[object WeakMap]",nu="[object DataView]",PI=Oi(nl),SI=Oi(il),xI=Oi(sl),TI=Oi(ol),CI=Oi(al),zn=fh;(nl&&zn(new nl(new ArrayBuffer(1)))!=nu||il&&zn(new il())!=_c||sl&&zn(sl.resolve())!=tu||ol&&zn(new ol())!=eu||al&&zn(new al())!=ru)&&(zn=function zn(i){var e=fh(i),t=e==yI?i.constructor:void 0,r=t?Oi(t):"";if(r)switch(r){case PI:return nu;case SI:return _c;case xI:return tu;case TI:return eu;case CI:return ru;}return e;});var xo=zn,II=Object.prototype,OI=II.hasOwnProperty;function wI(i){var e=i.length,t=new i.constructor(e);return e&&typeof i[0]=="string"&&OI.call(i,"index")&&(t.index=i.index,t.input=i.input),t;}var AI=wI,EI=_r,MI=EI.Uint8Array,ch=MI,iu=ch;function LI(i){var e=new i.constructor(i.byteLength);return new iu(e).set(new iu(i)),e;}var xl=LI,RI=xl;function bI(i,e){var t=e?RI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.byteLength);}var DI=bI,NI=/\w*$/;function BI(i){var e=new i.constructor(i.source,NI.exec(i));return e.lastIndex=i.lastIndex,e;}var WI=BI,su=Ji,ou=su?su.prototype:void 0,au=ou?ou.valueOf:void 0;function FI(i){return au?Object(au.call(i)):{};}var UI=FI,YI=xl;function XI(i,e){var t=e?YI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.length);}var zI=XI,$I=xl,jI=DI,GI=WI,kI=UI,HI=zI,KI="[object Boolean]",VI="[object Date]",ZI="[object Map]",JI="[object Number]",QI="[object RegExp]",qI="[object Set]",_I="[object String]",tO="[object Symbol]",eO="[object ArrayBuffer]",rO="[object DataView]",nO="[object Float32Array]",iO="[object Float64Array]",sO="[object Int8Array]",oO="[object Int16Array]",aO="[object Int32Array]",lO="[object Uint8Array]",fO="[object Uint8ClampedArray]",cO="[object Uint16Array]",uO="[object Uint32Array]";function hO(i,e,t){var r=i.constructor;switch(e){case eO:return $I(i);case KI:case VI:return new r(+i);case rO:return jI(i,t);case nO:case iO:case sO:case oO:case aO:case lO:case fO:case cO:case uO:return HI(i,t);case ZI:return new r();case JI:case _I:return new r(i);case QI:return GI(i);case qI:return new r();case tO:return kI(i);}}var dO=hO,pO=Qi,lu=Object.create,vO=/* @__PURE__ */function(){function i(){}return function(e){if(!pO(e))return{};if(lu)return lu(e);i.prototype=e;var t=new i();return i.prototype=void 0,t;};}(),gO=vO,mO=gO,yO=ih,PO=vl;function SO(i){return typeof i.constructor=="function"&&!PO(i)?mO(yO(i)):{};}var xO=SO,TO=xo,CO=pn,IO="[object Map]";function OO(i){return CO(i)&&TO(i)==IO;}var wO=OO,AO=wO,EO=So,fu=pl,cu=fu&&fu.isMap,MO=cu?EO(cu):AO,LO=MO,RO=xo,bO=pn,DO="[object Set]";function NO(i){return bO(i)&&RO(i)==DO;}var BO=NO,WO=BO,FO=So,uu=pl,hu=uu&&uu.isSet,UO=hu?FO(hu):WO,uh=UO,YO=/* @__PURE__ */Ln(uh),XO=Hu,zO=hx,$O=Zu,jO=tC,GO=mC,kO=yC,HO=SC,KO=RC,VO=GC,ZO=ah,JO=rI,QO=xo,qO=AI,_O=dO,t2=xO,e2=qi,r2=dl,n2=LO,i2=Qi,s2=uh,o2=ml,a2=yl,l2=1,f2=2,c2=4,hh="[object Arguments]",u2="[object Array]",h2="[object Boolean]",d2="[object Date]",p2="[object Error]",dh="[object Function]",v2="[object GeneratorFunction]",g2="[object Map]",m2="[object Number]",ph="[object Object]",y2="[object RegExp]",P2="[object Set]",S2="[object String]",x2="[object Symbol]",T2="[object WeakMap]",C2="[object ArrayBuffer]",I2="[object DataView]",O2="[object Float32Array]",w2="[object Float64Array]",A2="[object Int8Array]",E2="[object Int16Array]",M2="[object Int32Array]",L2="[object Uint8Array]",R2="[object Uint8ClampedArray]",b2="[object Uint16Array]",D2="[object Uint32Array]",Ye={};Ye[hh]=Ye[u2]=Ye[C2]=Ye[I2]=Ye[h2]=Ye[d2]=Ye[O2]=Ye[w2]=Ye[A2]=Ye[E2]=Ye[M2]=Ye[g2]=Ye[m2]=Ye[ph]=Ye[y2]=Ye[P2]=Ye[S2]=Ye[x2]=Ye[L2]=Ye[R2]=Ye[b2]=Ye[D2]=!0;Ye[p2]=Ye[dh]=Ye[T2]=!1;function qs(i,e,t,r,n,s){var c,l=e&l2,f=e&f2,h=e&c2;if(t&&(c=n?t(i,r,n,s):t(i)),c!==void 0)return c;if(!i2(i))return i;var m=e2(i);if(m){if(c=qO(i),!l)return HO(i,c);}else{var u=QO(i),y=u==dh||u==v2;if(r2(i))return kO(i,l);if(u==ph||u==hh||y&&!n){if(c=f||y?{}:t2(i),!l)return f?VO(i,GO(c,i)):KO(i,jO(c,i));}else{if(!Ye[u])return n?i:{};c=_O(i,u,l);}}s||(s=new XO());var T=s.get(i);if(T)return T;s.set(i,c),s2(i)?i.forEach(function(S){c.add(qs(S,e,t,S,i,s));}):n2(i)&&i.forEach(function(S,I){c.set(I,qs(S,e,t,I,i,s));});var A=h?f?JO:ZO:f?a2:o2,C=m?void 0:A(i);return zO(C||i,function(S,I){C&&(I=S,S=i[I]),$O(c,I,qs(S,e,t,I,i,s));}),c;}var N2=qs,B2=N2,W2=1,F2=4;function U2(i){return B2(i,W2|F2);}var Y2=U2,fr=/* @__PURE__ */Ln(Y2);var vh="1.1.27-beta.7",X2="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var i=window.__netlessUA||"";i+=" ".concat(X2,"@").concat(vh),window.__netlessUA=i;}var vr={useWorker:"auto",useSimple:!1,syncOpt:{interval:300,smoothSync:!0},cursor:{enable:!0,expirationTime:5e3,moveDelayTime:100},bufferSize:{full:2e4,sub:600},bezier:{enable:!0,maxDrawCount:1/0,combineUnitTime:300},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920,maxCombineTime:500},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1,extendFontFaces:[],loadFontFacesTimeout:1e4},longDottedStroke:{lineCap:"round",segment:1,gap:2},dottedStroke:{lineCap:"round",segment:1,gap:2},normalStroke:{lineCap:"round"},undoRedo:{enableGlobal:!1,maxStackLength:20}};function En(i){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=i.length;if(t<2)return"";var r=i[0],n=i[1];if(t===2)return"M".concat(ci(r),"L").concat(ci(n));var s="";for(var c=2,l=t-1;c<l;c++)r=i[c],n=i[c+1],s+=ui(r,n);return e?"M".concat(ui(i[0],i[1]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2]),"T").concat(s).concat(ui(i[t-1],i[0])).concat(ui(i[0],i[1]),"Z"):"M".concat(ci(i[0]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2])).concat(i.length>3?"T":"").concat(s,"L").concat(ci(i[t-1]));}var Mr=/*#__PURE__*/function(){function Mr(e){_classCallCheck(this,Mr);dt(this,"maxImageWidth",vr.pencilEraser.maxImageWidth);dt(this,"maxImageHeight",vr.pencilEraser.maxImageHeight);dt(this,"syncUnitTime",vr.syncOpt.interval);dt(this,"vNodes");dt(this,"drawLayer");dt(this,"fullLayer");dt(this,"workId");dt(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,s=e.workId,c=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=s,this.syncUnitTime=c.syncUnitTime||this.syncUnitTime;}return _createClass(Mr,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var s=r[r.length-1];return(n&&!s||n&&s&&!n.isNear(s,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,s,c;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((s=this.vNodes)==null?void 0:s.get(t))||void 0;t&&r&&(r.opt=e,(c=this.vNodes)==null||c.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,s;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var c=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(c.length!==1)return;var l=c[0],f=e.pos,h=e.zIndex,m=e.scale,u=e.angle,y=e.translate,T={};er(h)&&(T.zIndex=h),f&&(T.pos=[f[0],f[1]]),m&&(T.scale=m),u&&(T.rotate=u),y&&(T.translate=y),l.attr(T);var A=l==null?void 0:l.getBoundingClientRect();return A&&(t=Zt(t,{x:Math.floor(A.x-Mr.SafeBorderPadding),y:Math.floor(A.y-Mr.SafeBorderPadding),w:Math.floor(A.width+Mr.SafeBorderPadding*2),h:Math.floor(A.height+Mr.SafeBorderPadding*2)})),(s=this.vNodes)==null||s.setInfo(r,{rect:t,centerPos:f}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,s=e.pos,c=e.layer,l=c.parent;if(t)try{var h=(c.renderer.glRenderer||c.renderer.canvasRenderer).options.displayRatio,m=r.getBoundingClientRect(),u=m.width*h*c.worldScaling[0],y=m.height*h*c.worldScaling[1];var T=1;(u>this.maxImageWidth||y>this.maxImageHeight)&&(T=Math.min(this.maxImageWidth/u,this.maxImageHeight/y));var A=c.getAttribute("scale");A=[A[0]*T,A[1]*T];var C=c.parent.parent,S=c.getAttribute("translate"),_I30=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),C,{offscreen:l.offscreen,width:l.width,height:l.height,contextType:"2d",autoRender:!1,bufferSize:500},A,S),_d30=r.cloneNode(!0);if(!n||!n.length)return;this.addEraserlines(_d30,n,s,!1),_I30.appendChild(_d30);var g=_I30.parent;g.render();var p=_I30.renderer.canvasRenderer,x=p.context;if(!x)return;var E=p.options.displayRatio,R=_d30.getBoundingClientRect(),D={x:R.x,y:R.y,w:R.width,h:R.height},U={x:0,y:0,w:C.width,h:C.height};if(Zi(D,U)===Tr.outside){Lr(_d30,g),C.removeChild(g),this.isDelete=!0;return;}var W=fr(D);W.x=Math.floor(Math.max(D.x,0)),W.y=Math.floor(Math.max(D.y,0)),W.w=Math.min(D.x+D.w,C.width)-W.x,W.h=Math.min(D.y+D.h,C.height)-W.y;var Y=this.getGroupRect(W,E),B=Y.x,N=Y.y,G=Y.w,J=Y.h;var tt=x.getImageData(B,N,G,J);if(this.isTransparentRectByCanvas(tt)){Lr(_d30,g),C.removeChild(g),this.isDelete=!0,tt=null;return;}Lr(r,l);var ut=this.createSpriteNode({imageData:tt,safariRect:W,originRect:D,worldScaling:_I30.worldScaling});ut&&r.append(ut),Lr(_d30,g),C.removeChild(g),l.deleteTexture(tt),tt=null;}catch(f){console.error("[BaseShapeTool] drawEraserlines error:",f);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,s){var c=r.width,l=r.height,f="bitMap-".concat(e),h=t.layer(f,r),m=new mr({anchor:[0.5,0.5],pos:[c*0.5,l*0.5],size:[c,l],name:"viewport",id:e});return m.setAttribute("scale",n),m.setAttribute("translate",s),h.append(m),m;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),s=Math.floor(e.w*t),c=Math.floor(e.h*t);return{x:r,y:n,w:s,h:c};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var c=s.thickness,l=s.op;var _iterator14=_createForOfIteratorHelper(l),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var f=_step14.value;var h=f.map(function(A,C){return C%2?A-r[1]:A-r[0];}),m=this.computEraserPoints(h,c),u=En(m,!0),y={pos:[0,0],d:u,fillColor:"rgba(0,0,0,1)"},T=new Mn(y);T.addEventListener("beforerender",function(_ref164){var A=_ref164.detail;var C=A.context;n?C.blendFuncSeparate(C.ZERO,C.ZERO,C.ZERO,C.ZERO):C.globalCompositeOperation="destination-out";}),T.addEventListener("afterrender",function(_ref165){var A=_ref165.detail;var C=A.context;n?C.blendFuncSeparate(C.SRC_ALPHA,C.ONE_MINUS_SRC_ALPHA,C.ONE,C.ONE_MINUS_SRC_ALPHA):C.globalCompositeOperation="source-over";}),e.append(T);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,s=e.originRect;var c;if(typeof OffscreenCanvas=="function"){c=new OffscreenCanvas(t.width,t.height);var m=c.getContext("2d");m&&m.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){c=document.createElement("canvas"),c.width=t.width,c.height=t.height;var _m4=c.getContext("2d");_m4&&_m4.putImageData(t,0,0);}if(!c)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var l=[Math.floor(s.w/r[0]),Math.floor(s.h/r[1])],f=[Math.floor((n.x-s.x)/r[0]),Math.floor((n.y-s.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],h={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:l,texture:c,textureRect:f};return new Yu(h);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Jt(e[0],e[1]);return Jt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var s,c;for(var l=0;l<e.length;l+=2){var f=new Jt(e[l],e[l+1]);var h=void 0;if(l==e.length-2){var m=new Jt(e[l-2],e[l-1]);h=pt.Sub(f,m).uni(),s=f;}else{l===0&&(c=f);var _m5=new Jt(e[l+2],e[l+3]);h=pt.Sub(_m5,f).uni();}if(h){var _m6=pt.Per(h).mul(t);r.push(Jt.Sub(f,_m6)),n.push(Jt.Add(f,_m6));}}if(s&&c){var _l3=Jt.GetSemicircleStroke(s,r[r.length-1],-1,8),_f4=Jt.GetSemicircleStroke(c,n[0],-1,8);return r.concat(_l3,n.reverse(),_f4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var s;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var c=_step15.value;r?iE(r,c,e):(c.remove(),_pr(c,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(s=this.drawLayer)==null||s.getElementsByName(t).forEach(function(l){var f;l.remove(),_pr(l,(f=_this61.drawLayer)==null?void 0:f.parent);}):this.fullLayer.getElementsByName(t).forEach(function(l){l.remove(),_pr(l,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_pr(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var d;var t=e.node,r=e.opt,n=e.vNodes,s=e.willSerializeData,c=e.targetNode,l=r.zIndex,f=r.translate,h=r.angle,m=r.originPoint,u=r.scenePoint,y=r.scale,T=r.pointMap,A=r.thickness;var C;var S=c&&fr(c)||n.get(t.name);if(!S)return;er(l)&&(t.setAttribute("zIndex",l),S.opt.zIndex=l);var I=t.parent;if(I){if(m&&y&&c){var g=[S.op[0],S.op[1]];Ll(S.op,u,y,f);var p=[S.op[0],S.op[1]],x=[p[0]-g[0],p[1]-g[1]];if(S.centerPos=[S.centerPos[0]+x[0],S.centerPos[1]+x[1]],S.opt.translate=void 0,S.opt.scale=void 0,S.opt.eraserlines)for(var E=0;E<S.opt.eraserlines.length;E++){var _S$opt$eraserlines$E=S.opt.eraserlines[E],R=_S$opt$eraserlines$E.op,D=_S$opt$eraserlines$E.thickness;S.opt.eraserlines[E].thickness=Math.round(D*Math.max(y[0],y[1]));for(var U=0;U<R.length;U++)Rl(R[U],u,y,f);}}else if(f){if(t.setAttribute("translate",f),S.opt.translate=f,c){var _g6=[f[0]*I.worldScaling[0],f[1]*I.worldScaling[1]];C=Vi(S.rect,_g6),S.rect=C;}else{var _g7=Mr.getRectFromLayer(I,t.name);S.rect=_g7||S.rect;}}else if(er(h))if(t.setAttribute("rotate",h),S.opt.rotate=h,c)C=Hh(S.rect,h),S.rect=C;else{var _g8=Mr.getRectFromLayer(I,t.name);S.rect=_g8||S.rect;}if(T){var _g9=T.get(t.name);if(_g9)for(var _p10=0,_x37=0;_p10<S.op.length;_p10+=3,_x37++)S.op[_p10]=_g9[_x37][0],S.op[_p10+1]=_g9[_x37][1];}if(A&&(d=S==null?void 0:S.opt)!=null&&d.thickness&&(S.opt.thickness=A),s&&!(m&&y&&c)){if(f){var _g10=S.op.map(function(p,x){var E=x%3;return E===0?p+f[0]:E===1?p+f[1]:p;});if(S.op=_g10,S.centerPos=[S.centerPos[0]+f[0],S.centerPos[1]+f[1]],S!=null&&S.opt&&(S.opt.translate=void 0),S.opt.eraserlines)for(var _p11=0;_p11<S.opt.eraserlines.length;_p11++){var _x38=S.opt.eraserlines[_p11].op;for(var _E7=0;_E7<_x38.length;_E7++){var _R3=_x38[_E7].map(function(D,U){return U%2?D+f[1]:D+f[0];});S.opt.eraserlines[_p11].op[_E7]=_R3;}}}else if(er(h)){var _g11=S.op;if(JA(_g11,S.centerPos,h),S.op=_g11,S!=null&&S.opt&&(S.opt.rotate=void 0),S.opt.eraserlines)for(var _p12=0;_p12<S.opt.eraserlines.length;_p12++){var _x39=S.opt.eraserlines[_p12].op;for(var _E8=0;_E8<_x39.length;_E8++)QA(_x39[_E8],S.centerPos,h);}}}S&&n.setInfo(t.name,S);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Mr.SafeBorderPadding),y:Math.floor(n.y-Mr.SafeBorderPadding),w:Math.floor(n.width+Mr.SafeBorderPadding*2),h:Math.floor(n.height+Mr.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,s=e.updateOpt,c=e.willSerializeData;return!!(c&&(s.angle||s.translate)||s.thickness&&r.thickness&&r.thickness!==s.thickness||s.strokeType&&r.strokeType&&r.strokeType!==s.strokeType||s.originPoint&&s.scenePoint&&s.scale||s.pointMap&&s.pointMap.has(n.name)||t===Tt.Text&&(s.fontSize||s.translate||s.textInfos&&s.textInfos.get(n.name))||t===Tt.Image&&(s.angle||s.translate||s.scale||s.strokeColor&&r.type===po.Iconify)||t===s.toolsType&&s.willRefresh||r.eraserlines&&r.eraserlines.length&&(s.strokeColor||s.fillColor));}}]);}();dt(Mr,"SafeBorderPadding",10);var $t=Mr;var Tl=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var Cl={exports:{}};Cl.exports;(function(i){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",s={};function c(f,h){if(!s[f]){s[f]={};for(var m=0;m<f.length;m++)s[f][f.charAt(m)]=m;}return s[f][h];}var l={compressToBase64:function compressToBase64(f){if(f==null)return"";var h=l._compress(f,6,function(m){return r.charAt(m);});switch(h.length%4){default:case 0:return h;case 1:return h+"===";case 2:return h+"==";case 3:return h+"=";}},decompressFromBase64:function decompressFromBase64(f){return f==null?"":f==""?null:l._decompress(f.length,32,function(h){return c(r,f.charAt(h));});},compressToUTF16:function compressToUTF16(f){return f==null?"":l._compress(f,15,function(h){return t(h+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(f){return f==null?"":f==""?null:l._decompress(f.length,16384,function(h){return f.charCodeAt(h)-32;});},//compress into uint8array (UCS-2 big endian format)
|
|
399
|
+
AT(h,f)))&&l.push(h);return l;}var th=RT,bT=Object.prototype;function DT(i){var e=i&&i.constructor,t=typeof e=="function"&&e.prototype||bT;return i===t;}var vl=DT;function NT(i,e){return function(t){return i(e(t));};}var eh=NT,BT=eh,WT=BT(Object.keys,Object),FT=WT,UT=vl,YT=FT,XT=Object.prototype,zT=XT.hasOwnProperty;function $T(i){if(!UT(i))return YT(i);var e=[];for(var t in Object(i))zT.call(i,t)&&t!="constructor"&&e.push(t);return e;}var jT=$T,GT=ju,kT=qu;function HT(i){return i!=null&&kT(i.length)&&!GT(i);}var gl=HT,KT=th,VT=jT,ZT=gl;function JT(i){return ZT(i)?KT(i):VT(i);}var ml=JT,QT=Po,qT=ml;function _T(i,e){return i&&QT(e,qT(e),i);}var tC=_T;function eC(i){var e=[];if(i!=null)for(var t in Object(i))e.push(t);return e;}var rC=eC,nC=Qi,iC=vl,sC=rC,oC=Object.prototype,aC=oC.hasOwnProperty;function lC(i){if(!nC(i))return sC(i);var e=iC(i),t=[];for(var r in i)r=="constructor"&&(e||!aC.call(i,r))||t.push(r);return t;}var fC=lC,cC=th,uC=fC,hC=gl;function dC(i){return hC(i)?cC(i,!0):uC(i);}var yl=dC,pC=Po,vC=yl;function gC(i,e){return i&&pC(e,vC(e),i);}var mC=gC,ro={exports:{}};ro.exports;(function(i,e){var t=_r,r=e&&!e.nodeType&&e,n=r&&!0&&i&&!i.nodeType&&i,s=n&&n.exports===r,c=s?t.Buffer:void 0,l=c?c.allocUnsafe:void 0;function f(h,m){if(m)return h.slice();var u=h.length,y=l?l(u):new h.constructor(u);return h.copy(y),y;}i.exports=f;})(ro,ro.exports);var yC=ro.exports;function PC(i,e){var t=-1,r=i.length;for(e||(e=Array(r));++t<r;)e[t]=i[t];return e;}var SC=PC;function xC(i,e){for(var t=-1,r=i==null?0:i.length,n=0,s=[];++t<r;){var c=i[t];e(c,t,i)&&(s[n++]=c);}return s;}var rh=xC;function TC(){return[];}var nh=TC,CC=rh,IC=nh,OC=Object.prototype,wC=OC.propertyIsEnumerable,qc=Object.getOwnPropertySymbols,AC=qc?function(i){return i==null?[]:(i=Object(i),CC(qc(i),function(e){return wC.call(i,e);}));}:IC,Pl=AC,EC=Po,MC=Pl;function LC(i,e){return EC(i,MC(i),e);}var RC=LC;function bC(i,e){for(var t=-1,r=e.length,n=i.length;++t<r;)i[n+t]=e[t];return i;}var Sl=bC,DC=eh,NC=DC(Object.getPrototypeOf,Object),ih=NC,BC=Sl,WC=ih,FC=Pl,UC=nh,YC=Object.getOwnPropertySymbols,XC=YC?function(i){for(var e=[];i;)BC(e,FC(i)),i=WC(i);return e;}:UC,sh=XC,zC=Po,$C=sh;function jC(i,e){return zC(i,$C(i),e);}var GC=jC,kC=Sl,HC=qi;function KC(i,e,t){var r=e(i);return HC(i)?r:kC(r,t(i));}var oh=KC,VC=oh,ZC=Pl,JC=ml;function QC(i){return VC(i,JC,ZC);}var ah=QC,qC=oh,_C=sh,tI=yl;function eI(i){return qC(i,tI,_C);}var rI=eI,nI=jn,iI=_r,sI=nI(iI,"DataView"),oI=sI,aI=jn,lI=_r,fI=aI(lI,"Promise"),cI=fI,uI=jn,hI=_r,dI=uI(hI,"Set"),lh=dI,pI=jn,vI=_r,gI=pI(vI,"WeakMap"),mI=gI,nl=oI,il=hl,sl=cI,ol=lh,al=mI,fh=Si,Oi=Gu,_c="[object Map]",yI="[object Object]",tu="[object Promise]",eu="[object Set]",ru="[object WeakMap]",nu="[object DataView]",PI=Oi(nl),SI=Oi(il),xI=Oi(sl),TI=Oi(ol),CI=Oi(al),zn=fh;(nl&&zn(new nl(new ArrayBuffer(1)))!=nu||il&&zn(new il())!=_c||sl&&zn(sl.resolve())!=tu||ol&&zn(new ol())!=eu||al&&zn(new al())!=ru)&&(zn=function zn(i){var e=fh(i),t=e==yI?i.constructor:void 0,r=t?Oi(t):"";if(r)switch(r){case PI:return nu;case SI:return _c;case xI:return tu;case TI:return eu;case CI:return ru;}return e;});var xo=zn,II=Object.prototype,OI=II.hasOwnProperty;function wI(i){var e=i.length,t=new i.constructor(e);return e&&typeof i[0]=="string"&&OI.call(i,"index")&&(t.index=i.index,t.input=i.input),t;}var AI=wI,EI=_r,MI=EI.Uint8Array,ch=MI,iu=ch;function LI(i){var e=new i.constructor(i.byteLength);return new iu(e).set(new iu(i)),e;}var xl=LI,RI=xl;function bI(i,e){var t=e?RI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.byteLength);}var DI=bI,NI=/\w*$/;function BI(i){var e=new i.constructor(i.source,NI.exec(i));return e.lastIndex=i.lastIndex,e;}var WI=BI,su=Ji,ou=su?su.prototype:void 0,au=ou?ou.valueOf:void 0;function FI(i){return au?Object(au.call(i)):{};}var UI=FI,YI=xl;function XI(i,e){var t=e?YI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.length);}var zI=XI,$I=xl,jI=DI,GI=WI,kI=UI,HI=zI,KI="[object Boolean]",VI="[object Date]",ZI="[object Map]",JI="[object Number]",QI="[object RegExp]",qI="[object Set]",_I="[object String]",tO="[object Symbol]",eO="[object ArrayBuffer]",rO="[object DataView]",nO="[object Float32Array]",iO="[object Float64Array]",sO="[object Int8Array]",oO="[object Int16Array]",aO="[object Int32Array]",lO="[object Uint8Array]",fO="[object Uint8ClampedArray]",cO="[object Uint16Array]",uO="[object Uint32Array]";function hO(i,e,t){var r=i.constructor;switch(e){case eO:return $I(i);case KI:case VI:return new r(+i);case rO:return jI(i,t);case nO:case iO:case sO:case oO:case aO:case lO:case fO:case cO:case uO:return HI(i,t);case ZI:return new r();case JI:case _I:return new r(i);case QI:return GI(i);case qI:return new r();case tO:return kI(i);}}var dO=hO,pO=Qi,lu=Object.create,vO=/* @__PURE__ */function(){function i(){}return function(e){if(!pO(e))return{};if(lu)return lu(e);i.prototype=e;var t=new i();return i.prototype=void 0,t;};}(),gO=vO,mO=gO,yO=ih,PO=vl;function SO(i){return typeof i.constructor=="function"&&!PO(i)?mO(yO(i)):{};}var xO=SO,TO=xo,CO=pn,IO="[object Map]";function OO(i){return CO(i)&&TO(i)==IO;}var wO=OO,AO=wO,EO=So,fu=pl,cu=fu&&fu.isMap,MO=cu?EO(cu):AO,LO=MO,RO=xo,bO=pn,DO="[object Set]";function NO(i){return bO(i)&&RO(i)==DO;}var BO=NO,WO=BO,FO=So,uu=pl,hu=uu&&uu.isSet,UO=hu?FO(hu):WO,uh=UO,YO=/* @__PURE__ */Ln(uh),XO=Hu,zO=hx,$O=Zu,jO=tC,GO=mC,kO=yC,HO=SC,KO=RC,VO=GC,ZO=ah,JO=rI,QO=xo,qO=AI,_O=dO,t2=xO,e2=qi,r2=dl,n2=LO,i2=Qi,s2=uh,o2=ml,a2=yl,l2=1,f2=2,c2=4,hh="[object Arguments]",u2="[object Array]",h2="[object Boolean]",d2="[object Date]",p2="[object Error]",dh="[object Function]",v2="[object GeneratorFunction]",g2="[object Map]",m2="[object Number]",ph="[object Object]",y2="[object RegExp]",P2="[object Set]",S2="[object String]",x2="[object Symbol]",T2="[object WeakMap]",C2="[object ArrayBuffer]",I2="[object DataView]",O2="[object Float32Array]",w2="[object Float64Array]",A2="[object Int8Array]",E2="[object Int16Array]",M2="[object Int32Array]",L2="[object Uint8Array]",R2="[object Uint8ClampedArray]",b2="[object Uint16Array]",D2="[object Uint32Array]",Ye={};Ye[hh]=Ye[u2]=Ye[C2]=Ye[I2]=Ye[h2]=Ye[d2]=Ye[O2]=Ye[w2]=Ye[A2]=Ye[E2]=Ye[M2]=Ye[g2]=Ye[m2]=Ye[ph]=Ye[y2]=Ye[P2]=Ye[S2]=Ye[x2]=Ye[L2]=Ye[R2]=Ye[b2]=Ye[D2]=!0;Ye[p2]=Ye[dh]=Ye[T2]=!1;function qs(i,e,t,r,n,s){var c,l=e&l2,f=e&f2,h=e&c2;if(t&&(c=n?t(i,r,n,s):t(i)),c!==void 0)return c;if(!i2(i))return i;var m=e2(i);if(m){if(c=qO(i),!l)return HO(i,c);}else{var u=QO(i),y=u==dh||u==v2;if(r2(i))return kO(i,l);if(u==ph||u==hh||y&&!n){if(c=f||y?{}:t2(i),!l)return f?VO(i,GO(c,i)):KO(i,jO(c,i));}else{if(!Ye[u])return n?i:{};c=_O(i,u,l);}}s||(s=new XO());var T=s.get(i);if(T)return T;s.set(i,c),s2(i)?i.forEach(function(S){c.add(qs(S,e,t,S,i,s));}):n2(i)&&i.forEach(function(S,I){c.set(I,qs(S,e,t,I,i,s));});var A=h?f?JO:ZO:f?a2:o2,C=m?void 0:A(i);return zO(C||i,function(S,I){C&&(I=S,S=i[I]),$O(c,I,qs(S,e,t,I,i,s));}),c;}var N2=qs,B2=N2,W2=1,F2=4;function U2(i){return B2(i,W2|F2);}var Y2=U2,fr=/* @__PURE__ */Ln(Y2);var vh="1.1.27",X2="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var i=window.__netlessUA||"";i+=" ".concat(X2,"@").concat(vh),window.__netlessUA=i;}var vr={useWorker:"auto",useSimple:!1,syncOpt:{interval:300,smoothSync:!0},cursor:{enable:!0,expirationTime:5e3,moveDelayTime:100},bufferSize:{full:2e4,sub:600},bezier:{enable:!0,maxDrawCount:1/0,combineUnitTime:300},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920,maxCombineTime:500},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1,extendFontFaces:[],loadFontFacesTimeout:1e4},longDottedStroke:{lineCap:"round",segment:1,gap:2},dottedStroke:{lineCap:"round",segment:1,gap:2},normalStroke:{lineCap:"round"},undoRedo:{enableGlobal:!1,maxStackLength:20}};function En(i){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=i.length;if(t<2)return"";var r=i[0],n=i[1];if(t===2)return"M".concat(ci(r),"L").concat(ci(n));var s="";for(var c=2,l=t-1;c<l;c++)r=i[c],n=i[c+1],s+=ui(r,n);return e?"M".concat(ui(i[0],i[1]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2]),"T").concat(s).concat(ui(i[t-1],i[0])).concat(ui(i[0],i[1]),"Z"):"M".concat(ci(i[0]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2])).concat(i.length>3?"T":"").concat(s,"L").concat(ci(i[t-1]));}var Mr=/*#__PURE__*/function(){function Mr(e){_classCallCheck(this,Mr);dt(this,"maxImageWidth",vr.pencilEraser.maxImageWidth);dt(this,"maxImageHeight",vr.pencilEraser.maxImageHeight);dt(this,"syncUnitTime",vr.syncOpt.interval);dt(this,"vNodes");dt(this,"drawLayer");dt(this,"fullLayer");dt(this,"workId");dt(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,s=e.workId,c=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=s,this.syncUnitTime=c.syncUnitTime||this.syncUnitTime;}return _createClass(Mr,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var s=r[r.length-1];return(n&&!s||n&&s&&!n.isNear(s,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,s,c;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((s=this.vNodes)==null?void 0:s.get(t))||void 0;t&&r&&(r.opt=e,(c=this.vNodes)==null||c.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,s;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var c=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(c.length!==1)return;var l=c[0],f=e.pos,h=e.zIndex,m=e.scale,u=e.angle,y=e.translate,T={};er(h)&&(T.zIndex=h),f&&(T.pos=[f[0],f[1]]),m&&(T.scale=m),u&&(T.rotate=u),y&&(T.translate=y),l.attr(T);var A=l==null?void 0:l.getBoundingClientRect();return A&&(t=Zt(t,{x:Math.floor(A.x-Mr.SafeBorderPadding),y:Math.floor(A.y-Mr.SafeBorderPadding),w:Math.floor(A.width+Mr.SafeBorderPadding*2),h:Math.floor(A.height+Mr.SafeBorderPadding*2)})),(s=this.vNodes)==null||s.setInfo(r,{rect:t,centerPos:f}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,s=e.pos,c=e.layer,l=c.parent;if(t)try{var h=(c.renderer.glRenderer||c.renderer.canvasRenderer).options.displayRatio,m=r.getBoundingClientRect(),u=m.width*h*c.worldScaling[0],y=m.height*h*c.worldScaling[1];var T=1;(u>this.maxImageWidth||y>this.maxImageHeight)&&(T=Math.min(this.maxImageWidth/u,this.maxImageHeight/y));var A=c.getAttribute("scale");A=[A[0]*T,A[1]*T];var C=c.parent.parent,S=c.getAttribute("translate"),_I30=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),C,{offscreen:l.offscreen,width:l.width,height:l.height,contextType:"2d",autoRender:!1,bufferSize:500},A,S),_d30=r.cloneNode(!0);if(!n||!n.length)return;this.addEraserlines(_d30,n,s,!1),_I30.appendChild(_d30);var g=_I30.parent;g.render();var p=_I30.renderer.canvasRenderer,x=p.context;if(!x)return;var E=p.options.displayRatio,R=_d30.getBoundingClientRect(),D={x:R.x,y:R.y,w:R.width,h:R.height},U={x:0,y:0,w:C.width,h:C.height};if(Zi(D,U)===Tr.outside){Lr(_d30,g),C.removeChild(g),this.isDelete=!0;return;}var W=fr(D);W.x=Math.floor(Math.max(D.x,0)),W.y=Math.floor(Math.max(D.y,0)),W.w=Math.min(D.x+D.w,C.width)-W.x,W.h=Math.min(D.y+D.h,C.height)-W.y;var Y=this.getGroupRect(W,E),B=Y.x,N=Y.y,G=Y.w,J=Y.h;var tt=x.getImageData(B,N,G,J);if(this.isTransparentRectByCanvas(tt)){Lr(_d30,g),C.removeChild(g),this.isDelete=!0,tt=null;return;}Lr(r,l);var ut=this.createSpriteNode({imageData:tt,safariRect:W,originRect:D,worldScaling:_I30.worldScaling});ut&&r.append(ut),Lr(_d30,g),C.removeChild(g),l.deleteTexture(tt),tt=null;}catch(f){console.error("[BaseShapeTool] drawEraserlines error:",f);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,s){var c=r.width,l=r.height,f="bitMap-".concat(e),h=t.layer(f,r),m=new mr({anchor:[0.5,0.5],pos:[c*0.5,l*0.5],size:[c,l],name:"viewport",id:e});return m.setAttribute("scale",n),m.setAttribute("translate",s),h.append(m),m;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),s=Math.floor(e.w*t),c=Math.floor(e.h*t);return{x:r,y:n,w:s,h:c};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var c=s.thickness,l=s.op;var _iterator14=_createForOfIteratorHelper(l),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var f=_step14.value;var h=f.map(function(A,C){return C%2?A-r[1]:A-r[0];}),m=this.computEraserPoints(h,c),u=En(m,!0),y={pos:[0,0],d:u,fillColor:"rgba(0,0,0,1)"},T=new Mn(y);T.addEventListener("beforerender",function(_ref164){var A=_ref164.detail;var C=A.context;n?C.blendFuncSeparate(C.ZERO,C.ZERO,C.ZERO,C.ZERO):C.globalCompositeOperation="destination-out";}),T.addEventListener("afterrender",function(_ref165){var A=_ref165.detail;var C=A.context;n?C.blendFuncSeparate(C.SRC_ALPHA,C.ONE_MINUS_SRC_ALPHA,C.ONE,C.ONE_MINUS_SRC_ALPHA):C.globalCompositeOperation="source-over";}),e.append(T);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,s=e.originRect;var c;if(typeof OffscreenCanvas=="function"){c=new OffscreenCanvas(t.width,t.height);var m=c.getContext("2d");m&&m.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){c=document.createElement("canvas"),c.width=t.width,c.height=t.height;var _m4=c.getContext("2d");_m4&&_m4.putImageData(t,0,0);}if(!c)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var l=[Math.floor(s.w/r[0]),Math.floor(s.h/r[1])],f=[Math.floor((n.x-s.x)/r[0]),Math.floor((n.y-s.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],h={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:l,texture:c,textureRect:f};return new Yu(h);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Jt(e[0],e[1]);return Jt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var s,c;for(var l=0;l<e.length;l+=2){var f=new Jt(e[l],e[l+1]);var h=void 0;if(l==e.length-2){var m=new Jt(e[l-2],e[l-1]);h=pt.Sub(f,m).uni(),s=f;}else{l===0&&(c=f);var _m5=new Jt(e[l+2],e[l+3]);h=pt.Sub(_m5,f).uni();}if(h){var _m6=pt.Per(h).mul(t);r.push(Jt.Sub(f,_m6)),n.push(Jt.Add(f,_m6));}}if(s&&c){var _l3=Jt.GetSemicircleStroke(s,r[r.length-1],-1,8),_f4=Jt.GetSemicircleStroke(c,n[0],-1,8);return r.concat(_l3,n.reverse(),_f4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var s;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var c=_step15.value;r?iE(r,c,e):(c.remove(),_pr(c,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(s=this.drawLayer)==null||s.getElementsByName(t).forEach(function(l){var f;l.remove(),_pr(l,(f=_this61.drawLayer)==null?void 0:f.parent);}):this.fullLayer.getElementsByName(t).forEach(function(l){l.remove(),_pr(l,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_pr(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var d;var t=e.node,r=e.opt,n=e.vNodes,s=e.willSerializeData,c=e.targetNode,l=r.zIndex,f=r.translate,h=r.angle,m=r.originPoint,u=r.scenePoint,y=r.scale,T=r.pointMap,A=r.thickness;var C;var S=c&&fr(c)||n.get(t.name);if(!S)return;er(l)&&(t.setAttribute("zIndex",l),S.opt.zIndex=l);var I=t.parent;if(I){if(m&&y&&c){var g=[S.op[0],S.op[1]];Ll(S.op,u,y,f);var p=[S.op[0],S.op[1]],x=[p[0]-g[0],p[1]-g[1]];if(S.centerPos=[S.centerPos[0]+x[0],S.centerPos[1]+x[1]],S.opt.translate=void 0,S.opt.scale=void 0,S.opt.eraserlines)for(var E=0;E<S.opt.eraserlines.length;E++){var _S$opt$eraserlines$E=S.opt.eraserlines[E],R=_S$opt$eraserlines$E.op,D=_S$opt$eraserlines$E.thickness;S.opt.eraserlines[E].thickness=Math.round(D*Math.max(y[0],y[1]));for(var U=0;U<R.length;U++)Rl(R[U],u,y,f);}}else if(f){if(t.setAttribute("translate",f),S.opt.translate=f,c){var _g6=[f[0]*I.worldScaling[0],f[1]*I.worldScaling[1]];C=Vi(S.rect,_g6),S.rect=C;}else{var _g7=Mr.getRectFromLayer(I,t.name);S.rect=_g7||S.rect;}}else if(er(h))if(t.setAttribute("rotate",h),S.opt.rotate=h,c)C=Hh(S.rect,h),S.rect=C;else{var _g8=Mr.getRectFromLayer(I,t.name);S.rect=_g8||S.rect;}if(T){var _g9=T.get(t.name);if(_g9)for(var _p10=0,_x37=0;_p10<S.op.length;_p10+=3,_x37++)S.op[_p10]=_g9[_x37][0],S.op[_p10+1]=_g9[_x37][1];}if(A&&(d=S==null?void 0:S.opt)!=null&&d.thickness&&(S.opt.thickness=A),s&&!(m&&y&&c)){if(f){var _g10=S.op.map(function(p,x){var E=x%3;return E===0?p+f[0]:E===1?p+f[1]:p;});if(S.op=_g10,S.centerPos=[S.centerPos[0]+f[0],S.centerPos[1]+f[1]],S!=null&&S.opt&&(S.opt.translate=void 0),S.opt.eraserlines)for(var _p11=0;_p11<S.opt.eraserlines.length;_p11++){var _x38=S.opt.eraserlines[_p11].op;for(var _E7=0;_E7<_x38.length;_E7++){var _R3=_x38[_E7].map(function(D,U){return U%2?D+f[1]:D+f[0];});S.opt.eraserlines[_p11].op[_E7]=_R3;}}}else if(er(h)){var _g11=S.op;if(JA(_g11,S.centerPos,h),S.op=_g11,S!=null&&S.opt&&(S.opt.rotate=void 0),S.opt.eraserlines)for(var _p12=0;_p12<S.opt.eraserlines.length;_p12++){var _x39=S.opt.eraserlines[_p12].op;for(var _E8=0;_E8<_x39.length;_E8++)QA(_x39[_E8],S.centerPos,h);}}}S&&n.setInfo(t.name,S);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Mr.SafeBorderPadding),y:Math.floor(n.y-Mr.SafeBorderPadding),w:Math.floor(n.width+Mr.SafeBorderPadding*2),h:Math.floor(n.height+Mr.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,s=e.updateOpt,c=e.willSerializeData;return!!(c&&(s.angle||s.translate)||s.thickness&&r.thickness&&r.thickness!==s.thickness||s.strokeType&&r.strokeType&&r.strokeType!==s.strokeType||s.originPoint&&s.scenePoint&&s.scale||s.pointMap&&s.pointMap.has(n.name)||t===Tt.Text&&(s.fontSize||s.translate||s.textInfos&&s.textInfos.get(n.name))||t===Tt.Image&&(s.angle||s.translate||s.scale||s.strokeColor&&r.type===po.Iconify)||t===s.toolsType&&s.willRefresh||r.eraserlines&&r.eraserlines.length&&(s.strokeColor||s.fillColor));}}]);}();dt(Mr,"SafeBorderPadding",10);var $t=Mr;var Tl=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var Cl={exports:{}};Cl.exports;(function(i){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",s={};function c(f,h){if(!s[f]){s[f]={};for(var m=0;m<f.length;m++)s[f][f.charAt(m)]=m;}return s[f][h];}var l={compressToBase64:function compressToBase64(f){if(f==null)return"";var h=l._compress(f,6,function(m){return r.charAt(m);});switch(h.length%4){default:case 0:return h;case 1:return h+"===";case 2:return h+"==";case 3:return h+"=";}},decompressFromBase64:function decompressFromBase64(f){return f==null?"":f==""?null:l._decompress(f.length,32,function(h){return c(r,f.charAt(h));});},compressToUTF16:function compressToUTF16(f){return f==null?"":l._compress(f,15,function(h){return t(h+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(f){return f==null?"":f==""?null:l._decompress(f.length,16384,function(h){return f.charCodeAt(h)-32;});},//compress into uint8array (UCS-2 big endian format)
|
|
400
400
|
compressToUint8Array:function compressToUint8Array(f){for(var h=l.compress(f),m=new Uint8Array(h.length*2),u=0,y=h.length;u<y;u++){var T=h.charCodeAt(u);m[u*2]=T>>>8,m[u*2+1]=T%256;}return m;},//decompress from uint8array (UCS-2 big endian format)
|
|
401
401
|
decompressFromUint8Array:function decompressFromUint8Array(f){if(f==null)return l.decompress(f);for(var h=new Array(f.length/2),m=0,u=h.length;m<u;m++)h[m]=f[m*2]*256+f[m*2+1];var y=[];return h.forEach(function(T){y.push(t(T));}),l.decompress(y.join(""));},//compress into a string that is already URI encoded
|
|
402
402
|
compressToEncodedURIComponent:function compressToEncodedURIComponent(f){return f==null?"":l._compress(f,6,function(h){return n.charAt(h);});},//decompress from an output of compressToEncodedURIComponent
|
|
@@ -396,7 +396,7 @@ _inherits(l,_r$default22);return _createClass(l,[{key:"texture",get:function get
|
|
|
396
396
|
h=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
|
|
397
397
|
n&&(h=="offset"||h=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
|
|
398
398
|
s&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||// Skip index properties.
|
|
399
|
-
AT(h,f)))&&l.push(h);return l;}var th=RT,bT=Object.prototype;function DT(i){var e=i&&i.constructor,t=typeof e=="function"&&e.prototype||bT;return i===t;}var vl=DT;function NT(i,e){return function(t){return i(e(t));};}var eh=NT,BT=eh,WT=BT(Object.keys,Object),FT=WT,UT=vl,YT=FT,XT=Object.prototype,zT=XT.hasOwnProperty;function $T(i){if(!UT(i))return YT(i);var e=[];for(var t in Object(i))zT.call(i,t)&&t!="constructor"&&e.push(t);return e;}var jT=$T,GT=ju,kT=qu;function HT(i){return i!=null&&kT(i.length)&&!GT(i);}var gl=HT,KT=th,VT=jT,ZT=gl;function JT(i){return ZT(i)?KT(i):VT(i);}var ml=JT,QT=Po,qT=ml;function _T(i,e){return i&&QT(e,qT(e),i);}var tC=_T;function eC(i){var e=[];if(i!=null)for(var t in Object(i))e.push(t);return e;}var rC=eC,nC=Qi,iC=vl,sC=rC,oC=Object.prototype,aC=oC.hasOwnProperty;function lC(i){if(!nC(i))return sC(i);var e=iC(i),t=[];for(var r in i)r=="constructor"&&(e||!aC.call(i,r))||t.push(r);return t;}var fC=lC,cC=th,uC=fC,hC=gl;function dC(i){return hC(i)?cC(i,!0):uC(i);}var yl=dC,pC=Po,vC=yl;function gC(i,e){return i&&pC(e,vC(e),i);}var mC=gC,ro={exports:{}};ro.exports;(function(i,e){var t=_r,r=e&&!e.nodeType&&e,n=r&&!0&&i&&!i.nodeType&&i,s=n&&n.exports===r,c=s?t.Buffer:void 0,l=c?c.allocUnsafe:void 0;function f(h,m){if(m)return h.slice();var u=h.length,y=l?l(u):new h.constructor(u);return h.copy(y),y;}i.exports=f;})(ro,ro.exports);var yC=ro.exports;function PC(i,e){var t=-1,r=i.length;for(e||(e=Array(r));++t<r;)e[t]=i[t];return e;}var SC=PC;function xC(i,e){for(var t=-1,r=i==null?0:i.length,n=0,s=[];++t<r;){var c=i[t];e(c,t,i)&&(s[n++]=c);}return s;}var rh=xC;function TC(){return[];}var nh=TC,CC=rh,IC=nh,OC=Object.prototype,wC=OC.propertyIsEnumerable,qc=Object.getOwnPropertySymbols,AC=qc?function(i){return i==null?[]:(i=Object(i),CC(qc(i),function(e){return wC.call(i,e);}));}:IC,Pl=AC,EC=Po,MC=Pl;function LC(i,e){return EC(i,MC(i),e);}var RC=LC;function bC(i,e){for(var t=-1,r=e.length,n=i.length;++t<r;)i[n+t]=e[t];return i;}var Sl=bC,DC=eh,NC=DC(Object.getPrototypeOf,Object),ih=NC,BC=Sl,WC=ih,FC=Pl,UC=nh,YC=Object.getOwnPropertySymbols,XC=YC?function(i){for(var e=[];i;)BC(e,FC(i)),i=WC(i);return e;}:UC,sh=XC,zC=Po,$C=sh;function jC(i,e){return zC(i,$C(i),e);}var GC=jC,kC=Sl,HC=qi;function KC(i,e,t){var r=e(i);return HC(i)?r:kC(r,t(i));}var oh=KC,VC=oh,ZC=Pl,JC=ml;function QC(i){return VC(i,JC,ZC);}var ah=QC,qC=oh,_C=sh,tI=yl;function eI(i){return qC(i,tI,_C);}var rI=eI,nI=jn,iI=_r,sI=nI(iI,"DataView"),oI=sI,aI=jn,lI=_r,fI=aI(lI,"Promise"),cI=fI,uI=jn,hI=_r,dI=uI(hI,"Set"),lh=dI,pI=jn,vI=_r,gI=pI(vI,"WeakMap"),mI=gI,nl=oI,il=hl,sl=cI,ol=lh,al=mI,fh=Si,Oi=Gu,_c="[object Map]",yI="[object Object]",tu="[object Promise]",eu="[object Set]",ru="[object WeakMap]",nu="[object DataView]",PI=Oi(nl),SI=Oi(il),xI=Oi(sl),TI=Oi(ol),CI=Oi(al),zn=fh;(nl&&zn(new nl(new ArrayBuffer(1)))!=nu||il&&zn(new il())!=_c||sl&&zn(sl.resolve())!=tu||ol&&zn(new ol())!=eu||al&&zn(new al())!=ru)&&(zn=function zn(i){var e=fh(i),t=e==yI?i.constructor:void 0,r=t?Oi(t):"";if(r)switch(r){case PI:return nu;case SI:return _c;case xI:return tu;case TI:return eu;case CI:return ru;}return e;});var xo=zn,II=Object.prototype,OI=II.hasOwnProperty;function wI(i){var e=i.length,t=new i.constructor(e);return e&&typeof i[0]=="string"&&OI.call(i,"index")&&(t.index=i.index,t.input=i.input),t;}var AI=wI,EI=_r,MI=EI.Uint8Array,ch=MI,iu=ch;function LI(i){var e=new i.constructor(i.byteLength);return new iu(e).set(new iu(i)),e;}var xl=LI,RI=xl;function bI(i,e){var t=e?RI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.byteLength);}var DI=bI,NI=/\w*$/;function BI(i){var e=new i.constructor(i.source,NI.exec(i));return e.lastIndex=i.lastIndex,e;}var WI=BI,su=Ji,ou=su?su.prototype:void 0,au=ou?ou.valueOf:void 0;function FI(i){return au?Object(au.call(i)):{};}var UI=FI,YI=xl;function XI(i,e){var t=e?YI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.length);}var zI=XI,$I=xl,jI=DI,GI=WI,kI=UI,HI=zI,KI="[object Boolean]",VI="[object Date]",ZI="[object Map]",JI="[object Number]",QI="[object RegExp]",qI="[object Set]",_I="[object String]",tO="[object Symbol]",eO="[object ArrayBuffer]",rO="[object DataView]",nO="[object Float32Array]",iO="[object Float64Array]",sO="[object Int8Array]",oO="[object Int16Array]",aO="[object Int32Array]",lO="[object Uint8Array]",fO="[object Uint8ClampedArray]",cO="[object Uint16Array]",uO="[object Uint32Array]";function hO(i,e,t){var r=i.constructor;switch(e){case eO:return $I(i);case KI:case VI:return new r(+i);case rO:return jI(i,t);case nO:case iO:case sO:case oO:case aO:case lO:case fO:case cO:case uO:return HI(i,t);case ZI:return new r();case JI:case _I:return new r(i);case QI:return GI(i);case qI:return new r();case tO:return kI(i);}}var dO=hO,pO=Qi,lu=Object.create,vO=/* @__PURE__ */function(){function i(){}return function(e){if(!pO(e))return{};if(lu)return lu(e);i.prototype=e;var t=new i();return i.prototype=void 0,t;};}(),gO=vO,mO=gO,yO=ih,PO=vl;function SO(i){return typeof i.constructor=="function"&&!PO(i)?mO(yO(i)):{};}var xO=SO,TO=xo,CO=pn,IO="[object Map]";function OO(i){return CO(i)&&TO(i)==IO;}var wO=OO,AO=wO,EO=So,fu=pl,cu=fu&&fu.isMap,MO=cu?EO(cu):AO,LO=MO,RO=xo,bO=pn,DO="[object Set]";function NO(i){return bO(i)&&RO(i)==DO;}var BO=NO,WO=BO,FO=So,uu=pl,hu=uu&&uu.isSet,UO=hu?FO(hu):WO,uh=UO,YO=/* @__PURE__ */Ln(uh),XO=Hu,zO=hx,$O=Zu,jO=tC,GO=mC,kO=yC,HO=SC,KO=RC,VO=GC,ZO=ah,JO=rI,QO=xo,qO=AI,_O=dO,t2=xO,e2=qi,r2=dl,n2=LO,i2=Qi,s2=uh,o2=ml,a2=yl,l2=1,f2=2,c2=4,hh="[object Arguments]",u2="[object Array]",h2="[object Boolean]",d2="[object Date]",p2="[object Error]",dh="[object Function]",v2="[object GeneratorFunction]",g2="[object Map]",m2="[object Number]",ph="[object Object]",y2="[object RegExp]",P2="[object Set]",S2="[object String]",x2="[object Symbol]",T2="[object WeakMap]",C2="[object ArrayBuffer]",I2="[object DataView]",O2="[object Float32Array]",w2="[object Float64Array]",A2="[object Int8Array]",E2="[object Int16Array]",M2="[object Int32Array]",L2="[object Uint8Array]",R2="[object Uint8ClampedArray]",b2="[object Uint16Array]",D2="[object Uint32Array]",Ye={};Ye[hh]=Ye[u2]=Ye[C2]=Ye[I2]=Ye[h2]=Ye[d2]=Ye[O2]=Ye[w2]=Ye[A2]=Ye[E2]=Ye[M2]=Ye[g2]=Ye[m2]=Ye[ph]=Ye[y2]=Ye[P2]=Ye[S2]=Ye[x2]=Ye[L2]=Ye[R2]=Ye[b2]=Ye[D2]=!0;Ye[p2]=Ye[dh]=Ye[T2]=!1;function qs(i,e,t,r,n,s){var c,l=e&l2,f=e&f2,h=e&c2;if(t&&(c=n?t(i,r,n,s):t(i)),c!==void 0)return c;if(!i2(i))return i;var m=e2(i);if(m){if(c=qO(i),!l)return HO(i,c);}else{var u=QO(i),y=u==dh||u==v2;if(r2(i))return kO(i,l);if(u==ph||u==hh||y&&!n){if(c=f||y?{}:t2(i),!l)return f?VO(i,GO(c,i)):KO(i,jO(c,i));}else{if(!Ye[u])return n?i:{};c=_O(i,u,l);}}s||(s=new XO());var T=s.get(i);if(T)return T;s.set(i,c),s2(i)?i.forEach(function(S){c.add(qs(S,e,t,S,i,s));}):n2(i)&&i.forEach(function(S,I){c.set(I,qs(S,e,t,I,i,s));});var A=h?f?JO:ZO:f?a2:o2,C=m?void 0:A(i);return zO(C||i,function(S,I){C&&(I=S,S=i[I]),$O(c,I,qs(S,e,t,I,i,s));}),c;}var N2=qs,B2=N2,W2=1,F2=4;function U2(i){return B2(i,W2|F2);}var Y2=U2,fr=/* @__PURE__ */Ln(Y2);var vh="1.1.27-beta.7",X2="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var i=window.__netlessUA||"";i+=" ".concat(X2,"@").concat(vh),window.__netlessUA=i;}var vr={useWorker:"auto",useSimple:!1,syncOpt:{interval:300,smoothSync:!0},cursor:{enable:!0,expirationTime:5e3,moveDelayTime:100},bufferSize:{full:2e4,sub:600},bezier:{enable:!0,maxDrawCount:1/0,combineUnitTime:300},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920,maxCombineTime:500},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1,extendFontFaces:[],loadFontFacesTimeout:1e4},longDottedStroke:{lineCap:"round",segment:1,gap:2},dottedStroke:{lineCap:"round",segment:1,gap:2},normalStroke:{lineCap:"round"},undoRedo:{enableGlobal:!1,maxStackLength:20}};function En(i){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=i.length;if(t<2)return"";var r=i[0],n=i[1];if(t===2)return"M".concat(ci(r),"L").concat(ci(n));var s="";for(var c=2,l=t-1;c<l;c++)r=i[c],n=i[c+1],s+=ui(r,n);return e?"M".concat(ui(i[0],i[1]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2]),"T").concat(s).concat(ui(i[t-1],i[0])).concat(ui(i[0],i[1]),"Z"):"M".concat(ci(i[0]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2])).concat(i.length>3?"T":"").concat(s,"L").concat(ci(i[t-1]));}var Mr=/*#__PURE__*/function(){function Mr(e){_classCallCheck(this,Mr);dt(this,"maxImageWidth",vr.pencilEraser.maxImageWidth);dt(this,"maxImageHeight",vr.pencilEraser.maxImageHeight);dt(this,"syncUnitTime",vr.syncOpt.interval);dt(this,"vNodes");dt(this,"drawLayer");dt(this,"fullLayer");dt(this,"workId");dt(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,s=e.workId,c=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=s,this.syncUnitTime=c.syncUnitTime||this.syncUnitTime;}return _createClass(Mr,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var s=r[r.length-1];return(n&&!s||n&&s&&!n.isNear(s,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,s,c;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((s=this.vNodes)==null?void 0:s.get(t))||void 0;t&&r&&(r.opt=e,(c=this.vNodes)==null||c.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,s;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var c=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(c.length!==1)return;var l=c[0],f=e.pos,h=e.zIndex,m=e.scale,u=e.angle,y=e.translate,T={};er(h)&&(T.zIndex=h),f&&(T.pos=[f[0],f[1]]),m&&(T.scale=m),u&&(T.rotate=u),y&&(T.translate=y),l.attr(T);var A=l==null?void 0:l.getBoundingClientRect();return A&&(t=Zt(t,{x:Math.floor(A.x-Mr.SafeBorderPadding),y:Math.floor(A.y-Mr.SafeBorderPadding),w:Math.floor(A.width+Mr.SafeBorderPadding*2),h:Math.floor(A.height+Mr.SafeBorderPadding*2)})),(s=this.vNodes)==null||s.setInfo(r,{rect:t,centerPos:f}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,s=e.pos,c=e.layer,l=c.parent;if(t)try{var h=(c.renderer.glRenderer||c.renderer.canvasRenderer).options.displayRatio,m=r.getBoundingClientRect(),u=m.width*h*c.worldScaling[0],y=m.height*h*c.worldScaling[1];var T=1;(u>this.maxImageWidth||y>this.maxImageHeight)&&(T=Math.min(this.maxImageWidth/u,this.maxImageHeight/y));var A=c.getAttribute("scale");A=[A[0]*T,A[1]*T];var C=c.parent.parent,S=c.getAttribute("translate"),_I30=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),C,{offscreen:l.offscreen,width:l.width,height:l.height,contextType:"2d",autoRender:!1,bufferSize:500},A,S),_d30=r.cloneNode(!0);if(!n||!n.length)return;this.addEraserlines(_d30,n,s,!1),_I30.appendChild(_d30);var g=_I30.parent;g.render();var p=_I30.renderer.canvasRenderer,x=p.context;if(!x)return;var E=p.options.displayRatio,R=_d30.getBoundingClientRect(),D={x:R.x,y:R.y,w:R.width,h:R.height},U={x:0,y:0,w:C.width,h:C.height};if(Zi(D,U)===Tr.outside){Lr(_d30,g),C.removeChild(g),this.isDelete=!0;return;}var W=fr(D);W.x=Math.floor(Math.max(D.x,0)),W.y=Math.floor(Math.max(D.y,0)),W.w=Math.min(D.x+D.w,C.width)-W.x,W.h=Math.min(D.y+D.h,C.height)-W.y;var Y=this.getGroupRect(W,E),B=Y.x,N=Y.y,G=Y.w,J=Y.h;var tt=x.getImageData(B,N,G,J);if(this.isTransparentRectByCanvas(tt)){Lr(_d30,g),C.removeChild(g),this.isDelete=!0,tt=null;return;}Lr(r,l);var ut=this.createSpriteNode({imageData:tt,safariRect:W,originRect:D,worldScaling:_I30.worldScaling});ut&&r.append(ut),Lr(_d30,g),C.removeChild(g),l.deleteTexture(tt),tt=null;}catch(f){console.error("[BaseShapeTool] drawEraserlines error:",f);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,s){var c=r.width,l=r.height,f="bitMap-".concat(e),h=t.layer(f,r),m=new mr({anchor:[0.5,0.5],pos:[c*0.5,l*0.5],size:[c,l],name:"viewport",id:e});return m.setAttribute("scale",n),m.setAttribute("translate",s),h.append(m),m;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),s=Math.floor(e.w*t),c=Math.floor(e.h*t);return{x:r,y:n,w:s,h:c};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var c=s.thickness,l=s.op;var _iterator14=_createForOfIteratorHelper(l),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var f=_step14.value;var h=f.map(function(A,C){return C%2?A-r[1]:A-r[0];}),m=this.computEraserPoints(h,c),u=En(m,!0),y={pos:[0,0],d:u,fillColor:"rgba(0,0,0,1)"},T=new Mn(y);T.addEventListener("beforerender",function(_ref164){var A=_ref164.detail;var C=A.context;n?C.blendFuncSeparate(C.ZERO,C.ZERO,C.ZERO,C.ZERO):C.globalCompositeOperation="destination-out";}),T.addEventListener("afterrender",function(_ref165){var A=_ref165.detail;var C=A.context;n?C.blendFuncSeparate(C.SRC_ALPHA,C.ONE_MINUS_SRC_ALPHA,C.ONE,C.ONE_MINUS_SRC_ALPHA):C.globalCompositeOperation="source-over";}),e.append(T);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,s=e.originRect;var c;if(typeof OffscreenCanvas=="function"){c=new OffscreenCanvas(t.width,t.height);var m=c.getContext("2d");m&&m.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){c=document.createElement("canvas"),c.width=t.width,c.height=t.height;var _m4=c.getContext("2d");_m4&&_m4.putImageData(t,0,0);}if(!c)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var l=[Math.floor(s.w/r[0]),Math.floor(s.h/r[1])],f=[Math.floor((n.x-s.x)/r[0]),Math.floor((n.y-s.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],h={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:l,texture:c,textureRect:f};return new Yu(h);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Jt(e[0],e[1]);return Jt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var s,c;for(var l=0;l<e.length;l+=2){var f=new Jt(e[l],e[l+1]);var h=void 0;if(l==e.length-2){var m=new Jt(e[l-2],e[l-1]);h=pt.Sub(f,m).uni(),s=f;}else{l===0&&(c=f);var _m5=new Jt(e[l+2],e[l+3]);h=pt.Sub(_m5,f).uni();}if(h){var _m6=pt.Per(h).mul(t);r.push(Jt.Sub(f,_m6)),n.push(Jt.Add(f,_m6));}}if(s&&c){var _l3=Jt.GetSemicircleStroke(s,r[r.length-1],-1,8),_f4=Jt.GetSemicircleStroke(c,n[0],-1,8);return r.concat(_l3,n.reverse(),_f4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var s;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var c=_step15.value;r?iE(r,c,e):(c.remove(),_pr(c,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(s=this.drawLayer)==null||s.getElementsByName(t).forEach(function(l){var f;l.remove(),_pr(l,(f=_this61.drawLayer)==null?void 0:f.parent);}):this.fullLayer.getElementsByName(t).forEach(function(l){l.remove(),_pr(l,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_pr(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var d;var t=e.node,r=e.opt,n=e.vNodes,s=e.willSerializeData,c=e.targetNode,l=r.zIndex,f=r.translate,h=r.angle,m=r.originPoint,u=r.scenePoint,y=r.scale,T=r.pointMap,A=r.thickness;var C;var S=c&&fr(c)||n.get(t.name);if(!S)return;er(l)&&(t.setAttribute("zIndex",l),S.opt.zIndex=l);var I=t.parent;if(I){if(m&&y&&c){var g=[S.op[0],S.op[1]];Ll(S.op,u,y,f);var p=[S.op[0],S.op[1]],x=[p[0]-g[0],p[1]-g[1]];if(S.centerPos=[S.centerPos[0]+x[0],S.centerPos[1]+x[1]],S.opt.translate=void 0,S.opt.scale=void 0,S.opt.eraserlines)for(var E=0;E<S.opt.eraserlines.length;E++){var _S$opt$eraserlines$E=S.opt.eraserlines[E],R=_S$opt$eraserlines$E.op,D=_S$opt$eraserlines$E.thickness;S.opt.eraserlines[E].thickness=Math.round(D*Math.max(y[0],y[1]));for(var U=0;U<R.length;U++)Rl(R[U],u,y,f);}}else if(f){if(t.setAttribute("translate",f),S.opt.translate=f,c){var _g6=[f[0]*I.worldScaling[0],f[1]*I.worldScaling[1]];C=Vi(S.rect,_g6),S.rect=C;}else{var _g7=Mr.getRectFromLayer(I,t.name);S.rect=_g7||S.rect;}}else if(er(h))if(t.setAttribute("rotate",h),S.opt.rotate=h,c)C=Hh(S.rect,h),S.rect=C;else{var _g8=Mr.getRectFromLayer(I,t.name);S.rect=_g8||S.rect;}if(T){var _g9=T.get(t.name);if(_g9)for(var _p10=0,_x37=0;_p10<S.op.length;_p10+=3,_x37++)S.op[_p10]=_g9[_x37][0],S.op[_p10+1]=_g9[_x37][1];}if(A&&(d=S==null?void 0:S.opt)!=null&&d.thickness&&(S.opt.thickness=A),s&&!(m&&y&&c)){if(f){var _g10=S.op.map(function(p,x){var E=x%3;return E===0?p+f[0]:E===1?p+f[1]:p;});if(S.op=_g10,S.centerPos=[S.centerPos[0]+f[0],S.centerPos[1]+f[1]],S!=null&&S.opt&&(S.opt.translate=void 0),S.opt.eraserlines)for(var _p11=0;_p11<S.opt.eraserlines.length;_p11++){var _x38=S.opt.eraserlines[_p11].op;for(var _E7=0;_E7<_x38.length;_E7++){var _R3=_x38[_E7].map(function(D,U){return U%2?D+f[1]:D+f[0];});S.opt.eraserlines[_p11].op[_E7]=_R3;}}}else if(er(h)){var _g11=S.op;if(JA(_g11,S.centerPos,h),S.op=_g11,S!=null&&S.opt&&(S.opt.rotate=void 0),S.opt.eraserlines)for(var _p12=0;_p12<S.opt.eraserlines.length;_p12++){var _x39=S.opt.eraserlines[_p12].op;for(var _E8=0;_E8<_x39.length;_E8++)QA(_x39[_E8],S.centerPos,h);}}}S&&n.setInfo(t.name,S);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Mr.SafeBorderPadding),y:Math.floor(n.y-Mr.SafeBorderPadding),w:Math.floor(n.width+Mr.SafeBorderPadding*2),h:Math.floor(n.height+Mr.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,s=e.updateOpt,c=e.willSerializeData;return!!(c&&(s.angle||s.translate)||s.thickness&&r.thickness&&r.thickness!==s.thickness||s.strokeType&&r.strokeType&&r.strokeType!==s.strokeType||s.originPoint&&s.scenePoint&&s.scale||s.pointMap&&s.pointMap.has(n.name)||t===Tt.Text&&(s.fontSize||s.translate||s.textInfos&&s.textInfos.get(n.name))||t===Tt.Image&&(s.angle||s.translate||s.scale||s.strokeColor&&r.type===po.Iconify)||t===s.toolsType&&s.willRefresh||r.eraserlines&&r.eraserlines.length&&(s.strokeColor||s.fillColor));}}]);}();dt(Mr,"SafeBorderPadding",10);var $t=Mr;var Tl=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var Cl={exports:{}};Cl.exports;(function(i){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",s={};function c(f,h){if(!s[f]){s[f]={};for(var m=0;m<f.length;m++)s[f][f.charAt(m)]=m;}return s[f][h];}var l={compressToBase64:function compressToBase64(f){if(f==null)return"";var h=l._compress(f,6,function(m){return r.charAt(m);});switch(h.length%4){default:case 0:return h;case 1:return h+"===";case 2:return h+"==";case 3:return h+"=";}},decompressFromBase64:function decompressFromBase64(f){return f==null?"":f==""?null:l._decompress(f.length,32,function(h){return c(r,f.charAt(h));});},compressToUTF16:function compressToUTF16(f){return f==null?"":l._compress(f,15,function(h){return t(h+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(f){return f==null?"":f==""?null:l._decompress(f.length,16384,function(h){return f.charCodeAt(h)-32;});},//compress into uint8array (UCS-2 big endian format)
|
|
399
|
+
AT(h,f)))&&l.push(h);return l;}var th=RT,bT=Object.prototype;function DT(i){var e=i&&i.constructor,t=typeof e=="function"&&e.prototype||bT;return i===t;}var vl=DT;function NT(i,e){return function(t){return i(e(t));};}var eh=NT,BT=eh,WT=BT(Object.keys,Object),FT=WT,UT=vl,YT=FT,XT=Object.prototype,zT=XT.hasOwnProperty;function $T(i){if(!UT(i))return YT(i);var e=[];for(var t in Object(i))zT.call(i,t)&&t!="constructor"&&e.push(t);return e;}var jT=$T,GT=ju,kT=qu;function HT(i){return i!=null&&kT(i.length)&&!GT(i);}var gl=HT,KT=th,VT=jT,ZT=gl;function JT(i){return ZT(i)?KT(i):VT(i);}var ml=JT,QT=Po,qT=ml;function _T(i,e){return i&&QT(e,qT(e),i);}var tC=_T;function eC(i){var e=[];if(i!=null)for(var t in Object(i))e.push(t);return e;}var rC=eC,nC=Qi,iC=vl,sC=rC,oC=Object.prototype,aC=oC.hasOwnProperty;function lC(i){if(!nC(i))return sC(i);var e=iC(i),t=[];for(var r in i)r=="constructor"&&(e||!aC.call(i,r))||t.push(r);return t;}var fC=lC,cC=th,uC=fC,hC=gl;function dC(i){return hC(i)?cC(i,!0):uC(i);}var yl=dC,pC=Po,vC=yl;function gC(i,e){return i&&pC(e,vC(e),i);}var mC=gC,ro={exports:{}};ro.exports;(function(i,e){var t=_r,r=e&&!e.nodeType&&e,n=r&&!0&&i&&!i.nodeType&&i,s=n&&n.exports===r,c=s?t.Buffer:void 0,l=c?c.allocUnsafe:void 0;function f(h,m){if(m)return h.slice();var u=h.length,y=l?l(u):new h.constructor(u);return h.copy(y),y;}i.exports=f;})(ro,ro.exports);var yC=ro.exports;function PC(i,e){var t=-1,r=i.length;for(e||(e=Array(r));++t<r;)e[t]=i[t];return e;}var SC=PC;function xC(i,e){for(var t=-1,r=i==null?0:i.length,n=0,s=[];++t<r;){var c=i[t];e(c,t,i)&&(s[n++]=c);}return s;}var rh=xC;function TC(){return[];}var nh=TC,CC=rh,IC=nh,OC=Object.prototype,wC=OC.propertyIsEnumerable,qc=Object.getOwnPropertySymbols,AC=qc?function(i){return i==null?[]:(i=Object(i),CC(qc(i),function(e){return wC.call(i,e);}));}:IC,Pl=AC,EC=Po,MC=Pl;function LC(i,e){return EC(i,MC(i),e);}var RC=LC;function bC(i,e){for(var t=-1,r=e.length,n=i.length;++t<r;)i[n+t]=e[t];return i;}var Sl=bC,DC=eh,NC=DC(Object.getPrototypeOf,Object),ih=NC,BC=Sl,WC=ih,FC=Pl,UC=nh,YC=Object.getOwnPropertySymbols,XC=YC?function(i){for(var e=[];i;)BC(e,FC(i)),i=WC(i);return e;}:UC,sh=XC,zC=Po,$C=sh;function jC(i,e){return zC(i,$C(i),e);}var GC=jC,kC=Sl,HC=qi;function KC(i,e,t){var r=e(i);return HC(i)?r:kC(r,t(i));}var oh=KC,VC=oh,ZC=Pl,JC=ml;function QC(i){return VC(i,JC,ZC);}var ah=QC,qC=oh,_C=sh,tI=yl;function eI(i){return qC(i,tI,_C);}var rI=eI,nI=jn,iI=_r,sI=nI(iI,"DataView"),oI=sI,aI=jn,lI=_r,fI=aI(lI,"Promise"),cI=fI,uI=jn,hI=_r,dI=uI(hI,"Set"),lh=dI,pI=jn,vI=_r,gI=pI(vI,"WeakMap"),mI=gI,nl=oI,il=hl,sl=cI,ol=lh,al=mI,fh=Si,Oi=Gu,_c="[object Map]",yI="[object Object]",tu="[object Promise]",eu="[object Set]",ru="[object WeakMap]",nu="[object DataView]",PI=Oi(nl),SI=Oi(il),xI=Oi(sl),TI=Oi(ol),CI=Oi(al),zn=fh;(nl&&zn(new nl(new ArrayBuffer(1)))!=nu||il&&zn(new il())!=_c||sl&&zn(sl.resolve())!=tu||ol&&zn(new ol())!=eu||al&&zn(new al())!=ru)&&(zn=function zn(i){var e=fh(i),t=e==yI?i.constructor:void 0,r=t?Oi(t):"";if(r)switch(r){case PI:return nu;case SI:return _c;case xI:return tu;case TI:return eu;case CI:return ru;}return e;});var xo=zn,II=Object.prototype,OI=II.hasOwnProperty;function wI(i){var e=i.length,t=new i.constructor(e);return e&&typeof i[0]=="string"&&OI.call(i,"index")&&(t.index=i.index,t.input=i.input),t;}var AI=wI,EI=_r,MI=EI.Uint8Array,ch=MI,iu=ch;function LI(i){var e=new i.constructor(i.byteLength);return new iu(e).set(new iu(i)),e;}var xl=LI,RI=xl;function bI(i,e){var t=e?RI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.byteLength);}var DI=bI,NI=/\w*$/;function BI(i){var e=new i.constructor(i.source,NI.exec(i));return e.lastIndex=i.lastIndex,e;}var WI=BI,su=Ji,ou=su?su.prototype:void 0,au=ou?ou.valueOf:void 0;function FI(i){return au?Object(au.call(i)):{};}var UI=FI,YI=xl;function XI(i,e){var t=e?YI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.length);}var zI=XI,$I=xl,jI=DI,GI=WI,kI=UI,HI=zI,KI="[object Boolean]",VI="[object Date]",ZI="[object Map]",JI="[object Number]",QI="[object RegExp]",qI="[object Set]",_I="[object String]",tO="[object Symbol]",eO="[object ArrayBuffer]",rO="[object DataView]",nO="[object Float32Array]",iO="[object Float64Array]",sO="[object Int8Array]",oO="[object Int16Array]",aO="[object Int32Array]",lO="[object Uint8Array]",fO="[object Uint8ClampedArray]",cO="[object Uint16Array]",uO="[object Uint32Array]";function hO(i,e,t){var r=i.constructor;switch(e){case eO:return $I(i);case KI:case VI:return new r(+i);case rO:return jI(i,t);case nO:case iO:case sO:case oO:case aO:case lO:case fO:case cO:case uO:return HI(i,t);case ZI:return new r();case JI:case _I:return new r(i);case QI:return GI(i);case qI:return new r();case tO:return kI(i);}}var dO=hO,pO=Qi,lu=Object.create,vO=/* @__PURE__ */function(){function i(){}return function(e){if(!pO(e))return{};if(lu)return lu(e);i.prototype=e;var t=new i();return i.prototype=void 0,t;};}(),gO=vO,mO=gO,yO=ih,PO=vl;function SO(i){return typeof i.constructor=="function"&&!PO(i)?mO(yO(i)):{};}var xO=SO,TO=xo,CO=pn,IO="[object Map]";function OO(i){return CO(i)&&TO(i)==IO;}var wO=OO,AO=wO,EO=So,fu=pl,cu=fu&&fu.isMap,MO=cu?EO(cu):AO,LO=MO,RO=xo,bO=pn,DO="[object Set]";function NO(i){return bO(i)&&RO(i)==DO;}var BO=NO,WO=BO,FO=So,uu=pl,hu=uu&&uu.isSet,UO=hu?FO(hu):WO,uh=UO,YO=/* @__PURE__ */Ln(uh),XO=Hu,zO=hx,$O=Zu,jO=tC,GO=mC,kO=yC,HO=SC,KO=RC,VO=GC,ZO=ah,JO=rI,QO=xo,qO=AI,_O=dO,t2=xO,e2=qi,r2=dl,n2=LO,i2=Qi,s2=uh,o2=ml,a2=yl,l2=1,f2=2,c2=4,hh="[object Arguments]",u2="[object Array]",h2="[object Boolean]",d2="[object Date]",p2="[object Error]",dh="[object Function]",v2="[object GeneratorFunction]",g2="[object Map]",m2="[object Number]",ph="[object Object]",y2="[object RegExp]",P2="[object Set]",S2="[object String]",x2="[object Symbol]",T2="[object WeakMap]",C2="[object ArrayBuffer]",I2="[object DataView]",O2="[object Float32Array]",w2="[object Float64Array]",A2="[object Int8Array]",E2="[object Int16Array]",M2="[object Int32Array]",L2="[object Uint8Array]",R2="[object Uint8ClampedArray]",b2="[object Uint16Array]",D2="[object Uint32Array]",Ye={};Ye[hh]=Ye[u2]=Ye[C2]=Ye[I2]=Ye[h2]=Ye[d2]=Ye[O2]=Ye[w2]=Ye[A2]=Ye[E2]=Ye[M2]=Ye[g2]=Ye[m2]=Ye[ph]=Ye[y2]=Ye[P2]=Ye[S2]=Ye[x2]=Ye[L2]=Ye[R2]=Ye[b2]=Ye[D2]=!0;Ye[p2]=Ye[dh]=Ye[T2]=!1;function qs(i,e,t,r,n,s){var c,l=e&l2,f=e&f2,h=e&c2;if(t&&(c=n?t(i,r,n,s):t(i)),c!==void 0)return c;if(!i2(i))return i;var m=e2(i);if(m){if(c=qO(i),!l)return HO(i,c);}else{var u=QO(i),y=u==dh||u==v2;if(r2(i))return kO(i,l);if(u==ph||u==hh||y&&!n){if(c=f||y?{}:t2(i),!l)return f?VO(i,GO(c,i)):KO(i,jO(c,i));}else{if(!Ye[u])return n?i:{};c=_O(i,u,l);}}s||(s=new XO());var T=s.get(i);if(T)return T;s.set(i,c),s2(i)?i.forEach(function(S){c.add(qs(S,e,t,S,i,s));}):n2(i)&&i.forEach(function(S,I){c.set(I,qs(S,e,t,I,i,s));});var A=h?f?JO:ZO:f?a2:o2,C=m?void 0:A(i);return zO(C||i,function(S,I){C&&(I=S,S=i[I]),$O(c,I,qs(S,e,t,I,i,s));}),c;}var N2=qs,B2=N2,W2=1,F2=4;function U2(i){return B2(i,W2|F2);}var Y2=U2,fr=/* @__PURE__ */Ln(Y2);var vh="1.1.27",X2="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var i=window.__netlessUA||"";i+=" ".concat(X2,"@").concat(vh),window.__netlessUA=i;}var vr={useWorker:"auto",useSimple:!1,syncOpt:{interval:300,smoothSync:!0},cursor:{enable:!0,expirationTime:5e3,moveDelayTime:100},bufferSize:{full:2e4,sub:600},bezier:{enable:!0,maxDrawCount:1/0,combineUnitTime:300},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920,maxCombineTime:500},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1,extendFontFaces:[],loadFontFacesTimeout:1e4},longDottedStroke:{lineCap:"round",segment:1,gap:2},dottedStroke:{lineCap:"round",segment:1,gap:2},normalStroke:{lineCap:"round"},undoRedo:{enableGlobal:!1,maxStackLength:20}};function En(i){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=i.length;if(t<2)return"";var r=i[0],n=i[1];if(t===2)return"M".concat(ci(r),"L").concat(ci(n));var s="";for(var c=2,l=t-1;c<l;c++)r=i[c],n=i[c+1],s+=ui(r,n);return e?"M".concat(ui(i[0],i[1]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2]),"T").concat(s).concat(ui(i[t-1],i[0])).concat(ui(i[0],i[1]),"Z"):"M".concat(ci(i[0]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2])).concat(i.length>3?"T":"").concat(s,"L").concat(ci(i[t-1]));}var Mr=/*#__PURE__*/function(){function Mr(e){_classCallCheck(this,Mr);dt(this,"maxImageWidth",vr.pencilEraser.maxImageWidth);dt(this,"maxImageHeight",vr.pencilEraser.maxImageHeight);dt(this,"syncUnitTime",vr.syncOpt.interval);dt(this,"vNodes");dt(this,"drawLayer");dt(this,"fullLayer");dt(this,"workId");dt(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,s=e.workId,c=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=s,this.syncUnitTime=c.syncUnitTime||this.syncUnitTime;}return _createClass(Mr,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var s=r[r.length-1];return(n&&!s||n&&s&&!n.isNear(s,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,s,c;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((s=this.vNodes)==null?void 0:s.get(t))||void 0;t&&r&&(r.opt=e,(c=this.vNodes)==null||c.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,s;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var c=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(c.length!==1)return;var l=c[0],f=e.pos,h=e.zIndex,m=e.scale,u=e.angle,y=e.translate,T={};er(h)&&(T.zIndex=h),f&&(T.pos=[f[0],f[1]]),m&&(T.scale=m),u&&(T.rotate=u),y&&(T.translate=y),l.attr(T);var A=l==null?void 0:l.getBoundingClientRect();return A&&(t=Zt(t,{x:Math.floor(A.x-Mr.SafeBorderPadding),y:Math.floor(A.y-Mr.SafeBorderPadding),w:Math.floor(A.width+Mr.SafeBorderPadding*2),h:Math.floor(A.height+Mr.SafeBorderPadding*2)})),(s=this.vNodes)==null||s.setInfo(r,{rect:t,centerPos:f}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,s=e.pos,c=e.layer,l=c.parent;if(t)try{var h=(c.renderer.glRenderer||c.renderer.canvasRenderer).options.displayRatio,m=r.getBoundingClientRect(),u=m.width*h*c.worldScaling[0],y=m.height*h*c.worldScaling[1];var T=1;(u>this.maxImageWidth||y>this.maxImageHeight)&&(T=Math.min(this.maxImageWidth/u,this.maxImageHeight/y));var A=c.getAttribute("scale");A=[A[0]*T,A[1]*T];var C=c.parent.parent,S=c.getAttribute("translate"),_I30=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),C,{offscreen:l.offscreen,width:l.width,height:l.height,contextType:"2d",autoRender:!1,bufferSize:500},A,S),_d30=r.cloneNode(!0);if(!n||!n.length)return;this.addEraserlines(_d30,n,s,!1),_I30.appendChild(_d30);var g=_I30.parent;g.render();var p=_I30.renderer.canvasRenderer,x=p.context;if(!x)return;var E=p.options.displayRatio,R=_d30.getBoundingClientRect(),D={x:R.x,y:R.y,w:R.width,h:R.height},U={x:0,y:0,w:C.width,h:C.height};if(Zi(D,U)===Tr.outside){Lr(_d30,g),C.removeChild(g),this.isDelete=!0;return;}var W=fr(D);W.x=Math.floor(Math.max(D.x,0)),W.y=Math.floor(Math.max(D.y,0)),W.w=Math.min(D.x+D.w,C.width)-W.x,W.h=Math.min(D.y+D.h,C.height)-W.y;var Y=this.getGroupRect(W,E),B=Y.x,N=Y.y,G=Y.w,J=Y.h;var tt=x.getImageData(B,N,G,J);if(this.isTransparentRectByCanvas(tt)){Lr(_d30,g),C.removeChild(g),this.isDelete=!0,tt=null;return;}Lr(r,l);var ut=this.createSpriteNode({imageData:tt,safariRect:W,originRect:D,worldScaling:_I30.worldScaling});ut&&r.append(ut),Lr(_d30,g),C.removeChild(g),l.deleteTexture(tt),tt=null;}catch(f){console.error("[BaseShapeTool] drawEraserlines error:",f);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,s){var c=r.width,l=r.height,f="bitMap-".concat(e),h=t.layer(f,r),m=new mr({anchor:[0.5,0.5],pos:[c*0.5,l*0.5],size:[c,l],name:"viewport",id:e});return m.setAttribute("scale",n),m.setAttribute("translate",s),h.append(m),m;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),s=Math.floor(e.w*t),c=Math.floor(e.h*t);return{x:r,y:n,w:s,h:c};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var c=s.thickness,l=s.op;var _iterator14=_createForOfIteratorHelper(l),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var f=_step14.value;var h=f.map(function(A,C){return C%2?A-r[1]:A-r[0];}),m=this.computEraserPoints(h,c),u=En(m,!0),y={pos:[0,0],d:u,fillColor:"rgba(0,0,0,1)"},T=new Mn(y);T.addEventListener("beforerender",function(_ref164){var A=_ref164.detail;var C=A.context;n?C.blendFuncSeparate(C.ZERO,C.ZERO,C.ZERO,C.ZERO):C.globalCompositeOperation="destination-out";}),T.addEventListener("afterrender",function(_ref165){var A=_ref165.detail;var C=A.context;n?C.blendFuncSeparate(C.SRC_ALPHA,C.ONE_MINUS_SRC_ALPHA,C.ONE,C.ONE_MINUS_SRC_ALPHA):C.globalCompositeOperation="source-over";}),e.append(T);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,s=e.originRect;var c;if(typeof OffscreenCanvas=="function"){c=new OffscreenCanvas(t.width,t.height);var m=c.getContext("2d");m&&m.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){c=document.createElement("canvas"),c.width=t.width,c.height=t.height;var _m4=c.getContext("2d");_m4&&_m4.putImageData(t,0,0);}if(!c)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var l=[Math.floor(s.w/r[0]),Math.floor(s.h/r[1])],f=[Math.floor((n.x-s.x)/r[0]),Math.floor((n.y-s.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],h={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:l,texture:c,textureRect:f};return new Yu(h);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Jt(e[0],e[1]);return Jt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var s,c;for(var l=0;l<e.length;l+=2){var f=new Jt(e[l],e[l+1]);var h=void 0;if(l==e.length-2){var m=new Jt(e[l-2],e[l-1]);h=pt.Sub(f,m).uni(),s=f;}else{l===0&&(c=f);var _m5=new Jt(e[l+2],e[l+3]);h=pt.Sub(_m5,f).uni();}if(h){var _m6=pt.Per(h).mul(t);r.push(Jt.Sub(f,_m6)),n.push(Jt.Add(f,_m6));}}if(s&&c){var _l3=Jt.GetSemicircleStroke(s,r[r.length-1],-1,8),_f4=Jt.GetSemicircleStroke(c,n[0],-1,8);return r.concat(_l3,n.reverse(),_f4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var s;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var c=_step15.value;r?iE(r,c,e):(c.remove(),_pr(c,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(s=this.drawLayer)==null||s.getElementsByName(t).forEach(function(l){var f;l.remove(),_pr(l,(f=_this61.drawLayer)==null?void 0:f.parent);}):this.fullLayer.getElementsByName(t).forEach(function(l){l.remove(),_pr(l,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_pr(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var d;var t=e.node,r=e.opt,n=e.vNodes,s=e.willSerializeData,c=e.targetNode,l=r.zIndex,f=r.translate,h=r.angle,m=r.originPoint,u=r.scenePoint,y=r.scale,T=r.pointMap,A=r.thickness;var C;var S=c&&fr(c)||n.get(t.name);if(!S)return;er(l)&&(t.setAttribute("zIndex",l),S.opt.zIndex=l);var I=t.parent;if(I){if(m&&y&&c){var g=[S.op[0],S.op[1]];Ll(S.op,u,y,f);var p=[S.op[0],S.op[1]],x=[p[0]-g[0],p[1]-g[1]];if(S.centerPos=[S.centerPos[0]+x[0],S.centerPos[1]+x[1]],S.opt.translate=void 0,S.opt.scale=void 0,S.opt.eraserlines)for(var E=0;E<S.opt.eraserlines.length;E++){var _S$opt$eraserlines$E=S.opt.eraserlines[E],R=_S$opt$eraserlines$E.op,D=_S$opt$eraserlines$E.thickness;S.opt.eraserlines[E].thickness=Math.round(D*Math.max(y[0],y[1]));for(var U=0;U<R.length;U++)Rl(R[U],u,y,f);}}else if(f){if(t.setAttribute("translate",f),S.opt.translate=f,c){var _g6=[f[0]*I.worldScaling[0],f[1]*I.worldScaling[1]];C=Vi(S.rect,_g6),S.rect=C;}else{var _g7=Mr.getRectFromLayer(I,t.name);S.rect=_g7||S.rect;}}else if(er(h))if(t.setAttribute("rotate",h),S.opt.rotate=h,c)C=Hh(S.rect,h),S.rect=C;else{var _g8=Mr.getRectFromLayer(I,t.name);S.rect=_g8||S.rect;}if(T){var _g9=T.get(t.name);if(_g9)for(var _p10=0,_x37=0;_p10<S.op.length;_p10+=3,_x37++)S.op[_p10]=_g9[_x37][0],S.op[_p10+1]=_g9[_x37][1];}if(A&&(d=S==null?void 0:S.opt)!=null&&d.thickness&&(S.opt.thickness=A),s&&!(m&&y&&c)){if(f){var _g10=S.op.map(function(p,x){var E=x%3;return E===0?p+f[0]:E===1?p+f[1]:p;});if(S.op=_g10,S.centerPos=[S.centerPos[0]+f[0],S.centerPos[1]+f[1]],S!=null&&S.opt&&(S.opt.translate=void 0),S.opt.eraserlines)for(var _p11=0;_p11<S.opt.eraserlines.length;_p11++){var _x38=S.opt.eraserlines[_p11].op;for(var _E7=0;_E7<_x38.length;_E7++){var _R3=_x38[_E7].map(function(D,U){return U%2?D+f[1]:D+f[0];});S.opt.eraserlines[_p11].op[_E7]=_R3;}}}else if(er(h)){var _g11=S.op;if(JA(_g11,S.centerPos,h),S.op=_g11,S!=null&&S.opt&&(S.opt.rotate=void 0),S.opt.eraserlines)for(var _p12=0;_p12<S.opt.eraserlines.length;_p12++){var _x39=S.opt.eraserlines[_p12].op;for(var _E8=0;_E8<_x39.length;_E8++)QA(_x39[_E8],S.centerPos,h);}}}S&&n.setInfo(t.name,S);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Mr.SafeBorderPadding),y:Math.floor(n.y-Mr.SafeBorderPadding),w:Math.floor(n.width+Mr.SafeBorderPadding*2),h:Math.floor(n.height+Mr.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,s=e.updateOpt,c=e.willSerializeData;return!!(c&&(s.angle||s.translate)||s.thickness&&r.thickness&&r.thickness!==s.thickness||s.strokeType&&r.strokeType&&r.strokeType!==s.strokeType||s.originPoint&&s.scenePoint&&s.scale||s.pointMap&&s.pointMap.has(n.name)||t===Tt.Text&&(s.fontSize||s.translate||s.textInfos&&s.textInfos.get(n.name))||t===Tt.Image&&(s.angle||s.translate||s.scale||s.strokeColor&&r.type===po.Iconify)||t===s.toolsType&&s.willRefresh||r.eraserlines&&r.eraserlines.length&&(s.strokeColor||s.fillColor));}}]);}();dt(Mr,"SafeBorderPadding",10);var $t=Mr;var Tl=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var Cl={exports:{}};Cl.exports;(function(i){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",s={};function c(f,h){if(!s[f]){s[f]={};for(var m=0;m<f.length;m++)s[f][f.charAt(m)]=m;}return s[f][h];}var l={compressToBase64:function compressToBase64(f){if(f==null)return"";var h=l._compress(f,6,function(m){return r.charAt(m);});switch(h.length%4){default:case 0:return h;case 1:return h+"===";case 2:return h+"==";case 3:return h+"=";}},decompressFromBase64:function decompressFromBase64(f){return f==null?"":f==""?null:l._decompress(f.length,32,function(h){return c(r,f.charAt(h));});},compressToUTF16:function compressToUTF16(f){return f==null?"":l._compress(f,15,function(h){return t(h+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(f){return f==null?"":f==""?null:l._decompress(f.length,16384,function(h){return f.charCodeAt(h)-32;});},//compress into uint8array (UCS-2 big endian format)
|
|
400
400
|
compressToUint8Array:function compressToUint8Array(f){for(var h=l.compress(f),m=new Uint8Array(h.length*2),u=0,y=h.length;u<y;u++){var T=h.charCodeAt(u);m[u*2]=T>>>8,m[u*2+1]=T%256;}return m;},//decompress from uint8array (UCS-2 big endian format)
|
|
401
401
|
decompressFromUint8Array:function decompressFromUint8Array(f){if(f==null)return l.decompress(f);for(var h=new Array(f.length/2),m=0,u=h.length;m<u;m++)h[m]=f[m*2]*256+f[m*2+1];var y=[];return h.forEach(function(T){y.push(t(T));}),l.decompress(y.join(""));},//compress into a string that is already URI encoded
|
|
402
402
|
compressToEncodedURIComponent:function compressToEncodedURIComponent(f){return f==null?"":l._compress(f,6,function(h){return n.charAt(h);});},//decompress from an output of compressToEncodedURIComponent
|
package/dist/appliance-plugin.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-Ci0eJ9wV.js");exports.ActiveContainerType=e.ActiveContainerType;exports.ApplianceMultiPlugin=e.ApplianceMultiPlugin;exports.ApplianceNames=e.ApplianceNames;exports.ApplianceSigleWrapper=e.ApplianceSigleWrapper;exports.ApplianceSinglePlugin=e.ApplianceSinglePlugin;exports.Cursor_Hover_Id=e.Cursor_Hover_Id;exports.ECanvasShowType=e.ECanvasShowType;exports.EDataType=e.EDataType;exports.EForceStopReason=e.EForceStopReason;exports.EImageType=e.EImageType;exports.EMatrixrRelationType=e.EMatrixrRelationType;exports.EOperationType=e.EOperationType;exports.EPostMessageType=e.EPostMessageType;exports.ERenderFilterType=e.ERenderFilterType;exports.EScaleType=e.EScaleType;exports.EStrokeType=e.EStrokeType;exports.EToolsKey=e.EToolsKey;exports.ElayerType=e.ElayerType;exports.EmitEventType=e.EmitEventType;exports.EventMessageType=e.EventMessageType;exports.EvevtWorkState=e.EvevtWorkState;exports.EvevtWorkType=e.EvevtWorkType;exports.InternalMsgEmitterType=e.InternalMsgEmitterType;exports.Main_View_Id=e.Main_View_Id;exports.Plugin=e.Plugin;exports.ShapeType=e.ShapeType;exports.Task_Time_Interval=e.Task_Time_Interval;exports.fullWorkerUrl=e.fullWorker;exports.subWorkerUrl=e.subWorker;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ae as s, a8 as p, ab as r, aa as t, a9 as l, a0 as i, U as n, o, af as E, l as T, E as y, aj as g, n as v, ak as c, m as k, t as S, k as m, ah as u, a2 as M, ag as _, q as A, ai as I, ad as W, R as d, al as P, ac as R, a3 as f, a6 as h, a7 as C } from "./index-
|
|
1
|
+
import { ae as s, a8 as p, ab as r, aa as t, a9 as l, a0 as i, U as n, o, af as E, l as T, E as y, aj as g, n as v, ak as c, m as k, t as S, k as m, ah as u, a2 as M, ag as _, q as A, ai as I, ad as W, R as d, al as P, ac as R, a3 as f, a6 as h, a7 as C } from "./index-Cqizo6hB.mjs";
|
|
2
2
|
export {
|
|
3
3
|
s as ActiveContainerType,
|
|
4
4
|
p as ApplianceMultiPlugin,
|
package/dist/fullWorker.js
CHANGED
|
@@ -396,7 +396,7 @@ _inherits(l,_r$default22);return _createClass(l,[{key:"texture",get:function get
|
|
|
396
396
|
h=="length"||// Node.js 0.10 has enumerable non-index properties on buffers.
|
|
397
397
|
n&&(h=="offset"||h=="parent")||// PhantomJS 2 has enumerable non-index properties on typed arrays.
|
|
398
398
|
s&&(h=="buffer"||h=="byteLength"||h=="byteOffset")||// Skip index properties.
|
|
399
|
-
AT(h,f)))&&l.push(h);return l;}var th=RT,bT=Object.prototype;function DT(i){var e=i&&i.constructor,t=typeof e=="function"&&e.prototype||bT;return i===t;}var vl=DT;function NT(i,e){return function(t){return i(e(t));};}var eh=NT,BT=eh,WT=BT(Object.keys,Object),FT=WT,UT=vl,YT=FT,XT=Object.prototype,zT=XT.hasOwnProperty;function $T(i){if(!UT(i))return YT(i);var e=[];for(var t in Object(i))zT.call(i,t)&&t!="constructor"&&e.push(t);return e;}var jT=$T,GT=ju,kT=qu;function HT(i){return i!=null&&kT(i.length)&&!GT(i);}var gl=HT,KT=th,VT=jT,ZT=gl;function JT(i){return ZT(i)?KT(i):VT(i);}var ml=JT,QT=Po,qT=ml;function _T(i,e){return i&&QT(e,qT(e),i);}var tC=_T;function eC(i){var e=[];if(i!=null)for(var t in Object(i))e.push(t);return e;}var rC=eC,nC=Qi,iC=vl,sC=rC,oC=Object.prototype,aC=oC.hasOwnProperty;function lC(i){if(!nC(i))return sC(i);var e=iC(i),t=[];for(var r in i)r=="constructor"&&(e||!aC.call(i,r))||t.push(r);return t;}var fC=lC,cC=th,uC=fC,hC=gl;function dC(i){return hC(i)?cC(i,!0):uC(i);}var yl=dC,pC=Po,vC=yl;function gC(i,e){return i&&pC(e,vC(e),i);}var mC=gC,ro={exports:{}};ro.exports;(function(i,e){var t=_r,r=e&&!e.nodeType&&e,n=r&&!0&&i&&!i.nodeType&&i,s=n&&n.exports===r,c=s?t.Buffer:void 0,l=c?c.allocUnsafe:void 0;function f(h,m){if(m)return h.slice();var u=h.length,y=l?l(u):new h.constructor(u);return h.copy(y),y;}i.exports=f;})(ro,ro.exports);var yC=ro.exports;function PC(i,e){var t=-1,r=i.length;for(e||(e=Array(r));++t<r;)e[t]=i[t];return e;}var SC=PC;function xC(i,e){for(var t=-1,r=i==null?0:i.length,n=0,s=[];++t<r;){var c=i[t];e(c,t,i)&&(s[n++]=c);}return s;}var rh=xC;function TC(){return[];}var nh=TC,CC=rh,IC=nh,OC=Object.prototype,wC=OC.propertyIsEnumerable,qc=Object.getOwnPropertySymbols,AC=qc?function(i){return i==null?[]:(i=Object(i),CC(qc(i),function(e){return wC.call(i,e);}));}:IC,Pl=AC,EC=Po,MC=Pl;function LC(i,e){return EC(i,MC(i),e);}var RC=LC;function bC(i,e){for(var t=-1,r=e.length,n=i.length;++t<r;)i[n+t]=e[t];return i;}var Sl=bC,DC=eh,NC=DC(Object.getPrototypeOf,Object),ih=NC,BC=Sl,WC=ih,FC=Pl,UC=nh,YC=Object.getOwnPropertySymbols,XC=YC?function(i){for(var e=[];i;)BC(e,FC(i)),i=WC(i);return e;}:UC,sh=XC,zC=Po,$C=sh;function jC(i,e){return zC(i,$C(i),e);}var GC=jC,kC=Sl,HC=qi;function KC(i,e,t){var r=e(i);return HC(i)?r:kC(r,t(i));}var oh=KC,VC=oh,ZC=Pl,JC=ml;function QC(i){return VC(i,JC,ZC);}var ah=QC,qC=oh,_C=sh,tI=yl;function eI(i){return qC(i,tI,_C);}var rI=eI,nI=jn,iI=_r,sI=nI(iI,"DataView"),oI=sI,aI=jn,lI=_r,fI=aI(lI,"Promise"),cI=fI,uI=jn,hI=_r,dI=uI(hI,"Set"),lh=dI,pI=jn,vI=_r,gI=pI(vI,"WeakMap"),mI=gI,nl=oI,il=hl,sl=cI,ol=lh,al=mI,fh=Si,Oi=Gu,_c="[object Map]",yI="[object Object]",tu="[object Promise]",eu="[object Set]",ru="[object WeakMap]",nu="[object DataView]",PI=Oi(nl),SI=Oi(il),xI=Oi(sl),TI=Oi(ol),CI=Oi(al),zn=fh;(nl&&zn(new nl(new ArrayBuffer(1)))!=nu||il&&zn(new il())!=_c||sl&&zn(sl.resolve())!=tu||ol&&zn(new ol())!=eu||al&&zn(new al())!=ru)&&(zn=function zn(i){var e=fh(i),t=e==yI?i.constructor:void 0,r=t?Oi(t):"";if(r)switch(r){case PI:return nu;case SI:return _c;case xI:return tu;case TI:return eu;case CI:return ru;}return e;});var xo=zn,II=Object.prototype,OI=II.hasOwnProperty;function wI(i){var e=i.length,t=new i.constructor(e);return e&&typeof i[0]=="string"&&OI.call(i,"index")&&(t.index=i.index,t.input=i.input),t;}var AI=wI,EI=_r,MI=EI.Uint8Array,ch=MI,iu=ch;function LI(i){var e=new i.constructor(i.byteLength);return new iu(e).set(new iu(i)),e;}var xl=LI,RI=xl;function bI(i,e){var t=e?RI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.byteLength);}var DI=bI,NI=/\w*$/;function BI(i){var e=new i.constructor(i.source,NI.exec(i));return e.lastIndex=i.lastIndex,e;}var WI=BI,su=Ji,ou=su?su.prototype:void 0,au=ou?ou.valueOf:void 0;function FI(i){return au?Object(au.call(i)):{};}var UI=FI,YI=xl;function XI(i,e){var t=e?YI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.length);}var zI=XI,$I=xl,jI=DI,GI=WI,kI=UI,HI=zI,KI="[object Boolean]",VI="[object Date]",ZI="[object Map]",JI="[object Number]",QI="[object RegExp]",qI="[object Set]",_I="[object String]",tO="[object Symbol]",eO="[object ArrayBuffer]",rO="[object DataView]",nO="[object Float32Array]",iO="[object Float64Array]",sO="[object Int8Array]",oO="[object Int16Array]",aO="[object Int32Array]",lO="[object Uint8Array]",fO="[object Uint8ClampedArray]",cO="[object Uint16Array]",uO="[object Uint32Array]";function hO(i,e,t){var r=i.constructor;switch(e){case eO:return $I(i);case KI:case VI:return new r(+i);case rO:return jI(i,t);case nO:case iO:case sO:case oO:case aO:case lO:case fO:case cO:case uO:return HI(i,t);case ZI:return new r();case JI:case _I:return new r(i);case QI:return GI(i);case qI:return new r();case tO:return kI(i);}}var dO=hO,pO=Qi,lu=Object.create,vO=/* @__PURE__ */function(){function i(){}return function(e){if(!pO(e))return{};if(lu)return lu(e);i.prototype=e;var t=new i();return i.prototype=void 0,t;};}(),gO=vO,mO=gO,yO=ih,PO=vl;function SO(i){return typeof i.constructor=="function"&&!PO(i)?mO(yO(i)):{};}var xO=SO,TO=xo,CO=pn,IO="[object Map]";function OO(i){return CO(i)&&TO(i)==IO;}var wO=OO,AO=wO,EO=So,fu=pl,cu=fu&&fu.isMap,MO=cu?EO(cu):AO,LO=MO,RO=xo,bO=pn,DO="[object Set]";function NO(i){return bO(i)&&RO(i)==DO;}var BO=NO,WO=BO,FO=So,uu=pl,hu=uu&&uu.isSet,UO=hu?FO(hu):WO,uh=UO,YO=/* @__PURE__ */Ln(uh),XO=Hu,zO=hx,$O=Zu,jO=tC,GO=mC,kO=yC,HO=SC,KO=RC,VO=GC,ZO=ah,JO=rI,QO=xo,qO=AI,_O=dO,t2=xO,e2=qi,r2=dl,n2=LO,i2=Qi,s2=uh,o2=ml,a2=yl,l2=1,f2=2,c2=4,hh="[object Arguments]",u2="[object Array]",h2="[object Boolean]",d2="[object Date]",p2="[object Error]",dh="[object Function]",v2="[object GeneratorFunction]",g2="[object Map]",m2="[object Number]",ph="[object Object]",y2="[object RegExp]",P2="[object Set]",S2="[object String]",x2="[object Symbol]",T2="[object WeakMap]",C2="[object ArrayBuffer]",I2="[object DataView]",O2="[object Float32Array]",w2="[object Float64Array]",A2="[object Int8Array]",E2="[object Int16Array]",M2="[object Int32Array]",L2="[object Uint8Array]",R2="[object Uint8ClampedArray]",b2="[object Uint16Array]",D2="[object Uint32Array]",Ye={};Ye[hh]=Ye[u2]=Ye[C2]=Ye[I2]=Ye[h2]=Ye[d2]=Ye[O2]=Ye[w2]=Ye[A2]=Ye[E2]=Ye[M2]=Ye[g2]=Ye[m2]=Ye[ph]=Ye[y2]=Ye[P2]=Ye[S2]=Ye[x2]=Ye[L2]=Ye[R2]=Ye[b2]=Ye[D2]=!0;Ye[p2]=Ye[dh]=Ye[T2]=!1;function qs(i,e,t,r,n,s){var c,l=e&l2,f=e&f2,h=e&c2;if(t&&(c=n?t(i,r,n,s):t(i)),c!==void 0)return c;if(!i2(i))return i;var m=e2(i);if(m){if(c=qO(i),!l)return HO(i,c);}else{var u=QO(i),y=u==dh||u==v2;if(r2(i))return kO(i,l);if(u==ph||u==hh||y&&!n){if(c=f||y?{}:t2(i),!l)return f?VO(i,GO(c,i)):KO(i,jO(c,i));}else{if(!Ye[u])return n?i:{};c=_O(i,u,l);}}s||(s=new XO());var T=s.get(i);if(T)return T;s.set(i,c),s2(i)?i.forEach(function(S){c.add(qs(S,e,t,S,i,s));}):n2(i)&&i.forEach(function(S,I){c.set(I,qs(S,e,t,I,i,s));});var A=h?f?JO:ZO:f?a2:o2,C=m?void 0:A(i);return zO(C||i,function(S,I){C&&(I=S,S=i[I]),$O(c,I,qs(S,e,t,I,i,s));}),c;}var N2=qs,B2=N2,W2=1,F2=4;function U2(i){return B2(i,W2|F2);}var Y2=U2,fr=/* @__PURE__ */Ln(Y2);var vh="1.1.27-beta.7",X2="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var i=window.__netlessUA||"";i+=" ".concat(X2,"@").concat(vh),window.__netlessUA=i;}var vr={useWorker:"auto",useSimple:!1,syncOpt:{interval:300,smoothSync:!0},cursor:{enable:!0,expirationTime:5e3,moveDelayTime:100},bufferSize:{full:2e4,sub:600},bezier:{enable:!0,maxDrawCount:1/0,combineUnitTime:300},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920,maxCombineTime:500},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1,extendFontFaces:[],loadFontFacesTimeout:1e4},longDottedStroke:{lineCap:"round",segment:1,gap:2},dottedStroke:{lineCap:"round",segment:1,gap:2},normalStroke:{lineCap:"round"},undoRedo:{enableGlobal:!1,maxStackLength:20}};function En(i){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=i.length;if(t<2)return"";var r=i[0],n=i[1];if(t===2)return"M".concat(ci(r),"L").concat(ci(n));var s="";for(var c=2,l=t-1;c<l;c++)r=i[c],n=i[c+1],s+=ui(r,n);return e?"M".concat(ui(i[0],i[1]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2]),"T").concat(s).concat(ui(i[t-1],i[0])).concat(ui(i[0],i[1]),"Z"):"M".concat(ci(i[0]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2])).concat(i.length>3?"T":"").concat(s,"L").concat(ci(i[t-1]));}var Mr=/*#__PURE__*/function(){function Mr(e){_classCallCheck(this,Mr);dt(this,"maxImageWidth",vr.pencilEraser.maxImageWidth);dt(this,"maxImageHeight",vr.pencilEraser.maxImageHeight);dt(this,"syncUnitTime",vr.syncOpt.interval);dt(this,"vNodes");dt(this,"drawLayer");dt(this,"fullLayer");dt(this,"workId");dt(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,s=e.workId,c=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=s,this.syncUnitTime=c.syncUnitTime||this.syncUnitTime;}return _createClass(Mr,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var s=r[r.length-1];return(n&&!s||n&&s&&!n.isNear(s,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,s,c;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((s=this.vNodes)==null?void 0:s.get(t))||void 0;t&&r&&(r.opt=e,(c=this.vNodes)==null||c.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,s;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var c=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(c.length!==1)return;var l=c[0],f=e.pos,h=e.zIndex,m=e.scale,u=e.angle,y=e.translate,T={};er(h)&&(T.zIndex=h),f&&(T.pos=[f[0],f[1]]),m&&(T.scale=m),u&&(T.rotate=u),y&&(T.translate=y),l.attr(T);var A=l==null?void 0:l.getBoundingClientRect();return A&&(t=Zt(t,{x:Math.floor(A.x-Mr.SafeBorderPadding),y:Math.floor(A.y-Mr.SafeBorderPadding),w:Math.floor(A.width+Mr.SafeBorderPadding*2),h:Math.floor(A.height+Mr.SafeBorderPadding*2)})),(s=this.vNodes)==null||s.setInfo(r,{rect:t,centerPos:f}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,s=e.pos,c=e.layer,l=c.parent;if(t)try{var h=(c.renderer.glRenderer||c.renderer.canvasRenderer).options.displayRatio,m=r.getBoundingClientRect(),u=m.width*h*c.worldScaling[0],y=m.height*h*c.worldScaling[1];var T=1;(u>this.maxImageWidth||y>this.maxImageHeight)&&(T=Math.min(this.maxImageWidth/u,this.maxImageHeight/y));var A=c.getAttribute("scale");A=[A[0]*T,A[1]*T];var C=c.parent.parent,S=c.getAttribute("translate"),_I30=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),C,{offscreen:l.offscreen,width:l.width,height:l.height,contextType:"2d",autoRender:!1,bufferSize:500},A,S),_d30=r.cloneNode(!0);if(!n||!n.length)return;this.addEraserlines(_d30,n,s,!1),_I30.appendChild(_d30);var g=_I30.parent;g.render();var p=_I30.renderer.canvasRenderer,x=p.context;if(!x)return;var E=p.options.displayRatio,R=_d30.getBoundingClientRect(),D={x:R.x,y:R.y,w:R.width,h:R.height},U={x:0,y:0,w:C.width,h:C.height};if(Zi(D,U)===Tr.outside){Lr(_d30,g),C.removeChild(g),this.isDelete=!0;return;}var W=fr(D);W.x=Math.floor(Math.max(D.x,0)),W.y=Math.floor(Math.max(D.y,0)),W.w=Math.min(D.x+D.w,C.width)-W.x,W.h=Math.min(D.y+D.h,C.height)-W.y;var Y=this.getGroupRect(W,E),B=Y.x,N=Y.y,G=Y.w,J=Y.h;var tt=x.getImageData(B,N,G,J);if(this.isTransparentRectByCanvas(tt)){Lr(_d30,g),C.removeChild(g),this.isDelete=!0,tt=null;return;}Lr(r,l);var ut=this.createSpriteNode({imageData:tt,safariRect:W,originRect:D,worldScaling:_I30.worldScaling});ut&&r.append(ut),Lr(_d30,g),C.removeChild(g),l.deleteTexture(tt),tt=null;}catch(f){console.error("[BaseShapeTool] drawEraserlines error:",f);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,s){var c=r.width,l=r.height,f="bitMap-".concat(e),h=t.layer(f,r),m=new mr({anchor:[0.5,0.5],pos:[c*0.5,l*0.5],size:[c,l],name:"viewport",id:e});return m.setAttribute("scale",n),m.setAttribute("translate",s),h.append(m),m;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),s=Math.floor(e.w*t),c=Math.floor(e.h*t);return{x:r,y:n,w:s,h:c};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var c=s.thickness,l=s.op;var _iterator14=_createForOfIteratorHelper(l),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var f=_step14.value;var h=f.map(function(A,C){return C%2?A-r[1]:A-r[0];}),m=this.computEraserPoints(h,c),u=En(m,!0),y={pos:[0,0],d:u,fillColor:"rgba(0,0,0,1)"},T=new Mn(y);T.addEventListener("beforerender",function(_ref164){var A=_ref164.detail;var C=A.context;n?C.blendFuncSeparate(C.ZERO,C.ZERO,C.ZERO,C.ZERO):C.globalCompositeOperation="destination-out";}),T.addEventListener("afterrender",function(_ref165){var A=_ref165.detail;var C=A.context;n?C.blendFuncSeparate(C.SRC_ALPHA,C.ONE_MINUS_SRC_ALPHA,C.ONE,C.ONE_MINUS_SRC_ALPHA):C.globalCompositeOperation="source-over";}),e.append(T);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,s=e.originRect;var c;if(typeof OffscreenCanvas=="function"){c=new OffscreenCanvas(t.width,t.height);var m=c.getContext("2d");m&&m.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){c=document.createElement("canvas"),c.width=t.width,c.height=t.height;var _m4=c.getContext("2d");_m4&&_m4.putImageData(t,0,0);}if(!c)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var l=[Math.floor(s.w/r[0]),Math.floor(s.h/r[1])],f=[Math.floor((n.x-s.x)/r[0]),Math.floor((n.y-s.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],h={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:l,texture:c,textureRect:f};return new Yu(h);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Jt(e[0],e[1]);return Jt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var s,c;for(var l=0;l<e.length;l+=2){var f=new Jt(e[l],e[l+1]);var h=void 0;if(l==e.length-2){var m=new Jt(e[l-2],e[l-1]);h=pt.Sub(f,m).uni(),s=f;}else{l===0&&(c=f);var _m5=new Jt(e[l+2],e[l+3]);h=pt.Sub(_m5,f).uni();}if(h){var _m6=pt.Per(h).mul(t);r.push(Jt.Sub(f,_m6)),n.push(Jt.Add(f,_m6));}}if(s&&c){var _l3=Jt.GetSemicircleStroke(s,r[r.length-1],-1,8),_f4=Jt.GetSemicircleStroke(c,n[0],-1,8);return r.concat(_l3,n.reverse(),_f4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var s;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var c=_step15.value;r?iE(r,c,e):(c.remove(),_pr(c,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(s=this.drawLayer)==null||s.getElementsByName(t).forEach(function(l){var f;l.remove(),_pr(l,(f=_this61.drawLayer)==null?void 0:f.parent);}):this.fullLayer.getElementsByName(t).forEach(function(l){l.remove(),_pr(l,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_pr(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var d;var t=e.node,r=e.opt,n=e.vNodes,s=e.willSerializeData,c=e.targetNode,l=r.zIndex,f=r.translate,h=r.angle,m=r.originPoint,u=r.scenePoint,y=r.scale,T=r.pointMap,A=r.thickness;var C;var S=c&&fr(c)||n.get(t.name);if(!S)return;er(l)&&(t.setAttribute("zIndex",l),S.opt.zIndex=l);var I=t.parent;if(I){if(m&&y&&c){var g=[S.op[0],S.op[1]];Ll(S.op,u,y,f);var p=[S.op[0],S.op[1]],x=[p[0]-g[0],p[1]-g[1]];if(S.centerPos=[S.centerPos[0]+x[0],S.centerPos[1]+x[1]],S.opt.translate=void 0,S.opt.scale=void 0,S.opt.eraserlines)for(var E=0;E<S.opt.eraserlines.length;E++){var _S$opt$eraserlines$E=S.opt.eraserlines[E],R=_S$opt$eraserlines$E.op,D=_S$opt$eraserlines$E.thickness;S.opt.eraserlines[E].thickness=Math.round(D*Math.max(y[0],y[1]));for(var U=0;U<R.length;U++)Rl(R[U],u,y,f);}}else if(f){if(t.setAttribute("translate",f),S.opt.translate=f,c){var _g6=[f[0]*I.worldScaling[0],f[1]*I.worldScaling[1]];C=Vi(S.rect,_g6),S.rect=C;}else{var _g7=Mr.getRectFromLayer(I,t.name);S.rect=_g7||S.rect;}}else if(er(h))if(t.setAttribute("rotate",h),S.opt.rotate=h,c)C=Hh(S.rect,h),S.rect=C;else{var _g8=Mr.getRectFromLayer(I,t.name);S.rect=_g8||S.rect;}if(T){var _g9=T.get(t.name);if(_g9)for(var _p10=0,_x37=0;_p10<S.op.length;_p10+=3,_x37++)S.op[_p10]=_g9[_x37][0],S.op[_p10+1]=_g9[_x37][1];}if(A&&(d=S==null?void 0:S.opt)!=null&&d.thickness&&(S.opt.thickness=A),s&&!(m&&y&&c)){if(f){var _g10=S.op.map(function(p,x){var E=x%3;return E===0?p+f[0]:E===1?p+f[1]:p;});if(S.op=_g10,S.centerPos=[S.centerPos[0]+f[0],S.centerPos[1]+f[1]],S!=null&&S.opt&&(S.opt.translate=void 0),S.opt.eraserlines)for(var _p11=0;_p11<S.opt.eraserlines.length;_p11++){var _x38=S.opt.eraserlines[_p11].op;for(var _E7=0;_E7<_x38.length;_E7++){var _R3=_x38[_E7].map(function(D,U){return U%2?D+f[1]:D+f[0];});S.opt.eraserlines[_p11].op[_E7]=_R3;}}}else if(er(h)){var _g11=S.op;if(JA(_g11,S.centerPos,h),S.op=_g11,S!=null&&S.opt&&(S.opt.rotate=void 0),S.opt.eraserlines)for(var _p12=0;_p12<S.opt.eraserlines.length;_p12++){var _x39=S.opt.eraserlines[_p12].op;for(var _E8=0;_E8<_x39.length;_E8++)QA(_x39[_E8],S.centerPos,h);}}}S&&n.setInfo(t.name,S);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Mr.SafeBorderPadding),y:Math.floor(n.y-Mr.SafeBorderPadding),w:Math.floor(n.width+Mr.SafeBorderPadding*2),h:Math.floor(n.height+Mr.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,s=e.updateOpt,c=e.willSerializeData;return!!(c&&(s.angle||s.translate)||s.thickness&&r.thickness&&r.thickness!==s.thickness||s.strokeType&&r.strokeType&&r.strokeType!==s.strokeType||s.originPoint&&s.scenePoint&&s.scale||s.pointMap&&s.pointMap.has(n.name)||t===Tt.Text&&(s.fontSize||s.translate||s.textInfos&&s.textInfos.get(n.name))||t===Tt.Image&&(s.angle||s.translate||s.scale||s.strokeColor&&r.type===po.Iconify)||t===s.toolsType&&s.willRefresh||r.eraserlines&&r.eraserlines.length&&(s.strokeColor||s.fillColor));}}]);}();dt(Mr,"SafeBorderPadding",10);var $t=Mr;var Tl=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var Cl={exports:{}};Cl.exports;(function(i){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",s={};function c(f,h){if(!s[f]){s[f]={};for(var m=0;m<f.length;m++)s[f][f.charAt(m)]=m;}return s[f][h];}var l={compressToBase64:function compressToBase64(f){if(f==null)return"";var h=l._compress(f,6,function(m){return r.charAt(m);});switch(h.length%4){default:case 0:return h;case 1:return h+"===";case 2:return h+"==";case 3:return h+"=";}},decompressFromBase64:function decompressFromBase64(f){return f==null?"":f==""?null:l._decompress(f.length,32,function(h){return c(r,f.charAt(h));});},compressToUTF16:function compressToUTF16(f){return f==null?"":l._compress(f,15,function(h){return t(h+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(f){return f==null?"":f==""?null:l._decompress(f.length,16384,function(h){return f.charCodeAt(h)-32;});},//compress into uint8array (UCS-2 big endian format)
|
|
399
|
+
AT(h,f)))&&l.push(h);return l;}var th=RT,bT=Object.prototype;function DT(i){var e=i&&i.constructor,t=typeof e=="function"&&e.prototype||bT;return i===t;}var vl=DT;function NT(i,e){return function(t){return i(e(t));};}var eh=NT,BT=eh,WT=BT(Object.keys,Object),FT=WT,UT=vl,YT=FT,XT=Object.prototype,zT=XT.hasOwnProperty;function $T(i){if(!UT(i))return YT(i);var e=[];for(var t in Object(i))zT.call(i,t)&&t!="constructor"&&e.push(t);return e;}var jT=$T,GT=ju,kT=qu;function HT(i){return i!=null&&kT(i.length)&&!GT(i);}var gl=HT,KT=th,VT=jT,ZT=gl;function JT(i){return ZT(i)?KT(i):VT(i);}var ml=JT,QT=Po,qT=ml;function _T(i,e){return i&&QT(e,qT(e),i);}var tC=_T;function eC(i){var e=[];if(i!=null)for(var t in Object(i))e.push(t);return e;}var rC=eC,nC=Qi,iC=vl,sC=rC,oC=Object.prototype,aC=oC.hasOwnProperty;function lC(i){if(!nC(i))return sC(i);var e=iC(i),t=[];for(var r in i)r=="constructor"&&(e||!aC.call(i,r))||t.push(r);return t;}var fC=lC,cC=th,uC=fC,hC=gl;function dC(i){return hC(i)?cC(i,!0):uC(i);}var yl=dC,pC=Po,vC=yl;function gC(i,e){return i&&pC(e,vC(e),i);}var mC=gC,ro={exports:{}};ro.exports;(function(i,e){var t=_r,r=e&&!e.nodeType&&e,n=r&&!0&&i&&!i.nodeType&&i,s=n&&n.exports===r,c=s?t.Buffer:void 0,l=c?c.allocUnsafe:void 0;function f(h,m){if(m)return h.slice();var u=h.length,y=l?l(u):new h.constructor(u);return h.copy(y),y;}i.exports=f;})(ro,ro.exports);var yC=ro.exports;function PC(i,e){var t=-1,r=i.length;for(e||(e=Array(r));++t<r;)e[t]=i[t];return e;}var SC=PC;function xC(i,e){for(var t=-1,r=i==null?0:i.length,n=0,s=[];++t<r;){var c=i[t];e(c,t,i)&&(s[n++]=c);}return s;}var rh=xC;function TC(){return[];}var nh=TC,CC=rh,IC=nh,OC=Object.prototype,wC=OC.propertyIsEnumerable,qc=Object.getOwnPropertySymbols,AC=qc?function(i){return i==null?[]:(i=Object(i),CC(qc(i),function(e){return wC.call(i,e);}));}:IC,Pl=AC,EC=Po,MC=Pl;function LC(i,e){return EC(i,MC(i),e);}var RC=LC;function bC(i,e){for(var t=-1,r=e.length,n=i.length;++t<r;)i[n+t]=e[t];return i;}var Sl=bC,DC=eh,NC=DC(Object.getPrototypeOf,Object),ih=NC,BC=Sl,WC=ih,FC=Pl,UC=nh,YC=Object.getOwnPropertySymbols,XC=YC?function(i){for(var e=[];i;)BC(e,FC(i)),i=WC(i);return e;}:UC,sh=XC,zC=Po,$C=sh;function jC(i,e){return zC(i,$C(i),e);}var GC=jC,kC=Sl,HC=qi;function KC(i,e,t){var r=e(i);return HC(i)?r:kC(r,t(i));}var oh=KC,VC=oh,ZC=Pl,JC=ml;function QC(i){return VC(i,JC,ZC);}var ah=QC,qC=oh,_C=sh,tI=yl;function eI(i){return qC(i,tI,_C);}var rI=eI,nI=jn,iI=_r,sI=nI(iI,"DataView"),oI=sI,aI=jn,lI=_r,fI=aI(lI,"Promise"),cI=fI,uI=jn,hI=_r,dI=uI(hI,"Set"),lh=dI,pI=jn,vI=_r,gI=pI(vI,"WeakMap"),mI=gI,nl=oI,il=hl,sl=cI,ol=lh,al=mI,fh=Si,Oi=Gu,_c="[object Map]",yI="[object Object]",tu="[object Promise]",eu="[object Set]",ru="[object WeakMap]",nu="[object DataView]",PI=Oi(nl),SI=Oi(il),xI=Oi(sl),TI=Oi(ol),CI=Oi(al),zn=fh;(nl&&zn(new nl(new ArrayBuffer(1)))!=nu||il&&zn(new il())!=_c||sl&&zn(sl.resolve())!=tu||ol&&zn(new ol())!=eu||al&&zn(new al())!=ru)&&(zn=function zn(i){var e=fh(i),t=e==yI?i.constructor:void 0,r=t?Oi(t):"";if(r)switch(r){case PI:return nu;case SI:return _c;case xI:return tu;case TI:return eu;case CI:return ru;}return e;});var xo=zn,II=Object.prototype,OI=II.hasOwnProperty;function wI(i){var e=i.length,t=new i.constructor(e);return e&&typeof i[0]=="string"&&OI.call(i,"index")&&(t.index=i.index,t.input=i.input),t;}var AI=wI,EI=_r,MI=EI.Uint8Array,ch=MI,iu=ch;function LI(i){var e=new i.constructor(i.byteLength);return new iu(e).set(new iu(i)),e;}var xl=LI,RI=xl;function bI(i,e){var t=e?RI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.byteLength);}var DI=bI,NI=/\w*$/;function BI(i){var e=new i.constructor(i.source,NI.exec(i));return e.lastIndex=i.lastIndex,e;}var WI=BI,su=Ji,ou=su?su.prototype:void 0,au=ou?ou.valueOf:void 0;function FI(i){return au?Object(au.call(i)):{};}var UI=FI,YI=xl;function XI(i,e){var t=e?YI(i.buffer):i.buffer;return new i.constructor(t,i.byteOffset,i.length);}var zI=XI,$I=xl,jI=DI,GI=WI,kI=UI,HI=zI,KI="[object Boolean]",VI="[object Date]",ZI="[object Map]",JI="[object Number]",QI="[object RegExp]",qI="[object Set]",_I="[object String]",tO="[object Symbol]",eO="[object ArrayBuffer]",rO="[object DataView]",nO="[object Float32Array]",iO="[object Float64Array]",sO="[object Int8Array]",oO="[object Int16Array]",aO="[object Int32Array]",lO="[object Uint8Array]",fO="[object Uint8ClampedArray]",cO="[object Uint16Array]",uO="[object Uint32Array]";function hO(i,e,t){var r=i.constructor;switch(e){case eO:return $I(i);case KI:case VI:return new r(+i);case rO:return jI(i,t);case nO:case iO:case sO:case oO:case aO:case lO:case fO:case cO:case uO:return HI(i,t);case ZI:return new r();case JI:case _I:return new r(i);case QI:return GI(i);case qI:return new r();case tO:return kI(i);}}var dO=hO,pO=Qi,lu=Object.create,vO=/* @__PURE__ */function(){function i(){}return function(e){if(!pO(e))return{};if(lu)return lu(e);i.prototype=e;var t=new i();return i.prototype=void 0,t;};}(),gO=vO,mO=gO,yO=ih,PO=vl;function SO(i){return typeof i.constructor=="function"&&!PO(i)?mO(yO(i)):{};}var xO=SO,TO=xo,CO=pn,IO="[object Map]";function OO(i){return CO(i)&&TO(i)==IO;}var wO=OO,AO=wO,EO=So,fu=pl,cu=fu&&fu.isMap,MO=cu?EO(cu):AO,LO=MO,RO=xo,bO=pn,DO="[object Set]";function NO(i){return bO(i)&&RO(i)==DO;}var BO=NO,WO=BO,FO=So,uu=pl,hu=uu&&uu.isSet,UO=hu?FO(hu):WO,uh=UO,YO=/* @__PURE__ */Ln(uh),XO=Hu,zO=hx,$O=Zu,jO=tC,GO=mC,kO=yC,HO=SC,KO=RC,VO=GC,ZO=ah,JO=rI,QO=xo,qO=AI,_O=dO,t2=xO,e2=qi,r2=dl,n2=LO,i2=Qi,s2=uh,o2=ml,a2=yl,l2=1,f2=2,c2=4,hh="[object Arguments]",u2="[object Array]",h2="[object Boolean]",d2="[object Date]",p2="[object Error]",dh="[object Function]",v2="[object GeneratorFunction]",g2="[object Map]",m2="[object Number]",ph="[object Object]",y2="[object RegExp]",P2="[object Set]",S2="[object String]",x2="[object Symbol]",T2="[object WeakMap]",C2="[object ArrayBuffer]",I2="[object DataView]",O2="[object Float32Array]",w2="[object Float64Array]",A2="[object Int8Array]",E2="[object Int16Array]",M2="[object Int32Array]",L2="[object Uint8Array]",R2="[object Uint8ClampedArray]",b2="[object Uint16Array]",D2="[object Uint32Array]",Ye={};Ye[hh]=Ye[u2]=Ye[C2]=Ye[I2]=Ye[h2]=Ye[d2]=Ye[O2]=Ye[w2]=Ye[A2]=Ye[E2]=Ye[M2]=Ye[g2]=Ye[m2]=Ye[ph]=Ye[y2]=Ye[P2]=Ye[S2]=Ye[x2]=Ye[L2]=Ye[R2]=Ye[b2]=Ye[D2]=!0;Ye[p2]=Ye[dh]=Ye[T2]=!1;function qs(i,e,t,r,n,s){var c,l=e&l2,f=e&f2,h=e&c2;if(t&&(c=n?t(i,r,n,s):t(i)),c!==void 0)return c;if(!i2(i))return i;var m=e2(i);if(m){if(c=qO(i),!l)return HO(i,c);}else{var u=QO(i),y=u==dh||u==v2;if(r2(i))return kO(i,l);if(u==ph||u==hh||y&&!n){if(c=f||y?{}:t2(i),!l)return f?VO(i,GO(c,i)):KO(i,jO(c,i));}else{if(!Ye[u])return n?i:{};c=_O(i,u,l);}}s||(s=new XO());var T=s.get(i);if(T)return T;s.set(i,c),s2(i)?i.forEach(function(S){c.add(qs(S,e,t,S,i,s));}):n2(i)&&i.forEach(function(S,I){c.set(I,qs(S,e,t,I,i,s));});var A=h?f?JO:ZO:f?a2:o2,C=m?void 0:A(i);return zO(C||i,function(S,I){C&&(I=S,S=i[I]),$O(c,I,qs(S,e,t,I,i,s));}),c;}var N2=qs,B2=N2,W2=1,F2=4;function U2(i){return B2(i,W2|F2);}var Y2=U2,fr=/* @__PURE__ */Ln(Y2);var vh="1.1.27",X2="@netless/appliance-plugin";if((typeof window==="undefined"?"undefined":_typeof(window))<"u"){var i=window.__netlessUA||"";i+=" ".concat(X2,"@").concat(vh),window.__netlessUA=i;}var vr={useWorker:"auto",useSimple:!1,syncOpt:{interval:300,smoothSync:!0},cursor:{enable:!0,expirationTime:5e3,moveDelayTime:100},bufferSize:{full:2e4,sub:600},bezier:{enable:!0,maxDrawCount:1/0,combineUnitTime:300},pencilEraser:{useBitMap:!0,maxImageWidth:1920,maxImageHeight:1920,maxCombineTime:500},strokeWidth:{min:1,max:10},textEditor:{showFloatBar:!0,canSelectorSwitch:!0,rightBoundBreak:!1,extendFontFaces:[],loadFontFacesTimeout:1e4},longDottedStroke:{lineCap:"round",segment:1,gap:2},dottedStroke:{lineCap:"round",segment:1,gap:2},normalStroke:{lineCap:"round"},undoRedo:{enableGlobal:!1,maxStackLength:20}};function En(i){var e=arguments.length>1&&arguments[1]!==undefined?arguments[1]:!0;var t=i.length;if(t<2)return"";var r=i[0],n=i[1];if(t===2)return"M".concat(ci(r),"L").concat(ci(n));var s="";for(var c=2,l=t-1;c<l;c++)r=i[c],n=i[c+1],s+=ui(r,n);return e?"M".concat(ui(i[0],i[1]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2]),"T").concat(s).concat(ui(i[t-1],i[0])).concat(ui(i[0],i[1]),"Z"):"M".concat(ci(i[0]),"Q").concat(ci(i[1])).concat(ui(i[1],i[2])).concat(i.length>3?"T":"").concat(s,"L").concat(ci(i[t-1]));}var Mr=/*#__PURE__*/function(){function Mr(e){_classCallCheck(this,Mr);dt(this,"maxImageWidth",vr.pencilEraser.maxImageWidth);dt(this,"maxImageHeight",vr.pencilEraser.maxImageHeight);dt(this,"syncUnitTime",vr.syncOpt.interval);dt(this,"vNodes");dt(this,"drawLayer");dt(this,"fullLayer");dt(this,"workId");dt(this,"isDelete",!1);var t=e.vNodes,r=e.fullLayer,n=e.drawLayer,s=e.workId,c=e.toolsOpt;this.vNodes=t,this.fullLayer=r,this.drawLayer=n,this.workId=s,this.syncUnitTime=c.syncUnitTime||this.syncUnitTime;}return _createClass(Mr,[{key:"baseConsumeResult",get:function get(){return{workId:this.workId,toolsType:this.toolsType,opt:this.workOptions};}},{key:"filterSamePoints",value:function filterSamePoints(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0.01;return e.reduce(function(r,n){var s=r[r.length-1];return(n&&!s||n&&s&&!n.isNear(s,t))&&r.push(n),r;},[]);}/** 设置工作id */},{key:"setWorkId",value:function setWorkId(e){this.workId=e;}},{key:"getWorkId",value:function getWorkId(){return this.workId;}/** 获取工作选项配置 */},{key:"getWorkOptions",value:function getWorkOptions(){return this.workOptions;}/** 设置工作选项配置 */},{key:"setWorkOptions",value:function setWorkOptions(e){var n,s,c;this.workOptions=e,this.syncUnitTime=e.syncUnitTime||this.syncUnitTime;var t=(n=this.workId)==null?void 0:n.toString(),r=t&&((s=this.vNodes)==null?void 0:s.get(t))||void 0;t&&r&&(r.opt=e,(c=this.vNodes)==null||c.setInfo(t,r));}/** 更新服务端同步配置,返回绘制结果 */},{key:"updataOptService",value:function updataOptService(e){var n,s;var t;var r=(n=this.workId)==null?void 0:n.toString();if(r&&e){var c=this.fullLayer.getElementsByName(r)||this.drawLayer&&this.drawLayer.getElementsByName(r)||[];if(c.length!==1)return;var l=c[0],f=e.pos,h=e.zIndex,m=e.scale,u=e.angle,y=e.translate,T={};er(h)&&(T.zIndex=h),f&&(T.pos=[f[0],f[1]]),m&&(T.scale=m),u&&(T.rotate=u),y&&(T.translate=y),l.attr(T);var A=l==null?void 0:l.getBoundingClientRect();return A&&(t=Zt(t,{x:Math.floor(A.x-Mr.SafeBorderPadding),y:Math.floor(A.y-Mr.SafeBorderPadding),w:Math.floor(A.width+Mr.SafeBorderPadding*2),h:Math.floor(A.height+Mr.SafeBorderPadding*2)})),(s=this.vNodes)==null||s.setInfo(r,{rect:t,centerPos:f}),t;}}},{key:"drawEraserlines",value:function drawEraserlines(e,t){var r=e.group,n=e.eraserlines,s=e.pos,c=e.layer,l=c.parent;if(t)try{var h=(c.renderer.glRenderer||c.renderer.canvasRenderer).options.displayRatio,m=r.getBoundingClientRect(),u=m.width*h*c.worldScaling[0],y=m.height*h*c.worldScaling[1];var T=1;(u>this.maxImageWidth||y>this.maxImageHeight)&&(T=Math.min(this.maxImageWidth/u,this.maxImageHeight/y));var A=c.getAttribute("scale");A=[A[0]*T,A[1]*T];var C=c.parent.parent,S=c.getAttribute("translate"),_I30=this.createVmRenderNode("".concat(this.workId,"_bitMapLayer"),C,{offscreen:l.offscreen,width:l.width,height:l.height,contextType:"2d",autoRender:!1,bufferSize:500},A,S),_d30=r.cloneNode(!0);if(!n||!n.length)return;this.addEraserlines(_d30,n,s,!1),_I30.appendChild(_d30);var g=_I30.parent;g.render();var p=_I30.renderer.canvasRenderer,x=p.context;if(!x)return;var E=p.options.displayRatio,R=_d30.getBoundingClientRect(),D={x:R.x,y:R.y,w:R.width,h:R.height},U={x:0,y:0,w:C.width,h:C.height};if(Zi(D,U)===Tr.outside){Lr(_d30,g),C.removeChild(g),this.isDelete=!0;return;}var W=fr(D);W.x=Math.floor(Math.max(D.x,0)),W.y=Math.floor(Math.max(D.y,0)),W.w=Math.min(D.x+D.w,C.width)-W.x,W.h=Math.min(D.y+D.h,C.height)-W.y;var Y=this.getGroupRect(W,E),B=Y.x,N=Y.y,G=Y.w,J=Y.h;var tt=x.getImageData(B,N,G,J);if(this.isTransparentRectByCanvas(tt)){Lr(_d30,g),C.removeChild(g),this.isDelete=!0,tt=null;return;}Lr(r,l);var ut=this.createSpriteNode({imageData:tt,safariRect:W,originRect:D,worldScaling:_I30.worldScaling});ut&&r.append(ut),Lr(_d30,g),C.removeChild(g),l.deleteTexture(tt),tt=null;}catch(f){console.error("[BaseShapeTool] drawEraserlines error:",f);return;}}},{key:"createVmRenderNode",value:function createVmRenderNode(e,t,r,n,s){var c=r.width,l=r.height,f="bitMap-".concat(e),h=t.layer(f,r),m=new mr({anchor:[0.5,0.5],pos:[c*0.5,l*0.5],size:[c,l],name:"viewport",id:e});return m.setAttribute("scale",n),m.setAttribute("translate",s),h.append(m),m;}},{key:"getGroupRect",value:function getGroupRect(e,t){var r=Math.floor(e.x*t),n=Math.floor(e.y*t),s=Math.floor(e.w*t),c=Math.floor(e.h*t);return{x:r,y:n,w:s,h:c};}},{key:"addEraserlines",value:function addEraserlines(e,t,r){var n=arguments.length>3&&arguments[3]!==undefined?arguments[3]:!0;var _iterator13=_createForOfIteratorHelper(t),_step13;try{for(_iterator13.s();!(_step13=_iterator13.n()).done;){var s=_step13.value;var c=s.thickness,l=s.op;var _iterator14=_createForOfIteratorHelper(l),_step14;try{for(_iterator14.s();!(_step14=_iterator14.n()).done;){var f=_step14.value;var h=f.map(function(A,C){return C%2?A-r[1]:A-r[0];}),m=this.computEraserPoints(h,c),u=En(m,!0),y={pos:[0,0],d:u,fillColor:"rgba(0,0,0,1)"},T=new Mn(y);T.addEventListener("beforerender",function(_ref164){var A=_ref164.detail;var C=A.context;n?C.blendFuncSeparate(C.ZERO,C.ZERO,C.ZERO,C.ZERO):C.globalCompositeOperation="destination-out";}),T.addEventListener("afterrender",function(_ref165){var A=_ref165.detail;var C=A.context;n?C.blendFuncSeparate(C.SRC_ALPHA,C.ONE_MINUS_SRC_ALPHA,C.ONE,C.ONE_MINUS_SRC_ALPHA):C.globalCompositeOperation="source-over";}),e.append(T);}}catch(err){_iterator14.e(err);}finally{_iterator14.f();}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}},{key:"isTransparentRectByCanvas",value:function isTransparentRectByCanvas(e){var t=!0;for(var r=0;r<e.data.length;r+=4)if(e.data[r+3]!==0){t=!1;break;}return t;}},{key:"createSpriteNode",value:function createSpriteNode(e){var t=e.imageData,r=e.worldScaling,n=e.safariRect,s=e.originRect;var c;if(typeof OffscreenCanvas=="function"){c=new OffscreenCanvas(t.width,t.height);var m=c.getContext("2d");m&&m.putImageData(t,0,0);}else if((typeof document==="undefined"?"undefined":_typeof(document))<"u"){c=document.createElement("canvas"),c.width=t.width,c.height=t.height;var _m4=c.getContext("2d");_m4&&_m4.putImageData(t,0,0);}if(!c)return console.warn("Failed to create imageEraserBitmap Sprite"),null;var l=[Math.floor(s.w/r[0]),Math.floor(s.h/r[1])],f=[Math.floor((n.x-s.x)/r[0]),Math.floor((n.y-s.y)/r[1]),Math.floor(n.w/r[0]),Math.floor(n.h/r[1])],h={name:"eraserTexture",anchor:[0.5,0.5],pos:[0,0],size:l,texture:c,textureRect:f};return new Yu(h);}},{key:"computEraserPoints",value:function computEraserPoints(e,t){var r=Math.ceil(t/2);return e.length===2?this.computDot(e,r):this.computLine(e,r);}},{key:"computDot",value:function computDot(e,t){var r=new Jt(e[0],e[1]);return Jt.GetDotStroke(r,t,8);}},{key:"computLine",value:function computLine(e,t){var r=[],n=[];var s,c;for(var l=0;l<e.length;l+=2){var f=new Jt(e[l],e[l+1]);var h=void 0;if(l==e.length-2){var m=new Jt(e[l-2],e[l-1]);h=pt.Sub(f,m).uni(),s=f;}else{l===0&&(c=f);var _m5=new Jt(e[l+2],e[l+3]);h=pt.Sub(_m5,f).uni();}if(h){var _m6=pt.Per(h).mul(t);r.push(Jt.Sub(f,_m6)),n.push(Jt.Add(f,_m6));}}if(s&&c){var _l3=Jt.GetSemicircleStroke(s,r[r.length-1],-1,8),_f4=Jt.GetSemicircleStroke(c,n[0],-1,8);return r.concat(_l3,n.reverse(),_f4);}return[];}},{key:"replace",value:function replace(e,t,r){var _this61=this;var s;if(!t){r&&e.append(r);return;}var n=e.getElementsByName(t);if(n.length){var _iterator15=_createForOfIteratorHelper(n),_step15;try{for(_iterator15.s();!(_step15=_iterator15.n()).done;){var c=_step15.value;r?iE(r,c,e):(c.remove(),_pr(c,e.parent));}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}else r&&e.append(r);this.fullLayer!==this.drawLayer&&(this.fullLayer===e?(s=this.drawLayer)==null||s.getElementsByName(t).forEach(function(l){var f;l.remove(),_pr(l,(f=_this61.drawLayer)==null?void 0:f.parent);}):this.fullLayer.getElementsByName(t).forEach(function(l){l.remove(),_pr(l,_this61.fullLayer.parent);}));}},{key:"removeDrawCountNodes",value:function removeDrawCountNodes(e,t){var r=[];e.getElementsByName(this.workId).forEach(function(n){n.id&&t&&Number(n.id)<t&&r.push(n);});for(var _i2=0,_r3=r;_i2<_r3.length;_i2++){var n=_r3[_i2];n.remove(),_pr(n,e.parent);}}}],[{key:"updateNodeOpt",value:function updateNodeOpt(e){var d;var t=e.node,r=e.opt,n=e.vNodes,s=e.willSerializeData,c=e.targetNode,l=r.zIndex,f=r.translate,h=r.angle,m=r.originPoint,u=r.scenePoint,y=r.scale,T=r.pointMap,A=r.thickness;var C;var S=c&&fr(c)||n.get(t.name);if(!S)return;er(l)&&(t.setAttribute("zIndex",l),S.opt.zIndex=l);var I=t.parent;if(I){if(m&&y&&c){var g=[S.op[0],S.op[1]];Ll(S.op,u,y,f);var p=[S.op[0],S.op[1]],x=[p[0]-g[0],p[1]-g[1]];if(S.centerPos=[S.centerPos[0]+x[0],S.centerPos[1]+x[1]],S.opt.translate=void 0,S.opt.scale=void 0,S.opt.eraserlines)for(var E=0;E<S.opt.eraserlines.length;E++){var _S$opt$eraserlines$E=S.opt.eraserlines[E],R=_S$opt$eraserlines$E.op,D=_S$opt$eraserlines$E.thickness;S.opt.eraserlines[E].thickness=Math.round(D*Math.max(y[0],y[1]));for(var U=0;U<R.length;U++)Rl(R[U],u,y,f);}}else if(f){if(t.setAttribute("translate",f),S.opt.translate=f,c){var _g6=[f[0]*I.worldScaling[0],f[1]*I.worldScaling[1]];C=Vi(S.rect,_g6),S.rect=C;}else{var _g7=Mr.getRectFromLayer(I,t.name);S.rect=_g7||S.rect;}}else if(er(h))if(t.setAttribute("rotate",h),S.opt.rotate=h,c)C=Hh(S.rect,h),S.rect=C;else{var _g8=Mr.getRectFromLayer(I,t.name);S.rect=_g8||S.rect;}if(T){var _g9=T.get(t.name);if(_g9)for(var _p10=0,_x37=0;_p10<S.op.length;_p10+=3,_x37++)S.op[_p10]=_g9[_x37][0],S.op[_p10+1]=_g9[_x37][1];}if(A&&(d=S==null?void 0:S.opt)!=null&&d.thickness&&(S.opt.thickness=A),s&&!(m&&y&&c)){if(f){var _g10=S.op.map(function(p,x){var E=x%3;return E===0?p+f[0]:E===1?p+f[1]:p;});if(S.op=_g10,S.centerPos=[S.centerPos[0]+f[0],S.centerPos[1]+f[1]],S!=null&&S.opt&&(S.opt.translate=void 0),S.opt.eraserlines)for(var _p11=0;_p11<S.opt.eraserlines.length;_p11++){var _x38=S.opt.eraserlines[_p11].op;for(var _E7=0;_E7<_x38.length;_E7++){var _R3=_x38[_E7].map(function(D,U){return U%2?D+f[1]:D+f[0];});S.opt.eraserlines[_p11].op[_E7]=_R3;}}}else if(er(h)){var _g11=S.op;if(JA(_g11,S.centerPos,h),S.op=_g11,S!=null&&S.opt&&(S.opt.rotate=void 0),S.opt.eraserlines)for(var _p12=0;_p12<S.opt.eraserlines.length;_p12++){var _x39=S.opt.eraserlines[_p12].op;for(var _E8=0;_E8<_x39.length;_E8++)QA(_x39[_E8],S.centerPos,h);}}}S&&n.setInfo(t.name,S);}}},{key:"getCenterPos",value:function getCenterPos(e,t){var r=t.worldPosition,n=t.worldScaling;return[(e.x+e.w/2-r[0])/n[0],(e.y+e.h/2-r[1])/n[1]];}},{key:"getRectFromLayer",value:function getRectFromLayer(e,t){var r=e.getElementsByName(t)[0];if(r){var n=r.getBoundingClientRect();return{x:Math.floor(n.x-Mr.SafeBorderPadding),y:Math.floor(n.y-Mr.SafeBorderPadding),w:Math.floor(n.width+Mr.SafeBorderPadding*2),h:Math.floor(n.height+Mr.SafeBorderPadding*2)};}}},{key:"isWillRefresh",value:function isWillRefresh(e){var t=e.toolsType,r=e.opt,n=e.node,s=e.updateOpt,c=e.willSerializeData;return!!(c&&(s.angle||s.translate)||s.thickness&&r.thickness&&r.thickness!==s.thickness||s.strokeType&&r.strokeType&&r.strokeType!==s.strokeType||s.originPoint&&s.scenePoint&&s.scale||s.pointMap&&s.pointMap.has(n.name)||t===Tt.Text&&(s.fontSize||s.translate||s.textInfos&&s.textInfos.get(n.name))||t===Tt.Image&&(s.angle||s.translate||s.scale||s.strokeColor&&r.type===po.Iconify)||t===s.toolsType&&s.willRefresh||r.eraserlines&&r.eraserlines.length&&(s.strokeColor||s.fillColor));}}]);}();dt(Mr,"SafeBorderPadding",10);var $t=Mr;var Tl=Object.freeze([Object.freeze({width:18,height:26}),Object.freeze({width:26,height:34}),Object.freeze({width:34,height:50}),Object.freeze({width:48,height:74})]);var Cl={exports:{}};Cl.exports;(function(i){var e=function(){var t=String.fromCharCode,r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",s={};function c(f,h){if(!s[f]){s[f]={};for(var m=0;m<f.length;m++)s[f][f.charAt(m)]=m;}return s[f][h];}var l={compressToBase64:function compressToBase64(f){if(f==null)return"";var h=l._compress(f,6,function(m){return r.charAt(m);});switch(h.length%4){default:case 0:return h;case 1:return h+"===";case 2:return h+"==";case 3:return h+"=";}},decompressFromBase64:function decompressFromBase64(f){return f==null?"":f==""?null:l._decompress(f.length,32,function(h){return c(r,f.charAt(h));});},compressToUTF16:function compressToUTF16(f){return f==null?"":l._compress(f,15,function(h){return t(h+32);})+" ";},decompressFromUTF16:function decompressFromUTF16(f){return f==null?"":f==""?null:l._decompress(f.length,16384,function(h){return f.charCodeAt(h)-32;});},//compress into uint8array (UCS-2 big endian format)
|
|
400
400
|
compressToUint8Array:function compressToUint8Array(f){for(var h=l.compress(f),m=new Uint8Array(h.length*2),u=0,y=h.length;u<y;u++){var T=h.charCodeAt(u);m[u*2]=T>>>8,m[u*2+1]=T%256;}return m;},//decompress from uint8array (UCS-2 big endian format)
|
|
401
401
|
decompressFromUint8Array:function decompressFromUint8Array(f){if(f==null)return l.decompress(f);for(var h=new Array(f.length/2),m=0,u=h.length;m<u;m++)h[m]=f[m*2]*256+f[m*2+1];var y=[];return h.forEach(function(T){y.push(t(T));}),l.decompress(y.join(""));},//compress into a string that is already URI encoded
|
|
402
402
|
compressToEncodedURIComponent:function compressToEncodedURIComponent(f){return f==null?"":l._compress(f,6,function(h){return n.charAt(h);});},//decompress from an output of compressToEncodedURIComponent
|