scanoss 0.9.3 → 0.10.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 (119) hide show
  1. package/README.md +23 -15
  2. package/assets/ReportHTMLTemplate/index.html +74 -59
  3. package/build/main/cli/commands/scan.js +29 -18
  4. package/build/main/index.d.ts +10 -6
  5. package/build/main/index.js +11 -8
  6. package/build/main/sdk/Constants.d.ts +4 -0
  7. package/build/main/sdk/Constants.js +7 -0
  8. package/build/main/sdk/Dependencies/DependencyScanner.d.ts +2 -2
  9. package/build/main/sdk/Dependencies/DependencyScanner.js +6 -6
  10. package/build/main/sdk/Errors.d.ts +1 -0
  11. package/build/main/sdk/Errors.js +4 -0
  12. package/build/main/sdk/FileCount/FileCount.d.ts +1 -1
  13. package/build/main/sdk/FileCount/FileCount.js +10 -3
  14. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataLayerTypes.d.ts +11 -4
  15. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataLayerTypes.js +1 -4
  16. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataProviderManager.d.ts +1 -1
  17. package/build/main/sdk/Report/DataLayer/DataProviderManager.js +25 -0
  18. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataProviders/ComponentDataProvider.d.ts +3 -3
  19. package/build/main/sdk/Report/DataLayer/DataProviders/ComponentDataProvider.js +175 -0
  20. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataProviders/DependencyDataProvider.d.ts +2 -2
  21. package/build/main/sdk/Report/DataLayer/DataProviders/DependencyDataProvider.js +42 -0
  22. package/build/main/sdk/{DataLayer → Report/DataLayer}/DataProviders/LicenseDataProvider.d.ts +3 -5
  23. package/build/main/sdk/Report/DataLayer/DataProviders/LicenseDataProvider.js +118 -0
  24. package/build/main/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.d.ts +13 -0
  25. package/build/main/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.js +65 -0
  26. package/build/{module/sdk → main/sdk/Report}/DataLayer/DataProviders/SummaryDataProvider.d.ts +4 -2
  27. package/build/main/sdk/Report/DataLayer/DataProviders/SummaryDataProvider.js +38 -0
  28. package/build/main/sdk/Report/Report.d.ts +7 -1
  29. package/build/main/sdk/Report/Report.js +19 -6
  30. package/build/main/sdk/Services/Grpc/BaseService.d.ts +18 -0
  31. package/build/main/sdk/Services/Grpc/BaseService.js +94 -0
  32. package/build/main/sdk/Services/Grpc/CryptographyService.d.ts +9 -0
  33. package/build/main/sdk/Services/Grpc/CryptographyService.js +35 -0
  34. package/build/{module/sdk/grpc/GrpcDependencyService.d.ts → main/sdk/Services/Grpc/DependencyService.d.ts} +1 -1
  35. package/build/main/sdk/{grpc/GrpcDependencyService.js → Services/Grpc/DependencyService.js} +4 -4
  36. package/build/main/sdk/Services/Grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +2 -0
  37. package/build/main/sdk/Services/Grpc/scanoss/api/common/v2/scanoss-common_pb.js +746 -0
  38. package/build/main/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.d.ts +39 -0
  39. package/build/main/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.js +98 -0
  40. package/build/main/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.js +562 -0
  41. package/build/{module/sdk/grpc → main/sdk/Services/Grpc}/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +2 -2
  42. package/build/main/sdk/Services/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +1397 -0
  43. package/build/main/tsconfig.tsbuildinfo +295 -213
  44. package/build/module/cli/commands/scan.js +31 -20
  45. package/build/module/index.d.ts +10 -6
  46. package/build/module/index.js +11 -8
  47. package/build/module/sdk/Constants.d.ts +4 -0
  48. package/build/module/sdk/Constants.js +5 -0
  49. package/build/module/sdk/Dependencies/DependencyScanner.d.ts +2 -2
  50. package/build/module/sdk/Dependencies/DependencyScanner.js +9 -9
  51. package/build/module/sdk/Errors.d.ts +1 -0
  52. package/build/module/sdk/Errors.js +2 -0
  53. package/build/module/sdk/FileCount/FileCount.d.ts +1 -1
  54. package/build/module/sdk/FileCount/FileCount.js +13 -6
  55. package/build/module/sdk/{DataLayer → Report/DataLayer}/DataLayerTypes.d.ts +11 -4
  56. package/build/module/sdk/Report/DataLayer/DataLayerTypes.js +2 -0
  57. package/build/module/sdk/{DataLayer → Report/DataLayer}/DataProviderManager.d.ts +1 -1
  58. package/build/module/sdk/Report/DataLayer/DataProviderManager.js +22 -0
  59. package/build/module/sdk/{DataLayer → Report/DataLayer}/DataProviders/ComponentDataProvider.d.ts +3 -3
  60. package/build/module/sdk/Report/DataLayer/DataProviders/ComponentDataProvider.js +170 -0
  61. package/build/module/sdk/{DataLayer → Report/DataLayer}/DataProviders/DependencyDataProvider.d.ts +2 -2
  62. package/build/module/sdk/Report/DataLayer/DataProviders/DependencyDataProvider.js +39 -0
  63. package/build/module/sdk/{DataLayer → Report/DataLayer}/DataProviders/LicenseDataProvider.d.ts +3 -5
  64. package/build/module/sdk/Report/DataLayer/DataProviders/LicenseDataProvider.js +115 -0
  65. package/build/module/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.d.ts +13 -0
  66. package/build/module/sdk/Report/DataLayer/DataProviders/LicenseObligationDataProvider.js +60 -0
  67. package/build/{main/sdk → module/sdk/Report}/DataLayer/DataProviders/SummaryDataProvider.d.ts +4 -2
  68. package/build/module/sdk/Report/DataLayer/DataProviders/SummaryDataProvider.js +35 -0
  69. package/build/module/sdk/Report/Report.d.ts +7 -1
  70. package/build/module/sdk/Report/Report.js +19 -6
  71. package/build/module/sdk/Services/Grpc/BaseService.d.ts +18 -0
  72. package/build/module/sdk/Services/Grpc/BaseService.js +61 -0
  73. package/build/module/sdk/Services/Grpc/CryptographyService.d.ts +9 -0
  74. package/build/module/sdk/Services/Grpc/CryptographyService.js +32 -0
  75. package/build/{main/sdk/grpc/GrpcDependencyService.d.ts → module/sdk/Services/Grpc/DependencyService.d.ts} +1 -1
  76. package/build/module/sdk/Services/Grpc/DependencyService.js +62 -0
  77. package/build/module/sdk/Services/Grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +2 -0
  78. package/build/module/sdk/Services/Grpc/scanoss/api/common/v2/scanoss-common_pb.js +746 -0
  79. package/build/module/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.d.ts +39 -0
  80. package/build/module/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb.js +98 -0
  81. package/build/module/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.js +562 -0
  82. package/build/{main/sdk/grpc → module/sdk/Services/Grpc}/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +2 -2
  83. package/build/module/sdk/Services/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +1397 -0
  84. package/build/module/tsconfig.module.tsbuildinfo +295 -213
  85. package/package.json +2 -2
  86. package/build/main/sdk/DataLayer/DataProviderManager.js +0 -24
  87. package/build/main/sdk/DataLayer/DataProviders/ComponentDataProvider.js +0 -164
  88. package/build/main/sdk/DataLayer/DataProviders/DependencyDataProvider.js +0 -37
  89. package/build/main/sdk/DataLayer/DataProviders/LicenseDataProvider.js +0 -148
  90. package/build/main/sdk/DataLayer/DataProviders/SummaryDataProvider.js +0 -33
  91. package/build/main/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +0 -2
  92. package/build/main/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.js +0 -404
  93. package/build/main/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +0 -1197
  94. package/build/main/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.d.ts +0 -19
  95. package/build/main/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.js +0 -66
  96. package/build/main/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.js +0 -14
  97. package/build/module/sdk/DataLayer/DataLayerTypes.js +0 -5
  98. package/build/module/sdk/DataLayer/DataProviderManager.js +0 -21
  99. package/build/module/sdk/DataLayer/DataProviders/ComponentDataProvider.js +0 -159
  100. package/build/module/sdk/DataLayer/DataProviders/DependencyDataProvider.js +0 -34
  101. package/build/module/sdk/DataLayer/DataProviders/LicenseDataProvider.js +0 -145
  102. package/build/module/sdk/DataLayer/DataProviders/SummaryDataProvider.js +0 -30
  103. package/build/module/sdk/grpc/GrpcDependencyService.js +0 -62
  104. package/build/module/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +0 -2
  105. package/build/module/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.js +0 -404
  106. package/build/module/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +0 -1197
  107. package/build/module/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.d.ts +0 -19
  108. package/build/module/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.js +0 -66
  109. package/build/module/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.js +0 -14
  110. /package/build/main/sdk/{grpc → Services/Grpc}/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -0
  111. /package/build/main/sdk/{grpc → Services/Grpc}/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -0
  112. /package/build/main/sdk/{grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts → Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.d.ts} +0 -0
  113. /package/build/main/sdk/{grpc → Services/Grpc}/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -0
  114. /package/build/{module/sdk/grpc → main/sdk/Services/Grpc}/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts +0 -0
  115. /package/build/module/sdk/{grpc → Services/Grpc}/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -0
  116. /package/build/module/sdk/{grpc → Services/Grpc}/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -0
  117. /package/build/{main/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.d.ts → module/sdk/Services/Grpc/scanoss/api/cryptography/v2/scanoss-cryptography_pb.d.ts} +0 -0
  118. /package/build/module/sdk/{grpc → Services/Grpc}/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -0
  119. /package/build/module/sdk/{grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.d.ts → Services/Grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts} +0 -0
@@ -0,0 +1,61 @@
1
+ import * as grpc from '@grpc/grpc-js';
2
+ import * as CommonMessages from './scanoss/api/common/v2/scanoss-common_pb';
3
+ import { Logger, logger } from '../../Logger';
4
+ import { HEADER_NAME_API_TOKEN, SCANOSS_GRPC_ENDPOINT } from '../../Constants';
5
+ var Level = Logger.Level;
6
+ import { ERROR_SERVICES_GRPC_API_TOKEN_REQUIRED } from '../../Errors';
7
+ export class BaseService {
8
+ constructor() {
9
+ this.GRPC_ENDPOINT = SCANOSS_GRPC_ENDPOINT;
10
+ this.API_TOKEN = '';
11
+ this.IS_PREMIUM_SERVICE = false;
12
+ this.SERVICE_NAME = '';
13
+ }
14
+ handleResponse(response) {
15
+ const { status, ...responseWithoutStatus } = response;
16
+ if (status.status === CommonMessages.StatusCode.FAILED) {
17
+ logger.log(`[ GRPC ${this.SERVICE_NAME} ] - Server GRPC Code: ${status.status} - ${status.message}`, Level.error);
18
+ throw new Error(status.message);
19
+ }
20
+ else if (status.status === CommonMessages.StatusCode.WARNING ||
21
+ status.status === CommonMessages.StatusCode.SUCCEEDED_WITH_WARNINGS ||
22
+ status.status === CommonMessages.StatusCode.UNSPECIFIED) {
23
+ logger.log(`[ GRPC ${this.SERVICE_NAME} ] - Server GRPC Code: ${status.status} - ${status.message}`, Level.warn);
24
+ }
25
+ else if (status.status === CommonMessages.StatusCode.SUCCESS) {
26
+ logger.log(`[ GRPC ${this.SERVICE_NAME} ] - Server GRPC Code: ${status.status} - ${status.message}`, Level.info);
27
+ }
28
+ return responseWithoutStatus;
29
+ }
30
+ buildGRPCPurlRequest(purlRequest) {
31
+ const GRPCPurlList = purlRequest.purlsList.map(({ purl, requirement }) => {
32
+ const gRPCPurlMessage = new CommonMessages.PurlRequest.Purls();
33
+ gRPCPurlMessage.setPurl(purl);
34
+ gRPCPurlMessage.setRequirement(requirement);
35
+ return gRPCPurlMessage;
36
+ });
37
+ const gRPCPurlRequest = new CommonMessages.PurlRequest();
38
+ gRPCPurlRequest.setPurlsList(GRPCPurlList);
39
+ return gRPCPurlRequest;
40
+ }
41
+ buildGRPCEchoRequest(echoRequest) {
42
+ const gRPCEchoRequest = new CommonMessages.EchoRequest();
43
+ gRPCEchoRequest.setMessage(echoRequest.message);
44
+ return gRPCEchoRequest;
45
+ }
46
+ generateChannelCredentials() {
47
+ if (this.IS_PREMIUM_SERVICE && !this.API_TOKEN)
48
+ throw new Error(ERROR_SERVICES_GRPC_API_TOKEN_REQUIRED);
49
+ if (!this.IS_PREMIUM_SERVICE && !this.API_TOKEN)
50
+ return grpc.credentials.createSsl();
51
+ const channelCredentials = grpc.credentials.createSsl();
52
+ const metaCallback = (_params, callback) => {
53
+ const metadata = new grpc.Metadata();
54
+ metadata.add(HEADER_NAME_API_TOKEN, this.API_TOKEN);
55
+ callback(null, metadata);
56
+ };
57
+ const callCredentials = grpc.credentials.createFromMetadataGenerator(metaCallback);
58
+ return grpc.credentials.combineChannelCredentials(channelCredentials, callCredentials);
59
+ }
60
+ }
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2RrL1NlcnZpY2VzL0dycGMvQmFzZVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLElBQUksTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxLQUFLLGNBQWMsTUFBTSwyQ0FBMkMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM5QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRSxJQUFPLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO0FBQzVCLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQU10RSxNQUFNLE9BQU8sV0FBVztJQUF4QjtRQUNZLGtCQUFhLEdBQVcscUJBQXFCLENBQUM7UUFDOUMsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUN2Qix1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFDcEMsaUJBQVksR0FBVyxFQUFFLENBQUM7SUE0RXRDLENBQUM7SUExRVcsY0FBYyxDQUFDLFFBRXhCO1FBQ0MsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLHFCQUFxQixFQUFFLEdBQUcsUUFBUSxDQUFDO1FBRXRELElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxjQUFjLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRTtZQUN0RCxNQUFNLENBQUMsR0FBRyxDQUNSLFVBQVUsSUFBSSxDQUFDLFlBQVksMEJBQTBCLE1BQU0sQ0FBQyxNQUFNLE1BQU0sTUFBTSxDQUFDLE9BQU8sRUFBRSxFQUN4RixLQUFLLENBQUMsS0FBSyxDQUNaLENBQUM7WUFDRixNQUFNLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUNqQzthQUFNLElBQ0wsTUFBTSxDQUFDLE1BQU0s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
@@ -0,0 +1,9 @@
1
+ import * as CryptographyMessages from './scanoss/api/cryptography/v2/scanoss-cryptography_pb';
2
+ import { BaseService, PurlRequest } from './BaseService';
3
+ export interface AlgorithmResponse extends CryptographyMessages.AlgorithmResponse.AsObject {
4
+ }
5
+ export declare class CryptographyService extends BaseService {
6
+ private client;
7
+ constructor(token: string, proxy?: string);
8
+ getAlgorithms(req: PurlRequest): Promise<AlgorithmResponse>;
9
+ }
@@ -0,0 +1,32 @@
1
+ import { CryptographyClient } from './scanoss/api/cryptography/v2/scanoss-cryptography_grpc_pb';
2
+ import { BaseService } from './BaseService';
3
+ import { ERROR_SERVICES_GRPC_API_TOKEN_REQUIRED } from '../../Errors';
4
+ export class CryptographyService extends BaseService {
5
+ constructor(token, proxy) {
6
+ super();
7
+ this.SERVICE_NAME = 'CryptographyService';
8
+ this.IS_PREMIUM_SERVICE = true;
9
+ this.API_TOKEN = token;
10
+ if (this.IS_PREMIUM_SERVICE && !this.API_TOKEN)
11
+ throw new Error(ERROR_SERVICES_GRPC_API_TOKEN_REQUIRED);
12
+ if (proxy)
13
+ process.env.grpc_proxy = proxy;
14
+ this.client = new CryptographyClient(this.GRPC_ENDPOINT, this.generateChannelCredentials());
15
+ }
16
+ async getAlgorithms(req) {
17
+ return new Promise((resolve, reject) => {
18
+ this.client.getAlgorithms(this.buildGRPCPurlRequest(req), (err, response) => {
19
+ if (err)
20
+ reject(err);
21
+ try {
22
+ // @ts-ignore
23
+ resolve(this.handleResponse(response.toObject()));
24
+ }
25
+ catch (e) {
26
+ reject(e);
27
+ }
28
+ });
29
+ });
30
+ }
31
+ }
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3J5cHRvZ3JhcGh5U2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvU2VydmljZXMvR3JwYy9DcnlwdG9ncmFwaHlTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBRWhHLE9BQU8sRUFBRSxXQUFXLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBS3RFLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxXQUFXO0lBR2xELFlBQVksS0FBYSxFQUFFLEtBQWM7UUFDdkMsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsWUFBWSxHQUFHLHFCQUFxQixDQUFDO1FBQzFDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFFdkIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUztZQUM1QyxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7UUFFMUQsSUFBSSxLQUFLO1lBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBRTFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxrQkFBa0IsQ0FDbEMsSUFBSSxDQUFDLGFBQWEsRUFDbEIsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQ2xDLENBQUM7SUFDSixDQUFDO0lBRU0sS0FBSyxDQUFDLGFBQWEsQ0FBQyxHQUFnQjtRQUN6QyxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUN2QixJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLEVBQzlCLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFO2dCQUNoQixJQUFJLEdBQUc7b0JBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNyQixJQUFJO29CQUNGLGFBQWE7b0JBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDbkQ7Z0JBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ1YsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUNYO1lBQ0gsQ0FBQyxDQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiJ9
@@ -1,6 +1,6 @@
1
1
  import * as DependenciesMessages from './scanoss/api/dependencies/v2/scanoss-dependencies_pb';
2
2
  import * as CommonMessages from './scanoss/api/common/v2/scanoss-common_pb';
3
- export declare class GrpcDependencyService {
3
+ export declare class DependencyService {
4
4
  private client;
5
5
  private metadata;
6
6
  constructor(endpoint: string, proxy?: string);
@@ -0,0 +1,62 @@
1
+ import * as grpc from '@grpc/grpc-js';
2
+ import { DependenciesClient } from './scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb';
3
+ import * as DependenciesMessages from './scanoss/api/dependencies/v2/scanoss-dependencies_pb';
4
+ import * as CommonMessages from './scanoss/api/common/v2/scanoss-common_pb';
5
+ export class DependencyService {
6
+ constructor(endpoint, proxy) {
7
+ if (proxy)
8
+ process.env.grpc_proxy = proxy;
9
+ this.client = new DependenciesClient(endpoint, grpc.credentials.createSsl());
10
+ }
11
+ async get(req) {
12
+ return new Promise((resolve, reject) => {
13
+ this.client.getDependencies(req, (err, response) => {
14
+ if (err)
15
+ reject(err);
16
+ resolve(response);
17
+ });
18
+ });
19
+ }
20
+ buildDependencyRequestMsg(plainObj) {
21
+ try {
22
+ const depMessage = new DependenciesMessages.DependencyRequest();
23
+ for (const dependency of plainObj.filesList) {
24
+ const fileMsg = new DependenciesMessages.DependencyRequest.Files();
25
+ fileMsg.setFile(dependency.file);
26
+ for (const purl of dependency.purlsList) {
27
+ const purlMsg = new DependenciesMessages.DependencyRequest.Purls();
28
+ purlMsg.setPurl(purl.purl);
29
+ purlMsg.setRequirement(purl?.requirement);
30
+ fileMsg.addPurls(purlMsg);
31
+ }
32
+ depMessage.addFiles(fileMsg);
33
+ }
34
+ return depMessage;
35
+ }
36
+ catch (e) {
37
+ console.error(e);
38
+ return null;
39
+ }
40
+ }
41
+ async echo(req) {
42
+ return new Promise((resolve, reject) => {
43
+ this.client.echo(req, (err, response) => {
44
+ if (err)
45
+ reject(err);
46
+ resolve(response);
47
+ });
48
+ });
49
+ }
50
+ buildEchoRequestMsg(plainObj) {
51
+ try {
52
+ const echoMessage = new CommonMessages.EchoRequest();
53
+ echoMessage.setMessage(plainObj.message);
54
+ return echoMessage;
55
+ }
56
+ catch (e) {
57
+ console.error(e);
58
+ return null;
59
+ }
60
+ }
61
+ }
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVwZW5kZW5jeVNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvc2RrL1NlcnZpY2VzL0dycGMvRGVwZW5kZW5jeVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLElBQUksTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNERBQTRELENBQUM7QUFDaEcsT0FBTyxLQUFLLG9CQUFvQixNQUFNLHVEQUF1RCxDQUFDO0FBQzlGLE9BQU8sS0FBSyxjQUFjLE1BQU0sMkNBQTJDLENBQUM7QUFHNUUsTUFBTSxPQUFPLGlCQUFpQjtJQUs1QixZQUFZLFFBQWdCLEVBQUUsS0FBYztRQUMxQyxJQUFJLEtBQUs7WUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFFMUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGtCQUFrQixDQUNsQyxRQUFRLEVBQ1IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FDN0IsQ0FBQztJQUNKLENBQUM7SUFFTSxLQUFLLENBQUMsR0FBRyxDQUNkLEdBQTJDO1FBRTNDLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFO2dCQUNqRCxJQUFJLEdBQUc7b0JBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNyQixPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDcEIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSx5QkFBeUIsQ0FDOUIsUUFBeUQ7UUFFekQsSUFBSTtZQUNGLE1BQU0sVUFBVSxHQUFHLElBQUksb0JBQW9CLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNoRSxLQUFLLE1BQU0sVUFBVSxJQUFJLFFBQVEsQ0FBQyxTQUFTLEVBQUU7Z0JBQzNDLE1BQU0sT0FBTyxHQUFHLElBQUksb0JBQW9CLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ25FLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNqQyxLQUFLLE1BQU0sSUFBSSxJQUFJLFVBQVUsQ0FBQyxTQUFTLEVBQUU7b0JBQ3ZDLE1BQU0sT0FBTyxHQUFHLElBQUksb0JBQW9CLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLENBQUM7b0JBQ25FLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUMzQixPQUFPLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztvQkFDMUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztpQkFDM0I7Z0JBQ0QsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUM5QjtZQUNELE9BQU8sVUFBVSxDQUFDO1NBQ25CO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDO0lBRU0sS0FBSyxDQUFDLElBQUksQ0FDZixHQUErQjtRQUUvQixPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsRUFBRTtnQkFDdEMsSUFBSSxHQUFHO29CQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDckIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3BCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sbUJBQW1CLENBQ3hCLFFBQTZDO1FBRTdDLElBQUk7WUFDRixNQUFNLFdBQVcsR0FBRyxJQUFJLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyRCxXQUFXLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN6QyxPQUFPLFdBQVcsQ0FBQztTQUNwQjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQixPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztDQUNGIn0=
@@ -0,0 +1,2 @@
1
+ // GENERATED CODE -- NO SERVICES IN PROTO
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbm9zcy1jb21tb25fZ3JwY19wYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9zZGsvU2VydmljZXMvR3JwYy9zY2Fub3NzL2FwaS9jb21tb24vdjIvc2Nhbm9zcy1jb21tb25fZ3JwY19wYi5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5Q0FBeUMifQ==