1
0
mirror of https://github.com/gorhill/uBlock.git synced 2024-07-08 12:57:57 +02:00

[mv3] Salvage rule ids for all rulesets

This commit is contained in:
Raymond Hill 2024-02-15 08:02:46 -05:00
parent 8d47eac6e6
commit 7e00046b8e
No known key found for this signature in database
GPG Key ID: 25E1490B761470C2

View File

@ -55,14 +55,22 @@ if ( beforeDir === '' || afterDir === '' ) {
/******************************************************************************/
async function main() {
const afterFiles = await fs.readdir(`${afterDir}/rulesets/main`);
const folders = [
'main',
'modify-headers',
'redirect',
'regex',
'removeparam',
];
const writePromises = [];
for ( const folder of folders ) {
const afterFiles = await fs.readdir(`${afterDir}/rulesets/${folder}`);
for ( const file of afterFiles ) {
let raw = await fs.readFile(`${beforeDir}/rulesets/main/${file}`, 'utf-8').catch(( ) => '');
let raw = await fs.readFile(`${beforeDir}/rulesets/${folder}/${file}`, 'utf-8').catch(( ) => '');
let beforeRules;
try { beforeRules = JSON.parse(raw); } catch(_) { }
if ( Array.isArray(beforeRules) === false ) { continue; }
raw = await fs.readFile(`${afterDir}/rulesets/main/${file}`, 'utf-8').catch(( ) => '');
raw = await fs.readFile(`${afterDir}/rulesets/${folder}/${file}`, 'utf-8').catch(( ) => '');
let afterRules;
try { afterRules = JSON.parse(raw); } catch(_) { }
if ( Array.isArray(afterRules) === false ) { continue; }
@ -96,11 +104,12 @@ async function main() {
}
writePromises.push(
fs.writeFile(
`${afterDir}/rulesets/main/${file}`,
`${afterDir}/rulesets/${folder}/${file}`,
`[\n${lines.join(',\n')}\n]\n`
)
);
}
}
await Promise.all(writePromises);
}