Added --full option for the license exporter to export the license path and text as well
ref #59
This commit is contained in:
		| @@ -75,8 +75,9 @@ | ||||
|     "test:watch": "jest --watchAll", | ||||
|     "test:ci": "start-server-and-test dev http://localhost:4010/api/docs/openapi.json test", | ||||
|     "seed": "ts-node ./node_modules/typeorm/cli.js schema:sync && ts-node ./node_modules/typeorm-seeding/dist/cli.js seed", | ||||
|     "openapi:export": "ts-node scripts/openapi_export.ts", | ||||
|     "licenses:export": "node scripts/license_exporter.js" | ||||
|     "openapi:export": "node scripts/openapi_export.js", | ||||
|     "licenses:export": "node scripts/license_exporter.js", | ||||
|     "licenses:full": "node scripts/license_exporter.js --full" | ||||
|   }, | ||||
|   "nodemonConfig": { | ||||
|     "ignore": [ | ||||
|   | ||||
| @@ -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"); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user