2015-03-12 06:48:00 +08:00
|
|
|
/*
|
|
|
|
MIT License http://www.opensource.org/licenses/mit-license.php
|
|
|
|
Author Tobias Koppers @sokra
|
|
|
|
*/
|
2023-05-15 23:49:46 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @param {(string | number)[]} updatedModules updated modules
|
|
|
|
* @param {(string | number)[] | null} renewedModules renewed modules
|
|
|
|
*/
|
2020-03-29 06:10:15 +08:00
|
|
|
module.exports = function (updatedModules, renewedModules) {
|
|
|
|
var unacceptedModules = updatedModules.filter(function (moduleId) {
|
2015-03-12 06:48:00 +08:00
|
|
|
return renewedModules && renewedModules.indexOf(moduleId) < 0;
|
|
|
|
});
|
2017-05-31 17:00:41 +08:00
|
|
|
var log = require("./log");
|
2015-03-12 06:48:00 +08:00
|
|
|
|
2018-02-25 09:00:20 +08:00
|
|
|
if (unacceptedModules.length > 0) {
|
|
|
|
log(
|
|
|
|
"warning",
|
|
|
|
"[HMR] The following modules couldn't be hot updated: (They would need a full reload!)"
|
|
|
|
);
|
2020-03-29 06:10:15 +08:00
|
|
|
unacceptedModules.forEach(function (moduleId) {
|
2017-05-31 17:00:41 +08:00
|
|
|
log("warning", "[HMR] - " + moduleId);
|
2015-03-12 06:48:00 +08:00
|
|
|
});
|
|
|
|
}
|
|
|
|
|
2018-02-25 09:00:20 +08:00
|
|
|
if (!renewedModules || renewedModules.length === 0) {
|
2017-05-31 17:00:41 +08:00
|
|
|
log("info", "[HMR] Nothing hot updated.");
|
2015-03-12 06:48:00 +08:00
|
|
|
} else {
|
2017-05-31 17:00:41 +08:00
|
|
|
log("info", "[HMR] Updated modules:");
|
2020-03-29 06:10:15 +08:00
|
|
|
renewedModules.forEach(function (moduleId) {
|
2018-02-25 09:00:20 +08:00
|
|
|
if (typeof moduleId === "string" && moduleId.indexOf("!") !== -1) {
|
2017-07-12 04:49:29 +08:00
|
|
|
var parts = moduleId.split("!");
|
2017-07-14 01:41:55 +08:00
|
|
|
log.groupCollapsed("info", "[HMR] - " + parts.pop());
|
2017-07-12 04:49:29 +08:00
|
|
|
log("info", "[HMR] - " + moduleId);
|
2017-07-14 01:41:55 +08:00
|
|
|
log.groupEnd("info");
|
2017-07-12 04:49:29 +08:00
|
|
|
} else {
|
|
|
|
log("info", "[HMR] - " + moduleId);
|
2017-07-11 04:46:24 +08:00
|
|
|
}
|
2015-03-12 06:48:00 +08:00
|
|
|
});
|
2020-03-29 06:10:15 +08:00
|
|
|
var numberIds = renewedModules.every(function (moduleId) {
|
2016-07-20 21:19:01 +08:00
|
|
|
return typeof moduleId === "number";
|
|
|
|
});
|
2018-02-25 09:00:20 +08:00
|
|
|
if (numberIds)
|
|
|
|
log(
|
|
|
|
"info",
|
2018-09-03 19:55:05 +08:00
|
|
|
'[HMR] Consider using the optimization.moduleIds: "named" for module names.'
|
2018-02-25 09:00:20 +08:00
|
|
|
);
|
2015-03-12 06:48:00 +08:00
|
|
|
}
|
|
|
|
};
|