very-small-parser
Version:
A very small Markdown, HTML, and CSS parser.
14 lines (13 loc) • 368 B
JavaScript
export const toHast = (node) => {
if (typeof node === 'string')
return { type: 'text', value: node };
const [tag, properties, ...children] = node;
const element = {
type: 'element',
tagName: tag + '',
children: children.map(toHast),
};
if (properties)
element.properties = properties;
return element;
};