UNPKG

4.04 kBJavaScriptView Raw
1"use strict";
2var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4 return new (P || (P = Promise))(function (resolve, reject) {
5 function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6 function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7 function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8 step((generator = generator.apply(thisArg, _arguments || [])).next());
9 });
10};
11var __importDefault = (this && this.__importDefault) || function (mod) {
12 return (mod && mod.__esModule) ? mod : { "default": mod };
13};
14Object.defineProperty(exports, "__esModule", { value: true });
15const ws_1 = __importDefault(require("./communication/ws"));
16const collector_1 = __importDefault(require("./collection/collector"));
17const OsCollector_1 = __importDefault(require("./collection/OsCollector"));
18const NpmCollector_1 = __importDefault(require("./collection/NpmCollector"));
19const GitCollector_1 = __importDefault(require("./collection/GitCollector"));
20const HttpReporter_1 = __importDefault(require("./reporters/HttpReporter"));
21const NodeHttpReporter_1 = __importDefault(require("./reporters/NodeHttpReporter"));
22const aspectoConfig_1 = __importDefault(require("./config/aspectoConfig"));
23const ErrorReporter_1 = __importDefault(require("./reporters/ErrorReporter"));
24const XMLHttpReporter_1 = __importDefault(require("./reporters/XMLHttpReporter"));
25const IdCollector_1 = __importDefault(require("./collection/IdCollector"));
26const config_1 = require("./config");
27const ConfigService_1 = __importDefault(require("./config/ConfigService"));
28exports.init = (options) => __awaiter(void 0, void 0, void 0, function* () {
29 var _a, _b, _c, _d, _e, _f;
30 try {
31 if ((_a = options) === null || _a === void 0 ? void 0 : _a.samplingRatio) {
32 aspectoConfig_1.default.setSamplingRatio(options.samplingRatio);
33 }
34 else {
35 aspectoConfig_1.default.setSamplingRatio();
36 }
37 let ws = new ws_1.default(config_1.getCollectorEndpoint((_b = options) === null || _b === void 0 ? void 0 : _b.sendTrafficTo));
38 const auth = aspectoConfig_1.default.getToken(options);
39 ConfigService_1.default.init({ token: auth });
40 if (config_1.isNode) {
41 const httpReporter = new HttpReporter_1.default();
42 httpReporter.set(ws, auth);
43 const errorReporter = new ErrorReporter_1.default();
44 errorReporter.set(ws, auth);
45 if (((_c = options) === null || _c === void 0 ? void 0 : _c.outgoing) !== false) {
46 const nodeHttpReporter = new NodeHttpReporter_1.default();
47 nodeHttpReporter.set(ws, auth);
48 }
49 }
50 else {
51 if (((_d = options) === null || _d === void 0 ? void 0 : _d.outgoing) !== false) {
52 const xmlHttpReporter = new XMLHttpReporter_1.default();
53 xmlHttpReporter.set(ws, auth);
54 }
55 }
56 const allowed = yield ws.auth(auth);
57 if (!allowed) {
58 console.error("Aspecto wasn't able to authenticate on your behalf");
59 return;
60 }
61 const collector = new collector_1.default(ws, (_e = options) === null || _e === void 0 ? void 0 : _e.packageName, (_f = options) === null || _f === void 0 ? void 0 : _f.packageVersion);
62 collector.addCollection(new OsCollector_1.default());
63 if (config_1.isNode) {
64 collector.addCollection(new NpmCollector_1.default());
65 collector.addCollection(new GitCollector_1.default());
66 }
67 else {
68 collector.addCollection(new IdCollector_1.default());
69 }
70 }
71 catch (e) {
72 console.error(`Failed to init Aspecto - ${e.message}`);
73 }
74});
75//# sourceMappingURL=index.js.map
\No newline at end of file