scanoss 0.4.11-beta → 0.4.12-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.idea/workspace.xml +6 -2
- package/build/main/cli/bin/cli-bin.js +5 -5
- package/build/main/cli/commands/wfp.d.ts +1 -0
- package/build/main/cli/commands/wfp.js +54 -0
- package/build/main/sdk/scanner/Dispatcher/Dispatcher.js +1 -1
- package/build/main/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +1 -1
- package/build/main/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.js +33 -31
- package/build/main/tsconfig.tsbuildinfo +20 -20
- package/build/module/cli/bin/cli-bin.js +5 -5
- package/build/module/cli/commands/wfp.d.ts +1 -0
- package/build/module/cli/commands/wfp.js +48 -0
- package/build/module/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +1 -1
- package/build/module/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.js +33 -31
- package/build/module/tsconfig.module.tsbuildinfo +20 -20
- package/package-lock.json +67 -493
- package/package.json +1 -1
- package/src/cli/bin/cli-bin.ts +4 -4
- package/src/cli/commands/{fingerprint.ts → wfp.ts} +1 -1
- package/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.ts +36 -32
- package/tests/sdk/Scanner/WfpProvider/WfpSplitter/WfpSplitter.spec.ts +0 -2
- package/yarn.lock +4886 -4737
- package/build/main/cli/commands/fingerprint.d.ts +0 -1
- package/build/main/cli/commands/fingerprint.js +0 -54
- package/build/main/sdk/Decompress/DecompressionManager.d.ts +0 -12
- package/build/main/sdk/Decompress/DecompressionManager.js +0 -65
- package/build/main/sdk/Decompress/Decompressor/DecompressTgz.d.ts +0 -5
- package/build/main/sdk/Decompress/Decompressor/DecompressTgz.js +0 -22
- package/build/main/sdk/Decompress/Decompressor/DecompressZips.d.ts +0 -5
- package/build/main/sdk/Decompress/Decompressor/DecompressZips.js +0 -24
- package/build/main/sdk/Decompress/Decompressor/Decompressor.d.ts +0 -10
- package/build/main/sdk/Decompress/Decompressor/Decompressor.js +0 -18
- package/build/main/sdk/modules/reports/Report.d.ts +0 -24
- package/build/main/sdk/modules/reports/Report.js +0 -75
- package/build/main/sdk/modules/reports/ReportAdapter.d.ts +0 -12
- package/build/main/sdk/modules/reports/ReportAdapter.js +0 -117
- package/build/main/sdk/modules/reports/htmlReport/HTMLReport.d.ts +0 -14
- package/build/main/sdk/modules/reports/htmlReport/HTMLReport.js +0 -39
- package/build/main/sdk/modules/reports/types.d.ts +0 -44
- package/build/main/sdk/modules/reports/types.js +0 -8
- package/build/main/sdk/tree/Filters/DecompressionFilter.d.ts +0 -7
- package/build/main/sdk/tree/Filters/DecompressionFilter.js +0 -21
- package/build/module/cli/commands/fingerprint.d.ts +0 -1
- package/build/module/cli/commands/fingerprint.js +0 -48
- package/build/module/sdk/Decompress/DecompressionManager.d.ts +0 -12
- package/build/module/sdk/Decompress/DecompressionManager.js +0 -59
- package/build/module/sdk/Decompress/Decompressor/DecompressTgz.d.ts +0 -5
- package/build/module/sdk/Decompress/Decompressor/DecompressTgz.js +0 -16
- package/build/module/sdk/Decompress/Decompressor/DecompressZips.d.ts +0 -5
- package/build/module/sdk/Decompress/Decompressor/DecompressZips.js +0 -18
- package/build/module/sdk/Decompress/Decompressor/Decompressor.d.ts +0 -10
- package/build/module/sdk/Decompress/Decompressor/Decompressor.js +0 -15
- package/build/module/sdk/modules/reports/Report.d.ts +0 -24
- package/build/module/sdk/modules/reports/Report.js +0 -80
- package/build/module/sdk/modules/reports/ReportAdapter.d.ts +0 -12
- package/build/module/sdk/modules/reports/ReportAdapter.js +0 -115
- package/build/module/sdk/modules/reports/htmlReport/HTMLReport.d.ts +0 -14
- package/build/module/sdk/modules/reports/htmlReport/HTMLReport.js +0 -41
- package/build/module/sdk/modules/reports/types.d.ts +0 -44
- package/build/module/sdk/modules/reports/types.js +0 -6
- package/build/module/sdk/tree/Filters/DecompressionFilter.d.ts +0 -7
- package/build/module/sdk/tree/Filters/DecompressionFilter.js +0 -18
- package/build/tsconfig.module.tsbuildinfo +0 -1
- package/build/tsconfig.tsbuildinfo +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function fingerprintHandler(rootPath: string, options: any): Promise<void>;
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
2
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
3
|
-
};
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.fingerprintHandler = void 0;
|
|
6
|
-
const fs_1 = __importDefault(require("fs"));
|
|
7
|
-
const cli_progress_1 = __importDefault(require("cli-progress"));
|
|
8
|
-
const helpers_1 = require("./helpers");
|
|
9
|
-
const ScannerTypes_1 = require("../../sdk/scanner/ScannerTypes");
|
|
10
|
-
const WfpCalculator_1 = require("../../sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator");
|
|
11
|
-
const Tree_1 = require("../../sdk/tree/Tree");
|
|
12
|
-
const DependencyFilter_1 = require("../../sdk/tree/Filters/DependencyFilter");
|
|
13
|
-
async function fingerprintHandler(rootPath, options) {
|
|
14
|
-
rootPath = rootPath.replace(/\/$/, ''); // Remove trailing slash if exists
|
|
15
|
-
rootPath = rootPath.replace(/^\./, process.env.PWD); // Convert relative path to absolute path.
|
|
16
|
-
const pathIsFolder = await helpers_1.isFolder(rootPath);
|
|
17
|
-
const wfpCalculator = new WfpCalculator_1.WfpCalculator();
|
|
18
|
-
let filesToFingerprint = [];
|
|
19
|
-
if (pathIsFolder) {
|
|
20
|
-
const tree = new Tree_1.Tree(rootPath);
|
|
21
|
-
tree.build();
|
|
22
|
-
filesToFingerprint = tree.getFileList(new DependencyFilter_1.DependencyFilter(""));
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
filesToFingerprint.push(rootPath);
|
|
26
|
-
}
|
|
27
|
-
const optBar1 = { format: 'Fingerprinting Progress: [{bar}] {percentage}% | Fingerprinted {value} files of {total}' };
|
|
28
|
-
const bar1 = new cli_progress_1.default.SingleBar(optBar1, cli_progress_1.default.Presets.shades_classic);
|
|
29
|
-
bar1.start(filesToFingerprint.length, 0);
|
|
30
|
-
let fingerprints = '';
|
|
31
|
-
wfpCalculator.on(ScannerTypes_1.ScannerEvents.WINNOWING_NEW_CONTENT, (fingerprintPackage) => {
|
|
32
|
-
bar1.increment(fingerprintPackage.getNumberFilesFingerprinted());
|
|
33
|
-
fingerprints = fingerprints.concat(fingerprintPackage.getContent());
|
|
34
|
-
});
|
|
35
|
-
if (options.verbose)
|
|
36
|
-
wfpCalculator.on(ScannerTypes_1.ScannerEvents.WINNOWER_LOG, (log) => {
|
|
37
|
-
console.error(log);
|
|
38
|
-
});
|
|
39
|
-
wfpCalculator.on(ScannerTypes_1.ScannerEvents.WINNOWING_FINISHED, () => {
|
|
40
|
-
bar1.stop();
|
|
41
|
-
if (options.output) {
|
|
42
|
-
fs_1.default.writeFileSync(options.output, fingerprints);
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
console.log(fingerprints);
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
const wfpInput = { fileList: filesToFingerprint, folderRoot: rootPath };
|
|
49
|
-
if (options.hpsm)
|
|
50
|
-
wfpInput.winnowingMode = ScannerTypes_1.WinnowingMode.FULL_WINNOWING_HPSM;
|
|
51
|
-
wfpCalculator.start(wfpInput);
|
|
52
|
-
}
|
|
53
|
-
exports.fingerprintHandler = fingerprintHandler;
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZ2VycHJpbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2xpL2NvbW1hbmRzL2ZpbmdlcnByaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNENBQW9CO0FBRXBCLGdFQUF1QztBQUV2Qyx1Q0FBcUM7QUFDckMsaUVBQThFO0FBRTlFLDZGQUEwRjtBQUUxRiw4Q0FBMkM7QUFDM0MsOEVBQTJFO0FBR3BFLEtBQUssVUFBVSxrQkFBa0IsQ0FBQyxRQUFnQixFQUFFLE9BQVk7SUFFckUsUUFBUSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUUsa0NBQWtDO0lBQzNFLFFBQVEsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUUsMENBQTBDO0lBQ2hHLE1BQU0sWUFBWSxHQUFHLE1BQU0sa0JBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5QyxNQUFNLGFBQWEsR0FBRyxJQUFJLDZCQUFhLEVBQUUsQ0FBQztJQUUxQyxJQUFJLGtCQUFrQixHQUFhLEVBQUUsQ0FBQztJQUN0QyxJQUFJLFlBQVksRUFBRTtRQUNoQixNQUFNLElBQUksR0FBRyxJQUFJLFdBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDYixrQkFBa0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksbUNBQWdCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztLQUNqRTtTQUFNO1FBQ0wsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0tBQ2xDO0lBR0QsTUFBTSxPQUFPLEdBQUcsRUFBRSxNQUFNLEVBQUUseUZBQXlGLEVBQUUsQ0FBQztJQUN0SCxNQUFNLElBQUksR0FBRyxJQUFJLHNCQUFXLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxzQkFBVyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNwRixJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUV6QyxJQUFJLFlBQVksR0FBRyxFQUFFLENBQUM7SUFDdEIsYUFBYSxDQUFDLEVBQUUsQ0FBQyw0QkFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUMsa0JBQXNDLEVBQUUsRUFBRTtRQUMvRixJQUFJLENBQUMsU0FBUyxDQUFDLGtCQUFrQixDQUFDLDJCQUEyQixFQUFFLENBQUMsQ0FBQztRQUNqRSxZQUFZLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBRSxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsQ0FBRSxDQUFDO0lBQ3hFLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxPQUFPLENBQUMsT0FBTztRQUNqQixhQUFhLENBQUMsRUFBRSxDQUFDLDRCQUFhLENBQUMsWUFBWSxFQUFFLENBQUMsR0FBVyxFQUFFLEVBQUU7WUFDM0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQztJQUVMLGFBQWEsQ0FBQyxFQUFFLENBQUMsNEJBQWEsQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLEVBQUU7UUFDdEQsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ1osSUFBRyxPQUFPLENBQUMsTUFBTSxFQUFFO1lBQ2pCLFlBQUUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxZQUFZLENBQUMsQ0FBQztTQUNoRDthQUFNO1lBQ0wsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUMzQjtJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxRQUFRLEdBQXNCLEVBQUMsUUFBUSxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUMsQ0FBQTtJQUN4RixJQUFHLE9BQU8sQ0FBQyxJQUFJO1FBQUUsUUFBUSxDQUFDLGFBQWEsR0FBRyw0QkFBYSxDQUFDLG1CQUFtQixDQUFDO0lBQzVFLGFBQWEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7QUFHaEMsQ0FBQztBQTlDRCxnREE4Q0MifQ==
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { Decompressor } from './Decompressor/Decompressor';
|
|
2
|
-
export declare class DecompressionManager {
|
|
3
|
-
private decompressorList;
|
|
4
|
-
private decompressionLevel;
|
|
5
|
-
private suffix;
|
|
6
|
-
private removeFolderOnFailure;
|
|
7
|
-
constructor(decompressionLevel?: number, suffix?: string, removeFolderOnFailure?: boolean);
|
|
8
|
-
addDecompressor(d: Decompressor): void;
|
|
9
|
-
getSupportedFormats(): Array<string>;
|
|
10
|
-
decompress(archivesPaths: Array<string>): Promise<Array<string>>;
|
|
11
|
-
decompressRecursive(archivePath: string, level: number): Promise<void>;
|
|
12
|
-
}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
2
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
3
|
-
};
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.DecompressionManager = void 0;
|
|
6
|
-
const path_1 = __importDefault(require("path"));
|
|
7
|
-
const fs_1 = __importDefault(require("fs"));
|
|
8
|
-
const Tree_1 = require("../tree/Tree");
|
|
9
|
-
const DecompressionFilter_1 = require("../tree/Filters/DecompressionFilter");
|
|
10
|
-
const DecompressZips_1 = require("./Decompressor/DecompressZips");
|
|
11
|
-
const DecompressTgz_1 = require("./Decompressor/DecompressTgz");
|
|
12
|
-
class DecompressionManager {
|
|
13
|
-
constructor(decompressionLevel = 1, suffix = "-unzipped", removeFolderOnFailure = false) {
|
|
14
|
-
this.decompressionLevel = decompressionLevel;
|
|
15
|
-
this.removeFolderOnFailure = removeFolderOnFailure;
|
|
16
|
-
this.suffix = suffix;
|
|
17
|
-
this.decompressorList = [
|
|
18
|
-
new DecompressTgz_1.DecompressTgz(),
|
|
19
|
-
new DecompressZips_1.DecompressZip()
|
|
20
|
-
];
|
|
21
|
-
}
|
|
22
|
-
addDecompressor(d) {
|
|
23
|
-
this.decompressorList.push(d);
|
|
24
|
-
}
|
|
25
|
-
getSupportedFormats() {
|
|
26
|
-
const supportedFormats = [];
|
|
27
|
-
this.decompressorList.forEach((d) => {
|
|
28
|
-
supportedFormats.push(...d.getSupportedFormats());
|
|
29
|
-
});
|
|
30
|
-
return supportedFormats;
|
|
31
|
-
}
|
|
32
|
-
async decompress(archivesPaths) {
|
|
33
|
-
for (const archivePath of archivesPaths)
|
|
34
|
-
await this.decompressRecursive(archivePath, 0);
|
|
35
|
-
const parentFoldersPath = archivesPaths.map(archivePath => `${archivePath}${this.suffix}`);
|
|
36
|
-
return parentFoldersPath;
|
|
37
|
-
}
|
|
38
|
-
async decompressRecursive(archivePath, level) {
|
|
39
|
-
if (level >= this.decompressionLevel)
|
|
40
|
-
return;
|
|
41
|
-
const archiveRootPath = path_1.default.dirname(archivePath);
|
|
42
|
-
const archiveName = path_1.default.basename(archivePath);
|
|
43
|
-
const newFolderPath = `${archiveRootPath}${path_1.default.sep}${archiveName}${this.suffix}`;
|
|
44
|
-
const isSupported = this.decompressorList.some((d) => d.isSupported(archiveName));
|
|
45
|
-
if (isSupported) {
|
|
46
|
-
await fs_1.default.promises.mkdir(newFolderPath, { recursive: true });
|
|
47
|
-
//Search for decompressor and extract archive
|
|
48
|
-
for (const d of this.decompressorList) {
|
|
49
|
-
if (d.isSupported(archiveName)) {
|
|
50
|
-
await d.run(archivePath, newFolderPath);
|
|
51
|
-
break;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
//Search for new archives
|
|
55
|
-
const tree = new Tree_1.Tree(newFolderPath);
|
|
56
|
-
tree.build();
|
|
57
|
-
const newFilesPath = tree.getFileList(new DecompressionFilter_1.DecompressionFilter(""));
|
|
58
|
-
for (const newFilePath of newFilesPath) {
|
|
59
|
-
await this.decompressRecursive(newFilePath, level + 1);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
exports.DecompressionManager = DecompressionManager;
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVjb21wcmVzc2lvbk1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2RrL0RlY29tcHJlc3MvRGVjb21wcmVzc2lvbk1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxnREFBd0I7QUFDeEIsNENBQW9CO0FBQ3BCLHVDQUFvQztBQUNwQyw2RUFBMEU7QUFFMUUsa0VBQThEO0FBQzlELGdFQUE2RDtBQUU3RCxNQUFhLG9CQUFvQjtJQVUvQixZQUFZLHFCQUE2QixDQUFDLEVBQUUsU0FBaUIsV0FBVyxFQUFFLHdCQUFpQyxLQUFLO1FBQzlHLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQztRQUM3QyxJQUFJLENBQUMscUJBQXFCLEdBQUcscUJBQXFCLENBQUM7UUFDbkQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFFckIsSUFBSSxDQUFDLGdCQUFnQixHQUFHO1lBQ3RCLElBQUksNkJBQWEsRUFBRTtZQUNuQixJQUFJLDhCQUFhLEVBQUU7U0FDcEIsQ0FBQztJQUVKLENBQUM7SUFFTSxlQUFlLENBQUMsQ0FBZTtRQUNwQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2xDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUE7UUFDbkQsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLGdCQUFnQixDQUFDO0lBQzFCLENBQUM7SUFFTSxLQUFLLENBQUMsVUFBVSxDQUFDLGFBQTRCO1FBQ2xELEtBQUssTUFBTSxXQUFXLElBQUksYUFBYTtZQUFFLE1BQU0sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4RixNQUFNLGlCQUFpQixHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUMzRixPQUFPLGlCQUFpQixDQUFDO0lBQzNCLENBQUM7SUFFTSxLQUFLLENBQUMsbUJBQW1CLENBQUMsV0FBbUIsRUFBRSxLQUFhO1FBQ2pFLElBQUcsS0FBSyxJQUFFLElBQUksQ0FBQyxrQkFBa0I7WUFBRSxPQUFNO1FBRXpDLE1BQU0sZUFBZSxHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbEQsTUFBTSxXQUFXLEdBQUcsY0FBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMvQyxNQUFNLGFBQWEsR0FBRyxHQUFHLGVBQWUsR0FBRyxjQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFbEYsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFBO1FBQ2pGLElBQUcsV0FBVyxFQUFFO1lBQ2QsTUFBTSxZQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUU1RCw2Q0FBNkM7WUFDN0MsS0FBSyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7Z0JBQ3JDLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsRUFBRTtvQkFDOUIsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUMsQ0FBQztvQkFDeEMsTUFBTTtpQkFDUDthQUNGO1lBR0QseUJBQXlCO1lBQ3pCLE1BQU0sSUFBSSxHQUFHLElBQUksV0FBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQTtZQUNaLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSx5Q0FBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ25FLEtBQUssTUFBTSxXQUFXLElBQUksWUFBWSxFQUFFO2dCQUN0QyxNQUFNLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsS0FBSyxHQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3REO1NBQ0Y7SUFFSCxDQUFDO0NBRUY7QUF2RUQsb0RBdUVDIn0=
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
2
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
3
|
-
};
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.DecompressTgz = void 0;
|
|
6
|
-
const Decompressor_1 = require("./Decompressor");
|
|
7
|
-
const tar_1 = __importDefault(require("tar"));
|
|
8
|
-
class DecompressTgz extends Decompressor_1.Decompressor {
|
|
9
|
-
constructor() {
|
|
10
|
-
super();
|
|
11
|
-
this.supportedFormats = [
|
|
12
|
-
".tar.gz",
|
|
13
|
-
".tgz",
|
|
14
|
-
".tar",
|
|
15
|
-
];
|
|
16
|
-
}
|
|
17
|
-
async run(archivePath, destPath) {
|
|
18
|
-
return tar_1.default.x({ C: destPath, file: archivePath });
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.DecompressTgz = DecompressTgz;
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVjb21wcmVzc1Rnei5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvRGVjb21wcmVzcy9EZWNvbXByZXNzb3IvRGVjb21wcmVzc1Rnei50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlEQUE4QztBQUU5Qyw4Q0FBc0I7QUFFdEIsTUFBYSxhQUFjLFNBQVEsMkJBQVk7SUFFN0M7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxnQkFBZ0IsR0FBRztZQUN0QixTQUFTO1lBQ1QsTUFBTTtZQUNOLE1BQU07U0FDUCxDQUFBO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxHQUFHLENBQUMsV0FBbUIsRUFBRSxRQUFnQjtRQUNsRCxPQUFPLGFBQUcsQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7Q0FFRjtBQWZELHNDQWVDIn0=
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
2
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
3
|
-
};
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.DecompressZip = void 0;
|
|
6
|
-
const Decompressor_1 = require("./Decompressor");
|
|
7
|
-
const adm_zip_1 = __importDefault(require("adm-zip"));
|
|
8
|
-
class DecompressZip extends Decompressor_1.Decompressor {
|
|
9
|
-
constructor() {
|
|
10
|
-
super();
|
|
11
|
-
this.supportedFormats = [
|
|
12
|
-
".zip",
|
|
13
|
-
".jar",
|
|
14
|
-
".ear",
|
|
15
|
-
".war"
|
|
16
|
-
];
|
|
17
|
-
}
|
|
18
|
-
async run(archivePath, destPath) {
|
|
19
|
-
const zip = new adm_zip_1.default(archivePath);
|
|
20
|
-
zip.extractAllTo(destPath);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
exports.DecompressZip = DecompressZip;
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVjb21wcmVzc1ppcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2RrL0RlY29tcHJlc3MvRGVjb21wcmVzc29yL0RlY29tcHJlc3NaaXBzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaURBQThDO0FBQzlDLHNEQUE2QjtBQUU3QixNQUFhLGFBQWMsU0FBUSwyQkFBWTtJQUU3QztRQUNFLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLGdCQUFnQixHQUFHO1lBQ3RCLE1BQU07WUFDTixNQUFNO1lBQ04sTUFBTTtZQUNOLE1BQU07U0FDUCxDQUFBO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxHQUFHLENBQUMsV0FBbUIsRUFBRSxRQUFnQjtRQUNwRCxNQUFNLEdBQUcsR0FBRyxJQUFJLGlCQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDcEMsR0FBRyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM3QixDQUFDO0NBRUY7QUFqQkQsc0NBaUJDIn0=
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export declare abstract class Decompressor {
|
|
2
|
-
protected supportedFormats: Array<string>;
|
|
3
|
-
abstract run(archivePath: string, destPath: string): Promise<void>;
|
|
4
|
-
isSupported(filename: string): boolean;
|
|
5
|
-
/**
|
|
6
|
-
* Returns the extension supported by this decompressor
|
|
7
|
-
* Includes the '.' appended
|
|
8
|
-
*/
|
|
9
|
-
getSupportedFormats(): Array<string>;
|
|
10
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
-
exports.Decompressor = void 0;
|
|
3
|
-
class Decompressor {
|
|
4
|
-
isSupported(filename) {
|
|
5
|
-
if (this.supportedFormats.some((format) => filename.endsWith(format)))
|
|
6
|
-
return true;
|
|
7
|
-
return false;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Returns the extension supported by this decompressor
|
|
11
|
-
* Includes the '.' appended
|
|
12
|
-
*/
|
|
13
|
-
getSupportedFormats() {
|
|
14
|
-
return this.supportedFormats;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
exports.Decompressor = Decompressor;
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVjb21wcmVzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3Nkay9EZWNvbXByZXNzL0RlY29tcHJlc3Nvci9EZWNvbXByZXNzb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxNQUFzQixZQUFZO0lBS3pCLFdBQVcsQ0FBQyxRQUFnQjtRQUNqQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQztRQUNuRixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFHRDs7O09BR0c7SUFDSSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztDQUVGO0FBbkJELG9DQW1CQyJ9
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { ILicenses, IReportData, IReportEntry, ISaveResponse, Summary } from './types';
|
|
2
|
-
export declare const reportDefaultPath: {
|
|
3
|
-
html: any;
|
|
4
|
-
};
|
|
5
|
-
export declare abstract class Report {
|
|
6
|
-
private readonly resultPath;
|
|
7
|
-
private readonly dependenciesPath;
|
|
8
|
-
private vulnerabilitiesPath;
|
|
9
|
-
private readonly outputPath;
|
|
10
|
-
private licenseMapper;
|
|
11
|
-
private fileExtension;
|
|
12
|
-
private summary;
|
|
13
|
-
private readonly projectName;
|
|
14
|
-
private licenses;
|
|
15
|
-
protected constructor(params: IReportEntry);
|
|
16
|
-
abstract generate(): any;
|
|
17
|
-
protected setFileExtension(ext: string): void;
|
|
18
|
-
protected abstract validTemplateExtension(): boolean;
|
|
19
|
-
protected save(file: string, fileName: string, folder: string): Promise<ISaveResponse>;
|
|
20
|
-
protected readFile(path: string): Promise<any>;
|
|
21
|
-
getReportData(): Promise<IReportData>;
|
|
22
|
-
getLicenseMapper(): Record<string, ILicenses>;
|
|
23
|
-
getSummary(): Summary;
|
|
24
|
-
}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
-
exports.Report = exports.reportDefaultPath = void 0;
|
|
3
|
-
const types_1 = require("./types");
|
|
4
|
-
const ReportAdapter_1 = require("./ReportAdapter");
|
|
5
|
-
const fs = require('fs').promises;
|
|
6
|
-
const f = require('fs');
|
|
7
|
-
const path = require('path');
|
|
8
|
-
exports.reportDefaultPath = {
|
|
9
|
-
html: path.join(__dirname, "../../../../../assets/htmlTemplate/template.html")
|
|
10
|
-
};
|
|
11
|
-
class Report {
|
|
12
|
-
constructor(params) {
|
|
13
|
-
this.licenseMapper = {};
|
|
14
|
-
this.projectName = params.projectName;
|
|
15
|
-
this.resultPath = params.resultPath;
|
|
16
|
-
this.dependenciesPath = params.dependencyPath ? params.dependencyPath : null;
|
|
17
|
-
this.vulnerabilitiesPath = params.vulnerabilityPath ? params.vulnerabilityPath : null;
|
|
18
|
-
this.outputPath = params.outputPath;
|
|
19
|
-
this.fileExtension = null;
|
|
20
|
-
this.summary = { matchedFiles: 0, noMatchFiles: 0, totalFiles: 0 };
|
|
21
|
-
}
|
|
22
|
-
setFileExtension(ext) {
|
|
23
|
-
this.fileExtension = ext;
|
|
24
|
-
}
|
|
25
|
-
async save(file, fileName, folder) {
|
|
26
|
-
try {
|
|
27
|
-
await fs.writeFile(this.outputPath, file);
|
|
28
|
-
return {
|
|
29
|
-
status: types_1.SaveStatus.OK,
|
|
30
|
-
path: this.outputPath,
|
|
31
|
-
format: path.extname(this.outputPath),
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
catch (error) {
|
|
35
|
-
return {
|
|
36
|
-
status: types_1.SaveStatus.FAILED,
|
|
37
|
-
path: this.outputPath,
|
|
38
|
-
format: path.extname(this.outputPath),
|
|
39
|
-
message: error.message
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
async readFile(path) {
|
|
44
|
-
const data = await fs.readFile(path);
|
|
45
|
-
return data;
|
|
46
|
-
}
|
|
47
|
-
async getReportData() {
|
|
48
|
-
const reportAdapter = new ReportAdapter_1.ReportAdapter(this);
|
|
49
|
-
const results = await this.readFile(this.resultPath);
|
|
50
|
-
const r = JSON.parse(results);
|
|
51
|
-
reportAdapter.getResultLicenses(r);
|
|
52
|
-
this.summary.totalFiles = reportAdapter.getTotalFiles(r);
|
|
53
|
-
if (this.dependenciesPath) {
|
|
54
|
-
const dependencies = await this.readFile(this.dependenciesPath);
|
|
55
|
-
reportAdapter.getDependenciesLicenses(JSON.parse(dependencies).filesList);
|
|
56
|
-
}
|
|
57
|
-
// set unknown licenses to the of the array
|
|
58
|
-
// this.unknownLicensesToEnd();
|
|
59
|
-
reportAdapter.checkForIncompatibilities(this.licenses);
|
|
60
|
-
return {
|
|
61
|
-
projectName: this.projectName,
|
|
62
|
-
licenses: this.licenses,
|
|
63
|
-
summary: this.summary,
|
|
64
|
-
date: new Date().toLocaleTimeString(),
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
getLicenseMapper() {
|
|
68
|
-
return this.licenseMapper;
|
|
69
|
-
}
|
|
70
|
-
getSummary() {
|
|
71
|
-
return this.summary;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
exports.Report = Report;
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3Nkay9tb2R1bGVzL3JlcG9ydHMvUmVwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUNBTWlCO0FBQ2pCLG1EQUFnRDtBQUNoRCxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDO0FBQ2xDLE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN4QixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUE7QUFFZixRQUFBLGlCQUFpQixHQUFHO0lBQy9CLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBQyxrREFBa0QsQ0FBQztDQUM5RSxDQUFBO0FBRUQsTUFBc0IsTUFBTTtJQVcxQixZQUFzQixNQUFvQjtRQU5sQyxrQkFBYSxHQUE4QixFQUFFLENBQUM7UUFPcEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFBO1FBQ3JDLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNwQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQSxDQUFDLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzVFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3JGLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUNwQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsWUFBWSxFQUFDLENBQUMsRUFBRSxZQUFZLEVBQUMsQ0FB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
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { Report } from './Report';
|
|
2
|
-
import { ILicenses } from './types';
|
|
3
|
-
export declare class ReportAdapter {
|
|
4
|
-
private report;
|
|
5
|
-
constructor(report: Report);
|
|
6
|
-
getResultLicenses(results: Record<string, any>): void;
|
|
7
|
-
getTotalFiles(results: Record<string, any>): number;
|
|
8
|
-
getDependenciesLicenses(dependencies: any): void;
|
|
9
|
-
private getNewComponent;
|
|
10
|
-
private addComponentToLicense;
|
|
11
|
-
checkForIncompatibilities(licenses: Array<ILicenses>): void;
|
|
12
|
-
}
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
-
exports.ReportAdapter = void 0;
|
|
3
|
-
class ReportAdapter {
|
|
4
|
-
constructor(report) {
|
|
5
|
-
this.report = report;
|
|
6
|
-
}
|
|
7
|
-
getResultLicenses(results) {
|
|
8
|
-
const licenses = {};
|
|
9
|
-
Object.entries(results).forEach(([key, value]) => {
|
|
10
|
-
value.forEach((v) => {
|
|
11
|
-
if (v.id != 'none') {
|
|
12
|
-
this.report.getSummary().matchedFiles++;
|
|
13
|
-
// Licenses
|
|
14
|
-
v.licenses.forEach((l) => {
|
|
15
|
-
const component = this.getNewComponent(v.purl[0], v.vendor, v.version, v.component, v.url);
|
|
16
|
-
if (!this.report.getLicenseMapper()[l.name]) {
|
|
17
|
-
this.report.getLicenseMapper()[l.name] = {
|
|
18
|
-
value: 1,
|
|
19
|
-
label: l.name,
|
|
20
|
-
copyleft: l.copyleft === 'yes' ? true : false,
|
|
21
|
-
hasIncompatibles: [],
|
|
22
|
-
incompatibleWith: l.incompatible_with !== undefined ? l.incompatible_with.split(',').map(il => il.trim()) : [],
|
|
23
|
-
components: [component]
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
this.addComponentToLicense(l.name, v.purl[0], v.version, component);
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
this.report.getSummary().noMatchFiles++;
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
getTotalFiles(results) {
|
|
38
|
-
return Object.keys(results).length;
|
|
39
|
-
}
|
|
40
|
-
getDependenciesLicenses(dependencies) {
|
|
41
|
-
dependencies.map((f) => {
|
|
42
|
-
//dependencies
|
|
43
|
-
f.dependenciesList.map((d) => {
|
|
44
|
-
d.licensesList.map((licenses) => {
|
|
45
|
-
const component = this.getNewComponent(d.purl, null, d.version, d.component, '');
|
|
46
|
-
if (licenses.spdxId !== '') {
|
|
47
|
-
licenses.spdxId.split(/;|\//g).forEach((l) => {
|
|
48
|
-
if (!this.report.getLicenseMapper()[l]) {
|
|
49
|
-
this.report.getLicenseMapper()[l] = {
|
|
50
|
-
label: l,
|
|
51
|
-
value: 1,
|
|
52
|
-
copyleft: false,
|
|
53
|
-
hasIncompatibles: [],
|
|
54
|
-
incompatibleWith: [],
|
|
55
|
-
components: [component],
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
this.addComponentToLicense(l, d.purl, d.version, component);
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
else { //Unknown licenses
|
|
64
|
-
if (!this.report.getLicenseMapper()['unknown']) {
|
|
65
|
-
this.report.getLicenseMapper().unknown = {
|
|
66
|
-
label: 'unknown',
|
|
67
|
-
value: 1,
|
|
68
|
-
copyleft: false,
|
|
69
|
-
hasIncompatibles: [],
|
|
70
|
-
incompatibleWith: [],
|
|
71
|
-
components: [component],
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
this.addComponentToLicense('unknown', d.purl, d.version, component);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
getNewComponent(purl, vendor, version, name, url) {
|
|
83
|
-
return {
|
|
84
|
-
purl,
|
|
85
|
-
vendor: vendor ? vendor : '',
|
|
86
|
-
versions: [version],
|
|
87
|
-
name: name ? name : '',
|
|
88
|
-
url,
|
|
89
|
-
};
|
|
90
|
-
}
|
|
91
|
-
addComponentToLicense(license, purl, version, component) {
|
|
92
|
-
const auxComp = this.report.getLicenseMapper()[license].components.findIndex((c) => c.purl === purl);
|
|
93
|
-
if (auxComp >= 0) { //if component exists
|
|
94
|
-
const auxVersion = this.report.getLicenseMapper()[license].components[auxComp].versions.find((version) => version === version);
|
|
95
|
-
if (!auxVersion) {
|
|
96
|
-
this.report.getLicenseMapper()[license].components[auxComp].versions.push(version);
|
|
97
|
-
this.report.getLicenseMapper()[license].value++;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
else {
|
|
101
|
-
this.report.getLicenseMapper()[license].components.push(component);
|
|
102
|
-
this.report.getLicenseMapper()[license].value++;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
checkForIncompatibilities(licenses) {
|
|
106
|
-
for (let l = 0; l < licenses.length; l += 1) {
|
|
107
|
-
const license = licenses[l];
|
|
108
|
-
if (license.incompatibleWith !== undefined)
|
|
109
|
-
for (let i = 0; i < license.incompatibleWith.length; i += 1) {
|
|
110
|
-
if (licenses.some((lic) => lic.label === license.incompatibleWith[i]))
|
|
111
|
-
license.hasIncompatibles.push(license.incompatibleWith[i]);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
exports.ReportAdapter = ReportAdapter;
|
|
117
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3J0QWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvbW9kdWxlcy9yZXBvcnRzL1JlcG9ydEFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFHQSxNQUFhLGFBQWE7SUFFeEIsWUFBWSxNQUFjO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxPQUE0QjtRQUNqRCxNQUFNLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDcEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBQyxLQUFLLENBQUMsRUFBQyxFQUFFO1lBQzdDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUMsRUFBRTtnQkFDakIsSUFBRyxDQUFDLENBQUMsRUFBRSxJQUFFLE1BQU0sRUFBQztvQkFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO29CQUN4QyxXQUFXO29CQUNYLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFDLEVBQUU7d0JBQ3RCLE1BQU0sU0FBUyxHQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBQyxDQUFDLENBQUMsTUFBTSxFQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQ3pGLElBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFOzRCQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHO2dDQUN2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
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Report } from '../Report';
|
|
2
|
-
import { IReportEntry, ISaveResponse } from '../types';
|
|
3
|
-
export declare class HTMLReport extends Report {
|
|
4
|
-
private html;
|
|
5
|
-
private readonly htmlTemplatePath;
|
|
6
|
-
private readonly extension;
|
|
7
|
-
private readonly fileName;
|
|
8
|
-
private readonly folder;
|
|
9
|
-
constructor(params: IReportEntry);
|
|
10
|
-
generate(): Promise<string>;
|
|
11
|
-
private setDataOnHtmlFile;
|
|
12
|
-
save(): Promise<ISaveResponse>;
|
|
13
|
-
protected validTemplateExtension(): boolean;
|
|
14
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
-
exports.HTMLReport = void 0;
|
|
3
|
-
const Report_1 = require("../Report");
|
|
4
|
-
const path = require('path');
|
|
5
|
-
class HTMLReport extends Report_1.Report {
|
|
6
|
-
constructor(params) {
|
|
7
|
-
super(params);
|
|
8
|
-
this.htmlTemplatePath = params.templatePath ? params.templatePath : Report_1.reportDefaultPath.html;
|
|
9
|
-
this.html = null;
|
|
10
|
-
this.extension = '.html';
|
|
11
|
-
this.folder = 'HTML';
|
|
12
|
-
this.fileName = 'report.html';
|
|
13
|
-
super.setFileExtension(this.extension);
|
|
14
|
-
}
|
|
15
|
-
async generate() {
|
|
16
|
-
const reportData = await this.getReportData();
|
|
17
|
-
await this.setDataOnHtmlFile(reportData);
|
|
18
|
-
return this.html;
|
|
19
|
-
}
|
|
20
|
-
async setDataOnHtmlFile(reportData) {
|
|
21
|
-
if (!this.validTemplateExtension())
|
|
22
|
-
throw new Error('Invalid template extension');
|
|
23
|
-
let html = (await this.readFile(this.htmlTemplatePath)).toString();
|
|
24
|
-
if (!html)
|
|
25
|
-
throw new Error('Invalid template path');
|
|
26
|
-
html = html.replace('#DATA', JSON.stringify(reportData));
|
|
27
|
-
this.html = html;
|
|
28
|
-
}
|
|
29
|
-
async save() {
|
|
30
|
-
const response = await super.save(this.html, this.fileName, this.folder);
|
|
31
|
-
return response;
|
|
32
|
-
}
|
|
33
|
-
validTemplateExtension() {
|
|
34
|
-
const templateExtension = path.extname(this.htmlTemplatePath);
|
|
35
|
-
return templateExtension === this.extension;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
exports.HTMLReport = HTMLReport;
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSFRNTFJlcG9ydC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvbW9kdWxlcy9yZXBvcnRzL2h0bWxSZXBvcnQvSFRNTFJlcG9ydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHNDQUFzRDtBQU90RCxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUE7QUFFNUIsTUFBYSxVQUFXLFNBQVEsZUFBTTtJQU9sQyxZQUFZLE1BQW9CO1FBQzlCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNkLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFBLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQywwQkFBaUIsQ0FBQyxJQUFJLENBQUM7UUFDMUYsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7UUFDekIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUM7UUFDOUIsS0FBSyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU0sS0FBSyxDQUFDLFFBQVE7UUFDbkIsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDOUMsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFTyxLQUFLLENBQUMsaUJBQWlCLENBQUMsVUFBdUI7UUFDckQsSUFBRyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUMvRSxJQUFJLElBQUksR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ25FLElBQUcsQ0FBQyxJQUFJO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ25ELElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDckIsQ0FBQztJQUVNLEtBQUssQ0FBQyxJQUFJO1FBQ2IsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEUsT0FBUSxRQUFRLENBQUM7SUFDckIsQ0FBQztJQUVRLHNCQUFzQjtRQUNqQyxNQUFNLGlCQUFpQixHQUFLLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUE7UUFDL0QsT0FBTyxpQkFBaUIsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzVDLENBQUM7Q0FFRjtBQXpDRCxnQ0F5Q0MifQ==
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
export interface IReportEntry {
|
|
2
|
-
resultPath: string;
|
|
3
|
-
dependencyPath?: string;
|
|
4
|
-
vulnerabilityPath?: string;
|
|
5
|
-
outputPath: string;
|
|
6
|
-
templatePath?: string;
|
|
7
|
-
projectName: string;
|
|
8
|
-
}
|
|
9
|
-
export interface ILicenses {
|
|
10
|
-
label: string;
|
|
11
|
-
value: number;
|
|
12
|
-
components: Array<Component>;
|
|
13
|
-
incompatibleWith: Array<string>;
|
|
14
|
-
hasIncompatibles: Array<string>;
|
|
15
|
-
copyleft: boolean;
|
|
16
|
-
}
|
|
17
|
-
export interface IReportData {
|
|
18
|
-
projectName: string;
|
|
19
|
-
licenses: Array<ILicenses>;
|
|
20
|
-
summary: Summary;
|
|
21
|
-
date: string;
|
|
22
|
-
}
|
|
23
|
-
export interface Component {
|
|
24
|
-
purl: string;
|
|
25
|
-
versions: Array<string>;
|
|
26
|
-
url: string;
|
|
27
|
-
name: string;
|
|
28
|
-
vendor: string;
|
|
29
|
-
}
|
|
30
|
-
export interface ISaveResponse {
|
|
31
|
-
status: SaveStatus;
|
|
32
|
-
path: string;
|
|
33
|
-
format: string;
|
|
34
|
-
message?: string;
|
|
35
|
-
}
|
|
36
|
-
export declare enum SaveStatus {
|
|
37
|
-
OK = 0,
|
|
38
|
-
FAILED = 1
|
|
39
|
-
}
|
|
40
|
-
export interface Summary {
|
|
41
|
-
matchedFiles: number;
|
|
42
|
-
noMatchFiles: number;
|
|
43
|
-
totalFiles: number;
|
|
44
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
-
exports.SaveStatus = void 0;
|
|
3
|
-
var SaveStatus;
|
|
4
|
-
(function (SaveStatus) {
|
|
5
|
-
SaveStatus[SaveStatus["OK"] = 0] = "OK";
|
|
6
|
-
SaveStatus[SaveStatus["FAILED"] = 1] = "FAILED";
|
|
7
|
-
})(SaveStatus = exports.SaveStatus || (exports.SaveStatus = {}));
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2RrL21vZHVsZXMvcmVwb3J0cy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXlDQSxJQUFZLFVBR1g7QUFIRCxXQUFZLFVBQVU7SUFDcEIsdUNBQUUsQ0FBQTtJQUNGLCtDQUFNLENBQUE7QUFDUixDQUFDLEVBSFcsVUFBVSxHQUFWLGtCQUFVLEtBQVYsa0JBQVUsUUFHckIifQ==
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2
|
-
exports.DecompressionFilter = void 0;
|
|
3
|
-
const Filter_1 = require("./Filter");
|
|
4
|
-
const Node_1 = require("../Node");
|
|
5
|
-
const DecompressionManager_1 = require("../../Decompress/DecompressionManager");
|
|
6
|
-
class DecompressionFilter extends Filter_1.Filter {
|
|
7
|
-
constructor(filterName) {
|
|
8
|
-
super();
|
|
9
|
-
this.supportedFileExtension = new DecompressionManager_1.DecompressionManager().getSupportedFormats();
|
|
10
|
-
}
|
|
11
|
-
//Returns true if you want the file
|
|
12
|
-
evaluate(node) {
|
|
13
|
-
if (node.getType() == Node_1.NodeType.FOLDER)
|
|
14
|
-
return true;
|
|
15
|
-
if (this.supportedFileExtension.some(supportedFormat => node.getName().endsWith(supportedFormat)))
|
|
16
|
-
return true;
|
|
17
|
-
return false;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
exports.DecompressionFilter = DecompressionFilter;
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVjb21wcmVzc2lvbkZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvdHJlZS9GaWx0ZXJzL0RlY29tcHJlc3Npb25GaWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxxQ0FBa0M7QUFDbEMsa0NBQXlDO0FBQ3pDLGdGQUE2RTtBQUc3RSxNQUFhLG1CQUFvQixTQUFRLGVBQU07SUFJN0MsWUFBbUIsVUFBa0I7UUFDbkMsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSwyQ0FBb0IsRUFBRSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDakYsQ0FBQztJQUVELG1DQUFtQztJQUM1QixRQUFRLENBQUMsSUFBVTtRQUN4QixJQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxlQUFRLENBQUMsTUFBTTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ2xELElBQUksSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUM7WUFBRSxPQUFPLElBQUksQ0FBQztRQUMvRyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Q0FFRjtBQWhCRCxrREFnQkMifQ==
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function fingerprintHandler(rootPath: string, options: any): Promise<void>;
|