From 6969f79ff08209d8e553a5c0b1714d7eb35a4de8 Mon Sep 17 00:00:00 2001 From: Patrik Oldsberg Date: Mon, 7 Apr 2025 14:58:46 +0200 Subject: [PATCH] cli: fix trailing /* in automatic imports Signed-off-by: Patrik Oldsberg --- .changeset/fluffy-dancers-sneeze.md | 5 +++++ .../modules/build/lib/packager/productionPack.ts | 14 +++++++------- 2 files changed, 12 insertions(+), 7 deletions(-) create mode 100644 .changeset/fluffy-dancers-sneeze.md diff --git a/.changeset/fluffy-dancers-sneeze.md b/.changeset/fluffy-dancers-sneeze.md new file mode 100644 index 0000000000..d9bbfcd680 --- /dev/null +++ b/.changeset/fluffy-dancers-sneeze.md @@ -0,0 +1,5 @@ +--- +'@backstage/cli': patch +--- + +Avoid trailing `/*` when automatically adding imports for package with multiple entry points. diff --git a/packages/cli/src/modules/build/lib/packager/productionPack.ts b/packages/cli/src/modules/build/lib/packager/productionPack.ts index b201d24d0c..000a00cd70 100644 --- a/packages/cli/src/modules/build/lib/packager/productionPack.ts +++ b/packages/cli/src/modules/build/lib/packager/productionPack.ts @@ -166,8 +166,11 @@ async function rewriteEntryPoints( if (!pkg.typesVersions) { pkg.typesVersions = { '*': {} }; } - const mount = entryPoint.name === 'index' ? '*' : entryPoint.name; - pkg.typesVersions['*'][mount] = [`dist/${entryPoint.name}.d.ts`]; + if (entryPoint.name !== 'index') { + pkg.typesVersions['*'][entryPoint.name] = [ + `dist/${entryPoint.name}.d.ts`, + ]; + } } exp.default = exp.require ?? exp.import; @@ -217,12 +220,9 @@ async function rewriteEntryPoints( } } - // Clean up the typesVersions field if it only contains a wildcard + // Make sure package.json is also available in typesVersions if present if (pkg.typesVersions?.['*']) { - const keys = Object.keys(pkg.typesVersions['*']); - if (keys.length === 1 && keys[0] === '*') { - delete pkg.typesVersions; - } + pkg.typesVersions['*']['package.json'] = ['package.json']; } if (pkg.exports) {