From 49fe3afd7dd797b0ac859fb171d26ed72cc05e11 Mon Sep 17 00:00:00 2001 From: parbez Date: Thu, 9 Oct 2025 21:38:37 +0530 Subject: [PATCH 1/2] fix: escase regex --- scripts/generateDocs.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/generateDocs.mjs b/scripts/generateDocs.mjs index 973b8095..e355739c 100644 --- a/scripts/generateDocs.mjs +++ b/scripts/generateDocs.mjs @@ -107,7 +107,7 @@ for await (const file of findFilesRecursively('apps/website/content/docs/api')) `title: ${fileHeading?.replaceAll(/-|_|.md/g, ' ').replaceAll(/\b\w/g, (line) => line.toUpperCase()) ?? 'Tagscript Docs'}`, '---', '', - newContent.replace(new RegExp(`^# ${fileHeading}`), '') + newContent.replace(new RegExp(`^# ${fileHeading?.replace(/[$()*+.?[\\\]^{|}]/g, '\\$&')}`), '') ].join('\n') : newContent; From bf1c44c065079aa1683c1fe4bd055f58360308eb Mon Sep 17 00:00:00 2001 From: parbez Date: Thu, 9 Oct 2025 21:41:04 +0530 Subject: [PATCH 2/2] fix: use proper escape --- scripts/generateDocs.mjs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/generateDocs.mjs b/scripts/generateDocs.mjs index e355739c..dc1a8571 100644 --- a/scripts/generateDocs.mjs +++ b/scripts/generateDocs.mjs @@ -24,6 +24,13 @@ async function* findFilesRecursively(path) { } } +/** + * + * @param {string} str + * @returns + */ +const escapeRegex = (str) => str.replaceAll(/[$()*+.?[\\\]^{|}]/g, '\\$&').replaceAll('-', '\\x2d'); + console.log('Generating docs...'); if (process.env.VERCEL_URL) { @@ -107,7 +114,7 @@ for await (const file of findFilesRecursively('apps/website/content/docs/api')) `title: ${fileHeading?.replaceAll(/-|_|.md/g, ' ').replaceAll(/\b\w/g, (line) => line.toUpperCase()) ?? 'Tagscript Docs'}`, '---', '', - newContent.replace(new RegExp(`^# ${fileHeading?.replace(/[$()*+.?[\\\]^{|}]/g, '\\$&')}`), '') + newContent.replace(new RegExp(`^# ${escapeRegex(fileHeading ?? '')}`), '') ].join('\n') : newContent;