changes
This commit is contained in:
@@ -55,10 +55,7 @@ fs.readdirSync(originalLibDir)
|
||||
fs.readdirSync(originalLibCrmDir)
|
||||
.forEach(file => fs.unlinkSync(originalLibCrmDir + '/' + file));
|
||||
|
||||
/** @var {string[]} */
|
||||
const libSrcList = buildUtils.getBundleLibList(libs);
|
||||
|
||||
let stripSourceMappingUrl = path => {
|
||||
const stripSourceMappingUrl = path => {
|
||||
/** @var {string} */
|
||||
let originalContents = fs.readFileSync(path, {encoding: 'utf-8'});
|
||||
|
||||
@@ -73,11 +70,65 @@ let stripSourceMappingUrl = path => {
|
||||
fs.writeFileSync(path, contents, {encoding: 'utf-8'});
|
||||
}
|
||||
|
||||
const addLoadingSubject = (path, subject) => {
|
||||
/** @var {string} */
|
||||
let contents = fs.readFileSync(path, {encoding: 'utf-8'});
|
||||
|
||||
contents =
|
||||
`Espo.loader.setContextId('${subject}');\n` +
|
||||
contents + '\n' +
|
||||
`Espo.loader.setContextId(null);\n`;
|
||||
|
||||
fs.writeFileSync(path, contents, {encoding: 'utf-8'});
|
||||
}
|
||||
|
||||
const addSuppressAmd = path => {
|
||||
/** @var {string} */
|
||||
let contents = fs.readFileSync(path, {encoding: 'utf-8'});
|
||||
|
||||
contents =
|
||||
`var _previousDefineAmd = define.amd; define.amd = false;\n` +
|
||||
contents + '\n' +
|
||||
`define.amd = _previousDefineAmd;\n`;
|
||||
|
||||
fs.writeFileSync(path, contents, {encoding: 'utf-8'});
|
||||
}
|
||||
|
||||
/** @var {string[]} */
|
||||
const libSrcList = buildUtils.getBundleLibList(libs);
|
||||
|
||||
let keyMap = {};
|
||||
let suppressAmdMap = {};
|
||||
|
||||
libs.forEach(item => {
|
||||
if (!item.key || !item.bundle || item.files) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (item.suppressAmd) {
|
||||
suppressAmdMap[item.src] = true;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
keyMap[item.src] = 'lib!' + item.key;
|
||||
});
|
||||
|
||||
libSrcList.forEach(src => {
|
||||
let dest = originalLibDir + '/' + src.split('/').slice(-1);
|
||||
|
||||
fs.copyFileSync(src, dest);
|
||||
stripSourceMappingUrl(dest);
|
||||
|
||||
if (suppressAmdMap[src]) {
|
||||
addSuppressAmd(dest);
|
||||
}
|
||||
|
||||
let key = keyMap[src];
|
||||
|
||||
if (key) {
|
||||
addLoadingSubject(dest, key);
|
||||
}
|
||||
});
|
||||
|
||||
buildUtils.getCopyLibDataList(libs)
|
||||
@@ -85,4 +136,14 @@ buildUtils.getCopyLibDataList(libs)
|
||||
.forEach(item => {
|
||||
fs.copyFileSync(item.src, item.originalDest);
|
||||
stripSourceMappingUrl(item.originalDest);
|
||||
|
||||
if (suppressAmdMap[item.src]) {
|
||||
addSuppressAmd(item.originalDest);
|
||||
}
|
||||
|
||||
let key = keyMap[item.src];
|
||||
|
||||
if (key) {
|
||||
addLoadingSubject(item.originalDest, key);
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user