@plait/mind 0.47.0 → 0.48.0
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/node.mjs +1 -1
- package/esm2022/plugins/with-node-dnd.mjs +2 -2
- package/esm2022/queries/get-branch-layouts.mjs +2 -2
- package/esm2022/utils/abstract/common.mjs +2 -2
- package/esm2022/utils/dnd/detector.mjs +4 -9
- package/esm2022/utils/draw/node-link/indented-link.mjs +1 -2
- package/esm2022/utils/draw/node-link/logic-link.mjs +4 -5
- package/esm2022/utils/point-placement.mjs +11 -11
- package/fesm2022/plait-mind.mjs +19 -26
- package/fesm2022/plait-mind.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -46,16 +46,16 @@ export const getLayoutDirection = (node, isHorizontal) => {
|
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
};
|
|
49
|
-
//
|
|
50
|
-
//
|
|
51
|
-
// 1.
|
|
52
|
-
// 2.
|
|
53
|
-
//
|
|
54
|
-
// 1.
|
|
55
|
-
// 2.
|
|
56
|
-
//
|
|
57
|
-
// 1.
|
|
58
|
-
// 2.
|
|
49
|
+
// Based on right
|
|
50
|
+
// Right -> Left:
|
|
51
|
+
// 1. End point -> starting point/start point -> end point
|
|
52
|
+
// 2. Add -> Subtract
|
|
53
|
+
// Horizontal -> Vertical:
|
|
54
|
+
// 1. Starting point/end point -> vertical axis
|
|
55
|
+
// 2. Addition and subtraction -> vertical axis
|
|
56
|
+
// Bottom -> Top:
|
|
57
|
+
// 1. End point -> starting point/end point -> starting point
|
|
58
|
+
// 2. Add -> Subtract
|
|
59
59
|
export const moveXOfPoint = (point, distance, direction = LayoutDirection.right) => {
|
|
60
60
|
if (direction === LayoutDirection.left) {
|
|
61
61
|
return [point[0] - distance, point[1]];
|
|
@@ -116,4 +116,4 @@ export const transformPlacement = (placement, direction) => {
|
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
118
|
};
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnQtcGxhY2VtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvbWluZC9zcmMvdXRpbHMvcG9pbnQtcGxhY2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQWtCLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFN0YsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxNQUF1QixFQUFFLFNBQXlCLEVBQVMsRUFBRTtJQUM3RixJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDakIsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssbUJBQW1CLENBQUMsTUFBTSxFQUFFO1FBQzdDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0tBQ25DO0lBQ0QsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssbUJBQW1CLENBQUMsS0FBSyxFQUFFO1FBQzVDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7S0FDL0I7SUFDRCxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUU7UUFDM0MsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7S0FDcEM7SUFDRCxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUU7UUFDM0MsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztLQUNoQztJQUNELE9B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bUIsQ0FBQyxJQUFJLEVBQUU7WUFDM0MsUUFBUSxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQztTQUNwQztRQUNELElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLG1CQUFtQixDQUFDLEtBQUssRUFBRTtZQUM1QyxRQUFRLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDO1NBQ3ZDO1FBQ0QsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQztRQUMxQixTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDO0tBQzNCO0lBQ0QsUUFBUTtJQUNSLElBQUksU0FBUyxLQUFLLGVBQWUsQ0FBQyxHQUFHLEVBQUU7UUFDbkMsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssaUJBQWlCLENBQUMsTUFBTSxFQUFFO1lBQzNDLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxHQUFHLENBQUM7U0FDeEM7YUFBTSxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDL0MsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztTQUMzQztLQUNKO0FBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9pbnQsIFJlY3RhbmdsZUNsaWVudCB9IGZyb20gJ0BwbGFpdC9jb3JlJztcbmltcG9ydCB7IE1pbmROb2RlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9ub2RlJztcbmltcG9ydCB7IExheW91dERpcmVjdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvbGF5b3V0JztcbmltcG9ydCB7IEhvcml6b250YWxQbGFjZW1lbnQsIFBvaW50UGxhY2VtZW50LCBWZXJ0aWNhbFBsYWNlbWVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMvdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgZ2V0UG9pbnRCeVBsYWNlbWVudCA9IChjbGllbnQ6IFJlY3RhbmdsZUNsaWVudCwgcGxhY2VtZW50OiBQb2ludFBsYWNlbWVudCk6IFBvaW50ID0+IHtcbiAgICBsZXQgeCA9IGNsaWVudC54O1xuICAgIGxldCB5ID0gY2xpZW50Lnk7XG4gICAgaWYgKHBsYWNlbWVudFswXSA9PT0gSG9yaXpvbnRhbFBsYWNlbWVudC5jZW50ZXIpIHtcbiAgICAgICAgeCA9IGNsaWVudC54ICsgY2xpZW50LndpZHRoIC8gMjtcbiAgICB9XG4gICAgaWYgKHBsYWNlbWVudFswXSA9PT0gSG9yaXpvbnRhbFBsYWNlbWVudC5yaWdodCkge1xuICAgICAgICB4ID0gY2xpZW50LnggKyBjbGllbnQud2lkdGg7XG4gICAgfVxuICAgIGlmIChwbGFjZW1lbnRbMV0gPT09IFZlcnRpY2FsUGxhY2VtZW50Lm1pZGRsZSkge1xuICAgICAgICB5ID0gY2xpZW50LnkgKyBjbGllbnQuaGVpZ2h0IC8gMjtcbiAgICB9XG4gICAgaWYgKHBsYWNlbWVudFsxXSA9PT0gVmVydGljYWxQbGFjZW1lbnQuYm90dG9tKSB7XG4gICAgICAgIHkgPSBjbGllbnQueSArIGNsaWVudC5oZWlnaHQ7XG4gICAgfVxuICAgIHJldHVybiBbeCwgeV07XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIFBsYWNlbWVudFJlZiB7XG4gICAgcGxhY2VtZW50OiBQb2ludFBsYWNlbWVudDtcbiAgICBjbGllbnQ6IFJlY3RhbmdsZUNsaWVudDtcbn1cblxuZXhwb3J0IGNvbnN0IGdldFhEaXN0YW5jZUJldHdlZW5Qb2ludCA9IChwb2ludDE6IFBvaW50LCBwb2ludDI6IFBvaW50LCBpc0hvcml6b250YWxMYXlvdXQ6IGJvb2xlYW4pID0+IHtcbiAgICBpZiAoaXNIb3Jpem9udGFsTGF5b3V0KSB7XG4gICAgICAgIHJldHVybiBNYXRoLmFicyhwb2ludDFbMF0gLSBwb2ludDJbMF0pO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBNYXRoLmFicyhwb2ludDFbMV0gLSBwb2ludDJbMV0pO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBnZXRZRGlzdGFuY2VCZXR3ZWVuUG9pbnQgPSAocG9pbnQxOiBQb2ludCwgcG9pbnQyOiBQb2ludCwgaXNIb3Jpem9udGFsTGF5b3V0OiBib29sZWFuKSA9PiB7XG4gICAgZ2V0WERpc3RhbmNlQmV0d2VlblBvaW50KHBvaW50MSwgcG9pbnQyLCAhaXNIb3Jpem9udGFsTGF5b3V0KTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRMYXlvdXREaXJlY3Rpb24gPSAobm9kZTogTWluZE5vZGUsIGlzSG9yaXpvbnRhbDogYm9vbGVhbikgPT4ge1xuICAgIGlmIChpc0hvcml6b250YWwpIHtcbiAgICAgICAgaWYgKG5vZGUubGVmdCkge1xuICAgICAgICAgICAgcmV0dXJuIExheW91dERpcmVjdGlvbi5sZWZ0O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIExheW91dERpcmVjdGlvbi5yaWdodDtcbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChub2RlLnVwKSB7XG4gICAgICAgICAgICByZXR1cm4gTGF5b3V0RGlyZWN0aW9uLnRvcDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBMYXlvdXREaXJlY3Rpb24uYm90dG9tO1xuICAgICAgICB9XG4gICAgfVxufTtcblxuLy8g5Lul5Y+z5Li65Z+65YeGXG4vLyDlj7MgLT4g5bemOlxuLy8gMS4g57uI54K5IC0+IOi1t+eCuS/otbfngrkgLT4g57uI54K5XG4vLyAyLiDliqAgLT4g5YePXG5cbi8vIOawtOW5syAtPiDlnoLnm7Q6XG4vLyAxLiDotbfngrkv57uI54K5IC0+IOe6tei9tFxuLy8gMi4g5Yqg5YePIC0+IOe6tei9tFxuXG4vLyDkuIsgLT4g5LiKOlxuLy8gMS4g57uI54K5IC0+IOi1t+eCuS/nu4jngrkgLT4g6LW354K5XG4vLyAyLiDliqAgLT4g5YePXG5leHBvcnQgY29uc3QgbW92ZVhPZlBvaW50ID0gKHBvaW50OiBQb2ludCwgZGlzdGFuY2U6IG51bWJlciwgZGlyZWN0aW9uOiBMYXlvdXREaXJlY3Rpb24gPSBMYXlvdXREaXJlY3Rpb24ucmlnaHQpOiBQb2ludCA9PiB7XG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gTGF5b3V0RGlyZWN0aW9uLmxlZnQpIHtcbiAgICAgICAgcmV0dXJuIFtwb2ludFswXSAtIGRpc3RhbmNlLCBwb2ludFsxXV07XG4gICAgfVxuICAgIGlmIChkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi5ib3R0b20pIHtcbiAgICAgICAgcmV0dXJuIFtwb2ludFswXSwgcG9pbnRbMV0gKyBkaXN0YW5jZV07XG4gICAgfVxuICAgIGlmIChkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi50b3ApIHtcbiAgICAgICAgcmV0dXJuIFtwb2ludFswXSwgcG9pbnRbMV0gLSBkaXN0YW5jZV07XG4gICAgfVxuICAgIHJldHVybiBbcG9pbnRbMF0gKyBkaXN0YW5jZSwgcG9pbnRbMV1dO1xufTtcblxuZXhwb3J0IGNvbnN0IG1vdmVZT2ZQb2ludCA9IChwb2ludDogUG9pbnQsIGRpc3RhbmNlOiBudW1iZXIsIGRpcmVjdGlvbjogTGF5b3V0RGlyZWN0aW9uID0gTGF5b3V0RGlyZWN0aW9uLnJpZ2h0KTogUG9pbnQgPT4ge1xuICAgIGlmIChkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi5ib3R0b20pIHtcbiAgICAgICAgcmV0dXJuIFtwb2ludFswXSArIGRpc3RhbmNlLCBwb2ludFsxXV07XG4gICAgfVxuICAgIGlmIChkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi50b3ApIHtcbiAgICAgICAgcmV0dXJuIFtwb2ludFswXSArIGRpc3RhbmNlLCBwb2ludFsxXV07XG4gICAgfVxuICAgIHJldHVybiBbcG9pbnRbMF0sIHBvaW50WzFdICsgZGlzdGFuY2VdO1xufTtcblxuZXhwb3J0IGNvbnN0IHRyYW5zZm9ybVBsYWNlbWVudCA9IChwbGFjZW1lbnQ6IFBvaW50UGxhY2VtZW50LCBkaXJlY3Rpb246IExheW91dERpcmVjdGlvbikgPT4ge1xuICAgIC8vIHRvIGxlZnRcbiAgICBpZiAoZGlyZWN0aW9uID09PSBMYXlvdXREaXJlY3Rpb24ubGVmdCkge1xuICAgICAgICBpZiAocGxhY2VtZW50WzBdID09PSBIb3Jpem9udGFsUGxhY2VtZW50LnJpZ2h0KSB7XG4gICAgICAgICAgICBwbGFjZW1lbnRbMF0gPSBIb3Jpem9udGFsUGxhY2VtZW50LmxlZnQ7XG4gICAgICAgIH0gZWxzZSBpZiAocGxhY2VtZW50WzBdID09PSBIb3Jpem9udGFsUGxhY2VtZW50LmxlZnQpIHtcbiAgICAgICAgICAgIHBsYWNlbWVudFswXSA9IEhvcml6b250YWxQbGFjZW1lbnQucmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gdG8gYm90dG9tXG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gTGF5b3V0RGlyZWN0aW9uLmJvdHRvbSB8fCBkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi50b3ApIHtcbiAgICAgICAgbGV0IGhvcml6b250YWwgPSBIb3Jpem9udGFsUGxhY2VtZW50LmNlbnRlcjtcbiAgICAgICAgbGV0IHZlcnRpY2FsID0gVmVydGljYWxQbGFjZW1lbnQubWlkZGxlO1xuICAgICAgICBpZiAocGxhY2VtZW50WzFdID09PSBWZXJ0aWNhbFBsYWNlbWVudC50b3ApIHtcbiAgICAgICAgICAgIGhvcml6b250YWwgPSBIb3Jpem9udGFsUGxhY2VtZW50LmxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHBsYWNlbWVudFsxXSA9PT0gVmVydGljYWxQbGFjZW1lbnQuYm90dG9tKSB7XG4gICAgICAgICAgICBob3Jpem9udGFsID0gSG9yaXpvbnRhbFBsYWNlbWVudC5yaWdodDtcbiAgICAgICAgfVxuICAgICAgICBpZiAocGxhY2VtZW50WzBdID09PSBIb3Jpem9udGFsUGxhY2VtZW50LmxlZnQpIHtcbiAgICAgICAgICAgIHZlcnRpY2FsID0gVmVydGljYWxQbGFjZW1lbnQudG9wO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwbGFjZW1lbnRbMF0gPT09IEhvcml6b250YWxQbGFjZW1lbnQucmlnaHQpIHtcbiAgICAgICAgICAgIHZlcnRpY2FsID0gVmVydGljYWxQbGFjZW1lbnQuYm90dG9tO1xuICAgICAgICB9XG4gICAgICAgIHBsYWNlbWVudFswXSA9IGhvcml6b250YWw7XG4gICAgICAgIHBsYWNlbWVudFsxXSA9IHZlcnRpY2FsO1xuICAgIH1cbiAgICAvLyB0byB1cFxuICAgIGlmIChkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi50b3ApIHtcbiAgICAgICAgaWYgKHBsYWNlbWVudFsxXSA9PT0gVmVydGljYWxQbGFjZW1lbnQuYm90dG9tKSB7XG4gICAgICAgICAgICBwbGFjZW1lbnRbMV0gPSBWZXJ0aWNhbFBsYWNlbWVudC50b3A7XG4gICAgICAgIH0gZWxzZSBpZiAocGxhY2VtZW50WzFdID09PSBWZXJ0aWNhbFBsYWNlbWVudC50b3ApIHtcbiAgICAgICAgICAgIHBsYWNlbWVudFsxXSA9IFZlcnRpY2FsUGxhY2VtZW50LmJvdHRvbTtcbiAgICAgICAgfVxuICAgIH1cbn07XG4iXX0=
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnQtcGxhY2VtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvbWluZC9zcmMvdXRpbHMvcG9pbnQtcGxhY2VtZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQWtCLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFN0YsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxNQUF1QixFQUFFLFNBQXlCLEVBQVMsRUFBRTtJQUM3RixJQUFJLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDakIsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssbUJBQW1CLENBQUMsTUFBTSxFQUFFO1FBQzdDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0tBQ25DO0lBQ0QsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssbUJBQW1CLENBQUMsS0FBSyxFQUFFO1FBQzVDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7S0FDL0I7SUFDRCxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUU7UUFDM0MsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7S0FDcEM7SUFDRCxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUU7UUFDM0MsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztLQUNoQztJQUNELE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDbEIsQ0FBQyxDQUFDO0FBT0YsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxNQUFhLEVBQUUsTUFBYSxFQUFFLGtCQUEyQixFQUFFLEVBQUU7SUFDbEcsSUFBSSxrQkFBa0IsRUFBRTtRQUNwQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzFDO1NBQU07UUFDSCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxNQUFhLEVBQUUsTUFBYSxFQUFFLGtCQUEyQixFQUFFLEVBQUU7SUFDbEcsd0JBQXdCLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFDbEUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxJQUFjLEVBQUUsWUFBcUIsRUFBRSxFQUFFO0lBQ3hFLElBQUksWUFBWSxFQUFFO1FBQ2QsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1gsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDO1NBQy9CO2FBQU07WUFDSCxPQUFPLGVBQWUsQ0FBQyxLQUFLLENBQUM7U0FDaEM7S0FDSjtTQUFNO1FBQ0gsSUFBSSxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ1QsT0FBTyxlQUFlLENBQUMsR0FBRyxDQUFDO1NBQzlCO2FBQU07WUFDSCxPQUFPLGVBQWUsQ0FBQyxNQUFNLENBQUM7U0FDakM7S0FDSjtBQUNMLENBQUMsQ0FBQztBQUVGLGlCQUFpQjtBQUNqQixpQkFBaUI7QUFDakIsMERBQTBEO0FBQzFELHFCQUFxQjtBQUVyQiwwQkFBMEI7QUFDMUIsK0NBQStDO0FBQy9DLCtDQUErQztBQUUvQyxpQkFBaUI7QUFDakIsNkRBQTZEO0FBQzdELHFCQUFxQjtBQUNyQixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxLQUFZLEVBQUUsUUFBZ0IsRUFBRSxZQUE2QixlQUFlLENBQUMsS0FBSyxFQUFTLEVBQUU7SUFDdEgsSUFBSSxTQUFTLEtBQUssZUFBZSxDQUFDLElBQUksRUFBRTtRQUNwQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMxQztJQUNELElBQUksU0FBUyxLQUFLLGVBQWUsQ0FBQyxNQUFNLEVBQUU7UUFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7S0FDMUM7SUFDRCxJQUFJLFNBQVMsS0FBSyxlQUFlLENBQUMsR0FBRyxFQUFFO1FBQ25DLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO0tBQzFDO0lBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDM0MsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsS0FBWSxFQUFFLFFBQWdCLEVBQUUsWUFBNkIsZUFBZSxDQUFDLEtBQUssRUFBUyxFQUFFO0lBQ3RILElBQUksU0FBUyxLQUFLLGVBQWUsQ0FBQyxNQUFNLEVBQUU7UUFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDMUM7SUFDRCxJQUFJLFNBQVMsS0FBSyxlQUFlLENBQUMsR0FBRyxFQUFFO1FBQ25DLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzFDO0lBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7QUFDM0MsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxTQUF5QixFQUFFLFNBQTBCLEVBQUUsRUFBRTtJQUN4RixVQUFVO0lBQ1YsSUFBSSxTQUFTLEtBQUssZUFBZSxDQUFDLElBQUksRUFBRTtRQUNwQyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUU7WUFDNUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQztTQUMzQzthQUFNLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLG1CQUFtQixDQUFDLElBQUksRUFBRTtZQUNsRCxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDO1NBQzVDO0tBQ0o7SUFDRCxZQUFZO0lBQ1osSUFBSSxTQUFTLEtBQUssZUFBZSxDQUFDLE1BQU0sSUFBSSxTQUFTLEtBQUssZUFBZSxDQUFDLEdBQUcsRUFBRTtRQUMzRSxJQUFJLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUM7UUFDNUMsSUFBSSxRQUFRLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDO1FBQ3hDLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUN4QyxVQUFVLEdBQUcsbUJBQW1CLENBQUMsSUFBSSxDQUFDO1NBQ3pDO1FBQ0QsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssaUJBQWlCLENBQUMsTUFBTSxFQUFFO1lBQzNDLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7U0FDMUM7UUFDRCxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUU7WUFDM0MsUUFBUSxHQUFHLGlCQUFpQixDQUFDLEdBQUcsQ0FBQztTQUNwQztRQUNELElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLG1CQUFtQixDQUFDLEtBQUssRUFBRTtZQUM1QyxRQUFRLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDO1NBQ3ZDO1FBQ0QsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQztRQUMxQixTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDO0tBQzNCO0lBQ0QsUUFBUTtJQUNSLElBQUksU0FBUyxLQUFLLGVBQWUsQ0FBQyxHQUFHLEVBQUU7UUFDbkMsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssaUJBQWlCLENBQUMsTUFBTSxFQUFFO1lBQzNDLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxHQUFHLENBQUM7U0FDeEM7YUFBTSxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDL0MsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztTQUMzQztLQUNKO0FBQ0wsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9pbnQsIFJlY3RhbmdsZUNsaWVudCB9IGZyb20gJ0BwbGFpdC9jb3JlJztcbmltcG9ydCB7IE1pbmROb2RlIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9ub2RlJztcbmltcG9ydCB7IExheW91dERpcmVjdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvbGF5b3V0JztcbmltcG9ydCB7IEhvcml6b250YWxQbGFjZW1lbnQsIFBvaW50UGxhY2VtZW50LCBWZXJ0aWNhbFBsYWNlbWVudCB9IGZyb20gJy4uL2ludGVyZmFjZXMvdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgZ2V0UG9pbnRCeVBsYWNlbWVudCA9IChjbGllbnQ6IFJlY3RhbmdsZUNsaWVudCwgcGxhY2VtZW50OiBQb2ludFBsYWNlbWVudCk6IFBvaW50ID0+IHtcbiAgICBsZXQgeCA9IGNsaWVudC54O1xuICAgIGxldCB5ID0gY2xpZW50Lnk7XG4gICAgaWYgKHBsYWNlbWVudFswXSA9PT0gSG9yaXpvbnRhbFBsYWNlbWVudC5jZW50ZXIpIHtcbiAgICAgICAgeCA9IGNsaWVudC54ICsgY2xpZW50LndpZHRoIC8gMjtcbiAgICB9XG4gICAgaWYgKHBsYWNlbWVudFswXSA9PT0gSG9yaXpvbnRhbFBsYWNlbWVudC5yaWdodCkge1xuICAgICAgICB4ID0gY2xpZW50LnggKyBjbGllbnQud2lkdGg7XG4gICAgfVxuICAgIGlmIChwbGFjZW1lbnRbMV0gPT09IFZlcnRpY2FsUGxhY2VtZW50Lm1pZGRsZSkge1xuICAgICAgICB5ID0gY2xpZW50LnkgKyBjbGllbnQuaGVpZ2h0IC8gMjtcbiAgICB9XG4gICAgaWYgKHBsYWNlbWVudFsxXSA9PT0gVmVydGljYWxQbGFjZW1lbnQuYm90dG9tKSB7XG4gICAgICAgIHkgPSBjbGllbnQueSArIGNsaWVudC5oZWlnaHQ7XG4gICAgfVxuICAgIHJldHVybiBbeCwgeV07XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIFBsYWNlbWVudFJlZiB7XG4gICAgcGxhY2VtZW50OiBQb2ludFBsYWNlbWVudDtcbiAgICBjbGllbnQ6IFJlY3RhbmdsZUNsaWVudDtcbn1cblxuZXhwb3J0IGNvbnN0IGdldFhEaXN0YW5jZUJldHdlZW5Qb2ludCA9IChwb2ludDE6IFBvaW50LCBwb2ludDI6IFBvaW50LCBpc0hvcml6b250YWxMYXlvdXQ6IGJvb2xlYW4pID0+IHtcbiAgICBpZiAoaXNIb3Jpem9udGFsTGF5b3V0KSB7XG4gICAgICAgIHJldHVybiBNYXRoLmFicyhwb2ludDFbMF0gLSBwb2ludDJbMF0pO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBNYXRoLmFicyhwb2ludDFbMV0gLSBwb2ludDJbMV0pO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBnZXRZRGlzdGFuY2VCZXR3ZWVuUG9pbnQgPSAocG9pbnQxOiBQb2ludCwgcG9pbnQyOiBQb2ludCwgaXNIb3Jpem9udGFsTGF5b3V0OiBib29sZWFuKSA9PiB7XG4gICAgZ2V0WERpc3RhbmNlQmV0d2VlblBvaW50KHBvaW50MSwgcG9pbnQyLCAhaXNIb3Jpem9udGFsTGF5b3V0KTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRMYXlvdXREaXJlY3Rpb24gPSAobm9kZTogTWluZE5vZGUsIGlzSG9yaXpvbnRhbDogYm9vbGVhbikgPT4ge1xuICAgIGlmIChpc0hvcml6b250YWwpIHtcbiAgICAgICAgaWYgKG5vZGUubGVmdCkge1xuICAgICAgICAgICAgcmV0dXJuIExheW91dERpcmVjdGlvbi5sZWZ0O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIExheW91dERpcmVjdGlvbi5yaWdodDtcbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChub2RlLnVwKSB7XG4gICAgICAgICAgICByZXR1cm4gTGF5b3V0RGlyZWN0aW9uLnRvcDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBMYXlvdXREaXJlY3Rpb24uYm90dG9tO1xuICAgICAgICB9XG4gICAgfVxufTtcblxuLy8gQmFzZWQgb24gcmlnaHRcbi8vIFJpZ2h0IC0+IExlZnQ6XG4vLyAxLiBFbmQgcG9pbnQgLT4gc3RhcnRpbmcgcG9pbnQvc3RhcnQgcG9pbnQgLT4gZW5kIHBvaW50XG4vLyAyLiBBZGQgLT4gU3VidHJhY3RcblxuLy8gSG9yaXpvbnRhbCAtPiBWZXJ0aWNhbDpcbi8vIDEuIFN0YXJ0aW5nIHBvaW50L2VuZCBwb2ludCAtPiB2ZXJ0aWNhbCBheGlzXG4vLyAyLiBBZGRpdGlvbiBhbmQgc3VidHJhY3Rpb24gLT4gdmVydGljYWwgYXhpc1xuXG4vLyBCb3R0b20gLT4gVG9wOlxuLy8gMS4gRW5kIHBvaW50IC0+IHN0YXJ0aW5nIHBvaW50L2VuZCBwb2ludCAtPiBzdGFydGluZyBwb2ludFxuLy8gMi4gQWRkIC0+IFN1YnRyYWN0XG5leHBvcnQgY29uc3QgbW92ZVhPZlBvaW50ID0gKHBvaW50OiBQb2ludCwgZGlzdGFuY2U6IG51bWJlciwgZGlyZWN0aW9uOiBMYXlvdXREaXJlY3Rpb24gPSBMYXlvdXREaXJlY3Rpb24ucmlnaHQpOiBQb2ludCA9PiB7XG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gTGF5b3V0RGlyZWN0aW9uLmxlZnQpIHtcbiAgICAgICAgcmV0dXJuIFtwb2ludFswXSAtIGRpc3RhbmNlLCBwb2ludFsxXV07XG4gICAgfVxuICAgIGlmIChkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi5ib3R0b20pIHtcbiAgICAgICAgcmV0dXJuIFtwb2ludFswXSwgcG9pbnRbMV0gKyBkaXN0YW5jZV07XG4gICAgfVxuICAgIGlmIChkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi50b3ApIHtcbiAgICAgICAgcmV0dXJuIFtwb2ludFswXSwgcG9pbnRbMV0gLSBkaXN0YW5jZV07XG4gICAgfVxuICAgIHJldHVybiBbcG9pbnRbMF0gKyBkaXN0YW5jZSwgcG9pbnRbMV1dO1xufTtcblxuZXhwb3J0IGNvbnN0IG1vdmVZT2ZQb2ludCA9IChwb2ludDogUG9pbnQsIGRpc3RhbmNlOiBudW1iZXIsIGRpcmVjdGlvbjogTGF5b3V0RGlyZWN0aW9uID0gTGF5b3V0RGlyZWN0aW9uLnJpZ2h0KTogUG9pbnQgPT4ge1xuICAgIGlmIChkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi5ib3R0b20pIHtcbiAgICAgICAgcmV0dXJuIFtwb2ludFswXSArIGRpc3RhbmNlLCBwb2ludFsxXV07XG4gICAgfVxuICAgIGlmIChkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi50b3ApIHtcbiAgICAgICAgcmV0dXJuIFtwb2ludFswXSArIGRpc3RhbmNlLCBwb2ludFsxXV07XG4gICAgfVxuICAgIHJldHVybiBbcG9pbnRbMF0sIHBvaW50WzFdICsgZGlzdGFuY2VdO1xufTtcblxuZXhwb3J0IGNvbnN0IHRyYW5zZm9ybVBsYWNlbWVudCA9IChwbGFjZW1lbnQ6IFBvaW50UGxhY2VtZW50LCBkaXJlY3Rpb246IExheW91dERpcmVjdGlvbikgPT4ge1xuICAgIC8vIHRvIGxlZnRcbiAgICBpZiAoZGlyZWN0aW9uID09PSBMYXlvdXREaXJlY3Rpb24ubGVmdCkge1xuICAgICAgICBpZiAocGxhY2VtZW50WzBdID09PSBIb3Jpem9udGFsUGxhY2VtZW50LnJpZ2h0KSB7XG4gICAgICAgICAgICBwbGFjZW1lbnRbMF0gPSBIb3Jpem9udGFsUGxhY2VtZW50LmxlZnQ7XG4gICAgICAgIH0gZWxzZSBpZiAocGxhY2VtZW50WzBdID09PSBIb3Jpem9udGFsUGxhY2VtZW50LmxlZnQpIHtcbiAgICAgICAgICAgIHBsYWNlbWVudFswXSA9IEhvcml6b250YWxQbGFjZW1lbnQucmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gdG8gYm90dG9tXG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gTGF5b3V0RGlyZWN0aW9uLmJvdHRvbSB8fCBkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi50b3ApIHtcbiAgICAgICAgbGV0IGhvcml6b250YWwgPSBIb3Jpem9udGFsUGxhY2VtZW50LmNlbnRlcjtcbiAgICAgICAgbGV0IHZlcnRpY2FsID0gVmVydGljYWxQbGFjZW1lbnQubWlkZGxlO1xuICAgICAgICBpZiAocGxhY2VtZW50WzFdID09PSBWZXJ0aWNhbFBsYWNlbWVudC50b3ApIHtcbiAgICAgICAgICAgIGhvcml6b250YWwgPSBIb3Jpem9udGFsUGxhY2VtZW50LmxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHBsYWNlbWVudFsxXSA9PT0gVmVydGljYWxQbGFjZW1lbnQuYm90dG9tKSB7XG4gICAgICAgICAgICBob3Jpem9udGFsID0gSG9yaXpvbnRhbFBsYWNlbWVudC5yaWdodDtcbiAgICAgICAgfVxuICAgICAgICBpZiAocGxhY2VtZW50WzBdID09PSBIb3Jpem9udGFsUGxhY2VtZW50LmxlZnQpIHtcbiAgICAgICAgICAgIHZlcnRpY2FsID0gVmVydGljYWxQbGFjZW1lbnQudG9wO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwbGFjZW1lbnRbMF0gPT09IEhvcml6b250YWxQbGFjZW1lbnQucmlnaHQpIHtcbiAgICAgICAgICAgIHZlcnRpY2FsID0gVmVydGljYWxQbGFjZW1lbnQuYm90dG9tO1xuICAgICAgICB9XG4gICAgICAgIHBsYWNlbWVudFswXSA9IGhvcml6b250YWw7XG4gICAgICAgIHBsYWNlbWVudFsxXSA9IHZlcnRpY2FsO1xuICAgIH1cbiAgICAvLyB0byB1cFxuICAgIGlmIChkaXJlY3Rpb24gPT09IExheW91dERpcmVjdGlvbi50b3ApIHtcbiAgICAgICAgaWYgKHBsYWNlbWVudFsxXSA9PT0gVmVydGljYWxQbGFjZW1lbnQuYm90dG9tKSB7XG4gICAgICAgICAgICBwbGFjZW1lbnRbMV0gPSBWZXJ0aWNhbFBsYWNlbWVudC50b3A7XG4gICAgICAgIH0gZWxzZSBpZiAocGxhY2VtZW50WzFdID09PSBWZXJ0aWNhbFBsYWNlbWVudC50b3ApIHtcbiAgICAgICAgICAgIHBsYWNlbWVudFsxXSA9IFZlcnRpY2FsUGxhY2VtZW50LmJvdHRvbTtcbiAgICAgICAgfVxuICAgIH1cbn07XG4iXX0=
|
package/fesm2022/plait-mind.mjs
CHANGED
|
@@ -337,7 +337,7 @@ function getRelativeStartEndByAbstractRef(abstractRef, elements) {
|
|
|
337
337
|
return { start, end };
|
|
338
338
|
}
|
|
339
339
|
const insertElementHandleAbstract = (board, path, step = 1,
|
|
340
|
-
|
|
340
|
+
// This distinguishes between dragging and adding to the last node summarized in the abstract node
|
|
341
341
|
isExtendPreviousNode = true, effectedAbstracts = new Map()) => {
|
|
342
342
|
const parent = PlaitNode.parent(board, path);
|
|
343
343
|
const hasPreviousNode = path[path.length - 1] !== 0;
|
|
@@ -1256,7 +1256,7 @@ const directionDetector = (targetNode, centerPoint) => {
|
|
|
1256
1256
|
const left = targetNode.x;
|
|
1257
1257
|
const right = targetNode.x + targetNode.width;
|
|
1258
1258
|
const direction = [];
|
|
1259
|
-
// x
|
|
1259
|
+
// x-axis
|
|
1260
1260
|
if (centerPoint[1] > y && centerPoint[1] < y + height) {
|
|
1261
1261
|
if (centerPoint[0] > left && centerPoint[0] < xCenter) {
|
|
1262
1262
|
direction.push('left');
|
|
@@ -1264,7 +1264,7 @@ const directionDetector = (targetNode, centerPoint) => {
|
|
|
1264
1264
|
if (centerPoint[0] > xCenter && centerPoint[0] < right) {
|
|
1265
1265
|
direction.push('right');
|
|
1266
1266
|
}
|
|
1267
|
-
//
|
|
1267
|
+
// Overlapping area, return in both directions
|
|
1268
1268
|
if ((centerPoint[0] > x && centerPoint[0] < xCenter) || (centerPoint[0] > xCenter && centerPoint[0] < x + width)) {
|
|
1269
1269
|
if (centerPoint[1] < yCenter) {
|
|
1270
1270
|
direction.push('top');
|
|
@@ -1275,7 +1275,7 @@ const directionDetector = (targetNode, centerPoint) => {
|
|
|
1275
1275
|
}
|
|
1276
1276
|
return direction.length ? direction : null;
|
|
1277
1277
|
}
|
|
1278
|
-
// y
|
|
1278
|
+
// y-axis
|
|
1279
1279
|
if (centerPoint[0] > x && centerPoint[0] < x + width) {
|
|
1280
1280
|
if (centerPoint[1] > top && centerPoint[1] < yCenter) {
|
|
1281
1281
|
direction.push('top');
|
|
@@ -1304,17 +1304,14 @@ const getPathByDropTarget = (board, dropTarget) => {
|
|
|
1304
1304
|
? getRootLayout(dropTarget?.target)
|
|
1305
1305
|
: MindQueries.getCorrectLayoutByElement(board, MindElement.getParent(dropTarget?.target));
|
|
1306
1306
|
const children = getNonAbstractChildren(dropTarget.target);
|
|
1307
|
-
// 上下布局:左右是兄弟节点,上下是子节点
|
|
1308
1307
|
if (isVerticalLogicLayout(layout)) {
|
|
1309
1308
|
if (dropTarget.detectResult === 'top' || dropTarget.detectResult === 'bottom') {
|
|
1310
1309
|
targetPath.push(children.length);
|
|
1311
1310
|
}
|
|
1312
|
-
// 如果是左,位置不变,右则插入到下一个兄弟节点
|
|
1313
1311
|
if (dropTarget.detectResult === 'right') {
|
|
1314
1312
|
targetPath = Path.next(targetPath);
|
|
1315
1313
|
}
|
|
1316
1314
|
}
|
|
1317
|
-
// 水平布局/标准布局:上下是兄弟节点,左右是子节点
|
|
1318
1315
|
if (isHorizontalLogicLayout(layout)) {
|
|
1319
1316
|
if (dropTarget.detectResult === 'right') {
|
|
1320
1317
|
if (PlaitMind.isMind(dropTarget?.target) && isStandardLayout(layout)) {
|
|
@@ -1327,12 +1324,10 @@ const getPathByDropTarget = (board, dropTarget) => {
|
|
|
1327
1324
|
if (dropTarget.detectResult === 'left') {
|
|
1328
1325
|
targetPath.push(children.length);
|
|
1329
1326
|
}
|
|
1330
|
-
// 如果是上,位置不变,下插入到下一个兄弟节点
|
|
1331
1327
|
if (dropTarget.detectResult === 'bottom') {
|
|
1332
1328
|
targetPath = Path.next(targetPath);
|
|
1333
1329
|
}
|
|
1334
1330
|
}
|
|
1335
|
-
// 缩进布局:上下是兄弟节点,左右是子节点,但上(左上/右上),探测到上是子节点,下则位置不变,反之同理。
|
|
1336
1331
|
if (isIndentedLayout(layout)) {
|
|
1337
1332
|
if (isTopLayout(layout) && dropTarget.detectResult === 'top') {
|
|
1338
1333
|
targetPath = Path.next(targetPath);
|
|
@@ -1432,16 +1427,16 @@ const getLayoutDirection = (node, isHorizontal) => {
|
|
|
1432
1427
|
}
|
|
1433
1428
|
}
|
|
1434
1429
|
};
|
|
1435
|
-
//
|
|
1436
|
-
//
|
|
1437
|
-
// 1.
|
|
1438
|
-
// 2.
|
|
1439
|
-
//
|
|
1440
|
-
// 1.
|
|
1441
|
-
// 2.
|
|
1442
|
-
//
|
|
1443
|
-
// 1.
|
|
1444
|
-
// 2.
|
|
1430
|
+
// Based on right
|
|
1431
|
+
// Right -> Left:
|
|
1432
|
+
// 1. End point -> starting point/start point -> end point
|
|
1433
|
+
// 2. Add -> Subtract
|
|
1434
|
+
// Horizontal -> Vertical:
|
|
1435
|
+
// 1. Starting point/end point -> vertical axis
|
|
1436
|
+
// 2. Addition and subtraction -> vertical axis
|
|
1437
|
+
// Bottom -> Top:
|
|
1438
|
+
// 1. End point -> starting point/end point -> starting point
|
|
1439
|
+
// 2. Add -> Subtract
|
|
1445
1440
|
const moveXOfPoint = (point, distance, direction = LayoutDirection.right) => {
|
|
1446
1441
|
if (direction === LayoutDirection.left) {
|
|
1447
1442
|
return [point[0] - distance, point[1]];
|
|
@@ -1515,7 +1510,6 @@ function drawIndentedLink(board, node, child, defaultStroke = null, needDrawUnde
|
|
|
1515
1510
|
beginY = isChildUp(node, child) ? beginRectangle.y : beginRectangle.y + beginRectangle.height;
|
|
1516
1511
|
endX = node.left ? endNode.x + endNode.hGap + endRectangle.width : endNode.x + endNode.hGap;
|
|
1517
1512
|
endY = isUnderlineShape ? endNode.y + endNode.height - endNode.vGap : endNode.y + endNode.height / 2;
|
|
1518
|
-
//根据位置,设置正负参数
|
|
1519
1513
|
let plusMinus = isChildUp(node, child) ? (node.left ? [-1, -1] : [1, -1]) : node.left ? [-1, 1] : [1, 1];
|
|
1520
1514
|
let curve = [
|
|
1521
1515
|
[beginX, beginY],
|
|
@@ -1569,12 +1563,11 @@ function drawLogicLink(board, parent, node, isHorizontal, defaultStroke = null,
|
|
|
1569
1563
|
}
|
|
1570
1564
|
let beginPoint = getPointByPlacement(parentClient, beginPlacement);
|
|
1571
1565
|
let endPoint = getPointByPlacement(nodeClient, endPlacement);
|
|
1572
|
-
// ②
|
|
1573
|
-
// 绘制贝塞尔曲线要求,需要增加三个点,正常两个点就可以确定这条直线
|
|
1566
|
+
// ② Determine the convex straight line
|
|
1574
1567
|
const straightLineDistance = 8;
|
|
1575
1568
|
const beginPoint2 = hasStraightLine ? moveXOfPoint(beginPoint, straightLineDistance, linkDirection) : beginPoint;
|
|
1576
1569
|
let straightLine = hasStraightLine ? [beginPoint, beginPoint2, beginPoint2] : [];
|
|
1577
|
-
// ③
|
|
1570
|
+
// ③ Determine the curve
|
|
1578
1571
|
const beginBufferDistance = (parent.hGap + node.hGap) / 3;
|
|
1579
1572
|
const endBufferDistance = -(parent.hGap + node.hGap) / 2.4;
|
|
1580
1573
|
let curve = [
|
|
@@ -1583,7 +1576,7 @@ function drawLogicLink(board, parent, node, isHorizontal, defaultStroke = null,
|
|
|
1583
1576
|
moveXOfPoint(endPoint, endBufferDistance, linkDirection),
|
|
1584
1577
|
endPoint
|
|
1585
1578
|
];
|
|
1586
|
-
// ④
|
|
1579
|
+
// ④ underline shape and horizontal
|
|
1587
1580
|
const underlineEnd = moveXOfPoint(endPoint, nodeClient.width, linkDirection);
|
|
1588
1581
|
const underline = hasUnderlineShape && isHorizontal ? [underlineEnd, underlineEnd, underlineEnd] : [];
|
|
1589
1582
|
const points = pointsOnBezierCurves([...straightLine, ...curve, ...underline]);
|
|
@@ -2047,7 +2040,7 @@ const getCorrectLayoutByElement = (board, element) => {
|
|
|
2047
2040
|
const getBranchLayouts = (board, element) => {
|
|
2048
2041
|
const layouts = [];
|
|
2049
2042
|
if (element.layout) {
|
|
2050
|
-
// TODO: getCorrectLayoutByElement
|
|
2043
|
+
// TODO: getCorrectLayoutByElement Contains recursive operations. getBranchLayouts itself also has recursive operations and needs to be optimized.
|
|
2051
2044
|
layouts.unshift(getCorrectLayoutByElement(board, element));
|
|
2052
2045
|
}
|
|
2053
2046
|
let parent = MindElement.findParent(element);
|
|
@@ -3302,7 +3295,7 @@ const withNodeDnd = (board) => {
|
|
|
3302
3295
|
let insertPath = targetPathRef.current;
|
|
3303
3296
|
const parentPath = Path.parent(targetPathRef.current || targetPath);
|
|
3304
3297
|
if (!insertPath) {
|
|
3305
|
-
|
|
3298
|
+
// When the insertion position and the selected node position are the same, the recorded previousPath is used
|
|
3306
3299
|
const previousPath = targetPreviousPathRef && targetPreviousPathRef.unref();
|
|
3307
3300
|
if (previousPath) {
|
|
3308
3301
|
insertPath = Path.next(previousPath);
|