@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/fesm2015/plait-core.mjs
CHANGED
|
@@ -146,6 +146,54 @@ const ThemeColors = [
|
|
|
146
146
|
StarryThemeColor
|
|
147
147
|
];
|
|
148
148
|
|
|
149
|
+
const RectangleClient = {
|
|
150
|
+
isHit: (origin, target) => {
|
|
151
|
+
const minX = origin.x < target.x ? origin.x : target.x;
|
|
152
|
+
const maxX = origin.x + origin.width > target.x + target.width ? origin.x + origin.width : target.x + target.width;
|
|
153
|
+
const minY = origin.y < target.y ? origin.y : target.y;
|
|
154
|
+
const maxY = origin.y + origin.height > target.y + target.height ? origin.y + origin.height : target.y + target.height;
|
|
155
|
+
// float calculate error( eg: 1.4210854715202004e-14 > 0)
|
|
156
|
+
if (Math.floor(maxX - minX - origin.width - target.width) <= 0 && Math.floor(maxY - minY - origin.height - target.height) <= 0) {
|
|
157
|
+
return true;
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
return false;
|
|
161
|
+
}
|
|
162
|
+
},
|
|
163
|
+
toRectangleClient: (points) => {
|
|
164
|
+
const xArray = points.map(ele => ele[0]);
|
|
165
|
+
const yArray = points.map(ele => ele[1]);
|
|
166
|
+
const xMin = Math.min(...xArray);
|
|
167
|
+
const xMax = Math.max(...xArray);
|
|
168
|
+
const yMin = Math.min(...yArray);
|
|
169
|
+
const yMax = Math.max(...yArray);
|
|
170
|
+
const rect = { x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin };
|
|
171
|
+
return rect;
|
|
172
|
+
},
|
|
173
|
+
getOutlineRectangle: (rectangle, offset) => {
|
|
174
|
+
return {
|
|
175
|
+
x: rectangle.x + offset,
|
|
176
|
+
y: rectangle.y + offset,
|
|
177
|
+
width: rectangle.width + Math.abs(offset) * 2,
|
|
178
|
+
height: rectangle.height + Math.abs(offset) * 2
|
|
179
|
+
};
|
|
180
|
+
},
|
|
181
|
+
isEqual: (rectangle, otherRectangle) => {
|
|
182
|
+
return (rectangle.x === otherRectangle.x &&
|
|
183
|
+
rectangle.y === otherRectangle.y &&
|
|
184
|
+
rectangle.width === otherRectangle.width &&
|
|
185
|
+
rectangle.height === otherRectangle.height);
|
|
186
|
+
},
|
|
187
|
+
getCornerPoints: (rectangle) => {
|
|
188
|
+
return [
|
|
189
|
+
[rectangle.x, rectangle.y],
|
|
190
|
+
[rectangle.x + rectangle.width, rectangle.y],
|
|
191
|
+
[rectangle.x + rectangle.width, rectangle.y + rectangle.height],
|
|
192
|
+
[rectangle.x, rectangle.y + rectangle.height]
|
|
193
|
+
];
|
|
194
|
+
}
|
|
195
|
+
};
|
|
196
|
+
|
|
149
197
|
// https://stackoverflow.com/a/6853926/232122
|
|
150
198
|
function distanceBetweenPointAndSegment(x, y, x1, y1, x2, y2) {
|
|
151
199
|
const A = x - x1;
|
|
@@ -176,6 +224,19 @@ function distanceBetweenPointAndSegment(x, y, x1, y1, x2, y2) {
|
|
|
176
224
|
const dy = y - yy;
|
|
177
225
|
return Math.hypot(dx, dy);
|
|
178
226
|
}
|
|
227
|
+
function distanceBetweenPointAndSegments(points, point) {
|
|
228
|
+
const len = points.length;
|
|
229
|
+
let distance = Infinity;
|
|
230
|
+
for (let i = 0; i < len - 1; i++) {
|
|
231
|
+
const p = points[i];
|
|
232
|
+
const p2 = points[i + 1];
|
|
233
|
+
const currentDistance = distanceBetweenPointAndSegment(point[0], point[1], p[0], p[1], p2[0], p2[1]);
|
|
234
|
+
if (currentDistance < distance) {
|
|
235
|
+
distance = currentDistance;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
return distance;
|
|
239
|
+
}
|
|
179
240
|
function rotate(x1, y1, x2, y2, angle) {
|
|
180
241
|
// πβ²π₯=(ππ₯βππ₯)cosπβ(ππ¦βππ¦)sinπ+ππ₯
|
|
181
242
|
// πβ²π¦=(ππ₯βππ₯)sinπ+(ππ¦βππ¦)cosπ+ππ¦.
|
|
@@ -193,6 +254,29 @@ function distanceBetweenPointAndRectangle(x, y, rect) {
|
|
|
193
254
|
var dy = Math.max(rect.y - y, 0, y - (rect.y + rect.height));
|
|
194
255
|
return Math.sqrt(dx * dx + dy * dy);
|
|
195
256
|
}
|
|
257
|
+
const isLineHitLine = (a, b, c, d) => {
|
|
258
|
+
const crossProduct = (v1, v2) => v1[0] * v2[1] - v1[1] * v2[0];
|
|
259
|
+
const ab = [b[0] - a[0], b[1] - a[1]];
|
|
260
|
+
const ac = [c[0] - a[0], c[1] - a[1]];
|
|
261
|
+
const ad = [d[0] - a[0], d[1] - a[1]];
|
|
262
|
+
const ca = [a[0] - c[0], a[1] - c[1]];
|
|
263
|
+
const cb = [b[0] - c[0], b[1] - c[1]];
|
|
264
|
+
const cd = [d[0] - c[0], d[1] - c[1]];
|
|
265
|
+
return crossProduct(ab, ac) * crossProduct(ab, ad) <= 0 && crossProduct(cd, ca) * crossProduct(cd, cb) <= 0;
|
|
266
|
+
};
|
|
267
|
+
const isPolylineHitRectangle = (points, rectangle) => {
|
|
268
|
+
const rectanglePoints = RectangleClient.getCornerPoints(rectangle);
|
|
269
|
+
for (let i = 1; i < points.length; i++) {
|
|
270
|
+
const isIntersect = isLineHitLine(points[i], points[i - 1], rectanglePoints[0], rectanglePoints[1]) ||
|
|
271
|
+
isLineHitLine(points[i], points[i - 1], rectanglePoints[1], rectanglePoints[2]) ||
|
|
272
|
+
isLineHitLine(points[i], points[i - 1], rectanglePoints[2], rectanglePoints[3]) ||
|
|
273
|
+
isLineHitLine(points[i], points[i - 1], rectanglePoints[3], rectanglePoints[0]);
|
|
274
|
+
if (isIntersect) {
|
|
275
|
+
return true;
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
return false;
|
|
279
|
+
};
|
|
196
280
|
|
|
197
281
|
const PlaitBoard = {
|
|
198
282
|
isBoard(value) {
|
|
@@ -1641,46 +1725,6 @@ const PlaitElement = {
|
|
|
1641
1725
|
}
|
|
1642
1726
|
};
|
|
1643
1727
|
|
|
1644
|
-
const RectangleClient = {
|
|
1645
|
-
isHit: (origin, target) => {
|
|
1646
|
-
const minX = origin.x < target.x ? origin.x : target.x;
|
|
1647
|
-
const maxX = origin.x + origin.width > target.x + target.width ? origin.x + origin.width : target.x + target.width;
|
|
1648
|
-
const minY = origin.y < target.y ? origin.y : target.y;
|
|
1649
|
-
const maxY = origin.y + origin.height > target.y + target.height ? origin.y + origin.height : target.y + target.height;
|
|
1650
|
-
// float calculate error( eg: 1.4210854715202004e-14 > 0)
|
|
1651
|
-
if (Math.floor(maxX - minX - origin.width - target.width) <= 0 && Math.floor(maxY - minY - origin.height - target.height) <= 0) {
|
|
1652
|
-
return true;
|
|
1653
|
-
}
|
|
1654
|
-
else {
|
|
1655
|
-
return false;
|
|
1656
|
-
}
|
|
1657
|
-
},
|
|
1658
|
-
toRectangleClient: (points) => {
|
|
1659
|
-
const xArray = points.map(ele => ele[0]);
|
|
1660
|
-
const yArray = points.map(ele => ele[1]);
|
|
1661
|
-
const xMin = Math.min(...xArray);
|
|
1662
|
-
const xMax = Math.max(...xArray);
|
|
1663
|
-
const yMin = Math.min(...yArray);
|
|
1664
|
-
const yMax = Math.max(...yArray);
|
|
1665
|
-
const rect = { x: xMin, y: yMin, width: xMax - xMin, height: yMax - yMin };
|
|
1666
|
-
return rect;
|
|
1667
|
-
},
|
|
1668
|
-
getOutlineRectangle: (rectangle, offset) => {
|
|
1669
|
-
return {
|
|
1670
|
-
x: rectangle.x + offset,
|
|
1671
|
-
y: rectangle.y + offset,
|
|
1672
|
-
width: rectangle.width + Math.abs(offset) * 2,
|
|
1673
|
-
height: rectangle.height + Math.abs(offset) * 2
|
|
1674
|
-
};
|
|
1675
|
-
},
|
|
1676
|
-
isEqual: (rectangle, otherRectangle) => {
|
|
1677
|
-
return (rectangle.x === otherRectangle.x &&
|
|
1678
|
-
rectangle.y === otherRectangle.y &&
|
|
1679
|
-
rectangle.width === otherRectangle.width &&
|
|
1680
|
-
rectangle.height === otherRectangle.height);
|
|
1681
|
-
}
|
|
1682
|
-
};
|
|
1683
|
-
|
|
1684
1728
|
const isSetViewportOperation = (value) => {
|
|
1685
1729
|
return value.type === 'set_viewport';
|
|
1686
1730
|
};
|
|
@@ -2500,13 +2544,13 @@ function withViewport(board) {
|
|
|
2500
2544
|
}
|
|
2501
2545
|
|
|
2502
2546
|
function withMoving(board) {
|
|
2503
|
-
const {
|
|
2547
|
+
const { pointerDown, pointerMove, globalPointerUp, globalPointerMove } = board;
|
|
2504
2548
|
let offsetX = 0;
|
|
2505
2549
|
let offsetY = 0;
|
|
2506
2550
|
let isPreventDefault = false;
|
|
2507
2551
|
let startPoint;
|
|
2508
2552
|
let activeElements = [];
|
|
2509
|
-
board.
|
|
2553
|
+
board.pointerDown = (event) => {
|
|
2510
2554
|
const host = BOARD_TO_HOST.get(board);
|
|
2511
2555
|
const point = transformPoint(board, toPoint(event.x, event.y, host));
|
|
2512
2556
|
const range = { anchor: point, focus: point };
|
|
@@ -2522,9 +2566,9 @@ function withMoving(board) {
|
|
|
2522
2566
|
activeElements = [hitElement];
|
|
2523
2567
|
}
|
|
2524
2568
|
}
|
|
2525
|
-
|
|
2569
|
+
pointerDown(event);
|
|
2526
2570
|
};
|
|
2527
|
-
board.
|
|
2571
|
+
board.pointerMove = (event) => {
|
|
2528
2572
|
if (startPoint && activeElements.length && !PlaitBoard.hasBeenTextEditing(board)) {
|
|
2529
2573
|
if (!isPreventDefault) {
|
|
2530
2574
|
isPreventDefault = true;
|
|
@@ -2556,23 +2600,23 @@ function withMoving(board) {
|
|
|
2556
2600
|
// ι»ζ’ move θΏη¨δΈθ§¦εη»εΈζ»ε¨θ‘δΈΊ
|
|
2557
2601
|
event.preventDefault();
|
|
2558
2602
|
}
|
|
2559
|
-
|
|
2603
|
+
pointerMove(event);
|
|
2560
2604
|
};
|
|
2561
|
-
board.
|
|
2605
|
+
board.globalPointerMove = (event) => {
|
|
2562
2606
|
if (startPoint) {
|
|
2563
2607
|
const inPlaitBoardElement = isInPlaitBoard(board, event.x, event.y);
|
|
2564
2608
|
if (!inPlaitBoardElement) {
|
|
2565
2609
|
cancelMove(board);
|
|
2566
2610
|
}
|
|
2567
2611
|
}
|
|
2568
|
-
|
|
2612
|
+
globalPointerMove(event);
|
|
2569
2613
|
};
|
|
2570
|
-
board.
|
|
2614
|
+
board.globalPointerUp = event => {
|
|
2571
2615
|
isPreventDefault = false;
|
|
2572
2616
|
if (startPoint) {
|
|
2573
2617
|
cancelMove(board);
|
|
2574
2618
|
}
|
|
2575
|
-
|
|
2619
|
+
globalPointerUp(event);
|
|
2576
2620
|
};
|
|
2577
2621
|
function cancelMove(board) {
|
|
2578
2622
|
startPoint = null;
|
|
@@ -3112,11 +3156,9 @@ class PlaitBoardComponent {
|
|
|
3112
3156
|
.pipe(takeUntil(this.destroy$), filter(() => this.isFocused && !PlaitBoard.hasBeenTextEditing(this.board)))
|
|
3113
3157
|
.subscribe((event) => {
|
|
3114
3158
|
const selectedElements = getSelectedElements(this.board);
|
|
3115
|
-
|
|
3116
|
-
|
|
3117
|
-
|
|
3118
|
-
this.board.setFragment(event.clipboardData, rectangle);
|
|
3119
|
-
}
|
|
3159
|
+
event.preventDefault();
|
|
3160
|
+
const rectangle = getRectangleByElements(this.board, selectedElements, false);
|
|
3161
|
+
this.board.setFragment(event.clipboardData, rectangle);
|
|
3120
3162
|
});
|
|
3121
3163
|
fromEvent(document, 'paste')
|
|
3122
3164
|
.pipe(takeUntil(this.destroy$), filter(() => this.isFocused && !PlaitBoard.isReadonly(this.board) && !PlaitBoard.hasBeenTextEditing(this.board)))
|
|
@@ -3131,12 +3173,10 @@ class PlaitBoardComponent {
|
|
|
3131
3173
|
.pipe(takeUntil(this.destroy$), filter(() => this.isFocused && !PlaitBoard.isReadonly(this.board) && !PlaitBoard.hasBeenTextEditing(this.board)))
|
|
3132
3174
|
.subscribe((event) => {
|
|
3133
3175
|
const selectedElements = getSelectedElements(this.board);
|
|
3134
|
-
|
|
3135
|
-
|
|
3136
|
-
|
|
3137
|
-
|
|
3138
|
-
this.board.deleteFragment(event.clipboardData);
|
|
3139
|
-
}
|
|
3176
|
+
event.preventDefault();
|
|
3177
|
+
const rectangle = getRectangleByElements(this.board, selectedElements, false);
|
|
3178
|
+
this.board.setFragment(event.clipboardData, rectangle);
|
|
3179
|
+
this.board.deleteFragment(event.clipboardData);
|
|
3140
3180
|
});
|
|
3141
3181
|
}
|
|
3142
3182
|
viewportScrollListener() {
|
|
@@ -3454,5 +3494,5 @@ function createModModifierKeys() {
|
|
|
3454
3494
|
* Generated bundle index. Do not edit.
|
|
3455
3495
|
*/
|
|
3456
3496
|
|
|
3457
|
-
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 };
|
|
3497
|
+
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 };
|
|
3458
3498
|
//# sourceMappingURL=plait-core.mjs.map
|