From 59df10590b958bbc39cc2e8c81a2209eda9d431b Mon Sep 17 00:00:00 2001 From: Divyansh Singh <40380293+brc-dd@users.noreply.github.com> Date: Mon, 6 Jun 2022 10:09:48 +0530 Subject: [PATCH] fix: allow lang='ts' on scripts in markdown (#693) (#701) fix #693 --- src/node/markdownToVue.ts | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/node/markdownToVue.ts b/src/node/markdownToVue.ts index 8dca195e..740c3713 100644 --- a/src/node/markdownToVue.ts +++ b/src/node/markdownToVue.ts @@ -162,8 +162,9 @@ export async function createMarkdownToVueRenderFn( } const scriptRE = /<\/script>/ +const scriptLangTsRE = /<\s*script[^>]*\blang=['"]ts['"][^>]*/ const scriptSetupRE = /<\s*script[^>]*\bsetup\b[^>]*/ -const scriptClientRe = /<\s*script[^>]*\bclient\b[^>]*/ +const scriptClientRE = /<\s*script[^>]*\bclient\b[^>]*/ const defaultExportRE = /((?:^|\n|;)\s*)export(\s*)default/ const namedDefaultExportRE = /((?:^|\n|;)\s*)export(.+)as(\s*)default/ @@ -176,10 +177,12 @@ function genPageDataCode(tags: string[], data: PageData) { return ( scriptRE.test(tag) && !scriptSetupRE.test(tag) && - !scriptClientRe.test(tag) + !scriptClientRE.test(tag) ) }) + const isUsingTS = tags.findIndex((tag) => scriptLangTsRE.test(tag)) > -1 + if (existingScriptIndex > -1) { const tagSrc = tags[existingScriptIndex] // user has ` + `` ) }