diff --git a/src/click-strategy.ts b/src/click-strategy.ts index bf00d86..ab91c91 100644 --- a/src/click-strategy.ts +++ b/src/click-strategy.ts @@ -11,7 +11,12 @@ export class ClickStrategy implements Strategy { element.addEventListener('click', async () => { const node = create() - await this.editor.addNode(node) + const added = await this.editor.addNode(node) + + if (!added) { + console.warn('Node addition prevented:', node) + return + } const viewportCenter = this.getViewportCenter() const view = this.area.nodeViews.get(node.id) diff --git a/src/drop-strategy.ts b/src/drop-strategy.ts index 44e784c..ab59214 100644 --- a/src/drop-strategy.ts +++ b/src/drop-strategy.ts @@ -32,7 +32,12 @@ export class DropStrategy implements Strategy { } private async drop(node: BaseSchemes['Node'], position: Position) { - await this.editor.addNode(node) + const added = await this.editor.addNode(node) + + if (!added) { + console.warn('Node addition prevented:', node) + return + } const view = this.area.nodeViews.get(node.id)