@plait/mind 0.27.0-next.0 → 0.27.0-next.1
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/base/image-base.component.d.ts +3 -2
- package/esm2020/base/image-base.component.mjs +6 -1
- package/esm2020/plugins/with-mind-hotkey.mjs +3 -16
- package/esm2020/plugins/with-node-image-resize.mjs +4 -4
- package/esm2020/utils/index.mjs +1 -2
- package/esm2020/utils/position/image.mjs +5 -5
- package/fesm2015/plait-mind.mjs +13 -33
- package/fesm2015/plait-mind.mjs.map +1 -1
- package/fesm2020/plait-mind.mjs +13 -33
- package/fesm2020/plait-mind.mjs.map +1 -1
- package/package.json +1 -1
- package/plugins/with-mind-hotkey.d.ts +0 -4
- package/utils/index.d.ts +0 -1
- package/utils/position/image.d.ts +1 -1
- package/esm2020/utils/is-virtual-key.mjs +0 -13
- package/utils/is-virtual-key.d.ts +0 -1
package/fesm2020/plait-mind.mjs
CHANGED
|
@@ -5,9 +5,8 @@ import { DefaultThemeColor, ColorfulThemeColor, SoftThemeColor, RetroThemeColor,
|
|
|
5
5
|
import { MindLayoutType, isIndentedLayout, AbstractNode, isStandardLayout, isHorizontalLogicLayout, isVerticalLogicLayout, getNonAbstractChildren, isLeftLayout, isRightLayout, isTopLayout, isBottomLayout, isHorizontalLayout, getCorrectStartEnd, ConnectingPosition, getAbstractLayout, GlobalLayout } from '@plait/layouts';
|
|
6
6
|
import { PlaitMarkEditor, MarkTypes, DEFAULT_FONT_SIZE, TEXT_DEFAULT_HEIGHT, buildText, getTextSize, TextManage, ExitOrigin, TextModule, getTextFromClipboard } from '@plait/text';
|
|
7
7
|
import { fromEvent, Subject } from 'rxjs';
|
|
8
|
-
import { RESIZE_HANDLE_DIAMETER,
|
|
8
|
+
import { RESIZE_HANDLE_DIAMETER, getRectangleResizeHandleRefs, isExpandHotkey, isTabHotkey, isEnterHotkey, isVirtualKey, isSpaceHotkey, MediaKeys, ResizeHandle, withResize, ActiveGenerator } from '@plait/common';
|
|
9
9
|
import { Node as Node$1, Path as Path$1 } from 'slate';
|
|
10
|
-
import { isKeyHotkey } from 'is-hotkey';
|
|
11
10
|
import { pointsOnBezierCurves } from 'points-on-curve';
|
|
12
11
|
import { take, filter } from 'rxjs/operators';
|
|
13
12
|
import * as i1 from '@angular/common';
|
|
@@ -419,9 +418,9 @@ const isHitImage = (board, element, range) => {
|
|
|
419
418
|
};
|
|
420
419
|
const getHitImageResizeHandleDirection = (board, element, point) => {
|
|
421
420
|
const imageRectangle = getImageForeignRectangle(board, element);
|
|
422
|
-
const
|
|
423
|
-
const result =
|
|
424
|
-
return RectangleClient.isHit(RectangleClient.toRectangleClient([point, point]),
|
|
421
|
+
const resizeHandleRefs = getRectangleResizeHandleRefs(imageRectangle, RESIZE_HANDLE_DIAMETER);
|
|
422
|
+
const result = resizeHandleRefs.find(resizeHandleRef => {
|
|
423
|
+
return RectangleClient.isHit(RectangleClient.toRectangleClient([point, point]), resizeHandleRef.rectangle);
|
|
425
424
|
});
|
|
426
425
|
return result;
|
|
427
426
|
};
|
|
@@ -1335,18 +1334,6 @@ const getShapeByElement = (board, element) => {
|
|
|
1335
1334
|
return shape || MindElementShape.roundRectangle;
|
|
1336
1335
|
};
|
|
1337
1336
|
|
|
1338
|
-
function isVirtualKey(e) {
|
|
1339
|
-
const isMod = e.ctrlKey || e.metaKey;
|
|
1340
|
-
const isAlt = isKeyHotkey('alt', e);
|
|
1341
|
-
const isShift = isKeyHotkey('shift', e);
|
|
1342
|
-
const isCapsLock = e.key.includes('CapsLock');
|
|
1343
|
-
const isTab = e.key.includes('Tab');
|
|
1344
|
-
const isEsc = e.key.includes('Escape');
|
|
1345
|
-
const isF = e.key.startsWith('F');
|
|
1346
|
-
const isArrow = e.key.includes('Arrow') ? true : false;
|
|
1347
|
-
return isCapsLock || isMod || isAlt || isArrow || isShift || isTab || isEsc || isF;
|
|
1348
|
-
}
|
|
1349
|
-
|
|
1350
1337
|
const IS_DRAGGING = new WeakMap();
|
|
1351
1338
|
const addActiveOnDragOrigin = (activeElement) => {
|
|
1352
1339
|
const activeComponent = PlaitElement.getComponent(activeElement);
|
|
@@ -3864,7 +3851,7 @@ const withMindHotkey = (baseBoard) => {
|
|
|
3864
3851
|
insertMindElement(board, targetElement, findNewSiblingNodePath(board, targetElement));
|
|
3865
3852
|
return;
|
|
3866
3853
|
}
|
|
3867
|
-
if (!isVirtualKey(event) && !isSpaceHotkey(event) && isSingleSelection) {
|
|
3854
|
+
if (!isVirtualKey(event) && !isSpaceHotkey(event) && isSingleSelection && MindElement.isMindElement(board, targetElement)) {
|
|
3868
3855
|
event.preventDefault();
|
|
3869
3856
|
editTopic(targetElement);
|
|
3870
3857
|
return;
|
|
@@ -3920,18 +3907,6 @@ const getNextSelectedElement = (board, firstLevelElements) => {
|
|
|
3920
3907
|
}
|
|
3921
3908
|
return activeElement;
|
|
3922
3909
|
};
|
|
3923
|
-
const isExpandHotkey = (event) => {
|
|
3924
|
-
return isKeyHotkey('mod+/', event);
|
|
3925
|
-
};
|
|
3926
|
-
const isTabHotkey = (event) => {
|
|
3927
|
-
return event.key === 'Tab';
|
|
3928
|
-
};
|
|
3929
|
-
const isEnterHotkey = (event) => {
|
|
3930
|
-
return event.key === 'Enter';
|
|
3931
|
-
};
|
|
3932
|
-
const isSpaceHotkey = (event) => {
|
|
3933
|
-
return event.code === 'Space';
|
|
3934
|
-
};
|
|
3935
3910
|
|
|
3936
3911
|
const mouseMoveHandle = (board, event, nodeHoveredExtendRef) => {
|
|
3937
3912
|
let target = null;
|
|
@@ -4227,7 +4202,7 @@ const withNodeImageResize = (board) => {
|
|
|
4227
4202
|
if (result) {
|
|
4228
4203
|
return {
|
|
4229
4204
|
element: selectedMindElement,
|
|
4230
|
-
|
|
4205
|
+
handle: result.handle,
|
|
4231
4206
|
cursorClass: result.cursorClass
|
|
4232
4207
|
};
|
|
4233
4208
|
}
|
|
@@ -4237,7 +4212,7 @@ const withNodeImageResize = (board) => {
|
|
|
4237
4212
|
onResize: (resizeRef, resizeState) => {
|
|
4238
4213
|
let offsetX = resizeState.offsetX;
|
|
4239
4214
|
let offsetY = resizeState.offsetY;
|
|
4240
|
-
if (resizeRef.
|
|
4215
|
+
if (resizeRef.handle === ResizeHandle.nw || resizeRef.handle === ResizeHandle.sw) {
|
|
4241
4216
|
offsetX = -offsetX;
|
|
4242
4217
|
}
|
|
4243
4218
|
const originWidth = resizeRef.element.data.image.width;
|
|
@@ -4438,6 +4413,11 @@ class MindImageBaseComponent {
|
|
|
4438
4413
|
this.activeGenerator.draw(this.element, com.g, { selected: this._isFocus });
|
|
4439
4414
|
}
|
|
4440
4415
|
}
|
|
4416
|
+
ngOnDestroy() {
|
|
4417
|
+
if (this.activeGenerator) {
|
|
4418
|
+
this.activeGenerator.destroy();
|
|
4419
|
+
}
|
|
4420
|
+
}
|
|
4441
4421
|
}
|
|
4442
4422
|
MindImageBaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: MindImageBaseComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4443
4423
|
MindImageBaseComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.5", type: MindImageBaseComponent, inputs: { imageItem: "imageItem", board: "board", element: "element", isFocus: "isFocus" }, host: { classAttribute: "mind-node-image" }, ngImport: i0 });
|
|
@@ -4466,5 +4446,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImpor
|
|
|
4466
4446
|
* Generated bundle index. Do not edit.
|
|
4467
4447
|
*/
|
|
4468
4448
|
|
|
4469
|
-
export { ABSTRACT_HANDLE_COLOR, ABSTRACT_HANDLE_LENGTH, ABSTRACT_HANDLE_MASK_WIDTH, ABSTRACT_INCLUDED_OUTLINE_OFFSET, AbstractHandlePosition, AbstractResizeState, BASE, BRANCH_FONT_FAMILY, BRANCH_WIDTH, BaseDrawer, BranchShape, DEFAULT_FONT_FAMILY, DefaultAbstractNodeStyle, DefaultNodeStyle, ELEMENT_TO_NODE, EXTEND_DIAMETER, EXTEND_OFFSET, GRAY_COLOR, INHERIT_ATTRIBUTE_KEYS, IS_DRAGGING, LayoutDirection, LayoutDirectionsMap, MindColorfulThemeColor, MindDarkThemeColor, MindDefaultThemeColor, MindElement, MindElementShape, MindEmojiBaseComponent, MindImageBaseComponent, MindModule, MindNode, MindNodeComponent, MindPointerType, MindQueries, MindRetroThemeColor, MindSoftThemeColor, MindStarryThemeColor, MindThemeColor, MindThemeColors, MindTransforms, NodeSpace, PRIMARY_COLOR, PlaitMind, PlaitMindComponent, QUICK_INSERT_CIRCLE_COLOR, QUICK_INSERT_CIRCLE_OFFSET, QUICK_INSERT_INNER_CROSS_COLOR, ROOT_TOPIC_FONT_SIZE, ROOT_TOPIC_HEIGHT, STROKE_WIDTH, TOPIC_COLOR, TOPIC_DEFAULT_MAX_WORD_COUNT, TOPIC_FONT_SIZE, TRANSPARENT, WithMindPluginKey, addActiveOnDragOrigin, addSelectedImageElement, adjustAbstractToNode, adjustNodeToRoot, adjustRootToNode, buildImage, canSetAbstract, copyNewNode, correctLayoutByDirection, createDefaultMind, createEmptyMind, createMindElement, deleteElementHandleAbstract, deleteElementsHandleRightNodeCount, detectDropTarget, directionCorrector, directionDetector, divideElementByParent, drawFakeDragNode, drawFakeDropNode, editTopic, extractNodesText, findLastChild, findLocationLeftIndex, getAbstractBranchColor, getAbstractBranchWidth, getAbstractHandleRectangle, getAllowedDirection, getAvailableSubLayoutsByLayoutDirections, getBehindAbstracts, getBranchColorByMindElement, getBranchDirectionsByLayouts, getBranchShapeByMindElement, getBranchWidthByMindElement, getChildrenCount, getCorrespondingAbstract, getDefaultBranchColor, getDefaultBranchColorByIndex, getDefaultLayout, getEmojiFontSize, getEmojiForeignRectangle, getEmojiRectangle, getEmojisWidthHeight, getFillByElement, getFirstLevelElement, getFontSizeBySlateElement, getHitAbstractHandle, getHitImageResizeHandleDirection, getImageForeignRectangle, getInCorrectLayoutDirection, getLayoutDirection$1 as getLayoutDirection, getLayoutOptions, getLayoutReverseDirection, getLocationScope, getMindThemeColor, getNewNodeHeight, getNextBranchColor, getNodeDefaultFontSize, getOverallAbstracts, getPathByDropTarget, getRectangleByElement, getRectangleByNode, getRectangleByResizingLocation, getRelativeStartEndByAbstractRef, getRootLayout, getSelectedImageElement, getSelectedMindElements, getShapeByElement, getStrokeByMindElement, getStrokeWidthByElement, getTopicRectangleByElement, getTopicRectangleByNode, getValidAbstractRefs, handleTouchedAbstract, hasAfterDraw, hasPreviousOrNextOfDropPath, insertElementHandleAbstract, insertElementHandleRightNodeCount, insertMindElement, isChildElement, isChildOfAbstract, isChildRight, isChildUp, isCorrectLayout, isDragging, isDropStandardRight, isHitEmojis, isHitImage, isHitMindElement, isInRightBranchOfStandardLayout, isMixedLayout, isSetAbstract, isValidTarget,
|
|
4449
|
+
export { ABSTRACT_HANDLE_COLOR, ABSTRACT_HANDLE_LENGTH, ABSTRACT_HANDLE_MASK_WIDTH, ABSTRACT_INCLUDED_OUTLINE_OFFSET, AbstractHandlePosition, AbstractResizeState, BASE, BRANCH_FONT_FAMILY, BRANCH_WIDTH, BaseDrawer, BranchShape, DEFAULT_FONT_FAMILY, DefaultAbstractNodeStyle, DefaultNodeStyle, ELEMENT_TO_NODE, EXTEND_DIAMETER, EXTEND_OFFSET, GRAY_COLOR, INHERIT_ATTRIBUTE_KEYS, IS_DRAGGING, LayoutDirection, LayoutDirectionsMap, MindColorfulThemeColor, MindDarkThemeColor, MindDefaultThemeColor, MindElement, MindElementShape, MindEmojiBaseComponent, MindImageBaseComponent, MindModule, MindNode, MindNodeComponent, MindPointerType, MindQueries, MindRetroThemeColor, MindSoftThemeColor, MindStarryThemeColor, MindThemeColor, MindThemeColors, MindTransforms, NodeSpace, PRIMARY_COLOR, PlaitMind, PlaitMindComponent, QUICK_INSERT_CIRCLE_COLOR, QUICK_INSERT_CIRCLE_OFFSET, QUICK_INSERT_INNER_CROSS_COLOR, ROOT_TOPIC_FONT_SIZE, ROOT_TOPIC_HEIGHT, STROKE_WIDTH, TOPIC_COLOR, TOPIC_DEFAULT_MAX_WORD_COUNT, TOPIC_FONT_SIZE, TRANSPARENT, WithMindPluginKey, addActiveOnDragOrigin, addSelectedImageElement, adjustAbstractToNode, adjustNodeToRoot, adjustRootToNode, buildImage, canSetAbstract, copyNewNode, correctLayoutByDirection, createDefaultMind, createEmptyMind, createMindElement, deleteElementHandleAbstract, deleteElementsHandleRightNodeCount, detectDropTarget, directionCorrector, directionDetector, divideElementByParent, drawFakeDragNode, drawFakeDropNode, editTopic, extractNodesText, findLastChild, findLocationLeftIndex, getAbstractBranchColor, getAbstractBranchWidth, getAbstractHandleRectangle, getAllowedDirection, getAvailableSubLayoutsByLayoutDirections, getBehindAbstracts, getBranchColorByMindElement, getBranchDirectionsByLayouts, getBranchShapeByMindElement, getBranchWidthByMindElement, getChildrenCount, getCorrespondingAbstract, getDefaultBranchColor, getDefaultBranchColorByIndex, getDefaultLayout, getEmojiFontSize, getEmojiForeignRectangle, getEmojiRectangle, getEmojisWidthHeight, getFillByElement, getFirstLevelElement, getFontSizeBySlateElement, getHitAbstractHandle, getHitImageResizeHandleDirection, getImageForeignRectangle, getInCorrectLayoutDirection, getLayoutDirection$1 as getLayoutDirection, getLayoutOptions, getLayoutReverseDirection, getLocationScope, getMindThemeColor, getNewNodeHeight, getNextBranchColor, getNodeDefaultFontSize, getOverallAbstracts, getPathByDropTarget, getRectangleByElement, getRectangleByNode, getRectangleByResizingLocation, getRelativeStartEndByAbstractRef, getRootLayout, getSelectedImageElement, getSelectedMindElements, getShapeByElement, getStrokeByMindElement, getStrokeWidthByElement, getTopicRectangleByElement, getTopicRectangleByNode, getValidAbstractRefs, handleTouchedAbstract, hasAfterDraw, hasPreviousOrNextOfDropPath, insertElementHandleAbstract, insertElementHandleRightNodeCount, insertMindElement, isChildElement, isChildOfAbstract, isChildRight, isChildUp, isCorrectLayout, isDragging, isDropStandardRight, isHitEmojis, isHitImage, isHitMindElement, isInRightBranchOfStandardLayout, isMixedLayout, isSetAbstract, isValidTarget, removeActiveOnDragOrigin, removeSelectedImageElement, selectImage, separateChildren, setImageFocus, setIsDragging, temporaryDisableSelection, withMind, withMindExtend };
|
|
4470
4450
|
//# sourceMappingURL=plait-mind.mjs.map
|