import { CaretNode, IsErrorNodeTag } from "../node"; import { Token } from "../token"; import { h, VNode } from "../vdom"; export class UnparseableNode extends CaretNode { constructor(public parsed: CaretNode | null, public unparsedTokens: Token[]) { super(); this.addTag(new IsErrorNodeTag()); } static from( parsed: CaretNode | null, unparsedTokens: Token[] ): UnparseableNode { return new UnparseableNode(parsed, unparsedTokens); } toDebugHTML(): string { return '
Unparseable
'; } toDebugMathML(): VNode { return h( "mrow", {}, ...this.unparsedTokens.map((token) => token.renderToDebugMathML()) ); } }