From df7862cfa6c961256e4141177634eb75a2a8886f Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Thu, 7 Apr 2022 12:37:57 +0200 Subject: [PATCH] cli: do not apply react-hot-loader transforms for backend development Signed-off-by: Patrik Oldsberg --- .changeset/quick-avocados-sell.md | 5 +++++ packages/cli/src/lib/bundler/config.ts | 2 +- packages/cli/src/lib/bundler/transforms.ts | 5 +++-- 3 files changed, 9 insertions(+), 3 deletions(-) create mode 100644 .changeset/quick-avocados-sell.md diff --git a/.changeset/quick-avocados-sell.md b/.changeset/quick-avocados-sell.md new file mode 100644 index 0000000000..74014dca66 --- /dev/null +++ b/.changeset/quick-avocados-sell.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Fixed a bug were the `react-hot-loader` transform was being applied to backend development builds. diff --git a/packages/cli/src/lib/bundler/config.ts b/packages/cli/src/lib/bundler/config.ts index 575af4ea8b..fb073a25e3 100644 --- a/packages/cli/src/lib/bundler/config.ts +++ b/packages/cli/src/lib/bundler/config.ts @@ -226,7 +226,7 @@ export async function createBackendConfig( // See frontend config const externalPkgs = packages.filter(p => !isChildPath(paths.root, p.dir)); - const { loaders } = transforms(options); + const { loaders } = transforms({ ...options, isBackend: true }); const runScriptNodeArgs = new Array(); if (options.inspectEnabled) { diff --git a/packages/cli/src/lib/bundler/transforms.ts b/packages/cli/src/lib/bundler/transforms.ts index d1d26f383d..a24c24a194 100644 --- a/packages/cli/src/lib/bundler/transforms.ts +++ b/packages/cli/src/lib/bundler/transforms.ts @@ -25,12 +25,13 @@ type Transforms = { type TransformOptions = { isDev: boolean; + isBackend?: boolean; }; export const transforms = (options: TransformOptions): Transforms => { - const { isDev } = options; + const { isDev, isBackend } = options; - const extraTransforms = isDev ? ['react-hot-loader'] : []; + const extraTransforms = isDev && !isBackend ? ['react-hot-loader'] : []; // This ensures that styles inserted from the style-loader and any // async style chunks are always given lower priority than JSS styles.