@meta2d/core 1.0.48 → 1.0.50

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/src/data.js CHANGED
@@ -79,5 +79,6 @@ export var inheritanceProps = [
79
79
  'flipX',
80
80
  'flipY',
81
81
  'lineDash',
82
+ 'visible'
82
83
  ];
83
84
  //# sourceMappingURL=data.js.map
package/src/data.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"data.js","sourceRoot":"","sources":["../../../packages/core/src/data.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,SAUX;AAVD,WAAY,SAAS;IACnB,yCAAI,CAAA;IACJ,qDAAU,CAAA;IACV,qDAAU,CAAA;IACV,yCAAI,CAAA;IACJ,yCAAI,CAAA;IACJ,6CAAM,CAAA;IACN,6CAAM,CAAA;IACN,6DAAc,CAAA;IACd,6DAAc,CAAA;AAChB,CAAC,EAVW,SAAS,KAAT,SAAS,QAUpB;AAED,MAAM,CAAN,IAAY,UAMX;AAND,WAAY,UAAU;IACpB,2CAAI,CAAA;IACJ,qDAAS,CAAA;IACT,+CAAM,CAAA;IACN,+CAAM,CAAA;IACN,qDAAS,CAAA;AACX,CAAC,EANW,UAAU,KAAV,UAAU,QAMrB;AAED,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2CAAI,CAAA;IACJ,2CAAI,CAAA;IACJ,qDAAS,CAAA;AACX,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB;AAED,MAAM,CAAN,IAAY,SAMX;AAND,WAAY,SAAS;IACnB,0CAAS,CAAA;IACT,qCAAE,CAAA;IACF,2CAAK,CAAA;IACL,6CAAM,CAAA;IACN,yCAAI,CAAA;AACN,CAAC,EANW,SAAS,KAAT,SAAS,QAMpB;AAED,MAAM,CAAC,IAAM,cAAc,GAAG;IAC5B,WAAW;IACX,WAAW;IACX,WAAW;IACX,WAAW;CACH,CAAC;AACX,MAAM,CAAC,IAAM,cAAc,GAAG;IAC5B,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;CACF,CAAC;AAEX,MAAM,CAAC,IAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;AAEhE,MAAM,CAAC,IAAM,gBAAgB,GAAG;IAC9B,MAAM;IACN,WAAW;IACX,SAAS;IACT,UAAU;IACV,YAAY;IACZ,OAAO;IACP,uBAAuB;IACvB,qBAAqB;IACrB,mBAAmB;IACnB,aAAa;IACb,QAAQ;IACR,YAAY;IACZ,mBAAmB;IACnB,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,YAAY;IACZ,UAAU;IACV,WAAW;IACX,gBAAgB;IAChB,iBAAiB;IACjB,gBAAgB;IAChB,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,UAAU;IACV,SAAS;IACT,OAAO;IACP,OAAO;IACP,UAAU;CACX,CAAC"}
1
+ {"version":3,"file":"data.js","sourceRoot":"","sources":["../../../packages/core/src/data.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,SAUX;AAVD,WAAY,SAAS;IACnB,yCAAI,CAAA;IACJ,qDAAU,CAAA;IACV,qDAAU,CAAA;IACV,yCAAI,CAAA;IACJ,yCAAI,CAAA;IACJ,6CAAM,CAAA;IACN,6CAAM,CAAA;IACN,6DAAc,CAAA;IACd,6DAAc,CAAA;AAChB,CAAC,EAVW,SAAS,KAAT,SAAS,QAUpB;AAED,MAAM,CAAN,IAAY,UAMX;AAND,WAAY,UAAU;IACpB,2CAAI,CAAA;IACJ,qDAAS,CAAA;IACT,+CAAM,CAAA;IACN,+CAAM,CAAA;IACN,qDAAS,CAAA;AACX,CAAC,EANW,UAAU,KAAV,UAAU,QAMrB;AAED,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2CAAI,CAAA;IACJ,2CAAI,CAAA;IACJ,qDAAS,CAAA;AACX,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB;AAED,MAAM,CAAN,IAAY,SAMX;AAND,WAAY,SAAS;IACnB,0CAAS,CAAA;IACT,qCAAE,CAAA;IACF,2CAAK,CAAA;IACL,6CAAM,CAAA;IACN,yCAAI,CAAA;AACN,CAAC,EANW,SAAS,KAAT,SAAS,QAMpB;AAED,MAAM,CAAC,IAAM,cAAc,GAAG;IAC5B,WAAW;IACX,WAAW;IACX,WAAW;IACX,WAAW;CACH,CAAC;AACX,MAAM,CAAC,IAAM,cAAc,GAAG;IAC5B,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;CACF,CAAC;AAEX,MAAM,CAAC,IAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;AAEhE,MAAM,CAAC,IAAM,gBAAgB,GAAG;IAC9B,MAAM;IACN,WAAW;IACX,SAAS;IACT,UAAU;IACV,YAAY;IACZ,OAAO;IACP,uBAAuB;IACvB,qBAAqB;IACrB,mBAAmB;IACnB,aAAa;IACb,QAAQ;IACR,YAAY;IACZ,mBAAmB;IACnB,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,YAAY;IACZ,UAAU;IACV,WAAW;IACX,gBAAgB;IAChB,iBAAiB;IACjB,gBAAgB;IAChB,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,UAAU;IACV,SAAS;IACT,OAAO;IACP,OAAO;IACP,UAAU;IACV,SAAS;CACV,CAAC"}
@@ -15,6 +15,7 @@ export * from './people';
15
15
  export * from './line';
16
16
  export * from './iframe';
17
17
  export * from './video';
18
+ export * from './panel';
18
19
  import { rectangle } from './rectangle';
19
20
  import { circle } from './circle';
20
21
  import { svgPath } from './svgPath';
@@ -34,6 +35,7 @@ import { video } from './video';
34
35
  import { gif } from './gif';
35
36
  import { mindNode, mindNodeAnchors } from './mindNode';
36
37
  import { mindLine, mindLineAnchors } from './mindLine';
38
+ import { panel } from './panel';
37
39
  export declare function commonPens(): {
38
40
  rectangle: typeof rectangle;
39
41
  square: typeof rectangle;
@@ -58,6 +60,7 @@ export declare function commonPens(): {
58
60
  mindNode: typeof mindNode;
59
61
  mindLine: typeof mindLine;
60
62
  mindNode2: typeof rectangle;
63
+ panel: typeof panel;
61
64
  };
62
65
  export declare function commonAnchors(): {
63
66
  triangle: typeof triangleAnchors;
@@ -15,6 +15,7 @@ export * from './people';
15
15
  export * from './line';
16
16
  export * from './iframe';
17
17
  export * from './video';
18
+ export * from './panel';
18
19
  import { rectangle, square } from './rectangle';
19
20
  import { circle } from './circle';
20
21
  import { svgPath } from './svgPath';
@@ -27,6 +28,7 @@ import { leftArrow, rightArrow, twowayArrow } from './arrow';
27
28
  import { message } from './message';
28
29
  import { cloud } from './cloud';
29
30
  import { file } from './file';
31
+ // import { cube } from './cube';
30
32
  import { people } from './people';
31
33
  import { line } from './line';
32
34
  import { iframe } from './iframe';
@@ -34,6 +36,7 @@ import { video } from './video';
34
36
  import { gif } from './gif';
35
37
  import { mindNode, mindNodeAnchors } from './mindNode';
36
38
  import { mindLine, mindLineAnchors } from './mindLine';
39
+ import { panel } from './panel';
37
40
  export function commonPens() {
38
41
  return {
39
42
  rectangle: rectangle,
@@ -58,7 +61,8 @@ export function commonPens() {
58
61
  gif: gif,
59
62
  mindNode: mindNode,
60
63
  mindLine: mindLine,
61
- mindNode2: rectangle
64
+ mindNode2: rectangle,
65
+ panel: panel
62
66
  };
63
67
  }
64
68
  export function commonAnchors() {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/core/src/diagrams/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEvD,MAAM,UAAU,UAAU;IACxB,OAAO;QACL,SAAS,WAAA;QACT,MAAM,QAAA;QACN,MAAM,QAAA;QACN,OAAO,SAAA;QACP,OAAO,SAAA;QACP,QAAQ,UAAA;QACR,QAAQ,UAAA;QACR,SAAS,WAAA;QACT,OAAO,SAAA;QACP,SAAS,WAAA;QACT,UAAU,YAAA;QACV,WAAW,aAAA;QACX,OAAO,SAAA;QACP,KAAK,OAAA;QACL,IAAI,MAAA;QACJ,MAAM,QAAA;QACN,IAAI,MAAA;QACJ,MAAM,QAAA;QACN,KAAK,OAAA;QACL,GAAG,KAAA;QACH,QAAQ,UAAA;QACR,QAAQ,UAAA;QACR,SAAS,EAAC,SAAS;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO;QACL,QAAQ,EAAE,eAAe;QACzB,QAAQ,EAAE,eAAe;QACzB,SAAS,EAAE,gBAAgB;QAC3B,QAAQ,EAAE,eAAe;QACzB,QAAQ,EAAE,eAAe;KAC1B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/core/src/diagrams/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,iCAAiC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,UAAU,UAAU;IACxB,OAAO;QACL,SAAS,WAAA;QACT,MAAM,QAAA;QACN,MAAM,QAAA;QACN,OAAO,SAAA;QACP,OAAO,SAAA;QACP,QAAQ,UAAA;QACR,QAAQ,UAAA;QACR,SAAS,WAAA;QACT,OAAO,SAAA;QACP,SAAS,WAAA;QACT,UAAU,YAAA;QACV,WAAW,aAAA;QACX,OAAO,SAAA;QACP,KAAK,OAAA;QACL,IAAI,MAAA;QACJ,MAAM,QAAA;QACN,IAAI,MAAA;QACJ,MAAM,QAAA;QACN,KAAK,OAAA;QACL,GAAG,KAAA;QACH,QAAQ,UAAA;QACR,QAAQ,UAAA;QACR,SAAS,EAAC,SAAS;QACnB,KAAK,OAAA;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO;QACL,QAAQ,EAAE,eAAe;QACzB,QAAQ,EAAE,eAAe;QACzB,SAAS,EAAE,gBAAgB;QAC3B,QAAQ,EAAE,eAAe;QACzB,QAAQ,EAAE,eAAe;KAC1B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Pen } from '../pen';
2
+ export declare function panel(pen: Pen, ctx?: CanvasRenderingContext2D): Path2D;
@@ -0,0 +1,131 @@
1
+ import { movingSuffix } from '../canvas';
2
+ import { rectInRect } from '../rect';
3
+ import { deepClone } from '../utils';
4
+ export function panel(pen, ctx) {
5
+ var path = !ctx ? new Path2D() : ctx;
6
+ if (!pen.onDestroy) {
7
+ pen.onDestroy = destory;
8
+ pen.onMove = move;
9
+ pen.onRotate = move;
10
+ pen.onMouseEnter = mouseEnter;
11
+ pen.onMouseLeave = mouseLeave;
12
+ pen.onMouseMove = mouseMove;
13
+ pen.onMouseUp = mouseUp;
14
+ pen.onInput = input;
15
+ }
16
+ var wr = pen.calculative.borderRadius || 0, hr = wr;
17
+ var _a = pen.calculative.worldRect, x = _a.x, y = _a.y, width = _a.width, height = _a.height, ex = _a.ex, ey = _a.ey;
18
+ var textX = pen.calculative.worldTextRect.x;
19
+ if (wr < 1) {
20
+ wr = width * wr;
21
+ hr = height * hr;
22
+ }
23
+ var r = wr < hr ? wr : hr;
24
+ if (width < 2 * r) {
25
+ r = width / 2;
26
+ }
27
+ if (height < 2 * r) {
28
+ r = height / 2;
29
+ }
30
+ var textWidth = getTextWidth(pen.text, pen.calculative.fontSize);
31
+ path.moveTo(x + r, y);
32
+ path.lineTo(textX - 5, y);
33
+ path.moveTo(textX + textWidth + 5, y);
34
+ path.lineTo(textX + textWidth + 5, y);
35
+ path.arcTo(ex, y, ex, ey, r);
36
+ path.arcTo(ex, ey, x, ey, r);
37
+ path.arcTo(x, ey, x, y, r);
38
+ path.arcTo(x, y, ex, y, r);
39
+ if (path instanceof Path2D) {
40
+ return path;
41
+ }
42
+ }
43
+ function getTextWidth(text, fontSize) {
44
+ // 近似计算
45
+ var chinese = text.match(/[^\x00-\xff]/g) || '';
46
+ var chineseWidth = chinese.length * fontSize; // 中文占用的宽度
47
+ var spaces = text.match(/\s/g) || '';
48
+ var spaceWidth = spaces.length * fontSize * 0.3; // 空格占用的宽度
49
+ var otherWidth = (text.length - chinese.length - spaces.length) * fontSize * 0.6; // 其他字符占用的宽度
50
+ var currentWidth = chineseWidth + spaceWidth + otherWidth;
51
+ return currentWidth;
52
+ }
53
+ function input(pen, text) {
54
+ pen.text = text;
55
+ pen.calculative.text = pen.text;
56
+ // this.inputDiv.dataset.penId = undefined;
57
+ pen.calculative.canvas.updatePenRect(pen);
58
+ // this.patchFlags = true;
59
+ // this.store.emitter.emit('valueUpdate', pen);
60
+ }
61
+ function destory(pen) { }
62
+ function move(pen) { }
63
+ function mouseEnter(pen) {
64
+ // const activePens = pen.calculative.canvas.store.active;
65
+ // if(activePens&&activePens.length){
66
+ // activePens.forEach((activePen:Pen)=>{
67
+ // if(rectInRect(activePen.calculative.worldRect,pen.calculative.worldRect,true)){
68
+ // if(!pen.followers){
69
+ // pen.followers =[];
70
+ // }
71
+ // if(!pen.followers.includes(activePen.id)){
72
+ // pen.followers.push(activePen.id);
73
+ // }
74
+ // }
75
+ // })
76
+ // }
77
+ }
78
+ function mouseLeave(pen) {
79
+ var activePens = pen.calculative.canvas.store.active;
80
+ if (activePens && activePens.length) {
81
+ activePens.forEach(function (activePen) {
82
+ // if(!rectInRect(activePen.calculative.worldRect,pen.calculative.worldRect,true)){
83
+ // if(!pen.followers){
84
+ // pen.followers =[];
85
+ // }
86
+ // if(!pen.followers.includes(activePen.id)){
87
+ // pen.followers.push(activePen.id);
88
+ // }
89
+ // }
90
+ if (pen.followers) {
91
+ var idx = pen.followers.findIndex(function (id) { return id === activePen.id; });
92
+ if (idx !== -1) {
93
+ var movingPen = pen.calculative.canvas.store.pens[activePen.id + movingSuffix];
94
+ if (movingPen && movingPen.calculative) {
95
+ var isIn = rectInRect(movingPen.calculative.worldRect, pen.calculative.worldRect, true);
96
+ if (!isIn) {
97
+ pen.followers.splice(idx, 1);
98
+ }
99
+ }
100
+ }
101
+ }
102
+ });
103
+ }
104
+ }
105
+ function mouseUp(pen) {
106
+ var activePens = pen.calculative.canvas.store.active;
107
+ if (activePens && activePens.length) {
108
+ activePens.forEach(function (activePen) {
109
+ var movingPen = pen.calculative.canvas.store.pens[activePen.id + movingSuffix];
110
+ if (movingPen && movingPen.calculative) {
111
+ var inRect = deepClone(pen.calculative.worldRect);
112
+ inRect.x -= 1;
113
+ inRect.y -= 1;
114
+ inRect.width += 2;
115
+ inRect.height += 2;
116
+ if (rectInRect(movingPen.calculative.worldRect, inRect, true)) {
117
+ if (!pen.followers) {
118
+ pen.followers = [];
119
+ }
120
+ if (!pen.followers.includes(activePen.id)) {
121
+ pen.followers.push(activePen.id);
122
+ }
123
+ }
124
+ }
125
+ });
126
+ }
127
+ }
128
+ function mouseMove(pen, e) {
129
+ // console.log(e,pen.calculative.canvas.store.active);
130
+ }
131
+ //# sourceMappingURL=panel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"panel.js","sourceRoot":"","sources":["../../../../packages/core/src/diagrams/panel.ts"],"names":[],"mappings":"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"}
package/src/options.d.ts CHANGED
@@ -111,6 +111,7 @@ export interface Options {
111
111
  svgPathStroke?: boolean;
112
112
  disabledColor?: string;
113
113
  disabledBackground?: string;
114
+ scaleOff?: number;
114
115
  }
115
116
  export declare const defaultOptions: Options;
116
117
  export interface PenPlugin {
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../packages/core/src/options.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,8CAAS,CAAA;IACT,qDAAQ,CAAA;IACR,iDAAM,CAAA;AACR,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AA2GD,MAAM,CAAC,IAAM,cAAc,GAAY;IACrC,UAAU,EACR,2EAA2E;IAC7E,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,GAAG;IACf,SAAS,EAAE,QAAQ;IACnB,YAAY,EAAE,QAAQ;IACtB,KAAK,EAAE,SAAS;IAChB,WAAW,EAAE,SAAS;IACtB,UAAU,EAAE,uBAAuB;IACnC,WAAW,EAAE,SAAS;IACtB,gBAAgB,EAAE,SAAS;IAC3B,YAAY,EAAE,CAAC;IACf,gBAAgB,EAAE,MAAM;IACxB,SAAS,EAAE,uBAAuB;IAClC,YAAY,EAAE,SAAS;IACvB,SAAS,EAAE,SAAS;IACpB,YAAY,EAAE,YAAY;IAC1B,WAAW,EAAE,WAAW;IACxB,UAAU,EAAE,UAAU;IACtB,WAAW,EAAE,SAAS;IACtB,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,WAAW,CAAC,QAAQ;IAC7B,QAAQ,EAAE,EAAE;IACZ,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,eAAe,EAAE,OAAO;IACxB,QAAQ,EAAE,EAAE;IACZ,eAAe,EAAE,EAAE;IACnB,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE,IAAI;IAChB,aAAa,EAAE,KAAK;IACpB,YAAY,EAAE,SAAS;IACvB,aAAa,EAAE,SAAS;IACxB,aAAa,EAAE,CAAC;IAChB,aAAa,EAAE,CAAC;IAChB,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,WAAW;IACxB,WAAW,EAAE,CAAC;IACd,cAAc,EAAE;QACd;YACE,CAAC,EAAE,GAAG;YACN,CAAC,EAAE,CAAC;SACL;QACD;YACE,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,GAAG;SACP;QACD;YACE,CAAC,EAAE,GAAG;YACN,CAAC,EAAE,CAAC;SACL;QACD;YACE,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,GAAG;SACP;KACF;IACD,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,IAAI;IACtB,gBAAgB,EAAE,KAAK;IACvB,iBAAiB,EAAE,CAAC;IACpB,oBAAoB,EAAE,KAAK;IAC3B,GAAG,EAAE,EAAE;IACP,aAAa,EAAE,EAAE;IACjB,SAAS,EAAE,EAAE;IACb,eAAe,EAAC,CAAC,OAAO,CAAC;IACzB,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,EAAE;IACnB,cAAc,EAAE,EAAE;IAClB,aAAa,EAAC,IAAI;CACnB,CAAC"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../packages/core/src/options.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,8CAAS,CAAA;IACT,qDAAQ,CAAA;IACR,iDAAM,CAAA;AACR,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AA4GD,MAAM,CAAC,IAAM,cAAc,GAAY;IACrC,UAAU,EACR,2EAA2E;IAC7E,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,GAAG;IACf,SAAS,EAAE,QAAQ;IACnB,YAAY,EAAE,QAAQ;IACtB,KAAK,EAAE,SAAS;IAChB,WAAW,EAAE,SAAS;IACtB,UAAU,EAAE,uBAAuB;IACnC,WAAW,EAAE,SAAS;IACtB,gBAAgB,EAAE,SAAS;IAC3B,YAAY,EAAE,CAAC;IACf,gBAAgB,EAAE,MAAM;IACxB,SAAS,EAAE,uBAAuB;IAClC,YAAY,EAAE,SAAS;IACvB,SAAS,EAAE,SAAS;IACpB,YAAY,EAAE,YAAY;IAC1B,WAAW,EAAE,WAAW;IACxB,UAAU,EAAE,UAAU;IACtB,WAAW,EAAE,SAAS;IACtB,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,WAAW,CAAC,QAAQ;IAC7B,QAAQ,EAAE,EAAE;IACZ,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,eAAe,EAAE,OAAO;IACxB,QAAQ,EAAE,EAAE;IACZ,eAAe,EAAE,EAAE;IACnB,YAAY,EAAE,IAAI;IAClB,UAAU,EAAE,IAAI;IAChB,aAAa,EAAE,KAAK;IACpB,YAAY,EAAE,SAAS;IACvB,aAAa,EAAE,SAAS;IACxB,aAAa,EAAE,CAAC;IAChB,aAAa,EAAE,CAAC;IAChB,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,WAAW;IACxB,WAAW,EAAE,CAAC;IACd,cAAc,EAAE;QACd;YACE,CAAC,EAAE,GAAG;YACN,CAAC,EAAE,CAAC;SACL;QACD;YACE,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,GAAG;SACP;QACD;YACE,CAAC,EAAE,GAAG;YACN,CAAC,EAAE,CAAC;SACL;QACD;YACE,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,GAAG;SACP;KACF;IACD,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,IAAI;IACtB,gBAAgB,EAAE,KAAK;IACvB,iBAAiB,EAAE,CAAC;IACpB,oBAAoB,EAAE,KAAK;IAC3B,GAAG,EAAE,EAAE;IACP,aAAa,EAAE,EAAE;IACjB,SAAS,EAAE,EAAE;IACb,eAAe,EAAC,CAAC,OAAO,CAAC;IACzB,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,EAAE;IACnB,cAAc,EAAE,EAAE;IAClB,aAAa,EAAC,IAAI;CACnB,CAAC"}
@@ -164,6 +164,7 @@ export interface Pen extends Rect {
164
164
  backgroundImage?: string;
165
165
  strokeImage?: string;
166
166
  children?: string[];
167
+ followers?: string[];
167
168
  anchors?: Point[];
168
169
  anchorRadius?: number;
169
170
  anchorBackground?: string;
@@ -258,6 +259,8 @@ export interface Pen extends Rect {
258
259
  disabledBackground?: string;
259
260
  disabledTextColor?: string;
260
261
  inputType?: string;
262
+ deviceId?: string;
263
+ pivot?: Point;
261
264
  calculative?: {
262
265
  x?: number;
263
266
  y?: number;
@@ -357,6 +360,7 @@ export interface Pen extends Rect {
357
360
  active?: boolean;
358
361
  focus?: boolean;
359
362
  hover?: boolean;
363
+ containerHover?: boolean;
360
364
  isDock?: boolean;
361
365
  pencil?: boolean;
362
366
  activeAnchor?: Point;
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../packages/core/src/pen/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../packages/core/src/pen/model.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ import { Meta2dStore } from '../store';
12
12
  export declare function isAncestor(pen: Pen, ancestor: Pen): boolean;
13
13
  export declare function getParent(pen: Pen, root?: boolean): Pen;
14
14
  export declare function getAllChildren(pen: Pen, store: Meta2dStore): Pen[];
15
+ export declare function getAllFollowers(pen: Pen, store: Meta2dStore): Pen[];
15
16
  export declare function getGradientAnimatePath(pen: Pen): Path2D;
16
17
  export declare function drawImage(ctx: CanvasRenderingContext2D | OffscreenCanvasRenderingContext2D, pen: Pen): void;
17
18
  /**
package/src/pen/render.js CHANGED
@@ -49,7 +49,7 @@ import { CanvasLayer, LineAnimateType, LockState, } from './model';
49
49
  import { drawArrow, getLineRect, getSplitAnchor } from '../diagrams';
50
50
  import { Direction, inheritanceProps } from '../data';
51
51
  import { calcRotate, distance, facePoint, rotatePoint, scalePoint, translatePoint, TwoWay, } from '../point';
52
- import { calcCenter, calcRightBottom, calcRelativePoint, calcRelativeRect, rectInRect, scaleRect, translateRect, } from '../rect';
52
+ import { calcCenter, calcRightBottom, calcRelativePoint, calcRelativeRect, rectInRect, scaleRect, translateRect, calcPivot } from '../rect';
53
53
  import { globalStore } from '../store';
54
54
  import { calcTextLines, calcTextDrawRect, calcTextRect } from './text';
55
55
  import { deepClone } from '../utils/clone';
@@ -99,6 +99,20 @@ export function getAllChildren(pen, store) {
99
99
  });
100
100
  return children;
101
101
  }
102
+ export function getAllFollowers(pen, store) {
103
+ if (!pen || !pen.followers) {
104
+ return [];
105
+ }
106
+ var followers = [];
107
+ pen.followers.forEach(function (id) {
108
+ var follower = store.pens[id];
109
+ if (follower && !follower.parentId) {
110
+ followers.push(follower);
111
+ followers.push.apply(followers, __spreadArray([], __read(getAllFollowers(follower, store)), false));
112
+ }
113
+ });
114
+ return followers;
115
+ }
102
116
  function drawBkLinearGradient(ctx, pen) {
103
117
  var _a = pen.calculative, worldRect = _a.worldRect, gradientFromColor = _a.gradientFromColor, gradientToColor = _a.gradientToColor, gradientAngle = _a.gradientAngle;
104
118
  return linearGradient(ctx, worldRect, gradientFromColor, gradientToColor, gradientAngle);
@@ -1021,7 +1035,7 @@ export function ctxFlip(ctx, pen) {
1021
1035
  }
1022
1036
  export function ctxRotate(ctx, pen, noFlip) {
1023
1037
  if (noFlip === void 0) { noFlip = false; }
1024
- var _a = pen.calculative.worldRect.center, x = _a.x, y = _a.y;
1038
+ var _a = pen.calculative.worldRect.pivot || pen.calculative.worldRect.center, x = _a.x, y = _a.y;
1025
1039
  ctx.translate(x, y);
1026
1040
  var rotate = (pen.calculative.rotate * Math.PI) / 180;
1027
1041
  // 目前只有水平和垂直翻转,都需要 * -1
@@ -1261,6 +1275,7 @@ export function renderPenRaw(ctx, pen, rect, download) {
1261
1275
  // for canvas2svg
1262
1276
  (_c = (_b = ctx).setAttrs) === null || _c === void 0 ? void 0 : _c.call(_b, pen);
1263
1277
  // end
1278
+ var lineGradientFlag = false;
1264
1279
  var store = pen.calculative.canvas.store;
1265
1280
  var textFlip = pen.textFlip || store.options.textFlip;
1266
1281
  var textRotate = pen.textRotate || store.options.textRotate;
@@ -1311,7 +1326,14 @@ export function renderPenRaw(ctx, pen, rect, download) {
1311
1326
  }
1312
1327
  }
1313
1328
  else {
1314
- ctx.strokeStyle = pen.calculative.color || getGlobalColor(store);
1329
+ var stroke = void 0;
1330
+ if (pen.calculative.strokeType && pen.calculative.lineGradientColors && pen.name === 'line') {
1331
+ lineGradientFlag = true;
1332
+ }
1333
+ else {
1334
+ stroke = pen.calculative.color || getGlobalColor(store);
1335
+ }
1336
+ ctx.strokeStyle = stroke;
1315
1337
  }
1316
1338
  if (pen.backgroundImage) {
1317
1339
  if (pen.calculative.backgroundImg) {
@@ -1339,8 +1361,14 @@ export function renderPenRaw(ctx, pen, rect, download) {
1339
1361
  ctx.shadowOffsetY = pen.calculative.shadowOffsetY;
1340
1362
  ctx.shadowBlur = pen.calculative.shadowBlur;
1341
1363
  }
1342
- ctxDrawPath(false, ctx, pen, store, fill);
1343
- ctxDrawCanvas(ctx, pen);
1364
+ if (lineGradientFlag) {
1365
+ ctxDrawLinearGradientPath(ctx, pen);
1366
+ ctxDrawLinePath(true, ctx, pen, store);
1367
+ }
1368
+ else {
1369
+ ctxDrawPath(false, ctx, pen, store, fill);
1370
+ ctxDrawCanvas(ctx, pen);
1371
+ }
1344
1372
  // renderPenRaw 用在 downloadPng svg , echarts 等图形需要
1345
1373
  if (pen.calculative.img) {
1346
1374
  ctx.save();
@@ -1759,6 +1787,9 @@ export function calcWorldRects(pen) {
1759
1787
  rect.rotate = pen.rotate;
1760
1788
  calcRightBottom(rect);
1761
1789
  calcCenter(rect);
1790
+ if (pen.pivot) {
1791
+ calcPivot(rect, pen.pivot);
1792
+ }
1762
1793
  }
1763
1794
  else {
1764
1795
  var parent_1 = store.pens[pen.parentId];
@@ -1783,6 +1814,9 @@ export function calcWorldRects(pen) {
1783
1814
  calcRightBottom(rect);
1784
1815
  rect.rotate = parentRect.rotate + pen.rotate;
1785
1816
  calcCenter(rect);
1817
+ if (pen.pivot) {
1818
+ calcPivot(rect, pen.pivot);
1819
+ }
1786
1820
  }
1787
1821
  pen.calculative.worldRect = rect;
1788
1822
  // 这里的 rect 均是绝对值
@@ -1804,7 +1838,8 @@ export function calcPadding(pen, rect) {
1804
1838
  (pen.calculative.paddingRight *= rect.width);
1805
1839
  }
1806
1840
  export function calcPenRect(pen) {
1807
- var worldRect = pen.calculative.worldRect;
1841
+ var worldRect = deepClone(pen.calculative.worldRect);
1842
+ delete worldRect.pivot;
1808
1843
  if (!pen.parentId) {
1809
1844
  Object.assign(pen, worldRect);
1810
1845
  return;
@@ -1848,7 +1883,7 @@ export function calcWorldAnchors(pen) {
1848
1883
  }
1849
1884
  if (pen.calculative.rotate) {
1850
1885
  anchors.forEach(function (anchor) {
1851
- rotatePoint(anchor, pen.calculative.rotate, pen.calculative.worldRect.center);
1886
+ rotatePoint(anchor, pen.calculative.rotate, pen.calculative.worldRect.pivot || pen.calculative.worldRect.center);
1852
1887
  });
1853
1888
  }
1854
1889
  if (!pen.type || pen.anchors) {
@@ -1923,9 +1958,9 @@ export function calcIconRect(pens, pen) {
1923
1958
  calcCenter(pen.calculative.worldIconRect);
1924
1959
  }
1925
1960
  export function scalePen(pen, scale, center) {
1926
- scaleRect(pen.calculative.worldRect, scale, center);
1961
+ scaleRect(pen.calculative.worldRect, scale, center, pen.pivot);
1927
1962
  if (pen.calculative.initRect) {
1928
- scaleRect(pen.calculative.initRect, scale, center);
1963
+ scaleRect(pen.calculative.initRect, scale, center, pen.pivot);
1929
1964
  }
1930
1965
  if (pen.calculative.x) {
1931
1966
  scalePoint(pen.calculative, scale, center);
@@ -2321,7 +2356,7 @@ export function initPrevFrame(pen) {
2321
2356
  }
2322
2357
  // 根据process进度值(纯小数),计算节点动画属性
2323
2358
  export function setNodeAnimateProcess(pen, process) {
2324
- var _a;
2359
+ var _a, _b;
2325
2360
  if (process < 0) {
2326
2361
  return;
2327
2362
  }
@@ -2415,6 +2450,10 @@ export function setNodeAnimateProcess(pen, process) {
2415
2450
  pen.calculative.canvas.canvasImage.init();
2416
2451
  }
2417
2452
  }
2453
+ else if ((_b = pen.children) === null || _b === void 0 ? void 0 : _b.length) {
2454
+ var childs = getAllChildren(pen, pen.calculative.canvas.store);
2455
+ pen.calculative.canvas.initImageCanvas(childs);
2456
+ }
2418
2457
  }
2419
2458
  pen.calculative[k] = frame[k];
2420
2459
  var v = {};
@@ -2663,7 +2702,7 @@ function initLineRect(pen) {
2663
2702
  * @returns
2664
2703
  */
2665
2704
  export function getPensDisableResize(pens) {
2666
- return pens.every(function (pen) { return pen.disableSize; });
2705
+ return pens.every(function (pen) { return pen.disableSize || pen.pivot; }); //旋转中心点图元不允许改变大小
2667
2706
  }
2668
2707
  export function getFrameValue(pen, prop, frameIndex) {
2669
2708
  if (!pen.frames || !prop) {