44c957f893c6bf5f5b7c78301de7b21c5975584d]:
df37366556d46f7abdf82b09e33b08bd94e631b3 Thanks @OliverSpeir! - Allows remark plugins to pass options specifying how images in .mdx files will be optimized53c69dcc82cdf4000aff13a6c11fffe19096cf45, 2f81cffa9da9db0e2802d303f94feaee8d2f54ec, a505190933365268d48139a5f197a3cfb5570870]:
#9706 1539e04a8e5865027b3a8718c6f142885e7c8d88 Thanks @bluwy! - Removes redundant HMR handling code
Updated dependencies [165cfc154be477337037185c32b308616d1ed6fa, e9a72d9a91a3741566866bcaab11172cb0dc7d31]:
e72efd6a9a1e2a70488fd225529617ffd8418534 Thanks @bluwy! - Removes environment variables workaround that broke project builds with sourcemaps1baf0b0d3cbd0564954c2366a7278794fad6726e Thanks @sarah11918! - Updates READMEe83b5095f Thanks @florian-lefebvre! - Upgrades vite to latest#9366 1b4e91898 Thanks @lilnasy! - Updates NPM package to refer to the stable Astro version instead of a beta.
Updated dependencies [270c6cc27]:
abf601233 Thanks @bluwy! - Updates the unified, remark, and rehype dependencies to latest. Make sure to update your custom remark and rehype plugins as well to be compatible with the latest versions.Potentially breaking change: The default value of markdown.remarkRehype.footnoteBackLabel is changed from "Back to content" to "Back to reference 1". See the mdast-util-to-hast commit for more information.
abf601233 Thanks @bluwy! - Updates the unified, remark, and rehype dependencies to latest. Make sure to update your custom remark and rehype plugins as well to be compatible with the latest versions.Potentially breaking change: The default value of markdown.remarkRehype.footnoteBackLabel is changed from "Back to content" to "Back to reference 1". See the mdast-util-to-hast commit for more information.
abf601233, 6201bbe96, cdabf6ef0, addb57c8e, 1c48ed286, 37697a2c5, bd0c2e9ae, c7953645e, 0fe3a7ed5, 710be505c, 153a5abb9]:
#8897 5a3d46da1 Thanks @remcohaszing! - Update the README to suggest that users install the official MDX extension for VS Code.
Updated dependencies [26b77b8fe]:
2993055be, c4270e476, bd5aa1cd3, f369fa250, 391729686, f999365b8, b2ae9ee0c, 0abff97fe, 3bef32f81]:
#8737 6f60da805 Thanks @ematipico! - Add provenance statement when publishing the library from CI
Updated dependencies [21f482657, 6f60da805, d78806dfe, d1c75fe15, aa265d730, 78adbc443, 21e0757ea, 357270f2a]:
a8d72ceae Thanks @bholmesdev! - Support the img component export for optimized images. This allows you to customize how optimized images are styled and rendered.When rendering an optimized image, Astro will pass the ImageMetadata object to your img component as the src prop. For unoptimized images (i.e. images using URLs or absolute paths), Astro will continue to pass the src as a string.
This example handles both cases and applies custom styling:
---
// src/components/MyImage.astro
import type { ImageMetadata } from 'astro';
import { Image } from 'astro:assets';
type Props = {
src: string | ImageMetadata;
alt: string;
};
const { src, alt } = Astro.props;
---
{
typeof src === 'string' ? (
<img class="custom-styles" src={src} alt={alt} />
) : (
<Image class="custom-styles" {src} {alt} />
)
}
<style>
.custom-styles {
border: 1px solid red;
}
</style>
Now, this components can be applied to the img component props object or file export:
import MyImage from '../../components/MyImage.astro';
export const components = { img: MyImage };
# My MDX article
#8533 74dc3edb3 Thanks @bluwy! - Improve MDX rendering performance by sharing processor instance
Updated dependencies [7522bb491, ecc65abbf, 2c4fc878b, d93987824, c92e0acd7, 7522bb491, f95febf96, b85c8a78a, 45364c345]:
#8430 f3f62a5a2 Thanks @bluwy! - Use exported remarkShiki and remarkPrism plugins from @astrojs/markdown-remark
Updated dependencies [f3f62a5a2, f66053a1e, 0fa483283]:
#8438 6df4f3bd9 Thanks @Princesseuh! - Fix errors not having a stacktrace
Updated dependencies [b3cf1b327, b92d066b7]:
#8405 93a1231f1 Thanks @delucis! - Add location data to MDX compile errors
Updated dependencies [7d95bd9ba, 1947ef7a9, 61ad70fdc, d2f2a11cd, 5126c6a40, 48ff7855b, 923a443cb, 8935b3b46]:
#8179 6011d52d3 Thanks @matthewp! - Astro 3.0 Release Candidate
#8131 43140b87a Thanks @matthewp! - Support Astro 3 JSX format
This upgrades the MDX plugin to correctly work with the new JSX render API in Astro 3.
#8188 d0679a666 Thanks @ematipico! - Remove support for Node 16. The lowest supported version by Astro and all integrations is now v18.14.1. As a reminder, Node 16 will be deprecated on the 11th September 2023.
#8169 e79e3779d Thanks @bluwy! - Remove pre-shiki v0.14 theme names for compatibility. Please rename to the new theme names to migrate:
material-darker -> material-theme-darkermaterial-default -> material-themematerial-lighter -> material-theme-lightermaterial-ocean -> material-theme-oceanmaterial-palenight -> material-theme-palenight#8188 84af8ed9d Thanks @ematipico! - Add astro as peer dependency
#8188 84af8ed9d Thanks @ematipico! - Re-orders the MDX plugin to run before Astro's JSX plugin
#8188 32669cd47 Thanks @ematipico! - Handle components exports handling itself
Updated dependencies [d0679a666, db39206cb, adf9fccfd, 0c7b42dc6, 46c4c0e05, 364d861bd, 2484dc408, 81545197a, 6011d52d3, c2c71d90c, cd2d7e769, 80f1494cd, e45f30293, c0de7a7b0, 65c354969, 3c3100851, 34cb20021, a824863ab, 44f7a2872, 1048aca55, be6bbd2c8, 9e021a91c, 7511a4980, c37632a20, acf652fc1, 42785c7b7, 8450379db, dbc97b121, 7d2f311d4, 2540feedb, ea7ff5177, 68efd4a8b, 7bd1b86f8, 036388f66, 519a1c4e8, 1f58a7a1b, 2ae9d37f0, a8f35777e, 70f34f5a3, 5208a3c8f, 84af8ed9d, f003e7364, ffc9e2d3d, 732111cdc, 0f637c71e, 33b8910cf, 8a5b0c1f3, 148e61d24, e79e3779d, 632579dc2, 3674584e0, 1db4e92c1, e7f872e91, 16f09dfff, 4477bb41c, 55c10d1d5, 3e834293d, 96beb883a, 997a0db8a, 80f1494cd, 0f0625504, e1ae56e72, f32d093a2, f01eb585e, b76c166bd, a87cbe400, 866ed4098, 767eb6866, 32669cd47]:
#8169 e79e3779d Thanks @bluwy! - Remove pre-shiki v0.14 theme names for compatibility. Please rename to the new theme names to migrate:
material-darker -> material-theme-darkermaterial-default -> material-themematerial-lighter -> material-theme-lightermaterial-ocean -> material-theme-oceanmaterial-palenight -> material-theme-palenightadf9fccfd, 582132328, 81545197a, 6011d52d3, be6bbd2c8, 42785c7b7, 95120efbe, 2ae9d37f0, f003e7364, 732111cdc, 33b8910cf, e79e3779d, 179796405, a87cbe400, 767eb6866]:
This upgrades the MDX plugin to correctly work with the new JSX render API in Astro 3.
2484dc408, c2c71d90c, 7177f7579, 097a8e4e9, dbc97b121, 2540feedb, ea7ff5177, 68efd4a8b, 0e0fa605d, 5208a3c8f, 8a5b0c1f3, d6b494376, 4477bb41c, 3e834293d, b76c166bd]:
1eae2e3f7 Thanks @Princesseuh! - Remove support for Node 16. The lowest supported version by Astro and all integrations is now v18.14.1. As a reminder, Node 16 will be deprecated on the 11th September 2023.
dfc2d93e3 Thanks @bluwy! - Re-orders the MDX plugin to run before Astro's JSX plugin
631b9c410 Thanks @bluwy! - Handle components exports handling itself
Updated dependencies [1eae2e3f7, 76ddef19c, 9b4f70a62, 3fdf509b2, 2f951cd40, c022a4217, 67becaa58, bc37331d8, dfc2d93e3, 3dc1ca2fa, 1be84dfee, 35f01df79, 3fdf509b2, 78de801f2, 59d6e569f, 7723c4cc9, fb5cd6b56, 631b9c410]:
8034edd9e Thanks @bholmesdev! - Fix [Object AsyncGenerator] appearing in markup for Markdoc documents339529fc8 Thanks @bholmesdev! - Bring back improved style and script handling across content collection files. This addresses bugs found in a previous release to @astrojs/markdoc.#7151 ea16570b1 Thanks @bluwy! - Add optimize option for faster builds and rendering
#7192 7851f9258 Thanks @ematipico! - Detect mdx files using their full extension
#7191 27c6e0182 Thanks @bluwy! - Remove @mdx-js/rollup dependency
57e65d247 Thanks @bholmesdev! - Fix: revert Markdoc asset bleed changes. Production build issues were discovered that deserve a different fix.f558a9e20 Thanks @bholmesdev! - Improve style and script handling across content collection files. This addresses style bleed present in @astrojs/markdoc v0.1.0#7104 826e02890 Thanks @bluwy! - Specify "files" field to only publish necessary files
Updated dependencies [826e02890]:
#6932 49514e4ce Thanks @bluwy! - Upgrade shiki to v0.14.1. This updates the shiki theme colors and adds the theme name to the pre tag, e.g. <pre class="astro-code github-dark">.
Updated dependencies [49514e4ce]:
2511d58d5 Thanks @Princesseuh! - Add support for using optimized and relative images in MDX files with experimental.assetsf882bc163 Thanks @bholmesdev! - Fix sourcemap warnings when using Content Collections and MDX with the vite.build.sourcemap option#6552 392ba3e4d Thanks @bluwy! - Fix integration return type
Updated dependencies [90e5f87d0, f5fddafc2]:
#6494 a13e9d7e3 Thanks @Yan-Thomas! - Consistency improvements to several package descriptions
Updated dependencies [a13e9d7e3]:
694918a56 Thanks @Princesseuh! - Add a new experimental flag (experimental.assets) to enable our new core Assets story.This unlocks a few features:
See Assets (Experimental) on our docs site for more information on how to use this feature!
afbbc4d5b Thanks @Princesseuh! - Updated compilation settings to disable downlevelling for Node 14fec583909 Thanks @bholmesdev! - Introduce the (experimental) @astrojs/markdoc integration. This unlocks Markdoc inside your Content Collections, bringing support for Astro and UI components in your content. This also improves Astro core internals to make Content Collections extensible to more file types in the future.You can install this integration using the astro add command:
astro add markdoc
Read the @astrojs/markdoc documentation for usage instructions, and browse the new with-markdoc starter to try for yourself.
075b87e8b Thanks @RaphaelBossek! - Update to es-module-lexer@1.1.10049fda62 Thanks @bluwy! - Support rehype plugins that inject namespaced attributes. This introduces a breaking change if you use custom components for HTML elements, where the prop passed to the component will be normal HTML casing, e.g. class instead of className, and xlink:href instead of xlinkHref.2ab32b59e Thanks @bholmesdev! - Fix: load syntax highlighters after MDX remark plugins. This keeps MDX consistent with Astro's markdown behavior.#5978 7abb1e905 Thanks @HiDeoo! - Fix MDX heading IDs generation when using a frontmatter reference
Updated dependencies [7abb1e905]:
#5684 a9c292026 Thanks @bholmesdev! - Refine Markdown and MDX configuration options for ease-of-use. & #5769 93e633922 Thanks @bholmesdev! - Introduce a smartypants flag to opt-out of Astro's default SmartyPants plugin.
Markdown
Replace the extendDefaultPlugins option with a gfm boolean and a smartypants boolean. These are enabled by default, and can be disabled to remove GitHub-Flavored Markdown and SmartyPants.
Ensure GitHub-Flavored Markdown and SmartyPants are applied whether or not custom remarkPlugins or rehypePlugins are configured. If you want to apply custom plugins and remove Astro's default plugins, manually set gfm: false and smartypants: false in your config.
Migrate extendDefaultPlugins to gfm and smartypants
You may have disabled Astro's built-in plugins (GitHub-Flavored Markdown and Smartypants) with the extendDefaultPlugins option. This has now been split into 2 flags to disable each plugin individually:
markdown.gfm to disable GitHub-Flavored Markdownmarkdown.smartypants to disable SmartyPants
// astro.config.mjs
import { defineConfig } from 'astro/config';
export default defineConfig({
markdown: {
- extendDefaultPlugins: false,
+ smartypants: false,
+ gfm: false,
}
});
Additionally, applying remark and rehype plugins no longer disables gfm and smartypants. You will need to opt-out manually by setting gfm and smartypants to false.
MDX
Support all Markdown configuration options (except drafts) from your MDX integration config. This includes syntaxHighlighting and shikiConfig options to further customize the MDX renderer.
Simplify extendPlugins to an extendMarkdownConfig option. MDX options will default to their equivalent in your Markdown config. By setting extendMarkdownConfig to false, you can "eject" to set your own syntax highlighting, plugins, and more.
Migrate MDX's extendPlugins to extendMarkdownConfig
You may have used the extendPlugins option to manage plugin defaults in MDX. This has been replaced by 3 flags:
extendMarkdownConfig (true by default) to toggle Markdown config inheritance. This replaces the extendPlugins: 'markdown' option.gfm (true by default) and smartypants (true by default) to toggle GitHub-Flavored Markdown and SmartyPants in MDX. This replaces the extendPlugins: 'defaults' option.#5687 e2019be6f Thanks @bholmesdev! - Give remark and rehype plugins access to user frontmatter via frontmatter injection. This means data.astro.frontmatter is now the complete Markdown or MDX document's frontmatter, rather than an empty object.
This allows plugin authors to modify existing frontmatter, or compute new properties based on other properties. For example, say you want to compute a full image URL based on an imageSrc slug in your document frontmatter:
export function remarkInjectSocialImagePlugin() {
return function (tree, file) {
const { frontmatter } = file.data.astro;
frontmatter.socialImageSrc = new URL(frontmatter.imageSrc, 'https://my-blog.com/').pathname;
};
}
When using Content Collections, you can access this modified frontmatter using the remarkPluginFrontmatter property returned when rendering an entry.
Migration instructions
Plugin authors should now check for user frontmatter when applying defaults.
For example, say a remark plugin wants to apply a default title if none is present. Add a conditional to check if the property is present, and update if none exists:
export function remarkInjectTitlePlugin() {
return function (tree, file) {
const { frontmatter } = file.data.astro;
+ if (!frontmatter.title) {
frontmatter.title = 'Default title';
+ }
}
}
This differs from previous behavior, where a Markdown file's frontmatter would always override frontmatter injected via remark or reype.
#5891 05caf445d Thanks @bholmesdev! - Remove deprecated Markdown APIs from Astro v0.X. This includes getHeaders(), the .astro property for layouts, and the rawContent() and compiledContent() error messages for MDX.
#5782 1f92d64ea Thanks @Princesseuh! - Remove support for Node 14. Minimum supported Node version is now >=16.12.0
#5825 52209ca2a Thanks @bholmesdev! - Baseline the experimental contentCollections flag. You're free to remove this from your astro config!
import { defineConfig } from 'astro/config';
export default defineConfig({
- experimental: { contentCollections: true }
})
#5837 12f65a4d5 Thanks @giuseppelt! - fix shiki css class replace logic
#5741 000d3e694 Thanks @delucis! - Fix broken links in README
Updated dependencies [93e633922, e2019be6f, 1f92d64ea, 12f65a4d5, 16107b6a1, a9c292026, 52209ca2a, 7572f7402]:
52209ca2a`](https://github.com/withastro/astro/commit/52209ca2ad) Thanks [@bholmesdev](https://github.com/bholmesdev)! - Baseline the experimental `contentCollections` flag. You're free to remove this from your astro config!
```diff
import { defineConfig } from 'astro/config';
export default defineConfig({
- experimental: { contentCollections: true }
})
```
### Minor Changes
- [#5782](https://github.com/withastro/astro/pull/5782) [`1f92d64ea`](https://github.com/withastro/astro/commit/1f92d64ea3) Thanks [@Princesseuh](https://github.com/Princesseuh)! - Remove support for Node 14. Minimum supported Node version is now >=16.12.0
### Patch Changes
- [#5837](https://github.com/withastro/astro/pull/5837) [`12f65a4d5`](https://github.com/withastro/astro/commit/12f65a4d55) Thanks [@giuseppelt](https://github.com/giuseppelt)! - fix shiki css class replace logic
- Updated dependencies [[`1f92d64ea`](https://github.com/withastro/astro/commit/1f92d64ea3), [`12f65a4d5`](https://github.com/withastro/astro/commit/12f65a4d55), [`16107b6a1`](https://github.com/withastro/astro/commit/16107b6a10), [`52209ca2a`](https://github.com/withastro/astro/commit/52209ca2ad), [`7572f7402`](https://github.com/withastro/astro/commit/7572f74022)]:
- @astrojs/prism@2.0.0-beta.0
- @astrojs/markdown-remark@2.0.0-beta.2
93e633922`](https://github.com/withastro/astro/commit/93e633922c) Thanks [@bholmesdev](https://github.com/bholmesdev)! - Introduce a `smartypants` flag to opt-out of Astro's default SmartyPants plugin.
```js
{
markdown: {
smartypants: false,
}
}
```
#### Migration
You may have disabled Astro's built-in plugins (GitHub-Flavored Markdown and Smartypants) with the `extendDefaultPlugins` option. This has now been split into 2 flags to disable each plugin individually:
- `markdown.gfm` to disable GitHub-Flavored Markdown
- `markdown.smartypants` to disable SmartyPants
```diff
// astro.config.mjs
import { defineConfig } from 'astro/config';
export default defineConfig({
markdown: {
- extendDefaultPlugins: false,
+ smartypants: false,
+ gfm: false,
}
});
```
### Patch Changes
- [#5741](https://github.com/withastro/astro/pull/5741) [`000d3e694`](https://github.com/withastro/astro/commit/000d3e6940) Thanks [@delucis](https://github.com/delucis)! - Fix broken links in README
- Updated dependencies [[`93e633922`](https://github.com/withastro/astro/commit/93e633922c)]:
- @astrojs/markdown-remark@2.0.0-beta.1
e2019be6f`](https://github.com/withastro/astro/commit/e2019be6ff) Thanks [@bholmesdev](https://github.com/bholmesdev)! - Give remark and rehype plugins access to user frontmatter via frontmatter injection. This means `data.astro.frontmatter` is now the _complete_ Markdown or MDX document's frontmatter, rather than an empty object.
This allows plugin authors to modify existing frontmatter, or compute new properties based on other properties. For example, say you want to compute a full image URL based on an `imageSrc` slug in your document frontmatter:
```ts
export function remarkInjectSocialImagePlugin() {
return function (tree, file) {
const { frontmatter } = file.data.astro;
frontmatter.socialImageSrc = new URL(frontmatter.imageSrc, 'https://my-blog.com/').pathname;
};
}
```
#### Content Collections - new `remarkPluginFrontmatter` property
We have changed _inject_ frontmatter to _modify_ frontmatter in our docs to improve discoverability. This is based on support forum feedback, where "injection" is rarely the term used.
To reflect this, the `injectedFrontmatter` property has been renamed to `remarkPluginFrontmatter`. This should clarify this plugin is still separate from the `data` export Content Collections expose today.
#### Migration instructions
Plugin authors should now **check for user frontmatter when applying defaults.**
For example, say a remark plugin wants to apply a default `title` if none is present. Add a conditional to check if the property is present, and update if none exists:
```diff
export function remarkInjectTitlePlugin() {
return function (tree, file) {
const { frontmatter } = file.data.astro;
+ if (!frontmatter.title) {
frontmatter.title = 'Default title';
+ }
}
}
```
This differs from previous behavior, where a Markdown file's frontmatter would _always_ override frontmatter injected via remark or reype.
- [#5684](https://github.com/withastro/astro/pull/5684) [`a9c292026`](https://github.com/withastro/astro/commit/a9c2920264) Thanks [@bholmesdev](https://github.com/bholmesdev)! - Refine Markdown and MDX configuration options for ease-of-use.
#### Markdown
- **Remove `remark-smartypants`** from Astro's default Markdown plugins.
- **Replace the `extendDefaultPlugins` option** with a simplified `gfm` boolean. This is enabled by default, and can be disabled to remove GitHub-Flavored Markdown.
- Ensure GitHub-Flavored Markdown is applied whether or not custom `remarkPlugins` or `rehypePlugins` are configured. If you want to apply custom plugins _and_ remove GFM, manually set `gfm: false` in your config.
#### MDX
- Support _all_ Markdown configuration options (except `drafts`) from your MDX integration config. This includes `syntaxHighlighting` and `shikiConfig` options to further customize the MDX renderer.
- Simplify `extendDefaults` to an `extendMarkdownConfig` option. MDX options will default to their equivalent in your Markdown config. By setting `extendMarkdownConfig` to false, you can "eject" to set your own syntax highlighting, plugins, and more.
#### Migration
To preserve your existing Markdown and MDX setup, you may need some configuration changes:
##### Smartypants manual installation
[Smartypants](https://github.com/silvenon/remark-smartypants) has been removed from Astro's default setup. If you rely on this plugin, [install `remark-smartypants`](https://github.com/silvenon/remark-smartypants#installing) and apply to your `astro.config.*`:
```diff
// astro.config.mjs
import { defineConfig } from 'astro/config';
+ import smartypants from 'remark-smartypants';
export default defineConfig({
markdown: {
+ remarkPlugins: [smartypants],
}
});
```
##### Migrate `extendDefaultPlugins` to `gfm`
You may have disabled Astro's built-in plugins (GitHub-Flavored Markdown and Smartypants) with the `extendDefaultPlugins` option. Since Smartypants has been removed, this has been renamed to `gfm`.
```diff
// astro.config.mjs
import { defineConfig } from 'astro/config';
export default defineConfig({
markdown: {
- extendDefaultPlugins: false,
+ gfm: false,
}
});
```
Additionally, applying remark and rehype plugins **no longer disables** `gfm`. You will need to opt-out manually by setting `gfm` to `false`.
##### Migrate MDX's `extendPlugins` to `extendMarkdownConfig`
You may have used the `extendPlugins` option to manage plugin defaults in MDX. This has been replaced by 2 flags:
- `extendMarkdownConfig` (`true` by default) to toggle Markdown config inheritance. This replaces the `extendPlugins: 'markdown'` option.
- `gfm` (`true` by default) to toggle GitHub-Flavored Markdown in MDX. This replaces the `extendPlugins: 'defaults'` option.
### Patch Changes
- Updated dependencies [[`e2019be6f`](https://github.com/withastro/astro/commit/e2019be6ff), [`a9c292026`](https://github.com/withastro/astro/commit/a9c2920264)]:
- @astrojs/markdown-remark@2.0.0-beta.0
⚠️ BREAKING CHANGE ⚠️
If you are using a rehype plugin that depends on heading IDs injected by Astro, the IDs will no longer be available when your plugin runs by default.
To inject IDs before your plugins run, import and add the rehypeHeadingIds plugin to your rehypePlugins config:
// astro.config.mjs
+ import { rehypeHeadingIds } from '@astrojs/markdown-remark';
import mdx from '@astrojs/mdx';
export default {
integrations: [mdx()],
markdown: {
rehypePlugins: [
+ rehypeHeadingIds,
otherPluginThatReliesOnHeadingIDs,
],
},
}
#5667 a5ba4af79 Thanks @bholmesdev! - Chore: remove verbose "Now interiting Markdown plugins..." logs
#5648 853081d1c Thanks @bholmesdev! - Prevent relative image paths in src/content/
Updated dependencies [853081d1c, 2c65b433b]:
5ec0f6ed5 Thanks @bholmesdev! - Introduce Content Collections experimental API
#5586 f4ff69a3c Thanks @delucis! - Fix link in MDX integration README
#5570 3f811eb68 Thanks @sarah11918! - Revise README
efc4363e0 Thanks @delucis! - Support use of <Fragment> in MDX files rendered with <Content /> componentdca762cf7 Thanks @bluwy! - Preserve code element node data.meta in properties.metastring for rehype syntax highlighters, like rehype-pretty-code`308e565ad Thanks @bholmesdev! - Support recmaPlugins config option812658ad2 Thanks @bluwy! - Add missing dependencies, support strict dependency installation (e.g. pnpm)#4700 e5f71142e Thanks @bholmesdev! - Document MDXLayoutProps utility type
#4858 58a2dca22 Thanks @bholmesdev! - Correctly parse import.meta.env in MDX files
db38f61b2 Thanks @bholmesdev! - Fix: Add GFM and Smartypants to MDX by default8f8dff4d3 Thanks @bholmesdev! - Introduce new extendPlugins configuration option. This defaults to inheriting all remark and rehype plugins from your markdown config, with options to use either Astro's defaults or no inheritance at all.#4519 a2e8e76c3 Thanks @JuanM04! - Upgraded Shiki to v0.11.1
#4530 8504cd79b Thanks @kylebutts! - Add custom components to README
d4cd7a59f Thanks @bholmesdev! - Update Markdown type signature to match new markdown plugin,and update top-level layout props for better alignmentd4cd7a59f Thanks @bholmesdev! - Update Markdown type signature to match new markdown plugin,and update top-level layout props for better alignment#4443 adb207979 Thanks @bholmesdev! - Fix MDX style imports when layout is not applied
#4428 a2414bf59 Thanks @bholmesdev! - Fix dev server reload performance when globbing from an MDX layout
f1a52c18a Thanks @bholmesdev! - Switch from Shiki Twoslash to Astro's Shiki Markdown highlighterf7afdb889 Thanks @bholmesdev! - Align MD with MDX on layout props and "glob" import results:
Content to MDXfile and url to MDX frontmatter (layout import only)rawContent and compiledContent)24d2f7a6e Thanks @natemoo-re! - Properly handle hydration for namespaced components#4248 869d00935 Thanks @svemat01! - Load builtin rehype plugins before user plugins instead of after
#4255 411612808 Thanks @bholmesdev! - Pass injected frontmatter from remark and rehype plugins to layouts
Updated dependencies [1f0dd31d9]:
9d5ab5508 Thanks @bholmesdev! - Update "Astro.props.content" -> "Astro.props.frontmatter" in README4c2ca5352 Thanks @bholmesdev! - Remove frontmatterOptions from MDX config6c9736cbc Thanks @bholmesdev! - Add frontmatter injection instructions to README2675b8633 Thanks @bholmesdev! - Support frontmatter injection for MD and MDX using remark and rehype plugins#4181 77cede720 Thanks @bholmesdev! - Make collect-headings rehype plugin non-overridable
#4174 8eb3a8c6d Thanks @matthewp! - Allows using React with automatic imports alongside MDX
#4145 c7efcf57e Thanks @FredKSchott! - Fix a missing newline bug when layout was set.
2968ba2b6 Thanks @bholmesdev! - Add headings and frontmatter properties to layout props#4095 40ef43a59 Thanks @bholmesdev! - Add IDs to MDX headings and expose via getHeadings() export
#4114 64432bcb8 Thanks @Princesseuh! - Refactor @astrojs/mdx and @astrojs/markdown-remark to use @astrojs/prism instead of duplicating the code
#4112 e33fc9bc4 Thanks @matthewp! - Fix MDX working with a ts config file
#4049 b60cc0538 Thanks @natemoo-re! - Improve injectScript handling for non-Astro pages
Updated dependencies [64432bcb8]:
1743fe140 Thanks @bholmesdev! - Support "layout" frontmatter property#3977 19433eb4a Thanks @bholmesdev! - Add remarkPlugins and rehypePlugins to config, with the same default plugins as our standard Markdown parser
#4002 3b8a74452 Thanks @bholmesdev! - Support Prism and Shiki syntax highlighting based on project config
#3995 b2b367c96 Thanks @bholmesdev! - Support YAML frontmatter in MDX files
#4050 9ab66c4ba Thanks @FredKSchott! - Add support for injected "page-ssr" scripts
#3981 61fec6304 Thanks @bholmesdev! - Include page url in MDX glob result
b48767985 Thanks @ran-dall! - Rollback supported node@16 version. Minimum versions are now node@14.20.0 or node@16.14.0.1cc5b7890 Thanks @natemoo-re! - Update supported node versions. Minimum versions are now node@14.20.0 or node@16.16.0.b012ee55 Thanks @bholmesdev! - [astro add] Support adapters and third party packages032ad1c0 Thanks @natemoo-re! - Initial release! 🎉