* Processes the provided data. * @param {ModuleFactoryCreateData} data data object * @param {ModuleFactoryCallback} callback callback * @returns {void}
(data, callback)
| 1009 | * @returns {void} |
| 1010 | */ |
| 1011 | create(data, callback) { |
| 1012 | const dependencies = /** @type {ModuleDependency[]} */ (data.dependencies); |
| 1013 | const context = data.context || this.context; |
| 1014 | const resolveOptions = data.resolveOptions || EMPTY_RESOLVE_OPTIONS; |
| 1015 | const dependency = dependencies[0]; |
| 1016 | const request = dependency.request; |
| 1017 | const attributes = |
| 1018 | /** @type {ModuleDependency & { attributes: ImportAttributes }} */ |
| 1019 | (dependency).attributes; |
| 1020 | const phase = |
| 1021 | typeof ( |
| 1022 | /** @type {ModuleDependency & { phase?: ImportPhaseType }} */ |
| 1023 | (dependency).phase |
| 1024 | ) === "number" |
| 1025 | ? ImportPhaseUtils.stringify( |
| 1026 | /** @type {ModuleDependency & { phase?: ImportPhaseType }} */ |
| 1027 | (dependency).phase |
| 1028 | ) |
| 1029 | : "evaluation"; |
| 1030 | const dependencyType = dependency.category || ""; |
| 1031 | const contextInfo = data.contextInfo; |
| 1032 | /** @type {FileSystemDependencies} */ |
| 1033 | const fileDependencies = new LazySet(); |
| 1034 | /** @type {FileSystemDependencies} */ |
| 1035 | const missingDependencies = new LazySet(); |
| 1036 | /** @type {FileSystemDependencies} */ |
| 1037 | const contextDependencies = new LazySet(); |
| 1038 | /** @type {ResolveData} */ |
| 1039 | const resolveData = { |
| 1040 | contextInfo, |
| 1041 | resolveOptions, |
| 1042 | context, |
| 1043 | request, |
| 1044 | phase, |
| 1045 | attributes, |
| 1046 | dependencies, |
| 1047 | dependencyType, |
| 1048 | fileDependencies, |
| 1049 | missingDependencies, |
| 1050 | contextDependencies, |
| 1051 | createData: {}, |
| 1052 | cacheable: true |
| 1053 | }; |
| 1054 | this.hooks.beforeResolve.callAsync(resolveData, (err, result) => { |
| 1055 | if (err) { |
| 1056 | return callback(err, { |
| 1057 | fileDependencies, |
| 1058 | missingDependencies, |
| 1059 | contextDependencies, |
| 1060 | cacheable: false |
| 1061 | }); |
| 1062 | } |
| 1063 | |
| 1064 | // Ignored |
| 1065 | if (result === false) { |
| 1066 | /** @type {ModuleFactoryResult} * */ |
| 1067 | const factoryResult = { |
| 1068 | fileDependencies, |
nothing calls this directly
no test coverage detected