From 3ecefffa8ee202067517d72441e3e127da759e47 Mon Sep 17 00:00:00 2001 From: s-light Date: Tue, 4 Mar 2025 23:27:53 +0100 Subject: [PATCH 1/2] feat: add rendererRenderAsync fixes #3 --- src/index.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/index.ts b/src/index.ts index 4b75430..6c06d61 100644 --- a/src/index.ts +++ b/src/index.ts @@ -74,9 +74,18 @@ export class MarkdownItAsync extends MarkdownIt { } async renderAsync(src: string, env?: any): Promise { + return this.rendererRenderAsync( + this.parse(src, env), + this.options, + env, + ) + } + + async rendererRenderAsync(tokens: Array, options: any, env: any): Promise { this.options.highlight = wrapHightlight(this.options.highlight, this.placeholderMap) this.disableWarn = true - const result = this.render(src, env) + const result = this.renderer.render(tokens, this.options, env) + this.disableWarn = false return replaceAsync(result, placeholderRe, async (match, id) => { if (!this.placeholderMap.has(id)) From ac959ab37b2c9e065bda43673952173c003bdfdd Mon Sep 17 00:00:00 2001 From: Anthony Fu Date: Wed, 5 Mar 2025 12:31:47 +0800 Subject: [PATCH 2/2] chore: update --- src/index.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/index.ts b/src/index.ts index 6c06d61..343202d 100644 --- a/src/index.ts +++ b/src/index.ts @@ -39,6 +39,7 @@ function randStr(): string { } export type MarkdownItAsyncPlaceholderMap = Map, str: string, lang: string, attrs: string]> +export type Token = ReturnType[number] export class MarkdownItAsync extends MarkdownIt { placeholderMap: MarkdownItAsyncPlaceholderMap @@ -81,10 +82,10 @@ export class MarkdownItAsync extends MarkdownIt { ) } - async rendererRenderAsync(tokens: Array, options: any, env: any): Promise { + async rendererRenderAsync(tokens: Token[], options: Options, env: any): Promise { this.options.highlight = wrapHightlight(this.options.highlight, this.placeholderMap) this.disableWarn = true - const result = this.renderer.render(tokens, this.options, env) + const result = this.renderer.render(tokens, options, env) this.disableWarn = false return replaceAsync(result, placeholderRe, async (match, id) => {