@nuxtjs/mdc
Version:
Nuxt MDC module
22 lines (21 loc) • 712 B
JavaScript
export default function inlineCode(state, node) {
const language = node.attributes?.language || node.attributes?.lang;
const text = { type: "text", value: node.value.replace(/\r?\n|\r/g, " ") };
state.patch(node, text);
const result = {
type: "element",
tagName: "code",
properties: node.attributes || {},
children: [text]
};
const classes = (result.properties.class || "").split(" ");
delete result.properties.class;
if (language) {
result.properties.language = language;
delete result.properties.lang;
classes.push("language-" + language);
}
result.properties.className = classes.join(" ");
state.patch(node, result);
return state.applyData(node, result);
}