@mdxeditor/editor
Version:
React component for rich text markdown editing
24 lines (23 loc) • 718 B
JavaScript
import { $createCodeBlockNode } from "./CodeBlockNode.js";
import { findCodeBlockDescriptor } from "./findCodeBlockDescriptor.js";
const MdastCodeVisitor = {
testNode: (node, { codeBlockEditorDescriptors, defaultCodeBlockLanguage }) => {
if (node.type === "code") {
const descriptor = findCodeBlockDescriptor(codeBlockEditorDescriptors, node.lang, node.meta, defaultCodeBlockLanguage);
return descriptor !== void 0;
}
return false;
},
visitNode({ mdastNode, actions }) {
actions.addAndStepInto(
$createCodeBlockNode({
code: mdastNode.value,
language: mdastNode.lang ?? "",
meta: mdastNode.meta ?? ""
})
);
}
};
export {
MdastCodeVisitor
};