You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			JavaScript
		
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			JavaScript
		
	
| /*
 | |
| 	MIT License http://www.opensource.org/licenses/mit-license.php
 | |
| 	Author Tobias Koppers @sokra and Zackary Jackson @ScriptedAlchemy
 | |
| */
 | |
| 
 | |
| "use strict";
 | |
| 
 | |
| const ModuleFactory = require("../ModuleFactory");
 | |
| const ProvideSharedModule = require("./ProvideSharedModule");
 | |
| 
 | |
| /** @typedef {import("../ModuleFactory").ModuleFactoryCreateData} ModuleFactoryCreateData */
 | |
| /** @typedef {import("../ModuleFactory").ModuleFactoryResult} ModuleFactoryResult */
 | |
| /** @typedef {import("./ProvideSharedDependency")} ProvideSharedDependency */
 | |
| 
 | |
| class ProvideSharedModuleFactory extends ModuleFactory {
 | |
| 	/**
 | |
| 	 * @param {ModuleFactoryCreateData} data data object
 | |
| 	 * @param {function((Error | null)=, ModuleFactoryResult=): void} callback callback
 | |
| 	 * @returns {void}
 | |
| 	 */
 | |
| 	create(data, callback) {
 | |
| 		const dep = /** @type {ProvideSharedDependency} */ (data.dependencies[0]);
 | |
| 		callback(null, {
 | |
| 			module: new ProvideSharedModule(
 | |
| 				dep.shareScope,
 | |
| 				dep.name,
 | |
| 				dep.version,
 | |
| 				dep.request,
 | |
| 				dep.eager
 | |
| 			)
 | |
| 		});
 | |
| 	}
 | |
| }
 | |
| 
 | |
| module.exports = ProvideSharedModuleFactory;
 |