dumi-plugin-color-chunk
Version:
Dumi Plugin - Beautify inline color blocks
22 lines • 776 B
JavaScript
import { unistUtilVisit } from 'dumi';
import { VALID_COLOR_CHUNK } from "./remarkPlugin";
function rehypePlugin() {
return function (tree) {
unistUtilVisit.visit(tree, 'element', function (node, index, parent) {
var _node$properties;
if (node.tagName === 'code' && (_node$properties = node.properties) !== null && _node$properties !== void 0 && _node$properties[VALID_COLOR_CHUNK]) {
parent.children.splice(index, 1, {
type: 'element',
tagName: 'ColorChunk',
JSXAttributes: [{
type: 'JSXAttribute',
name: 'value',
value: JSON.stringify(node.properties[VALID_COLOR_CHUNK])
}],
children: node.children
});
}
});
};
}
export default rehypePlugin;