aRkker-XIV-Plugins/make-pluginmasterjson.js

72 lines
2.7 KiB
JavaScript
Raw Normal View History

2022-05-06 12:28:26 +00:00
const fs = require('fs');
var execSync = require('child_process').execSync;
const API_LEVEL = 6;
/*
{
"Author": "aRkker",
"Name": "World Map Enhancer",
"InternalName": "WorldMapEnhancer",
"AssemblyVersion": "1.0.0.1",
"Description": "Simply zoom out by right clicking the world map, like God intended it",
"ApplicableVersion": "any",
"Tags": [
"world",
"map",
"enhance",
"rightclick",
"zoom"
],
"DalamudApiLevel": 6,
"LoadPriority": 0,
"Punchline": "Right click to zoom out the big map",
"IsHide": "False",
"IsTestingExclusive": "False",
"DownloadCount": 0,
"CategoryTags": [
"utility",
"other",
"ui"
],
"LastUpdate": "1651838531",
"DownloadLinkInstall": "https://raw.githubusercontent.com/aRkker/DalamudPlugins/master/plugins/WorldMapEnhancer/latest.zip",
"DownloadLinkTesting": "https://raw.githubusercontent.com/aRkker/DalamudPlugins/master/plugins/WorldMapEnhancer/latest.zip",
"DownloadLinkUpdate": "https://raw.githubusercontent.com/aRkker/DalamudPlugins/master/plugins/WorldMapEnhancer/latest.zip"
}
*/
fs.readdir('./plugins', (err, files) => {
const categoryFallbacks = JSON.parse(fs.readFileSync('./categoryfallbacks.json').toString());
let masterJson = [];
for (let d of files) {
console.log(d);
const pluginJsonPath = `plugins/${d}/${d}.json`;
const pluginJson = JSON.parse(fs.readFileSync(pluginJsonPath).toString());
console.log(pluginJson);
const updatedDate = execSync(`git log -1 --pretty="format:%ct" plugins/${pluginJson.InternalName}/latest.zip`).toString();
const masterJsonInsert = {
...pluginJson,
LastUpdate: updatedDate,
IsHide: "False",
DownloadCount: 0,
IsTestingExclusive: "False",
CategoryTags: pluginJson.CategoryTags ?? categoryFallbacks[pluginJson.InternalName],
DownloadLinkInstall: `https://raw.githubusercontent.com/aRkker/DalamudPlugins/master/plugins/${pluginJson.InternalName}/latest.zip`,
DownloadLinkTesting: `https://raw.githubusercontent.com/aRkker/DalamudPlugins/master/plugins/${pluginJson.InternalName}/latest.zip`,
DownloadLinkUpdate: `https://raw.githubusercontent.com/aRkker/DalamudPlugins/master/plugins/${pluginJson.InternalName}/latest.zip`
}
masterJson.push(masterJsonInsert);
console.log(masterJsonInsert);
}
fs.writeFileSync('./pluginmaster.json', JSON.stringify(masterJson, null, 2));
})