scanoss 0.8.1 → 0.8.2

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.
@@ -17,3 +17,4 @@ export * from './sdk/DataLayer/DataProviders/ComponentDataProvider';
17
17
  export * from './sdk/Decompress/DecompressionManager';
18
18
  export * from './sdk/FileCount/FileCount';
19
19
  export { IDirSummary } from './sdk/FileCount/Interfaces';
20
+ export { logger } from './sdk/Logger';
@@ -9,6 +9,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
9
9
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.logger = void 0;
12
13
  // *** Code scanner exports *** //
13
14
  __exportStar(require("./sdk/scanner/Scanner"), exports);
14
15
  __exportStar(require("./sdk/scanner/ScannerTypes"), exports);
@@ -32,4 +33,6 @@ __exportStar(require("./sdk/DataLayer/DataProviders/ComponentDataProvider"), exp
32
33
  __exportStar(require("./sdk/Decompress/DecompressionManager"), exports);
33
34
  // *** FileCount *** //
34
35
  __exportStar(require("./sdk/FileCount/FileCount"), exports);
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSxrQ0FBa0M7QUFDbEMsd0RBQXNDO0FBQ3RDLDZEQUEyQztBQUMzQywyREFBeUM7QUFDekMsd0ZBQXNFO0FBRXRFLGlDQUFpQztBQUNqQyw0REFBMEM7QUFHMUMsd0NBQXdDO0FBQ3hDLHFFQUFtRDtBQUNuRCwwRUFBd0Q7QUFDeEQsdUVBQXFEO0FBQ3JELHFGQUFrRTtBQUVsRSxnQ0FBZ0M7QUFDaEMsaUVBQStDO0FBQy9DLHNFQUFvRDtBQUNwRCxvRkFBa0U7QUFDbEUsb0ZBQWtFO0FBQ2xFLHVGQUFxRTtBQUNyRSxzRkFBb0U7QUFFcEUsbUJBQW1CO0FBQ25CLHdFQUFzRDtBQUd0RCx1QkFBdUI7QUFDdkIsNERBQTBDIn0=
36
+ var Logger_1 = require("./sdk/Logger");
37
+ Object.defineProperty(exports, "logger", { enumerable: true, get: function () { return Logger_1.logger; } });
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsa0NBQWtDO0FBQ2xDLHdEQUFzQztBQUN0Qyw2REFBMkM7QUFDM0MsMkRBQXlDO0FBQ3pDLHdGQUFzRTtBQUV0RSxpQ0FBaUM7QUFDakMsNERBQTBDO0FBRzFDLHdDQUF3QztBQUN4QyxxRUFBbUQ7QUFDbkQsMEVBQXdEO0FBQ3hELHVFQUFxRDtBQUNyRCxxRkFBa0U7QUFFbEUsZ0NBQWdDO0FBQ2hDLGlFQUErQztBQUMvQyxzRUFBb0Q7QUFDcEQsb0ZBQWtFO0FBQ2xFLG9GQUFrRTtBQUNsRSx1RkFBcUU7QUFDckUsc0ZBQW9FO0FBRXBFLG1CQUFtQjtBQUNuQix3RUFBc0Q7QUFFdEQsdUJBQXVCO0FBQ3ZCLDREQUEwQztBQUcxQyx1Q0FBc0M7QUFBN0IsZ0dBQUEsTUFBTSxPQUFBIn0=
@@ -1,6 +1,7 @@
1
1
  Object.defineProperty(exports, "__esModule", { value: true });
2
2
  exports.BaseConfig = void 0;
3
3
  const Utils_1 = require("./Utils/Utils");
4
+ const Logger_1 = require("./Logger");
4
5
  class BaseConfig {
5
6
  constructor() {
6
7
  this.PAC = ''; //Read here for more information: https://en.wikipedia.org/wiki/Proxy_auto-config
@@ -11,30 +12,35 @@ class BaseConfig {
11
12
  if (this.PROXY && this.PAC)
12
13
  throw new Error("Cannot define PROXY and PAC settings at same time. Choose only one.");
13
14
  if (this.PAC) {
15
+ Logger_1.logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: Fetching PAC file from URI: ${this.PAC}`);
14
16
  const proxyStringPAC = await Utils_1.Utils.PACProxyResolver(this.PAC, this.API_URL);
15
- const proxyListPAC = proxyStringPAC.split(";");
17
+ const proxyListPAC = proxyStringPAC.split(";").filter(item => item.trim().length > 0);
18
+ if (!proxyListPAC.length) {
19
+ Logger_1.logger.log("[ SCANOSS_SDK.BASE_CONFIG ]: No proxy returned from PAC file. Trying to scan anyway with direct connection", Logger_1.Logger.Level.warn);
20
+ return;
21
+ }
22
+ //Endpoint to test the proxy
23
+ let host = new URL(this.API_URL).origin;
24
+ let healthEndpoint = `${host}/api/health`;
16
25
  for (const proxyPAC of proxyListPAC) {
17
- if (/(?:HTTPS|HTTP)/.test(proxyPAC)) {
18
- //The following line replaces the HTTPS/HTTP substring and appends
19
- //the protocol to the proxy address.
20
- this.PROXY = proxyPAC.replace(/(HTTPS|HTTP)\s+/, (match, g1) => { return `${g1.toLowerCase()}://`; });
21
- }
22
- else if (/PROXY/i.test(proxyPAC)) {
23
- this.PROXY = "http://" + proxyPAC.replace(/PROXY/, '').trim();
26
+ this.PROXY = Utils_1.Utils.PACProxyURLBuilder(proxyPAC);
27
+ if (this.PROXY) {
28
+ Logger_1.logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: Proxy parsed ${this.PROXY} `);
29
+ Logger_1.logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: Testing proxy connection against ${healthEndpoint}... `);
30
+ if (await Utils_1.Utils.testProxyConnection(healthEndpoint, this.PROXY))
31
+ return;
24
32
  }
25
- else if (/DEFAULT/.test(proxyPAC)) {
26
- this.PROXY = null;
33
+ else {
34
+ Logger_1.logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: No using proxy. DIRECT detected`);
35
+ Logger_1.logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: Testing direct connection against ${healthEndpoint}... `);
36
+ if (await Utils_1.Utils.testConnection(healthEndpoint))
37
+ return;
27
38
  }
28
- console.log(`Testing proxy connection ${this.PROXY} from PAC file and API_URL ${this.API_URL} ... `);
29
- if (!this.PROXY && await Utils_1.Utils.testConnection(this.API_URL))
30
- return;
31
- if (await Utils_1.Utils.testProxyConnection(this.API_URL, this.PROXY))
32
- return;
33
- console.log("Proxy not valid");
34
39
  }
35
- throw new Error("PAC file does not contains any valid proxy");
40
+ this.PROXY = Utils_1.Utils.PACProxyURLBuilder(proxyListPAC[0]);
41
+ Logger_1.logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: No successful connection with ${proxyListPAC}. Trying to scan anyway with ${this.PROXY}`);
36
42
  }
37
43
  }
38
44
  }
39
45
  exports.BaseConfig = BaseConfig;
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZGsvQmFzZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHlDQUFzQztBQUV0QyxNQUFzQixVQUFVO0lBQWhDO1FBQ1MsUUFBRyxHQUFXLEVBQUUsQ0FBQyxDQUFFLGlGQUFpRjtRQUNwRyxVQUFLLEdBQVcsRUFBRSxDQUFDO1FBQ25CLFlBQU8sR0FBVyxFQUFFLENBQUM7SUE0QjlCLENBQUM7SUExQlEsS0FBSyxDQUFDLFFBQVE7UUFDbkIsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxHQUFHO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxxRUFBcUUsQ0FBQyxDQUFDO1FBRW5ILElBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNYLE1BQU0sY0FBYyxHQUFHLE1BQU0sYUFBSyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzVFLE1BQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDL0MsS0FBSyxNQUFNLFFBQVEsSUFBSSxZQUFZLEVBQUc7Z0JBQ3BDLElBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO29CQUNsQyxrRUFBa0U7b0JBQ2xFLG9DQUFvQztvQkFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUM3QyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFFLE9BQU8sR0FBRyxFQUFFLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFDO2lCQUNyRDtxQkFBTSxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7b0JBQ2xDLElBQUksQ0FBQyxLQUFLLEdBQUcsU0FBUyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO2lCQUMvRDtxQkFBTSxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7b0JBQ25DLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO2lCQUNuQjtnQkFFRCxPQUFPLENBQUMsR0FBRyxDQUFDLDRCQUE0QixJQUFJLENBQUMsS0FBSyw4QkFBOEIsSUFBSSxDQUFDLE9BQU8sT0FBTyxDQUFDLENBQUM7Z0JBQ3JHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLE1BQU0sYUFBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO29CQUFFLE9BQU87Z0JBQ3BFLElBQUksTUFBTSxhQUFLLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDO29CQUFFLE9BQU87Z0JBQ3RFLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQTthQUMvQjtZQUNILE1BQU0sSUFBSSxLQUFLLENBQUMsNENBQTRDLENBQUMsQ0FBQTtTQUM1RDtJQUNILENBQUM7Q0FDRjtBQS9CRCxnQ0ErQkMifQ==
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZGsvQmFzZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHlDQUFzQztBQUN0QyxxQ0FBMEM7QUFFMUMsTUFBc0IsVUFBVTtJQUFoQztRQUNTLFFBQUcsR0FBVyxFQUFFLENBQUMsQ0FBRSxpRkFBaUY7UUFDcEcsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixZQUFPLEdBQVcsRUFBRSxDQUFDO0lBc0M5QixDQUFDO0lBcENRLEtBQUssQ0FBQyxRQUFRO1FBQ25CLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMscUVBQXFFLENBQUMsQ0FBQztRQUVuSCxJQUFHLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDWCxlQUFNLENBQUMsR0FBRyxDQUFDLDREQUE0RCxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNuRixNQUFNLGNBQWMsR0FBRyxNQUFNLGFBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUU1RSxNQUFNLFlBQVksR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFFLENBQUM7WUFDdkYsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7Z0JBQ3hCLGVBQU0sQ0FBQyxHQUFHLENBQUMsNEdBQTRHLEVBQUUsZUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDNUksT0FBTzthQUNSO1lBRUQsNEJBQTRCO1lBQzVCLElBQUksSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDeEMsSUFBSSxjQUFjLEdBQUcsR0FBRyxJQUFJLGFBQWEsQ0FBQztZQUUxQyxLQUFLLE1BQU0sUUFBUSxJQUFJLFlBQVksRUFBRztnQkFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxhQUFLLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBRWhELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtvQkFDZCxlQUFNLENBQUMsR0FBRyxDQUFDLDZDQUE2QyxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztvQkFDekUsZUFBTSxDQUFDLEdBQUcsQ0FBQyxpRUFBaUUsY0FBYyxNQUFNLENBQUMsQ0FBQztvQkFDbEcsSUFBSSxNQUFNLGFBQUssQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQzt3QkFBRSxPQUFPO2lCQUN6RTtxQkFBTTtvQkFDTCxlQUFNLENBQUMsR0FBRyxDQUFDLCtEQUErRCxDQUFDLENBQUM7b0JBQzVFLGVBQU0sQ0FBQyxHQUFHLENBQUMsa0VBQWtFLGNBQWMsTUFBTSxDQUFDLENBQUM7b0JBQ25HLElBQUksTUFBTSxhQUFLLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQzt3QkFBRSxPQUFPO2lCQUN4RDthQUNGO1lBRUQsSUFBSSxDQUFDLEtBQUssR0FBRyxhQUFLLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkQsZUFBTSxDQUFDLEdBQUcsQ0FBQyw4REFBOEQsWUFBWSxnQ0FBZ0MsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7U0FFcEk7SUFDSCxDQUFDO0NBQ0Y7QUF6Q0QsZ0NBeUNDIn0=
@@ -0,0 +1,19 @@
1
+ export declare class Logger {
2
+ private level;
3
+ private transport;
4
+ constructor();
5
+ setTransport(transport: Logger.TransportType): void;
6
+ setLevel(level?: Logger.Level): void;
7
+ log(msg: string, level?: Logger.Level): void;
8
+ }
9
+ export declare namespace Logger {
10
+ type TransportType = (msg: string) => void;
11
+ enum Level {
12
+ error = 0,
13
+ warn = 1,
14
+ info = 2,
15
+ verbose = 3,
16
+ debug = 4
17
+ }
18
+ }
19
+ export declare const logger: Logger;
@@ -0,0 +1,31 @@
1
+ Object.defineProperty(exports, "__esModule", { value: true });
2
+ exports.logger = exports.Logger = void 0;
3
+ class Logger {
4
+ constructor() {
5
+ this.setLevel(Logger.Level.info);
6
+ this.setTransport((msg) => { console.log(msg); });
7
+ }
8
+ setTransport(transport) {
9
+ this.transport = transport;
10
+ }
11
+ setLevel(level = Logger.Level.info) {
12
+ this.level = level;
13
+ }
14
+ log(msg, level = Logger.Level.info) {
15
+ if (this.level >= level)
16
+ this.transport(msg);
17
+ }
18
+ }
19
+ exports.Logger = Logger;
20
+ (function (Logger) {
21
+ let Level;
22
+ (function (Level) {
23
+ Level[Level["error"] = 0] = "error";
24
+ Level[Level["warn"] = 1] = "warn";
25
+ Level[Level["info"] = 2] = "info";
26
+ Level[Level["verbose"] = 3] = "verbose";
27
+ Level[Level["debug"] = 4] = "debug";
28
+ })(Level = Logger.Level || (Logger.Level = {}));
29
+ })(Logger = exports.Logger || (exports.Logger = {}));
30
+ exports.logger = new Logger();
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Nkay9Mb2dnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFDQSxNQUFhLE1BQU07SUFJakI7UUFDRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFLEdBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTSxZQUFZLENBQUMsU0FBK0I7UUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUVNLFFBQVEsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFTSxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUk7UUFDL0MsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUs7WUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9DLENBQUM7Q0FFRjtBQXJCRCx3QkFxQkM7QUFFRCxXQUFpQixNQUFNO0lBR3JCLElBQVksS0FNWDtJQU5ELFdBQVksS0FBSztRQUNmLG1DQUFLLENBQUE7UUFDTCxpQ0FBSSxDQUFBO1FBQ0osaUNBQUksQ0FBQTtRQUNKLHVDQUFPLENBQUE7UUFDUCxtQ0FBSyxDQUFBO0lBQ1AsQ0FBQyxFQU5XLEtBQUssR0FBTCxZQUFLLEtBQUwsWUFBSyxRQU1oQjtBQUNILENBQUMsRUFWZ0IsTUFBTSxHQUFOLGNBQU0sS0FBTixjQUFNLFFBVXRCO0FBRVksUUFBQSxNQUFNLEdBQUcsSUFBSSxNQUFNLEVBQUUsQ0FBQyJ9
@@ -6,6 +6,7 @@ export declare class Utils {
6
6
  private static PAC_FindProxyForURL;
7
7
  static getPackageVersion(): string;
8
8
  static PACProxyResolver(pacURI: string, URL: string): Promise<string>;
9
- static testConnection(hostname: string, agent?: Http.Agent | Https.Agent): Promise<boolean>;
9
+ static PACProxyURLBuilder(proxyPAC: string): string;
10
+ static testConnection(host: string, agent?: Http.Agent | Https.Agent): Promise<boolean>;
10
11
  static testProxyConnection(hostname: string, proxy: string): Promise<boolean>;
11
12
  }
@@ -15,6 +15,7 @@ const pac_resolver_1 = __importDefault(require("pac-resolver"));
15
15
  const http_proxy_agent_1 = require("http-proxy-agent");
16
16
  const https_proxy_agent_1 = require("https-proxy-agent");
17
17
  const node_fetch_1 = __importDefault(require("node-fetch"));
18
+ const Logger_1 = require("../Logger");
18
19
  const pjson = require('../../../../package.json');
19
20
  class Utils {
20
21
  static getPackageVersion() {
@@ -43,11 +44,25 @@ class Utils {
43
44
  this.PAC_FindProxyForURL = pac_resolver_1.default(resolver);
44
45
  return this.PAC_FindProxyForURL(URL);
45
46
  }
46
- static async testConnection(hostname, agent) {
47
- let host = new URL(hostname).origin;
47
+ static PACProxyURLBuilder(proxyPAC) {
48
+ let proxyURL = '';
49
+ if (/(?:HTTPS|HTTP)/.test(proxyPAC)) {
50
+ //The following line replaces the HTTPS/HTTP substring and appends
51
+ //the protocol to the proxy address.
52
+ proxyURL = proxyPAC.replace(/(HTTPS|HTTP)\s+/, (match, g1) => { return `${g1.toLowerCase()}://`; });
53
+ }
54
+ else if (/PROXY/i.test(proxyPAC)) {
55
+ proxyURL = "http://" + proxyPAC.replace(/PROXY/, '').trim();
56
+ }
57
+ else if (/DIRECT/.test(proxyPAC)) {
58
+ proxyURL = '';
59
+ }
60
+ return proxyURL;
61
+ }
62
+ static async testConnection(host, agent) {
48
63
  try {
49
64
  const controller = new AbortController();
50
- const timeoutId = setTimeout(() => controller.abort(), 3000);
65
+ const timeoutId = setTimeout(() => controller.abort(), 5000);
51
66
  const response = await node_fetch_1.default(host, Object.assign(Object.assign({}, (agent && { agent })), {
52
67
  // @ts-ignore
53
68
  signal: controller.signal }));
@@ -57,6 +72,7 @@ class Utils {
57
72
  return true;
58
73
  }
59
74
  catch (e) {
75
+ Logger_1.logger.log(`[ SCANOSS_SDK.UTILS ]: Failed to query ${host} ${e.name} | ${e.message}`, Logger_1.Logger.Level.info);
60
76
  return false;
61
77
  }
62
78
  }
@@ -72,4 +88,4 @@ class Utils {
72
88
  }
73
89
  }
74
90
  exports.Utils = Utils;
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2RrL1V0aWxzL1V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUVBLHNEQUE2QjtBQUM3QixnRUFBb0Q7QUFDcEQsdURBQWtEO0FBQ2xELHlEQUFvRDtBQUNwRCw0REFBK0I7QUFJL0IsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLDBCQUEwQixDQUFDLENBQUE7QUFDakQsTUFBYSxLQUFLO0lBTVQsTUFBTSxDQUFDLGlCQUFpQjtRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVc7WUFBRSxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUNoRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFBO0lBQ2pDLENBQUM7SUFHTSxNQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQWMsRUFBRSxHQUFXOztRQUM5RCxNQUFNLGNBQWMsR0FBRyxNQUFNLGlCQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFNUMsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFBOztZQUNqQixLQUF3QixJQUFBLG1CQUFBLGNBQUEsY0FBYyxDQUFBLG9CQUFBO2dCQUEzQixJQUFJLEtBQUssMkJBQUEsQ0FBQTtnQkFBb0IsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTthQUFBOzs7Ozs7Ozs7UUFDMUQsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUV2QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsc0JBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6QyxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUN0QyxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsUUFBZSxFQUFFLEtBQWdDO1FBQ2xGLElBQUksSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUNwQyxJQUFJO1lBQ0YsTUFBTSxVQUFVLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQTtZQUN4QyxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFBO1lBQzVELE1BQU0sUUFBUSxHQUFHLE1BQU0sb0JBQUssQ0FBQyxJQUFJLGtDQUM1QixDQUFDLEtBQUssSUFBSSxFQUFDLEtBQUssRUFBQyxDQUFDO2dCQUNyQixhQUFhO2dCQUNiLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTSxJQUN6QixDQUFDO1lBQ0gsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUM5RCxPQUFPLElBQUksQ0FBQztTQUNiO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixPQUFPLEtBQUssQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsUUFBZSxFQUFFLEtBQWE7UUFDcEUsSUFBSSxVQUE0QyxDQUFDO1FBQ2pELElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFBRSxVQUFVLEdBQUcsSUFBSSxtQ0FBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ2hFLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFBRSxVQUFVLEdBQUcsSUFBSSxpQ0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxVQUFVO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDOUIsT0FBTyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7Q0FFRjtBQWpERCxzQkFpREMifQ==
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2RrL1V0aWxzL1V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUVBLHNEQUE2QjtBQUM3QixnRUFBb0Q7QUFDcEQsdURBQWtEO0FBQ2xELHlEQUFvRDtBQUNwRCw0REFBK0I7QUFHL0Isc0NBQTJDO0FBRTNDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBQ2pELE1BQWEsS0FBSztJQU1ULE1BQU0sQ0FBQyxpQkFBaUI7UUFDN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXO1lBQUUsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDaEQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQTtJQUNqQyxDQUFDO0lBR00sTUFBTSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFjLEVBQUUsR0FBVzs7UUFDOUQsTUFBTSxjQUFjLEdBQUcsTUFBTSxpQkFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTVDLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQTs7WUFDakIsS0FBd0IsSUFBQSxtQkFBQSxjQUFBLGNBQWMsQ0FBQSxvQkFBQTtnQkFBM0IsSUFBSSxLQUFLLDJCQUFBLENBQUE7Z0JBQW9CLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7YUFBQTs7Ozs7Ozs7O1FBQzFELE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFdkMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLHNCQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDdEMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxRQUFnQjtRQUMvQyxJQUFJLFFBQVEsR0FBVyxF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
@@ -531,13 +531,18 @@
531
531
  "signature": "67918f0ddd6271a88574dfe495942f4a6e982b9c3c1a2ce14c273f103691394d",
532
532
  "affectsGlobalScope": false
533
533
  },
534
+ "../../src/sdk/Logger.ts": {
535
+ "version": "fd4d3f1ba4c837397a726d1383127dc43e8ff7f35cc9b513bf15ebadc9733f16",
536
+ "signature": "1b47705dfcc269d6ae10979dcca4479eb47e72d09c59d67d8c95a91551d78eca",
537
+ "affectsGlobalScope": false
538
+ },
534
539
  "../../src/sdk/Utils/Utils.ts": {
535
- "version": "f3e2d2dd27938eb3d2e4cd79e6ccc8f14298277b5bf299cf6ca82015e0f53929",
536
- "signature": "5f991e5e65406413f18fbbe8a39082d98a8e64ff7a70d76e7fa5d2f6b454a672",
540
+ "version": "c144aa852b0d16e267fb120eda7cbecdb2d097831f16bc8979c5a66d8f4d97a3",
541
+ "signature": "e1703a60aed7b8a401834f29b2f5e29e221748aa4add7e28dc9c89ead9636d8f",
537
542
  "affectsGlobalScope": false
538
543
  },
539
544
  "../../src/sdk/BaseConfig.ts": {
540
- "version": "b2432dbfbc5cefd6cfc51d2d4c0cf090eaa921a1bc09205e2a3245bb305cb054",
545
+ "version": "bb7e25376c325553b0f3c6766dbb6c24673adc5ab9d81b19242fb3a0ae53e05b",
541
546
  "signature": "9a171a10f05da82af3f099ed69587aa05f883e04f3dd8183a06763f083628aef",
542
547
  "affectsGlobalScope": false
543
548
  },
@@ -1222,8 +1227,8 @@
1222
1227
  "affectsGlobalScope": false
1223
1228
  },
1224
1229
  "../../src/index.ts": {
1225
- "version": "1827ee1fa3f96e34a159f6e0d7891557975cb7a043b12bc04b3eb5730b8bdd60",
1226
- "signature": "8d3cdabd02dbfab80ec41f9d416fc5e16d9eeeb9d099afe54fbf0d215792a693",
1230
+ "version": "fc0166a4e45dcc5a9a9fa00866e63fb70157b7f8746576fb2ad58e078dd37e2a",
1231
+ "signature": "b568d563206d8429a811c0b8d2b05279e00bfbcb0661b6f3f7ee62cad4576c63",
1227
1232
  "affectsGlobalScope": false
1228
1233
  },
1229
1234
  "../../node_modules/commander/typings/index.d.ts": {
@@ -2507,6 +2512,7 @@
2507
2512
  "../../src/sdk/Dependencies/LocalDependency/LocalDependency.ts",
2508
2513
  "../../src/sdk/FileCount/FileCount.ts",
2509
2514
  "../../src/sdk/FileCount/Interfaces.ts",
2515
+ "../../src/sdk/Logger.ts",
2510
2516
  "../../src/sdk/scanner/Fingerprint.ts",
2511
2517
  "../../src/sdk/scanner/Scanner.ts",
2512
2518
  "../../src/sdk/scanner/ScannerCfg.ts",
@@ -2516,6 +2522,7 @@
2516
2522
  ],
2517
2523
  "../../src/sdk/BaseConfig.ts": [
2518
2524
  "../../node_modules/@types/node/util.d.ts",
2525
+ "../../src/sdk/Logger.ts",
2519
2526
  "../../src/sdk/Utils/Utils.ts"
2520
2527
  ],
2521
2528
  "../../src/sdk/DataLayer/DataLayerTypes.ts": [
@@ -2679,6 +2686,9 @@
2679
2686
  "../../node_modules/@types/node/util.d.ts",
2680
2687
  "../../node_modules/isbinaryfile/lib/index.d.ts"
2681
2688
  ],
2689
+ "../../src/sdk/Logger.ts": [
2690
+ "../../node_modules/@types/node/util.d.ts"
2691
+ ],
2682
2692
  "../../src/sdk/Report/Report.ts": [
2683
2693
  "../../node_modules/@types/node/fs.d.ts",
2684
2694
  "../../node_modules/@types/node/path.d.ts",
@@ -2696,7 +2706,8 @@
2696
2706
  "../../node_modules/get-uri/dist/index.d.ts",
2697
2707
  "../../node_modules/http-proxy-agent/dist/index.d.ts",
2698
2708
  "../../node_modules/https-proxy-agent/dist/index.d.ts",
2699
- "../../node_modules/pac-resolver/dist/index.d.ts"
2709
+ "../../node_modules/pac-resolver/dist/index.d.ts",
2710
+ "../../src/sdk/Logger.ts"
2700
2711
  ],
2701
2712
  "../../src/sdk/grpc/GrpcDependencyService.ts": [
2702
2713
  "../../node_modules/@grpc/grpc-js/build/src/index.d.ts",
@@ -3989,6 +4000,7 @@
3989
4000
  "../../src/sdk/Dependencies/LocalDependency/LocalDependency.ts",
3990
4001
  "../../src/sdk/FileCount/FileCount.ts",
3991
4002
  "../../src/sdk/FileCount/Interfaces.ts",
4003
+ "../../src/sdk/Logger.ts",
3992
4004
  "../../src/sdk/scanner/Fingerprint.ts",
3993
4005
  "../../src/sdk/scanner/Scanner.ts",
3994
4006
  "../../src/sdk/scanner/ScannerCfg.ts",
@@ -4422,6 +4434,7 @@
4422
4434
  "../../src/sdk/Filtering/DefaultFilterForDependencies.ts",
4423
4435
  "../../src/sdk/Filtering/DefaultFilterForScanning.ts",
4424
4436
  "../../src/sdk/Filtering/Filtering.ts",
4437
+ "../../src/sdk/Logger.ts",
4425
4438
  "../../src/sdk/Report/Report.ts",
4426
4439
  "../../src/sdk/Utils/Utils.ts",
4427
4440
  "../../src/sdk/grpc/GrpcDependencyService.ts",
@@ -17,3 +17,4 @@ export * from './sdk/DataLayer/DataProviders/ComponentDataProvider';
17
17
  export * from './sdk/Decompress/DecompressionManager';
18
18
  export * from './sdk/FileCount/FileCount';
19
19
  export { IDirSummary } from './sdk/FileCount/Interfaces';
20
+ export { logger } from './sdk/Logger';
@@ -21,4 +21,5 @@ export * from './sdk/DataLayer/DataProviders/ComponentDataProvider';
21
21
  export * from './sdk/Decompress/DecompressionManager';
22
22
  // *** FileCount *** //
23
23
  export * from './sdk/FileCount/FileCount';
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsa0NBQWtDO0FBQ2xDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdURBQXVELENBQUM7QUFFdEUsaUNBQWlDO0FBQ2pDLGNBQWMsMkJBQTJCLENBQUM7QUFHMUMsd0NBQXdDO0FBQ3hDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsb0RBQW9ELENBQUE7QUFFbEUsZ0NBQWdDO0FBQ2hDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHFEQUFxRCxDQUFDO0FBRXBFLG1CQUFtQjtBQUNuQixjQUFjLHVDQUF1QyxDQUFDO0FBR3RELHVCQUF1QjtBQUN2QixjQUFjLDJCQUEyQixDQUFDIn0=
24
+ export { logger } from './sdk/Logger';
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsa0NBQWtDO0FBQ2xDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsdURBQXVELENBQUM7QUFFdEUsaUNBQWlDO0FBQ2pDLGNBQWMsMkJBQTJCLENBQUM7QUFHMUMsd0NBQXdDO0FBQ3hDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsb0RBQW9ELENBQUE7QUFFbEUsZ0NBQWdDO0FBQ2hDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHFEQUFxRCxDQUFDO0FBRXBFLG1CQUFtQjtBQUNuQixjQUFjLHVDQUF1QyxDQUFDO0FBRXRELHVCQUF1QjtBQUN2QixjQUFjLDJCQUEyQixDQUFDO0FBRzFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUMifQ==
@@ -1,4 +1,5 @@
1
1
  import { Utils } from './Utils/Utils';
2
+ import { Logger, logger } from './Logger';
2
3
  export class BaseConfig {
3
4
  constructor() {
4
5
  this.PAC = ''; //Read here for more information: https://en.wikipedia.org/wiki/Proxy_auto-config
@@ -9,29 +10,34 @@ export class BaseConfig {
9
10
  if (this.PROXY && this.PAC)
10
11
  throw new Error("Cannot define PROXY and PAC settings at same time. Choose only one.");
11
12
  if (this.PAC) {
13
+ logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: Fetching PAC file from URI: ${this.PAC}`);
12
14
  const proxyStringPAC = await Utils.PACProxyResolver(this.PAC, this.API_URL);
13
- const proxyListPAC = proxyStringPAC.split(";");
15
+ const proxyListPAC = proxyStringPAC.split(";").filter(item => item.trim().length > 0);
16
+ if (!proxyListPAC.length) {
17
+ logger.log("[ SCANOSS_SDK.BASE_CONFIG ]: No proxy returned from PAC file. Trying to scan anyway with direct connection", Logger.Level.warn);
18
+ return;
19
+ }
20
+ //Endpoint to test the proxy
21
+ let host = new URL(this.API_URL).origin;
22
+ let healthEndpoint = `${host}/api/health`;
14
23
  for (const proxyPAC of proxyListPAC) {
15
- if (/(?:HTTPS|HTTP)/.test(proxyPAC)) {
16
- //The following line replaces the HTTPS/HTTP substring and appends
17
- //the protocol to the proxy address.
18
- this.PROXY = proxyPAC.replace(/(HTTPS|HTTP)\s+/, (match, g1) => { return `${g1.toLowerCase()}://`; });
19
- }
20
- else if (/PROXY/i.test(proxyPAC)) {
21
- this.PROXY = "http://" + proxyPAC.replace(/PROXY/, '').trim();
24
+ this.PROXY = Utils.PACProxyURLBuilder(proxyPAC);
25
+ if (this.PROXY) {
26
+ logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: Proxy parsed ${this.PROXY} `);
27
+ logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: Testing proxy connection against ${healthEndpoint}... `);
28
+ if (await Utils.testProxyConnection(healthEndpoint, this.PROXY))
29
+ return;
22
30
  }
23
- else if (/DEFAULT/.test(proxyPAC)) {
24
- this.PROXY = null;
31
+ else {
32
+ logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: No using proxy. DIRECT detected`);
33
+ logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: Testing direct connection against ${healthEndpoint}... `);
34
+ if (await Utils.testConnection(healthEndpoint))
35
+ return;
25
36
  }
26
- console.log(`Testing proxy connection ${this.PROXY} from PAC file and API_URL ${this.API_URL} ... `);
27
- if (!this.PROXY && await Utils.testConnection(this.API_URL))
28
- return;
29
- if (await Utils.testProxyConnection(this.API_URL, this.PROXY))
30
- return;
31
- console.log("Proxy not valid");
32
37
  }
33
- throw new Error("PAC file does not contains any valid proxy");
38
+ this.PROXY = Utils.PACProxyURLBuilder(proxyListPAC[0]);
39
+ logger.log(`[ SCANOSS_SDK.BASE_CONFIG ]: No successful connection with ${proxyListPAC}. Trying to scan anyway with ${this.PROXY}`);
34
40
  }
35
41
  }
36
42
  }
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZGsvQmFzZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXRDLE1BQU0sT0FBZ0IsVUFBVTtJQUFoQztRQUNTLFFBQUcsR0FBVyxFQUFFLENBQUMsQ0FBRSxpRkFBaUY7UUFDcEcsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixZQUFPLEdBQVcsRUFBRSxDQUFDO0lBNEI5QixDQUFDO0lBMUJRLEtBQUssQ0FBQyxRQUFRO1FBQ25CLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMscUVBQXFFLENBQUMsQ0FBQztRQUVuSCxJQUFHLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDWCxNQUFNLGNBQWMsR0FBRyxNQUFNLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM1RSxNQUFNLFlBQVksR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQy9DLEtBQUssTUFBTSxRQUFRLElBQUksWUFBWSxFQUFHO2dCQUNwQyxJQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtvQkFDbEMsa0VBQWtFO29CQUNsRSxvQ0FBb0M7b0JBQ3BDLElBQUksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFDN0MsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsR0FBRSxPQUFPLEdBQUcsRUFBRSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUEsQ0FBQSxDQUFDLENBQUMsQ0FBQztpQkFDckQ7cUJBQU0sSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO29CQUNsQyxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztpQkFDL0Q7cUJBQU0sSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO29CQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztpQkFDbkI7Z0JBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyw0QkFBNEIsSUFBSSxDQUFDLEtBQUssOEJBQThCLElBQUksQ0FBQyxPQUFPLE9BQU8sQ0FBQyxDQUFDO2dCQUNyRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxNQUFNLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztvQkFBRSxPQUFPO2dCQUNwRSxJQUFJLE1BQU0sS0FBSyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQztvQkFBRSxPQUFPO2dCQUN0RSxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUE7YUFDL0I7WUFDSCxNQUFNLElBQUksS0FBSyxDQUFDLDRDQUE0QyxDQUFDLENBQUE7U0FDNUQ7SUFDSCxDQUFDO0NBQ0YifQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZGsvQmFzZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTFDLE1BQU0sT0FBZ0IsVUFBVTtJQUFoQztRQUNTLFFBQUcsR0FBVyxFQUFFLENBQUMsQ0FBRSxpRkFBaUY7UUFDcEcsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixZQUFPLEdBQVcsRUFBRSxDQUFDO0lBc0M5QixDQUFDO0lBcENRLEtBQUssQ0FBQyxRQUFRO1FBQ25CLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMscUVBQXFFLENBQUMsQ0FBQztRQUVuSCxJQUFHLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDWCxNQUFNLENBQUMsR0FBRyxDQUFDLDREQUE0RCxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNuRixNQUFNLGNBQWMsR0FBRyxNQUFNLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUU1RSxNQUFNLFlBQVksR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFFLENBQUM7WUFDdkYsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUU7Z0JBQ3hCLE1BQU0sQ0FBQyxHQUFHLENBQUMsNEdBQTRHLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDNUksT0FBTzthQUNSO1lBRUQsNEJBQTRCO1lBQzVCLElBQUksSUFBSSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDeEMsSUFBSSxjQUFjLEdBQUcsR0FBRyxJQUFJLGFBQWEsQ0FBQztZQUUxQyxLQUFLLE1BQU0sUUFBUSxJQUFJLFlBQVksRUFBRztnQkFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBRWhELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtvQkFDZCxNQUFNLENBQUMsR0FBRyxDQUFDLDZDQUE2QyxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztvQkFDekUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpRUFBaUUsY0FBYyxNQUFNLENBQUMsQ0FBQztvQkFDbEcsSUFBSSxNQUFNLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQzt3QkFBRSxPQUFPO2lCQUN6RTtxQkFBTTtvQkFDTCxNQUFNLENBQUMsR0FBRyxDQUFDLCtEQUErRCxDQUFDLENBQUM7b0JBQzVFLE1BQU0sQ0FBQyxHQUFHLENBQUMsa0VBQWtFLGNBQWMsTUFBTSxDQUFDLENBQUM7b0JBQ25HLElBQUksTUFBTSxLQUFLLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQzt3QkFBRSxPQUFPO2lCQUN4RDthQUNGO1lBRUQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdkQsTUFBTSxDQUFDLEdBQUcsQ0FBQyw4REFBOEQsWUFBWSxnQ0FBZ0MsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7U0FFcEk7SUFDSCxDQUFDO0NBQ0YifQ==
@@ -0,0 +1,19 @@
1
+ export declare class Logger {
2
+ private level;
3
+ private transport;
4
+ constructor();
5
+ setTransport(transport: Logger.TransportType): void;
6
+ setLevel(level?: Logger.Level): void;
7
+ log(msg: string, level?: Logger.Level): void;
8
+ }
9
+ export declare namespace Logger {
10
+ type TransportType = (msg: string) => void;
11
+ enum Level {
12
+ error = 0,
13
+ warn = 1,
14
+ info = 2,
15
+ verbose = 3,
16
+ debug = 4
17
+ }
18
+ }
19
+ export declare const logger: Logger;
@@ -0,0 +1,28 @@
1
+ export class Logger {
2
+ constructor() {
3
+ this.setLevel(Logger.Level.info);
4
+ this.setTransport((msg) => { console.log(msg); });
5
+ }
6
+ setTransport(transport) {
7
+ this.transport = transport;
8
+ }
9
+ setLevel(level = Logger.Level.info) {
10
+ this.level = level;
11
+ }
12
+ log(msg, level = Logger.Level.info) {
13
+ if (this.level >= level)
14
+ this.transport(msg);
15
+ }
16
+ }
17
+ (function (Logger) {
18
+ let Level;
19
+ (function (Level) {
20
+ Level[Level["error"] = 0] = "error";
21
+ Level[Level["warn"] = 1] = "warn";
22
+ Level[Level["info"] = 2] = "info";
23
+ Level[Level["verbose"] = 3] = "verbose";
24
+ Level[Level["debug"] = 4] = "debug";
25
+ })(Level = Logger.Level || (Logger.Level = {}));
26
+ })(Logger || (Logger = {}));
27
+ export const logger = new Logger();
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Nkay9Mb2dnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsTUFBTSxPQUFPLE1BQU07SUFJakI7UUFDRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFLEdBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTSxZQUFZLENBQUMsU0FBK0I7UUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUVNLFFBQVEsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFTSxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUk7UUFDL0MsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUs7WUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9DLENBQUM7Q0FFRjtBQUVELFdBQWlCLE1BQU07SUFHckIsSUFBWSxLQU1YO0lBTkQsV0FBWSxLQUFLO1FBQ2YsbUNBQUssQ0FBQTtRQUNMLGlDQUFJLENBQUE7UUFDSixpQ0FBSSxDQUFBO1FBQ0osdUNBQU8sQ0FBQTtRQUNQLG1DQUFLLENBQUE7SUFDUCxDQUFDLEVBTlcsS0FBSyxHQUFMLFlBQUssS0FBTCxZQUFLLFFBTWhCO0FBQ0gsQ0FBQyxFQVZnQixNQUFNLEtBQU4sTUFBTSxRQVV0QjtBQUVELE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLE1BQU0sRUFBRSxDQUFDIn0=
@@ -6,6 +6,7 @@ export declare class Utils {
6
6
  private static PAC_FindProxyForURL;
7
7
  static getPackageVersion(): string;
8
8
  static PACProxyResolver(pacURI: string, URL: string): Promise<string>;
9
- static testConnection(hostname: string, agent?: Http.Agent | Https.Agent): Promise<boolean>;
9
+ static PACProxyURLBuilder(proxyPAC: string): string;
10
+ static testConnection(host: string, agent?: Http.Agent | Https.Agent): Promise<boolean>;
10
11
  static testProxyConnection(hostname: string, proxy: string): Promise<boolean>;
11
12
  }
@@ -3,6 +3,7 @@ import pac from 'pac-resolver';
3
3
  import { HttpProxyAgent } from 'http-proxy-agent';
4
4
  import { HttpsProxyAgent } from 'https-proxy-agent';
5
5
  import fetch from 'node-fetch';
6
+ import { Logger, logger } from '../Logger';
6
7
  const pjson = require('../../../../package.json');
7
8
  export class Utils {
8
9
  static getPackageVersion() {
@@ -19,11 +20,25 @@ export class Utils {
19
20
  this.PAC_FindProxyForURL = pac(resolver);
20
21
  return this.PAC_FindProxyForURL(URL);
21
22
  }
22
- static async testConnection(hostname, agent) {
23
- let host = new URL(hostname).origin;
23
+ static PACProxyURLBuilder(proxyPAC) {
24
+ let proxyURL = '';
25
+ if (/(?:HTTPS|HTTP)/.test(proxyPAC)) {
26
+ //The following line replaces the HTTPS/HTTP substring and appends
27
+ //the protocol to the proxy address.
28
+ proxyURL = proxyPAC.replace(/(HTTPS|HTTP)\s+/, (match, g1) => { return `${g1.toLowerCase()}://`; });
29
+ }
30
+ else if (/PROXY/i.test(proxyPAC)) {
31
+ proxyURL = "http://" + proxyPAC.replace(/PROXY/, '').trim();
32
+ }
33
+ else if (/DIRECT/.test(proxyPAC)) {
34
+ proxyURL = '';
35
+ }
36
+ return proxyURL;
37
+ }
38
+ static async testConnection(host, agent) {
24
39
  try {
25
40
  const controller = new AbortController();
26
- const timeoutId = setTimeout(() => controller.abort(), 3000);
41
+ const timeoutId = setTimeout(() => controller.abort(), 5000);
27
42
  const response = await fetch(host, {
28
43
  ...(agent && { agent }),
29
44
  // @ts-ignore
@@ -35,6 +50,7 @@ export class Utils {
35
50
  return true;
36
51
  }
37
52
  catch (e) {
53
+ logger.log(`[ SCANOSS_SDK.UTILS ]: Failed to query ${host} ${e.name} | ${e.message}`, Logger.Level.info);
38
54
  return false;
39
55
  }
40
56
  }
@@ -49,4 +65,4 @@ export class Utils {
49
65
  return await this.testConnection(hostname, proxyAgent);
50
66
  }
51
67
  }
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2RrL1V0aWxzL1V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sTUFBTSxNQUFNLFNBQVMsQ0FBQztBQUM3QixPQUFPLEdBQXdCLE1BQU0sY0FBYyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxLQUFLLE1BQU0sWUFBWSxDQUFDO0FBSS9CLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBQ2pELE1BQU0sT0FBTyxLQUFLO0lBTVQsTUFBTSxDQUFDLGlCQUFpQjtRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVc7WUFBRSxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUNoRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFBO0lBQ2pDLENBQUM7SUFHTSxNQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQWMsRUFBRSxHQUFXO1FBQzlELE1BQU0sY0FBYyxHQUFHLE1BQU0sTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTVDLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQTtRQUNqQixJQUFJLEtBQUssRUFBRSxJQUFJLEtBQUssSUFBSSxjQUFjO1lBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUMxRCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXZDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDdEMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFFBQWUsRUFBRSxLQUFnQztRQUNsRixJQUFJLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDcEMsSUFBSTtZQUNGLE1BQU0sVUFBVSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUE7WUFDeEMsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQTtZQUM1RCxNQUFNLFFBQVEsR0FBRyxNQUFNLEtBQUssQ0FBQyxJQUFJLEVBQUU7Z0JBQ2pDLEdBQUcsQ0FBQyxLQUFLLElBQUksRUFBQyxLQUFLLEVBQUMsQ0FBQztnQkFDckIsYUFBYTtnQkFDYixNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU07YUFDMUIsQ0FBQyxDQUFDO1lBQ0gsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFBRSxNQUFNLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUM5RCxPQUFPLElBQUksQ0FBQztTQUNiO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixPQUFPLEtBQUssQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsUUFBZSxFQUFFLEtBQWE7UUFDcEUsSUFBSSxVQUE0QyxDQUFDO1FBQ2pELElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFBRSxVQUFVLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDaEUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUFFLFVBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsVUFBVTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzlCLE9BQU8sTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN6RCxDQUFDO0NBRUYifQ==
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2RrL1V0aWxzL1V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sTUFBTSxNQUFNLFNBQVMsQ0FBQztBQUM3QixPQUFPLEdBQXdCLE1BQU0sY0FBYyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxLQUFLLE1BQU0sWUFBWSxDQUFDO0FBRy9CLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRTNDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO0FBQ2pELE1BQU0sT0FBTyxLQUFLO0lBTVQsTUFBTSxDQUFDLGlCQUFpQjtRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVc7WUFBRSxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUNoRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFBO0lBQ2pDLENBQUM7SUFHTSxNQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQWMsRUFBRSxHQUFXO1FBQzlELE1BQU0sY0FBYyxHQUFHLE1BQU0sTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTVDLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQTtRQUNqQixJQUFJLEtBQUssRUFBRSxJQUFJLEtBQUssSUFBSSxjQUFjO1lBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUMxRCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXZDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekMsT0FBTyxJQUFJLENB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
@@ -531,13 +531,18 @@
531
531
  "signature": "67918f0ddd6271a88574dfe495942f4a6e982b9c3c1a2ce14c273f103691394d",
532
532
  "affectsGlobalScope": false
533
533
  },
534
+ "../../src/sdk/Logger.ts": {
535
+ "version": "fd4d3f1ba4c837397a726d1383127dc43e8ff7f35cc9b513bf15ebadc9733f16",
536
+ "signature": "1b47705dfcc269d6ae10979dcca4479eb47e72d09c59d67d8c95a91551d78eca",
537
+ "affectsGlobalScope": false
538
+ },
534
539
  "../../src/sdk/Utils/Utils.ts": {
535
- "version": "f3e2d2dd27938eb3d2e4cd79e6ccc8f14298277b5bf299cf6ca82015e0f53929",
536
- "signature": "5f991e5e65406413f18fbbe8a39082d98a8e64ff7a70d76e7fa5d2f6b454a672",
540
+ "version": "c144aa852b0d16e267fb120eda7cbecdb2d097831f16bc8979c5a66d8f4d97a3",
541
+ "signature": "e1703a60aed7b8a401834f29b2f5e29e221748aa4add7e28dc9c89ead9636d8f",
537
542
  "affectsGlobalScope": false
538
543
  },
539
544
  "../../src/sdk/BaseConfig.ts": {
540
- "version": "b2432dbfbc5cefd6cfc51d2d4c0cf090eaa921a1bc09205e2a3245bb305cb054",
545
+ "version": "bb7e25376c325553b0f3c6766dbb6c24673adc5ab9d81b19242fb3a0ae53e05b",
541
546
  "signature": "9a171a10f05da82af3f099ed69587aa05f883e04f3dd8183a06763f083628aef",
542
547
  "affectsGlobalScope": false
543
548
  },
@@ -1222,8 +1227,8 @@
1222
1227
  "affectsGlobalScope": false
1223
1228
  },
1224
1229
  "../../src/index.ts": {
1225
- "version": "1827ee1fa3f96e34a159f6e0d7891557975cb7a043b12bc04b3eb5730b8bdd60",
1226
- "signature": "8d3cdabd02dbfab80ec41f9d416fc5e16d9eeeb9d099afe54fbf0d215792a693",
1230
+ "version": "fc0166a4e45dcc5a9a9fa00866e63fb70157b7f8746576fb2ad58e078dd37e2a",
1231
+ "signature": "b568d563206d8429a811c0b8d2b05279e00bfbcb0661b6f3f7ee62cad4576c63",
1227
1232
  "affectsGlobalScope": false
1228
1233
  },
1229
1234
  "../../node_modules/commander/typings/index.d.ts": {
@@ -2507,6 +2512,7 @@
2507
2512
  "../../src/sdk/Dependencies/LocalDependency/LocalDependency.ts",
2508
2513
  "../../src/sdk/FileCount/FileCount.ts",
2509
2514
  "../../src/sdk/FileCount/Interfaces.ts",
2515
+ "../../src/sdk/Logger.ts",
2510
2516
  "../../src/sdk/scanner/Fingerprint.ts",
2511
2517
  "../../src/sdk/scanner/Scanner.ts",
2512
2518
  "../../src/sdk/scanner/ScannerCfg.ts",
@@ -2516,6 +2522,7 @@
2516
2522
  ],
2517
2523
  "../../src/sdk/BaseConfig.ts": [
2518
2524
  "../../node_modules/@types/node/util.d.ts",
2525
+ "../../src/sdk/Logger.ts",
2519
2526
  "../../src/sdk/Utils/Utils.ts"
2520
2527
  ],
2521
2528
  "../../src/sdk/DataLayer/DataLayerTypes.ts": [
@@ -2679,6 +2686,9 @@
2679
2686
  "../../node_modules/@types/node/util.d.ts",
2680
2687
  "../../node_modules/isbinaryfile/lib/index.d.ts"
2681
2688
  ],
2689
+ "../../src/sdk/Logger.ts": [
2690
+ "../../node_modules/@types/node/util.d.ts"
2691
+ ],
2682
2692
  "../../src/sdk/Report/Report.ts": [
2683
2693
  "../../node_modules/@types/node/fs.d.ts",
2684
2694
  "../../node_modules/@types/node/path.d.ts",
@@ -2696,7 +2706,8 @@
2696
2706
  "../../node_modules/get-uri/dist/index.d.ts",
2697
2707
  "../../node_modules/http-proxy-agent/dist/index.d.ts",
2698
2708
  "../../node_modules/https-proxy-agent/dist/index.d.ts",
2699
- "../../node_modules/pac-resolver/dist/index.d.ts"
2709
+ "../../node_modules/pac-resolver/dist/index.d.ts",
2710
+ "../../src/sdk/Logger.ts"
2700
2711
  ],
2701
2712
  "../../src/sdk/grpc/GrpcDependencyService.ts": [
2702
2713
  "../../node_modules/@grpc/grpc-js/build/src/index.d.ts",
@@ -3989,6 +4000,7 @@
3989
4000
  "../../src/sdk/Dependencies/LocalDependency/LocalDependency.ts",
3990
4001
  "../../src/sdk/FileCount/FileCount.ts",
3991
4002
  "../../src/sdk/FileCount/Interfaces.ts",
4003
+ "../../src/sdk/Logger.ts",
3992
4004
  "../../src/sdk/scanner/Fingerprint.ts",
3993
4005
  "../../src/sdk/scanner/Scanner.ts",
3994
4006
  "../../src/sdk/scanner/ScannerCfg.ts",
@@ -4422,6 +4434,7 @@
4422
4434
  "../../src/sdk/Filtering/DefaultFilterForDependencies.ts",
4423
4435
  "../../src/sdk/Filtering/DefaultFilterForScanning.ts",
4424
4436
  "../../src/sdk/Filtering/Filtering.ts",
4437
+ "../../src/sdk/Logger.ts",
4425
4438
  "../../src/sdk/Report/Report.ts",
4426
4439
  "../../src/sdk/Utils/Utils.ts",
4427
4440
  "../../src/sdk/grpc/GrpcDependencyService.ts",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "scanoss",
3
- "version": "0.8.1",
3
+ "version": "0.8.2",
4
4
  "description": "The SCANOSS JS package provides a simple, easy to consume module for interacting with SCANOSS APIs/Engine.",
5
5
  "main": "build/main/index.js",
6
6
  "typings": "build/main/index.d.ts",