diff --git a/src/compiler/bundle/bundle-output.ts b/src/compiler/bundle/bundle-output.ts index 51df8bc211e..6decb7c5aa2 100644 --- a/src/compiler/bundle/bundle-output.ts +++ b/src/compiler/bundle/bundle-output.ts @@ -59,10 +59,11 @@ export const getRollupOptions = ( ): RollupOptions => { const nodeResolvePlugin = rollupNodeResolvePlugin({ mainFields: ['collection:main', 'jsnext:main', 'es2017', 'es2015', 'module', 'main'], - browser: true, + browser: bundleOpts.platform !== 'hydrate', rootDir: config.rootDir, - ...(config.nodeResolve as any), + exportConditions: ['default', 'module', 'import', 'require'], extensions: ['.tsx', '.ts', '.mts', '.cts', '.js', '.mjs', '.cjs', '.json', '.d.ts', '.d.mts', '.d.cts'], + ...config.nodeResolve, }); // @ts-expect-error - this is required now. diff --git a/src/declarations/stencil-public-compiler.ts b/src/declarations/stencil-public-compiler.ts index f6e7b5fb200..2db65a59c93 100644 --- a/src/declarations/stencil-public-compiler.ts +++ b/src/declarations/stencil-public-compiler.ts @@ -1772,15 +1772,19 @@ export interface BundlingConfig { } export interface NodeResolveConfig { - module?: boolean; - jsnext?: boolean; - main?: boolean; + exportConditions?: string[]; browser?: boolean; - extensions?: string[]; - preferBuiltins?: boolean; + moduleDirectories?: string[]; + modulePaths?: string[]; + dedupe?: string[] | ((importee: string) => boolean); + extensions?: readonly string[]; jail?: string; - only?: Array; + mainFields?: readonly string[]; modulesOnly?: boolean; + preferBuiltins?: boolean | ((module: string) => boolean); + resolveOnly?: ReadonlyArray | null | ((module: string) => boolean); + rootDir?: string; + allowExportsFolderMapping?: boolean; // TODO(STENCIL-1107): Remove this field [BREAKING_CHANGE] /**