summaryrefslogtreecommitdiff
path: root/packages/markdown
diff options
context:
space:
mode:
Diffstat (limited to 'packages/markdown')
-rw-r--r--packages/markdown/remark/CHANGELOG.md17
-rw-r--r--packages/markdown/remark/package.json38
-rw-r--r--packages/markdown/remark/src/frontmatter-injection.ts16
-rw-r--r--packages/markdown/remark/src/index.ts43
-rw-r--r--packages/markdown/remark/src/internal.ts6
-rw-r--r--packages/markdown/remark/src/types.ts12
6 files changed, 42 insertions, 90 deletions
diff --git a/packages/markdown/remark/CHANGELOG.md b/packages/markdown/remark/CHANGELOG.md
index 54510d68c..b720f5b5f 100644
--- a/packages/markdown/remark/CHANGELOG.md
+++ b/packages/markdown/remark/CHANGELOG.md
@@ -1,5 +1,22 @@
# @astrojs/markdown-remark
+## 4.0.0-beta.0
+
+### Major Changes
+
+- [#9138](https://github.com/withastro/astro/pull/9138) [`abf601233`](https://github.com/withastro/astro/commit/abf601233f8188d118a8cb063c777478d8d9f1a3) Thanks [@bluwy](https://github.com/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](https://github.com/syntax-tree/mdast-util-to-hast/commit/56c88e45690be138fad9f0bf367b939d09816863) for more information.
+
+- [#9182](https://github.com/withastro/astro/pull/9182) [`c7953645e`](https://github.com/withastro/astro/commit/c7953645eeaaf9e87c6db4494b0023d2c1878ff0) Thanks [@bluwy](https://github.com/bluwy)! - Removes deprecated APIs. All Astro packages had been refactored to not use these APIs.
+
+### Patch Changes
+
+- [#9147](https://github.com/withastro/astro/pull/9147) [`addb57c8e`](https://github.com/withastro/astro/commit/addb57c8e80b7b67ec61224666f3a1db5c44410c) Thanks [@bluwy](https://github.com/bluwy)! - Fixes `RemarkRehype` type's `handler` and `handlers` properties
+
+- Updated dependencies [[`abf601233`](https://github.com/withastro/astro/commit/abf601233f8188d118a8cb063c777478d8d9f1a3), [`6201bbe96`](https://github.com/withastro/astro/commit/6201bbe96c2a083fb201e4a43a9bd88499821a3e), [`cdabf6ef0`](https://github.com/withastro/astro/commit/cdabf6ef02be7220fd2b6bdcef924ceca089381e), [`1c48ed286`](https://github.com/withastro/astro/commit/1c48ed286538ab9e354eca4e4dcd7c6385c96721), [`37697a2c5`](https://github.com/withastro/astro/commit/37697a2c5511572dc29c0a4ea46f90c2f62be8e6), [`bd0c2e9ae`](https://github.com/withastro/astro/commit/bd0c2e9ae3389a9d3085050c1e8134ae98dff299), [`0fe3a7ed5`](https://github.com/withastro/astro/commit/0fe3a7ed5d7bb1a9fce1623e84ba14104b51223c), [`710be505c`](https://github.com/withastro/astro/commit/710be505c9ddf416e77a75343d8cae9c497d72c6), [`153a5abb9`](https://github.com/withastro/astro/commit/153a5abb905042ac68b712514dc9ec387d3e6b17)]:
+ - astro@4.0.0-beta.0
+
## 3.5.0
### Minor Changes
diff --git a/packages/markdown/remark/package.json b/packages/markdown/remark/package.json
index 9f248eb32..15777e10b 100644
--- a/packages/markdown/remark/package.json
+++ b/packages/markdown/remark/package.json
@@ -1,6 +1,6 @@
{
"name": "@astrojs/markdown-remark",
- "version": "3.5.0",
+ "version": "4.0.0-beta.0",
"type": "module",
"author": "withastro",
"license": "MIT",
@@ -28,34 +28,34 @@
"test": "mocha --exit --timeout 20000"
},
"peerDependencies": {
- "astro": "^3.0.0"
+ "astro": "^4.0.0-beta.0"
},
"dependencies": {
"@astrojs/prism": "^3.0.0",
"github-slugger": "^2.0.0",
- "import-meta-resolve": "^3.0.0",
+ "import-meta-resolve": "^4.0.0",
"mdast-util-definitions": "^6.0.0",
- "rehype-raw": "^6.1.1",
- "rehype-stringify": "^9.0.4",
- "remark-gfm": "^3.0.1",
- "remark-parse": "^10.0.2",
- "remark-rehype": "^10.1.0",
+ "rehype-raw": "^7.0.0",
+ "rehype-stringify": "^10.0.0",
+ "remark-gfm": "^4.0.0",
+ "remark-parse": "^11.0.0",
+ "remark-rehype": "^11.0.0",
"remark-smartypants": "^2.0.0",
- "shikiji": "^0.6.8",
- "unified": "^10.1.2",
- "unist-util-visit": "^4.1.2",
- "vfile": "^5.3.7"
+ "shikiji": "^0.6.13",
+ "unified": "^11.0.4",
+ "unist-util-visit": "^5.0.0",
+ "vfile": "^6.0.1"
},
"devDependencies": {
- "@types/chai": "^4.3.5",
- "@types/estree": "^1.0.1",
- "@types/hast": "^2.3.5",
- "@types/mdast": "^3.0.12",
- "@types/mocha": "^10.0.1",
- "@types/unist": "^2.0.7",
+ "@types/chai": "^4.3.10",
+ "@types/estree": "^1.0.5",
+ "@types/hast": "^3.0.3",
+ "@types/mdast": "^4.0.3",
+ "@types/mocha": "^10.0.4",
+ "@types/unist": "^3.0.2",
"astro-scripts": "workspace:*",
"chai": "^4.3.7",
- "mdast-util-mdx-expression": "^1.3.2",
+ "mdast-util-mdx-expression": "^2.0.0",
"mocha": "^10.2.0"
},
"publishConfig": {
diff --git a/packages/markdown/remark/src/frontmatter-injection.ts b/packages/markdown/remark/src/frontmatter-injection.ts
index 4828873fd..91b98ebcb 100644
--- a/packages/markdown/remark/src/frontmatter-injection.ts
+++ b/packages/markdown/remark/src/frontmatter-injection.ts
@@ -32,19 +32,3 @@ export function setVfileFrontmatter(vfile: VFile, frontmatter: Record<string, an
vfile.data.astro ??= {};
(vfile.data.astro as any).frontmatter = frontmatter;
}
-
-/**
- * @deprecated Use `setVfileFrontmatter` instead
- */
-export function toRemarkInitializeAstroData({
- userFrontmatter,
-}: {
- userFrontmatter: Record<string, any>;
-}) {
- return () =>
- function (tree: any, vfile: VFile) {
- if (!vfile.data.astro) {
- vfile.data.astro = { frontmatter: userFrontmatter };
- }
- };
-}
diff --git a/packages/markdown/remark/src/index.ts b/packages/markdown/remark/src/index.ts
index a60ab88c0..143015847 100644
--- a/packages/markdown/remark/src/index.ts
+++ b/packages/markdown/remark/src/index.ts
@@ -1,10 +1,4 @@
-import type {
- AstroMarkdownOptions,
- MarkdownProcessor,
- MarkdownRenderingOptions,
- MarkdownRenderingResult,
- MarkdownVFile,
-} from './types.js';
+import type { AstroMarkdownOptions, MarkdownProcessor, MarkdownVFile } from './types.js';
import {
InvalidAstroDataError,
@@ -35,7 +29,7 @@ export { remarkShiki } from './remark-shiki.js';
export { createShikiHighlighter, replaceCssVariables, type ShikiHighlighter } from './shiki.js';
export * from './types.js';
-export const markdownConfigDefaults: Omit<Required<AstroMarkdownOptions>, 'drafts'> = {
+export const markdownConfigDefaults: Required<AstroMarkdownOptions> = {
syntaxHighlight: 'shiki',
shikiConfig: {
langs: [],
@@ -102,7 +96,7 @@ export async function createMarkdownProcessor(
}
// Remark -> Rehype
- parser.use(remarkRehype as any, {
+ parser.use(remarkRehype, {
allowDangerousHtml: true,
passThrough: [],
...remarkRehypeOptions,
@@ -150,42 +144,11 @@ export async function createMarkdownProcessor(
imagePaths: result.data.imagePaths ?? new Set(),
frontmatter: astroData.frontmatter ?? {},
},
- // Compat for `renderMarkdown` only. Do not use!
- __renderMarkdownCompat: {
- result,
- },
};
},
};
}
-/**
- * Shared utility for rendering markdown
- *
- * @deprecated Use `createMarkdownProcessor` instead for better performance
- */
-export async function renderMarkdown(
- content: string,
- opts: MarkdownRenderingOptions
-): Promise<MarkdownRenderingResult> {
- const processor = await createMarkdownProcessor(opts);
-
- const result = await processor.render(content, {
- fileURL: opts.fileURL,
- frontmatter: opts.frontmatter,
- });
-
- return {
- code: result.code,
- metadata: {
- headings: result.metadata.headings,
- source: content,
- html: result.code,
- },
- vfile: (result as any).__renderMarkdownCompat.result,
- };
-}
-
function prefixError(err: any, prefix: string) {
// If the error is an object with a `message` property, attempt to prefix the message
if (err?.message) {
diff --git a/packages/markdown/remark/src/internal.ts b/packages/markdown/remark/src/internal.ts
index 0ab7e34bb..6201ef62f 100644
--- a/packages/markdown/remark/src/internal.ts
+++ b/packages/markdown/remark/src/internal.ts
@@ -1,5 +1 @@
-export {
- InvalidAstroDataError,
- safelyGetAstroData,
- toRemarkInitializeAstroData,
-} from './frontmatter-injection.js';
+export { InvalidAstroDataError, safelyGetAstroData } from './frontmatter-injection.js';
diff --git a/packages/markdown/remark/src/types.ts b/packages/markdown/remark/src/types.ts
index 7038e2425..ab5af8ed1 100644
--- a/packages/markdown/remark/src/types.ts
+++ b/packages/markdown/remark/src/types.ts
@@ -1,10 +1,6 @@
import type * as hast from 'hast';
import type * as mdast from 'mdast';
-import type {
- one as Handler,
- all as Handlers,
- Options as RemarkRehypeOptions,
-} from 'remark-rehype';
+import type { Options as RemarkRehypeOptions } from 'remark-rehype';
import type {
BuiltinTheme,
LanguageRegistration,
@@ -34,10 +30,7 @@ export type RehypePlugin<PluginParameters extends any[] = any[]> = unified.Plugi
export type RehypePlugins = (string | [string, any] | RehypePlugin | [RehypePlugin, any])[];
-export type RemarkRehype = Omit<RemarkRehypeOptions, 'handlers' | 'unknownHandler'> & {
- handlers?: typeof Handlers;
- handler?: typeof Handler;
-};
+export type RemarkRehype = RemarkRehypeOptions;
export interface ShikiConfig {
langs?: LanguageRegistration[];
@@ -47,7 +40,6 @@ export interface ShikiConfig {
}
export interface AstroMarkdownOptions {
- drafts?: boolean;
syntaxHighlight?: 'shiki' | 'prism' | false;
shikiConfig?: ShikiConfig;
remarkPlugins?: RemarkPlugins;