Change how modules.js is stored, add sub modules

This commit is contained in:
Ducko 2021-01-23 11:00:42 +00:00
parent f518a10cfe
commit 367495a3a5
2 changed files with 13 additions and 10 deletions

View File

@ -39,12 +39,14 @@ let moduleJson = [];
for (const repo of ModuleRepos) {
// console.log(repo);
console.time(repo);
console.time(repo.slice(0, 2).join('@'));
const url = `https://github.com/${repo.split('@')[0]}.git`;
const commitHash = repo.split('@')[1];
const url = `https://github.com/${repo[0]}.git`;
const commitHash = repo[1];
const name = repo.split('@')[0];
const name = repo[0];
const moduleDir = repo[2] || '';
const cloneDir = `${clonesDir}/${name}`;
@ -56,13 +58,13 @@ for (const repo of ModuleRepos) {
await new Promise((res) => exec(`git checkout ${commitHash}`, res))
const manifest = JSON.parse(readFileSync(`${cloneDir}/goosemodModule.json`));
const manifest = JSON.parse(readFileSync(`${cloneDir}${moduleDir}/goosemodModule.json`));
// console.log(manifest);
const outFile = `${manifest.name.replace(/ /g, '_').toLowerCase()}.js`;
const bundler = new Parcel(`${cloneDir}/${manifest.main}`, Object.assign(parcelOptions, {
const bundler = new Parcel(`${cloneDir}${moduleDir}/${manifest.main}`, Object.assign(parcelOptions, {
outFile
}));
@ -71,7 +73,7 @@ for (const repo of ModuleRepos) {
const outPath = `${modulesDir}/${outFile}`;
let jsCode = readFileSync(outPath, 'utf8');
jsCode = `${jsCode};parcelRequire('${manifest.main.split('/').pop()}').default`; // Make eval return the index module's default export
jsCode = `${jsCode};parcelRequire('${bundle.entryAsset.basename}').default`; // Make eval return the index module's default export
// console.log(jsCode);
@ -85,7 +87,7 @@ for (const repo of ModuleRepos) {
authors: manifest.authors
});
console.timeEnd(repo);
console.timeEnd(repo.slice(0, 2).join('@'));
// console.log(lastHash);

View File

@ -1,5 +1,6 @@
export default
[
'GooseMod/GMExampleModule@f4cec6c0d5f9632a44de907d647f3ad02d03bb3f',
'Controlfreak707/GM-Copy-Raw@ae3f739f4d53344f87b1b404686d100394a566ee'
['GooseMod/GMExampleModule', 'ba7c20f44fe88780286ac88b47b933609016c7ef'],
['GooseMod/GMExampleModule', 'ba7c20f44fe88780286ac88b47b933609016c7ef', '/subModule'],
['Controlfreak707/GM-Copy-Raw', 'ae3f739f4d53344f87b1b404686d100394a566ee']
];