in v4/en/builder/lib/esl.js [1320:1366]
function normalize(id, baseId) {
if (!id) {
return '';
}
baseId = baseId || '';
var idInfo = parseId(id);
if (!idInfo) {
return id;
}
var resourceId = idInfo.res;
var moduleId = resolvePackageId(
relative2absolute(idInfo.mod, baseId)
);
// 根据config中的map配置进行module id mapping
indexRetrieve(
baseId,
mappingIdIndex,
function (value) {
indexRetrieve(
moduleId,
value,
function (mdValue, mdKey) {
moduleId = moduleId.replace(mdKey, mdValue);
}
);
}
);
if (resourceId) {
var mod = modIs(moduleId, MODULE_DEFINED) && actualGlobalRequire(moduleId);
resourceId = mod && mod.normalize
? mod.normalize(
resourceId,
function (resId) {
return normalize(resId, baseId);
}
)
: normalize(resourceId, baseId);
moduleId += '!' + resourceId;
}
return moduleId;
}