Ben Holmes
6c9736cbc9
[MDX] Add frontmatter injection to README ( #4205 )
...
* docs: remove `remark-mdx-frontmatter` from README
* docs: remove remark-mdx-frontmatter link
* docs: MDX frontmatter injection
* chore: changeset
2022-08-08 17:16:06 -04:00
Sarah Rainsberger
9894b3dcde
remove details tags from integration READMEs ( #4198 )
2022-08-08 12:07:38 -05:00
Ben Holmes
77cede720b
[MDX] Prevent overriding collect-headings
plugin ( #4181 )
...
* fix: make rehypeCollectHeadings a required plugin
* docs: update README on rehypePlugins
* test: remove collect-headings override test
* docs: remove extends from rehype docs
* chore: changeset
2022-08-05 20:51:38 -07:00
Ben Holmes
40ef43a59b
[MDX] Add getHeadings
+ generate anchor links ( #4095 )
...
* deps: mdx github-slugger
* feat: add getHeadings via rehype plugin
* chore: stray console.log
* test: getHeadings w/ & w/0 JSX expressions
* docs: add generated exports
* refactor: pass headings using vfile.data
* deps: vfile
* test: heading anchor IDs
* docs: add collect-headings to default rehype plugins
* chore: changeset
* deps: estree-util-value-to-estree
* refactor: inject getHeadings export the right way!
* deps: switch to acorn
* refactor: just use acorn
* docs: `getHeadings` info structuring
Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
* docs: clarify `url` example
Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
* fix: move slugger inside plugin call
* refactor: cleanup code reassignment
* chore: lint
* deps: mdast-util-mdx, test utils
* refactor: add jsToTreeNode util
* feat: expose utils for lib authors
* test: rehype plugins w/ and w/o extends
* test: fixture
* refactor: remove utils from package exports
Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
2022-08-01 17:23:56 -04:00
Ben Holmes
1743fe140e
feat: support layout
in MDX frontmatter ( #4088 )
...
* deps: add gray-matter
* feat: support layout frontmatter property
* test: frontmatter, content prop
* docs: update layout recommendation
* deps: fix lockfile
* chore: changeset
* fix: inherit rollup plugin transform
* fix: avoid parsing frontmatter on custom parsers
* fix: match YAML err handling from md
* docs: absolute url to docs
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* chore: formatting
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2022-07-29 11:22:57 -04:00
Sarah Rainsberger
6fb95dbdd6
[docs content] MDX layouts ( #4077 )
2022-07-28 10:06:23 -03:00
Ben Holmes
3b8a744524
[MDX] Add Prism and Shiki support ( #4002 )
...
* deps: add rehype-prism, shiki, rehype-pretty-code
* wip: apply rehype plugins depending on config
* wip: cherry-pick jsx-runtime fix?
* deps: rehype-pretty-code -> shiki-twoslash, add rehype-raw
* wip: add jsx-runtime fix
* feat: get shiki working!
* deps: add @astrojs/prism, prismjs, unist-util-visit
* feat: add prism support
* example: add small syntax highlight demo to with-mdx
* deps: remove rehype-prism
* chore: remove unused async
* chore: add .test.js to all mdx tests
* test: shiki, shikiConfig, prism
* fix: remove "is:raw" from prism output
* docs: add syntax highlighting section
* chore: add changeset
* nit: "Shiki config" -> Shiki config
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* Revert "wip: add jsx-runtime fix"
This reverts commit 07f4528f44
.
* docs: link to integration README from example
Co-authored-by: Nate Moore <nate@astro.build>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2022-07-21 16:43:58 -04:00
Ben Holmes
b2b367c969
[MDX] Support YAML frontmatter ( #3995 )
...
* chore: remove old comment
* deps: add remark-frontmatter
* deps: add remark-mdx-frontmatter
* fix: handle null or undefined frontmatter key
* feat: configure frontmatter plugins with defaults
* test: frontmatter and custom frontmatter name
* docs: add frontmatterOptions config
* docs: add "variables" and "frontmatter" docs
* chore: excessible -> accessible
* chore: changeset
* chore: remove bad mdx comment
2022-07-20 21:34:21 -04:00
Ben Holmes
19433eb4a4
[MDX] Support remark and rehype plugins, with defaults ( #3977 )
...
* feaet: allow remark and rehype plugin config
* deps: add remark-gfm, remark-smartypants
* feat: add gfm and smartypants by default
* test: add GFM and remark plugin tests
* feat: preserve default plugins with "extends"
* docs: add remarkPlugins
* docs: add rehypePlugins
* chore: changeset
* fix: remove skip from mdx tests
* chore: dup hyperlink flavor text
* chore: authGen -> autoGen
* nit: markdown -> Markdown
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
* nit: markdown -> Markdown 1
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
* nit: markdown -> Markdown 2
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
* nit: markdown -> Markdown 3
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
* nit: markdown -> Markdown 4
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2022-07-20 14:14:23 -04:00
Chris Swithinbank
bf5d1cc1e7
More integration README fixes ( #3885 )
...
* Integration README fixes
* More tweaks (mostly code backticks for filenames)
* Update changeset
* Few more tweaks
* Make sure code blocks all have a code language
* Use URLs of new docs pages for package homepage
* One more stray `<br>` 👢
* Standardise to `sh` instead of `shell`
2022-07-11 21:10:34 +02:00
Nate Moore
032ad1c047
MDX support ( #3706 )
...
* feat: first pass at MDX support
* fix: move built-in JSX renderer to come first
* chore: remove jsx example
* chore: update lockfile
* chore: cleanup example
* fix: missing deps
* refactor: move component render logic to `renderPage`
* chore: update HMR script
* chore: update MDX example
* refactor: prefer unshit
* refactor: remove TODO comment
* fix: remove duplicate identifier
* refactor: cleanup mdx entrypoint
* fix: better html handling
* fix: add tsconfig to mdx package
* chore: update lockfile
* fix: do not sort plugins unless mdx is enabled
* chore: update compiler
* fix(hmr): maybe render head for non-Astro pages
* fix: set initial pageExtensions
* refactor: cleanup addPageExtension
* refactor: remove addPageExtensions from types
* refactor: expose HookParameters type
* fix: only default to astro for MDX
* test: pick up jsx support in test fixtures
* refactor: simplify mdx entrypoint
* test: add basic MDX tests
* test(e2e): add mdx + framework tests
* chore: update lockfile
* test(e2e): fix preact mdx e2e test
* fix(mdx): disable .md support
* test(e2e): fix vue-component test missing mdx
* test(e2e): fix solid component needing import
* fix: allow `client:only="solid"` as an alias to `solid-js`
* chore: move to with-mdx example
* chore: update MDX readme
* chore: update example readme
* chore: bump astro version
* chore: update lockfile
* Update mod.d.ts
* feat: support `export const components` in MDX pages
* chore: update mdx example
* fix: update jsx-runtime with better slot support
* refactor: remove object style support
* chore: cleanup package exports
* chore: add todo comment
* refactor: improve isPage function, move to utils
* refactor: dry up manual HMR updates
* chore: add dev tests for MDX
* chore: prefer set to array
* chore: add changesets
* fix(hmr): flip public/private route
Co-authored-by: Nate Moore <nate@astro.build>
2022-06-30 13:09:09 -05:00