import {
$getRoot,
$isDecoratorNode,
- $isElementNode,
+ $isElementNode, $isRootNode,
$isTextNode,
ElementNode,
LexicalEditor,
import {$createCustomParagraphNode} from "../nodes/custom-paragraph";
import {$generateNodesFromDOM} from "@lexical/html";
import {htmlToDom} from "./dom";
-import {NodeHasAlignment} from "../nodes/_common";
+import {NodeHasAlignment, NodeHasInset} from "../nodes/_common";
import {$findMatchingParent} from "@lexical/utils";
function wrapTextNodes(nodes: LexicalNode[]): LexicalNode[] {
export function $getNearestNodeBlockParent(node: LexicalNode): LexicalNode|null {
const isBlockNode = (node: LexicalNode): boolean => {
- return ($isElementNode(node) || $isDecoratorNode(node)) && !node.isInline();
+ return ($isElementNode(node) || $isDecoratorNode(node)) && !node.isInline() && !$isRootNode(node);
};
if (isBlockNode(node)) {
export function nodeHasAlignment(node: object): node is NodeHasAlignment {
return '__alignment' in node;
+}
+
+export function nodeHasInset(node: object): node is NodeHasInset {
+ return '__inset' in node;
}
\ No newline at end of file