scanoss 0.17.2 → 0.18.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.
Files changed (182) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/build/main/cli/bin/cli-bin.js +7 -2
  3. package/build/main/cli/commands/crypto.js +13 -8
  4. package/build/main/cli/commands/dep.js +17 -3
  5. package/build/main/cli/commands/scan.js +29 -25
  6. package/build/main/index.d.ts +4 -4
  7. package/build/main/index.js +4 -4
  8. package/build/main/sdk/BaseConfig.d.ts +87 -11
  9. package/build/main/sdk/BaseConfig.js +92 -7
  10. package/build/main/sdk/Clients/Cryptography/CryptographyClient.d.ts +20 -0
  11. package/build/main/sdk/Clients/Cryptography/CryptographyClient.js +142 -0
  12. package/build/main/sdk/Clients/Cryptography/CryptographyHttpClient.d.ts +10 -0
  13. package/build/main/sdk/Clients/Cryptography/CryptographyHttpClient.js +56 -0
  14. package/build/main/sdk/Clients/Cryptography/ICryptographyClient.d.ts +40 -0
  15. package/build/main/sdk/Clients/Cryptography/ICryptographyClient.js +3 -0
  16. package/build/main/sdk/{Services/Grpc/DependencyService.d.ts → Clients/Dependency/DependencyClient.d.ts} +5 -5
  17. package/build/main/sdk/Clients/Dependency/DependencyClient.js +100 -0
  18. package/build/main/sdk/Clients/Dependency/DependencyHttpClient.d.ts +9 -0
  19. package/build/main/sdk/Clients/Dependency/DependencyHttpClient.js +61 -0
  20. package/build/main/sdk/Clients/Dependency/IDependencyClient.d.ts +41 -0
  21. package/build/main/sdk/Clients/Dependency/IDependencyClient.js +3 -0
  22. package/build/main/sdk/{Services/Grpc/BaseService.d.ts → Clients/Grpc/BaseGRPCClient.d.ts} +6 -10
  23. package/build/main/sdk/Clients/Grpc/BaseGRPCClient.js +150 -0
  24. package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +1 -1
  25. package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/common/v2/scanoss-common_pb.js +1 -1
  26. package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.js +1 -1
  27. package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.js +1 -1
  28. package/build/{module/sdk/Services → main/sdk/Clients}/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +1 -1
  29. package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +1 -1
  30. package/build/main/sdk/{Services → Clients}/Transport/Transport.js +1 -1
  31. package/build/main/sdk/Clients/Vulnerability/IVulnerabilityClient.d.ts +5 -0
  32. package/build/main/sdk/Clients/Vulnerability/IVulnerabilityClient.js +3 -0
  33. package/build/main/sdk/Clients/Vulnerability/VulnerabilityHttpClient.d.ts +10 -0
  34. package/build/main/sdk/Clients/Vulnerability/VulnerabilityHttpClient.js +58 -0
  35. package/build/main/sdk/Clients/helper/clientHelper.d.ts +3 -0
  36. package/build/main/sdk/Clients/helper/clientHelper.js +25 -0
  37. package/build/main/sdk/{Services → Clients}/http/HttpClient.d.ts +5 -3
  38. package/build/main/sdk/Clients/http/HttpClient.js +88 -0
  39. package/build/main/sdk/Clients/interfaces/ClientConfig.d.ts +11 -0
  40. package/build/main/sdk/Clients/interfaces/ClientConfig.js +9 -0
  41. package/build/main/sdk/Cryptography/Algorithm/Components/ComponentAlgorithmScanner.d.ts +5 -5
  42. package/build/main/sdk/Cryptography/Algorithm/Components/ComponentAlgorithmScanner.js +6 -6
  43. package/build/main/sdk/Cryptography/Algorithm/Files/FileAlgorithmScanner.js +3 -3
  44. package/build/main/sdk/Cryptography/CryptoCfg.d.ts +15 -37
  45. package/build/main/sdk/Cryptography/CryptoCfg.js +32 -36
  46. package/build/main/sdk/Cryptography/CryptographyScanner.d.ts +2 -2
  47. package/build/main/sdk/Cryptography/CryptographyScanner.js +1 -1
  48. package/build/main/sdk/Cryptography/CryptographyTypes.d.ts +4 -0
  49. package/build/main/sdk/Cryptography/Helper/ResultCollector/Component/ComponentCryptographyResultColletor.d.ts +2 -2
  50. package/build/main/sdk/Cryptography/Helper/ResultCollector/Component/ComponentCryptographyResultColletor.js +7 -7
  51. package/build/main/sdk/Cryptography/Hint/Components/ComponentHintScanner.d.ts +4 -4
  52. package/build/main/sdk/Cryptography/Hint/Components/ComponentHintScanner.js +4 -4
  53. package/build/main/sdk/Cryptography/Hint/Files/FileHintScanner.js +3 -3
  54. package/build/main/sdk/Dependencies/DependencyScanner.d.ts +4 -4
  55. package/build/main/sdk/Dependencies/DependencyScanner.js +57 -41
  56. package/build/main/sdk/Dependencies/DependencyScannerCfg.d.ts +20 -6
  57. package/build/main/sdk/Dependencies/DependencyScannerCfg.js +50 -1
  58. package/build/main/sdk/Logger.d.ts +4 -2
  59. package/build/main/sdk/Logger.js +22 -6
  60. package/build/main/sdk/Report/DataLayer/DataProviders/ComponentDataProvider.d.ts +2 -2
  61. package/build/main/sdk/Report/DataLayer/DataProviders/ComponentDataProvider.js +1 -1
  62. package/build/main/sdk/Report/DataLayer/DataProviders/DependencyDataProvider.d.ts +3 -3
  63. package/build/main/sdk/Report/DataLayer/DataProviders/DependencyDataProvider.js +1 -1
  64. package/build/main/sdk/Report/DataLayer/DataProviders/LicenseDataProvider.d.ts +2 -2
  65. package/build/main/sdk/Report/DataLayer/DataProviders/LicenseDataProvider.js +1 -1
  66. package/build/main/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.d.ts +2 -2
  67. package/build/main/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.js +1 -1
  68. package/build/main/sdk/Vulnerability/VulnerabilityCfg.d.ts +29 -0
  69. package/build/main/sdk/Vulnerability/VulnerabilityCfg.js +54 -0
  70. package/build/main/sdk/Vulnerability/VulnerabilityScanner.d.ts +8 -0
  71. package/build/main/sdk/Vulnerability/VulnerabilityScanner.js +34 -0
  72. package/build/main/sdk/scanner/Fingerprint.js +5 -2
  73. package/build/main/sdk/scanner/Scanner.d.ts +0 -1
  74. package/build/main/sdk/scanner/Scanner.js +2 -3
  75. package/build/main/sdk/scanner/ScannerCfg.d.ts +11 -0
  76. package/build/main/sdk/scanner/ScannerCfg.js +28 -2
  77. package/build/main/sdk/shared/interfaces/Component.d.ts +4 -0
  78. package/build/main/sdk/shared/interfaces/Component.js +3 -0
  79. package/build/main/tsconfig.tsbuildinfo +1 -1
  80. package/build/module/cli/bin/cli-bin.js +7 -2
  81. package/build/module/cli/commands/crypto.js +13 -8
  82. package/build/module/cli/commands/dep.js +17 -3
  83. package/build/module/cli/commands/scan.js +29 -25
  84. package/build/module/index.d.ts +4 -4
  85. package/build/module/index.js +4 -4
  86. package/build/module/sdk/BaseConfig.d.ts +87 -11
  87. package/build/module/sdk/BaseConfig.js +91 -7
  88. package/build/module/sdk/Clients/Cryptography/CryptographyClient.d.ts +20 -0
  89. package/build/module/sdk/Clients/Cryptography/CryptographyClient.js +131 -0
  90. package/build/module/sdk/Clients/Cryptography/CryptographyHttpClient.d.ts +10 -0
  91. package/build/module/sdk/Clients/Cryptography/CryptographyHttpClient.js +54 -0
  92. package/build/module/sdk/Clients/Cryptography/ICryptographyClient.d.ts +40 -0
  93. package/build/module/sdk/Clients/Cryptography/ICryptographyClient.js +2 -0
  94. package/build/module/sdk/{Services/Grpc/DependencyService.d.ts → Clients/Dependency/DependencyClient.d.ts} +5 -5
  95. package/build/module/sdk/Clients/Dependency/DependencyClient.js +74 -0
  96. package/build/module/sdk/Clients/Dependency/DependencyHttpClient.d.ts +9 -0
  97. package/build/module/sdk/Clients/Dependency/DependencyHttpClient.js +59 -0
  98. package/build/module/sdk/Clients/Dependency/IDependencyClient.d.ts +41 -0
  99. package/build/module/sdk/Clients/Dependency/IDependencyClient.js +2 -0
  100. package/build/module/sdk/{Services/Grpc/BaseService.d.ts → Clients/Grpc/BaseGRPCClient.d.ts} +6 -10
  101. package/build/module/sdk/Clients/Grpc/BaseGRPCClient.js +122 -0
  102. package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +1 -1
  103. package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/common/v2/scanoss-common_pb.js +1 -1
  104. package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.js +1 -1
  105. package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.js +1 -1
  106. package/build/{main/sdk/Services → module/sdk/Clients}/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +1 -1
  107. package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +1 -1
  108. package/build/module/sdk/{Services → Clients}/Transport/Transport.js +1 -1
  109. package/build/module/sdk/Clients/Vulnerability/IVulnerabilityClient.d.ts +5 -0
  110. package/build/module/sdk/Clients/Vulnerability/IVulnerabilityClient.js +2 -0
  111. package/build/module/sdk/Clients/Vulnerability/VulnerabilityHttpClient.d.ts +10 -0
  112. package/build/module/sdk/Clients/Vulnerability/VulnerabilityHttpClient.js +56 -0
  113. package/build/module/sdk/Clients/helper/clientHelper.d.ts +3 -0
  114. package/build/module/sdk/Clients/helper/clientHelper.js +21 -0
  115. package/build/module/sdk/{Services → Clients}/http/HttpClient.d.ts +5 -3
  116. package/build/module/sdk/Clients/http/HttpClient.js +82 -0
  117. package/build/module/sdk/Clients/interfaces/ClientConfig.d.ts +11 -0
  118. package/build/module/sdk/Clients/interfaces/ClientConfig.js +6 -0
  119. package/build/module/sdk/Cryptography/Algorithm/Components/ComponentAlgorithmScanner.d.ts +5 -5
  120. package/build/module/sdk/Cryptography/Algorithm/Components/ComponentAlgorithmScanner.js +6 -6
  121. package/build/module/sdk/Cryptography/Algorithm/Files/FileAlgorithmScanner.js +3 -3
  122. package/build/module/sdk/Cryptography/CryptoCfg.d.ts +15 -37
  123. package/build/module/sdk/Cryptography/CryptoCfg.js +34 -40
  124. package/build/module/sdk/Cryptography/CryptographyScanner.d.ts +2 -2
  125. package/build/module/sdk/Cryptography/CryptographyScanner.js +1 -1
  126. package/build/module/sdk/Cryptography/CryptographyTypes.d.ts +4 -0
  127. package/build/module/sdk/Cryptography/Helper/ResultCollector/Component/ComponentCryptographyResultColletor.d.ts +2 -2
  128. package/build/module/sdk/Cryptography/Helper/ResultCollector/Component/ComponentCryptographyResultColletor.js +7 -7
  129. package/build/module/sdk/Cryptography/Hint/Components/ComponentHintScanner.d.ts +4 -4
  130. package/build/module/sdk/Cryptography/Hint/Components/ComponentHintScanner.js +4 -4
  131. package/build/module/sdk/Cryptography/Hint/Files/FileHintScanner.js +3 -3
  132. package/build/module/sdk/Dependencies/DependencyScanner.d.ts +4 -4
  133. package/build/module/sdk/Dependencies/DependencyScanner.js +58 -42
  134. package/build/module/sdk/Dependencies/DependencyScannerCfg.d.ts +20 -6
  135. package/build/module/sdk/Dependencies/DependencyScannerCfg.js +50 -1
  136. package/build/module/sdk/Logger.d.ts +4 -2
  137. package/build/module/sdk/Logger.js +22 -7
  138. package/build/module/sdk/Report/DataLayer/DataProviders/ComponentDataProvider.d.ts +2 -2
  139. package/build/module/sdk/Report/DataLayer/DataProviders/ComponentDataProvider.js +1 -1
  140. package/build/module/sdk/Report/DataLayer/DataProviders/DependencyDataProvider.d.ts +3 -3
  141. package/build/module/sdk/Report/DataLayer/DataProviders/DependencyDataProvider.js +1 -1
  142. package/build/module/sdk/Report/DataLayer/DataProviders/LicenseDataProvider.d.ts +2 -2
  143. package/build/module/sdk/Report/DataLayer/DataProviders/LicenseDataProvider.js +1 -1
  144. package/build/module/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.d.ts +2 -2
  145. package/build/module/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.js +1 -1
  146. package/build/module/sdk/Vulnerability/VulnerabilityCfg.d.ts +29 -0
  147. package/build/module/sdk/Vulnerability/VulnerabilityCfg.js +50 -0
  148. package/build/module/sdk/Vulnerability/VulnerabilityScanner.d.ts +8 -0
  149. package/build/module/sdk/Vulnerability/VulnerabilityScanner.js +32 -0
  150. package/build/module/sdk/scanner/Fingerprint.js +5 -2
  151. package/build/module/sdk/scanner/Scanner.d.ts +0 -1
  152. package/build/module/sdk/scanner/Scanner.js +2 -3
  153. package/build/module/sdk/scanner/ScannerCfg.d.ts +11 -0
  154. package/build/module/sdk/scanner/ScannerCfg.js +28 -2
  155. package/build/module/sdk/shared/interfaces/Component.d.ts +4 -0
  156. package/build/module/sdk/shared/interfaces/Component.js +2 -0
  157. package/build/module/tsconfig.module.tsbuildinfo +1 -1
  158. package/package.json +1 -1
  159. package/build/main/sdk/Services/Grpc/BaseService.js +0 -159
  160. package/build/main/sdk/Services/Grpc/CryptographyService.d.ts +0 -20
  161. package/build/main/sdk/Services/Grpc/CryptographyService.js +0 -58
  162. package/build/main/sdk/Services/Grpc/DependencyService.js +0 -101
  163. package/build/main/sdk/Services/http/HttpClient.js +0 -81
  164. package/build/module/sdk/Services/Grpc/BaseService.js +0 -131
  165. package/build/module/sdk/Services/Grpc/CryptographyService.d.ts +0 -20
  166. package/build/module/sdk/Services/Grpc/CryptographyService.js +0 -55
  167. package/build/module/sdk/Services/Grpc/DependencyService.js +0 -75
  168. package/build/module/sdk/Services/http/HttpClient.js +0 -75
  169. /package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -0
  170. /package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -0
  171. /package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.d.ts +0 -0
  172. /package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.d.ts +0 -0
  173. /package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -0
  174. /package/build/main/sdk/{Services → Clients}/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts +0 -0
  175. /package/build/main/sdk/{Services → Clients}/Transport/Transport.d.ts +0 -0
  176. /package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -0
  177. /package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -0
  178. /package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.d.ts +0 -0
  179. /package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.d.ts +0 -0
  180. /package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -0
  181. /package/build/module/sdk/{Services → Clients}/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts +0 -0
  182. /package/build/module/sdk/{Services → Clients}/Transport/Transport.d.ts +0 -0
@@ -0,0 +1,20 @@
1
+ import { BaseGRPCClient } from '../Grpc/BaseGRPCClient';
2
+ import { Component } from '../../shared/interfaces/Component';
3
+ import { ICryptographyClient, AlgorithmResponse, HintsInRangeResponse } from './ICryptographyClient';
4
+ export declare class CryptographyClient extends BaseGRPCClient implements ICryptographyClient {
5
+ static readonly clientName = "Cryptography gRPC Client";
6
+ private client;
7
+ /**
8
+ * Creates CryptographyService Instance.
9
+ * @param {string} token - Optional. API TOKEN.
10
+ * @param {string} hostName - Optional. Destination Host.
11
+ * @param {string} proxyHost -Optional. Proxy Host.
12
+ * @param {string} caCertPath - Optional. Path to certificates.
13
+ */
14
+ constructor(token: string, hostName: string, proxyHost?: string, caCertPath?: string);
15
+ getAlgorithms(components: Component[]): Promise<AlgorithmResponse>;
16
+ getEncryptionHints(components: Component[]): Promise<HintsInRangeResponse>;
17
+ private validateComponents;
18
+ private transformGrpcAlgorithmResponse;
19
+ private transformGrpcHintsResponse;
20
+ }
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CryptographyClient = void 0;
4
+ const scanoss_cryptography_grpc_pb_1 = require("../Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb");
5
+ const BaseGRPCClient_1 = require("../Grpc/BaseGRPCClient");
6
+ const Logger_1 = require("../../Logger");
7
+ class CryptographyClient extends BaseGRPCClient_1.BaseGRPCClient {
8
+ /**
9
+ * Creates CryptographyService Instance.
10
+ * @param {string} token - Optional. API TOKEN.
11
+ * @param {string} hostName - Optional. Destination Host.
12
+ * @param {string} proxyHost -Optional. Proxy Host.
13
+ * @param {string} caCertPath - Optional. Path to certificates.
14
+ */
15
+ constructor(token, hostName, proxyHost, caCertPath) {
16
+ super({
17
+ HOSTNAME: hostName,
18
+ PROXY_URL: proxyHost,
19
+ CA_CERT: caCertPath,
20
+ CLIENT_NAME: CryptographyClient.clientName,
21
+ API_TOKEN: token,
22
+ });
23
+ this.client = new scanoss_cryptography_grpc_pb_1.CryptographyClient(this.HOSTNAME, this.generateChannelCredentials());
24
+ }
25
+ async getAlgorithms(components) {
26
+ this.validateComponents(components);
27
+ const req = {
28
+ purlsList: components.map(comp => ({
29
+ purl: comp.purl,
30
+ requirement: comp.requirement || ''
31
+ }))
32
+ };
33
+ return new Promise((resolve, reject) => {
34
+ this.client.getAlgorithms(this.buildGRPCPurlRequest(req), (err, response) => {
35
+ if (err) {
36
+ const errorMessage = `Failed to get algorithms: ${err.message}`;
37
+ Logger_1.logger.log(`Error getting algorithms: ${errorMessage}`);
38
+ reject(new Error(errorMessage));
39
+ return;
40
+ }
41
+ try {
42
+ const result = this.handleResponse(response.toObject());
43
+ resolve(this.transformGrpcAlgorithmResponse(result));
44
+ }
45
+ catch (e) {
46
+ const errorMessage = `Failed to process algorithms response: ${e instanceof Error ? e.message : 'Unknown error'}`;
47
+ Logger_1.logger.log(`Error processing algorithms response: ${errorMessage}`);
48
+ reject(new Error(errorMessage));
49
+ }
50
+ });
51
+ });
52
+ }
53
+ async getEncryptionHints(components) {
54
+ this.validateComponents(components);
55
+ const req = {
56
+ purlsList: components.map(comp => ({
57
+ purl: comp.purl,
58
+ requirement: comp.requirement || ''
59
+ }))
60
+ };
61
+ return new Promise((resolve, reject) => {
62
+ this.client.getHintsInRange(this.buildGRPCPurlRequest(req), (err, response) => {
63
+ if (err) {
64
+ const errorMessage = `Failed to get encryption hints: ${err.message}`;
65
+ Logger_1.logger.log(`Error getting encryption hints: ${errorMessage}`);
66
+ reject(new Error(errorMessage));
67
+ return;
68
+ }
69
+ try {
70
+ const result = this.handleResponse(response.toObject());
71
+ resolve(this.transformGrpcHintsResponse(result));
72
+ }
73
+ catch (e) {
74
+ const errorMessage = `Failed to process hints response: ${e instanceof Error ? e.message : 'Unknown error'}`;
75
+ Logger_1.logger.log(`Error processing hints response: ${errorMessage}`);
76
+ reject(new Error(errorMessage));
77
+ }
78
+ });
79
+ });
80
+ }
81
+ validateComponents(components) {
82
+ if (!components || components.length === 0) {
83
+ throw new Error('Components array cannot be empty');
84
+ }
85
+ if (!Array.isArray(components)) {
86
+ throw new Error('Components must be an array');
87
+ }
88
+ for (const component of components) {
89
+ if (!component.purl || typeof component.purl !== 'string') {
90
+ throw new Error('Each component must have a valid purl string');
91
+ }
92
+ }
93
+ }
94
+ transformGrpcAlgorithmResponse(grpcResponse) {
95
+ var _a, _b, _c;
96
+ return {
97
+ purls: ((_a = grpcResponse.purlsList) === null || _a === void 0 ? void 0 : _a.map((purl) => {
98
+ var _a;
99
+ return ({
100
+ purl: purl.purl,
101
+ version: purl.version || '',
102
+ algorithms: ((_a = purl.algorithmsList) === null || _a === void 0 ? void 0 : _a.map((algo) => ({
103
+ algorithm: algo.algorithm,
104
+ strength: algo.strength
105
+ }))) || []
106
+ });
107
+ })) || [],
108
+ status: {
109
+ status: ((_b = grpcResponse.status) === null || _b === void 0 ? void 0 : _b.status) || 'UNKNOWN',
110
+ message: ((_c = grpcResponse.status) === null || _c === void 0 ? void 0 : _c.message) || ''
111
+ }
112
+ };
113
+ }
114
+ transformGrpcHintsResponse(grpcResponse) {
115
+ var _a, _b, _c;
116
+ return {
117
+ purls: ((_a = grpcResponse.purlsList) === null || _a === void 0 ? void 0 : _a.map((purl) => {
118
+ var _a;
119
+ return ({
120
+ purl: purl.purl,
121
+ version: purl.version || '',
122
+ versions: purl.versionsList || [],
123
+ hints: ((_a = purl.hintsList) === null || _a === void 0 ? void 0 : _a.map((hint) => ({
124
+ id: hint.id,
125
+ name: hint.name,
126
+ description: hint.description,
127
+ category: hint.category,
128
+ url: hint.url,
129
+ purl: hint.purl
130
+ }))) || []
131
+ });
132
+ })) || [],
133
+ status: {
134
+ status: ((_b = grpcResponse.status) === null || _b === void 0 ? void 0 : _b.status) || 'UNKNOWN',
135
+ message: ((_c = grpcResponse.status) === null || _c === void 0 ? void 0 : _c.message) || ''
136
+ }
137
+ };
138
+ }
139
+ }
140
+ exports.CryptographyClient = CryptographyClient;
141
+ CryptographyClient.clientName = 'Cryptography gRPC Client';
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3J5cHRvZ3JhcGh5Q2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3Nkay9DbGllbnRzL0NyeXB0b2dyYXBoeS9DcnlwdG9ncmFwaHlDbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUhBQWdJO0FBQ2hJLDJEQUFxRTtBQU9yRSx5Q0FBc0M7QUFFdEMsTUFBYSxrQkFBbUIsU0FBUSwrQkFBYztJQUlwRDs7Ozs7O09BTUc7SUFDSCxZQUFZLEtBQWEsRUFBRSxRQUFnQixFQUFFLFNBQWtCLEVBQUUsVUFBbUI7UUFDbEYsS0FBSyxDQUFDO1lBQ0osUUFBUSxFQUFFLFFBQVE7WUFDbEIsU0FBUyxFQUFFLFNBQVM7WUFDcEIsT0FBTyxFQUFFLFVBQVU7WUFDbkIsV0FBVyxFQUFFLGtCQUFrQixDQUFDLFVBQVU7WUFDMUMsU0FBUyxFQUFFLEtBQUs7U0FDakIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGlEQUFzQixDQUN0QyxJQUFJLENBQUMsUUFBUSxFQUNiLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUNsQyxDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxhQUFhLENBQUMsVUFBdUI7UUFDaEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXBDLE1BQU0sR0FBRyxHQUFnQjtZQUN2QixTQUFTLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2pDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtnQkFDZixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVcsSUFBSSxFQUFFO2FBQ3BDLENBQUMsQ0FBQztTQUNKLENBQUM7UUFFRixPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUN2QixJ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
@@ -0,0 +1,10 @@
1
+ import { HttpClient } from "../http/HttpClient";
2
+ import { Component } from "../../shared/interfaces/Component";
3
+ import { ICryptographyClient, AlgorithmResponse, HintsInRangeResponse } from "./ICryptographyClient";
4
+ export declare class CryptographyHttpClient extends HttpClient implements ICryptographyClient {
5
+ private client;
6
+ private readonly baseUrl;
7
+ constructor(token: string, hostName: string, proxyHost?: string, caCertPath?: string);
8
+ getAlgorithms(components: Component[]): Promise<AlgorithmResponse>;
9
+ getEncryptionHints(components: Component[]): Promise<HintsInRangeResponse>;
10
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CryptographyHttpClient = void 0;
4
+ const HttpClient_1 = require("../http/HttpClient");
5
+ const Logger_1 = require("../../Logger");
6
+ const clientHelper_1 = require("../helper/clientHelper");
7
+ class CryptographyHttpClient extends HttpClient_1.HttpClient {
8
+ constructor(token, hostName, proxyHost, caCertPath) {
9
+ super();
10
+ this.client = new HttpClient_1.HttpClient({
11
+ HOST_URL: hostName,
12
+ API_KEY: token,
13
+ HTTPS_PROXY: proxyHost,
14
+ CA_CERT: caCertPath,
15
+ });
16
+ this.baseUrl = hostName;
17
+ }
18
+ async getAlgorithms(components) {
19
+ try {
20
+ (0, clientHelper_1.validateComponents)(components);
21
+ const response = await this.client.post(`${this.baseUrl}/api/v2/cryptography/algorithms`, { purls: components });
22
+ if (response.ok) {
23
+ const algorithms = await response.json();
24
+ return algorithms;
25
+ }
26
+ const errorText = await response.text();
27
+ const errorMessage = `Failed to get algorithms: ${response.status} ${response.statusText} - ${errorText}`;
28
+ Logger_1.logger.log(`Error getting algorithms: ${errorMessage}`);
29
+ throw new Error(errorMessage);
30
+ }
31
+ catch (error) {
32
+ Logger_1.logger.log('Error getting algorithms:', error);
33
+ throw this.handleError(error, 'Failed to get algorithms');
34
+ }
35
+ }
36
+ async getEncryptionHints(components) {
37
+ try {
38
+ (0, clientHelper_1.validateComponents)(components);
39
+ const response = await this.client.post(`${this.baseUrl}/api/v2/cryptography/hintsInRange`, { purls: components });
40
+ if (response.ok) {
41
+ const hints = await response.json();
42
+ return hints;
43
+ }
44
+ const errorText = await response.text();
45
+ const errorMessage = `Failed to get encryption hints: ${response.status} ${response.statusText} - ${errorText}`;
46
+ Logger_1.logger.log(`Error getting encryption hints: ${errorMessage}`);
47
+ throw new Error(errorMessage);
48
+ }
49
+ catch (error) {
50
+ Logger_1.logger.log('Error getting encryption hints:', error);
51
+ throw this.handleError(error, 'Failed to get encryption hints');
52
+ }
53
+ }
54
+ }
55
+ exports.CryptographyHttpClient = CryptographyHttpClient;
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3J5cHRvZ3JhcGh5SHR0cENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvQ2xpZW50cy9DcnlwdG9ncmFwaHkvQ3J5cHRvZ3JhcGh5SHR0cENsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBZ0Q7QUFDaEQseUNBQXNDO0FBT3RDLHlEQUE0RDtBQUM1RCxNQUFhLHNCQUF1QixTQUFRLHVCQUFVO0lBS3BELFlBQVksS0FBYSxFQUFFLFFBQWdCLEVBQUUsU0FBa0IsRUFBRSxVQUFtQjtRQUNsRixLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSx1QkFBVSxDQUFDO1lBQzNCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsV0FBVyxFQUFFLFNBQVM7WUFDdEIsT0FBTyxFQUFFLFVBQVU7U0FDcEIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUM7SUFDMUIsQ0FBQztJQUVNLEtBQUssQ0FBQyxhQUFhLENBQUMsVUFBdUI7UUFDaEQsSUFBSSxDQUFDO1lBQ0gsSUFBQSxpQ0FBa0IsRUFBQyxVQUFVLENBQUMsQ0FBQztZQUMvQixNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8saUNBQWlDLEVBQUUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztZQUVqSCxJQUFJLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDaEIsTUFBTSxVQUFVLEdBQUcsTUFBTSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3pDLE9BQU8sVUFBK0IsQ0FBQztZQUN6QyxDQUFDO1lBRUQsTUFBTSxTQUFTLEdBQUcsTUFBTSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDeEMsTUFBTSxZQUFZLEdBQUcsNkJBQTZCLFFBQVEsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLFVBQVUsTUFBTSxTQUFTLEVBQUUsQ0FBQztZQUMxRyxlQUFNLENBQUMsR0FBRyxDQUFDLDZCQUE2QixZQUFZLEVBQUUsQ0FBQyxDQUFDO1lBQ3hELE1BQU0sSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDaEMsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixlQUFNLENBQUMsR0FBRyxDQUFDLDJCQUEyQixFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQy9DLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztRQUM1RCxDQUFDO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxVQUF1QjtRQUNyRCxJQUFJLENBQUM7WUFDSCxJQUFBLGlDQUFrQixFQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQy9CLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxtQ0FBbUMsRUFBRSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1lBRW5ILElBQUksUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNoQixNQUFNLEtBQUssR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDcEMsT0FBTyxLQUE2QixDQUFDO1lBQ3ZDLENBQUM7WUFFRCxNQUFNLFNBQVMsR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN4QyxNQUFNLFlBQVksR0FBRyxtQ0FBbUMsUUFBUSxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsVUFBVSxNQUFNLFNBQVMsRUFBRSxDQUFDO1lBQ2hILGVBQU0sQ0FBQyxHQUFHLENBQUMsbUNBQW1DLFlBQVksRUFBRSxDQUFDLENBQUM7WUFDOUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNoQyxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLGVBQU0sQ0FBQyxHQUFHLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDckQsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxnQ0FBZ0MsQ0FBQyxDQUFDO1FBQ2xFLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUF2REQsd0RBdURDIn0=
@@ -0,0 +1,40 @@
1
+ import { Component } from "../../shared/interfaces/Component";
2
+ export interface Hint {
3
+ id: string;
4
+ name: string;
5
+ description: string;
6
+ category: string;
7
+ url: string;
8
+ purl: string;
9
+ }
10
+ export interface Algorithm {
11
+ algorithm: string;
12
+ strength: string;
13
+ }
14
+ export interface Purl {
15
+ purl: string;
16
+ version: string;
17
+ }
18
+ export interface ComponentAlgorithm extends Purl {
19
+ algorithms: Algorithm[];
20
+ }
21
+ export interface Status {
22
+ status: string;
23
+ message: string;
24
+ }
25
+ export interface AlgorithmResponse {
26
+ purls: ComponentAlgorithm[];
27
+ status: Status;
28
+ }
29
+ export interface ComponentHintResponse extends Purl {
30
+ hints: Hint[];
31
+ versions: string[];
32
+ }
33
+ export interface HintsInRangeResponse {
34
+ purls: ComponentHintResponse[];
35
+ status: Status;
36
+ }
37
+ export interface ICryptographyClient {
38
+ getAlgorithms(components: Component[]): Promise<AlgorithmResponse>;
39
+ getEncryptionHints(components: Component[]): Promise<HintsInRangeResponse>;
40
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSUNyeXB0b2dyYXBoeUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvQ2xpZW50cy9DcnlwdG9ncmFwaHkvSUNyeXB0b2dyYXBoeUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -1,8 +1,8 @@
1
- import * as DependenciesMessages from './scanoss/api/dependencies/v2/scanoss-dependencies_pb';
2
- import * as CommonMessages from './scanoss/api/common/v2/scanoss-common_pb';
3
- import { BaseService } from "./BaseService";
4
- export declare class DependencyService extends BaseService {
5
- static readonly serviceName = "DependencyService";
1
+ import * as DependenciesMessages from '../Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb';
2
+ import * as CommonMessages from '../Grpc/scanoss/api/common/v2/scanoss-common_pb';
3
+ import { BaseGRPCClient } from "../Grpc/BaseGRPCClient";
4
+ export declare class DependencyClient extends BaseGRPCClient {
5
+ static readonly clientName = "Dependency gRPC Client";
6
6
  private client;
7
7
  /**
8
8
  * Creates DependencyService Instance.
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.DependencyClient = void 0;
27
+ const scanoss_dependencies_grpc_pb_1 = require("../Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb");
28
+ const DependenciesMessages = __importStar(require("../Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb"));
29
+ const CommonMessages = __importStar(require("../Grpc/scanoss/api/common/v2/scanoss-common_pb"));
30
+ const BaseGRPCClient_1 = require("../Grpc/BaseGRPCClient");
31
+ class DependencyClient extends BaseGRPCClient_1.BaseGRPCClient {
32
+ /**
33
+ * Creates DependencyService Instance.
34
+ * @param {string} hostName - Optional. Destination Host.
35
+ * @param {string} proxyHost -Optional. Proxy Host.
36
+ * @param {string} caCertPath - Optional. Path to certificates.
37
+ */
38
+ constructor(hostName, proxyHost, caCertPath) {
39
+ super({
40
+ HOSTNAME: hostName,
41
+ CLIENT_NAME: DependencyClient.clientName,
42
+ PROXY_URL: proxyHost,
43
+ CA_CERT: caCertPath,
44
+ });
45
+ this.client = new scanoss_dependencies_grpc_pb_1.DependenciesClient(this.HOSTNAME, this.generateChannelCredentials());
46
+ }
47
+ async get(req) {
48
+ return new Promise((resolve, reject) => {
49
+ this.client.getDependencies(req, (err, response) => {
50
+ if (err)
51
+ reject(err);
52
+ resolve(response);
53
+ });
54
+ });
55
+ }
56
+ buildDependencyRequestMsg(plainObj) {
57
+ try {
58
+ const depMessage = new DependenciesMessages.DependencyRequest();
59
+ for (const dependency of plainObj.filesList) {
60
+ const fileMsg = new DependenciesMessages.DependencyRequest.Files();
61
+ fileMsg.setFile(dependency.file);
62
+ for (const purl of dependency.purlsList) {
63
+ const purlMsg = new DependenciesMessages.DependencyRequest.Purls();
64
+ purlMsg.setPurl(purl.purl);
65
+ purlMsg.setRequirement(purl === null || purl === void 0 ? void 0 : purl.requirement);
66
+ fileMsg.addPurls(purlMsg);
67
+ }
68
+ depMessage.addFiles(fileMsg);
69
+ }
70
+ return depMessage;
71
+ }
72
+ catch (e) {
73
+ console.error(e);
74
+ return null;
75
+ }
76
+ }
77
+ async echo(req) {
78
+ return new Promise((resolve, reject) => {
79
+ this.client.echo(req, (err, response) => {
80
+ if (err)
81
+ reject(err);
82
+ resolve(response);
83
+ });
84
+ });
85
+ }
86
+ buildEchoRequestMsg(plainObj) {
87
+ try {
88
+ const echoMessage = new CommonMessages.EchoRequest();
89
+ echoMessage.setMessage(plainObj.message);
90
+ return echoMessage;
91
+ }
92
+ catch (e) {
93
+ console.error(e);
94
+ return null;
95
+ }
96
+ }
97
+ }
98
+ exports.DependencyClient = DependencyClient;
99
+ DependencyClient.clientName = 'Dependency gRPC Client';
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVwZW5kZW5jeUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvQ2xpZW50cy9EZXBlbmRlbmN5L0RlcGVuZGVuY3lDbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxtSEFBc0c7QUFDdEcsa0hBQW9HO0FBQ3BHLGdHQUFrRjtBQUNsRiwyREFBd0Q7QUFFeEQsTUFBYSxnQkFBaUIsU0FBUSwrQkFBYztJQUlsRDs7Ozs7T0FLRztJQUNILFlBQVksUUFBaUIsRUFBRSxTQUFrQixFQUFFLFVBQW1CO1FBQ3BFLEtBQUssQ0FBQztZQUNKLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxVQUFVO1lBQ3hDLFNBQVMsRUFBRSxTQUFTO1lBQ3BCLE9BQU8sRUFBRSxVQUFVO1NBQ3BCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxpREFBa0IsQ0FDbEMsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FDbEMsQ0FBQztJQUNKLENBQUM7SUFFTSxLQUFLLENBQUMsR0FBRyxDQUNkLEdBQTJDO1FBRTNDLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFO2dCQUNqRCxJQUFJLEdBQUc7b0JBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNyQixPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDcEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSx5QkFBeUIsQ0FDOUIsUUFBeUQ7UUFFekQsSUFBSSxDQUFDO1lBQ0gsTUFBTSxVQUFVLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ2hFLEtBQUssTUFBTSxVQUFVLElBQUksUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUM1QyxNQUFNLE9BQU8sR0FBRyxJQUFJLG9CQUFvQixDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNuRSxPQUFPLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDakMsS0FBSyxNQUFNLElBQUksSUFBSSxVQUFVLENBQUMsU0FBUyxFQUFFLENBQUM7b0JBQ3hDLE1BQU0sT0FBTyxHQUFHLElBQUksb0JBQW9CLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLENBQUM7b0JBQ25FLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUMzQixPQUFPLENBQUMsY0FBYyxDQUFDLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxXQUFXLENBQUMsQ0FBQztvQkFDMUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDNUIsQ0FBQztnQkFDRCxVQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQy9CLENBQUM7WUFDRCxPQUFPLFVBQVUsQ0FBQztRQUNwQixDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0lBQ0gsQ0FBQztJQUVNLEtBQUssQ0FBQyxJQUFJLENBQ2YsR0FBK0I7UUFFL0IsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUNyQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLEVBQUU7Z0JBQ3RDLElBQUksR0FBRztvQkFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3JCLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNwQixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLG1CQUFtQixDQUN4QixRQUE2QztRQUU3QyxJQUFJLENBQUM7WUFDSCxNQUFNLFdBQVcsR0FBRyxJQUFJLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyRCxXQUFXLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN6QyxPQUFPLFdBQVcsQ0FBQztRQUNyQixDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0lBQ0gsQ0FBQzs7QUFoRkgsNENBaUZDO0FBaEZ3QiwyQkFBVSxHQUFHLHdCQUF3QixDQUFDIn0=
@@ -0,0 +1,9 @@
1
+ import { HttpClient } from "../http/HttpClient";
2
+ import { DependencyRequest, DependencyResponse, IDependencyClient } from "./IDependencyClient";
3
+ export declare class DependencyHttpClient extends HttpClient implements IDependencyClient {
4
+ private client;
5
+ private readonly baseUrl;
6
+ constructor(token: string, hostName: string, ignoreCertErrors?: boolean, proxyHost?: string, caCertPath?: string);
7
+ getDependencies(req: DependencyRequest): Promise<DependencyResponse>;
8
+ private toDependencyResponse;
9
+ }
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DependencyHttpClient = void 0;
4
+ const HttpClient_1 = require("../http/HttpClient");
5
+ class DependencyHttpClient extends HttpClient_1.HttpClient {
6
+ constructor(token, hostName, ignoreCertErrors = false, proxyHost, caCertPath) {
7
+ super();
8
+ this.client = new HttpClient_1.HttpClient({
9
+ HOST_URL: hostName,
10
+ API_KEY: token,
11
+ HTTPS_PROXY: proxyHost,
12
+ CA_CERT: caCertPath,
13
+ IGNORE_CERT_ERRORS: ignoreCertErrors
14
+ });
15
+ this.baseUrl = hostName;
16
+ }
17
+ async getDependencies(req) {
18
+ try {
19
+ const response = await this.client.post(`${this.baseUrl}/api/v2/dependencies/dependencies`, req);
20
+ if (response.ok) {
21
+ return this.toDependencyResponse(await response.json());
22
+ }
23
+ const errorText = await response.text();
24
+ const errorMessage = `Failed to get dependencies: ${response.status} ${response.statusText} - ${errorText}`;
25
+ throw new Error(errorMessage);
26
+ }
27
+ catch (error) {
28
+ throw this.handleError(error, 'Failed to get dependencies');
29
+ }
30
+ }
31
+ // TODO: Remove this adapter with new protobuf definition. This method keeps backward compatibility
32
+ toDependencyResponse(dependencies) {
33
+ // Convert files array to filesList
34
+ const filesList = dependencies.files.map(file => ({
35
+ file: file.file,
36
+ id: file.id,
37
+ status: file.status,
38
+ dependenciesList: file.dependencies.map(dep => ({
39
+ component: dep.component,
40
+ purl: dep.purl,
41
+ version: dep.version,
42
+ licensesList: dep.licenses.map(license => ({
43
+ name: license.name,
44
+ spdxId: license.spdxId,
45
+ isSpdxApproved: license.isSpdxApproved,
46
+ url: license.url
47
+ })),
48
+ url: dep.url,
49
+ comment: dep.comment,
50
+ // Add scope if it exists in the original, otherwise default to "dependencies"
51
+ scope: dep.scope || "dependencies"
52
+ }))
53
+ }));
54
+ return {
55
+ filesList: filesList,
56
+ status: dependencies.status,
57
+ };
58
+ }
59
+ }
60
+ exports.DependencyHttpClient = DependencyHttpClient;
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVwZW5kZW5jeUh0dHBDbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2RrL0NsaWVudHMvRGVwZW5kZW5jeS9EZXBlbmRlbmN5SHR0cENsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBZ0Q7QUFHaEQsTUFBYSxvQkFBcUIsU0FBUSx1QkFBVTtJQUtsRCxZQUFZLEtBQWEsRUFBRSxRQUFnQixFQUFFLG1CQUE0QixLQUFLLEVBQUMsU0FBa0IsRUFBRSxVQUFtQjtRQUNwSCxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSx1QkFBVSxDQUFDO1lBQzNCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLE9BQU8sRUFBRSxLQUFLO1lBQ2QsV0FBVyxFQUFFLFNBQVM7WUFDdEIsT0FBTyxFQUFFLFVBQVU7WUFDbkIsa0JBQWtCLEVBQUUsZ0JBQWdCO1NBQ3JDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDO0lBQzFCLENBQUM7SUFFTSxLQUFLLENBQUMsZUFBZSxDQUFDLEdBQXNCO1FBQ2pELElBQUcsQ0FBQztZQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxtQ0FBbUMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNqRyxJQUFJLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDaEIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUMxRCxDQUFDO1lBQ0QsTUFBTSxTQUFTLEdBQUcsTUFBTSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDeEMsTUFBTSxZQUFZLEdBQUcsK0JBQStCLFFBQVEsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLFVBQVUsTUFBTSxTQUFTLEVBQUUsQ0FBQztZQUM1RyxNQUFNLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2hDLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSw0QkFBNEIsQ0FBQyxDQUFDO1FBQzlELENBQUM7SUFDSCxDQUFDO0lBQ0QsbUdBQW1HO0lBQzNGLG9CQUFvQixDQUFDLFlBQWlCO1FBQzVDLG1DQUFtQztRQUNuQyxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDaEQsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ1gsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLGdCQUFnQixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDOUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO2dCQUN4QixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7Z0JBQ2QsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO2dCQUNwQixZQUFZLEVBQUUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUN6QyxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7b0JBQ2xCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtvQkFDdEIsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjO29CQUN0QyxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUc7aUJBQ2pCLENBQUMsQ0FBQztnQkFDSCxHQUFHLEVBQUUsR0FBRyxDQUFDLEdBQUc7Z0JBQ1osT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO2dCQUNwQiw4RUFBOEU7Z0JBQzlFLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxJQUFJLGNBQWM7YUFDbkMsQ0FBQyxDQUFDO1NBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSixPQUFPO1lBQ0wsU0FBUyxFQUFFLFNBQVM7WUFDcEIsTUFBTSxFQUFFLFlBQVksQ0FBQyxNQUFNO1NBQzVCLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUExREQsb0RBMERDIn0=
@@ -0,0 +1,41 @@
1
+ import { Component } from "../../shared/interfaces/Component";
2
+ interface License {
3
+ name: string;
4
+ spdxId: string;
5
+ isSpdxApproved: boolean;
6
+ url: string;
7
+ }
8
+ export interface Dependency {
9
+ component: string;
10
+ purl: string;
11
+ version: string;
12
+ licensesList: License[];
13
+ url: string;
14
+ comment: string;
15
+ }
16
+ export interface DependencyFile {
17
+ file: string;
18
+ id: string;
19
+ status: string;
20
+ dependenciesList: Dependency[];
21
+ }
22
+ export interface Status {
23
+ status: string;
24
+ message: string;
25
+ }
26
+ export interface DependencyResponse {
27
+ filesList: DependencyFile[];
28
+ status: Status;
29
+ }
30
+ export interface DependencyRequest {
31
+ files: [
32
+ {
33
+ file: string;
34
+ purls: Array<Component>;
35
+ }
36
+ ];
37
+ }
38
+ export interface IDependencyClient {
39
+ getDependencies(req: DependencyRequest): Promise<DependencyResponse>;
40
+ }
41
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSURlcGVuZGVuY3lDbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2RrL0NsaWVudHMvRGVwZW5kZW5jeS9JRGVwZW5kZW5jeUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -4,19 +4,17 @@ export interface PurlRequest extends CommonMessages.PurlRequest.AsObject {
4
4
  }
5
5
  export interface EchoRequest extends CommonMessages.EchoRequest.AsObject {
6
6
  }
7
- export declare class BaseService {
7
+ export declare class BaseGRPCClient {
8
8
  protected _HOSTNAME: string;
9
9
  protected _API_TOKEN: string;
10
- protected _IS_PREMIUM_SERVICE: boolean;
11
- protected _SERVICE_NAME: string;
10
+ protected _CLIENT_NAME: string;
12
11
  protected _CA_CERT: string;
13
12
  protected _PROXY_URL: string;
14
- constructor({ HOSTNAME, PROXY_URL, API_TOKEN, IS_PREMIUM_SERVICE, SERVICE_NAME, CA_CERT, }: {
13
+ constructor({ HOSTNAME, PROXY_URL, API_TOKEN, CLIENT_NAME, CA_CERT, }: {
15
14
  HOSTNAME?: string;
16
15
  PROXY_URL?: string;
17
16
  API_TOKEN?: string;
18
- IS_PREMIUM_SERVICE?: boolean;
19
- SERVICE_NAME?: string;
17
+ CLIENT_NAME?: string;
20
18
  CA_CERT?: string;
21
19
  });
22
20
  protected handleResponse(response: {
@@ -25,14 +23,12 @@ export declare class BaseService {
25
23
  protected buildGRPCPurlRequest(purlRequest: PurlRequest): CommonMessages.PurlRequest;
26
24
  protected buildGRPCEchoRequest(echoRequest: EchoRequest): CommonMessages.EchoRequest;
27
25
  protected generateChannelCredentials(): grpc.ChannelCredentials;
28
- set SERVICE_NAME(serviceName: string);
29
- get SERVICE_NAME(): string;
26
+ set CLIENT_NAME(serviceName: string);
27
+ get CLIENT_NAME(): string;
30
28
  set HOSTNAME(host: string);
31
29
  get HOSTNAME(): string;
32
30
  set API_TOKEN(apiToken: string);
33
31
  get API_TOKEN(): string;
34
- set IS_PREMIUM_SERVICE(isPremiumService: boolean);
35
- get IS_PREMIUM_SERVICE(): boolean;
36
32
  set CA_CERT(caCertPath: string);
37
33
  get CA_CERT(): string;
38
34
  set PROXY_URL(proxyURL: string);