diff --git a/.changeset/lucky-paws-shop.md b/.changeset/lucky-paws-shop.md new file mode 100644 index 000000000..712e93f2c --- /dev/null +++ b/.changeset/lucky-paws-shop.md @@ -0,0 +1,5 @@ +--- +'@callstack/repack': patch +--- + +Disable package imports by default diff --git a/packages/repack/src/utils/getResolveOptions.ts b/packages/repack/src/utils/getResolveOptions.ts index 77f0e155e..401fcf2e1 100644 --- a/packages/repack/src/utils/getResolveOptions.ts +++ b/packages/repack/src/utils/getResolveOptions.ts @@ -55,6 +55,7 @@ export function getResolveOptions(platform: string, options?: ResolveOptions) { let conditionNames: string[]; let exportsFields: string[]; + let importsFields: string[]; if (enablePackageExports) { /** @@ -79,6 +80,11 @@ export function getResolveOptions(platform: string, options?: ResolveOptions) { }); } + /** + * Disable importsFields completely since it's not supported by metro at all. + */ + importsFields = []; + /** * Match what React Native uses from metro-config. * Usage of 'extensionAlias' removes the need for @@ -125,5 +131,9 @@ export function getResolveOptions(platform: string, options?: ResolveOptions) { * Reference: Webpack's [configuration.resolve.extensionAlias](https://webpack.js.org/configuration/resolve/#resolveextensionalias) */ extensionAlias: extensionAlias, + /** + * Reference: Webpack's [configuration.resolve.importsFields](https://webpack.js.org/configuration/resolve/#resolveimportsfields) + */ + importsFields: importsFields, }; }