<%- ENSURE_CHUNK_HANDLERS %>.consumes = function(chunkId, promises) {
var moduleIdToConsumeDataMapping = <%- REQUIRE %>.consumesLoadingData.moduleIdToConsumeDataMapping
var chunkMapping = <%- REQUIRE %>.consumesLoadingData.chunkMapping;
if(<%- HAS_OWN_PROPERTY %>(chunkMapping, chunkId)) {
chunkMapping[chunkId].forEach(function(id) {
if(<%- HAS_OWN_PROPERTY %>(installedModules, id)) return promises.push(installedModules[id]);
var onFactory = function(factory) {
installedModules[id] = 0;
<%- MODULE_FACTORIES %>[id] = function(module) {
delete <%- MODULE_CACHE %>[id];
module.exports = factory();
}
};
var onError = function(error) {
delete installedModules[id];
<%- MODULE_FACTORIES %>[id] = function(module) {
delete <%- MODULE_CACHE %>[id];
throw error;
}
};
try {
var promise = resolveHandler(moduleIdToConsumeDataMapping[id])();
if(promise.then) {
promises.push(installedModules[id] = promise.then(onFactory)['catch'](onError));
} else onFactory(promise);
} catch(e) { onError(e); }
});
}
}