| 
									
										
										
										
											2013-01-31 01:49:25 +08:00
										 |  |  | /* | 
					
						
							|  |  |  | 	MIT License http://www.opensource.org/licenses/mit-license.php
 | 
					
						
							|  |  |  | 	Author Tobias Koppers @sokra | 
					
						
							|  |  |  | */ | 
					
						
							| 
									
										
										
										
											2018-07-30 23:08:51 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-01-03 00:45:44 +08:00
										 |  |  | "use strict"; | 
					
						
							| 
									
										
										
										
											2013-01-31 01:49:25 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-02-17 17:27:46 +08:00
										 |  |  | const { applyWebpackOptionsDefaults } = require("./config/defaults"); | 
					
						
							|  |  |  | const { getNormalizedWebpackOptions } = require("./config/normalization"); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-06-13 01:24:59 +08:00
										 |  |  | /** @typedef {import("./config/normalization").WebpackOptions} WebpackOptions */ | 
					
						
							|  |  |  | /** @typedef {import("./config/normalization").WebpackOptionsNormalized} WebpackOptionsNormalized */ | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-02-17 17:27:46 +08:00
										 |  |  | class WebpackOptionsDefaulter { | 
					
						
							| 
									
										
										
										
											2023-06-13 01:24:59 +08:00
										 |  |  | 	/** | 
					
						
							|  |  |  | 	 * @param {WebpackOptions} options webpack options | 
					
						
							|  |  |  | 	 * @returns {WebpackOptionsNormalized} normalized webpack options | 
					
						
							|  |  |  | 	 */ | 
					
						
							| 
									
										
										
										
											2020-02-17 17:27:46 +08:00
										 |  |  | 	process(options) { | 
					
						
							| 
									
										
										
										
											2023-06-13 01:24:59 +08:00
										 |  |  | 		const normalizedOptions = getNormalizedWebpackOptions(options); | 
					
						
							|  |  |  | 		applyWebpackOptionsDefaults(normalizedOptions); | 
					
						
							|  |  |  | 		return normalizedOptions; | 
					
						
							| 
									
										
										
										
											2017-01-03 00:45:44 +08:00
										 |  |  | 	} | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2014-02-13 18:02:31 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-01-03 00:45:44 +08:00
										 |  |  | module.exports = WebpackOptionsDefaulter; |