Content deleted Content added
Syncing script from GitHub (via script) |
Syncing script from GitHub (via script) |
||
Line 52:
}
if (script.
await editOrCreate(subpageName, fullSubpageInfo.join('\n'), 'Syncing script documentation from GitHub');
await editOrCreate(subpageTalkName, '#REDIRECT [[User talk:Eejit43]]', 'Redirecting script documentation talk page to main user talk page');
Line 59:
if (script.css) await editOrCreate(styleName, styleContent, 'Syncing CSS from GitHub');
})
);
await editOrCreate(
'User:Eejit43/scripts-info',
[
mapScripts(scriptData.filter((script) => !script.personal && !script.fork)), //
'',
'=== Personal-use scripts ===',
mapScripts(scriptData.filter((script) => script.personal)),
'',
'=== Forks ===',
mapScripts(scriptData.filter((script) => script.fork))
].join('\n'),
'Syncing script list from GitHub'
);
mw.notify(`Synced ${scriptData.length} scripts from GitHub!`, { type: 'success', tag: 'sync-scripts-notification' });
/**
* Maps scripts to a bulleted list
* @param {object[]} scripts The scripts to map
* @returns {string} The mapped scripts
*/
function mapScripts(scripts) {
return scripts.map((script) => `* [[<noinclude>User:Eejit43</noinclude>/scripts/${script.name}${script.personal ? '.js' : ''}|${script.name}]] - ${script['short-description'] || script.description}`).join('\n');
}
/**
|