fix
This commit is contained in:
parent
0118737289
commit
814957e9bc
@ -1,10 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) Sapphirecode - All Rights Reserved
|
* Copyright (C) Sapphirecode - All Rights Reserved
|
||||||
* This file is part of snippeteer which is released under BSD-3-Clause.
|
* This file is part of Snippeteer which is released under BSD-3-Clause.
|
||||||
* See file 'LICENSE' for full license details.
|
* See file 'LICENSE' for full license details.
|
||||||
* Created by Timo Hocker <timo@scode.ovh>, March 2020
|
* Created by Timo Hocker <timo@scode.ovh>, March 2020
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* eslint-disable no-sync */
|
/* eslint-disable no-sync */
|
||||||
/* eslint-disable no-console */
|
/* eslint-disable no-console */
|
||||||
/* eslint-disable no-await-in-loop */
|
/* eslint-disable no-await-in-loop */
|
||||||
@ -26,14 +28,15 @@ async function map_all_files (folder, func) {
|
|||||||
if ([ 'node_modules' ].includes (file))
|
if ([ 'node_modules' ].includes (file))
|
||||||
continue;
|
continue;
|
||||||
const abs_path = path.join (folder, file);
|
const abs_path = path.join (folder, file);
|
||||||
if ((await fs.stat (abs_path)).isDirectory ())
|
if ((await fs.stat (abs_path)).isDirectory ()) {
|
||||||
map_all_files (abs_path, func);
|
map_all_files (abs_path, func);
|
||||||
|
continue;
|
||||||
const data = await fs.readFile (abs_path);
|
}
|
||||||
const res = func (data);
|
const data = await fs.readFile (abs_path, 'utf-8');
|
||||||
|
const res = func (data, file);
|
||||||
if (res === null)
|
if (res === null)
|
||||||
continue;
|
continue;
|
||||||
await fs.writeFile (abs_path, res);
|
await fs.writeFile (abs_path, res, 'utf-8');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -80,11 +83,13 @@ function get_copyright_notice (license = '', software = '') {
|
|||||||
* @param {string} software software name
|
* @param {string} software software name
|
||||||
*/
|
*/
|
||||||
async function fix_all_copy (folder, license = '', software = '') {
|
async function fix_all_copy (folder, license = '', software = '') {
|
||||||
const regex = /\/\*\s+\*\sCopyright[\s\S]*?\*\//gu;
|
const regex = /\/\*\s+\*\sCopyright[\s\S]*?\*\/\n{0,2}/gu;
|
||||||
await map_all_files (folder, (data) => {
|
await map_all_files (folder, (data, filename) => {
|
||||||
if (!regex.test (data))
|
const shebang = /^#!.*?\n\n/gu;
|
||||||
|
const shebang_line = shebang.exec(data);
|
||||||
|
if (!/\.js$/.test(filename) && !regex.test (data))
|
||||||
return null;
|
return null;
|
||||||
return get_copyright_notice (license, software) + data.replace (regex, '');
|
return (shebang_line ? shebang_line[0] : '') + get_copyright_notice (license, software) + data.replace (regex, '').replace(shebang, '');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user