gatsby-plugin-mdx-v1
Version:
MDX integration for Gatsby (MDX v1)
20 lines (17 loc) • 571 B
JavaScript
const mdx = require(`@mdx-js/mdx`)
const grayMatter = require(`gray-matter`)
/**
* Converts MDX to JSX, including converting classic frontmatter to an
* exported variable.
*
* @param {String} source MDX source
* @param {Object} options options for mdx library
* @return {String} JSX source
*/
module.exports = async function mdxToJsx(source, options = {}) {
const { data, content } = grayMatter(source, options)
const code = await mdx(content, options)
return `${code}
export const _frontmatter = ${JSON.stringify(data)};
`
}