MCPcopy
hub / github.com/webpack/webpack / applyOptimizationDefaults

Function applyOptimizationDefaults

lib/config/defaults.js:2160–2247  ·  view source on GitHub ↗
(
	optimization,
	{ production, development, css, records }
)

Source from the content-addressed store, hash-verified

2158 * @returns {void}
2159 */
2160const applyOptimizationDefaults = (
2161 optimization,
2162 { production, development, css, records }
2163) => {
2164 D(optimization, "removeAvailableModules", false);
2165 D(optimization, "removeEmptyChunks", true);
2166 D(optimization, "mergeDuplicateChunks", true);
2167 D(optimization, "flagIncludedChunks", production);
2168 F(optimization, "moduleIds", () => {
2169 if (production) return "deterministic";
2170 if (development) return "named";
2171 return "natural";
2172 });
2173 F(optimization, "chunkIds", () => {
2174 if (production) return "deterministic";
2175 if (development) return "named";
2176 return "natural";
2177 });
2178 F(optimization, "sideEffects", () => (production ? true : "flag"));
2179 D(optimization, "providedExports", true);
2180 D(optimization, "usedExports", production);
2181 D(optimization, "innerGraph", production);
2182 D(optimization, "inlineExports", production);
2183 D(optimization, "mangleExports", production);
2184 D(optimization, "concatenateModules", production);
2185 D(optimization, "avoidEntryIife", production);
2186 D(optimization, "runtimeChunk", false);
2187 D(optimization, "emitOnErrors", !production);
2188 D(optimization, "checkWasmTypes", production);
2189 D(optimization, "mangleWasmImports", false);
2190 D(optimization, "portableRecords", records);
2191 D(optimization, "realContentHash", production);
2192 D(optimization, "minimize", production);
2193 A(optimization, "minimizer", () => [
2194 {
2195 apply: (compiler) => {
2196 // Lazy load the minimizer plugin
2197 const TerserPlugin = require("minimizer-webpack-plugin");
2198
2199 new TerserPlugin({
2200 terserOptions: {
2201 compress: {
2202 passes: 2
2203 }
2204 }
2205 }).apply(/** @type {EXPECTED_ANY} */ (compiler));
2206 }
2207 }
2208 ]);
2209 F(optimization, "nodeEnv", () => {
2210 if (production) return "production";
2211 if (development) return "development";
2212 return false;
2213 });
2214 const { splitChunks } = optimization;
2215 if (splitChunks) {
2216 A(splitChunks, "defaultSizeTypes", () =>
2217 css

Callers 1

Calls 5

DFunction · 0.70
FFunction · 0.70
AFunction · 0.70
applyMethod · 0.65
requireFunction · 0.50

Tested by

no test coverage detected