From 340afa88bc4473749773ca04442aa478b28cd0d7 Mon Sep 17 00:00:00 2001 From: DaiQiangReal Date: Tue, 9 Jul 2024 17:43:09 +0800 Subject: [PATCH] chore: add sourcemap --- gatsby-node.js | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/gatsby-node.js b/gatsby-node.js index 48173b2e19..c85c067680 100644 --- a/gatsby-node.js +++ b/gatsby-node.js @@ -375,8 +375,9 @@ exports.onPostBuild = async () => { (()=>{ const jsFiles = glob.sync(`${publicPath}/*.js`); - + const mapFiles = glob.sync(`${publicPath}/*.map`); const replaceNames = {}; + for (let file of jsFiles) { const filename = path.basename(file); const fileNameWithoutExt = filename.split('.')[0]; @@ -392,6 +393,25 @@ exports.onPostBuild = async () => { fs.renameSync(file, path.join(path.dirname(file), finalFileName)); } } + + for (let file of mapFiles) { + const filename = path.basename(file); + const fileNameWithoutExt = filename.split('.')[0]; + const originHash = fileNameWithoutExt.split('-').at(-1); + + if (originHash && originHash!==fileNameWithoutExt) { + let fileNameWithoutExtWithHash = fileNameWithoutExt.replace(originHash, `${originHash}${numHash}`); + replaceNames[originHash] = `${originHash}${numHash}`; + fs.renameSync(file, path.join(path.dirname(file), `${fileNameWithoutExtWithHash}.js.map`)); + } else { + let finalFileName = `${fileNameWithoutExt}${numHash}.js.map`; + replaceNames[filename] = finalFileName; + fs.renameSync(file, path.join(path.dirname(file), finalFileName)); + } + } + + + const allFiles = glob.sync(`${publicPath}/**/*.{js,html,json}`); for (let file of allFiles) { const stats = fs.statSync(file);