Added --full option for the license exporter to export the license path and text as well

ref #59
This commit is contained in:
2020-12-30 21:05:16 +01:00
parent 18e3ef9a79
commit 62c7f26540
2 changed files with 41 additions and 16 deletions

View File

@@ -2,28 +2,52 @@ var checker = require('license-checker');
var consola = require('consola');
var fs = require('fs');
var args = process.argv.slice(2);
checker.init({
start: './',
}, function(err, packages) {
relativeLicensePath: true,
customFormat: {
licenseText: "",
licenseFile: "",
description: "",
version: "",
}
}, function (err, packages) {
if (err) {
consola.error("Couldn't load the licenses.")
} else {
let licenses = new Array();
Object.keys(packages).forEach(function(key) {
licenses.push({
"name": packages[key].name,
"licenses": packages[key].licenses || null,
"repository": packages[key].repository || null,
"publisher": packages[key].publisher || null,
"email": packages[key].email || null,
"version": packages[key].version || null,
"description": packages[key].description || null,
"copyright": packages[key].copyright || null,
"url": packages[key].url || null,
if (args.includes("--full")) {
Object.keys(packages).forEach(function (key) {
licenses.push({
"name": packages[key].name,
"licenses": packages[key].licenses,
"repository": packages[key].repository || null,
"publisher": packages[key].publisher || null,
"email": packages[key].email || null,
"version": packages[key].version || null,
"description": packages[key].description || null,
"copyright": packages[key].copyright || null,
"text": packages[key].licenseText || null,
"license_path": packages[key].licenseFile || null,
});
});
});
}
else {
Object.keys(packages).forEach(function (key) {
licenses.push({
"name": packages[key].name,
"licenses": packages[key].licenses,
"repository": packages[key].repository || null,
"publisher": packages[key].publisher || null,
"email": packages[key].email || null,
"version": packages[key].version || null,
"description": packages[key].description || null,
"copyright": packages[key].copyright || null,
});
});
}
try {
fs.writeFileSync("./licenses.json", JSON.stringify(licenses), { encoding: "utf-8" });
consola.success("Exported licenses to ./licenses.json");