@plait/core 0.24.0-next.10 → 0.24.0-next.11
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/esm2022/interfaces/direction.mjs +8 -0
- package/esm2022/interfaces/index.mjs +2 -1
- package/esm2022/interfaces/rectangle-client.mjs +4 -1
- package/esm2022/plugins/with-moving.mjs +11 -11
- package/esm2022/utils/reaction-manager.mjs +171 -16
- package/fesm2022/plait-core.mjs +190 -25
- package/fesm2022/plait-core.mjs.map +1 -1
- package/interfaces/direction.d.ts +7 -0
- package/interfaces/index.d.ts +1 -0
- package/interfaces/rectangle-client.d.ts +6 -0
- package/package.json +3 -2
- package/utils/reaction-manager.d.ts +17 -1
package/fesm2022/plait-core.mjs
CHANGED
|
@@ -504,6 +504,9 @@ const RectangleClient = {
|
|
|
504
504
|
[rectangle.x + rectangle.width / 2, rectangle.y + rectangle.height],
|
|
505
505
|
[rectangle.x, rectangle.y + rectangle.height / 2]
|
|
506
506
|
];
|
|
507
|
+
},
|
|
508
|
+
getConnectionPoint: (rectangle, point) => {
|
|
509
|
+
return [rectangle.x + rectangle.width * point[0], rectangle.y + rectangle.height * point[1]];
|
|
507
510
|
}
|
|
508
511
|
};
|
|
509
512
|
|
|
@@ -1815,6 +1818,14 @@ const ThemeColors = [
|
|
|
1815
1818
|
StarryThemeColor
|
|
1816
1819
|
];
|
|
1817
1820
|
|
|
1821
|
+
var Direction;
|
|
1822
|
+
(function (Direction) {
|
|
1823
|
+
Direction["left"] = "left";
|
|
1824
|
+
Direction["top"] = "top";
|
|
1825
|
+
Direction["right"] = "right";
|
|
1826
|
+
Direction["bottom"] = "bottom";
|
|
1827
|
+
})(Direction || (Direction = {}));
|
|
1828
|
+
|
|
1818
1829
|
function getRectangleByElements(board, elements, recursion) {
|
|
1819
1830
|
const boundaryBox = {
|
|
1820
1831
|
left: Number.MAX_VALUE,
|
|
@@ -2805,6 +2816,7 @@ function withViewport(board) {
|
|
|
2805
2816
|
return board;
|
|
2806
2817
|
}
|
|
2807
2818
|
|
|
2819
|
+
const ALIGN_TOLERANCE = 2;
|
|
2808
2820
|
class ReactionManager {
|
|
2809
2821
|
constructor(board, activeElements, activeRectangle) {
|
|
2810
2822
|
this.board = board;
|
|
@@ -2833,13 +2845,8 @@ class ReactionManager {
|
|
|
2833
2845
|
handleAlign() {
|
|
2834
2846
|
const alignRectangles = this.getAlignRectangle();
|
|
2835
2847
|
const g = createG();
|
|
2836
|
-
|
|
2848
|
+
let alignLines = [];
|
|
2837
2849
|
const offset = 12;
|
|
2838
|
-
const options = {
|
|
2839
|
-
stroke: SELECTION_BORDER_COLOR,
|
|
2840
|
-
strokeWidth: 1,
|
|
2841
|
-
strokeLineDash: [4, 4]
|
|
2842
|
-
};
|
|
2843
2850
|
let deltaX = 0;
|
|
2844
2851
|
let deltaY = 0;
|
|
2845
2852
|
let isCorrectX = false;
|
|
@@ -2847,7 +2854,7 @@ class ReactionManager {
|
|
|
2847
2854
|
for (let alignRectangle of alignRectangles) {
|
|
2848
2855
|
const closestDistances = this.calculateClosestDistances(this.activeRectangle, alignRectangle);
|
|
2849
2856
|
let canDrawHorizontal = false;
|
|
2850
|
-
if (!isCorrectX && closestDistances.absXDistance <
|
|
2857
|
+
if (!isCorrectX && closestDistances.absXDistance < ALIGN_TOLERANCE) {
|
|
2851
2858
|
deltaX = closestDistances.xDistance;
|
|
2852
2859
|
this.activeRectangle.x -= deltaX;
|
|
2853
2860
|
isCorrectX = true;
|
|
@@ -2897,7 +2904,7 @@ class ReactionManager {
|
|
|
2897
2904
|
isCorrectX = true;
|
|
2898
2905
|
}
|
|
2899
2906
|
let canDrawVertical = false;
|
|
2900
|
-
if (!isCorrectY && closestDistances.absYDistance <
|
|
2907
|
+
if (!isCorrectY && closestDistances.absYDistance < ALIGN_TOLERANCE) {
|
|
2901
2908
|
deltaY = closestDistances.yDistance;
|
|
2902
2909
|
this.activeRectangle.y -= deltaY;
|
|
2903
2910
|
isCorrectY = true;
|
|
@@ -2946,13 +2953,23 @@ class ReactionManager {
|
|
|
2946
2953
|
}
|
|
2947
2954
|
}
|
|
2948
2955
|
}
|
|
2956
|
+
const alignDeltaX = deltaX;
|
|
2957
|
+
this.activeRectangle.x += deltaX;
|
|
2958
|
+
const distributeHorizontalResult = this.alignDistributeHorizontal(alignRectangles);
|
|
2959
|
+
const distributeLines = distributeHorizontalResult.distributeLines;
|
|
2960
|
+
if (distributeHorizontalResult.deltaX) {
|
|
2961
|
+
deltaX = distributeHorizontalResult.deltaX;
|
|
2962
|
+
if (alignDeltaX !== deltaX) {
|
|
2963
|
+
alignLines[0] = [];
|
|
2964
|
+
alignLines[1] = [];
|
|
2965
|
+
alignLines[2] = [];
|
|
2966
|
+
}
|
|
2967
|
+
}
|
|
2949
2968
|
if (alignLines.length) {
|
|
2950
|
-
|
|
2951
|
-
|
|
2952
|
-
|
|
2953
|
-
|
|
2954
|
-
g.appendChild(xAlign);
|
|
2955
|
-
});
|
|
2969
|
+
this.drawAlignLines(alignLines, g);
|
|
2970
|
+
}
|
|
2971
|
+
if (distributeLines.length) {
|
|
2972
|
+
this.drawDistributeLines(distributeLines, g);
|
|
2956
2973
|
}
|
|
2957
2974
|
return { deltaX, deltaY, g };
|
|
2958
2975
|
}
|
|
@@ -2984,6 +3001,154 @@ class ReactionManager {
|
|
|
2984
3001
|
indexY
|
|
2985
3002
|
};
|
|
2986
3003
|
}
|
|
3004
|
+
alignDistributeHorizontal(alignRectangles) {
|
|
3005
|
+
let distributeLines = [];
|
|
3006
|
+
let deltaX = 0;
|
|
3007
|
+
const activeRectangleCenterX = this.activeRectangle.x + this.activeRectangle.width / 2;
|
|
3008
|
+
let rectangles = [];
|
|
3009
|
+
alignRectangles.forEach(rec => {
|
|
3010
|
+
if (isHorizontalCross(rec, this.activeRectangle) && !RectangleClient.isHit(rec, this.activeRectangle)) {
|
|
3011
|
+
rectangles.push(rec);
|
|
3012
|
+
}
|
|
3013
|
+
});
|
|
3014
|
+
rectangles = [...rectangles, this.activeRectangle].sort((a, b) => a.x - b.x);
|
|
3015
|
+
const refArray = [];
|
|
3016
|
+
let distributeDistance = 0;
|
|
3017
|
+
let leftIndex = undefined;
|
|
3018
|
+
let rightIndex = undefined;
|
|
3019
|
+
for (let i = 0; i < rectangles.length; i++) {
|
|
3020
|
+
for (let j = i + 1; j < rectangles.length; j++) {
|
|
3021
|
+
const left = rectangles[i];
|
|
3022
|
+
const right = rectangles[j];
|
|
3023
|
+
const distance = right.x - (left.x + left.width);
|
|
3024
|
+
let dif = Infinity;
|
|
3025
|
+
if (refArray[i]?.right) {
|
|
3026
|
+
refArray[i].right.push({ distance, index: j });
|
|
3027
|
+
}
|
|
3028
|
+
else {
|
|
3029
|
+
refArray[i] = { ...refArray[i], right: [{ distance, index: j }] };
|
|
3030
|
+
}
|
|
3031
|
+
if (refArray[j]?.left) {
|
|
3032
|
+
refArray[j].left.push({ distance, index: i });
|
|
3033
|
+
}
|
|
3034
|
+
else {
|
|
3035
|
+
refArray[j] = { ...refArray[j], left: [{ distance, index: i }] };
|
|
3036
|
+
}
|
|
3037
|
+
//middle
|
|
3038
|
+
let _centerX = (left.x + left.width + right.x) / 2;
|
|
3039
|
+
dif = Math.abs(activeRectangleCenterX - _centerX);
|
|
3040
|
+
if (dif < ALIGN_TOLERANCE) {
|
|
3041
|
+
distributeDistance = (right.x - (left.x + left.width) - this.activeRectangle.width) / 2;
|
|
3042
|
+
deltaX = activeRectangleCenterX - _centerX;
|
|
3043
|
+
leftIndex = i;
|
|
3044
|
+
rightIndex = j;
|
|
3045
|
+
}
|
|
3046
|
+
//right
|
|
3047
|
+
const distanceRight = right.x - (left.x + left.width);
|
|
3048
|
+
_centerX = right.x + right.width + distanceRight + this.activeRectangle.width / 2;
|
|
3049
|
+
dif = Math.abs(activeRectangleCenterX - _centerX);
|
|
3050
|
+
if (!distributeDistance && dif < ALIGN_TOLERANCE) {
|
|
3051
|
+
distributeDistance = distanceRight;
|
|
3052
|
+
leftIndex = j;
|
|
3053
|
+
deltaX = activeRectangleCenterX - _centerX;
|
|
3054
|
+
}
|
|
3055
|
+
//left
|
|
3056
|
+
const distanceLeft = right.x - (left.x + left.width);
|
|
3057
|
+
_centerX = left.x - distanceLeft - this.activeRectangle.width / 2;
|
|
3058
|
+
dif = Math.abs(activeRectangleCenterX - _centerX);
|
|
3059
|
+
if (!distributeDistance && dif < ALIGN_TOLERANCE) {
|
|
3060
|
+
distributeDistance = distanceLeft;
|
|
3061
|
+
rightIndex = i;
|
|
3062
|
+
deltaX = activeRectangleCenterX - _centerX;
|
|
3063
|
+
}
|
|
3064
|
+
}
|
|
3065
|
+
}
|
|
3066
|
+
const activeIndex = rectangles.indexOf(this.activeRectangle);
|
|
3067
|
+
let leftIndexes = [];
|
|
3068
|
+
let rightIndexes = [];
|
|
3069
|
+
if (leftIndex !== undefined) {
|
|
3070
|
+
leftIndexes.push(leftIndex);
|
|
3071
|
+
findRectangle(distributeDistance, refArray[leftIndex], Direction.left, leftIndexes);
|
|
3072
|
+
}
|
|
3073
|
+
if (rightIndex !== undefined) {
|
|
3074
|
+
rightIndexes.push(rightIndex);
|
|
3075
|
+
findRectangle(distributeDistance, refArray[rightIndex], Direction.right, rightIndexes);
|
|
3076
|
+
}
|
|
3077
|
+
if (leftIndexes.length || rightIndexes.length) {
|
|
3078
|
+
const indexArr = [...leftIndexes.reverse(), activeIndex, ...rightIndexes];
|
|
3079
|
+
this.activeRectangle.x -= deltaX;
|
|
3080
|
+
for (let i = 1; i < indexArr.length; i++) {
|
|
3081
|
+
distributeLines.push(getLinePoints(rectangles[indexArr[i - 1]], rectangles[indexArr[i]]));
|
|
3082
|
+
}
|
|
3083
|
+
}
|
|
3084
|
+
function findRectangle(distance, ref, direction, rectangleIndexes) {
|
|
3085
|
+
const arr = ref[direction];
|
|
3086
|
+
const index = refArray.indexOf(ref);
|
|
3087
|
+
if ((index === 0 && direction === Direction.left) || (index === refArray.length - 1 && direction === Direction.right))
|
|
3088
|
+
return;
|
|
3089
|
+
for (let i = 0; i < arr.length; i++) {
|
|
3090
|
+
if (Math.abs(arr[i].distance - distance) < 0.1) {
|
|
3091
|
+
rectangleIndexes.push(arr[i].index);
|
|
3092
|
+
findRectangle(distance, refArray[arr[i].index], direction, rectangleIndexes);
|
|
3093
|
+
return;
|
|
3094
|
+
}
|
|
3095
|
+
}
|
|
3096
|
+
}
|
|
3097
|
+
function getLinePoints(leftRectangle, rightRectangle) {
|
|
3098
|
+
const verticalY = [
|
|
3099
|
+
leftRectangle.y,
|
|
3100
|
+
leftRectangle.y + leftRectangle.height,
|
|
3101
|
+
rightRectangle.y,
|
|
3102
|
+
rightRectangle.y + rightRectangle.height
|
|
3103
|
+
];
|
|
3104
|
+
const sortArr = verticalY.sort((a, b) => a - b);
|
|
3105
|
+
const y = (sortArr[1] + sortArr[2]) / 2;
|
|
3106
|
+
const line = [
|
|
3107
|
+
[leftRectangle.x + leftRectangle.width + 2, y],
|
|
3108
|
+
[rightRectangle.x - 2, y]
|
|
3109
|
+
];
|
|
3110
|
+
return line;
|
|
3111
|
+
}
|
|
3112
|
+
return { deltaX, distributeLines };
|
|
3113
|
+
}
|
|
3114
|
+
drawAlignLines(lines, g) {
|
|
3115
|
+
lines.forEach(points => {
|
|
3116
|
+
if (!points.length)
|
|
3117
|
+
return;
|
|
3118
|
+
const xAlign = PlaitBoard.getRoughSVG(this.board).line(points[0], points[1], points[2], points[3], {
|
|
3119
|
+
stroke: SELECTION_BORDER_COLOR,
|
|
3120
|
+
strokeWidth: 1,
|
|
3121
|
+
strokeLineDash: [4, 4]
|
|
3122
|
+
});
|
|
3123
|
+
g.appendChild(xAlign);
|
|
3124
|
+
});
|
|
3125
|
+
}
|
|
3126
|
+
drawDistributeLines(lines, g) {
|
|
3127
|
+
lines.forEach(points => {
|
|
3128
|
+
if (!points.length)
|
|
3129
|
+
return;
|
|
3130
|
+
if (points[0][1] === points[1][1]) {
|
|
3131
|
+
const yAlign = PlaitBoard.getRoughSVG(this.board).line(points[0][0], points[0][1], points[1][0], points[1][1], {
|
|
3132
|
+
stroke: SELECTION_BORDER_COLOR,
|
|
3133
|
+
strokeWidth: 1
|
|
3134
|
+
});
|
|
3135
|
+
const bar1 = PlaitBoard.getRoughSVG(this.board).line(points[0][0], points[0][1] - 4, points[0][0], points[1][1] + 4, {
|
|
3136
|
+
stroke: SELECTION_BORDER_COLOR,
|
|
3137
|
+
strokeWidth: 1
|
|
3138
|
+
});
|
|
3139
|
+
const bar2 = PlaitBoard.getRoughSVG(this.board).line(points[1][0], points[0][1] - 4, points[1][0], points[1][1] + 4, {
|
|
3140
|
+
stroke: SELECTION_BORDER_COLOR,
|
|
3141
|
+
strokeWidth: 1
|
|
3142
|
+
});
|
|
3143
|
+
g.appendChild(yAlign);
|
|
3144
|
+
g.appendChild(bar1);
|
|
3145
|
+
g.appendChild(bar2);
|
|
3146
|
+
}
|
|
3147
|
+
});
|
|
3148
|
+
}
|
|
3149
|
+
}
|
|
3150
|
+
function isHorizontalCross(rectangle, other) {
|
|
3151
|
+
return !(rectangle.y + rectangle.height < other.y || rectangle.y > other.y + other.height);
|
|
2987
3152
|
}
|
|
2988
3153
|
|
|
2989
3154
|
function withMoving(board) {
|
|
@@ -3025,18 +3190,18 @@ function withMoving(board) {
|
|
|
3025
3190
|
const endPoint = transformPoint(board, toPoint(event.x, event.y, host));
|
|
3026
3191
|
offsetX = endPoint[0] - startPoint[0];
|
|
3027
3192
|
offsetY = endPoint[1] - startPoint[1];
|
|
3028
|
-
const activeElementsRectangle = getRectangleByElements(board, activeElements, true);
|
|
3029
|
-
activeElementsRectangle.x += offsetX;
|
|
3030
|
-
activeElementsRectangle.y += offsetY;
|
|
3031
|
-
const reactionManager = new ReactionManager(board, activeElements, activeElementsRectangle);
|
|
3032
|
-
const ref = reactionManager.handleAlign();
|
|
3033
|
-
offsetX -= ref.deltaX;
|
|
3034
|
-
offsetY -= ref.deltaY;
|
|
3035
|
-
alignG = ref.g;
|
|
3036
|
-
PlaitBoard.getElementActiveHost(board).append(alignG);
|
|
3037
3193
|
const offsetBuffer = 5;
|
|
3038
|
-
if (Math.abs(offsetX) > offsetBuffer || Math.abs(offsetY) > offsetBuffer || getMovingElements(board).length > 0
|
|
3194
|
+
if (Math.abs(offsetX) > offsetBuffer || Math.abs(offsetY) > offsetBuffer || getMovingElements(board).length > 0) {
|
|
3039
3195
|
throttleRAF(() => {
|
|
3196
|
+
const activeElementsRectangle = getRectangleByElements(board, activeElements, true);
|
|
3197
|
+
activeElementsRectangle.x += offsetX;
|
|
3198
|
+
activeElementsRectangle.y += offsetY;
|
|
3199
|
+
const reactionManager = new ReactionManager(board, activeElements, activeElementsRectangle);
|
|
3200
|
+
const ref = reactionManager.handleAlign();
|
|
3201
|
+
offsetX -= ref.deltaX;
|
|
3202
|
+
offsetY -= ref.deltaY;
|
|
3203
|
+
alignG = ref.g;
|
|
3204
|
+
PlaitBoard.getElementActiveHost(board).append(alignG);
|
|
3040
3205
|
handleTouchTarget(board);
|
|
3041
3206
|
const currentElements = activeElements.map(activeElement => {
|
|
3042
3207
|
const points = activeElement.points || [];
|
|
@@ -3962,5 +4127,5 @@ function createModModifierKeys() {
|
|
|
3962
4127
|
* Generated bundle index. Do not edit.
|
|
3963
4128
|
*/
|
|
3964
4129
|
|
|
3965
|
-
export { A, ACTIVE_STROKE_WIDTH, 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_TOUCH_REF, BOARD_TO_VIEWPORT_ORIGINATION, BoardTransforms, C, CAPS_LOCK, CLIP_BOARD_FORMAT_KEY, CLOSE_SQUARE_BRACKET, COMMA, CONTEXT_MENU, CONTROL, ColorfulThemeColor, CoreTransforms, 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_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, SELECTION_RECTANGLE_CLASS_NAME, 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, createMask, createModModifierKeys, createMouseEvent, createPath, createPointerEvent, createRect, createSVG, createSelectionRectangleG, createTestingBoard, createText, createTouchEvent, debounce, deleteTemporaryElements, depthFirstRecursion, distanceBetweenPointAndPoint, distanceBetweenPointAndRectangle, distanceBetweenPointAndSegment, distanceBetweenPointAndSegments, downloadImage, drawArrow, drawBezierPath, drawCircle, drawLine, drawLinearPath, drawRectangle, drawRoundRectangle, fakeNodeWeakMap, findElements, getBoardRectangle, getClipboardByKey, getClipboardDataByMedia, getDataFromClipboard, getElementById, getElementHostBBox, getHitElementOfRoot, getHitElements, getIsRecursionFunc, getMovingElements, getNearestPointBetweenPointAndSegment, getNearestPointBetweenPointAndSegments, getRealScrollBarWidth, getRectangleByElements, getSelectedElements, getTemporaryElements, getTemporaryRef, getTextFromClipboard, getViewBox, getViewBoxCenterPoint, getViewportContainerRect, getViewportOrigination, handleTouchTarget, hasBeforeContextChange, hasInputOrTextareaTarget, hasOnBoardChange, hasOnContextChanged, hotkeys, idCreator, initializeViewBox, initializeViewportContainer, initializeViewportOffset, inverse, isDOMElement, isDOMNode, isFromScrolling, isFromViewportChange, isHitElements, isInPlaitBoard, isLineHitLine, isMainPointer, isNullOrUndefined, isPointInEllipse, isPointInPolygon, isPointInRoundRectangle, isPolylineHitRectangle, isPreventTouchMove, isSecondaryPointer, isSelectedElement, isSelectionMoving, isSetViewportOperation, normalizePoint, preventTouchMove, removeMovingElements, removeSelectedElement, rotate, scrollToRectangle, setClipboardData, setClipboardDataByMedia, setClipboardDataByText, setIsFromScrolling, setIsFromViewportChange, setPathStrokeLinecap, setSVGViewBox, setSelectionMoving, setStrokeLinecap, shouldClear, shouldMerge, shouldSave, throttleRAF, toImage, toPoint, transformPoint, transformPoints, updateForeignObject, updateForeignObjectWidth, updateViewportContainerScroll, updateViewportOffset, updateViewportOrigination, withMoving, withOptions, withSelection };
|
|
4130
|
+
export { A, ACTIVE_STROKE_WIDTH, 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_TOUCH_REF, BOARD_TO_VIEWPORT_ORIGINATION, BoardTransforms, C, CAPS_LOCK, CLIP_BOARD_FORMAT_KEY, CLOSE_SQUARE_BRACKET, COMMA, CONTEXT_MENU, CONTROL, ColorfulThemeColor, CoreTransforms, D, DASH, DELETE, DOWN_ARROW, DarkThemeColor, DefaultThemeColor, Direction, 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_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, SELECTION_RECTANGLE_CLASS_NAME, 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, createMask, createModModifierKeys, createMouseEvent, createPath, createPointerEvent, createRect, createSVG, createSelectionRectangleG, createTestingBoard, createText, createTouchEvent, debounce, deleteTemporaryElements, depthFirstRecursion, distanceBetweenPointAndPoint, distanceBetweenPointAndRectangle, distanceBetweenPointAndSegment, distanceBetweenPointAndSegments, downloadImage, drawArrow, drawBezierPath, drawCircle, drawLine, drawLinearPath, drawRectangle, drawRoundRectangle, fakeNodeWeakMap, findElements, getBoardRectangle, getClipboardByKey, getClipboardDataByMedia, getDataFromClipboard, getElementById, getElementHostBBox, getHitElementOfRoot, getHitElements, getIsRecursionFunc, getMovingElements, getNearestPointBetweenPointAndSegment, getNearestPointBetweenPointAndSegments, getRealScrollBarWidth, getRectangleByElements, getSelectedElements, getTemporaryElements, getTemporaryRef, getTextFromClipboard, getViewBox, getViewBoxCenterPoint, getViewportContainerRect, getViewportOrigination, handleTouchTarget, hasBeforeContextChange, hasInputOrTextareaTarget, hasOnBoardChange, hasOnContextChanged, hotkeys, idCreator, initializeViewBox, initializeViewportContainer, initializeViewportOffset, inverse, isDOMElement, isDOMNode, isFromScrolling, isFromViewportChange, isHitElements, isInPlaitBoard, isLineHitLine, isMainPointer, isNullOrUndefined, isPointInEllipse, isPointInPolygon, isPointInRoundRectangle, isPolylineHitRectangle, isPreventTouchMove, isSecondaryPointer, isSelectedElement, isSelectionMoving, isSetViewportOperation, normalizePoint, preventTouchMove, removeMovingElements, removeSelectedElement, rotate, scrollToRectangle, setClipboardData, setClipboardDataByMedia, setClipboardDataByText, setIsFromScrolling, setIsFromViewportChange, setPathStrokeLinecap, setSVGViewBox, setSelectionMoving, setStrokeLinecap, shouldClear, shouldMerge, shouldSave, throttleRAF, toImage, toPoint, transformPoint, transformPoints, updateForeignObject, updateForeignObjectWidth, updateViewportContainerScroll, updateViewportOffset, updateViewportOrigination, withMoving, withOptions, withSelection };
|
|
3966
4131
|
//# sourceMappingURL=plait-core.mjs.map
|