nuxt / content

The file-based CMS for your Nuxt application, powered by Markdown and Vue components.
https://content.nuxt.com
MIT License
3.13k stars 627 forks source link

Expose remark-rehype options in config #2793

Open JakeIsMeh opened 1 month ago

JakeIsMeh commented 1 month ago

Is your feature request related to a problem? Please describe

I'm trying to configure remark-rehype, particularly for footnotes. parseMarkdown() from @nuxtjs/mdc directly exposes this ability, but looking at src/runtime/transformers/markdown.ts, it seems that I cannot do it because the config object is spread at the top rather than the bottom of the object passed to parseMarkdown() which means it gets overridden: https://github.com/nuxt/content/blob/c769bf87d6d4d9d9c5268aacb57a135217f001ab/src/runtime/transformers/markdown.ts#L29-L44

Additionally, this is not exposed in the module configuration for @nuxt/content which results in a type error when attempting to declare the config.

Describe the solution you'd like

I'd like for something like rehypeOptions to be exposed in the module config that is passed directly to parseMarkdown()

Describe alternatives you've considered

I tried directly configuring @nuxtjs/mdc rather than @nuxt/content but given that it uses parseMarkdown() directly it was never going to work.

Additional context