@meta2d/core 1.1.19 → 1.1.21

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.
@@ -0,0 +1,12 @@
1
+ import { Pen } from "../pen";
2
+ interface HtmlPen extends Pen {
3
+ html: {
4
+ content: string;
5
+ iframe?: boolean;
6
+ _width: number;
7
+ _height: number;
8
+ };
9
+ calculative: any;
10
+ }
11
+ export declare function htmlDom(pen: HtmlPen): Path2D;
12
+ export {};
@@ -0,0 +1,66 @@
1
+ import { setElemPosition } from "../pen";
2
+ export function htmlDom(pen) {
3
+ const path = new Path2D();
4
+ const worldRect = pen.calculative.worldRect;
5
+ if (!pen.calculative.singleton) {
6
+ pen.calculative.singleton = {};
7
+ }
8
+ if (!pen.onDestroy) {
9
+ pen.onDestroy = destroy;
10
+ pen.onResize = onResize;
11
+ pen.onMove = setDomScale;
12
+ }
13
+ if (!pen.calculative.singleton.div) {
14
+ const context = pen.html.iframe
15
+ ? document.createElement('iframe')
16
+ : document.createElement('div');
17
+ if (pen.html.iframe) {
18
+ context.srcdoc = pen.html.content || '';
19
+ context.onload = () => {
20
+ context.style.overflow = 'hidden';
21
+ context.style.border = 'none';
22
+ context.scrolling = 'no';
23
+ };
24
+ }
25
+ else {
26
+ context.innerHTML = pen.html.content || '';
27
+ }
28
+ context.style.position = 'absolute';
29
+ context.style.outline = 'none';
30
+ context.style.overflow = 'hidden';
31
+ context.style.left = '-9999px';
32
+ context.style.top = '-9999px';
33
+ pen.calculative.canvas.externalElements.parentElement.appendChild(context);
34
+ onResize(pen);
35
+ setElemPosition(pen, context);
36
+ pen.calculative.singleton.div = context;
37
+ }
38
+ setDomScale(pen);
39
+ return path;
40
+ }
41
+ function destroy(pen) {
42
+ if (pen.calculative.singleton && pen.calculative.singleton.div) {
43
+ pen.calculative.singleton.div.remove();
44
+ delete pen.calculative.singleton.div;
45
+ }
46
+ }
47
+ function onResize(pen) {
48
+ const { width, height } = window.meta2d.getPenRect(pen);
49
+ pen.calculative.singleton._width = width;
50
+ pen.calculative.singleton._height = height;
51
+ }
52
+ function setDomScale(pen) {
53
+ requestAnimationFrame(() => {
54
+ const worldRect = pen.calculative.worldRect;
55
+ const store = pen.calculative.canvas.store;
56
+ const div = pen.calculative.singleton.div;
57
+ if (!div)
58
+ return;
59
+ div.style.width = pen.calculative.singleton._width + 'px';
60
+ div.style.height = pen.calculative.singleton._height + 'px';
61
+ div.style.left = worldRect.x + store.data.x - 1 / 2 * pen.calculative.singleton._width + 1 / 2 * worldRect.width + 'px';
62
+ div.style.top = worldRect.y + store.data.y - 1 / 2 * pen.calculative.singleton._height + 1 / 2 * worldRect.height + 'px';
63
+ div.style.scale = pen.calculative.canvas.store.data.scale;
64
+ });
65
+ }
66
+ //# sourceMappingURL=htmlDom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"htmlDom.js","sourceRoot":"","sources":["../../../../packages/core/src/diagrams/htmlDom.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@ export * from './iframe';
17
17
  export * from './video';
18
18
  export * from './form';
19
19
  export * from './sceneContainer';
20
+ export * from './htmlDom';
20
21
  import { rectangle } from './rectangle';
21
22
  import { circle } from './circle';
22
23
  import { svgPath } from './svgPath';
@@ -38,10 +39,12 @@ import { mindNode, mindNodeAnchors } from './mindNode';
38
39
  import { mindLine, mindLineAnchors } from './mindLine';
39
40
  import { form } from './form';
40
41
  import { sceneContainer } from './sceneContainer';
42
+ import { htmlDom } from "./htmlDom";
41
43
  export declare function commonPens(): {
42
44
  rectangle: typeof rectangle;
43
45
  square: typeof rectangle;
44
46
  circle: typeof circle;
47
+ htmlDom: typeof htmlDom;
45
48
  svgPath: typeof svgPath;
46
49
  diamond: typeof diamond;
47
50
  triangle: typeof triangle;
@@ -17,6 +17,7 @@ export * from './iframe';
17
17
  export * from './video';
18
18
  export * from './form';
19
19
  export * from './sceneContainer';
20
+ export * from './htmlDom';
20
21
  import { rectangle, square } from './rectangle';
21
22
  import { circle } from './circle';
22
23
  import { svgPath } from './svgPath';
@@ -39,11 +40,13 @@ import { mindNode, mindNodeAnchors } from './mindNode';
39
40
  import { mindLine, mindLineAnchors } from './mindLine';
40
41
  import { form } from './form';
41
42
  import { sceneContainer } from './sceneContainer';
43
+ import { htmlDom } from "./htmlDom";
42
44
  export function commonPens() {
43
45
  return {
44
46
  rectangle,
45
47
  square,
46
48
  circle,
49
+ htmlDom,
47
50
  svgPath,
48
51
  diamond,
49
52
  triangle,
@@ -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;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,kBAAkB,CAAC;AAEjC,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,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,UAAU,UAAU;IACxB,OAAO;QACL,SAAS;QACT,MAAM;QACN,MAAM;QACN,OAAO;QACP,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,OAAO;QACP,SAAS;QACT,UAAU;QACV,WAAW;QACX,OAAO;QACP,KAAK;QACL,IAAI;QACJ,MAAM;QACN,IAAI;QACJ,MAAM;QACN,KAAK;QACL,GAAG;QACH,QAAQ;QACR,QAAQ;QACR,SAAS,EAAC,SAAS;QACnB,IAAI;QACJ,OAAO,EAAC,SAAS;QACjB,cAAc;KACf,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,QAAQ,CAAC;AACvB,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAE1B,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,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAElC,MAAM,UAAU,UAAU;IACxB,OAAO;QACL,SAAS;QACT,MAAM;QACN,MAAM;QACN,OAAO;QACP,OAAO;QACP,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,OAAO;QACP,SAAS;QACT,UAAU;QACV,WAAW;QACX,OAAO;QACP,KAAK;QACL,IAAI;QACJ,MAAM;QACN,IAAI;QACJ,MAAM;QACN,KAAK;QACL,GAAG;QACH,QAAQ;QACR,QAAQ;QACR,SAAS,EAAC,SAAS;QACnB,IAAI;QACJ,OAAO,EAAC,SAAS;QACjB,cAAc;KACf,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"}
@@ -53,9 +53,7 @@ export function renderLineDirectionMarkers(ctx, pen, store) {
53
53
  if (pen.type !== PenType.Line) {
54
54
  return;
55
55
  }
56
- const show = pen.dirMarkers !== undefined
57
- ? pen.dirMarkers
58
- : store.options.dirMarkers;
56
+ const show = pen.dirMarkers || store.options.dirMarkers;
59
57
  if (!show) {
60
58
  return;
61
59
  }
@@ -88,6 +86,10 @@ export function renderLineDirectionMarkers(ctx, pen, store) {
88
86
  const color = pen.dirMarkerColor ??
89
87
  store.options.dirMarkerColor ??
90
88
  '#ffffff';
89
+ const lineW = pen.calculative.lineWidth || 2;
90
+ const strokeW = (pen.dirMarkerLineWidth ?? store.options.dirMarkerLineWidth) != null
91
+ ? (pen.dirMarkerLineWidth ?? store.options.dirMarkerLineWidth) * scale
92
+ : Math.min(lineW * 0.38, Math.max(0.75, lineW * 0.14));
91
93
  const segs = [0]; // 各个点到起点的累计距离,方便后续根据方向标记的距离计算位置
92
94
  let totalLen = 0;
93
95
  for (let i = 0; i < pts.length - 1; i++) {
@@ -108,14 +110,16 @@ export function renderLineDirectionMarkers(ctx, pen, store) {
108
110
  ds = [totalLen / 2];
109
111
  }
110
112
  if (drawer) {
113
+ ctx.strokeStyle = color;
114
+ ctx.lineWidth = strokeW;
115
+ ctx.lineJoin = 'round';
116
+ ctx.lineCap = 'round';
111
117
  for (const d of ds) {
112
118
  const { x, y, ang } = pointAndAngleOnPolyline(pts, segs, d);
113
119
  drawer(ctx, x, y, ang, color, pen);
114
120
  }
115
121
  }
116
122
  else {
117
- const lineW = pen.calculative.lineWidth || 2;
118
- const strokeW = Math.min(lineW * 0.38, Math.max(0.75, lineW * 0.14));
119
123
  const innerW = Math.max(0, lineW - strokeW);
120
124
  const halfSpread = innerW * 0.38;
121
125
  const armLength = lineW * 0.52;
@@ -1 +1 @@
1
- {"version":3,"file":"dirMarkers.js","sourceRoot":"","sources":["../../../../../packages/core/src/diagrams/line/dirMarkers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAO,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAGhE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAQvC,SAAS,8BAA8B,CAAC,GAAQ;IAC9C,MAAM,CAAC,GAAG,GAAG,CAAC,eAAe,CAAC;IAC9B,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC,IAAI,CACd,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,eAAe,CAAC,KAAK,IAAI,CAAC,KAAK,eAAe,CAAC,SAAS,CACtE,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CACrB,GAA6B,EAC7B,SAAiB,EACjB,UAAkB;IAElB,GAAG,CAAC,SAAS,EAAE,CAAC;IAChB,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjB,GAAG,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,CAAC;IACpC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjB,GAAG,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACnC,GAAG,CAAC,MAAM,EAAE,CAAC;AACf,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,GAA6B,EAC7B,CAAS,EACT,CAAS,EACT,QAAgB,EAChB,SAAiB,EACjB,UAAkB;IAElB,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpB,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrB,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAC3C,GAAG,CAAC,OAAO,EAAE,CAAC;AAChB,CAAC;AAED,SAAS,uBAAuB,CAC9B,GAAY,EACZ,IAAc,EACd,IAAY;IAEZ,gBAAgB;IAChB,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5B,OAAO,KAAK,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,GAAG,GAAG,CAAC;QACb,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,GAAG,CAAC;QACd,CAAC;IACH,CAAC;IAED,UAAU;IACV,MAAM,YAAY,GAAG,IAAI,CAAC;IAC1B,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,GAAG,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;IACzC,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;IAElE,YAAY;IACZ,MAAM,CAAC,GAAG,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACjF,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAEpE,OAAO;IACP,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAEvF,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,GAA6B,EAC7B,GAAQ,EACR,KAAkB;IAElB,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GACR,GAAG,CAAC,UAAU,KAAK,SAAS;QAC1B,CAAC,CAAC,GAAG,CAAC,UAAU;QAChB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;IAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;QAC3B,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC;IAC7C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,WAAW,CAAC,UAAU,IAAI,8BAA8B,CAAC,GAAG,CAAC,EAAE,CAAC;QACtE,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;IAC5C,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACpB,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC;IACnB,GAAG,CAAC,WAAW,GAAG,EAAE,CAAC;IACrB,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC;IACtB,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC;IAEtB,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnB,GAAG,CAAC,OAAO,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;IAC/B,MAAM,QAAQ,GACZ,CAAC,GAAG,CAAC,iBAAiB;QACpB,KAAK,CAAC,OAAO,CAAC,iBAAiB;QAC/B,EAAE,CAAC,GAAG,KAAK,CAAC;IAChB,MAAM,KAAK,GACT,GAAG,CAAC,cAAc;QAClB,KAAK,CAAC,OAAO,CAAC,cAAc;QAC5B,SAAS,CAAC;IAEZ,MAAM,IAAI,GAAa,CAAC,CAAC,CAAC,CAAC,CAAC,gCAAgC;IAC5D,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtB,CAAC;IACD,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;QACrB,GAAG,CAAC,OAAO,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,IAAI,EAAE,GAAa,EAAE,CAAC;IACtB,KAAK,IAAI,CAAC,GAAG,QAAQ,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,IAAI,QAAQ,EAAE,CAAC;QACvD,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACb,CAAC;IACD,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvC,EAAE,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACnB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,uBAAuB,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC5D,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,SAAS,IAAI,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,MAAM,GAAG,IAAI,CAAC;QACjC,MAAM,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC;QAC/B,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC;QACxB,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC;QACxB,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC;QACvB,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC;QACtB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACnB,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,uBAAuB,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC5D,+BAA+B,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,GAAG,CAAC,OAAO,EAAE,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"dirMarkers.js","sourceRoot":"","sources":["../../../../../packages/core/src/diagrams/line/dirMarkers.ts"],"names":[],"mappings":"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"}
package/src/options.d.ts CHANGED
@@ -72,6 +72,7 @@ export interface Options {
72
72
  dirMarkers?: boolean;
73
73
  dirMarkerInterval?: number;
74
74
  dirMarkerColor?: string;
75
+ dirMarkerLineWidth?: number;
75
76
  drawDirMarkers?: (ctx: CanvasRenderingContext2D, x: number, y: number, angleRad: number, color: string, pen: Pen) => void;
76
77
  autoPolyline?: boolean;
77
78
  interval?: number;
@@ -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;AAwID,MAAM,CAAC,MAAM,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,YAAY,EAAE,EAAE;IAChB,OAAO,EAAE,IAAI;IACb,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,WAAW,EAAE,IAAI;IACjB,GAAG,EAAE,EAAE;IACP,aAAa,EAAE,EAAE;IACjB,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE,EAAE;IACb,eAAe,EAAC,CAAC,WAAW,CAAC;IAC7B,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,EAAE;IACnB,cAAc,EAAE,EAAE;IAClB,aAAa,EAAC,IAAI;IAClB,aAAa,EAAC,EAAE;CACjB,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;AAyID,MAAM,CAAC,MAAM,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,YAAY,EAAE,EAAE;IAChB,OAAO,EAAE,IAAI;IACb,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,WAAW,EAAE,IAAI;IACjB,GAAG,EAAE,EAAE;IACP,aAAa,EAAE,EAAE;IACjB,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE,EAAE;IACb,eAAe,EAAC,CAAC,WAAW,CAAC;IAC7B,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,EAAE;IACnB,cAAc,EAAE,EAAE;IAClB,aAAa,EAAC,IAAI;IAClB,aAAa,EAAC,EAAE;CACjB,CAAC"}
@@ -202,6 +202,7 @@ export interface Pen extends Rect {
202
202
  dirMarkers?: boolean;
203
203
  dirMarkerInterval?: number;
204
204
  dirMarkerColor?: string;
205
+ dirMarkerLineWidth?: number;
205
206
  autoFrom?: boolean;
206
207
  autoTo?: boolean;
207
208
  connectedLines?: ConnectLine[];
package/src/pen/model.js CHANGED
@@ -189,6 +189,7 @@ export const formatAttrs = new Set([
189
189
  'animations',
190
190
  'toArrow',
191
191
  'fromArrow',
192
+ 'dirMarkerLineWidth',
192
193
  'lineName',
193
194
  'textType',
194
195
  'textGradientColors',
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../packages/core/src/pen/model.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,qCAAI,CAAA;IACJ,qCAAI,CAAA;AACN,CAAC,EAHW,OAAO,KAAP,OAAO,QAGlB;AAED,MAAM,CAAN,IAAY,SAQX;AARD,WAAY,SAAS;IACnB,yCAAI,CAAA;IACJ,uDAAW,CAAA;IACX,uDAAW,CAAA;IACX,yDAAY,CAAA;IACZ,iEAAgB,CAAA;IAChB,iBAAiB;IACjB,gDAAY,CAAA;AACd,CAAC,EARW,SAAS,KAAT,SAAS,QAQpB;AAED,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,iDAAO,CAAA;IACP,uCAAE,CAAA;IACF,yCAAG,CAAA;AACL,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB;AAED,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,uCAAI,CAAA;IACJ,2CAAM,CAAA;IACN,2CAAM,CAAA;AACR,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB;AAED,oBAAoB;AACpB,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,iEAAkB,CAAA;IAClB,uEAAiB,CAAA;IACjB,yDAAU,CAAA;IACV,2DAAW,CAAA,CAAC,OAAO;AACrB,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED,qBAAqB;AACrB,gBAAgB;AAChB,wBAAwB;AACxB,sBAAsB;AACtB,iBAAiB;AACjB,IAAI;AAEJ,wBAAwB;AACxB,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM;IACN,WAAW;IACX,YAAY;IACZ,UAAU;IACV,SAAS;IACT,YAAY;IACZ,UAAU;IACV,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,YAAY;IACZ,UAAU;IACV,aAAa;IACb,eAAe;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,YAAY;IACZ,cAAc;IACd,eAAe;IACf,aAAa;IACb,OAAO;IACP,OAAO;IACP,SAAS;IACT,WAAW;CACZ,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;AAE3E,MAAM,CAAC,MAAM,4BAA4B,GAAI,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAC,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAoB5M,MAAM,CAAN,IAAY,eAOX;AAPD,WAAY,eAAe;IACzB,yDAAM,CAAA;IACN,uDAAK,CAAA;IACL,mDAAG,CAAA;IACH,uDAAK,CAAA;IACL,+DAAS,CAAA;IACT,yDAAM,CAAA,CAAC,QAAQ;AACjB,CAAC,EAPW,eAAe,KAAf,eAAe,QAO1B;AAED,MAAM,CAAN,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,mEAAK,CAAA;IACL,iEAAI,CAAA;IACJ,+DAAG,CAAA;IACH,uEAAO,CAAA,CAAC,OAAO;AACjB,CAAC,EALW,qBAAqB,KAArB,qBAAqB,QAKhC;AA2mBD;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,KAAK;IACL,QAAQ;IACR,OAAO;IACP,SAAS;IACT,YAAY;IACZ,iBAAiB;IACjB,KAAK;CACN,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO;IACP,UAAU;IACV,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,SAAS;CACV,CAAA;AAED,WAAW;AACX,MAAM,CAAC,MAAM,WAAW,GAAgB,IAAI,GAAG,CAAC;IAC9C,cAAc;IACd,YAAY;IACZ,aAAa;IACb,cAAc;IACd,YAAY;IACZ,eAAe;IACf,UAAU;IACV,eAAe;IACf,kBAAkB;IAClB,iBAAiB;IACjB,UAAU;IACV,OAAO;IACP,OAAO;IACP,OAAO;IACP,UAAU;IACV,SAAS;IACT,UAAU;IACV,YAAY;IACZ,uBAAuB;IACvB,qBAAqB;IACrB,mBAAmB;IACnB,OAAO;IACP,YAAY;IACZ,aAAa;IACb,WAAW;IACX,QAAQ;IACR,mBAAmB;IACnB,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,aAAa;IACb,aAAa;IACb,cAAc;IACd,QAAQ;IACR,aAAa;IACb,YAAY;IACZ,eAAe;IACf,eAAe;IACf,eAAe;IACf,YAAY;IACZ,UAAU;IACV,WAAW;IACX,gBAAgB;IAChB,iBAAiB;IACjB,gBAAgB;IAChB,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,UAAU;IACV,SAAS;IACT,UAAU;IACV,YAAY;IACZ,aAAa;IACb,aAAa;IACb,aAAa;IACb,kBAAkB;IAClB,iBAAiB;IACjB,QAAQ;IACR,cAAc;IACd,aAAa;IACb,gBAAgB;IAChB,YAAY;IACZ,gBAAgB;IAChB,oBAAoB;IACpB,kBAAkB;IAClB,gBAAgB;IAChB,YAAY;IACZ,YAAY;IACZ,SAAS;IACT,WAAW;IACX,UAAU;IACV,UAAU;IACV,oBAAoB;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,UAAU,EAAC,CAAC;IACZ,QAAQ,EAAC,CAAC;IACV,YAAY,EAAC,CAAC;CACf,CAAA;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,GAAQ;IACrC,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC;IACtB,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC;IACvB,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC;IACzB,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC;IACzB,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;IAC3B,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,cAAc,GAAG,SAAS,CAAC;IAC/B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../packages/core/src/pen/model.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,qCAAI,CAAA;IACJ,qCAAI,CAAA;AACN,CAAC,EAHW,OAAO,KAAP,OAAO,QAGlB;AAED,MAAM,CAAN,IAAY,SAQX;AARD,WAAY,SAAS;IACnB,yCAAI,CAAA;IACJ,uDAAW,CAAA;IACX,uDAAW,CAAA;IACX,yDAAY,CAAA;IACZ,iEAAgB,CAAA;IAChB,iBAAiB;IACjB,gDAAY,CAAA;AACd,CAAC,EARW,SAAS,KAAT,SAAS,QAQpB;AAED,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,iDAAO,CAAA;IACP,uCAAE,CAAA;IACF,yCAAG,CAAA;AACL,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB;AAED,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,uCAAI,CAAA;IACJ,2CAAM,CAAA;IACN,2CAAM,CAAA;AACR,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB;AAED,oBAAoB;AACpB,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,iEAAkB,CAAA;IAClB,uEAAiB,CAAA;IACjB,yDAAU,CAAA;IACV,2DAAW,CAAA,CAAC,OAAO;AACrB,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AAED,qBAAqB;AACrB,gBAAgB;AAChB,wBAAwB;AACxB,sBAAsB;AACtB,iBAAiB;AACjB,IAAI;AAEJ,wBAAwB;AACxB,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,MAAM;IACN,WAAW;IACX,YAAY;IACZ,UAAU;IACV,SAAS;IACT,YAAY;IACZ,UAAU;IACV,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,YAAY;IACZ,UAAU;IACV,aAAa;IACb,eAAe;CAChB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,YAAY;IACZ,cAAc;IACd,eAAe;IACf,aAAa;IACb,OAAO;IACP,OAAO;IACP,SAAS;IACT,WAAW;CACZ,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;AAE3E,MAAM,CAAC,MAAM,4BAA4B,GAAI,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAC,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAoB5M,MAAM,CAAN,IAAY,eAOX;AAPD,WAAY,eAAe;IACzB,yDAAM,CAAA;IACN,uDAAK,CAAA;IACL,mDAAG,CAAA;IACH,uDAAK,CAAA;IACL,+DAAS,CAAA;IACT,yDAAM,CAAA,CAAC,QAAQ;AACjB,CAAC,EAPW,eAAe,KAAf,eAAe,QAO1B;AAED,MAAM,CAAN,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,mEAAK,CAAA;IACL,iEAAI,CAAA;IACJ,+DAAG,CAAA;IACH,uEAAO,CAAA,CAAC,OAAO;AACjB,CAAC,EALW,qBAAqB,KAArB,qBAAqB,QAKhC;AA4mBD;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,KAAK;IACL,QAAQ;IACR,OAAO;IACP,SAAS;IACT,YAAY;IACZ,iBAAiB;IACjB,KAAK;CACN,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO;IACP,UAAU;IACV,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,SAAS;CACV,CAAA;AAED,WAAW;AACX,MAAM,CAAC,MAAM,WAAW,GAAgB,IAAI,GAAG,CAAC;IAC9C,cAAc;IACd,YAAY;IACZ,aAAa;IACb,cAAc;IACd,YAAY;IACZ,eAAe;IACf,UAAU;IACV,eAAe;IACf,kBAAkB;IAClB,iBAAiB;IACjB,UAAU;IACV,OAAO;IACP,OAAO;IACP,OAAO;IACP,UAAU;IACV,SAAS;IACT,UAAU;IACV,YAAY;IACZ,uBAAuB;IACvB,qBAAqB;IACrB,mBAAmB;IACnB,OAAO;IACP,YAAY;IACZ,aAAa;IACb,WAAW;IACX,QAAQ;IACR,mBAAmB;IACnB,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,aAAa;IACb,aAAa;IACb,cAAc;IACd,QAAQ;IACR,aAAa;IACb,YAAY;IACZ,eAAe;IACf,eAAe;IACf,eAAe;IACf,YAAY;IACZ,UAAU;IACV,WAAW;IACX,gBAAgB;IAChB,iBAAiB;IACjB,gBAAgB;IAChB,WAAW;IACX,YAAY;IACZ,WAAW;IACX,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,YAAY;IACZ,UAAU;IACV,SAAS;IACT,UAAU;IACV,YAAY;IACZ,aAAa;IACb,aAAa;IACb,aAAa;IACb,kBAAkB;IAClB,iBAAiB;IACjB,QAAQ;IACR,cAAc;IACd,aAAa;IACb,gBAAgB;IAChB,YAAY;IACZ,gBAAgB;IAChB,oBAAoB;IACpB,kBAAkB;IAClB,gBAAgB;IAChB,YAAY;IACZ,YAAY;IACZ,SAAS;IACT,WAAW;IACX,oBAAoB;IACpB,UAAU;IACV,UAAU;IACV,oBAAoB;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,UAAU,EAAC,CAAC;IACZ,QAAQ,EAAC,CAAC;IACV,YAAY,EAAC,CAAC;CACf,CAAA;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,GAAQ;IACrC,GAAG,CAAC,KAAK,GAAG,SAAS,CAAC;IACtB,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC;IACvB,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC;IACzB,GAAG,CAAC,QAAQ,GAAG,SAAS,CAAC;IACzB,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC;IAC3B,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC;IAC7B,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;IAC5B,GAAG,CAAC,cAAc,GAAG,SAAS,CAAC;IAC/B,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;IAC9B,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACxB,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;AAChC,CAAC"}
package/src/pen/render.js CHANGED
@@ -216,53 +216,141 @@ function getGradientR(angle, width, height) {
216
216
  return r;
217
217
  }
218
218
  function formatGradient(color) {
219
- if (typeof color == 'string' && color.startsWith('linear-gradient')) {
220
- let arr = color.slice(16, -2).split('deg,');
221
- if (arr.length > 1) {
222
- let _arr = arr[1].split('%,');
223
- const colors = [];
224
- _arr.forEach((stap) => {
225
- if (/rgba?/.test(stap)) {
226
- let _arr = stap.split(') ');
227
- colors.push({
228
- color: rgbaToHex(_arr[0] + ')'),
229
- i: parseFloat(_arr[1]) / 100,
230
- });
231
- }
232
- else {
233
- let _arr = stap.split(' ');
234
- if (_arr.length > 2) {
235
- colors.push({
236
- color: _arr[1],
237
- i: parseFloat(_arr[2]) / 100,
238
- });
239
- }
240
- else {
241
- colors.push({
242
- color: _arr[0],
243
- i: parseFloat(_arr[1]) / 100,
244
- });
245
- }
246
- }
247
- });
248
- return {
249
- angle: parseFloat(arr[0]),
250
- colors,
251
- };
219
+ if (typeof color !== 'string' || !color.startsWith('linear-gradient')) {
220
+ return {
221
+ angle: 0,
222
+ colors: [],
223
+ };
224
+ }
225
+ const start = color.indexOf('(');
226
+ const end = color.lastIndexOf(')');
227
+ if (start === -1 || end === -1 || end <= start) {
228
+ return { angle: 0, colors: [] };
229
+ }
230
+ const inner = color.slice(start + 1, end).trim();
231
+ const parts = splitByCommaRespectingParens(inner);
232
+ if (parts.length === 0) {
233
+ return { angle: 0, colors: [] };
234
+ }
235
+ let angle = 0;
236
+ let colorStartIndex = 0;
237
+ const firstPart = parts[0].trim();
238
+ if (firstPart.endsWith('deg')) {
239
+ angle = parseFloat(firstPart);
240
+ colorStartIndex = 1;
241
+ }
242
+ else if (firstPart.startsWith('to ')) {
243
+ angle = directionToAngle(firstPart);
244
+ colorStartIndex = 1;
245
+ }
246
+ const rawStops = [];
247
+ for (let i = colorStartIndex; i < parts.length; i++) {
248
+ const stop = parseColorStop(parts[i].trim());
249
+ if (stop) {
250
+ rawStops.push(stop);
251
+ }
252
+ }
253
+ if (rawStops.length === 0) {
254
+ return { angle, colors: [] };
255
+ }
256
+ fillMissingOffsets(rawStops);
257
+ const colors = rawStops.map((stop) => ({
258
+ color: stop.color,
259
+ i: stop.offset / 100,
260
+ }));
261
+ return { angle, colors };
262
+ }
263
+ function splitByCommaRespectingParens(str) {
264
+ const parts = [];
265
+ let current = '';
266
+ let depth = 0;
267
+ for (let i = 0; i < str.length; i++) {
268
+ const char = str[i];
269
+ if (char === '(') {
270
+ depth++;
271
+ current += char;
272
+ }
273
+ else if (char === ')') {
274
+ depth--;
275
+ current += char;
276
+ }
277
+ else if (char === ',' && depth === 0) {
278
+ parts.push(current);
279
+ current = '';
252
280
  }
253
281
  else {
254
- return {
255
- angle: parseFloat(arr[0]),
256
- colors: [],
257
- };
282
+ current += char;
258
283
  }
259
284
  }
260
- else {
285
+ if (current.trim()) {
286
+ parts.push(current);
287
+ }
288
+ return parts;
289
+ }
290
+ function parseColorStop(str) {
291
+ if (!str)
292
+ return null;
293
+ const percentMatch = str.match(/^(.+?)\s+(\d+(?:\.\d+)?%)\s*$/);
294
+ if (percentMatch) {
261
295
  return {
262
- angle: 0,
263
- colors: [],
296
+ color: normalizeColor(percentMatch[1].trim()),
297
+ offset: parseFloat(percentMatch[2]),
264
298
  };
265
299
  }
300
+ return { color: normalizeColor(str) };
301
+ }
302
+ function normalizeColor(color) {
303
+ if (/^rgba?\s*\(/.test(color)) {
304
+ return rgbaToHex(color);
305
+ }
306
+ return color;
307
+ }
308
+ function directionToAngle(dir) {
309
+ const map = {
310
+ 'to top': 90,
311
+ 'to right': 180,
312
+ 'to bottom': 270,
313
+ 'to left': 0,
314
+ 'to top right': 135,
315
+ 'to right top': 135,
316
+ 'to bottom right': 225,
317
+ 'to right bottom': 225,
318
+ 'to bottom left': 315,
319
+ 'to left bottom': 315,
320
+ 'to top left': 45,
321
+ 'to left top': 45,
322
+ };
323
+ return map[dir] ?? 0;
324
+ }
325
+ function fillMissingOffsets(stops) {
326
+ if (stops.length === 0)
327
+ return;
328
+ if (stops[0].offset == null) {
329
+ stops[0].offset = 0;
330
+ }
331
+ if (stops[stops.length - 1].offset == null) {
332
+ stops[stops.length - 1].offset = 100;
333
+ }
334
+ let i = 0;
335
+ while (i < stops.length) {
336
+ if (stops[i].offset == null) {
337
+ let prevIndex = i - 1;
338
+ let nextIndex = i + 1;
339
+ while (nextIndex < stops.length && stops[nextIndex].offset == null) {
340
+ nextIndex++;
341
+ }
342
+ const prevOffset = stops[prevIndex].offset;
343
+ const nextOffset = stops[nextIndex].offset;
344
+ const gap = nextIndex - prevIndex;
345
+ for (let j = 1; j < gap; j++) {
346
+ stops[prevIndex + j].offset = prevOffset + (nextOffset - prevOffset) * (j / gap);
347
+ }
348
+ i = nextIndex;
349
+ }
350
+ else {
351
+ i++;
352
+ }
353
+ }
266
354
  }
267
355
  function rgbaToHex(value) {
268
356
  if (/rgba?/.test(value)) {
@@ -1268,6 +1356,12 @@ export function renderPen(ctx, pen, download) {
1268
1356
  }
1269
1357
  else {
1270
1358
  let back;
1359
+ const backgroundStr = pen.calculative.background || '';
1360
+ if (typeof backgroundStr === 'string' && backgroundStr.startsWith('linear-gradient')) {
1361
+ //让background为linear开头的兼容到gradientColors
1362
+ pen.calculative.gradientColors = backgroundStr;
1363
+ pen.calculative.bkType = Gradient.Linear;
1364
+ }
1271
1365
  if (pen.calculative.bkType === Gradient.Linear) {
1272
1366
  if (pen.calculative.gradientColors) {
1273
1367
  // if (!pen.type) {