@plait/core 0.24.0-next.0 β 0.24.0-next.2
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/esm2020/board/board.component.mjs +8 -12
- package/esm2020/interfaces/rectangle-client.mjs +9 -1
- package/esm2020/plugins/with-moving.mjs +10 -10
- package/esm2020/utils/math.mjs +38 -1
- package/fesm2015/plait-core.mjs +101 -61
- package/fesm2015/plait-core.mjs.map +1 -1
- package/fesm2020/plait-core.mjs +101 -61
- package/fesm2020/plait-core.mjs.map +1 -1
- package/interfaces/rectangle-client.d.ts +1 -0
- package/package.json +1 -1
- package/utils/math.d.ts +4 -0
package/fesm2020/plait-core.mjs
CHANGED
|
@@ -145,6 +145,54 @@ const ThemeColors = [
|
|
|
145
145
|
StarryThemeColor
|
|
146
146
|
];
|
|
147
147
|
|
|
148
|
+
const RectangleClient = {
|
|
149
|
+
isHit: (origin, target) => {
|
|
150
|
+
const minX = origin.x < target.x ? origin.x : target.x;
|
|
151
|
+
const maxX = origin.x + origin.width > target.x + target.width ? origin.x + origin.width : target.x + target.width;
|
|
152
|
+
const minY = origin.y < target.y ? origin.y : target.y;
|
|
153
|
+
const maxY = origin.y + origin.height > target.y + target.height ? origin.y + origin.height : target.y + target.height;
|
|
154
|
+
// float calculate error( eg: 1.4210854715202004e-14 > 0)
|
|
155
|
+
if (Math.floor(maxX - minX - origin.width - target.width) <= 0 && Math.floor(maxY - minY - origin.height - target.height) <= 0) {
|
|
156
|
+
return true;
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
return false;
|
|
160
|
+
}
|
|
161
|
+
},
|
|
162
|
+
toRectangleClient: (points) => {
|
|
163
|
+
const xArray = points.map(ele => ele[0]);
|
|
164
|
+
const yArray = points.map(ele => ele[1]);
|
|
165
|
+
const xMin = Math.min(...xArray);
|
|
166
|
+
const xMax = Math.max(...xArray);
|
|
167
|
+
const yMin = Math.min(...yArray);
|
|
168
|
+
const yMax = Math.max(...yArray);
|
|
169
|
+
const rect = { x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin };
|
|
170
|
+
return rect;
|
|
171
|
+
},
|
|
172
|
+
getOutlineRectangle: (rectangle, offset) => {
|
|
173
|
+
return {
|
|
174
|
+
x: rectangle.x + offset,
|
|
175
|
+
y: rectangle.y + offset,
|
|
176
|
+
width: rectangle.width + Math.abs(offset) * 2,
|
|
177
|
+
height: rectangle.height + Math.abs(offset) * 2
|
|
178
|
+
};
|
|
179
|
+
},
|
|
180
|
+
isEqual: (rectangle, otherRectangle) => {
|
|
181
|
+
return (rectangle.x === otherRectangle.x &&
|
|
182
|
+
rectangle.y === otherRectangle.y &&
|
|
183
|
+
rectangle.width === otherRectangle.width &&
|
|
184
|
+
rectangle.height === otherRectangle.height);
|
|
185
|
+
},
|
|
186
|
+
getCornerPoints: (rectangle) => {
|
|
187
|
+
return [
|
|
188
|
+
[rectangle.x, rectangle.y],
|
|
189
|
+
[rectangle.x + rectangle.width, rectangle.y],
|
|
190
|
+
[rectangle.x + rectangle.width, rectangle.y + rectangle.height],
|
|
191
|
+
[rectangle.x, rectangle.y + rectangle.height]
|
|
192
|
+
];
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
|
|
148
196
|
// https://stackoverflow.com/a/6853926/232122
|
|
149
197
|
function distanceBetweenPointAndSegment(x, y, x1, y1, x2, y2) {
|
|
150
198
|
const A = x - x1;
|
|
@@ -175,6 +223,19 @@ function distanceBetweenPointAndSegment(x, y, x1, y1, x2, y2) {
|
|
|
175
223
|
const dy = y - yy;
|
|
176
224
|
return Math.hypot(dx, dy);
|
|
177
225
|
}
|
|
226
|
+
function distanceBetweenPointAndSegments(points, point) {
|
|
227
|
+
const len = points.length;
|
|
228
|
+
let distance = Infinity;
|
|
229
|
+
for (let i = 0; i < len - 1; i++) {
|
|
230
|
+
const p = points[i];
|
|
231
|
+
const p2 = points[i + 1];
|
|
232
|
+
const currentDistance = distanceBetweenPointAndSegment(point[0], point[1], p[0], p[1], p2[0], p2[1]);
|
|
233
|
+
if (currentDistance < distance) {
|
|
234
|
+
distance = currentDistance;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
return distance;
|
|
238
|
+
}
|
|
178
239
|
function rotate(x1, y1, x2, y2, angle) {
|
|
179
240
|
// πβ²π₯=(ππ₯βππ₯)cosπβ(ππ¦βππ¦)sinπ+ππ₯
|
|
180
241
|
// πβ²π¦=(ππ₯βππ₯)sinπ+(ππ¦βππ¦)cosπ+ππ¦.
|
|
@@ -192,6 +253,29 @@ function distanceBetweenPointAndRectangle(x, y, rect) {
|
|
|
192
253
|
var dy = Math.max(rect.y - y, 0, y - (rect.y + rect.height));
|
|
193
254
|
return Math.sqrt(dx * dx + dy * dy);
|
|
194
255
|
}
|
|
256
|
+
const isLineHitLine = (a, b, c, d) => {
|
|
257
|
+
const crossProduct = (v1, v2) => v1[0] * v2[1] - v1[1] * v2[0];
|
|
258
|
+
const ab = [b[0] - a[0], b[1] - a[1]];
|
|
259
|
+
const ac = [c[0] - a[0], c[1] - a[1]];
|
|
260
|
+
const ad = [d[0] - a[0], d[1] - a[1]];
|
|
261
|
+
const ca = [a[0] - c[0], a[1] - c[1]];
|
|
262
|
+
const cb = [b[0] - c[0], b[1] - c[1]];
|
|
263
|
+
const cd = [d[0] - c[0], d[1] - c[1]];
|
|
264
|
+
return crossProduct(ab, ac) * crossProduct(ab, ad) <= 0 && crossProduct(cd, ca) * crossProduct(cd, cb) <= 0;
|
|
265
|
+
};
|
|
266
|
+
const isPolylineHitRectangle = (points, rectangle) => {
|
|
267
|
+
const rectanglePoints = RectangleClient.getCornerPoints(rectangle);
|
|
268
|
+
for (let i = 1; i < points.length; i++) {
|
|
269
|
+
const isIntersect = isLineHitLine(points[i], points[i - 1], rectanglePoints[0], rectanglePoints[1]) ||
|
|
270
|
+
isLineHitLine(points[i], points[i - 1], rectanglePoints[1], rectanglePoints[2]) ||
|
|
271
|
+
isLineHitLine(points[i], points[i - 1], rectanglePoints[2], rectanglePoints[3]) ||
|
|
272
|
+
isLineHitLine(points[i], points[i - 1], rectanglePoints[3], rectanglePoints[0]);
|
|
273
|
+
if (isIntersect) {
|
|
274
|
+
return true;
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
return false;
|
|
278
|
+
};
|
|
195
279
|
|
|
196
280
|
const PlaitBoard = {
|
|
197
281
|
isBoard(value) {
|
|
@@ -1638,46 +1722,6 @@ const PlaitElement = {
|
|
|
1638
1722
|
}
|
|
1639
1723
|
};
|
|
1640
1724
|
|
|
1641
|
-
const RectangleClient = {
|
|
1642
|
-
isHit: (origin, target) => {
|
|
1643
|
-
const minX = origin.x < target.x ? origin.x : target.x;
|
|
1644
|
-
const maxX = origin.x + origin.width > target.x + target.width ? origin.x + origin.width : target.x + target.width;
|
|
1645
|
-
const minY = origin.y < target.y ? origin.y : target.y;
|
|
1646
|
-
const maxY = origin.y + origin.height > target.y + target.height ? origin.y + origin.height : target.y + target.height;
|
|
1647
|
-
// float calculate error( eg: 1.4210854715202004e-14 > 0)
|
|
1648
|
-
if (Math.floor(maxX - minX - origin.width - target.width) <= 0 && Math.floor(maxY - minY - origin.height - target.height) <= 0) {
|
|
1649
|
-
return true;
|
|
1650
|
-
}
|
|
1651
|
-
else {
|
|
1652
|
-
return false;
|
|
1653
|
-
}
|
|
1654
|
-
},
|
|
1655
|
-
toRectangleClient: (points) => {
|
|
1656
|
-
const xArray = points.map(ele => ele[0]);
|
|
1657
|
-
const yArray = points.map(ele => ele[1]);
|
|
1658
|
-
const xMin = Math.min(...xArray);
|
|
1659
|
-
const xMax = Math.max(...xArray);
|
|
1660
|
-
const yMin = Math.min(...yArray);
|
|
1661
|
-
const yMax = Math.max(...yArray);
|
|
1662
|
-
const rect = { x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin };
|
|
1663
|
-
return rect;
|
|
1664
|
-
},
|
|
1665
|
-
getOutlineRectangle: (rectangle, offset) => {
|
|
1666
|
-
return {
|
|
1667
|
-
x: rectangle.x + offset,
|
|
1668
|
-
y: rectangle.y + offset,
|
|
1669
|
-
width: rectangle.width + Math.abs(offset) * 2,
|
|
1670
|
-
height: rectangle.height + Math.abs(offset) * 2
|
|
1671
|
-
};
|
|
1672
|
-
},
|
|
1673
|
-
isEqual: (rectangle, otherRectangle) => {
|
|
1674
|
-
return (rectangle.x === otherRectangle.x &&
|
|
1675
|
-
rectangle.y === otherRectangle.y &&
|
|
1676
|
-
rectangle.width === otherRectangle.width &&
|
|
1677
|
-
rectangle.height === otherRectangle.height);
|
|
1678
|
-
}
|
|
1679
|
-
};
|
|
1680
|
-
|
|
1681
1725
|
const isSetViewportOperation = (value) => {
|
|
1682
1726
|
return value.type === 'set_viewport';
|
|
1683
1727
|
};
|
|
@@ -2520,13 +2564,13 @@ function withViewport(board) {
|
|
|
2520
2564
|
}
|
|
2521
2565
|
|
|
2522
2566
|
function withMoving(board) {
|
|
2523
|
-
const {
|
|
2567
|
+
const { pointerDown, pointerMove, globalPointerUp, globalPointerMove } = board;
|
|
2524
2568
|
let offsetX = 0;
|
|
2525
2569
|
let offsetY = 0;
|
|
2526
2570
|
let isPreventDefault = false;
|
|
2527
2571
|
let startPoint;
|
|
2528
2572
|
let activeElements = [];
|
|
2529
|
-
board.
|
|
2573
|
+
board.pointerDown = (event) => {
|
|
2530
2574
|
const host = BOARD_TO_HOST.get(board);
|
|
2531
2575
|
const point = transformPoint(board, toPoint(event.x, event.y, host));
|
|
2532
2576
|
const range = { anchor: point, focus: point };
|
|
@@ -2542,9 +2586,9 @@ function withMoving(board) {
|
|
|
2542
2586
|
activeElements = [hitElement];
|
|
2543
2587
|
}
|
|
2544
2588
|
}
|
|
2545
|
-
|
|
2589
|
+
pointerDown(event);
|
|
2546
2590
|
};
|
|
2547
|
-
board.
|
|
2591
|
+
board.pointerMove = (event) => {
|
|
2548
2592
|
if (startPoint && activeElements.length && !PlaitBoard.hasBeenTextEditing(board)) {
|
|
2549
2593
|
if (!isPreventDefault) {
|
|
2550
2594
|
isPreventDefault = true;
|
|
@@ -2576,23 +2620,23 @@ function withMoving(board) {
|
|
|
2576
2620
|
// ι»ζ’ move θΏη¨δΈθ§¦εη»εΈζ»ε¨θ‘δΈΊ
|
|
2577
2621
|
event.preventDefault();
|
|
2578
2622
|
}
|
|
2579
|
-
|
|
2623
|
+
pointerMove(event);
|
|
2580
2624
|
};
|
|
2581
|
-
board.
|
|
2625
|
+
board.globalPointerMove = (event) => {
|
|
2582
2626
|
if (startPoint) {
|
|
2583
2627
|
const inPlaitBoardElement = isInPlaitBoard(board, event.x, event.y);
|
|
2584
2628
|
if (!inPlaitBoardElement) {
|
|
2585
2629
|
cancelMove(board);
|
|
2586
2630
|
}
|
|
2587
2631
|
}
|
|
2588
|
-
|
|
2632
|
+
globalPointerMove(event);
|
|
2589
2633
|
};
|
|
2590
|
-
board.
|
|
2634
|
+
board.globalPointerUp = event => {
|
|
2591
2635
|
isPreventDefault = false;
|
|
2592
2636
|
if (startPoint) {
|
|
2593
2637
|
cancelMove(board);
|
|
2594
2638
|
}
|
|
2595
|
-
|
|
2639
|
+
globalPointerUp(event);
|
|
2596
2640
|
};
|
|
2597
2641
|
function cancelMove(board) {
|
|
2598
2642
|
startPoint = null;
|
|
@@ -3131,11 +3175,9 @@ class PlaitBoardComponent {
|
|
|
3131
3175
|
.pipe(takeUntil(this.destroy$), filter(() => this.isFocused && !PlaitBoard.hasBeenTextEditing(this.board)))
|
|
3132
3176
|
.subscribe((event) => {
|
|
3133
3177
|
const selectedElements = getSelectedElements(this.board);
|
|
3134
|
-
|
|
3135
|
-
|
|
3136
|
-
|
|
3137
|
-
this.board.setFragment(event.clipboardData, rectangle);
|
|
3138
|
-
}
|
|
3178
|
+
event.preventDefault();
|
|
3179
|
+
const rectangle = getRectangleByElements(this.board, selectedElements, false);
|
|
3180
|
+
this.board.setFragment(event.clipboardData, rectangle);
|
|
3139
3181
|
});
|
|
3140
3182
|
fromEvent(document, 'paste')
|
|
3141
3183
|
.pipe(takeUntil(this.destroy$), filter(() => this.isFocused && !PlaitBoard.isReadonly(this.board) && !PlaitBoard.hasBeenTextEditing(this.board)))
|
|
@@ -3150,12 +3192,10 @@ class PlaitBoardComponent {
|
|
|
3150
3192
|
.pipe(takeUntil(this.destroy$), filter(() => this.isFocused && !PlaitBoard.isReadonly(this.board) && !PlaitBoard.hasBeenTextEditing(this.board)))
|
|
3151
3193
|
.subscribe((event) => {
|
|
3152
3194
|
const selectedElements = getSelectedElements(this.board);
|
|
3153
|
-
|
|
3154
|
-
|
|
3155
|
-
|
|
3156
|
-
|
|
3157
|
-
this.board.deleteFragment(event.clipboardData);
|
|
3158
|
-
}
|
|
3195
|
+
event.preventDefault();
|
|
3196
|
+
const rectangle = getRectangleByElements(this.board, selectedElements, false);
|
|
3197
|
+
this.board.setFragment(event.clipboardData, rectangle);
|
|
3198
|
+
this.board.deleteFragment(event.clipboardData);
|
|
3159
3199
|
});
|
|
3160
3200
|
}
|
|
3161
3201
|
viewportScrollListener() {
|
|
@@ -3477,5 +3517,5 @@ function createModModifierKeys() {
|
|
|
3477
3517
|
* Generated bundle index. Do not edit.
|
|
3478
3518
|
*/
|
|
3479
3519
|
|
|
3480
|
-
export { A, ALT, APOSTROPHE, ATTACHED_ELEMENT_CLASS_NAME, AT_SIGN, B, BACKSLASH, BACKSPACE, BOARD_TO_COMPONENT, BOARD_TO_ELEMENT_HOST, BOARD_TO_HOST, BOARD_TO_IS_SELECTION_MOVING, BOARD_TO_MOVING_ELEMENT, BOARD_TO_MOVING_POINT, BOARD_TO_MOVING_POINT_IN_BOARD, BOARD_TO_ON_CHANGE, BOARD_TO_ROUGH_SVG, BOARD_TO_SELECTED_ELEMENT, BOARD_TO_TEMPORARY_ELEMENTS, BOARD_TO_VIEWPORT_ORIGINATION, BoardTransforms, C, CAPS_LOCK, CLIP_BOARD_FORMAT_KEY, CLOSE_SQUARE_BRACKET, COMMA, CONTEXT_MENU, CONTROL, ColorfulThemeColor, D, DASH, DELETE, DOWN_ARROW, DarkThemeColor, DefaultThemeColor, E, EIGHT, ELEMENT_TO_COMPONENT, END, ENTER, EQUALS, ESCAPE, F, F1, F10, F11, F12, F2, F3, F4, F5, F6, F7, F8, F9, FF_EQUALS, FF_MINUS, FF_MUTE, FF_SEMICOLON, FF_VOLUME_DOWN, FF_VOLUME_UP, FIRST_MEDIA, FIVE, FLUSHING, FOUR, G, H, HOME, HOST_CLASS_NAME, I, INSERT, IS_APPLE, IS_BOARD_CACHE, IS_CHROME, IS_CHROME_LEGACY, IS_EDGE_LEGACY, IS_FIREFOX, IS_IOS, IS_MAC, IS_PREVENT_TOUCH_MOVE, IS_SAFARI, IS_TEXT_EDITABLE, J, K, L, LAST_MEDIA, LEFT_ARROW, M, MAC_ENTER, MAC_META, MAC_WK_CMD_LEFT, MAC_WK_CMD_RIGHT, MAX_RADIUS, MERGING, META, MUTE, N, NINE, NODE_TO_INDEX, NODE_TO_PARENT, NS, NUMPAD_DIVIDE, NUMPAD_EIGHT, NUMPAD_FIVE, NUMPAD_FOUR, NUMPAD_MINUS, NUMPAD_MULTIPLY, NUMPAD_NINE, NUMPAD_ONE, NUMPAD_PERIOD, NUMPAD_PLUS, NUMPAD_SEVEN, NUMPAD_SIX, NUMPAD_THREE, NUMPAD_TWO, NUMPAD_ZERO, NUM_CENTER, NUM_LOCK, O, ONE, OPEN_SQUARE_BRACKET, P, PAGE_DOWN, PAGE_UP, PATH_REFS, PAUSE, PERIOD, PLUS_SIGN, POINTER_BUTTON, PRESS_AND_MOVE_BUFFER, PRINT_SCREEN, Path, PlaitBoard, PlaitBoardComponent, PlaitChildrenElement, PlaitContextService, PlaitElement, PlaitElementComponent, PlaitHistoryBoard, PlaitIslandBaseComponent, PlaitIslandPopoverBaseComponent, PlaitModule, PlaitNode, PlaitOperation, PlaitPluginElementComponent, PlaitPluginKey, PlaitPointerType, Point, Q, QUESTION_MARK, R, RIGHT_ARROW, RectangleClient, ResizeCursorClass, RetroThemeColor, S, SAVING, SCROLL_BAR_WIDTH, SCROLL_LOCK, SELECTION_BORDER_COLOR, SELECTION_FILL_COLOR, SEMICOLON, SEVEN, SHIFT, SINGLE_QUOTE, SIX, SLASH, SPACE, Selection, SoftThemeColor, StarryThemeColor, T, TAB, THREE, TILDE, TWO, ThemeColorMode, ThemeColors, Transforms, U, UP_ARROW, V, VOLUME_DOWN, VOLUME_UP, Viewport, W, X, Y, Z, ZERO, addMovingElements, addSelectedElement, arrowPoints, cacheMovingElements, cacheSelectedElements, clampZoomLevel, clearNodeWeakMap, clearSelectedElement, clearSelectionMoving, clearViewportOrigination, createFakeEvent, createForeignObject, createG, createKeyboardEvent, createModModifierKeys, createMouseEvent, createPath, createPointerEvent, createSVG, createSelectionOuterG, createTestingBoard, createText, createTouchEvent, debounce, deleteTemporaryElements, depthFirstRecursion, distanceBetweenPointAndPoint, distanceBetweenPointAndRectangle, distanceBetweenPointAndSegment, downloadImage, drawArrow, drawBezierPath, drawCircle, drawLine, drawLinearPath, drawRoundRectangle, fakeNodeWeakMap, getBoardRectangle, getClipboardByKey, getClipboardDataByMedia, getDataFromClipboard, getElementHostBBox, getHitElementOfRoot, getHitElements, getIsRecursionFunc, getMovingElements, getRealScrollBarWidth, getRectangleByElements, getSelectedElements, getTemporaryElements, getTextFromClipboard, getViewBox, getViewBoxCenterPoint, getViewportContainerRect, getViewportOrigination, hasBeforeContextChange, hasInputOrTextareaTarget, hasOnBoardChange, hasOnContextChanged, hotkeys, idCreator, initializeViewBox, initializeViewportContainer, initializeViewportOffset, inverse, isDOMElement, isDOMNode, isFromScrolling, isFromViewportChange, isHitElements, isInPlaitBoard, isMainPointer, isNullOrUndefined, isPreventTouchMove, isSecondaryPointer, isSelectedElement, isSelectionMoving, isSetViewportOperation, normalizePoint, preventTouchMove, removeMovingElements, removeSelectedElement, rotate, scrollToRectangle, setClipboardData, setClipboardDataByMedia, setClipboardDataByText, setIsFromScrolling, setIsFromViewportChange, setSVGViewBox, setSelectionMoving, shouldClear, shouldMerge, shouldSave, throttleRAF, toImage, toPoint, transformPoint, transformPoints, updateForeignObject, updateViewportContainerScroll, updateViewportOffset, updateViewportOrigination, withMoving, withOptions, withSelection };
|
|
3520
|
+
export { A, ALT, APOSTROPHE, ATTACHED_ELEMENT_CLASS_NAME, AT_SIGN, B, BACKSLASH, BACKSPACE, BOARD_TO_COMPONENT, BOARD_TO_ELEMENT_HOST, BOARD_TO_HOST, BOARD_TO_IS_SELECTION_MOVING, BOARD_TO_MOVING_ELEMENT, BOARD_TO_MOVING_POINT, BOARD_TO_MOVING_POINT_IN_BOARD, BOARD_TO_ON_CHANGE, BOARD_TO_ROUGH_SVG, BOARD_TO_SELECTED_ELEMENT, BOARD_TO_TEMPORARY_ELEMENTS, BOARD_TO_VIEWPORT_ORIGINATION, BoardTransforms, C, CAPS_LOCK, CLIP_BOARD_FORMAT_KEY, CLOSE_SQUARE_BRACKET, COMMA, CONTEXT_MENU, CONTROL, ColorfulThemeColor, D, DASH, DELETE, DOWN_ARROW, DarkThemeColor, DefaultThemeColor, E, EIGHT, ELEMENT_TO_COMPONENT, END, ENTER, EQUALS, ESCAPE, F, F1, F10, F11, F12, F2, F3, F4, F5, F6, F7, F8, F9, FF_EQUALS, FF_MINUS, FF_MUTE, FF_SEMICOLON, FF_VOLUME_DOWN, FF_VOLUME_UP, FIRST_MEDIA, FIVE, FLUSHING, FOUR, G, H, HOME, HOST_CLASS_NAME, I, INSERT, IS_APPLE, IS_BOARD_CACHE, IS_CHROME, IS_CHROME_LEGACY, IS_EDGE_LEGACY, IS_FIREFOX, IS_IOS, IS_MAC, IS_PREVENT_TOUCH_MOVE, IS_SAFARI, IS_TEXT_EDITABLE, J, K, L, LAST_MEDIA, LEFT_ARROW, M, MAC_ENTER, MAC_META, MAC_WK_CMD_LEFT, MAC_WK_CMD_RIGHT, MAX_RADIUS, MERGING, META, MUTE, N, NINE, NODE_TO_INDEX, NODE_TO_PARENT, NS, NUMPAD_DIVIDE, NUMPAD_EIGHT, NUMPAD_FIVE, NUMPAD_FOUR, NUMPAD_MINUS, NUMPAD_MULTIPLY, NUMPAD_NINE, NUMPAD_ONE, NUMPAD_PERIOD, NUMPAD_PLUS, NUMPAD_SEVEN, NUMPAD_SIX, NUMPAD_THREE, NUMPAD_TWO, NUMPAD_ZERO, NUM_CENTER, NUM_LOCK, O, ONE, OPEN_SQUARE_BRACKET, P, PAGE_DOWN, PAGE_UP, PATH_REFS, PAUSE, PERIOD, PLUS_SIGN, POINTER_BUTTON, PRESS_AND_MOVE_BUFFER, PRINT_SCREEN, Path, PlaitBoard, PlaitBoardComponent, PlaitChildrenElement, PlaitContextService, PlaitElement, PlaitElementComponent, PlaitHistoryBoard, PlaitIslandBaseComponent, PlaitIslandPopoverBaseComponent, PlaitModule, PlaitNode, PlaitOperation, PlaitPluginElementComponent, PlaitPluginKey, PlaitPointerType, Point, Q, QUESTION_MARK, R, RIGHT_ARROW, RectangleClient, ResizeCursorClass, RetroThemeColor, S, SAVING, SCROLL_BAR_WIDTH, SCROLL_LOCK, SELECTION_BORDER_COLOR, SELECTION_FILL_COLOR, SEMICOLON, SEVEN, SHIFT, SINGLE_QUOTE, SIX, SLASH, SPACE, Selection, SoftThemeColor, StarryThemeColor, T, TAB, THREE, TILDE, TWO, ThemeColorMode, ThemeColors, Transforms, U, UP_ARROW, V, VOLUME_DOWN, VOLUME_UP, Viewport, W, X, Y, Z, ZERO, addMovingElements, addSelectedElement, arrowPoints, cacheMovingElements, cacheSelectedElements, clampZoomLevel, clearNodeWeakMap, clearSelectedElement, clearSelectionMoving, clearViewportOrigination, createFakeEvent, createForeignObject, createG, createKeyboardEvent, createModModifierKeys, createMouseEvent, createPath, createPointerEvent, createSVG, createSelectionOuterG, createTestingBoard, createText, createTouchEvent, debounce, deleteTemporaryElements, depthFirstRecursion, distanceBetweenPointAndPoint, distanceBetweenPointAndRectangle, distanceBetweenPointAndSegment, distanceBetweenPointAndSegments, downloadImage, drawArrow, drawBezierPath, drawCircle, drawLine, drawLinearPath, drawRoundRectangle, fakeNodeWeakMap, getBoardRectangle, getClipboardByKey, getClipboardDataByMedia, getDataFromClipboard, getElementHostBBox, getHitElementOfRoot, getHitElements, getIsRecursionFunc, getMovingElements, getRealScrollBarWidth, getRectangleByElements, getSelectedElements, getTemporaryElements, getTextFromClipboard, getViewBox, getViewBoxCenterPoint, getViewportContainerRect, getViewportOrigination, hasBeforeContextChange, hasInputOrTextareaTarget, hasOnBoardChange, hasOnContextChanged, hotkeys, idCreator, initializeViewBox, initializeViewportContainer, initializeViewportOffset, inverse, isDOMElement, isDOMNode, isFromScrolling, isFromViewportChange, isHitElements, isInPlaitBoard, isLineHitLine, isMainPointer, isNullOrUndefined, isPolylineHitRectangle, isPreventTouchMove, isSecondaryPointer, isSelectedElement, isSelectionMoving, isSetViewportOperation, normalizePoint, preventTouchMove, removeMovingElements, removeSelectedElement, rotate, scrollToRectangle, setClipboardData, setClipboardDataByMedia, setClipboardDataByText, setIsFromScrolling, setIsFromViewportChange, setSVGViewBox, setSelectionMoving, shouldClear, shouldMerge, shouldSave, throttleRAF, toImage, toPoint, transformPoint, transformPoints, updateForeignObject, updateViewportContainerScroll, updateViewportOffset, updateViewportOrigination, withMoving, withOptions, withSelection };
|
|
3481
3521
|
//# sourceMappingURL=plait-core.mjs.map
|