UNPKG

1.04 kBJavaScriptView Raw
1/*
2 MIT License http://www.opensource.org/licenses/mit-license.php
3 Author Tobias Koppers @sokra and Zackary Jackson @ScriptedAlchemy
4*/
5
6"use strict";
7
8const ModuleFactory = require("../ModuleFactory");
9const ProvideSharedModule = require("./ProvideSharedModule");
10
11/** @typedef {import("../ModuleFactory").ModuleFactoryCreateData} ModuleFactoryCreateData */
12/** @typedef {import("../ModuleFactory").ModuleFactoryResult} ModuleFactoryResult */
13/** @typedef {import("./ProvideSharedDependency")} ProvideSharedDependency */
14
15class ProvideSharedModuleFactory extends ModuleFactory {
16 /**
17 * @param {ModuleFactoryCreateData} data data object
18 * @param {function(Error=, ModuleFactoryResult=): void} callback callback
19 * @returns {void}
20 */
21 create(data, callback) {
22 const dep = /** @type {ProvideSharedDependency} */ (data.dependencies[0]);
23 callback(null, {
24 module: new ProvideSharedModule(
25 dep.shareScope,
26 dep.name,
27 dep.version,
28 dep.request,
29 dep.eager
30 )
31 });
32 }
33}
34
35module.exports = ProvideSharedModuleFactory;