Skip to content

Commit

Permalink
fix: cannot create child node
Browse files Browse the repository at this point in the history
  • Loading branch information
Quorafind committed Jan 18, 2024
1 parent 8eb1212 commit dd0d300
Showing 1 changed file with 19 additions and 47 deletions.
66 changes: 19 additions & 47 deletions src/canvasMindMap.ts
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@ export default class CanvasMindMap extends Plugin {
return tempChildNode;
};

const childNode = async (canvas: Canvas, parentNode: any, y: number) => {
const childNode = async (canvas: Canvas, parentNode: CanvasNode, y: number) => {
let tempChildNode = addNode(
canvas, random(16), {
x: parentNode.x + parentNode.width + 200,
Expand Down Expand Up @@ -237,56 +237,28 @@ export default class CanvasMindMap extends Plugin {
if (prevParentEdges.length === 0) {
tempChildNode = await childNode(canvas, parentNode, parentNode.y);
} else {
// const prevAllNodes = [];
// for (let i = 0; i < prevParentEdges?.length; i++) {
// let node = prevParentEdges[i].toNode;
// prevAllNodes.push(node);
// }
//
// if (prevAllNodes.length > 1) {
// prevAllNodes.sort((a: any, b: any) => {
// return a.y - b.y;
// });
// }
// const distanceY = prevAllNodes[prevAllNodes.length - 1]?.y + prevAllNodes[prevAllNodes.length - 1]?.height + 20;
// tempChildNode = await childNode(canvas, parentNode, distanceY);
//
// prevAllNodes.push(tempChildNode);
// prevAllNodes.sort((a: any, b: any) => {
// return a.y - b.y;
// });
//
// // Check if this is a Mindmap
// if (prevAllNodes.length === 1) return;
//
// if (prevAllNodes.length > 1 && prevAllNodes[0].x === prevAllNodes[1]?.x) {
// let preNode;
// wholeHeight = prevAllNodes.length * (parentNode.height + 20);
//
// for (let i = 0; i < prevAllNodes.length; i++) {
// let tempNode;
// if (i === 0) {
// (tempNode = prevAllNodes[i]).moveTo({
// x: tempChildNode.x,
// y: parentNode.y + parentNode.height / 2 - (wholeHeight / 2)
// });
// } else {
// (tempNode = prevAllNodes[i]).moveTo({
// x: tempChildNode.x,
// y: preNode.y + preNode.height + 20
// });
// }
//
// canvas.requestSave();
// preNode = tempNode;
// }
// }
tempChildNode = await siblingNode(canvas, parentNode, prevParentEdges);
}

return tempChildNode;

};

const siblingNode = async (canvas: Canvas, parentNode: CanvasNode, prevParentEdges: CanvasEdgeData[]) => {
const allEdges = canvas.getEdgesForNode(parentNode).filter((item: CanvasEdge) => {
return prevParentEdges.some((edge: CanvasEdgeData) => {
return item.to.node.id === edge.toNode;
});
});

const allNodes = allEdges.map((edge: CanvasEdge) => edge.to.node);
allNodes.sort((a, b) => a.y - b.y);
const lastNode = allNodes[allNodes.length - 1];
canvas.selectOnly(lastNode);
return await createSiblingNode(canvas);

};

const createSiblingNode = async (canvas: Canvas) => {
if (canvas.selection.size !== 1) return;
const selectedNode = canvas.selection.entries().next().value[1];
Expand Down Expand Up @@ -371,8 +343,8 @@ export default class CanvasMindMap extends Plugin {
}, 0);
});

this.scope.register([], "Tab", async () => {

this.scope.register([], "Tab", async (ev: KeyboardEvent) => {
console.log('tab');

const node = await createChildNode(this.canvas);
if (!node) return;
Expand Down

0 comments on commit dd0d300

Please sign in to comment.