Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 26 additions & 13 deletions libs/native-federation/src/utils/angular-esbuild-adapter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import {
getSupportedBrowsers,
generateSearchDirectories,
findTailwindConfiguration,
loadPostcssConfiguration,
} from '@angular/build/private';

import { createCompilerPluginOptions } from './create-compiler-options';
Expand Down Expand Up @@ -202,22 +203,17 @@ async function runEsbuild(
builderOptions.optimization
);
const sourcemapOptions = normalizeSourceMaps(builderOptions.sourceMap);

const searchDirectories = await generateSearchDirectories([
projectRoot,
workspaceRoot,
]);
const tailwindConfigurationPath =
findTailwindConfiguration(searchDirectories);

const fullProjectRoot = path.join(workspaceRoot, projectRoot);
const resolver = createRequire(fullProjectRoot + '/');

const tailwindConfiguration = tailwindConfigurationPath
? {
file: tailwindConfigurationPath,
package: resolver.resolve('tailwindcss'),
}
: undefined;
const postcssConfiguration = await loadPostcssConfiguration(
searchDirectories
);
const tailwindConfiguration = postcssConfiguration
? undefined
: await getTailwindConfig(searchDirectories);

const outputNames = {
bundles: '[name]',
Expand Down Expand Up @@ -256,6 +252,7 @@ async function runEsbuild(
inlineStyleLanguage: builderOptions.inlineStyleLanguage,
jit: false,
tailwindConfiguration,
postcssConfiguration,
} as any,
target,
undefined
Expand Down Expand Up @@ -303,7 +300,7 @@ async function runEsbuild(
...(!dev ? { ngDevMode: 'false' } : {}),
ngJitMode: 'false',
},
...(builderOptions.loader ? {loader: builderOptions.loader} : {}),
...(builderOptions.loader ? { loader: builderOptions.loader } : {}),
};

const ctx = await esbuild.context(config);
Expand All @@ -330,6 +327,22 @@ async function runEsbuild(
return writtenFiles;
}

async function getTailwindConfig(
searchDirectories: { root: string; files: Set<string> }[]
): Promise<{ file: string; package: string } | undefined> {
const tailwindConfigurationPath =
findTailwindConfiguration(searchDirectories);

if (!tailwindConfigurationPath) {
return undefined;
}

return {
file: tailwindConfigurationPath,
package: createRequire(tailwindConfigurationPath).resolve('tailwindcss'),
};
}

function createTsConfigForFederation(
workspaceRoot: string,
tsConfigPath: string,
Expand Down
Loading