|
|
@ -112,47 +112,49 @@ var gearEntryPoints = {};
|
|
|
|
path.join(__dirname, '../../../gears'),
|
|
|
|
path.join(__dirname, '../../../gears'),
|
|
|
|
path.join(__dirname, '../../../private_gears')
|
|
|
|
path.join(__dirname, '../../../private_gears')
|
|
|
|
].forEach((gearsDir) => {
|
|
|
|
].forEach((gearsDir) => {
|
|
|
|
fs.readdirSync(gearsDir).forEach((gearName) => {
|
|
|
|
if (fs.existsSync(gearsDir)) {
|
|
|
|
// Find HtmlWebpackPlugin extensions and overrides
|
|
|
|
fs.readdirSync(gearsDir).forEach((gearName) => {
|
|
|
|
let gearWebpackFilesPath = path.join(gearsDir, gearName, 'webpack/static-pages/webpack_files.js');
|
|
|
|
// Find HtmlWebpackPlugin extensions and overrides
|
|
|
|
if (fs.existsSync(gearWebpackFilesPath)) {
|
|
|
|
let gearWebpackFilesPath = path.join(gearsDir, gearName, 'webpack/static-pages/webpack_files.js');
|
|
|
|
let gearWebpackFiles = require(gearWebpackFilesPath);
|
|
|
|
if (fs.existsSync(gearWebpackFilesPath)) {
|
|
|
|
|
|
|
|
let gearWebpackFiles = require(gearWebpackFilesPath);
|
|
|
|
|
|
|
|
|
|
|
|
if (gearWebpackFiles.htmlFiles) {
|
|
|
|
if (gearWebpackFiles.htmlFiles) {
|
|
|
|
console.info(`> Found HtmlWebpackPlugin extension for gear ${gearName} in ${gearWebpackFilesPath}`);
|
|
|
|
console.info(`> Found HtmlWebpackPlugin extension for gear ${gearName} in ${gearWebpackFilesPath}`);
|
|
|
|
|
|
|
|
|
|
|
|
Object.entries(gearWebpackFiles.htmlFiles).forEach(([entryName, config]) => {
|
|
|
|
Object.entries(gearWebpackFiles.htmlFiles).forEach(([entryName, config]) => {
|
|
|
|
|
|
|
|
|
|
|
|
if (!files[entryName]) {
|
|
|
|
if (!files[entryName]) {
|
|
|
|
console.info(`> ┕╸ Added entryName "${entryName}"`);
|
|
|
|
console.info(`> ┕╸ Added entryName "${entryName}"`);
|
|
|
|
files[entryName] = {};
|
|
|
|
files[entryName] = {};
|
|
|
|
} else {
|
|
|
|
|
|
|
|
console.info(`> ┕╸ Extended entryName "${entryName}"`);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Object.entries(config).forEach(([confName, val]) => {
|
|
|
|
|
|
|
|
if (files[entryName][confName] instanceof Array && val instanceof Array) {
|
|
|
|
|
|
|
|
files[entryName][confName].push(...val);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
files[entryName][confName] = val;
|
|
|
|
console.info(`> ┕╸ Extended entryName "${entryName}"`);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
Object.entries(config).forEach(([confName, val]) => {
|
|
|
|
}
|
|
|
|
if (files[entryName][confName] instanceof Array && val instanceof Array) {
|
|
|
|
// Find entry point overrides
|
|
|
|
files[entryName][confName].push(...val);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
files[entryName][confName] = val;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
if (gearWebpackFiles.entryPoints) {
|
|
|
|
});
|
|
|
|
console.info(`> Found entry points for gear ${gearName} in ${gearWebpackFilesPath}`);
|
|
|
|
}
|
|
|
|
|
|
|
|
// Find entry point overrides
|
|
|
|
|
|
|
|
|
|
|
|
Object.entries(gearWebpackFiles.entryPoints).forEach(([entryName, entryPath]) => {
|
|
|
|
if (gearWebpackFiles.entryPoints) {
|
|
|
|
entryPath = path.resolve(gearsDir, gearName, 'lib/build/files/', entryPath);
|
|
|
|
console.info(`> Found entry points for gear ${gearName} in ${gearWebpackFilesPath}`);
|
|
|
|
gearEntryPoints[entryName] = entryPath;
|
|
|
|
|
|
|
|
console.info(`> ┕╸ Added entry "${entryName}" at ${entryPath}`);
|
|
|
|
Object.entries(gearWebpackFiles.entryPoints).forEach(([entryName, entryPath]) => {
|
|
|
|
});
|
|
|
|
entryPath = path.resolve(gearsDir, gearName, 'lib/build/files/', entryPath);
|
|
|
|
|
|
|
|
gearEntryPoints[entryName] = entryPath;
|
|
|
|
|
|
|
|
console.info(`> ┕╸ Added entry "${entryName}" at ${entryPath}`);
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
module.exports = {
|
|
|
|
module.exports = {
|
|
|
|