scanoss 0.22.0 → 0.24.0
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/CHANGELOG.md +11 -0
- package/build/main/sdk/Clients/Cryptography/CryptographyGRPCClient.js +3 -3
- package/build/main/sdk/Clients/Cryptography/CryptographyHttpClient.js +23 -6
- package/build/main/sdk/Clients/Cryptography/ICryptographyClient.d.ts +2 -2
- package/build/main/sdk/Components/ComponentsScanner.js +1 -1
- package/build/main/sdk/Cryptography/Algorithm/Files/AlgorithmProcessor.d.ts +1 -1
- package/build/main/sdk/Cryptography/Algorithm/Files/AlgorithmProcessor.js +2 -1
- package/build/main/sdk/Cryptography/Helper/ResultCollector/Component/ComponentCryptographyResultColletor.js +11 -11
- package/build/main/sdk/Cryptography/Hint/Files/HintProcessor.d.ts +1 -1
- package/build/main/sdk/Cryptography/Hint/Files/HintProcessor.js +3 -2
- package/build/main/tsconfig.tsbuildinfo +1 -1
- package/build/module/sdk/Clients/Cryptography/CryptographyGRPCClient.js +3 -3
- package/build/module/sdk/Clients/Cryptography/CryptographyHttpClient.js +23 -6
- package/build/module/sdk/Clients/Cryptography/ICryptographyClient.d.ts +2 -2
- package/build/module/sdk/Components/ComponentsScanner.js +1 -1
- package/build/module/sdk/Cryptography/Algorithm/Files/AlgorithmProcessor.d.ts +1 -1
- package/build/module/sdk/Cryptography/Algorithm/Files/AlgorithmProcessor.js +2 -1
- package/build/module/sdk/Cryptography/Helper/ResultCollector/Component/ComponentCryptographyResultColletor.js +11 -11
- package/build/module/sdk/Cryptography/Hint/Files/HintProcessor.d.ts +1 -1
- package/build/module/sdk/Cryptography/Hint/Files/HintProcessor.js +3 -2
- package/build/module/tsconfig.module.tsbuildinfo +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
## [0.24.0] (2025-09-23)
|
|
6
|
+
### Bug
|
|
7
|
+
- Fixed bug on local cryptography hints detection
|
|
8
|
+
|
|
9
|
+
## [0.23.0] (2025-09-19)
|
|
10
|
+
### Bug
|
|
11
|
+
- Fixed bug in the cryptography scanner
|
|
12
|
+
### Changed
|
|
13
|
+
- Enhance http error handling on cryptography client
|
|
5
14
|
|
|
6
15
|
## [0.22.0] (2025-09-05)
|
|
7
16
|
### Added
|
|
@@ -149,3 +158,5 @@ All notable changes to this project will be documented in this file. See [standa
|
|
|
149
158
|
### [0.21.0](https://github.com/scanoss/scanoss.js/compare/v0.18.0...v0.19.0) (2025-09-03)
|
|
150
159
|
### [0.21.1](https://github.com/scanoss/scanoss.js/compare/v0.18.0...v0.19.0) (2025-09-03)
|
|
151
160
|
### [0.22.0](https://github.com/scanoss/scanoss.js/compare/v0.18.0...v0.19.0) (2025-09-05)
|
|
161
|
+
### [0.23.0](https://github.com/scanoss/scanoss.js/compare/v0.22.0...v0.23.0) (2025-09-19)
|
|
162
|
+
### [0.24.0](https://github.com/scanoss/scanoss.js/compare/v0.23.0...v0.24.0) (2025-09-23)
|
|
@@ -97,7 +97,7 @@ class CryptographyGRPCClient extends BaseGRPCClient_1.BaseGRPCClient {
|
|
|
97
97
|
transformGrpcAlgorithmResponse(grpcResponse) {
|
|
98
98
|
var _a, _b, _c;
|
|
99
99
|
return {
|
|
100
|
-
|
|
100
|
+
components: ((_a = grpcResponse.components) === null || _a === void 0 ? void 0 : _a.map((purl) => {
|
|
101
101
|
var _a;
|
|
102
102
|
return ({
|
|
103
103
|
purl: purl.purl,
|
|
@@ -117,7 +117,7 @@ class CryptographyGRPCClient extends BaseGRPCClient_1.BaseGRPCClient {
|
|
|
117
117
|
transformGrpcHintsResponse(grpcResponse) {
|
|
118
118
|
var _a, _b, _c;
|
|
119
119
|
return {
|
|
120
|
-
|
|
120
|
+
components: ((_a = grpcResponse.components) === null || _a === void 0 ? void 0 : _a.map((purl) => {
|
|
121
121
|
var _a;
|
|
122
122
|
return ({
|
|
123
123
|
purl: purl.purl,
|
|
@@ -142,4 +142,4 @@ class CryptographyGRPCClient extends BaseGRPCClient_1.BaseGRPCClient {
|
|
|
142
142
|
}
|
|
143
143
|
exports.CryptographyGRPCClient = CryptographyGRPCClient;
|
|
144
144
|
CryptographyGRPCClient.clientName = 'Cryptography gRPC Client';
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3J5cHRvZ3JhcGh5R1JQQ0NsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvQ2xpZW50cy9DcnlwdG9ncmFwaHkvQ3J5cHRvZ3JhcGh5R1JQQ0NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtSEFBZ0k7QUFDaEksMkRBQXFFO0FBTXJFLHlDQUFzQztBQUd0Qzs7R0FFRztBQUNILE1BQWEsc0JBQXVCLFNBQVEsK0JBQWM7SUFJeEQ7Ozs7OztPQU1HO0lBQ0gsWUFBWSxLQUFhLEVBQUUsUUFBZ0IsRUFBRSxTQUFrQixFQUFFLFVBQW1CO1FBQ2xGLEtBQUssQ0FBQztZQUNKLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLFNBQVMsRUFBRSxTQUFTO1lBQ3BCLE9BQU8sRUFBRSxVQUFVO1lBQ25CLFdBQVcsRUFBRSxzQkFBc0IsQ0FBQyxVQUFVO1lBQzlDLFNBQVMsRUFBRSxLQUFLO1NBQ2pCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxpREFBc0IsQ0FDdEMsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FDbEMsQ0FBQztJQUNKLENBQUM7SUFFTSxLQUFLLENBQUMsYUFBYSxDQUFDLFVBQXVCO1FBQ2hELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVwQyxNQUFNLEdBQUcsR0FBZ0I7WUFDdkIsU0FBUyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNqQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2YsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRTthQUNwQyxDQUFDLENBQUM7U0FDSixDQUFDO1FBRUYsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNyQyxJQUFJLENBQUMsTUFB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
|
|
@@ -24,14 +24,19 @@ class CryptographyHttpClient extends HttpClient_1.HttpClient {
|
|
|
24
24
|
*/
|
|
25
25
|
async getAlgorithms(components) {
|
|
26
26
|
try {
|
|
27
|
-
const baseURL = this.hostURL();
|
|
28
27
|
(0, clientHelper_1.validateComponents)(components);
|
|
29
|
-
const URL = `${this.hostURL()}/v2/cryptography/algorithms`;
|
|
30
|
-
const response = await this.post(URL, {
|
|
28
|
+
const URL = `${this.hostURL()}/v2/cryptography/algorithms/components`;
|
|
29
|
+
const response = await this.post(URL, { components: components });
|
|
31
30
|
if (response.ok) {
|
|
32
31
|
const algorithms = await response.json();
|
|
33
32
|
return algorithms;
|
|
34
33
|
}
|
|
34
|
+
if (response.status === 404) {
|
|
35
|
+
const responseData = await response.json();
|
|
36
|
+
const errorMessage = `Failed to get algorithms: ${response.status} ${response.statusText} - ${JSON.stringify(responseData)}`;
|
|
37
|
+
Logger_1.logger.log(`Error getting algorithms: ${errorMessage}`);
|
|
38
|
+
return responseData;
|
|
39
|
+
}
|
|
35
40
|
const errorText = await response.text();
|
|
36
41
|
const errorMessage = `Failed to get algorithms: ${response.status} ${response.statusText} - ${errorText}`;
|
|
37
42
|
Logger_1.logger.log(`Error getting algorithms: ${errorMessage}`);
|
|
@@ -51,12 +56,24 @@ class CryptographyHttpClient extends HttpClient_1.HttpClient {
|
|
|
51
56
|
async getEncryptionHints(components) {
|
|
52
57
|
try {
|
|
53
58
|
(0, clientHelper_1.validateComponents)(components);
|
|
54
|
-
const URL = `${this.hostURL()}/v2/cryptography/
|
|
55
|
-
const response = await this.post(URL, {
|
|
59
|
+
const URL = `${this.hostURL()}/v2/cryptography/hints/range/components`;
|
|
60
|
+
const response = await this.post(URL, { components: components });
|
|
56
61
|
if (response.ok) {
|
|
57
62
|
const hints = await response.json();
|
|
58
63
|
return hints;
|
|
59
64
|
}
|
|
65
|
+
if (response.status === 400) {
|
|
66
|
+
const errorText = await response.text();
|
|
67
|
+
const errorMessage = `Failed to get encryption hints: ${response.status} ${response.statusText} - ${errorText}`;
|
|
68
|
+
Logger_1.logger.log(`Error getting encryption hints: ${errorMessage}`);
|
|
69
|
+
throw new Error(errorMessage);
|
|
70
|
+
}
|
|
71
|
+
if (response.status === 404) {
|
|
72
|
+
const responseData = await response.json();
|
|
73
|
+
const errorMessage = `Failed to get encryption hints: ${response.status} ${response.statusText} - ${JSON.stringify(responseData)}`;
|
|
74
|
+
Logger_1.logger.log(`Error getting encryption hints: ${errorMessage}`);
|
|
75
|
+
return responseData;
|
|
76
|
+
}
|
|
60
77
|
const errorText = await response.text();
|
|
61
78
|
const errorMessage = `Failed to get encryption hints: ${response.status} ${response.statusText} - ${errorText}`;
|
|
62
79
|
Logger_1.logger.log(`Error getting encryption hints: ${errorMessage}`);
|
|
@@ -69,4 +86,4 @@ class CryptographyHttpClient extends HttpClient_1.HttpClient {
|
|
|
69
86
|
}
|
|
70
87
|
}
|
|
71
88
|
exports.CryptographyHttpClient = CryptographyHttpClient;
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3J5cHRvZ3JhcGh5SHR0cENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvQ2xpZW50cy9DcnlwdG9ncmFwaHkvQ3J5cHRvZ3JhcGh5SHR0cENsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBZ0Q7QUFDaEQseUNBQXNDO0FBTXRDLHlEQUE0RDtBQUk1RDs7O0dBR0c7QUFDSCxNQUFhLHNCQUF1QixTQUFRLHVCQUFVO0lBQ3BEOzs7T0FHRztJQUNILFlBQVksWUFBMEI7UUFDcEMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxhQUFhLENBQUMsVUFBdUI7UUFDaEQsSUFBSSxDQUFDO1lBQ0gsSUFBQSxpQ0FBa0IsRUFBQyxVQUFVLENBQUMsQ0FBQztZQUMvQixNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsd0NBQXdDLENBQUM7WUFDdEUsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1lBQ2xFLElBQUksUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNoQixNQUFNLFVBQVUsR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDekMsT0FBTyxVQUErQixDQUFDO1lBQ3pDLENBQUM7WUFFRCxJQUFHLFFBQVEsQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFDLENBQUM7Z0JBQzFCLE1BQU0sWUFBWSxHQUFHLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUMzQyxNQUFNLFlBQVksR0FBRyw2QkFBNkIsUUFBUSxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsVUFBVSxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQztn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
|
|
@@ -23,7 +23,7 @@ export interface Status {
|
|
|
23
23
|
message: string;
|
|
24
24
|
}
|
|
25
25
|
export interface AlgorithmResponse {
|
|
26
|
-
|
|
26
|
+
components: ComponentAlgorithm[];
|
|
27
27
|
status: Status;
|
|
28
28
|
}
|
|
29
29
|
export interface ComponentHintResponse extends Purl {
|
|
@@ -31,7 +31,7 @@ export interface ComponentHintResponse extends Purl {
|
|
|
31
31
|
versions: string[];
|
|
32
32
|
}
|
|
33
33
|
export interface HintsInRangeResponse {
|
|
34
|
-
|
|
34
|
+
components: ComponentHintResponse[];
|
|
35
35
|
status: Status;
|
|
36
36
|
}
|
|
37
37
|
export interface ICryptographyClient {
|
|
@@ -120,4 +120,4 @@ class ComponentsScanner {
|
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
exports.ComponentsScanner = ComponentsScanner;
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tcG9uZW50c1NjYW5uZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2RrL0NvbXBvbmVudHMvQ29tcG9uZW50c1NjYW5uZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUVBQThEO0FBQzlELHNDQUFtQztBQUNuQyxxRkFBa0Y7QUFDbEYscUZBQWtGO0FBWWxGLE1BQWEsaUJBQWlCO0lBSzVCLFlBQVksR0FBMEI7UUFGOUIsV0FBTSxHQUF5QixJQUFJLDJDQUFvQixFQUFFLENBQUM7UUFHaEUsSUFBSSxHQUFHO1lBQUUsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7O1lBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSwyQ0FBb0IsRUFBRSxDQUFDO1FBRTlDLDJEQUEyRDtRQUMzRCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksMkNBQW9CLENBQzlDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUNwQixDQUFDO1lBQ0YsZUFBTSxDQUFDLEdBQUcsQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO1FBQ3pELENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxTQUFTLEdBQWlCO2dCQUM5QixPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPO2dCQUM1QixVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVO2dCQUNsQyxXQUFXLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXO2dCQUNwQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRO2dCQUM5QixPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxP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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const cryptographyAlgorithmProcessor = "\nconst { parentPort } = require('worker_threads');\nconst fs = require('fs');\n\nparentPort.on('message', async (job) => {\n\n const { data } = job;\n const { file, rules, cryptoMapper } = data;\n\n const cryptoFound = new Array();\n\n let content = fs.readFileSync(file, 'utf-8');\n rules.forEach((value, key) => {\n try {\n const matches = content.match(value);\n if (matches) {\n cryptoFound.push(key);\n }\n } catch (e){\n console.error(e);\n }\n });\n const algorithms = [];\n cryptoFound.forEach((cf)=>{\n algorithms.push(cryptoMapper.get(cf));\n });\n parentPort.postMessage({ file, algorithms });\n });\n";
|
|
1
|
+
export declare const cryptographyAlgorithmProcessor = "\nconst { parentPort } = require('worker_threads');\nconst fs = require('fs');\n\nparentPort.on('message', async (job) => {\n\n const { data } = job;\n const { file, rules, cryptoMapper } = data;\n\n const cryptoFound = new Array();\n\n let content = fs.readFileSync(file, 'utf-8');\n content = content.toLowerCase();\n rules.forEach((value, key) => {\n try {\n const matches = content.match(value);\n if (matches) {\n cryptoFound.push(key);\n }\n } catch (e){\n console.error(e);\n }\n });\n const algorithms = [];\n cryptoFound.forEach((cf)=>{\n algorithms.push(cryptoMapper.get(cf));\n });\n parentPort.postMessage({ file, algorithms });\n });\n";
|
|
@@ -13,6 +13,7 @@ parentPort.on('message', async (job) => {
|
|
|
13
13
|
const cryptoFound = new Array();
|
|
14
14
|
|
|
15
15
|
let content = fs.readFileSync(file, 'utf-8');
|
|
16
|
+
content = content.toLowerCase();
|
|
16
17
|
rules.forEach((value, key) => {
|
|
17
18
|
try {
|
|
18
19
|
const matches = content.match(value);
|
|
@@ -30,4 +31,4 @@ parentPort.on('message', async (job) => {
|
|
|
30
31
|
parentPort.postMessage({ file, algorithms });
|
|
31
32
|
});
|
|
32
33
|
`;
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWxnb3JpdGhtUHJvY2Vzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3Nkay9DcnlwdG9ncmFwaHkvQWxnb3JpdGhtL0ZpbGVzL0FsZ29yaXRobVByb2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLDhCQUE4QixHQUFHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQTZCN0MsQ0FBQyJ9
|
|
@@ -33,11 +33,11 @@ class ComponentCryptographyResultCollector {
|
|
|
33
33
|
* @param algorithmResults The algorithm detection results to collect.
|
|
34
34
|
*/
|
|
35
35
|
collectAlgorithmResults(algorithmResults) {
|
|
36
|
-
algorithmResults.
|
|
37
|
-
if (
|
|
38
|
-
const version =
|
|
39
|
-
const result = this.getOrCreateResult(
|
|
40
|
-
result.algorithms =
|
|
36
|
+
algorithmResults.components.forEach((c) => {
|
|
37
|
+
if (c.version) {
|
|
38
|
+
const version = c.version.startsWith('v') ? c.version.slice(1) : c.version;
|
|
39
|
+
const result = this.getOrCreateResult(c.purl, version);
|
|
40
|
+
result.algorithms = c.algorithms;
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
43
|
}
|
|
@@ -46,11 +46,11 @@ class ComponentCryptographyResultCollector {
|
|
|
46
46
|
* @param hintResults The hint detection results to collect.
|
|
47
47
|
*/
|
|
48
48
|
collectHintResults(hintResults) {
|
|
49
|
-
hintResults.
|
|
50
|
-
if (
|
|
51
|
-
const version =
|
|
52
|
-
const result = this.getOrCreateResult(
|
|
53
|
-
result.hints =
|
|
49
|
+
hintResults.components.forEach((c) => {
|
|
50
|
+
if (c.versions.length > 0) {
|
|
51
|
+
const version = c.versions[0].startsWith('v') ? c.versions[0].slice(1) : c.versions[0];
|
|
52
|
+
const result = this.getOrCreateResult(c.purl, version);
|
|
53
|
+
result.hints = c.hints;
|
|
54
54
|
}
|
|
55
55
|
});
|
|
56
56
|
}
|
|
@@ -63,4 +63,4 @@ class ComponentCryptographyResultCollector {
|
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
exports.ComponentCryptographyResultCollector = ComponentCryptographyResultCollector;
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tcG9uZW50Q3J5cHRvZ3JhcGh5UmVzdWx0Q29sbGV0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvc2RrL0NyeXB0b2dyYXBoeS9IZWxwZXIvUmVzdWx0Q29sbGVjdG9yL0NvbXBvbmVudC9Db21wb25lbnRDcnlwdG9ncmFwaHlSZXN1bHRDb2xsZXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFPQTs7OztHQUlHO0FBQ0gsTUFBYSxvQ0FBb0M7SUFBakQ7UUFFVSxpQkFBWSxHQUFHLElBQUksR0FLekIsQ0FBQTtJQXlESixDQUFDO0lBdkRDOzs7OztPQUtHO0lBQ0ssaUJBQWlCLENBQUMsSUFBWSxFQUFFLE9BQWM7UUFDcEQsTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLElBQUksT0FBTyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUN6QixJQUFJO2dCQUNKLE9BQU87Z0JBQ1AsVUFBVSxFQUFFLEVBQUU7Z0JBQ2QsS0FBSyxFQUFFLEVBQUU7YUFDVixDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksdUJBQXVCLENBQUMsZ0JBQW1DO1FBQ2hFLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN4QyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDZCxNQUFNLE9BQU8sR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQzNFLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN0RCxNQUFNLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUM7WUFDbkMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGtCQUFrQixDQUFDLFdBQWlDO1FBQ3pELFdBQVcsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDMUIsTUFBTSxPQUFPLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUN2RixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDdkQsTUFBTSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ3pCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxVQUFVO1FBQ2IsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNsRCxDQUFDO0NBRUY7QUFoRUQsb0ZBZ0VDIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const cryptographyHintProcessor = "\nconst { parentPort } = require('worker_threads');\nconst fs = require('fs');\n\nparentPort.on('message', async (job) => {\n\n const { data } = job;\n const { file, rules } = data;\n\n let content = fs.readFileSync(file, 'utf-8');\n const hints = [];\n rules.forEach((rule) => {\n for (const keyword of rule.keywords) {\n if (content.includes(keyword)) {\n const {id, name, description, url , category, purl } = rule;\n hints.push({ id, name, category, purl, description, url });\n break;\n }\n }\n });\n parentPort.postMessage({ file, hints });\n });\n";
|
|
1
|
+
export declare const cryptographyHintProcessor = "\nconst { parentPort } = require('worker_threads');\nconst fs = require('fs');\n\nparentPort.on('message', async (job) => {\n\n const { data } = job;\n const { file, rules } = data;\n\n let content = fs.readFileSync(file, 'utf-8');\n content = content.toLowerCase();\n const hints = [];\n rules.forEach((rule) => {\n for (const keyword of rule.keywords) {\n if (content.includes(keyword.toLowerCase())) {\n const {id, name, description, url , category, purl } = rule;\n hints.push({ id, name, category, purl, description, url });\n break;\n }\n }\n });\n parentPort.postMessage({ file, hints });\n });\n";
|
|
@@ -11,10 +11,11 @@ parentPort.on('message', async (job) => {
|
|
|
11
11
|
const { file, rules } = data;
|
|
12
12
|
|
|
13
13
|
let content = fs.readFileSync(file, 'utf-8');
|
|
14
|
+
content = content.toLowerCase();
|
|
14
15
|
const hints = [];
|
|
15
16
|
rules.forEach((rule) => {
|
|
16
17
|
for (const keyword of rule.keywords) {
|
|
17
|
-
if (content.includes(keyword)) {
|
|
18
|
+
if (content.includes(keyword.toLowerCase())) {
|
|
18
19
|
const {id, name, description, url , category, purl } = rule;
|
|
19
20
|
hints.push({ id, name, category, purl, description, url });
|
|
20
21
|
break;
|
|
@@ -24,4 +25,4 @@ parentPort.on('message', async (job) => {
|
|
|
24
25
|
parentPort.postMessage({ file, hints });
|
|
25
26
|
});
|
|
26
27
|
`;
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGludFByb2Nlc3Nvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvQ3J5cHRvZ3JhcGh5L0hpbnQvRmlsZXMvSGludFByb2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLHlCQUF5QixHQUFHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXVCeEMsQ0FBQyJ9
|