@plait/draw 0.70.0 → 0.72.0

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.
Files changed (83) hide show
  1. package/arrow-line.component.d.ts +1 -1
  2. package/constants/default.d.ts +1 -0
  3. package/constants/geometry.d.ts +5 -5
  4. package/constants/index.d.ts +1 -0
  5. package/constants/pointer.d.ts +3 -3
  6. package/engines/table/table.d.ts +2 -2
  7. package/engines/uml/combined-fragment.d.ts +2 -2
  8. package/engines/uml/package.d.ts +2 -2
  9. package/esm2022/arrow-line.component.mjs +13 -13
  10. package/esm2022/constants/default.mjs +2 -0
  11. package/esm2022/constants/geometry.mjs +8 -8
  12. package/esm2022/constants/index.mjs +2 -1
  13. package/esm2022/constants/pointer.mjs +4 -4
  14. package/esm2022/engines/table/table.mjs +3 -3
  15. package/esm2022/engines/uml/combined-fragment.mjs +5 -5
  16. package/esm2022/engines/uml/package.mjs +5 -5
  17. package/esm2022/generators/geometry-shape.generator.mjs +6 -5
  18. package/esm2022/generators/single-text.generator.mjs +3 -3
  19. package/esm2022/generators/table.generator.mjs +6 -5
  20. package/esm2022/generators/text.generator.mjs +25 -21
  21. package/esm2022/geometry.component.mjs +4 -5
  22. package/esm2022/interfaces/arrow-line.mjs +1 -1
  23. package/esm2022/interfaces/element.mjs +1 -7
  24. package/esm2022/interfaces/geometry.mjs +6 -6
  25. package/esm2022/interfaces/index.mjs +13 -1
  26. package/esm2022/interfaces/options.mjs +2 -0
  27. package/esm2022/interfaces/vector-line.mjs +5 -5
  28. package/esm2022/plugins/with-arrow-line-text.mjs +2 -2
  29. package/esm2022/plugins/with-draw-fragment.mjs +8 -12
  30. package/esm2022/plugins/with-draw-hotkey.mjs +3 -3
  31. package/esm2022/plugins/with-draw-resize.mjs +11 -6
  32. package/esm2022/plugins/with-draw-rotate.mjs +3 -2
  33. package/esm2022/plugins/with-draw.mjs +10 -11
  34. package/esm2022/plugins/with-vector-line-create.mjs +123 -0
  35. package/esm2022/plugins/with-vector-line-resize.mjs +3 -3
  36. package/esm2022/table.component.mjs +8 -9
  37. package/esm2022/transforms/index.mjs +3 -3
  38. package/esm2022/transforms/multi-text-geometry-text.mjs +3 -3
  39. package/esm2022/utils/arrow-line/arrow-line-basic.mjs +6 -5
  40. package/esm2022/utils/clipboard.mjs +6 -17
  41. package/esm2022/utils/common.mjs +15 -8
  42. package/esm2022/utils/geometry.mjs +3 -3
  43. package/esm2022/utils/hit.mjs +21 -19
  44. package/esm2022/utils/index.mjs +2 -1
  45. package/esm2022/utils/multi-text-geometry.mjs +3 -3
  46. package/esm2022/utils/selected.mjs +9 -1
  47. package/esm2022/utils/snap-resizing.mjs +1 -1
  48. package/esm2022/utils/style/stroke.mjs +7 -17
  49. package/esm2022/utils/table.mjs +2 -2
  50. package/esm2022/utils/vector-line.mjs +6 -10
  51. package/esm2022/vector-line.component.mjs +2 -4
  52. package/fesm2022/plait-draw.mjs +259 -318
  53. package/fesm2022/plait-draw.mjs.map +1 -1
  54. package/generators/single-text.generator.d.ts +2 -2
  55. package/generators/text.generator.d.ts +11 -11
  56. package/interfaces/arrow-line.d.ts +1 -1
  57. package/interfaces/element.d.ts +0 -5
  58. package/interfaces/geometry.d.ts +11 -10
  59. package/interfaces/index.d.ts +4 -1
  60. package/interfaces/options.d.ts +4 -0
  61. package/interfaces/vector-line.d.ts +4 -4
  62. package/package.json +1 -1
  63. package/plugins/with-vector-line-create.d.ts +2 -0
  64. package/styles/styles.scss +1 -1
  65. package/table.component.d.ts +2 -2
  66. package/transforms/common.d.ts +1 -1
  67. package/transforms/geometry.d.ts +1 -1
  68. package/transforms/index.d.ts +3 -3
  69. package/transforms/multi-text-geometry-text.d.ts +2 -2
  70. package/utils/clipboard.d.ts +10 -3
  71. package/utils/common.d.ts +5 -3
  72. package/utils/geometry.d.ts +6 -6
  73. package/utils/hit.d.ts +8 -4
  74. package/utils/index.d.ts +1 -0
  75. package/utils/multi-text-geometry.d.ts +6 -10
  76. package/utils/selected.d.ts +3 -1
  77. package/utils/snap-resizing.d.ts +2 -2
  78. package/utils/style/stroke.d.ts +1 -2
  79. package/utils/vector-line.d.ts +0 -1
  80. package/esm2022/plugins/with-geometry-resize.mjs +0 -70
  81. package/esm2022/plugins/with-vector-pen-create.mjs +0 -123
  82. package/plugins/with-geometry-resize.d.ts +0 -2
  83. package/plugins/with-vector-pen-create.d.ts +0 -2
@@ -1,123 +0,0 @@
1
- import { BoardTransforms, PlaitBoard, PlaitPointerType, Transforms, addSelectedElement, clearSelectedElement, createG, distanceBetweenPointAndPoint, getElementById, toHostPoint, toViewBoxPoint } from '@plait/core';
2
- import { VectorLineShape, VectorPenPointerType } from '../interfaces';
3
- import { LINE_HIT_GEOMETRY_BUFFER, getVectorPenPointers } from '../constants';
4
- import { isDrawingMode } from '@plait/common';
5
- import { vectorLineCreating } from '../utils';
6
- import { isKeyHotkey } from 'is-hotkey';
7
- export const withVectorPenCreateByDraw = (board) => {
8
- const { pointerDown, pointerMove, dblClick, globalKeyDown } = board;
9
- let lineShapeG = null;
10
- let temporaryElement = null;
11
- let vectorPenRef;
12
- const vectorLineComplete = () => {
13
- if (vectorPenRef) {
14
- clearSelectedElement(board);
15
- if (vectorPenRef?.element) {
16
- addSelectedElement(board, vectorPenRef?.element);
17
- }
18
- }
19
- PlaitBoard.getBoardContainer(board).classList.remove(`vector-line-closed`);
20
- lineShapeG?.remove();
21
- lineShapeG = null;
22
- vectorPenRef = null;
23
- temporaryElement = null;
24
- };
25
- board.pointerDown = (event) => {
26
- const penPointers = getVectorPenPointers();
27
- const isVectorPenPointer = PlaitBoard.isInPointer(board, penPointers);
28
- if (isVectorPenPointer && !vectorPenRef) {
29
- vectorPenRef = { shape: VectorLineShape.straight };
30
- }
31
- if (!PlaitBoard.isReadonly(board) && vectorPenRef && isDrawingMode(board)) {
32
- let point = toViewBoxPoint(board, toHostPoint(board, event.x, event.y));
33
- if (!temporaryElement) {
34
- vectorPenRef = {
35
- ...vectorPenRef,
36
- start: point
37
- };
38
- }
39
- else {
40
- if (!vectorPenRef.element) {
41
- vectorPenRef.element = temporaryElement;
42
- Transforms.insertNode(board, vectorPenRef.element, [board.children.length]);
43
- }
44
- else {
45
- let points = vectorPenRef.element.points;
46
- const isClosed = distanceBetweenPointAndPoint(...point, ...vectorPenRef.start) <= LINE_HIT_GEOMETRY_BUFFER;
47
- if (isClosed) {
48
- point = vectorPenRef.start;
49
- }
50
- if (vectorPenRef.path) {
51
- const lastPoint = points[points.length - 1];
52
- const distance = distanceBetweenPointAndPoint(...point, ...lastPoint);
53
- if (distance > 2) {
54
- Transforms.setNode(board, { points: [...points, point] }, vectorPenRef.path);
55
- }
56
- }
57
- vectorPenRef.element = getElementById(board, vectorPenRef.element.id);
58
- if (isClosed) {
59
- vectorLineComplete();
60
- }
61
- }
62
- }
63
- }
64
- pointerDown(event);
65
- };
66
- board.pointerMove = (event) => {
67
- lineShapeG?.remove();
68
- lineShapeG = createG();
69
- let movingPoint = toViewBoxPoint(board, toHostPoint(board, event.x, event.y));
70
- const pointer = PlaitBoard.getPointer(board);
71
- if (pointer !== VectorPenPointerType.vectorPen) {
72
- vectorLineComplete();
73
- }
74
- if (vectorPenRef && vectorPenRef.start) {
75
- let drawPoints = [vectorPenRef.start];
76
- if (vectorPenRef.element) {
77
- drawPoints = [vectorPenRef.start, ...vectorPenRef.element.points];
78
- const path = PlaitBoard.findPath(board, vectorPenRef.element);
79
- vectorPenRef.path = path;
80
- }
81
- const distance = distanceBetweenPointAndPoint(...movingPoint, ...vectorPenRef.start);
82
- if (distance <= LINE_HIT_GEOMETRY_BUFFER) {
83
- movingPoint = vectorPenRef.start;
84
- PlaitBoard.getBoardContainer(board).classList.add(`vector-line-closed`);
85
- }
86
- else {
87
- PlaitBoard.getBoardContainer(board).classList.remove(`vector-line-closed`);
88
- }
89
- temporaryElement = vectorLineCreating(board, vectorPenRef.shape, drawPoints, movingPoint, lineShapeG);
90
- }
91
- pointerMove(event);
92
- };
93
- board.dblClick = (event) => {
94
- if (!PlaitBoard.isReadonly(board)) {
95
- if (vectorPenRef) {
96
- if (vectorPenRef.path) {
97
- Transforms.setNode(board, { points: vectorPenRef?.element?.points }, vectorPenRef.path);
98
- }
99
- vectorLineComplete();
100
- BoardTransforms.updatePointerType(board, PlaitPointerType.selection);
101
- }
102
- }
103
- dblClick(event);
104
- };
105
- board.globalKeyDown = (event) => {
106
- if (!PlaitBoard.isReadonly(board)) {
107
- const isEsc = isKeyHotkey('esc', event);
108
- const isV = isKeyHotkey('v', event);
109
- if ((isEsc || isV) && vectorPenRef) {
110
- if (vectorPenRef.path) {
111
- Transforms.setNode(board, { points: vectorPenRef.element?.points }, vectorPenRef.path);
112
- }
113
- vectorLineComplete();
114
- if (isV) {
115
- BoardTransforms.updatePointerType(board, PlaitPointerType.selection);
116
- }
117
- }
118
- }
119
- globalKeyDown(event);
120
- };
121
- return board;
122
- };
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC12ZWN0b3ItcGVuLWNyZWF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2RyYXcvc3JjL3BsdWdpbnMvd2l0aC12ZWN0b3ItcGVuLWNyZWF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsZUFBZSxFQUNmLFVBQVUsRUFDVixnQkFBZ0IsRUFDaEIsVUFBVSxFQUNWLGtCQUFrQixFQUNsQixvQkFBb0IsRUFDcEIsT0FBTyxFQUNQLDRCQUE0QixFQUM1QixjQUFjLEVBQ2QsV0FBVyxFQUNYLGNBQWMsRUFDakIsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFtQixlQUFlLEVBQUUsb0JBQW9CLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBbUIsd0JBQXdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0YsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV4QyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtJQUMzRCxNQUFNLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBRXBFLElBQUksVUFBVSxHQUF1QixJQUFJLENBQUM7SUFFMUMsSUFBSSxnQkFBZ0IsR0FBMkIsSUFBSSxDQUFDO0lBRXBELElBQUksWUFBaUMsQ0FBQztJQUV0QyxNQUFNLGtCQUFrQixHQUFHLEdBQUcsRUFBRTtRQUM1QixJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2Ysb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDNUIsSUFBSSxZQUFZLEVBQUUsT0FBTyxFQUFFLENBQUM7Z0JBQ3hC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QUssR0FBRyxXQUFXLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3hDLE1BQU0sR0FBRyxHQUFHLFdBQVcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLEtBQUssSUFBSSxHQUFHLENBQUMsSUFBSSxZQUFZLEVBQUUsQ0FBQztnQkFDakMsSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3BCLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLFlBQVksQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUMzRixDQUFDO2dCQUNELGtCQUFrQixFQUFFLENBQUM7Z0JBQ3JCLElBQUksR0FBRyxFQUFFLENBQUM7b0JBQ04sZUFBZSxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDekUsQ0FBQztZQUNMLENBQUM7UUFDTCxDQUFDO1FBQ0QsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUMsQ0FBQztJQUVGLE9BQU8sS0FBSyxDQUFDO0FBQ2pCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQm9hcmRUcmFuc2Zvcm1zLFxuICAgIFBsYWl0Qm9hcmQsXG4gICAgUGxhaXRQb2ludGVyVHlwZSxcbiAgICBUcmFuc2Zvcm1zLFxuICAgIGFkZFNlbGVjdGVkRWxlbWVudCxcbiAgICBjbGVhclNlbGVjdGVkRWxlbWVudCxcbiAgICBjcmVhdGVHLFxuICAgIGRpc3RhbmNlQmV0d2VlblBvaW50QW5kUG9pbnQsXG4gICAgZ2V0RWxlbWVudEJ5SWQsXG4gICAgdG9Ib3N0UG9pbnQsXG4gICAgdG9WaWV3Qm94UG9pbnRcbn0gZnJvbSAnQHBsYWl0L2NvcmUnO1xuaW1wb3J0IHsgUGxhaXRWZWN0b3JMaW5lLCBWZWN0b3JMaW5lU2hhcGUsIFZlY3RvclBlblBvaW50ZXJUeXBlLCBWZWN0b3JQZW5SZWYgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IERyYXdQb2ludGVyVHlwZSwgTElORV9ISVRfR0VPTUVUUllfQlVGRkVSLCBnZXRWZWN0b3JQZW5Qb2ludGVycyB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBpc0RyYXdpbmdNb2RlIH0gZnJvbSAnQHBsYWl0L2NvbW1vbic7XG5pbXBvcnQgeyB2ZWN0b3JMaW5lQ3JlYXRpbmcgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBpc0tleUhvdGtleSB9IGZyb20gJ2lzLWhvdGtleSc7XG5cbmV4cG9ydCBjb25zdCB3aXRoVmVjdG9yUGVuQ3JlYXRlQnlEcmF3ID0gKGJvYXJkOiBQbGFpdEJvYXJkKSA9PiB7XG4gICAgY29uc3QgeyBwb2ludGVyRG93biwgcG9pbnRlck1vdmUsIGRibENsaWNrLCBnbG9iYWxLZXlEb3duIH0gPSBib2FyZDtcblxuICAgIGxldCBsaW5lU2hhcGVHOiBTVkdHRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gICAgbGV0IHRlbXBvcmFyeUVsZW1lbnQ6IFBsYWl0VmVjdG9yTGluZSB8IG51bGwgPSBudWxsO1xuXG4gICAgbGV0IHZlY3RvclBlblJlZjogVmVjdG9yUGVuUmVmIHwgbnVsbDtcblxuICAgIGNvbnN0IHZlY3RvckxpbmVDb21wbGV0ZSA9ICgpID0+IHtcbiAgICAgICAgaWYgKHZlY3RvclBlblJlZikge1xuICAgICAgICAgICAgY2xlYXJTZWxlY3RlZEVsZW1lbnQoYm9hcmQpO1xuICAgICAgICAgICAgaWYgKHZlY3RvclBlblJlZj8uZWxlbWVudCkge1xuICAgICAgICAgICAgICAgIGFkZFNlbGVjdGVkRWxlbWVudChib2FyZCwgdmVjdG9yUGVuUmVmPy5lbGVtZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBQbGFpdEJvYXJkLmdldEJvYXJkQ29udGFpbmVyKGJvYXJkKS5jbGFzc0xpc3QucmVtb3ZlKGB2ZWN0b3ItbGluZS1jbG9zZWRgKTtcbiAgICAgICAgbGluZVNoYXBlRz8ucmVtb3ZlKCk7XG4gICAgICAgIGxpbmVTaGFwZUcgPSBudWxsO1xuICAgICAgICB2ZWN0b3JQZW5SZWYgPSBudWxsO1xuICAgICAgICB0ZW1wb3JhcnlFbGVtZW50ID0gbnVsbDtcbiAgICB9O1xuXG4gICAgYm9hcmQucG9pbnRlckRvd24gPSAoZXZlbnQ6IFBvaW50ZXJFdmVudCkgPT4ge1xuICAgICAgICBjb25zdCBwZW5Qb2ludGVycyA9IGdldFZlY3RvclBlblBvaW50ZXJzKCk7XG4gICAgICAgIGNvbnN0IGlzVmVjdG9yUGVuUG9pbnRlciA9IFBsYWl0Qm9hcmQuaXNJblBvaW50ZXIoYm9hcmQsIHBlblBvaW50ZXJzKTtcblxuICAgICAgICBpZiAoaXNWZWN0b3JQZW5Qb2ludGVyICYmICF2ZWN0b3JQZW5SZWYpIHtcbiAgICAgICAgICAgIHZlY3RvclBlblJlZiA9IHsgc2hhcGU6IFZlY3RvckxpbmVTaGFwZS5zdHJhaWdodCB9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFQbGFpdEJvYXJkLmlzUmVhZG9ubHkoYm9hcmQpICYmIHZlY3RvclBlblJlZiAmJiBpc0RyYXdpbmdNb2RlKGJvYXJkKSkge1xuICAgICAgICAgICAgbGV0IHBvaW50ID0gdG9WaWV3Qm94UG9pbnQoYm9hcmQsIHRvSG9zdFBvaW50KGJvYXJkLCBldmVudC54LCBldmVudC55KSk7XG4gICAgICAgICAgICBpZiAoIXRlbXBvcmFyeUVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICB2ZWN0b3JQZW5SZWYgPSB7XG4gICAgICAgICAgICAgICAgICAgIC4uLnZlY3RvclBlblJlZixcbiAgICAgICAgICAgICAgICAgICAgc3RhcnQ6IHBvaW50XG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKCF2ZWN0b3JQZW5SZWYuZWxlbWVudCkge1xuICAgICAgICAgICAgICAgICAgICB2ZWN0b3JQZW5SZWYuZWxlbWVudCA9IHRlbXBvcmFyeUVsZW1lbnQ7XG4gICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuaW5zZXJ0Tm9kZShib2FyZCwgdmVjdG9yUGVuUmVmLmVsZW1lbnQsIFtib2FyZC5jaGlsZHJlbi5sZW5ndGhdKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBsZXQgcG9pbnRzID0gdmVjdG9yUGVuUmVmLmVsZW1lbnQucG9pbnRzO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpc0Nsb3NlZCA9IGRpc3RhbmNlQmV0d2VlblBvaW50QW5kUG9pbnQoLi4ucG9pbnQsIC4uLnZlY3RvclBlblJlZi5zdGFydCEpIDw9IExJTkVfSElUX0dFT01FVFJZX0JVRkZFUjtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzQ2xvc2VkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb2ludCA9IHZlY3RvclBlblJlZi5zdGFydCE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKHZlY3RvclBlblJlZi5wYXRoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsYXN0UG9pbnQgPSBwb2ludHNbcG9pbnRzLmxlbmd0aCAtIDFdO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGlzdGFuY2UgPSBkaXN0YW5jZUJldHdlZW5Qb2ludEFuZFBvaW50KC4uLnBvaW50LCAuLi5sYXN0UG9pbnQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRpc3RhbmNlID4gMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYW5zZm9ybXMuc2V0Tm9kZShib2FyZCwgeyBwb2ludHM6IFsuLi5wb2ludHMsIHBvaW50XSB9LCB2ZWN0b3JQZW5SZWYucGF0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdmVjdG9yUGVuUmVmLmVsZW1lbnQgPSBnZXRFbGVtZW50QnlJZChib2FyZCwgdmVjdG9yUGVuUmVmLmVsZW1lbnQuaWQpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNDbG9zZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlY3RvckxpbmVDb21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHBvaW50ZXJEb3duKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgYm9hcmQucG9pbnRlck1vdmUgPSAoZXZlbnQ6IFBvaW50ZXJFdmVudCkgPT4ge1xuICAgICAgICBsaW5lU2hhcGVHPy5yZW1vdmUoKTtcbiAgICAgICAgbGluZVNoYXBlRyA9IGNyZWF0ZUcoKTtcbiAgICAgICAgbGV0IG1vdmluZ1BvaW50ID0gdG9WaWV3Qm94UG9pbnQoYm9hcmQsIHRvSG9zdFBvaW50KGJvYXJkLCBldmVudC54LCBldmVudC55KSk7XG4gICAgICAgIGNvbnN0IHBvaW50ZXIgPSBQbGFpdEJvYXJkLmdldFBvaW50ZXIoYm9hcmQpIGFzIERyYXdQb2ludGVyVHlwZTtcbiAgICAgICAgaWYgKHBvaW50ZXIgIT09IFZlY3RvclBlblBvaW50ZXJUeXBlLnZlY3RvclBlbikge1xuICAgICAgICAgICAgdmVjdG9yTGluZUNvbXBsZXRlKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHZlY3RvclBlblJlZiAmJiB2ZWN0b3JQZW5SZWYuc3RhcnQpIHtcbiAgICAgICAgICAgIGxldCBkcmF3UG9pbnRzID0gW3ZlY3RvclBlblJlZi5zdGFydF07XG4gICAgICAgICAgICBpZiAodmVjdG9yUGVuUmVmLmVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICBkcmF3UG9pbnRzID0gW3ZlY3RvclBlblJlZi5zdGFydCwgLi4udmVjdG9yUGVuUmVmLmVsZW1lbnQucG9pbnRzXTtcbiAgICAgICAgICAgICAgICBjb25zdCBwYXRoID0gUGxhaXRCb2FyZC5maW5kUGF0aChib2FyZCwgdmVjdG9yUGVuUmVmLmVsZW1lbnQhKTtcbiAgICAgICAgICAgICAgICB2ZWN0b3JQZW5SZWYucGF0aCA9IHBhdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBkaXN0YW5jZSA9IGRpc3RhbmNlQmV0d2VlblBvaW50QW5kUG9pbnQoLi4ubW92aW5nUG9pbnQsIC4uLnZlY3RvclBlblJlZi5zdGFydCk7XG4gICAgICAgICAgICBpZiAoZGlzdGFuY2UgPD0gTElORV9ISVRfR0VPTUVUUllfQlVGRkVSKSB7XG4gICAgICAgICAgICAgICAgbW92aW5nUG9pbnQgPSB2ZWN0b3JQZW5SZWYuc3RhcnQ7XG4gICAgICAgICAgICAgICAgUGxhaXRCb2FyZC5nZXRCb2FyZENvbnRhaW5lcihib2FyZCkuY2xhc3NMaXN0LmFkZChgdmVjdG9yLWxpbmUtY2xvc2VkYCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIFBsYWl0Qm9hcmQuZ2V0Qm9hcmRDb250YWluZXIoYm9hcmQpLmNsYXNzTGlzdC5yZW1vdmUoYHZlY3Rvci1saW5lLWNsb3NlZGApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGVtcG9yYXJ5RWxlbWVudCA9IHZlY3RvckxpbmVDcmVhdGluZyhib2FyZCwgdmVjdG9yUGVuUmVmLnNoYXBlLCBkcmF3UG9pbnRzLCBtb3ZpbmdQb2ludCwgbGluZVNoYXBlRyk7XG4gICAgICAgIH1cbiAgICAgICAgcG9pbnRlck1vdmUoZXZlbnQpO1xuICAgIH07XG5cbiAgICBib2FyZC5kYmxDbGljayA9IChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgICBpZiAoIVBsYWl0Qm9hcmQuaXNSZWFkb25seShib2FyZCkpIHtcbiAgICAgICAgICAgIGlmICh2ZWN0b3JQZW5SZWYpIHtcbiAgICAgICAgICAgICAgICBpZiAodmVjdG9yUGVuUmVmLnBhdGgpIHtcbiAgICAgICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCB7IHBvaW50czogdmVjdG9yUGVuUmVmPy5lbGVtZW50Py5wb2ludHMgfSwgdmVjdG9yUGVuUmVmLnBhdGgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB2ZWN0b3JMaW5lQ29tcGxldGUoKTtcbiAgICAgICAgICAgICAgICBCb2FyZFRyYW5zZm9ybXMudXBkYXRlUG9pbnRlclR5cGUoYm9hcmQsIFBsYWl0UG9pbnRlclR5cGUuc2VsZWN0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBkYmxDbGljayhldmVudCk7XG4gICAgfTtcblxuICAgIGJvYXJkLmdsb2JhbEtleURvd24gPSAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgICAgaWYgKCFQbGFpdEJvYXJkLmlzUmVhZG9ubHkoYm9hcmQpKSB7XG4gICAgICAgICAgICBjb25zdCBpc0VzYyA9IGlzS2V5SG90a2V5KCdlc2MnLCBldmVudCk7XG4gICAgICAgICAgICBjb25zdCBpc1YgPSBpc0tleUhvdGtleSgndicsIGV2ZW50KTtcbiAgICAgICAgICAgIGlmICgoaXNFc2MgfHwgaXNWKSAmJiB2ZWN0b3JQZW5SZWYpIHtcbiAgICAgICAgICAgICAgICBpZiAodmVjdG9yUGVuUmVmLnBhdGgpIHtcbiAgICAgICAgICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZXROb2RlKGJvYXJkLCB7IHBvaW50czogdmVjdG9yUGVuUmVmLmVsZW1lbnQ/LnBvaW50cyB9LCB2ZWN0b3JQZW5SZWYucGF0aCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHZlY3RvckxpbmVDb21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgIGlmIChpc1YpIHtcbiAgICAgICAgICAgICAgICAgICAgQm9hcmRUcmFuc2Zvcm1zLnVwZGF0ZVBvaW50ZXJUeXBlKGJvYXJkLCBQbGFpdFBvaW50ZXJUeXBlLnNlbGVjdGlvbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGdsb2JhbEtleURvd24oZXZlbnQpO1xuICAgIH07XG5cbiAgICByZXR1cm4gYm9hcmQ7XG59O1xuIl19
@@ -1,2 +0,0 @@
1
- import { PlaitBoard } from '@plait/core';
2
- export declare const withGeometryResize: (board: PlaitBoard) => PlaitBoard;
@@ -1,2 +0,0 @@
1
- import { PlaitBoard } from '@plait/core';
2
- export declare const withVectorPenCreateByDraw: (board: PlaitBoard) => PlaitBoard;