@plait/mind 0.2.2 → 0.3.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.
Files changed (130) hide show
  1. package/{drawer/base/base.d.ts → base/base.drawer.d.ts} +1 -1
  2. package/{plugins/emoji → base}/emoji-base.component.d.ts +2 -2
  3. package/{plugins/emoji → base}/index.d.ts +1 -1
  4. package/draw/abstract.d.ts +2 -1
  5. package/draw/indented-link.d.ts +1 -1
  6. package/draw/link/logic-link.d.ts +1 -1
  7. package/draw/node.d.ts +5 -0
  8. package/draw/topic.d.ts +16 -0
  9. package/{plugins/emoji → drawer}/emoji.drawer.d.ts +3 -3
  10. package/drawer/quick-insert.drawer.d.ts +1 -1
  11. package/esm2020/base/base.drawer.mjs +17 -0
  12. package/esm2020/base/emoji-base.component.mjs +33 -0
  13. package/esm2020/base/index.mjs +3 -0
  14. package/esm2020/draw/abstract.mjs +8 -7
  15. package/esm2020/draw/indented-link.mjs +3 -3
  16. package/esm2020/draw/link/abstract-link.mjs +9 -15
  17. package/esm2020/draw/link/logic-link.mjs +9 -9
  18. package/esm2020/draw/node.mjs +21 -0
  19. package/esm2020/draw/topic.mjs +32 -0
  20. package/esm2020/drawer/emoji.drawer.mjs +73 -0
  21. package/esm2020/drawer/quick-insert.drawer.mjs +3 -3
  22. package/esm2020/interfaces/index.mjs +2 -2
  23. package/esm2020/interfaces/pointer.mjs +5 -0
  24. package/esm2020/mind.component.mjs +2 -2
  25. package/esm2020/mind.module.mjs +5 -5
  26. package/esm2020/node.component.mjs +11 -10
  27. package/esm2020/plugins/with-abstract-resize.board.mjs +12 -0
  28. package/esm2020/plugins/with-abstract-resize.mjs +107 -0
  29. package/esm2020/plugins/with-mind-create.mjs +85 -0
  30. package/esm2020/plugins/with-mind-extend.mjs +11 -0
  31. package/esm2020/plugins/with-mind.board.mjs +2 -0
  32. package/esm2020/plugins/with-mind.mjs +30 -16
  33. package/esm2020/plugins/with-node-dnd.mjs +162 -0
  34. package/esm2020/public-api.mjs +5 -3
  35. package/esm2020/transforms/abstract-node.mjs +3 -2
  36. package/esm2020/transforms/emoji.mjs +37 -0
  37. package/esm2020/transforms/index.mjs +7 -3
  38. package/esm2020/transforms/node.mjs +40 -33
  39. package/esm2020/utils/abstract/common.mjs +64 -31
  40. package/esm2020/utils/abstract/resize.mjs +3 -2
  41. package/esm2020/utils/clipboard.mjs +16 -18
  42. package/esm2020/utils/dnd/common.mjs +35 -0
  43. package/esm2020/utils/dnd/detector.mjs +268 -0
  44. package/esm2020/utils/dnd/draw.mjs +161 -0
  45. package/esm2020/utils/index.mjs +6 -6
  46. package/esm2020/utils/mind.mjs +6 -129
  47. package/esm2020/utils/node/adjust-node.mjs +49 -0
  48. package/esm2020/utils/node/common.mjs +6 -0
  49. package/esm2020/utils/node/create-node.mjs +61 -0
  50. package/esm2020/utils/node/index.mjs +4 -0
  51. package/esm2020/utils/point-placement.mjs +22 -2
  52. package/esm2020/utils/position/emoji.mjs +31 -0
  53. package/esm2020/utils/position/index.mjs +4 -0
  54. package/esm2020/utils/position/node.mjs +34 -0
  55. package/esm2020/utils/position/topic.mjs +14 -0
  56. package/esm2020/utils/space/emoji.mjs +19 -0
  57. package/esm2020/utils/space/layout-options.mjs +72 -0
  58. package/esm2020/utils/space/node-space.mjs +77 -0
  59. package/fesm2015/plait-mind.mjs +1464 -1631
  60. package/fesm2015/plait-mind.mjs.map +1 -1
  61. package/fesm2020/plait-mind.mjs +1486 -1642
  62. package/fesm2020/plait-mind.mjs.map +1 -1
  63. package/interfaces/index.d.ts +1 -1
  64. package/interfaces/pointer.d.ts +3 -0
  65. package/mind.module.d.ts +2 -2
  66. package/node.component.d.ts +3 -3
  67. package/package.json +3 -3
  68. package/{interfaces/abstract.d.ts → plugins/with-abstract-resize.board.d.ts} +2 -2
  69. package/plugins/with-mind-create.d.ts +11 -0
  70. package/plugins/with-mind-extend.d.ts +3 -0
  71. package/plugins/{with-extend-mind.d.ts → with-mind.board.d.ts} +4 -4
  72. package/plugins/with-mind.d.ts +1 -1
  73. package/public-api.d.ts +4 -2
  74. package/styles/styles.scss +5 -2
  75. package/transforms/abstract-node.d.ts +1 -1
  76. package/transforms/emoji.d.ts +6 -0
  77. package/transforms/index.d.ts +3 -0
  78. package/transforms/node.d.ts +5 -5
  79. package/utils/abstract/common.d.ts +19 -4
  80. package/utils/abstract/resize.d.ts +2 -1
  81. package/utils/dnd/common.d.ts +7 -0
  82. package/utils/dnd/detector.d.ts +31 -0
  83. package/utils/dnd/draw.d.ts +9 -0
  84. package/utils/index.d.ts +5 -5
  85. package/utils/mind.d.ts +3 -22
  86. package/utils/node/adjust-node.d.ts +5 -0
  87. package/utils/{node.d.ts → node/common.d.ts} +1 -1
  88. package/utils/node/create-node.d.ts +14 -0
  89. package/utils/node/index.d.ts +3 -0
  90. package/utils/point-placement.d.ts +8 -1
  91. package/utils/position/emoji.d.ts +7 -0
  92. package/utils/position/index.d.ts +3 -0
  93. package/utils/position/node.d.ts +12 -0
  94. package/utils/position/topic.d.ts +16 -0
  95. package/utils/space/emoji.d.ts +7 -0
  96. package/{layout-option.d.ts → utils/space/layout-options.d.ts} +1 -1
  97. package/utils/{node-space.d.ts → space/node-space.d.ts} +4 -4
  98. package/draw/link.d.ts +0 -3
  99. package/draw/richtext.d.ts +0 -15
  100. package/draw/shape.d.ts +0 -3
  101. package/esm2020/draw/link.mjs +0 -160
  102. package/esm2020/draw/richtext.mjs +0 -39
  103. package/esm2020/draw/shape.mjs +0 -18
  104. package/esm2020/drawer/base/base.mjs +0 -17
  105. package/esm2020/interfaces/abstract.mjs +0 -12
  106. package/esm2020/layout-option.mjs +0 -72
  107. package/esm2020/plugins/emoji/emoji-base.component.mjs +0 -33
  108. package/esm2020/plugins/emoji/emoji.drawer.mjs +0 -72
  109. package/esm2020/plugins/emoji/emoji.mjs +0 -47
  110. package/esm2020/plugins/emoji/index.mjs +0 -3
  111. package/esm2020/plugins/with-abstract.mjs +0 -106
  112. package/esm2020/plugins/with-dnd.mjs +0 -179
  113. package/esm2020/plugins/with-extend-mind.mjs +0 -11
  114. package/esm2020/utils/direction-corrector.mjs +0 -54
  115. package/esm2020/utils/direction-detector.mjs +0 -56
  116. package/esm2020/utils/dnd.mjs +0 -122
  117. package/esm2020/utils/draw-placeholder.mjs +0 -313
  118. package/esm2020/utils/drop-target-corrector.mjs +0 -87
  119. package/esm2020/utils/graph.mjs +0 -24
  120. package/esm2020/utils/node-space.mjs +0 -77
  121. package/esm2020/utils/node.mjs +0 -6
  122. package/plugins/emoji/emoji.d.ts +0 -11
  123. package/utils/direction-corrector.d.ts +0 -4
  124. package/utils/direction-detector.d.ts +0 -9
  125. package/utils/dnd.d.ts +0 -16
  126. package/utils/draw-placeholder.d.ts +0 -42
  127. package/utils/drop-target-corrector.d.ts +0 -9
  128. package/utils/graph.d.ts +0 -5
  129. /package/plugins/{with-abstract.d.ts → with-abstract-resize.d.ts} +0 -0
  130. /package/plugins/{with-dnd.d.ts → with-node-dnd.d.ts} +0 -0
@@ -1,87 +0,0 @@
1
- import { isStandardLayout, isIndentedLayout, isVerticalLogicLayout, isTopLayout, MindLayoutType, getNonAbstractChildren } from '@plait/layouts';
2
- import { MindQueries } from '../queries';
3
- import { isMixedLayout } from './layout';
4
- import { PlaitElement } from '@plait/core';
5
- /* 根据布局调整 target 以及 direction */
6
- export const readjustmentDropTarget = (board, dropTarget) => {
7
- const { target, detectResult } = dropTarget;
8
- const newDropTarget = { target, detectResult };
9
- const targetComponent = PlaitElement.getComponent(target);
10
- if (targetComponent.node.children.length > 0 && dropTarget.detectResult) {
11
- const layout = MindQueries.getCorrectLayoutByElement(board, targetComponent.node.origin);
12
- const parentLayout = MindQueries.getCorrectLayoutByElement(board, targetComponent.node.origin.isRoot ? targetComponent.node.origin : targetComponent.node.parent.origin);
13
- const children = getNonAbstractChildren(targetComponent.node);
14
- if (['right', 'left'].includes(dropTarget.detectResult)) {
15
- if (!isMixedLayout(parentLayout, layout)) {
16
- if (targetComponent.node.origin.isRoot) {
17
- const layout = MindQueries.getCorrectLayoutByElement(board, targetComponent.node.origin);
18
- // 标准布局,根节点
19
- if (isStandardLayout(layout)) {
20
- const rightNodeCount = targetComponent.node.origin.rightNodeCount;
21
- if (detectResult === 'left') {
22
- // 作为左的第一个节点
23
- if (targetComponent.node.children.length === rightNodeCount) {
24
- return newDropTarget;
25
- }
26
- }
27
- else {
28
- // 作为右的第一个节点或最后一个节点
29
- if (rightNodeCount === 0) {
30
- newDropTarget.target = target;
31
- }
32
- else {
33
- newDropTarget.target = targetComponent.node.children[rightNodeCount - 1].origin;
34
- newDropTarget.detectResult = 'bottom';
35
- }
36
- return newDropTarget;
37
- }
38
- }
39
- }
40
- // 缩进布局探测到第一个子节点
41
- if (isIndentedLayout(parentLayout)) {
42
- newDropTarget.target = targetComponent.node.children[0].origin;
43
- newDropTarget.detectResult = isTopLayout(parentLayout) ? 'bottom' : 'top';
44
- return newDropTarget;
45
- }
46
- // 上下布局的根节点只可以探测到上或者下,子节点的左右探测不处理,跳过。
47
- if (isVerticalLogicLayout(parentLayout)) {
48
- return newDropTarget;
49
- }
50
- // 剩下是水平布局的默认情况:插入最后一个子节点的下方
51
- const lastChildNodeIndex = children.length - 1;
52
- newDropTarget.target = targetComponent.node.children[lastChildNodeIndex].origin;
53
- newDropTarget.detectResult = 'bottom';
54
- }
55
- else {
56
- // 处理左右布局下的混合布局
57
- if ([MindLayoutType.left, MindLayoutType.right].includes(parentLayout)) {
58
- const layout = MindQueries.getCorrectLayoutByElement(board, targetComponent.node.origin);
59
- if (isIndentedLayout(layout)) {
60
- newDropTarget.target = targetComponent.node.children[0].origin;
61
- newDropTarget.detectResult = isTopLayout(layout) ? 'bottom' : 'top';
62
- return newDropTarget;
63
- }
64
- }
65
- }
66
- }
67
- if (['top', 'bottom'].includes(dropTarget.detectResult)) {
68
- // 缩进布局移动至第一个节点
69
- if (targetComponent.node.origin.isRoot && isIndentedLayout(layout)) {
70
- newDropTarget.target = targetComponent.node.children[0].origin;
71
- newDropTarget.detectResult = isTopLayout(layout) ? 'bottom' : 'top';
72
- return newDropTarget;
73
- }
74
- // 上下布局,插到右边
75
- const parentLayout = MindQueries.getCorrectLayoutByElement(board, targetComponent.node.origin.isRoot ? targetComponent.node.origin : targetComponent.node.parent.origin);
76
- if (isVerticalLogicLayout(parentLayout)) {
77
- const lastChildNodeIndex = children.length - 1;
78
- newDropTarget.target = targetComponent.node.children[lastChildNodeIndex].origin;
79
- newDropTarget.detectResult = 'right';
80
- return newDropTarget;
81
- }
82
- }
83
- return newDropTarget;
84
- }
85
- return dropTarget;
86
- };
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcC10YXJnZXQtY29ycmVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvbWluZC9zcmMvdXRpbHMvZHJvcC10YXJnZXQtY29ycmVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLHFCQUFxQixFQUNyQixXQUFXLEVBQ1gsY0FBYyxFQUNkLHNCQUFzQixFQUN6QixNQUFNLGdCQUFnQixDQUFDO0FBR3hCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQWMsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXZELGdDQUFnQztBQUNoQyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUNsQyxLQUFpQixFQUNqQixVQUdDLEVBQ2tELEVBQUU7SUFDckQsTUFBTSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsR0FBRyxVQUFVLENBQUM7SUFDNUMsTUFBTSxhQUFhLEdBQUcsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUM7SUFDL0MsTUFBTSxlQUFlLEdBQUcsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQXNCLENBQUM7SUFDL0UsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxZQUFZLEVBQUU7UUFDckUsTUFBTSxNQUFNLEdBQUcsV0FBVyxDQUFDLHlCQUF5QixDQUFDLEtBQUssRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3pGLE1BQU0sWUFBWSxHQUFHLFdBQVcsQ0FBQyx5QkFBeUIsQ0FDdEQsS0FBSyxFQUNMLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMs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ckMsT0FBTyxhQUFhLENBQUM7YUFDeEI7U0FDSjtRQUNELE9BQU8sYUFBYSxDQUFDO0tBQ3hCO0lBQ0QsT0FBTyxVQUFVLENBQUM7QUFDdEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBpc1N0YW5kYXJkTGF5b3V0LFxuICAgIGlzSW5kZW50ZWRMYXlvdXQsXG4gICAgaXNWZXJ0aWNhbExvZ2ljTGF5b3V0LFxuICAgIGlzVG9wTGF5b3V0LFxuICAgIE1pbmRMYXlvdXRUeXBlLFxuICAgIGdldE5vbkFic3RyYWN0Q2hpbGRyZW5cbn0gZnJvbSAnQHBsYWl0L2xheW91dHMnO1xuaW1wb3J0IHsgRGV0ZWN0UmVzdWx0LCBNaW5kRWxlbWVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgTWluZE5vZGVDb21wb25lbnQgfSBmcm9tICcuLi9ub2RlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaW5kUXVlcmllcyB9IGZyb20gJy4uL3F1ZXJpZXMnO1xuaW1wb3J0IHsgaXNNaXhlZExheW91dCB9IGZyb20gJy4vbGF5b3V0JztcbmltcG9ydCB7IFBsYWl0Qm9hcmQsIFBsYWl0RWxlbWVudCB9IGZyb20gJ0BwbGFpdC9jb3JlJztcblxuLyog5qC55o2u5biD5bGA6LCD5pW0IHRhcmdldCDku6Xlj4ogZGlyZWN0aW9uICovXG5leHBvcnQgY29uc3QgcmVhZGp1c3RtZW50RHJvcFRhcmdldCA9IChcbiAgICBib2FyZDogUGxhaXRCb2FyZCxcbiAgICBkcm9wVGFyZ2V0OiB7XG4gICAgICAgIHRhcmdldDogTWluZEVsZW1lbnQ7XG4gICAgICAgIGRldGVjdFJlc3VsdDogRGV0ZWN0UmVzdWx0O1xuICAgIH1cbik6IHsgdGFyZ2V0OiBNaW5kRWxlbWVudDsgZGV0ZWN0UmVzdWx0OiBEZXRlY3RSZXN1bHQgfSA9PiB7XG4gICAgY29uc3QgeyB0YXJnZXQsIGRldGVjdFJlc3VsdCB9ID0gZHJvcFRhcmdldDtcbiAgICBjb25zdCBuZXdEcm9wVGFyZ2V0ID0geyB0YXJnZXQsIGRldGVjdFJlc3VsdCB9O1xuICAgIGNvbnN0IHRhcmdldENvbXBvbmVudCA9IFBsYWl0RWxlbWVudC5nZXRDb21wb25lbnQodGFyZ2V0KSBhcyBNaW5kTm9kZUNvbXBvbmVudDtcbiAgICBpZiAodGFyZ2V0Q29tcG9uZW50Lm5vZGUuY2hpbGRyZW4ubGVuZ3RoID4gMCAmJiBkcm9wVGFyZ2V0LmRldGVjdFJlc3VsdCkge1xuICAgICAgICBjb25zdCBsYXlvdXQgPSBNaW5kUXVlcmllcy5nZXRDb3JyZWN0TGF5b3V0QnlFbGVtZW50KGJvYXJkLCB0YXJnZXRDb21wb25lbnQubm9kZS5vcmlnaW4pO1xuICAgICAgICBjb25zdCBwYXJlbnRMYXlvdXQgPSBNaW5kUXVlcmllcy5nZXRDb3JyZWN0TGF5b3V0QnlFbGVtZW50KFxuICAgICAgICAgICAgYm9hcmQsXG4gICAgICAgICAgICB0YXJnZXRDb21wb25lbnQubm9kZS5vcmlnaW4uaXNSb290ID8gdGFyZ2V0Q29tcG9uZW50Lm5vZGUub3JpZ2luIDogdGFyZ2V0Q29tcG9uZW50Lm5vZGUucGFyZW50Lm9yaWdpblxuICAgICAgICApO1xuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IGdldE5vbkFic3RyYWN0Q2hpbGRyZW4odGFyZ2V0Q29tcG9uZW50Lm5vZGUpO1xuICAgICAgICBpZiAoWydyaWdodCcsICdsZWZ0J10uaW5jbHVkZXMoZHJvcFRhcmdldC5kZXRlY3RSZXN1bHQpKSB7XG4gICAgICAgICAgICBpZiAoIWlzTWl4ZWRMYXlvdXQocGFyZW50TGF5b3V0LCBsYXlvdXQpKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRhcmdldENvbXBvbmVudC5ub2RlLm9yaWdpbi5pc1Jvb3QpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGF5b3V0ID0gTWluZFF1ZXJpZXMuZ2V0Q29ycmVjdExheW91dEJ5RWxlbWVudChib2FyZCwgdGFyZ2V0Q29tcG9uZW50Lm5vZGUub3JpZ2luKTtcbiAgICAgICAgICAgICAgICAgICAgLy8g5qCH5YeG5biD5bGA77yM5qC56IqC54K5XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc1N0YW5kYXJkTGF5b3V0KGxheW91dCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJpZ2h0Tm9kZUNvdW50ID0gdGFyZ2V0Q29tcG9uZW50Lm5vZGUub3JpZ2luLnJpZ2h0Tm9kZUNvdW50IGFzIG51bWJlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkZXRlY3RSZXN1bHQgPT09ICdsZWZ0Jykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIOS9nOS4uuW3pueahOesrOS4gOS4quiKgueCuVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0YXJnZXRDb21wb25lbnQubm9kZS5jaGlsZHJlbi5sZW5ndGggPT09IHJpZ2h0Tm9kZUNvdW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXdEcm9wVGFyZ2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8g5L2c5Li65Y+z55qE56ys5LiA5Liq6IqC54K55oiW5pyA5ZCO5LiA5Liq6IqC54K5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJpZ2h0Tm9kZUNvdW50ID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld0Ryb3BUYXJnZXQudGFyZ2V0ID0gdGFyZ2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld0Ryb3BUYXJnZXQudGFyZ2V0ID0gdGFyZ2V0Q29tcG9uZW50Lm5vZGUuY2hpbGRyZW5bcmlnaHROb2RlQ291bnQgLSAxXS5vcmlnaW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld0Ryb3BUYXJnZXQuZGV0ZWN0UmVzdWx0ID0gJ2JvdHRvbSc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXdEcm9wVGFyZ2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8g57yp6L+b5biD5bGA5o6i5rWL5Yiw56ys5LiA5Liq5a2Q6IqC54K5XG4gICAgICAgICAgICAgICAgaWYgKGlzSW5kZW50ZWRMYXlvdXQocGFyZW50TGF5b3V0KSkge1xuICAgICAgICAgICAgICAgICAgICBuZXdEcm9wVGFyZ2V0LnRhcmdldCA9IHRhcmdldENvbXBvbmVudC5ub2RlLmNoaWxkcmVuWzBdLm9yaWdpbjtcbiAgICAgICAgICAgICAgICAgICAgbmV3RHJvcFRhcmdldC5kZXRlY3RSZXN1bHQgPSBpc1RvcExheW91dChwYXJlbnRMYXlvdXQpID8gJ2JvdHRvbScgOiAndG9wJztcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ld0Ryb3BUYXJnZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIOS4iuS4i+W4g+WxgOeahOagueiKgueCueWPquWPr+S7peaOoua1i+WIsOS4iuaIluiAheS4i++8jOWtkOiKgueCueeahOW3puWPs+aOoua1i+S4jeWkhOeQhu+8jOi3s+i/h+OAglxuICAgICAgICAgICAgICAgIGlmIChpc1ZlcnRpY2FsTG9naWNMYXlvdXQocGFyZW50TGF5b3V0KSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3RHJvcFRhcmdldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8g5Ymp5LiL5piv5rC05bmz5biD5bGA55qE6buY6K6k5oOF5Ya177ya5o+S5YWl5pyA5ZCO5LiA5Liq5a2Q6IqC54K555qE5LiL5pa5XG4gICAgICAgICAgICAgICAgY29uc3QgbGFzdENoaWxkTm9kZUluZGV4ID0gY2hpbGRyZW4ubGVuZ3RoIC0gMTtcbiAgICAgICAgICAgICAgICBuZXdEcm9wVGFyZ2V0LnRhcmdldCA9IHRhcmdldENvbXBvbmVudC5ub2RlLmNoaWxkcmVuW2xhc3RDaGlsZE5vZGVJbmRleF0ub3JpZ2luO1xuICAgICAgICAgICAgICAgIG5ld0Ryb3BUYXJnZXQuZGV0ZWN0UmVzdWx0ID0gJ2JvdHRvbSc7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIC8vIOWkhOeQhuW3puWPs+W4g+WxgOS4i+eahOa3t+WQiOW4g+WxgFxuICAgICAgICAgICAgICAgIGlmIChbTWluZExheW91dFR5cGUubGVmdCwgTWluZExheW91dFR5cGUucmlnaHRdLmluY2x1ZGVzKHBhcmVudExheW91dCkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGF5b3V0ID0gTWluZFF1ZXJpZXMuZ2V0Q29ycmVjdExheW91dEJ5RWxlbWVudChib2FyZCwgdGFyZ2V0Q29tcG9uZW50Lm5vZGUub3JpZ2luKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzSW5kZW50ZWRMYXlvdXQobGF5b3V0KSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmV3RHJvcFRhcmdldC50YXJnZXQgPSB0YXJnZXRDb21wb25lbnQubm9kZS5jaGlsZHJlblswXS5vcmlnaW47XG4gICAgICAgICAgICAgICAgICAgICAgICBuZXdEcm9wVGFyZ2V0LmRldGVjdFJlc3VsdCA9IGlzVG9wTGF5b3V0KGxheW91dCkgPyAnYm90dG9tJyA6ICd0b3AnO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5ld0Ryb3BUYXJnZXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKFsndG9wJywgJ2JvdHRvbSddLmluY2x1ZGVzKGRyb3BUYXJnZXQuZGV0ZWN0UmVzdWx0KSkge1xuICAgICAgICAgICAgLy8g57yp6L+b5biD5bGA56e75Yqo6Iez56ys5LiA5Liq6IqC54K5XG4gICAgICAgICAgICBpZiAodGFyZ2V0Q29tcG9uZW50Lm5vZGUub3JpZ2luLmlzUm9vdCAmJiBpc0luZGVudGVkTGF5b3V0KGxheW91dCkpIHtcbiAgICAgICAgICAgICAgICBuZXdEcm9wVGFyZ2V0LnRhcmdldCA9IHRhcmdldENvbXBvbmVudC5ub2RlLmNoaWxkcmVuWzBdLm9yaWdpbjtcbiAgICAgICAgICAgICAgICBuZXdEcm9wVGFyZ2V0LmRldGVjdFJlc3VsdCA9IGlzVG9wTGF5b3V0KGxheW91dCkgPyAnYm90dG9tJyA6ICd0b3AnO1xuICAgICAgICAgICAgICAgIHJldHVybiBuZXdEcm9wVGFyZ2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8g5LiK5LiL5biD5bGA77yM5o+S5Yiw5Y+z6L65XG4gICAgICAgICAgICBjb25zdCBwYXJlbnRMYXlvdXQgPSBNaW5kUXVlcmllcy5nZXRDb3JyZWN0TGF5b3V0QnlFbGVtZW50KFxuICAgICAgICAgICAgICAgIGJvYXJkLFxuICAgICAgICAgICAgICAgIHRhcmdldENvbXBvbmVudC5ub2RlLm9yaWdpbi5pc1Jvb3QgPyB0YXJnZXRDb21wb25lbnQubm9kZS5vcmlnaW4gOiB0YXJnZXRDb21wb25lbnQubm9kZS5wYXJlbnQub3JpZ2luXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgaWYgKGlzVmVydGljYWxMb2dpY0xheW91dChwYXJlbnRMYXlvdXQpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbGFzdENoaWxkTm9kZUluZGV4ID0gY2hpbGRyZW4ubGVuZ3RoIC0gMTtcbiAgICAgICAgICAgICAgICBuZXdEcm9wVGFyZ2V0LnRhcmdldCA9IHRhcmdldENvbXBvbmVudC5ub2RlLmNoaWxkcmVuW2xhc3RDaGlsZE5vZGVJbmRleF0ub3JpZ2luO1xuICAgICAgICAgICAgICAgIG5ld0Ryb3BUYXJnZXQuZGV0ZWN0UmVzdWx0ID0gJ3JpZ2h0JztcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3RHJvcFRhcmdldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV3RHJvcFRhcmdldDtcbiAgICB9XG4gICAgcmV0dXJuIGRyb3BUYXJnZXQ7XG59O1xuIl19
@@ -1,24 +0,0 @@
1
- import { distanceBetweenPointAndRectangle } from '@plait/core';
2
- import { ELEMENT_TO_NODE } from './weak-maps';
3
- export function getRectangleByNode(node) {
4
- const x = node.x + node.hGap;
5
- let y = node.y + node.vGap;
6
- const width = node.width - node.hGap * 2;
7
- const height = node.height - node.vGap * 2;
8
- return {
9
- x,
10
- y,
11
- width,
12
- height
13
- };
14
- }
15
- export function hitMindElement(board, point, element) {
16
- const node = ELEMENT_TO_NODE.get(element);
17
- if (node && distanceBetweenPointAndRectangle(point[0], point[1], getRectangleByNode(node)) === 0) {
18
- return true;
19
- }
20
- else {
21
- return false;
22
- }
23
- }
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9taW5kL3NyYy91dGlscy9ncmFwaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQXNDLGdDQUFnQyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRW5HLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFOUMsTUFBTSxVQUFVLGtCQUFrQixDQUFDLElBQWM7SUFDN0MsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzdCLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUMzQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7SUFDM0MsT0FBTztRQUNILENBQUM7UUFDRCxDQUFDO1FBQ0QsS0FBSztRQUNMLE1BQU07S0FDVCxDQUFDO0FBQ04sQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsS0FBaUIsRUFBRSxLQUFZLEVBQUUsT0FBb0I7SUFDaEYsTUFBTSxJQUFJLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxJQUFJLElBQUksSUFBSSxnQ0FBZ0MsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQzlGLE9BQU8sSUFBSSxDQUFDO0tBQ2Y7U0FBTTtRQUNILE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1pbmROb2RlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9ub2RlJztcbmltcG9ydCB7IFBsYWl0Qm9hcmQsIFBvaW50LCBSZWN0YW5nbGVDbGllbnQsIGRpc3RhbmNlQmV0d2VlblBvaW50QW5kUmVjdGFuZ2xlIH0gZnJvbSAnQHBsYWl0L2NvcmUnO1xuaW1wb3J0IHsgTWluZEVsZW1lbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEVMRU1FTlRfVE9fTk9ERSB9IGZyb20gJy4vd2Vhay1tYXBzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlY3RhbmdsZUJ5Tm9kZShub2RlOiBNaW5kTm9kZSk6IFJlY3RhbmdsZUNsaWVudCB7XG4gICAgY29uc3QgeCA9IG5vZGUueCArIG5vZGUuaEdhcDtcbiAgICBsZXQgeSA9IG5vZGUueSArIG5vZGUudkdhcDtcbiAgICBjb25zdCB3aWR0aCA9IG5vZGUud2lkdGggLSBub2RlLmhHYXAgKiAyO1xuICAgIGNvbnN0IGhlaWdodCA9IG5vZGUuaGVpZ2h0IC0gbm9kZS52R2FwICogMjtcbiAgICByZXR1cm4ge1xuICAgICAgICB4LFxuICAgICAgICB5LFxuICAgICAgICB3aWR0aCxcbiAgICAgICAgaGVpZ2h0XG4gICAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhpdE1pbmRFbGVtZW50KGJvYXJkOiBQbGFpdEJvYXJkLCBwb2ludDogUG9pbnQsIGVsZW1lbnQ6IE1pbmRFbGVtZW50KSB7XG4gICAgY29uc3Qgbm9kZSA9IEVMRU1FTlRfVE9fTk9ERS5nZXQoZWxlbWVudCk7XG4gICAgaWYgKG5vZGUgJiYgZGlzdGFuY2VCZXR3ZWVuUG9pbnRBbmRSZWN0YW5nbGUocG9pbnRbMF0sIHBvaW50WzFdLCBnZXRSZWN0YW5nbGVCeU5vZGUobm9kZSkpID09PSAwKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG59XG4iXX0=
@@ -1,77 +0,0 @@
1
- import { BASE } from '../constants/default';
2
- import { PlaitMind } from '../interfaces/element';
3
- import { MindElement } from '../interfaces/element';
4
- import { getEmojisWidthHeight } from '../plugins/emoji/emoji';
5
- const NodeDefaultSpace = {
6
- horizontal: {
7
- nodeAndText: BASE * 3,
8
- emojiAndText: BASE * 1.5
9
- },
10
- vertical: {
11
- nodeAndText: BASE * 1.5
12
- }
13
- };
14
- const RootDefaultSpace = {
15
- horizontal: {
16
- nodeAndText: BASE * 4,
17
- emojiAndText: BASE * 2
18
- },
19
- vertical: {
20
- nodeAndText: BASE * 2
21
- }
22
- };
23
- const getHorizontalSpaceBetweenNodeAndText = (board, element) => {
24
- const isMind = PlaitMind.isMind(element);
25
- const nodeAndText = isMind ? RootDefaultSpace.horizontal.nodeAndText : NodeDefaultSpace.horizontal.nodeAndText;
26
- return nodeAndText;
27
- };
28
- const getVerticalSpaceBetweenNodeAndText = (element) => {
29
- const isMind = PlaitMind.isMind(element);
30
- const nodeAndText = isMind ? RootDefaultSpace.vertical.nodeAndText : NodeDefaultSpace.vertical.nodeAndText;
31
- return nodeAndText;
32
- };
33
- const getSpaceEmojiAndText = (element) => {
34
- const isMind = PlaitMind.isMind(element);
35
- const emojiAndText = isMind ? RootDefaultSpace.horizontal.emojiAndText : NodeDefaultSpace.horizontal.emojiAndText;
36
- return emojiAndText;
37
- };
38
- export const NodeSpace = {
39
- getNodeWidth(board, element) {
40
- const nodeAndText = getHorizontalSpaceBetweenNodeAndText(board, element);
41
- if (MindElement.hasEmojis(element)) {
42
- return (NodeSpace.getEmojiLeftSpace(board, element) +
43
- getEmojisWidthHeight(board, element).width +
44
- getSpaceEmojiAndText(element) +
45
- element.width +
46
- nodeAndText);
47
- }
48
- return nodeAndText + element.width + nodeAndText;
49
- },
50
- getNodeHeight(element) {
51
- const nodeAndText = getVerticalSpaceBetweenNodeAndText(element);
52
- return nodeAndText + element.height + nodeAndText;
53
- },
54
- getTextLeftSpace(board, element) {
55
- const nodeAndText = getHorizontalSpaceBetweenNodeAndText(board, element);
56
- if (MindElement.hasEmojis(element)) {
57
- return NodeSpace.getEmojiLeftSpace(board, element) + getEmojisWidthHeight(board, element).width + getSpaceEmojiAndText(element);
58
- }
59
- else {
60
- return nodeAndText;
61
- }
62
- },
63
- getTextTopSpace(element) {
64
- const nodeAndText = getVerticalSpaceBetweenNodeAndText(element);
65
- return nodeAndText;
66
- },
67
- getEmojiLeftSpace(board, element) {
68
- const options = board.getMindOptions();
69
- const nodeAndText = getHorizontalSpaceBetweenNodeAndText(board, element);
70
- return nodeAndText - options.emojiPadding;
71
- },
72
- getEmojiTopSpace(element) {
73
- const nodeAndText = getVerticalSpaceBetweenNodeAndText(element);
74
- return nodeAndText;
75
- }
76
- };
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1zcGFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21pbmQvc3JjL3V0aWxzL25vZGUtc3BhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHcEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFOUQsTUFBTSxnQkFBZ0IsR0FBRztJQUNyQixVQUFVLEVBQUU7UUFDUixXQUFXLEVBQUUsSUFBSSxHQUFHLENBQUM7UUFDckIsWUFBWSxFQUFFLElBQUksR0FBRyxHQUFHO0tBQzNCO0lBQ0QsUUFBUSxFQUFFO1FBQ04sV0FBVyxFQUFFLElBQUksR0FBRyxHQUFHO0tBQzFCO0NBQ0osQ0FBQztBQUVGLE1BQU0sZ0JBQWdCLEdBQUc7SUFDckIsVUFBVSxFQUFFO1FBQ1IsV0FBVyxFQUFFLElBQUksR0FBRyxDQUFDO1FBQ3JCLFlBQVksRUFBRSxJQUFJLEdBQUcsQ0FBQztLQUN6QjtJQUNELFFBQVEsRUFBRTtRQUNOLFdBQVcsRUFBRSxJQUFJLEdBQUcsQ0FBQztLQUN4QjtDQUNKLENBQUM7QUFFRixNQUFNLG9DQUFvQyxHQUFHLENBQUMsS0FBcUIsRUFBRSxPQUFvQixFQUFFLEVBQUU7SUFDekYsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN6QyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUM7SUFDL0csT0FBTyxXQUFXLENBQUM7QUFDdkIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxrQ0FBa0MsR0FBRyxDQUFDLE9BQW9CLEVBQUUsRUFBRTtJQUNoRSxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3pDLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQztJQUMzRyxPQUFPLFdBQVcsQ0FBQztBQUN2QixDQUFDLENBQUM7QUFFRixNQUFNLG9CQUFvQixHQUFHLENBQUMsT0FBb0IsRUFBRSxFQUFFO0lBQ2xELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDO0lBQ2xILE9BQU8sWUFBWSxDQUFDO0FBQ3hCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRztJQUNyQixZQUFZLENBQUMsS0FBcUIsRUFBRSxPQUFvQjtRQUNwRCxNQUFNLFdBQVcsR0FBRyxvQ0FBb0MsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekUsSUFBSSxXQUFXLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ2hDLE9BQU8sQ0FDSCxTQUFTLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQztnQkFDM0Msb0JBQW9CLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEtBQUs7Z0JBQzFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQztnQkFDN0IsT0FBTyxDQUFDLEtBQUs7Z0JBQ2IsV0FBVyxDQUNkLENBQUM7U0FDTDtRQUNELE9BQU8sV0FBVyxHQUFHLE9BQU8sQ0FBQyxLQUFLLEdBQUcsV0FBVyxDQUFDO0lBQ3JELENBQUM7SUFDRCxhQUFhLENBQUMsT0FBb0I7UUFDOUIsTUFBTSxXQUFXLEdBQUcsa0NBQWtDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEUsT0FBTyxXQUFXLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUM7SUFDdEQsQ0FBQztJQUNELGdCQUFnQixDQUFDLEtBQXFCLEVBQUUsT0FBb0I7UUFDeEQsTUFBTSxXQUFXLEdBQUcsb0NBQW9DLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3pFLElBQUksV0FBVyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNoQyxPQUFPLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLEdBQUcsb0JBQW9CLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLEtBQUssR0FBRyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUNuSTthQUFNO1lBQ0gsT0FBTyxXQUFXLENBQUM7U0FDdEI7SUFDTCxDQUFDO0lBQ0QsZUFBZSxDQUFDLE9BQW9CO1FBQ2hDLE1BQU0sV0FBVyxHQUFHLGtDQUFrQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hFLE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxpQkFBaUIsQ0FBQyxLQUFxQixFQUFFLE9BQStCO1FBQ3BFLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QyxNQUFNLFdBQVcsR0FBRyxvQ0FBb0MsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekUsT0FBTyxXQUFXLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQztJQUM5QyxDQUFDO0lBQ0QsZ0JBQWdCLENBQUMsT0FBb0I7UUFDakMsTUFBTSxXQUFXLEdBQUcsa0NBQWtDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEUsT0FBTyxXQUFXLENBQUM7SUFDdkIsQ0FBQztDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCQVNFIH0gZnJvbSAnLi4vY29uc3RhbnRzL2RlZmF1bHQnO1xuaW1wb3J0IHsgUGxhaXRNaW5kIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9lbGVtZW50JztcbmltcG9ydCB7IE1pbmRFbGVtZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9lbGVtZW50JztcbmltcG9ydCB7IFBsYWl0TWluZEJvYXJkIH0gZnJvbSAnLi4vcGx1Z2lucy93aXRoLWV4dGVuZC1taW5kJztcbmltcG9ydCB7IEVtb2ppRGF0YSB9IGZyb20gJy4uL2ludGVyZmFjZXMvZWxlbWVudC1kYXRhJztcbmltcG9ydCB7IGdldEVtb2ppc1dpZHRoSGVpZ2h0IH0gZnJvbSAnLi4vcGx1Z2lucy9lbW9qaS9lbW9qaSc7XG5cbmNvbnN0IE5vZGVEZWZhdWx0U3BhY2UgPSB7XG4gICAgaG9yaXpvbnRhbDoge1xuICAgICAgICBub2RlQW5kVGV4dDogQkFTRSAqIDMsXG4gICAgICAgIGVtb2ppQW5kVGV4dDogQkFTRSAqIDEuNVxuICAgIH0sXG4gICAgdmVydGljYWw6IHtcbiAgICAgICAgbm9kZUFuZFRleHQ6IEJBU0UgKiAxLjVcbiAgICB9XG59O1xuXG5jb25zdCBSb290RGVmYXVsdFNwYWNlID0ge1xuICAgIGhvcml6b250YWw6IHtcbiAgICAgICAgbm9kZUFuZFRleHQ6IEJBU0UgKiA0LFxuICAgICAgICBlbW9qaUFuZFRleHQ6IEJBU0UgKiAyXG4gICAgfSxcbiAgICB2ZXJ0aWNhbDoge1xuICAgICAgICBub2RlQW5kVGV4dDogQkFTRSAqIDJcbiAgICB9XG59O1xuXG5jb25zdCBnZXRIb3Jpem9udGFsU3BhY2VCZXR3ZWVuTm9kZUFuZFRleHQgPSAoYm9hcmQ6IFBsYWl0TWluZEJvYXJkLCBlbGVtZW50OiBNaW5kRWxlbWVudCkgPT4ge1xuICAgIGNvbnN0IGlzTWluZCA9IFBsYWl0TWluZC5pc01pbmQoZWxlbWVudCk7XG4gICAgY29uc3Qgbm9kZUFuZFRleHQgPSBpc01pbmQgPyBSb290RGVmYXVsdFNwYWNlLmhvcml6b250YWwubm9kZUFuZFRleHQgOiBOb2RlRGVmYXVsdFNwYWNlLmhvcml6b250YWwubm9kZUFuZFRleHQ7XG4gICAgcmV0dXJuIG5vZGVBbmRUZXh0O1xufTtcblxuY29uc3QgZ2V0VmVydGljYWxTcGFjZUJldHdlZW5Ob2RlQW5kVGV4dCA9IChlbGVtZW50OiBNaW5kRWxlbWVudCkgPT4ge1xuICAgIGNvbnN0IGlzTWluZCA9IFBsYWl0TWluZC5pc01pbmQoZWxlbWVudCk7XG4gICAgY29uc3Qgbm9kZUFuZFRleHQgPSBpc01pbmQgPyBSb290RGVmYXVsdFNwYWNlLnZlcnRpY2FsLm5vZGVBbmRUZXh0IDogTm9kZURlZmF1bHRTcGFjZS52ZXJ0aWNhbC5ub2RlQW5kVGV4dDtcbiAgICByZXR1cm4gbm9kZUFuZFRleHQ7XG59O1xuXG5jb25zdCBnZXRTcGFjZUVtb2ppQW5kVGV4dCA9IChlbGVtZW50OiBNaW5kRWxlbWVudCkgPT4ge1xuICAgIGNvbnN0IGlzTWluZCA9IFBsYWl0TWluZC5pc01pbmQoZWxlbWVudCk7XG4gICAgY29uc3QgZW1vamlBbmRUZXh0ID0gaXNNaW5kID8gUm9vdERlZmF1bHRTcGFjZS5ob3Jpem9udGFsLmVtb2ppQW5kVGV4dCA6IE5vZGVEZWZhdWx0U3BhY2UuaG9yaXpvbnRhbC5lbW9qaUFuZFRleHQ7XG4gICAgcmV0dXJuIGVtb2ppQW5kVGV4dDtcbn07XG5cbmV4cG9ydCBjb25zdCBOb2RlU3BhY2UgPSB7XG4gICAgZ2V0Tm9kZVdpZHRoKGJvYXJkOiBQbGFpdE1pbmRCb2FyZCwgZWxlbWVudDogTWluZEVsZW1lbnQpIHtcbiAgICAgICAgY29uc3Qgbm9kZUFuZFRleHQgPSBnZXRIb3Jpem9udGFsU3BhY2VCZXR3ZWVuTm9kZUFuZFRleHQoYm9hcmQsIGVsZW1lbnQpO1xuICAgICAgICBpZiAoTWluZEVsZW1lbnQuaGFzRW1vamlzKGVsZW1lbnQpKSB7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIE5vZGVTcGFjZS5nZXRFbW9qaUxlZnRTcGFjZShib2FyZCwgZWxlbWVudCkgK1xuICAgICAgICAgICAgICAgIGdldEVtb2ppc1dpZHRoSGVpZ2h0KGJvYXJkLCBlbGVtZW50KS53aWR0aCArXG4gICAgICAgICAgICAgICAgZ2V0U3BhY2VFbW9qaUFuZFRleHQoZWxlbWVudCkgK1xuICAgICAgICAgICAgICAgIGVsZW1lbnQud2lkdGggK1xuICAgICAgICAgICAgICAgIG5vZGVBbmRUZXh0XG4gICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBub2RlQW5kVGV4dCArIGVsZW1lbnQud2lkdGggKyBub2RlQW5kVGV4dDtcbiAgICB9LFxuICAgIGdldE5vZGVIZWlnaHQoZWxlbWVudDogTWluZEVsZW1lbnQpIHtcbiAgICAgICAgY29uc3Qgbm9kZUFuZFRleHQgPSBnZXRWZXJ0aWNhbFNwYWNlQmV0d2Vlbk5vZGVBbmRUZXh0KGVsZW1lbnQpO1xuICAgICAgICByZXR1cm4gbm9kZUFuZFRleHQgKyBlbGVtZW50LmhlaWdodCArIG5vZGVBbmRUZXh0O1xuICAgIH0sXG4gICAgZ2V0VGV4dExlZnRTcGFjZShib2FyZDogUGxhaXRNaW5kQm9hcmQsIGVsZW1lbnQ6IE1pbmRFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IG5vZGVBbmRUZXh0ID0gZ2V0SG9yaXpvbnRhbFNwYWNlQmV0d2Vlbk5vZGVBbmRUZXh0KGJvYXJkLCBlbGVtZW50KTtcbiAgICAgICAgaWYgKE1pbmRFbGVtZW50Lmhhc0Vtb2ppcyhlbGVtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuIE5vZGVTcGFjZS5nZXRFbW9qaUxlZnRTcGFjZShib2FyZCwgZWxlbWVudCkgKyBnZXRFbW9qaXNXaWR0aEhlaWdodChib2FyZCwgZWxlbWVudCkud2lkdGggKyBnZXRTcGFjZUVtb2ppQW5kVGV4dChlbGVtZW50KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBub2RlQW5kVGV4dDtcbiAgICAgICAgfVxuICAgIH0sXG4gICAgZ2V0VGV4dFRvcFNwYWNlKGVsZW1lbnQ6IE1pbmRFbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IG5vZGVBbmRUZXh0ID0gZ2V0VmVydGljYWxTcGFjZUJldHdlZW5Ob2RlQW5kVGV4dChlbGVtZW50KTtcbiAgICAgICAgcmV0dXJuIG5vZGVBbmRUZXh0O1xuICAgIH0sXG4gICAgZ2V0RW1vamlMZWZ0U3BhY2UoYm9hcmQ6IFBsYWl0TWluZEJvYXJkLCBlbGVtZW50OiBNaW5kRWxlbWVudDxFbW9qaURhdGE+KSB7XG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSBib2FyZC5nZXRNaW5kT3B0aW9ucygpO1xuICAgICAgICBjb25zdCBub2RlQW5kVGV4dCA9IGdldEhvcml6b250YWxTcGFjZUJldHdlZW5Ob2RlQW5kVGV4dChib2FyZCwgZWxlbWVudCk7XG4gICAgICAgIHJldHVybiBub2RlQW5kVGV4dCAtIG9wdGlvbnMuZW1vamlQYWRkaW5nO1xuICAgIH0sXG4gICAgZ2V0RW1vamlUb3BTcGFjZShlbGVtZW50OiBNaW5kRWxlbWVudCkge1xuICAgICAgICBjb25zdCBub2RlQW5kVGV4dCA9IGdldFZlcnRpY2FsU3BhY2VCZXR3ZWVuTm9kZUFuZFRleHQoZWxlbWVudCk7XG4gICAgICAgIHJldHVybiBub2RlQW5kVGV4dDtcbiAgICB9XG59O1xuIl19
@@ -1,6 +0,0 @@
1
- import { ELEMENT_TO_COMPONENT } from '@plait/core';
2
- export function enterNodeEditing(element) {
3
- const component = ELEMENT_TO_COMPONENT.get(element);
4
- component.startEditText(false, false);
5
- }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL21pbmQvc3JjL3V0aWxzL25vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSW5ELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxPQUFvQjtJQUNqRCxNQUFNLFNBQVMsR0FBRyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFzQixDQUFDO0lBQ3pFLFNBQVMsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQzFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTEVNRU5UX1RPX0NPTVBPTkVOVCB9IGZyb20gJ0BwbGFpdC9jb3JlJztcbmltcG9ydCB7IE1pbmRFbGVtZW50IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9lbGVtZW50JztcbmltcG9ydCB7IE1pbmROb2RlQ29tcG9uZW50IH0gZnJvbSAnLi4vbm9kZS5jb21wb25lbnQnO1xuXG5leHBvcnQgZnVuY3Rpb24gZW50ZXJOb2RlRWRpdGluZyhlbGVtZW50OiBNaW5kRWxlbWVudCkge1xuICAgIGNvbnN0IGNvbXBvbmVudCA9IEVMRU1FTlRfVE9fQ09NUE9ORU5ULmdldChlbGVtZW50KSBhcyBNaW5kTm9kZUNvbXBvbmVudDtcbiAgICBjb21wb25lbnQuc3RhcnRFZGl0VGV4dChmYWxzZSwgZmFsc2UpO1xufVxuIl19
@@ -1,11 +0,0 @@
1
- import { PlaitBoard, Point, RectangleClient } from '@plait/core';
2
- import { EmojiData, MindElement } from '../../interfaces';
3
- import { PlaitMindBoard } from '../with-extend-mind';
4
- export declare function getEmojisWidthHeight(board: PlaitMindBoard, element: MindElement<EmojiData>): {
5
- width: number;
6
- height: number;
7
- };
8
- export declare function getEmojiFontSize(element: MindElement<EmojiData>): number;
9
- export declare function getEmojiRectangle(board: PlaitMindBoard, element: MindElement<EmojiData>): RectangleClient;
10
- export declare function getEmojiForeignRectangle(board: PlaitMindBoard, element: MindElement<EmojiData>): RectangleClient;
11
- export declare const isHitEmojis: (board: PlaitBoard, element: MindElement<EmojiData>, point: Point) => boolean;
@@ -1,4 +0,0 @@
1
- import { DetectResult, MindNode } from '../interfaces';
2
- import { PlaitBoard } from '@plait/core';
3
- export declare const directionCorrector: (board: PlaitBoard, node: MindNode, detectResults: DetectResult[]) => DetectResult[] | null;
4
- export declare const getAllowedDirection: (detectResults: DetectResult[], illegalDirections: DetectResult[]) => DetectResult[] | null;
@@ -1,9 +0,0 @@
1
- import { Point } from '@plait/core';
2
- import { DetectResult, MindNode } from '../interfaces';
3
- /**
4
- *
5
- * @param targetNode
6
- * @param centerPoint
7
- * @returns DetectResult[] | null
8
- */
9
- export declare const directionDetector: (targetNode: MindNode, centerPoint: Point) => DetectResult[] | null;
package/utils/dnd.d.ts DELETED
@@ -1,16 +0,0 @@
1
- import { MindElement } from '../interfaces/element';
2
- import { MindNodeComponent } from '../node.component';
3
- import { Path, PlaitBoard } from '@plait/core';
4
- import { MindLayoutType } from '@plait/layouts';
5
- import { DetectResult } from '../interfaces/node';
6
- export declare const isValidTarget: (origin: MindElement, target: MindElement) => boolean;
7
- export declare const addActiveOnDragOrigin: (activeElement: MindElement, isOrigin?: boolean) => void;
8
- export declare const removeActiveOnDragOrigin: (activeElement: MindElement, isOrigin?: boolean) => void;
9
- export declare const updatePathByLayoutAndDropTarget: (targetPath: Path, layout: MindLayoutType, dropTarget: {
10
- target: MindElement;
11
- detectResult: DetectResult;
12
- }) => Path;
13
- export declare const updateRightNodeCount: (board: PlaitBoard, activeComponent: MindNodeComponent, targetComponent: MindNodeComponent, detectResult: DetectResult) => void;
14
- export declare const isDragging: (board: PlaitBoard) => boolean;
15
- export declare const setIsDragging: (board: PlaitBoard, state: boolean) => void;
16
- export declare const updateAbstractInDnd: (board: PlaitBoard, deletableElements: MindElement[], originPath: Path) => void;
@@ -1,42 +0,0 @@
1
- import { DetectResult, MindElement, MindNode } from '../interfaces';
2
- import { MindNodeComponent } from '../node.component';
3
- import { PlaitBoard } from '@plait/core';
4
- import { MindLayoutType } from '@plait/layouts';
5
- export declare const drawPlaceholderDropNodeG: (board: PlaitBoard, dropTarget: {
6
- target: MindElement;
7
- detectResult: DetectResult;
8
- }, fakeDropNodeG: SVGGElement | undefined) => void;
9
- export declare const drawCurvePlaceholderDropNodeG: (board: PlaitBoard, targetRect: {
10
- x: number;
11
- y: number;
12
- width: number;
13
- height: number;
14
- }, detectResult: DetectResult, targetIndex: number, targetComponent: MindNodeComponent, parentComponent: MindNodeComponent, fakeDropNodeG: SVGGElement | undefined) => void;
15
- export declare const drawStraightDropNodeG: (board: PlaitBoard, targetRect: {
16
- x: number;
17
- y: number;
18
- width: number;
19
- height: number;
20
- }, detectResult: DetectResult, targetComponent: MindNodeComponent, fakeDropNodeG: SVGGElement | undefined) => void;
21
- export declare const getHorizontalFakeY: (detectResult: 'top' | 'bottom', targetIndex: number, parentNode: MindNode, targetRect: {
22
- x: number;
23
- y: number;
24
- width: number;
25
- height: number;
26
- }, layout: MindLayoutType, fakeY: number) => number;
27
- export declare const getIndentedFakePoint: (layout: MindLayoutType, pointOptions: {
28
- fakeX: number;
29
- fakeY: number;
30
- x: number;
31
- y: number;
32
- width: number;
33
- height: number;
34
- strokeWidth: number;
35
- }) => {
36
- fakeX: number;
37
- fakeY: number;
38
- };
39
- export declare const drawIndentNodeG: (board: PlaitBoard, fakeDropNodeG: SVGGElement, fakePoint: {
40
- fakeX: number;
41
- fakeY: number;
42
- }, node: MindNode) => void;
@@ -1,9 +0,0 @@
1
- import { DetectResult, MindElement } from '../interfaces';
2
- import { PlaitBoard } from '@plait/core';
3
- export declare const readjustmentDropTarget: (board: PlaitBoard, dropTarget: {
4
- target: MindElement;
5
- detectResult: DetectResult;
6
- }) => {
7
- target: MindElement;
8
- detectResult: DetectResult;
9
- };
package/utils/graph.d.ts DELETED
@@ -1,5 +0,0 @@
1
- import { MindNode } from '../interfaces/node';
2
- import { PlaitBoard, Point, RectangleClient } from '@plait/core';
3
- import { MindElement } from '../interfaces';
4
- export declare function getRectangleByNode(node: MindNode): RectangleClient;
5
- export declare function hitMindElement(board: PlaitBoard, point: Point, element: MindElement): boolean;
File without changes