- removes the `differentialLoading` build option - differential loading is always enabled for prod builds BEFORE (without ESM): Benchmark #1: nx build demo --prod Time (mean ± σ): 13.834 s ± 1.731 s [User: 11.817 s, System: 1.352 s] Range (min … max): 11.947 s … 16.015 s 10 runs AFTER (with ESM): Benchmark #1: nx build demo --prod Time (mean ± σ): 18.711 s ± 1.310 s [User: 12.172 s, System: 1.394 s] Range (min … max): 17.232 s … 20.770 s 10 runs
29 lines
937 B
TypeScript
29 lines
937 B
TypeScript
// Originally from devkit.
|
|
// See: https://github.com/angular/angular-cli/blob/2c8b12f/packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/utils.ts
|
|
export interface HashFormat {
|
|
chunk: string;
|
|
extract: string;
|
|
file: string;
|
|
script: string;
|
|
}
|
|
|
|
export function getOutputHashFormat(option: string, length = 20): HashFormat {
|
|
const hashFormats: { [option: string]: HashFormat } = {
|
|
none: { chunk: '', extract: '', file: '', script: '' },
|
|
media: { chunk: '', extract: '', file: `.[hash:${length}]`, script: '' },
|
|
bundles: {
|
|
chunk: `.[chunkhash:${length}]`,
|
|
extract: `.[contenthash:${length}]`,
|
|
file: '',
|
|
script: `.[hash:${length}]`
|
|
},
|
|
all: {
|
|
chunk: `.[chunkhash:${length}]`,
|
|
extract: `.[contenthash:${length}]`,
|
|
file: `.[hash:${length}]`,
|
|
script: `.[hash:${length}]`
|
|
}
|
|
};
|
|
return hashFormats[option] || hashFormats['none'];
|
|
}
|