From 79b175aad5b549acd662525490e8096ae0ca8dfd Mon Sep 17 00:00:00 2001 From: Chris Thoburn Date: Fri, 1 Mar 2024 04:19:22 -0800 Subject: [PATCH] chore: when types are private, remove exports entirely for v1 addons --- release/core/publish/steps/generate-tarballs.ts | 8 +++++++- release/utils/package.ts | 5 +++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/release/core/publish/steps/generate-tarballs.ts b/release/core/publish/steps/generate-tarballs.ts index 6db0d03607c..19369a82f2b 100644 --- a/release/core/publish/steps/generate-tarballs.ts +++ b/release/core/publish/steps/generate-tarballs.ts @@ -108,7 +108,13 @@ function scrubTypesFromExports(pkg: Package) { async function makeTypesPrivate(pkg: Package) { // scrub the package.json of any types fields in exports - scrubTypesFromExports(pkg); + // when the types are private, we completely remove the exports field + // to avoid issues with embroider, auto-import and v1 addons + if (pkg.pkgData['ember-addon']?.version === 1) { + delete pkg.pkgData.exports; + } else { + scrubTypesFromExports(pkg); + } // remove @warp-drive/core-types from dependencies and peerDependencies delete pkg.pkgData.dependencies?.['@warp-drive/core-types']; diff --git a/release/utils/package.ts b/release/utils/package.ts index 2917c15ffee..ab77142d5c9 100644 --- a/release/utils/package.ts +++ b/release/utils/package.ts @@ -55,6 +55,11 @@ export type PACKAGEJSON = { scripts?: Record; files?: string[]; exports?: ExportConfig; + 'ember-addon'?: { + main?: 'addon-main.js'; + type?: 'addon'; + version?: 1 | 2; + }; }; export type APPLIED_STRATEGY = {