From 9d5508806b07af47dd9bf489bda91d0fe48059a3 Mon Sep 17 00:00:00 2001 From: Robin Date: Wed, 14 Oct 2026 14:01:52 +0200 Subject: [PATCH 1/2] fix: replace markdown-it internal`TokenClass` with `token.constructor` --- src/syntax/inline-props.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/syntax/inline-props.ts b/src/syntax/inline-props.ts index 822d889..56e504a 100644 --- a/src/syntax/inline-props.ts +++ b/src/syntax/inline-props.ts @@ -1,7 +1,6 @@ import type MarkdownIt from 'markdown-it' import type Renderer from 'markdown-it/lib/renderer.mjs' -import TokenClass from 'markdown-it/lib/token.mjs' import { searchProps } from '../parse/props' export interface MdcInlinePropsOptions { @@ -147,9 +146,9 @@ function wrapRenderInline(renderInline: Renderer['renderInline']): Renderer['ren // If the previous token is a text token, we need to wrap it in a span if (!prev.tag && prev.type === 'text') { - prev = new TokenClass('mdc_inline_span', 'span', 1) + prev = new token.constructor('mdc_inline_span', 'span', 1) tokens.splice(index - 1, 0, prev) - const close = new TokenClass('mdc_inline_span', 'span', -1) + const close = new token.constructor('mdc_inline_span', 'span', -1) tokens.splice(index + 2, 0, close) } // If the previous token is a closing tag, we need to find the matching opening tag From 47c6ed32a2554586de56fbbeab839ba304e11212 Mon Sep 17 00:00:00 2001 From: Farnabaz Date: Fri, 16 Oct 2026 13:03:21 +0200 Subject: [PATCH 2/2] fix: types --- src/syntax/inline-props.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/syntax/inline-props.ts b/src/syntax/inline-props.ts index 56e504a..5aead6c 100644 --- a/src/syntax/inline-props.ts +++ b/src/syntax/inline-props.ts @@ -1,5 +1,6 @@ import type MarkdownIt from 'markdown-it' import type Renderer from 'markdown-it/lib/renderer.mjs' +import type Token from 'markdown-it/lib/token.mjs' import { searchProps } from '../parse/props' @@ -146,9 +147,12 @@ function wrapRenderInline(renderInline: Renderer['renderInline']): Renderer['ren // If the previous token is a text token, we need to wrap it in a span if (!prev.tag && prev.type === 'text') { - prev = new token.constructor('mdc_inline_span', 'span', 1) + // Use the token's own class instead of importing `markdown-it/lib/token.mjs`, + // which markdown-it v15 no longer exposes via its `exports` map. + const TokenCtor = token.constructor as typeof Token + prev = new TokenCtor('mdc_inline_span', 'span', 1) tokens.splice(index - 1, 0, prev) - const close = new token.constructor('mdc_inline_span', 'span', -1) + const close = new TokenCtor('mdc_inline_span', 'span', -1) tokens.splice(index + 2, 0, close) } // If the previous token is a closing tag, we need to find the matching opening tag