From 2d806c0343ae90eb7243e8df3be9bff600ecb88e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20D=C4=9Bdi=C4=8D?= Date: Mon, 25 Dec 2023 19:06:12 +0100 Subject: [PATCH] Fixed list item type disambiguation --- src/syntax-extensions/ListItemExtension.ts | 5 ++++- src/syntax-extensions/TaskListItemExtension.ts | 6 +++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/syntax-extensions/ListItemExtension.ts b/src/syntax-extensions/ListItemExtension.ts index df2ab60c..29b28ed2 100644 --- a/src/syntax-extensions/ListItemExtension.ts +++ b/src/syntax-extensions/ListItemExtension.ts @@ -39,7 +39,10 @@ export class ListItemExtension extends NodeExtension { } public unistToProseMirrorTest(node: UnistNode): boolean { - return node.type === this.unistNodeName() && !("checked" in node); + return ( + node.type === this.unistNodeName() && + (!("checked" in node) || typeof node.checked !== "boolean") + ); } public proseMirrorKeymap( diff --git a/src/syntax-extensions/TaskListItemExtension.ts b/src/syntax-extensions/TaskListItemExtension.ts index befaf330..e127d230 100644 --- a/src/syntax-extensions/TaskListItemExtension.ts +++ b/src/syntax-extensions/TaskListItemExtension.ts @@ -57,7 +57,11 @@ export class TaskListItemExtension extends NodeExtension { } public unistToProseMirrorTest(node: UnistNode): boolean { - return node.type === this.unistNodeName() && "checked" in node; + return ( + node.type === this.unistNodeName() && + "checked" in node && + typeof node.checked === "boolean" + ); } public unistNodeToProseMirrorNodes(