From 3b76410eea11a44417a5f84a94163dea265d947d Mon Sep 17 00:00:00 2001 From: Ryan Hawkins Date: Mon, 15 Jul 2024 10:41:09 -0600 Subject: [PATCH] spec: fix crystalball map js build why: - Our build is currently broken due to some config additions I made to enable HMR. - We'll only enable the react refresh config in dev when we're not trying to build coverage. flag=none test-plan: - You can run `CRYSTALBALL_MAP=1 yarn build:js` locally without error. - The failing build passes. Change-Id: I89a79d576632a4169239f2ef6115d9bc0c2a5795 Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/352625 Tested-by: Service Cloud Jenkins Reviewed-by: James Butters QA-Review: Ryan Hawkins Product-Review: Ryan Hawkins --- ui-build/webpack/webpack.rules.js | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/ui-build/webpack/webpack.rules.js b/ui-build/webpack/webpack.rules.js index 57747474410..693e5a59cf1 100644 --- a/ui-build/webpack/webpack.rules.js +++ b/ui-build/webpack/webpack.rules.js @@ -139,12 +139,19 @@ exports.swc = [ env: { targets: browserTargets, }, - transform: { - react: { - development: process.env.NODE_ENV === 'development', - refresh: process.env.NODE_ENV === 'development', - }, - }, + // Our coverage plugin gets really upset about the transform field, even + // if it's just react: {development: false, refresh: false}, so we only + // include it in development mode when crystalball is disabled. + ...(process.env.NODE_ENV === 'development' && !isCrystalballEnabled + ? { + transform: { + react: { + development: process.env.NODE_ENV === 'development', + refresh: process.env.NODE_ENV === 'development', + }, + }, + } + : {}), }, }, },