@oneteme/inspect-ng-collector 0.0.1 → 0.0.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.
- package/esm2022/lib/http-interceptor.service.mjs +5 -5
- package/esm2022/lib/ng-collector.module.mjs +5 -5
- package/esm2022/lib/route-tracer.service.mjs +6 -6
- package/esm2022/lib/session-manager.service.mjs +7 -7
- package/esm2022/lib/util.mjs +1 -1
- package/fesm2022/oneteme-inspect-ng-collector.mjs +19 -19
- package/fesm2022/oneteme-inspect-ng-collector.mjs.map +1 -1
- package/package.json +4 -3
|
@@ -47,13 +47,13 @@ export class HttpInterceptorService {
|
|
|
47
47
|
});
|
|
48
48
|
}));
|
|
49
49
|
}
|
|
50
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
51
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
50
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HttpInterceptorService, deps: [{ token: i1.RouteTracerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
51
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HttpInterceptorService, providedIn: 'root' }); }
|
|
52
52
|
}
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HttpInterceptorService, decorators: [{
|
|
54
54
|
type: Injectable,
|
|
55
55
|
args: [{ providedIn: 'root' }]
|
|
56
|
-
}], ctorParameters: ()
|
|
56
|
+
}], ctorParameters: function () { return [{ type: i1.RouteTracerService }]; } });
|
|
57
57
|
function toHref(url) {
|
|
58
58
|
const href = document.createElement('a');
|
|
59
59
|
href.setAttribute('href', url);
|
|
@@ -76,4 +76,4 @@ function getReqid(headers) {
|
|
|
76
76
|
function sizeOf(body) {
|
|
77
77
|
return body ? JSON.stringify(body).length : 0;
|
|
78
78
|
}
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1pbnRlcmNlcHRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb25ldGVtZS9pbnNwZWN0LW5nLWNvbGxlY3Rvci9zcmMvbGliL2h0dHAtaW50ZXJjZXB0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBd0QsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUcsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUc5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7QUFHakMsTUFBTSxPQUFPLHNCQUFzQjtJQUUvQixZQUFvQixtQkFBdUM7UUFBdkMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtJQUFJLENBQUM7SUFFaEUsU0FBUyxDQUFDLEdBQXFCLEVBQUUsSUFBaUI7UUFDOUMsTUFBTSxLQUFLLEdBQUcsT0FBTyxFQUFFLENBQUM7UUFDeEIsSUFBSSxNQUFjLEVBQUUsWUFBWSxHQUFRLEVBQUUsRUFBRSxTQUF3QixDQUFDO1FBQ3JFLElBQUksRUFBcUIsQ0FBQztRQUMxQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDNUIsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNYLElBQUksS0FBSyxZQUFZLFlBQVksRUFBRTtnQkFDL0IsTUFBTSxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztnQkFDdkIsWUFBWSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUE7Z0JBQ3pCLEVBQUUsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ2hDO1FBQ0wsQ0FBQyxFQUNELEtBQUssQ0FBQyxFQUFFO1lBQ0osT0FBTyxDQUFDLEdB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Q0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSHR0cEludGVyY2VwdG9yLCBIdHRwRXZlbnQsIEh0dHBIYW5kbGVyLCBIdHRwUmVxdWVzdCwgSHR0cFJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgdGFwLCBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgUm91dGVUcmFjZXJTZXJ2aWNlIH0gZnJvbSAnLi9yb3V0ZS10cmFjZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFeGNlcHRpb25JbmZvIH0gZnJvbSAnLi90cmFjZS5tb2RlbCc7XG5pbXBvcnQgeyBkYXRlTm93IH0gZnJvbSAnLi91dGlsJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBIdHRwSW50ZXJjZXB0b3JTZXJ2aWNlIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyVHJhY2VyU2VydmljZTogUm91dGVUcmFjZXJTZXJ2aWNlKSB7IH1cblxuICAgIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xuICAgICAgICBjb25zdCBzdGFydCA9IGRhdGVOb3coKTtcbiAgICAgICAgbGV0IHN0YXR1czogbnVtYmVyLCByZXNwb25zZUJvZHk6IGFueSA9ICcnLCBleGNlcHRpb246IEV4Y2VwdGlvbkluZm87XG4gICAgICAgIGxldCBpZDogc3RyaW5nfCB1bmRlZmluZWQ7XG4gICAgICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXEpLnBpcGUodGFwKFxuICAgICAgICAgICAgKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBIdHRwUmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzID0gK2V2ZW50LnN0YXR1cztcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VCb2R5ID0gZXZlbnQuYm9keVxuICAgICAgICAgICAgICAgICAgICBpZCA9IGdldFJlcWlkKGV2ZW50LmhlYWRlcnMpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2coZXJyb3IpXG4gICAgICAgICAgICAgICAgaWQgPSBnZXRSZXFpZChlcnJvci5oZWFkZXJzKTtcbiAgICAgICAgICAgICAgICBzdGF0dXMgPSArZXJyb3Iuc3RhdHVzO1xuICAgICAgICAgICAgICAgIGV4Y2VwdGlvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogZXJyb3IuZXJyb3IuZXJyb3IsXG4gICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IGVycm9yLmVycm9yLm1lc3NhZ2VcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICApLCBmaW5hbGl6ZSgoKSA9PiB7XG5cbiAgICAgICAgICAgIGNvbnN0IHVybCA9IHRvSHJlZihyZXEudXJsV2l0aFBhcmFtcyk7XG4gICAgICAgICAgICB0aGlzLnJvdXRlclRyYWNlclNlcnZpY2UuZ2V0Q3VycmVudFNlc3Npb24oKS5yZXN0UmVxdWVzdHMucHVzaCh7XG4gICAgICAgICAgICAgICAgaWQ6IGlkLFxuICAgICAgICAgICAgICAgIG1ldGhvZDogcmVxLm1ldGhvZCxcbiAgICAgICAgICAgICAgICBwcm90b2NvbDogdXJsLnByb3RvY29sLnNsaWNlKDAsIC0xKSxcbiAgICAgICAgICAgICAgICBob3N0OiBleGN0cmFjdEhvc3QodXJsLmhvc3QpLFxuICAgICAgICAgICAgICAgIHBvcnQ6ICt1cmwucG9ydCxcbiAgICAgICAgICAgICAgICBwYXRoOiB1cmwucGF0aG5hbWUsXG4gICAgICAgICAgICAgICAgcXVlcnk6IHVybC5zZWFyY2guc2xpY2UoMSwgdXJsLnNlYXJjaC5sZW5ndGgpLFxuICAgICAgICAgICAgICAgIGNvbnRlbnRUeXBlOiByZXEucmVzcG9uc2VUeXBlLFxuICAgICAgICAgICAgICAgIGF1dGhTY2hlbWU6IGV4dHJhY3RBdXRoU2NoZW1lKHJlcS5oZWFkZXJzKSxcbiAgICAgICAgICAgICAgICBzdGF0dXM6ICtzdGF0dXMsXG4gICAgICAgICAgICAgICAgaW5EYXRhU2l6ZTogc2l6ZU9mKHJlc3BvbnNlQm9keSksXG4gICAgICAgICAgICAgICAgb3VEYXRhU2l6ZTogc2l6ZU9mKHJlcS5ib2R5KSxcbiAgICAgICAgICAgICAgICBzdGFydDogc3RhcnQsXG4gICAgICAgICAgICAgICAgZW5kOiBkYXRlTm93KCksXG4gICAgICAgICAgICAgICAgZXhjZXB0aW9uOiBleGNlcHRpb25cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KSk7XG4gICAgfVxufVxuXG5mdW5jdGlvbiB0b0hyZWYodXJsOiBzdHJpbmcpOiBIVE1MQW5jaG9yRWxlbWVudCB7XG4gICAgY29uc3QgaHJlZiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcbiAgICBocmVmLnNldEF0dHJpYnV0ZSgnaHJlZicsIHVybCk7XG4gICAgcmV0dXJuIGhyZWY7XG59XG5cbmZ1bmN0aW9uIGV4Y3RyYWN0SG9zdChwYXRoOiBzdHJpbmcpIHtcbiAgICBjb25zdCBwb3J0cmVnZXggPSAvOlxcZCsvO1xuICAgIHJldHVybiBwYXRoLnJlcGxhY2UocG9ydHJlZ2V4LCAnJylcbn1cblxuZnVuY3Rpb24gZXh0cmFjdEF1dGhTY2hlbWUoaGVhZGVyczogYW55KTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gaGVhZGVycy5oYXMoJ2F1dGhvcml6YXRpb24nKVxuICAgICAgICA/IGhlYWRlcnMuZ2V0KCdhdXRob3JpemF0aW9uJykubWF0Y2goL14oXFx3KykgLyk/LmF0KDEpXG4gICAgICAgIDogdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBnZXRSZXFpZChoZWFkZXJzOmFueSk6c3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gaGVhZGVycy5oYXMoJ3gtdHJhY2VydCcpXG4gICAgICAgID8gaGVhZGVycy5nZXQoJ3gtdHJhY2VydCcpXG4gICAgICAgIDogdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBzaXplT2YoYm9keTogYW55KTogbnVtYmVyIHtcbiAgICByZXR1cm4gYm9keSA/IEpTT04uc3RyaW5naWZ5KGJvZHkpLmxlbmd0aCA6IDA7XG59XG4iXX0=
|
|
@@ -32,15 +32,15 @@ export class NgCollectorModule {
|
|
|
32
32
|
ngModule: NgCollectorModule
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
36
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
37
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
35
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgCollectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
36
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NgCollectorModule }); }
|
|
37
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgCollectorModule }); }
|
|
38
38
|
}
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgCollectorModule, decorators: [{
|
|
40
40
|
type: NgModule,
|
|
41
41
|
args: [{}]
|
|
42
42
|
}] });
|
|
43
43
|
export function initializeRoutingEvents(routeTracerService) {
|
|
44
44
|
return () => routeTracerService.initialize();
|
|
45
45
|
}
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctY29sbGVjdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZXRlbWUvaW5zcGVjdC1uZy1jb2xsZWN0b3Ivc3JjL2xpYi9uZy1jb2xsZWN0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsZUFBZSxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLEdBQUcsTUFBTSxzQkFBc0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbEksT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUszRCxNQUFNLE9BQU8saUJBQWlCO0lBRTVCLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBWSxFQUFFLGFBQThCO1FBQ3pELElBQUksYUFBYSxFQUFFLE9BQU87ZUFDbkIsUUFBUSxDQUFDLElBQUksRUFBRSxXQUFXLENBQUM7ZUFDM0IsUUFBUSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLEVBQUUsV0FBVyxDQUFDO2VBQ2pFLFFBQVEsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxFQUFFO1lBR3hFLElBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxFQUFDLE9BQU8sQ0FBQztnQkFDckUsQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxFQUFDLGVBQWUsQ0FBQyxFQUFFO2dCQUNyRixXQUFXLENBQUMsTUFBTSxFQUFDLGlEQUFpRCxDQUFDLENBQUM7Z0JBQ3hFLE9BQU8sRUFBQyxRQUFRLEVBQUUsaUJBQWlCLEVBQUMsQ0FBQTthQUN0QztZQUVGLE9BQU87Z0JBQ0wsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsU0FBUyxFQUFFO29CQUNULGtCQUFrQjtvQkFDbEIsY0FBYztvQkFDZCxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLHVCQUF1QixFQUFFLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtvQkFDMUcsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7b0JBQzdFLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFO29CQUM5QyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtpQkFDcEM7YUFDRixDQUFDO1NBQ0g7UUFDRCxPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtTQUM1QixDQUFBO0lBRUgsQ0FBQzsrR0EvQlUsaUJBQWlCO2dIQUFqQixpQkFBaUI7Z0hBQWpCLGlCQUFpQjs7NEZBQWpCLGlCQUFpQjtrQkFEN0IsUUFBUTttQkFBQyxFQUFFOztBQW1DWixNQUFNLFVBQVUsdUJBQXVCLENBQUMsa0JBQXNDO0lBQzVFLE9BQU8sR0FBRyxFQUFFLENBQUMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLENBQUM7QUFDL0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBBUFBfSU5JVElBTElaRVIsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhUVFBfSU5URVJDRVBUT1JTLCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEh0dHBJbnRlcmNlcHRvclNlcnZpY2UgfSBmcm9tICcuL2h0dHAtaW50ZXJjZXB0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBSb3V0ZVRyYWNlclNlcnZpY2UgfSBmcm9tICcuL3JvdXRlLXRyYWNlci5zZXJ2aWNlJztcbmltcG9ydCB7IGdldE51bWJlck9yQ2FsbCwgbG9nVHJhY2VhcGksIHJlcXVpcmVQb3N0aXRpdmVWYWx1ZSwgdmFsaWRhdGUsIEhPU1RfUEFURVJOLCBQQVRIX1BBVEVSTiwgZ2V0U3RyaW5nT3JDYWxsIH0gZnJvbSAnLi91dGlsJztcbmltcG9ydCB7IFNlc3Npb25NYW5hZ2VyIH0gZnJvbSAnLi9zZXNzaW9uLW1hbmFnZXIuc2VydmljZSc7XG5cblxuXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgTmdDb2xsZWN0b3JNb2R1bGUge1xuXG4gIHN0YXRpYyBmb3JSb290KGhvc3Q6IHN0cmluZywgY29uZmlndXJhdGlvbjogQXBwbGljYXRpb25Db25mKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ0NvbGxlY3Rvck1vZHVsZT4ge1xuICAgIGlmIChjb25maWd1cmF0aW9uPy5lbmFibGVkXG4gICAgICAgICYmIHZhbGlkYXRlKGhvc3QsIEhPU1RfUEFURVJOKVxuICAgICAgICAmJiB2YWxpZGF0ZShnZXRTdHJpbmdPckNhbGwoY29uZmlndXJhdGlvbj8uc2Vzc2lvbkFwaSksIFBBVEhfUEFURVJOKVxuICAgICAgICAmJiB2YWxpZGF0ZShnZXRTdHJpbmdPckNhbGwoY29uZmlndXJhdGlvbj8uaW5zdGFuY2VBcGkpLCBQQVRIX1BBVEVSTikpIHtcblxuXG4gICAgICAgaWYoIXJlcXVpcmVQb3N0aXRpdmVWYWx1ZShnZXROdW1iZXJPckNhbGwoY29uZmlndXJhdGlvbj8uZGVsYXkpLFwiZGVsYXlcIikgfHxcbiAgICAgICAgICAhcmVxdWlyZVBvc3RpdGl2ZVZhbHVlKGdldE51bWJlck9yQ2FsbChjb25maWd1cmF0aW9uPy5idWZmZXJNYXhTaXplKSxcImJ1ZmZlck1heFNpemVcIikgKXtcbiAgICAgICAgICAgIGxvZ1RyYWNlYXBpKCd3YXJuJywnaW52YWxpZCBDb25maWd1cmF0aW9uLCBOZy1jb2xsZWN0b3IgaXMgZGlzYWJsZWQnKTtcbiAgICAgICAgICByZXR1cm4ge25nTW9kdWxlOiBOZ0NvbGxlY3Rvck1vZHVsZX1cbiAgICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIG5nTW9kdWxlOiBOZ0NvbGxlY3Rvck1vZHVsZSxcbiAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgUm91dGVUcmFjZXJTZXJ2aWNlLFxuICAgICAgICAgIFNlc3Npb25NYW5hZ2VyLFxuICAgICAgICAgIHsgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLCB1c2VGYWN0b3J5OiBpbml0aWFsaXplUm91dGluZ0V2ZW50cywgZGVwczogW1JvdXRlVHJhY2VyU2VydmljZV0sIG11bHRpOiB0cnVlIH0sXG4gICAgICAgICAgeyBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUywgdXNlQ2xhc3M6IEh0dHBJbnRlcmNlcHRvclNlcnZpY2UsIG11bHRpOiB0cnVlIH0sXG4gICAgICAgICAgeyBwcm92aWRlOiAnY29uZmlnJywgdXNlVmFsdWU6IGNvbmZpZ3VyYXRpb24gfSxcbiAgICAgICAgICB7IHByb3ZpZGU6ICdob3N0JywgdXNlVmFsdWU6IGhvc3QgfVxuICAgICAgICBdXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IE5nQ29sbGVjdG9yTW9kdWxlXG4gICAgfVxuXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRpYWxpemVSb3V0aW5nRXZlbnRzKHJvdXRlVHJhY2VyU2VydmljZTogUm91dGVUcmFjZXJTZXJ2aWNlKSB7XG4gIHJldHVybiAoKSA9PiByb3V0ZVRyYWNlclNlcnZpY2UuaW5pdGlhbGl6ZSgpO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcGxpY2F0aW9uQ29uZiB7XG4gIG5hbWU/OiBzdHJpbmcgfCAoKCkgPT4gc3RyaW5nKTtcbiAgdmVyc2lvbj86IHN0cmluZyB8ICgoKSA9PiBzdHJpbmcpO1xuICBlbnY/OiBzdHJpbmcgfCAoKCkgPT4gc3RyaW5nKTtcbiAgdXNlcj86IHN0cmluZyB8ICgoKSA9PiBzdHJpbmcpO1xuICBidWZmZXJNYXhTaXplPzogbnVtYmVyIHwgKCgpID0+IG51bWJlcik7XG4gIGRlbGF5PzogbnVtYmVyfCAoKCkgPT4gbnVtYmVyKTtcbiAgaW5zdGFuY2VBcGk/OiBzdHJpbmcgfCAoKCkgPT4gc3RyaW5nKTtcbiAgc2Vzc2lvbkFwaT86IHN0cmluZyB8ICgoKSA9PiBzdHJpbmcpO1xuICBleGNsdWRlPzogUmVnRXhwW10gfCAoKCkgPT4gUmVnRXhwW10pO1xuICBlbmFibGVkPzogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -54,17 +54,17 @@ export class RouteTracerService {
|
|
|
54
54
|
getCurrentSession() {
|
|
55
55
|
return this.currentSession;
|
|
56
56
|
}
|
|
57
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
58
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
57
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RouteTracerService, deps: [{ token: i1.Router }, { token: 'config' }, { token: 'host' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
58
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RouteTracerService, providedIn: 'root' }); }
|
|
59
59
|
}
|
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RouteTracerService, decorators: [{
|
|
61
61
|
type: Injectable,
|
|
62
62
|
args: [{ providedIn: 'root' }]
|
|
63
|
-
}], ctorParameters: ()
|
|
63
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: undefined, decorators: [{
|
|
64
64
|
type: Inject,
|
|
65
65
|
args: ['config']
|
|
66
66
|
}] }, { type: undefined, decorators: [{
|
|
67
67
|
type: Inject,
|
|
68
68
|
args: ['host']
|
|
69
|
-
}] }] });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
69
|
+
}] }]; } });
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtdHJhY2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmV0ZW1lL2luc3BlY3QtbmctY29sbGVjdG9yL3NyYy9saWIvcm91dGUtdHJhY2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFHLE1BQU0sRUFBRSxVQUFVLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUd6RSxPQUFPLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7O0FBRzNELE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQztBQUVsQixNQUFNLE9BQU8sa0JBQWtCO0lBUTNCLFlBQW9CLE1BQWMsRUFDWixNQUF1QixFQUN6QixJQUFZO1FBRlosV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVMxQix3QkFBbUIsR0FBRyxDQUFDLEtBQXdCLEVBQVEsRUFBRTtZQUM3RCxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsR0FBRyxPQUFPLEVBQUUsQ0FBQztZQUNwQyxJQUFHLElBQUksQ0FBQyxXQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFDO2dCQUNyRSxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQSxRQUFRO2dCQUM3RCxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO2FBQ3RDO1FBQ0wsQ0FBQyxDQUFBO1FBWkcsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBQzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLElBQUksR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFVRCxXQUFXO1FBQ1AsTUFBTSxDQUFDLG1CQUFtQixDQUFDLGNBQWMsRUFBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsVUFBVTtRQUNOLFdBQVcsQ0FBQyxLQUFLLEVBQUMsWUFBWSxDQUFDLENBQUM7UUFDaEMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDakMsSUFBSSxLQUFLLFlBQVksZUFBZSxFQUFFO2dCQUNsQyxNQUFNLEdBQUcsR0FBRyxPQUFPLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO29CQUNyQixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsR0FBRyxPQUFPLEVBQUUsQ0FBQztvQkFDcEMsSUFBRyxJQUFJLENBQUMsV0FBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBQzt3QkFDckUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO3FCQUN4RDtvQkFDRCxXQUFXLENBQUMsS0FBSyxFQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO2lCQUMvRDtnQkFDRCxJQUFJLENBQUMsY0FBYyxHQUFHO29CQUNsQixPQUFPLEVBQUUsTUFBTTtvQkFDZixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7b0JBQ2YsS0FBSyxFQUFFLEdBQUc7b0JBQ1YsSUFBSSxFQUFFLE1BQU07b0JBQ1osUUFBUSxFQUFFLEtBQUssQ0FBQyxHQUFHO29CQUNuQixZQUFZLEVBQUUsRUFBRTtpQkFDbkIsQ0FBQTthQUNKO1lBQ0QsSUFBSSxLQUFLLFlBQVksYUFBYSxFQUFFO2dCQUNoQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDO2dCQUMxQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDO2FBRS9DO1FBQ0wsQ0FBQyxDQUFDLENBQUE7SUFFTixDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQy9CLENBQUM7K0dBOURRLGtCQUFrQix3Q0FTZixRQUFRLGFBQ1IsTUFBTTttSEFWVCxrQkFBa0IsY0FETCxNQUFNOzs0RkFDbkIsa0JBQWtCO2tCQUQ5QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7MEJBVXpCLE1BQU07MkJBQUMsUUFBUTs7MEJBQ2YsTUFBTTsyQkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgIEluamVjdCwgSW5qZWN0YWJsZSwgT25EZXN0cm95fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgTmF2aWdhdGlvblN0YXJ0LCBSb3V0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XG5pbXBvcnQgeyBNYWluU2Vzc2lvbiB9IGZyb20gXCIuL3RyYWNlLm1vZGVsXCI7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkNvbmZ9IGZyb20gXCIuL25nLWNvbGxlY3Rvci5tb2R1bGVcIjtcbmltcG9ydCB7IGRhdGVOb3csIGdldFJlZ0Fyck9yQ2FsbCwgZ2V0U3RyaW5nT3JDYWxsLCBsb2dUcmFjZWFwaSwgcHJldHR5U2Vzc2lvbkZvcm1hdCB9IGZyb20gXCIuL3V0aWxcIjtcbmltcG9ydCB7IFNlc3Npb25NYW5hZ2VyIH0gZnJvbSBcIi4vc2Vzc2lvbi1tYW5hZ2VyLnNlcnZpY2VcIjtcblxuXG5jb25zdCBTTEFTSCA9ICcvJztcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pIFxuZXhwb3J0IGNsYXNzIFJvdXRlVHJhY2VyU2VydmljZSAgaW1wbGVtZW50cyBPbkRlc3Ryb3l7XG5cblxuICAgIGN1cnJlbnRTZXNzaW9uITogTWFpblNlc3Npb247IFxuICAgIHVzZXI/OiBzdHJpbmc7XG4gICAgdHJ5U2VuZEluc3RhbmNlRW52OmFueTtcbiAgICBleGNsdWRlTGlzdDogUmVnRXhwW10gfCB1bmRlZmluZWQ7XG4gICAgc2Vzc2lvbk1hbmFnZXIgOiBTZXNzaW9uTWFuYWdlcjtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgICAgICBASW5qZWN0KCdjb25maWcnKSBjb25maWc6IEFwcGxpY2F0aW9uQ29uZixcbiAgICAgICAgQEluamVjdCgnaG9zdCcpIGhvc3Q6IHN0cmluZykge1xuICAgICAgICB0aGlzLnNlc3Npb25NYW5hZ2VyID0gbmV3IFNlc3Npb25NYW5hZ2VyKCk7XG4gICAgICAgIHRoaXMuZXhjbHVkZUxpc3QgPSBnZXRSZWdBcnJPckNhbGwoY29uZmlnLmV4Y2x1ZGUpO1xuICAgICAgICB0aGlzLnNlc3Npb25NYW5hZ2VyLmluaXRpYWxpemUoY29uZmlnLGhvc3QpO1xuICAgICAgICB0aGlzLnVzZXIgPSBnZXRTdHJpbmdPckNhbGwoY29uZmlnLnVzZXIpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYmVmb3JlVW5sb2FkSGFuZGxlciA9IChldmVudDogQmVmb3JlVW5sb2FkRXZlbnQpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy5jdXJyZW50U2Vzc2lvbi5lbmQgPSBkYXRlTm93KCk7XG4gICAgICAgIGlmKHRoaXMuZXhjbHVkZUxpc3QhLmV2ZXJ5KChlKSA9PiAhZS50ZXN0KHRoaXMuY3VycmVudFNlc3Npb24ubG9jYXRpb24pKSl7XG4gICAgICAgICAgICB0aGlzLnNlc3Npb25NYW5hZ2VyLmFkZFNlc3Npb25zKHRoaXMuY3VycmVudFNlc3Npb24pOy8vZm9yY2UgXG4gICAgICAgICAgICB0aGlzLnNlc3Npb25NYW5hZ2VyLnNlbmRTZXNzaW9ucygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7IFxuICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignYmVmb3JldW5sb2FkJyx0aGlzLmJlZm9yZVVubG9hZEhhbmRsZXIpOyBcbiAgICB9XG5cbiAgICBpbml0aWFsaXplKCkge1xuICAgICAgICBsb2dUcmFjZWFwaSgnbG9nJywnaW5pdGlhbGl6ZScpO1xuICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignYmVmb3JldW5sb2FkJywgdGhpcy5iZWZvcmVVbmxvYWRIYW5kbGVyKTtcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBub3cgPSBkYXRlTm93KCk7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudFNlc3Npb24pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50U2Vzc2lvbi5lbmQgPSBkYXRlTm93KCk7XG4gICAgICAgICAgICAgICAgICAgIGlmKHRoaXMuZXhjbHVkZUxpc3QhLmV2ZXJ5KChlKSA9PiAhZS50ZXN0KHRoaXMuY3VycmVudFNlc3Npb24ubG9jYXRpb24pKSl7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb25NYW5hZ2VyLmFkZFNlc3Npb25zKHRoaXMuY3VycmVudFNlc3Npb24pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGxvZ1RyYWNlYXBpKCdsb2cnLHByZXR0eVNlc3Npb25Gb3JtYXQodGhpcy5jdXJyZW50U2Vzc2lvbikpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRTZXNzaW9uID0ge1xuICAgICAgICAgICAgICAgICAgICAnQHR5cGUnOiBcIm1haW5cIixcbiAgICAgICAgICAgICAgICAgICAgdXNlcjogdGhpcy51c2VyLFxuICAgICAgICAgICAgICAgICAgICBzdGFydDogbm93LFxuICAgICAgICAgICAgICAgICAgICB0eXBlOiBcIlZJRVdcIixcbiAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246IGV2ZW50LnVybCxcbiAgICAgICAgICAgICAgICAgICAgcmVzdFJlcXVlc3RzOiBbXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRTZXNzaW9uLm5hbWUgPSBkb2N1bWVudC50aXRsZTtcbiAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRTZXNzaW9uLmxvY2F0aW9uID0gZG9jdW1lbnQuVVJMOyBcblxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgfVxuXG4gICAgZ2V0Q3VycmVudFNlc3Npb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRTZXNzaW9uO1xuICAgIH1cbn1cblxuIl19
|
|
@@ -19,11 +19,11 @@ export class SessionManager {
|
|
|
19
19
|
this.instanceEnvironment = {
|
|
20
20
|
name: getStringOrCall(config.name),
|
|
21
21
|
version: getStringOrCall(config.version),
|
|
22
|
-
address: undefined,
|
|
22
|
+
address: undefined,
|
|
23
23
|
env: getStringOrCall(config.env),
|
|
24
24
|
os: detectOs(),
|
|
25
25
|
re: detectBrowser(),
|
|
26
|
-
user: undefined,
|
|
26
|
+
user: undefined,
|
|
27
27
|
type: "CLIENT",
|
|
28
28
|
instant: dateNow(),
|
|
29
29
|
collector: "inspect-ng-collector-0.0.1"
|
|
@@ -135,11 +135,11 @@ export class SessionManager {
|
|
|
135
135
|
this.scheduledSessionSender.unsubscribe();
|
|
136
136
|
}
|
|
137
137
|
}
|
|
138
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
139
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
138
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SessionManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
139
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SessionManager, providedIn: 'root' }); }
|
|
140
140
|
}
|
|
141
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
141
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SessionManager, decorators: [{
|
|
142
142
|
type: Injectable,
|
|
143
143
|
args: [{ providedIn: 'root' }]
|
|
144
|
-
}], ctorParameters: ()
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmV0ZW1lL2luc3BlY3QtbmctY29sbGVjdG9yL3NyYy9saWIvc2Vzc2lvbi1tYW5hZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUV2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQWMsRUFBRSxFQUFnQixHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sUUFBUSxDQUFDOztBQUV6RyxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUM7QUFHbEIsTUFBTSxPQUFPLGNBQWM7SUFjdkI7UUFOQSxpQkFBWSxHQUFpQixFQUFFLENBQUM7UUFDaEMsd0JBQW1CLEdBQVcsQ0FBQyxDQUFBO1FBQy9CLDRCQUF1QixHQUFXLENBQUMsQ0FBQztRQUVwQyx3QkFBbUIsR0FBVSxJQUFJLENBQUM7UUFDbEMsNEJBQXVCLEdBQVksSUFBSSxDQUFDO0lBR3hDLENBQUM7SUFHRCxVQUFVLENBQUMsTUFBVSxFQUFFLElBQVc7UUFDOUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBRSxDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBRSxDQUFDLENBQUM7UUFDckYsSUFBSSxDQUFDLGFBQWEsR0FBSSxlQUFlLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUks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QUFPLENBQUMsR0FBRSxFQUFFO2dCQUNYLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUM7WUFDeEMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNQLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRUQsY0FBYyxDQUFDLElBQVcsRUFBRSxJQUFXO1FBQ25DLE9BQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELGFBQWEsQ0FBQyxJQUFXLEVBQUUsSUFBVztRQUNuQyxPQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxLQUFLLENBQUUsSUFBVyxFQUFHLElBQVc7UUFDNUIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRyxDQUFDO0lBRUQsV0FBVztRQUNSLElBQUcsSUFBSSxDQUFDLHNCQUFzQixFQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzlDLENBQUM7SUFDTCxDQUFDOytHQXhKUSxjQUFjO21IQUFkLGNBQWMsY0FERCxNQUFNOzs0RkFDbkIsY0FBYztrQkFEMUIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbnN0YW5jZUVudmlyb25tZW50LCBNYWluU2Vzc2lvbiB9IGZyb20gJy4vdHJhY2UubW9kZWwnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmcm9tLCBpbnRlcnZhbCwgT2JzZXJ2YWJsZSwgb2YsIFN1YnNjcmlwdGlvbiwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkYXRlTm93LCBkZXRlY3RCcm93c2VyLCBkZXRlY3RPcywgZ2V0TnVtYmVyT3JDYWxsLCBnZXRTdHJpbmdPckNhbGwsIGxvZ1RyYWNlYXBpIH0gZnJvbSAnLi91dGlsJztcblxuY29uc3QgU0xBU0ggPSAnLyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgU2Vzc2lvbk1hbmFnZXIgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gICAgbG9nU2VydmVyTWFpbiE6IHN0cmluZztcbiAgICBsb2dJbnN0YW5jZUVudiE6IHN0cmluZztcbiAgICBtYXhCdWZmZXJTaXplITogbnVtYmVyO1xuICAgIGRlbGF5ITpudW1iZXJcbiAgICBpbnN0YW5jZUVudmlyb25tZW50ICE6IEluc3RhbmNlRW52aXJvbm1lbnQ7XG4gICAgc2NoZWR1bGVkU2Vzc2lvblNlbmRlciE6IFN1YnNjcmlwdGlvbjtcbiAgICBzZXNzaW9uUXVldWU6IE1haW5TZXNzaW9uW109IFtdO1xuICAgIHNlc3Npb25TZW5kQXR0ZW1wdHM6IG51bWJlciA9IDBcbiAgICBJbnN0YW5jZUVudlNlbmRBdHRlbXB0czogbnVtYmVyID0gMDtcbiAgICBpbnN0YW5jZSE6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+O1xuICAgIHNlbmRTZXNzaW9uZmluaXNoZWQ6Ym9vbGVhbj0gdHJ1ZTtcbiAgICBzZW5kSW5zdGFuY2VFbnZGaW5pc2hlZDogYm9vbGVhbiA9IHRydWU7XG4gICAgY29uc3RydWN0b3IoKXtcblxuICAgIH1cblxuXG4gICAgaW5pdGlhbGl6ZShjb25maWc6YW55LCBob3N0OnN0cmluZykge1xuICAgICAgICB0aGlzLmxvZ1NlcnZlck1haW4gPSB0aGlzLnNlc3Npb25BcGlVUkwoaG9zdCxnZXRTdHJpbmdPckNhbGwoY29uZmlnLnNlc3Npb25BcGkpISk7XG4gICAgICAgIHRoaXMubG9nSW5zdGFuY2VFbnYgPSB0aGlzLmluc3RhbmNlQXBpVVJMKGhvc3QsZ2V0U3RyaW5nT3JDYWxsKGNvbmZpZy5pbnN0YW5jZUFwaSkhKTtcbiAgICAgICAgdGhpcy5tYXhCdWZmZXJTaXplID0gIGdldE51bWJlck9yQ2FsbChjb25maWcuYnVmZmVyTWF4U2l6ZSkgPz8gMTAwMDtcbiAgICAgICAgdGhpcy5kZWxheSA9IGdldE51bWJlck9yQ2FsbChjb25maWcuZGVsYXkpID8/IDYwMDAwO1xuICAgICAgICB0aGlzLmluc3RhbmNlRW52aXJvbm1lbnQgPSB7XG4gICAgICAgICAgICBuYW1lOiBnZXRTdHJpbmdPckNhbGwoY29uZmlnLm5hbWUpLFxuICAgICAgICAgICAgdmVyc2lvbjogZ2V0U3RyaW5nT3JDYWxsKGNvbmZpZy52ZXJzaW9uKSxcbiAgICAgICAgICAgIGFkZHJlc3M6IHVuZGVmaW5lZCwgLy9zZXJ2ZXIgc2lkZVxuICAgICAgICAgICAgZW52OiBnZXRTdHJpbmdPckNhbGwoY29uZmlnLmVudiksXG4gICAgICAgICAgICBvczogZGV0ZWN0T3MoKSxcbiAgICAgICAgICAgIHJlOiBkZXRlY3RCcm93c2VyKCksXG4gICAgICAgICAgICB1c2VyOiB1bmRlZmluZWQsIC8vIGNhbm5vdCBnZXQgdXNlclxuICAgICAgICAgICAgdHlwZTogXCJDTElFTlRcIixcbiAgICAgICAgICAgIGluc3RhbnQ6IGRhdGVOb3coKSxcbiAgICAgICAgICAgIGNvbGxlY3RvcjogXCJpbnNwZWN0LW5nLWNvbGxlY3Rvci0wLjAuMVwiXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNjaGVkdWxlZFNlc3Npb25TZW5kZXIgPSBpbnRlcnZhbCh0aGlzLmRlbGF5KVxuICAgICAgICAucGlwZSh0YXAoKCk9PiB7XG4gICAgICAgICAgICBpZih0aGlzLnNlbmRTZXNzaW9uZmluaXNoZWQpe1xuICAgICAgICAgICAgICAgIHRoaXMuc2VuZFNlc3Npb25zKCk7XG4gICAgICAgICAgICB9fSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBhZGRTZXNzaW9ucyhzZXNzaW9uczpNYWluU2Vzc2lvbil7XG4gICAgICAgIHRoaXMuc2Vzc2lvblF1ZXVlLnB1c2goc2Vzc2lvbnMpO1xuICAgICAgICBsb2dUcmFjZWFwaSgnbG9nJyxcImFkZGVkIGVsZW1lbnQgdG8gc2Vzc2lvbiBxdWV1ZSwgbmV3IHNpemUgaXM6IFwiKyB0aGlzLnNlc3Npb25RdWV1ZS5sZW5ndGgpO1xuICAgIH1cblxuXG4gICAgc2VuZFNlc3Npb25zKCkge1xuICAgICAgICBpZih0aGlzLnNlc3Npb25RdWV1ZS5sZW5ndGg+IDApe1xuICAgICAgICAgICAgdGhpcy5nZXRJbnNlcnRlZEluc3RhbmNlSWQoKS5zdWJzY3JpYmUoKGlkOnN0cmluZ3xudWxsKT0+e1xuICAgICAgICAgICAgICAgIGlmKGlkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VuZFNlc3Npb25maW5pc2hlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBsZXQgc2Vzc2lvbnM6IE1haW5TZXNzaW9uW10gPSBbLi4udGhpcy5zZXNzaW9uUXVldWVdO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb25RdWV1ZS5zcGxpY2UoMCxzZXNzaW9ucy5sZW5ndGgpOyAvLyBhZGQgcmVzdCBvZiBzZXNzaW9uc1xuICAgICAgICAgICAgICAgICAgICBsb2dUcmFjZWFwaSgnbG9nJyxgc2VuZGluZyBzZXNzaW9ucywgYXR0ZW1wdHM6JHsrK3RoaXMuc2Vzc2lvblNlbmRBdHRlbXB0c30sIHF1ZXVlIHNpemUgOiAke3Nlc3Npb25zLmxlbmd0aH1gKVxuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlcXVlc3RPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnUFVUJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4nOiAnKidcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShzZXNzaW9ucylcbiAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICBmZXRjaCh0aGlzLmxvZ1NlcnZlck1haW4sIHJlcXVlc3RPcHRpb25zKVxuICAgICAgICAgICAgICAgICAgICAudGhlbihkYXRhPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYoZGF0YS5vayl7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nVHJhY2VhcGkoJ2xvZycsJ3Nlc3Npb25zIHNlbnQgc3VjY2Vzc2Z1bGx5LCBxdWV1ZSBzaXplIHJlc2V0LCBuZXcgc2l6ZSBpczogJyt0aGlzLnNlc3Npb25RdWV1ZS5sZW5ndGgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXNzaW9uU2VuZEF0dGVtcHRzPSAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nVHJhY2VhcGkoJ3dhcm4nLGBFcnJvciB3aGlsZSBhdHRlbXB0aW5nIHRvIHNlbmQgc2Vzc2lvbnMsIGF0dGVtcHRzOiAke3RoaXMuc2Vzc2lvblNlbmRBdHRlbXB0c31gKS8vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXZlcnRRdWV1ZVNpemUoc2Vzc2lvbnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbG9nVHJhY2VhcGkoJ3dhcm4nLGBFcnJvciB3aGlsZSBhdHRlbXB0aW5nIHRvIHNlbmQgc2Vzc2lvbnMsIGF0dGVtcHRzOiAke3RoaXMuc2Vzc2lvblNlbmRBdHRlbXB0c31gKS8vXG4gICAgICAgICAgICAgICAgICAgICAgICBsb2dUcmFjZWFwaSgnd2FybicsZXJyb3IpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJldmVydFF1ZXVlU2l6ZShzZXNzaW9ucyk7XG4gICAgICAgICAgICAgICAgICAgIH0pLmZpbmFsbHkoICgpPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZW5kU2Vzc2lvbmZpbmlzaGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgICAgIH1lbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbG9nVHJhY2VhcGkoJ3dhcm4nLGBFcnJvciB3aGlsZSBhdHRlbXB0aW5nIHRvIHNlbmQgRW52aXJvbmVtZW50IGluc3RhbmNlLCBhdHRlbXB0cyAke3RoaXMuc2Vzc2lvblNlbmRBdHRlbXB0c31gKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV2ZXJ0UXVldWVTaXplKHNlc3Npb25zOiBNYWluU2Vzc2lvbltdKXtcbiAgICAgICAgdGhpcy5zZXNzaW9uUXVldWUudW5zaGlmdCguLi5zZXNzaW9ucyk7XG4gICAgICAgIGlmKHRoaXMuc2Vzc2lvblF1ZXVlLmxlbmd0aCA+IHRoaXMubWF4QnVmZmVyU2l6ZSApe1xuICAgICAgICAgICAgbGV0IGRpZmYgPSB0aGlzLnNlc3Npb25RdWV1ZS5sZW5ndGggLSB0aGlzLm1heEJ1ZmZlclNpemU7XG4gICAgICAgICAgICB0aGlzLnNlc3Npb25RdWV1ZSA9IHRoaXMuc2Vzc2lvblF1ZXVlLnNsaWNlKDAsdGhpcy5tYXhCdWZmZXJTaXplKTtcbiAgICAgICAgICAgIGxvZ1RyYWNlYXBpKCdsb2cnLCdCdWZmZXIgc2l6ZSBleGVlZGVkIHRoZSBtYXggc2l6ZSxsYXN0IHNlc3Npb25zIGhhdmUgYmVlbiByZW1vdmVkIGZyb20gYnVmZmVyLCAobnVtYmVyIG9mIHNlc3Npb25zIHJlbW92ZWQpOicrZGlmZilcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldEluc2VydGVkSW5zdGFuY2VJZCgpIDogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgaWYodGhpcy5pbnN0YW5jZSl7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5pbnN0YW5jZTtcbiAgICAgICAgfVxuICAgICAgICBpZih0aGlzLnNlbmRJbnN0YW5jZUVudkZpbmlzaGVkKXtcbiAgICAgICAgICAgIHRoaXMuc2VuZEluc3RhbmNlRW52RmluaXNoZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIGNvbnN0IHJlcXVlc3RPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbic6ICcqJyAvLyByZXRlc3RcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHRoaXMuaW5zdGFuY2VFbnZpcm9ubWVudClcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0aGlzLnNlc3Npb25TZW5kQXR0ZW1wdHMrKztcbiAgICAgICAgICAgIHJldHVybiBmcm9tKCBmZXRjaCh0aGlzLmxvZ0luc3RhbmNlRW52LHJlcXVlc3RPcHRpb25zKVxuICAgICAgICAgICAgLnRoZW4ocmVzID0+IHJlcy5vayA/IHJlcy50ZXh0KCkudGhlbihpZD0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmluc3RhbmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KGlkKTtcbiAgICAgICAgICAgICAgICB0aGlzLmxvZ1NlcnZlck1haW4gPXRoaXMubG9nU2VydmVyTWFpbi5yZXBsYWNlKCc6aWQnLGlkKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb25TZW5kQXR0ZW1wdHM9MDtcbiAgICAgICAgICAgICAgICBsb2dUcmFjZWFwaSgnbG9nJywnRW52aXJvbmVtZW50IGluc3RhbmNlIHNlbnQgc3VjY2Vzc2Z1bGx5Jyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlkOyAvLyByZXR1cm4gbG9nc2VydmVyTWFpblxuICAgICAgICAgICAgfSkgOiBudWxsKVxuICAgICAgICAgICAgLmNhdGNoKGVyciA9PiB7XG4gICAgICAgICAgICAgICAgbG9nVHJhY2VhcGkoJ3dhcm4nLGVycilcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH0pLmZpbmFsbHkoKCk9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZW5kSW5zdGFuY2VFbnZGaW5pc2hlZCA9IHRydWU7XG4gICAgICAgICAgICB9KSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgfVxuXG4gICAgaW5zdGFuY2VBcGlVUkwoaG9zdDpzdHJpbmcsIHBhdGg6c3RyaW5nKXtcbiAgICAgICAgcmV0dXJuICB0aGlzLnRvVVJMKGhvc3QscGF0aCk7XG4gICAgIH1cblxuICAgICBzZXNzaW9uQXBpVVJMKGhvc3Q6c3RyaW5nLCBwYXRoOnN0cmluZyl7XG4gICAgICAgIHJldHVybiAgdGhpcy50b1VSTChob3N0LHBhdGgpO1xuICAgICB9XG5cbiAgICAgdG9VUkwoIGhvc3Q6c3RyaW5nLCAgcGF0aDpzdHJpbmcgKXtcbiAgICAgICAgIHJldHVybiBob3N0LmVuZHNXaXRoKFNMQVNIKSB8fCBwYXRoLnN0YXJ0c1dpdGgoU0xBU0gpID8gaG9zdCArIHBhdGggOiBbaG9zdCxwYXRoXS5qb2luKFNMQVNIKTtcbiAgICAgfVxuXG4gICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZih0aGlzLnNjaGVkdWxlZFNlc3Npb25TZW5kZXIpe1xuICAgICAgICAgICAgdGhpcy5zY2hlZHVsZWRTZXNzaW9uU2VuZGVyLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
144
|
+
}], ctorParameters: function () { return []; } });
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbmV0ZW1lL2luc3BlY3QtbmctY29sbGVjdG9yL3NyYy9saWIvc2Vzc2lvbi1tYW5hZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUV2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQWMsRUFBRSxFQUFnQixHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLE1BQU0sUUFBUSxDQUFDOztBQUV6RyxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUM7QUFHbEIsTUFBTSxPQUFPLGNBQWM7SUFjdkI7UUFOQSxpQkFBWSxHQUFpQixFQUFFLENBQUM7UUFDaEMsd0JBQW1CLEdBQVcsQ0FBQyxDQUFBO1FBQy9CLDRCQUF1QixHQUFXLENBQUMsQ0FBQztRQUVwQyx3QkFBbUIsR0FBVSxJQUFJLENBQUM7UUFDbEMsNEJBQXVCLEdBQVksSUFBSSxDQUFDO0lBR3hDLENBQUM7SUFHRCxVQUFVLENBQUMsTUFBVSxFQUFFLElBQVc7UUFDOUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBRSxDQUFDLENBQUM7UUFDbEYsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBQyxlQUFlLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBRSxDQUFDLENBQUM7UUFDckYsSUFBSSxDQUFDLGFBQWEsR0FBSSxlQUFlLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUks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SUFBSSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFXLEVBQUUsSUFBVztRQUNuQyxPQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxhQUFhLENBQUMsSUFBVyxFQUFFLElBQVc7UUFDbkMsT0FBUSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsS0FBSyxDQUFFLElBQVcsRUFBRyxJQUFXO1FBQzVCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEcsQ0FBQztJQUVELFdBQVc7UUFDUixJQUFHLElBQUksQ0FBQyxzQkFBc0IsRUFBQztZQUMzQixJQUFJLENBQUMsc0JBQXNCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDN0M7SUFDTCxDQUFDOytHQXhKUSxjQUFjO21IQUFkLGNBQWMsY0FERCxNQUFNOzs0RkFDbkIsY0FBYztrQkFEMUIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJbnN0YW5jZUVudmlyb25tZW50LCBNYWluU2Vzc2lvbiB9IGZyb20gJy4vdHJhY2UubW9kZWwnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmcm9tLCBpbnRlcnZhbCwgT2JzZXJ2YWJsZSwgb2YsIFN1YnNjcmlwdGlvbiwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkYXRlTm93LCBkZXRlY3RCcm93c2VyLCBkZXRlY3RPcywgZ2V0TnVtYmVyT3JDYWxsLCBnZXRTdHJpbmdPckNhbGwsIGxvZ1RyYWNlYXBpIH0gZnJvbSAnLi91dGlsJztcblxuY29uc3QgU0xBU0ggPSAnLyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgU2Vzc2lvbk1hbmFnZXIgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gICAgbG9nU2VydmVyTWFpbiE6IHN0cmluZztcbiAgICBsb2dJbnN0YW5jZUVudiE6IHN0cmluZztcbiAgICBtYXhCdWZmZXJTaXplITogbnVtYmVyO1xuICAgIGRlbGF5ITpudW1iZXJcbiAgICBpbnN0YW5jZUVudmlyb25tZW50ICE6IEluc3RhbmNlRW52aXJvbm1lbnQ7XG4gICAgc2NoZWR1bGVkU2Vzc2lvblNlbmRlciE6IFN1YnNjcmlwdGlvbjtcbiAgICBzZXNzaW9uUXVldWU6IE1haW5TZXNzaW9uW109IFtdO1xuICAgIHNlc3Npb25TZW5kQXR0ZW1wdHM6IG51bWJlciA9IDBcbiAgICBJbnN0YW5jZUVudlNlbmRBdHRlbXB0czogbnVtYmVyID0gMDtcbiAgICBpbnN0YW5jZSE6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+O1xuICAgIHNlbmRTZXNzaW9uZmluaXNoZWQ6Ym9vbGVhbj0gdHJ1ZTtcbiAgICBzZW5kSW5zdGFuY2VFbnZGaW5pc2hlZDogYm9vbGVhbiA9IHRydWU7XG4gICAgY29uc3RydWN0b3IoKXtcblxuICAgIH1cblxuXG4gICAgaW5pdGlhbGl6ZShjb25maWc6YW55LCBob3N0OnN0cmluZykge1xuICAgICAgICB0aGlzLmxvZ1NlcnZlck1haW4gPSB0aGlzLnNlc3Npb25BcGlVUkwoaG9zdCxnZXRTdHJpbmdPckNhbGwoY29uZmlnLnNlc3Npb25BcGkpISk7XG4gICAgICAgIHRoaXMubG9nSW5zdGFuY2VFbnYgPSB0aGlzLmluc3RhbmNlQXBpVVJMKGhvc3QsZ2V0U3RyaW5nT3JDYWxsKGNvbmZpZy5pbnN0YW5jZUFwaSkhKTtcbiAgICAgICAgdGhpcy5tYXhCdWZmZXJTaXplID0gIGdldE51bWJlck9yQ2FsbChjb25maWcuYnVmZmVyTWF4U2l6ZSkgPz8gMTAwMDtcbiAgICAgICAgdGhpcy5kZWxheSA9IGdldE51bWJlck9yQ2FsbChjb25maWcuZGVsYXkpID8/IDYwMDAwO1xuICAgICAgICB0aGlzLmluc3RhbmNlRW52aXJvbm1lbnQgPSB7XG4gICAgICAgICAgICBuYW1lOiBnZXRTdHJpbmdPckNhbGwoY29uZmlnLm5hbWUpLFxuICAgICAgICAgICAgdmVyc2lvbjogZ2V0U3RyaW5nT3JDYWxsKGNvbmZpZy52ZXJzaW9uKSxcbiAgICAgICAgICAgIGFkZHJlc3M6IHVuZGVmaW5lZCwgLy9zZXJ2ZXIgc2lkZVxuICAgICAgICAgICAgZW52OiBnZXRTdHJpbmdPckNhbGwoY29uZmlnLmVudiksXG4gICAgICAgICAgICBvczogZGV0ZWN0T3MoKSxcbiAgICAgICAgICAgIHJlOiBkZXRlY3RCcm93c2VyKCksXG4gICAgICAgICAgICB1c2VyOiB1bmRlZmluZWQsIC8vIGNhbm5vdCBnZXQgdXNlclxuICAgICAgICAgICAgdHlwZTogXCJDTElFTlRcIixcbiAgICAgICAgICAgIGluc3RhbnQ6IGRhdGVOb3coKSxcbiAgICAgICAgICAgIGNvbGxlY3RvcjogXCJpbnNwZWN0LW5nLWNvbGxlY3Rvci0wLjAuMVwiXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNjaGVkdWxlZFNlc3Npb25TZW5kZXIgPSBpbnRlcnZhbCh0aGlzLmRlbGF5KVxuICAgICAgICAucGlwZSh0YXAoKCk9PiB7XG4gICAgICAgICAgICBpZih0aGlzLnNlbmRTZXNzaW9uZmluaXNoZWQpe1xuICAgICAgICAgICAgICAgIHRoaXMuc2VuZFNlc3Npb25zKCk7XG4gICAgICAgICAgICB9fSkpXG4gICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBhZGRTZXNzaW9ucyhzZXNzaW9uczpNYWluU2Vzc2lvbil7XG4gICAgICAgIHRoaXMuc2Vzc2lvblF1ZXVlLnB1c2goc2Vzc2lvbnMpO1xuICAgICAgICBsb2dUcmFjZWFwaSgnbG9nJyxcImFkZGVkIGVsZW1lbnQgdG8gc2Vzc2lvbiBxdWV1ZSwgbmV3IHNpemUgaXM6IFwiKyB0aGlzLnNlc3Npb25RdWV1ZS5sZW5ndGgpO1xuICAgIH1cblxuXG4gICAgc2VuZFNlc3Npb25zKCkge1xuICAgICAgICBpZih0aGlzLnNlc3Npb25RdWV1ZS5sZW5ndGg+IDApe1xuICAgICAgICAgICAgdGhpcy5nZXRJbnNlcnRlZEluc3RhbmNlSWQoKS5zdWJzY3JpYmUoKGlkOnN0cmluZ3xudWxsKT0+e1xuICAgICAgICAgICAgICAgIGlmKGlkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VuZFNlc3Npb25maW5pc2hlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICBsZXQgc2Vzc2lvbnM6IE1haW5TZXNzaW9uW10gPSBbLi4udGhpcy5zZXNzaW9uUXVldWVdO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb25RdWV1ZS5zcGxpY2UoMCxzZXNzaW9ucy5sZW5ndGgpOyAvLyBhZGQgcmVzdCBvZiBzZXNzaW9uc1xuICAgICAgICAgICAgICAgICAgICBsb2dUcmFjZWFwaSgnbG9nJyxgc2VuZGluZyBzZXNzaW9ucywgYXR0ZW1wdHM6JHsrK3RoaXMuc2Vzc2lvblNlbmRBdHRlbXB0c30sIHF1ZXVlIHNpemUgOiAke3Nlc3Npb25zLmxlbmd0aH1gKVxuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlcXVlc3RPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kOiAnUFVUJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4nOiAnKidcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShzZXNzaW9ucylcbiAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICBmZXRjaCh0aGlzLmxvZ1NlcnZlck1haW4sIHJlcXVlc3RPcHRpb25zKVxuICAgICAgICAgICAgICAgICAgICAudGhlbihkYXRhPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYoZGF0YS5vayl7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nVHJhY2VhcGkoJ2xvZycsJ3Nlc3Npb25zIHNlbnQgc3VjY2Vzc2Z1bGx5LCBxdWV1ZSBzaXplIHJlc2V0LCBuZXcgc2l6ZSBpczogJyt0aGlzLnNlc3Npb25RdWV1ZS5sZW5ndGgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXNzaW9uU2VuZEF0dGVtcHRzPSAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nVHJhY2VhcGkoJ3dhcm4nLGBFcnJvciB3aGlsZSBhdHRlbXB0aW5nIHRvIHNlbmQgc2Vzc2lvbnMsIGF0dGVtcHRzOiAke3RoaXMuc2Vzc2lvblNlbmRBdHRlbXB0c31gKS8vXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXZlcnRRdWV1ZVNpemUoc2Vzc2lvbnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAuY2F0Y2goZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbG9nVHJhY2VhcGkoJ3dhcm4nLGBFcnJvciB3aGlsZSBhdHRlbXB0aW5nIHRvIHNlbmQgc2Vzc2lvbnMsIGF0dGVtcHRzOiAke3RoaXMuc2Vzc2lvblNlbmRBdHRlbXB0c31gKS8vXG4gICAgICAgICAgICAgICAgICAgICAgICBsb2dUcmFjZWFwaSgnd2FybicsZXJyb3IpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJldmVydFF1ZXVlU2l6ZShzZXNzaW9ucyk7XG4gICAgICAgICAgICAgICAgICAgIH0pLmZpbmFsbHkoICgpPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZW5kU2Vzc2lvbmZpbmlzaGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSlcblxuICAgICAgICAgICAgICAgIH1lbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgbG9nVHJhY2VhcGkoJ3dhcm4nLGBFcnJvciB3aGlsZSBhdHRlbXB0aW5nIHRvIHNlbmQgRW52aXJvbmVtZW50IGluc3RhbmNlLCBhdHRlbXB0cyAke3RoaXMuc2Vzc2lvblNlbmRBdHRlbXB0c31gKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV2ZXJ0UXVldWVTaXplKHNlc3Npb25zOiBNYWluU2Vzc2lvbltdKXtcbiAgICAgICAgdGhpcy5zZXNzaW9uUXVldWUudW5zaGlmdCguLi5zZXNzaW9ucyk7XG4gICAgICAgIGlmKHRoaXMuc2Vzc2lvblF1ZXVlLmxlbmd0aCA+IHRoaXMubWF4QnVmZmVyU2l6ZSApe1xuICAgICAgICAgICAgbGV0IGRpZmYgPSB0aGlzLnNlc3Npb25RdWV1ZS5sZW5ndGggLSB0aGlzLm1heEJ1ZmZlclNpemU7XG4gICAgICAgICAgICB0aGlzLnNlc3Npb25RdWV1ZSA9IHRoaXMuc2Vzc2lvblF1ZXVlLnNsaWNlKDAsdGhpcy5tYXhCdWZmZXJTaXplKTtcbiAgICAgICAgICAgIGxvZ1RyYWNlYXBpKCdsb2cnLCdCdWZmZXIgc2l6ZSBleGVlZGVkIHRoZSBtYXggc2l6ZSxsYXN0IHNlc3Npb25zIGhhdmUgYmVlbiByZW1vdmVkIGZyb20gYnVmZmVyLCAobnVtYmVyIG9mIHNlc3Npb25zIHJlbW92ZWQpOicrZGlmZilcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldEluc2VydGVkSW5zdGFuY2VJZCgpIDogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgaWYodGhpcy5pbnN0YW5jZSl7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5pbnN0YW5jZTtcbiAgICAgICAgfVxuICAgICAgICBpZih0aGlzLnNlbmRJbnN0YW5jZUVudkZpbmlzaGVkKXtcbiAgICAgICAgICAgIHRoaXMuc2VuZEluc3RhbmNlRW52RmluaXNoZWQgPSBmYWxzZTtcbiAgICAgICAgICAgIGNvbnN0IHJlcXVlc3RPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAgICAgJ0FjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbic6ICcqJyAvLyByZXRlc3RcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHRoaXMuaW5zdGFuY2VFbnZpcm9ubWVudClcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0aGlzLnNlc3Npb25TZW5kQXR0ZW1wdHMrKztcbiAgICAgICAgICAgIHJldHVybiBmcm9tKCBmZXRjaCh0aGlzLmxvZ0luc3RhbmNlRW52LHJlcXVlc3RPcHRpb25zKVxuICAgICAgICAgICAgLnRoZW4ocmVzID0+IHJlcy5vayA/IHJlcy50ZXh0KCkudGhlbihpZD0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmluc3RhbmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KGlkKTtcbiAgICAgICAgICAgICAgICB0aGlzLmxvZ1NlcnZlck1haW4gPXRoaXMubG9nU2VydmVyTWFpbi5yZXBsYWNlKCc6aWQnLGlkKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb25TZW5kQXR0ZW1wdHM9MDtcbiAgICAgICAgICAgICAgICBsb2dUcmFjZWFwaSgnbG9nJywnRW52aXJvbmVtZW50IGluc3RhbmNlIHNlbnQgc3VjY2Vzc2Z1bGx5Jyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlkOyAvLyByZXR1cm4gbG9nc2VydmVyTWFpblxuICAgICAgICAgICAgfSkgOiBudWxsKVxuICAgICAgICAgICAgLmNhdGNoKGVyciA9PiB7XG4gICAgICAgICAgICAgICAgbG9nVHJhY2VhcGkoJ3dhcm4nLGVycilcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH0pLmZpbmFsbHkoKCk9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZW5kSW5zdGFuY2VFbnZGaW5pc2hlZCA9IHRydWU7XG4gICAgICAgICAgICB9KSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgfVxuXG4gICAgaW5zdGFuY2VBcGlVUkwoaG9zdDpzdHJpbmcsIHBhdGg6c3RyaW5nKXtcbiAgICAgICAgcmV0dXJuICB0aGlzLnRvVVJMKGhvc3QscGF0aCk7XG4gICAgIH1cblxuICAgICBzZXNzaW9uQXBpVVJMKGhvc3Q6c3RyaW5nLCBwYXRoOnN0cmluZyl7XG4gICAgICAgIHJldHVybiAgdGhpcy50b1VSTChob3N0LHBhdGgpO1xuICAgICB9XG5cbiAgICAgdG9VUkwoIGhvc3Q6c3RyaW5nLCAgcGF0aDpzdHJpbmcgKXtcbiAgICAgICAgIHJldHVybiBob3N0LmVuZHNXaXRoKFNMQVNIKSB8fCBwYXRoLnN0YXJ0c1dpdGgoU0xBU0gpID8gaG9zdCArIHBhdGggOiBbaG9zdCxwYXRoXS5qb2luKFNMQVNIKTtcbiAgICAgfVxuXG4gICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZih0aGlzLnNjaGVkdWxlZFNlc3Npb25TZW5kZXIpe1xuICAgICAgICAgICAgdGhpcy5zY2hlZHVsZWRTZXNzaW9uU2VuZGVyLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
package/esm2022/lib/util.mjs
CHANGED
|
@@ -128,4 +128,4 @@ export function detectOs() {
|
|
|
128
128
|
}
|
|
129
129
|
return undefined;
|
|
130
130
|
}
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZXRlbWUvaW5zcGVjdC1uZy1jb2xsZWN0b3Ivc3JjL2xpYi91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLElBQUksR0FBRyxHQUFPLE1BQU0sQ0FBQztBQUNyQixJQUFJLENBQUMsR0FBTyxPQUFPLENBQUM7QUFFcEIsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLG9DQUFvQyxDQUFDO0FBQ2hFLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyw2QkFBNkIsQ0FBQztBQUV6RCxNQUFNLFVBQVUsT0FBTztJQUNuQixPQUFPLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFLLENBQUM7QUFDOUIsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsRUFBUyxFQUFFLEdBQUcsSUFBVztJQUVuRCxJQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBQyxDQUFDO1FBQ2hCLElBQUksT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssVUFBVSxFQUFDLENBQUM7WUFDL0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFlBQVksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFBO1FBQzlCLENBQUM7SUFDSCxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxPQUFvQjtJQUN0RCxJQUFJLENBQUMsR0FBQyxFQUFFLENBQUM7SUFDVCxJQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBQyxDQUFDO1FBQ2QsQ0FBQyxHQUFJLElBQUksT0FBTyxDQUFDLElBQUksR0FBRyxDQUFDO1FBQzFCLElBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxJQUFJLEVBQUMsQ0FBQztZQUN2QixDQUFDLElBQUcsSUFBSSxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUE7UUFDekIsQ0FBQztRQUNELElBQUcsT0FBTyxDQUFDLFFBQVEsRUFBQyxDQUFDO1lB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LE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO2dCQUNyRCxPQUFPLFNBQVMsT0FBTyxFQUFFLENBQUE7UUFDakMsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1AsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1haW5TZXNzaW9uLCBSZXN0UmVxdWVzdCB9IGZyb20gXCIuL3RyYWNlLm1vZGVsXCI7XG5cbmxldCBXSU46YW55ID0gd2luZG93O1xubGV0IGM6YW55ID0gY29uc29sZTtcblxuZXhwb3J0IGNvbnN0IEhPU1RfUEFURVJOID0gL2h0dHBzPzpcXC9cXC9bXFx3XFwtXFwuXSsoOlxcZHsyLDV9KT9cXC8/LztcbmV4cG9ydCBjb25zdCBQQVRIX1BBVEVSTiA9IC9bXFx3XFwtXFx7XFx9XSsoXFwvW1xcd1xcLVxce1xcfV0rKSovO1xuXG5leHBvcnQgZnVuY3Rpb24gZGF0ZU5vdygpIHtcbiAgICByZXR1cm4gRGF0ZS5ub3coKSAvIDFfMDAwO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9nVHJhY2VhcGkoZm46c3RyaW5nICwuLi5hcmdzOiBhbnlbXSl7XG5cbiAgaWYoV0lOW1widHJhY2VhcGlcIl0pe1xuICAgICAgaWYoIHR5cGVvZiBjW2ZuXSA9PT0gJ2Z1bmN0aW9uJyl7XG4gICAgICAgIGNbZm5dKCdbVFJBQ0VBUEldJywgLi4uYXJncylcbiAgICAgIH1cbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBwcmV0dHlTZXNzaW9uRm9ybWF0KHNlc3Npb246IE1haW5TZXNzaW9uKXtcbiAgbGV0IHM9XCJcIjtcbiAgaWYoV0lOWydkZWJ1ZyddKXtcbiAgICAgcyAgPSBgWyR7c2Vzc2lvbi5uYW1lfV1gO1xuICAgIGlmKHNlc3Npb24udXNlciAhPSBudWxsKXtcbiAgICAgIHMrPSBgPCR7c2Vzc2lvbi51c2VyfT5gXG4gICAgfVxuICAgIGlmKHNlc3Npb24ubG9jYXRpb24pe1xuICAgICAgcys9IGAoJHtzZXNzaW9uLmxvY2F0aW9ufSkgYFxuICAgIH1cbiAgICBzKz1wcmV0dHlEdXJhdGlvbkZvcm1hdChzZXNzaW9uLnN0YXJ0LHNlc3Npb24uZW5kISk7XG4gICAgc2Vzc2lvbi5yZXN0UmVxdWVzdHMuZm9yRWFjaChyID0+IHtcbiAgICAgIHMrPSBwcmV0dHlSZXN0UmVxdWVzdEZvcm1hdChyKTtcbiAgICB9KVxuICB9XG4gIHJldHVybiBzO1xufVxuXG5mdW5jdGlvbiBwcmV0dHlSZXN0UmVxdWVzdEZvcm1hdChyZXN0OiBSZXN0UmVxdWVzdCl7XG4gIGxldCBzID0gYCAgLSAgWyR7cmVzdC5tZXRob2R9XWBcbiAgaWYocmVzdC5wcm90b2NvbCl7XG4gICAgcys9IGAke3Jlc3QucHJvdG9jb2x9Oi8vYFxuICB9XG5cbiAgaWYocmVzdC5ob3N0KXtcbiAgICBzKz0gcmVzdC5ob3N0XG4gIH1cblxuICBpZihyZXN0LnBvcnQgPiAwKXtcbiAgICBzKz0gYDoke3Jlc3QucG9ydH1gXG4gIH1cblxuICBpZihyZXN0LnBhdGgpe1xuICAgIGlmKCFyZXN0LnBhdGguc3RhcnRzV2l0aChcIi9cIikgJiYgIXMuZW5kc1dpdGgoXCIvXCIpKXtcbiAgICAgIHMrPSAnLydcbiAgICB9XG4gICAgcys9IHJlc3QucGF0aDtcbiAgfVxuXG4gIGlmKHJlc3QucXVlcnkpe1xuICAgIHMrPSByZXN0LnF1ZXJ5XG4gIH1cblxuICBpZihyZXN0LmV4Y2VwdGlvbj8udHlwZSl7XG4gICAgcys9IGAgJHtyZXN0LmV4Y2VwdGlvbj8udHlwZX06YDtcbiAgfVxuXG4gIGlmKHJlc3QuZXhjZXB0aW9uPy5tZXNzYWdlKXtcbiAgICBzKz0gYCAke3Jlc3QuZXhjZXB0aW9uLm1lc3NhZ2V9YDtcbiAgfVxuICBzKz0gYCA+PiAke3Jlc3Quc3RhdHVzfWBcbiAgcys9IHByZXR0eUR1cmF0aW9uRm9ybWF0KHJlc3Quc3RhcnQscmVzdC5lbmQpO1xuICByZXR1cm4gcztcbn1cblxuZnVuY3Rpb24gcHJldHR5RHVyYXRpb25Gb3JtYXQoc3RhcnQ6bnVtYmVyLGVuZDpudW1iZXIpe1xuICAgIHJldHVybiAgc3RhcnQgJiYgZW5kID8gYChpbiAkeyBuZXcgRGF0ZShlbmQqMTAwMCkuZ2V0VGltZSgpLSBuZXcgRGF0ZShzdGFydCoxMDAwKS5nZXRUaW1lKCkgfSBtcykgXFxuYCA6ICcnO1xufVxuXG5cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlKHY6IHN0cmluZyB8IHVuZGVmaW5lZCwgcGF0dGVybjogUmVnRXhwKSB7XG4gICBpZih2ICYmIHBhdHRlcm4uZXhlYyh2KSl7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgIH1cblxuXG4gICBsb2dUcmFjZWFwaSgnd2FybicsXCJiYWQgdmFsdWU9XCIgKyB2ICsgXCIsIHBhdHRlcm49XCIgKyBwYXR0ZXJuKTtcbiAgIHJldHVybiBmYWxzZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlcXVpcmVQb3N0aXRpdmVWYWx1ZSh2OiBudW1iZXIgfCB1bmRlZmluZWQsIG5hbWU6IHN0cmluZyl7XG4gIGlmKHYgPT0gdW5kZWZpbmVkIHx8ICAodiAmJiB2ID4gMCkpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGxvZ1RyYWNlYXBpKCd3YXJuJyxuYW1lICsnPScrIHYgKyBcIiA8PSAwXCIpO1xuICByZXR1cm4gZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXROdW1iZXJPckNhbGwobz86IG51bWJlciB8ICgoKSA9PiBudW1iZXIpKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIHR5cGVvZiBvID09PSBcImZ1bmN0aW9uXCIgPyBvKCkgOiBvO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U3RyaW5nT3JDYWxsKG8/OiBzdHJpbmcgfCAoKCkgPT4gc3RyaW5nKSk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiB0eXBlb2YgbyA9PT0gXCJmdW5jdGlvblwiID8gbygpIDogbztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJlZ0Fyck9yQ2FsbChvPzogUmVnRXhwW10gfCAoKCkgPT4gUmVnRXhwW10pKTogUmVnRXhwW10gfCB1bmRlZmluZWQge1xuICByZXR1cm4gdHlwZW9mIG8gPT09IFwiZnVuY3Rpb25cIiA/IG8oKSA6IG87XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZXRlY3RCcm93c2VyKCkge1xuICB0cnkge1xuICAgICAgY29uc3QgYWdlbnQgPSB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpXG4gICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgICBjYXNlIGFnZW50LmluZGV4T2YoJ2VkZ2UnKSA+IC0xOlxuICAgICAgICAgICAgICByZXR1cm4gJ2VkZ2UnO1xuICAgICAgICAgIGNhc2UgYWdlbnQuaW5kZXhPZignb3ByJykgPiAtMTpcbiAgICAgICAgICAgICAgcmV0dXJuICdvcGVyYSc7XG4gICAgICAgICAgY2FzZSBhZ2VudC5pbmRleE9mKCdjaHJvbWUnKSA+IC0xOlxuICAgICAgICAgICAgICByZXR1cm4gJ2Nocm9tZSc7XG4gICAgICAgICAgY2FzZSBhZ2VudC5pbmRleE9mKCdmaXJlZm94JykgPiAtMTpcbiAgICAgICAgICAgICAgcmV0dXJuICdmaXJlZm94JztcbiAgICAgICAgICBjYXNlIGFnZW50LmluZGV4T2YoJ3NhZmFyaScpID4gLTE6XG4gICAgICAgICAgICAgIHJldHVybiAnc2FmYXJpJztcbiAgICAgIH1cbiAgfVxuICBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkO1xuXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZXRlY3RPcygpIHtcbiAgdHJ5IHtcbiAgICAgIGxldCB2ZXJzaW9uTWF0Y2gsIHZlcnNpb247XG4gICAgICBjb25zdCBhZ2VudCA9IHdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKClcbiAgICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgICAgIGNhc2UgKC93aW5kb3dzLy50ZXN0KGFnZW50KSk6XG5cbiAgICAgICAgICAgICAgdmVyc2lvbk1hdGNoID0gL3dpbmRvd3MgbnQgKFxcZCtcXC5cXGQrKS8uZXhlYyhhZ2VudCk7XG4gICAgICAgICAgICAgIHZlcnNpb24gPSB2ZXJzaW9uTWF0Y2ggPyB2ZXJzaW9uTWF0Y2hbMV0gOiAnVW5rbm93bic7XG4gICAgICAgICAgICAgIHJldHVybiBgV2luZG93cyAke3ZlcnNpb259YDtcbiAgICAgICAgICBjYXNlICgvbGludXgvLnRlc3QoYWdlbnQpKTpcbiAgICAgICAgICAgICAgcmV0dXJuICdMaW51eCc7XG5cbiAgICAgICAgICBjYXNlICgvbWFjaW50b3NoLy50ZXN0KGFnZW50KSk6XG4gICAgICAgICAgICAgIHZlcnNpb25NYXRjaCA9IC9tYWMgb3MgeCAoXFxkK1suX11cXGQrWy5fXVxcZCspLy5leGVjKGFnZW50KTtcbiAgICAgICAgICAgICAgdmVyc2lvbiA9IHZlcnNpb25NYXRjaCA/IHZlcnNpb25NYXRjaFsxXSA6ICdVbmtub3duJztcbiAgICAgICAgICAgICAgcmV0dXJuIGBNYWNPcyAke3ZlcnNpb259YFxuICAgICAgfVxuICB9XG4gIGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGUpO1xuICB9XG4gIHJldHVybiB1bmRlZmluZWQ7XG59XG4iXX0=
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29uZXRlbWUvaW5zcGVjdC1uZy1jb2xsZWN0b3Ivc3JjL2xpYi91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLElBQUksR0FBRyxHQUFPLE1BQU0sQ0FBQztBQUNyQixJQUFJLENBQUMsR0FBTyxPQUFPLENBQUM7QUFFcEIsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLG9DQUFvQyxDQUFDO0FBQ2hFLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyw2QkFBNkIsQ0FBQztBQUV6RCxNQUFNLFVBQVUsT0FBTztJQUNuQixPQUFPLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFLLENBQUM7QUFDOUIsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsRUFBUyxFQUFFLEdBQUcsSUFBVztJQUVuRCxJQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBQztRQUNmLElBQUksT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssVUFBVSxFQUFDO1lBQzlCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxZQUFZLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQTtTQUM3QjtLQUNGO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxPQUFvQjtJQUN0RCxJQUFJLENBQUMsR0FBQyxFQUFFLENBQUM7SUFDVCxJQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBQztRQUNiLENBQUMsR0FBSSxJQUFJLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQztRQUMxQixJQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksSUFBSSxFQUFDO1lBQ3RCLENBQUMsSUFBRyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQTtTQUN4QjtRQUNELElBQUcsT0FBTyxDQUFDLFFBQVEsRUFBQztZQUNsQixDQUFDLElBQUcsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLENBQUE7U0FDN0I7UUFDRCxDQUFDLElBQUUsb0JBQW9CLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBQyxPQUFPLENBQUMsR0FBSSxDQUFDLENBQUM7UUFDcEQsT0FBTyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDL0IsQ0FBQyxJQUFHLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFBO0tBQ0g7SUFDRCxPQUFPLENBQUMsQ0FBQztBQUNYLENBQUM7QUFFRCxTQUFTLHVCQUF1QixDQUFDLElBQWlCO0lBQ2hELElBQUksQ0FBQyxHQUFHLFNBQVMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFBO0lBQy9CLElBQUcsSUFBSSxDQUFDLFFBQVEsRUFBQztRQUNmLENBQUMsSUFBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEtBQUssQ0FBQTtLQUMxQjtJQUVELElBQUcsSUFBSSxDQUFDLElBQUksRUFBQztRQUNYLENBQUMsSUFBRyxJQUFJLENBQUMsSUFBSSxDQUFBO0tBQ2Q7SUFFRCxJQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFDO1FBQ2YsQ0FBQyxJQUFHLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFBO0tBQ3BCO0lBRUQsSUFBRyxJQUFJLENBQUMsSUFBSSxFQUFDO1FBQ1gsSUFBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBQztZQUNoRCxDQUFDLElBQUcsR0FBRyxDQUFBO1NBQ1I7UUFDRCxDQUFDLElBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztLQUNmO0lBRUQsSUFBRyxJQUFJLENBQUMsS0FBSyxFQUFDO1FBQ1osQ0FBQyxJQUFHLElBQUksQ0FBQyxLQUFLLENBQUE7S0FDZjtJQUVELElBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUM7UUFDdEIsQ0FBQyxJQUFHLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQztLQUNqQztJQUVELElBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUM7UUFDekIsQ0FBQyxJQUFHLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztLQUNsQztJQUNELENBQUMsSUFBRyxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUN4QixDQUFDLElBQUcsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUMsT0FBTyxDQUFDLENBQUM7QUFDWCxDQUFDO0FBRUQsU0FBUyxvQkFBb0IsQ0FBQyxLQUFZLEVBQUMsR0FBVTtJQUNqRCxPQUFRLEtBQUssSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQVEsSUFBSSxJQUFJLENBQUMsR0FBRyxHQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFFLElBQUksSUFBSSxDQUFDLEtBQUssR0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFDL0csQ0FBQztBQUlELE1BQU0sVUFBVSxRQUFRLENBQUMsQ0FBcUIsRUFBRSxPQUFlO0lBQzVELElBQUcsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUM7UUFDckIsT0FBTyxJQUFJLENBQUM7S0FDZDtJQUdELFdBQVcsQ0FBQyxNQUFNLEVBQUMsWUFBWSxHQUFHLENBQUMsR0FBRyxZQUFZLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDOUQsT0FBTyxLQUFLLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxxQkFBcUIsQ0FBQyxDQUFxQixFQUFFLElBQVk7SUFDdkUsSUFBRyxDQUFDLElBQUksU0FBUyxJQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtRQUNsQyxPQUFPLElBQUksQ0FBQztLQUNiO0lBRUQsV0FBVyxDQUFDLE1BQU0sRUFBQyxJQUFJLEdBQUUsR0FBRyxHQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUMzQyxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLENBQTJCO0lBQ3pELE9BQU8sT0FBTyxDQUFDLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzNDLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLENBQTJCO0lBQ3pELE9BQU8sT0FBTyxDQUFDLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzNDLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLENBQStCO0lBQzdELE9BQU8sT0FBTyxDQUFDLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzNDLENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYTtJQUMzQixJQUFJO1FBQ0EsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDdEQsUUFBUSxJQUFJLEVBQUU7WUFDVixLQUFLLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMzQixPQUFPLE1BQU0sQ0FBQztZQUNsQixLQUFLLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMxQixPQUFPLE9BQU8sQ0FBQztZQUNuQixLQUFLLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUM3QixPQUFPLFFBQVEsQ0FBQztZQUNwQixLQUFLLEtBQUssQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUM5QixPQUFPLFNBQVMsQ0FBQztZQUNyQixLQUFLLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUM3QixPQUFPLFFBQVEsQ0FBQztTQUN2QjtLQUNKO0lBQ0QsT0FBTyxDQUFDLEVBQUU7UUFDTixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3BCO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFFbkIsQ0FBQztBQUVELE1BQU0sVUFBVSxRQUFRO0lBQ3RCLElBQUk7UUFDQSxJQUFJLFlBQVksRUFBRSxPQUFPLENBQUM7UUFDMUIsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDdEQsUUFBUSxJQUFJLEVBQUU7WUFDVixLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFFeEIsWUFBWSxHQUFHLHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDbkQsT0FBTyxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBQ3JELE9BQU8sV0FBVyxPQUFPLEVBQUUsQ0FBQztZQUNoQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDdEIsT0FBTyxPQUFPLENBQUM7WUFFbkIsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzFCLFlBQVksR0FBRyw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzFELE9BQU8sR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO2dCQUNyRCxPQUFPLFNBQVMsT0FBTyxFQUFFLENBQUE7U0FDaEM7S0FDSjtJQUNELE9BQU8sQ0FBQyxFQUFFO1FBQ04sT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNwQjtJQUNELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYWluU2Vzc2lvbiwgUmVzdFJlcXVlc3QgfSBmcm9tIFwiLi90cmFjZS5tb2RlbFwiO1xuXG5sZXQgV0lOOmFueSA9IHdpbmRvdztcbmxldCBjOmFueSA9IGNvbnNvbGU7XG5cbmV4cG9ydCBjb25zdCBIT1NUX1BBVEVSTiA9IC9odHRwcz86XFwvXFwvW1xcd1xcLVxcLl0rKDpcXGR7Miw1fSk/XFwvPy87XG5leHBvcnQgY29uc3QgUEFUSF9QQVRFUk4gPSAvW1xcd1xcLVxce1xcfV0rKFxcL1tcXHdcXC1cXHtcXH1dKykqLztcblxuZXhwb3J0IGZ1bmN0aW9uIGRhdGVOb3coKSB7XG4gICAgcmV0dXJuIERhdGUubm93KCkgLyAxXzAwMDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvZ1RyYWNlYXBpKGZuOnN0cmluZyAsLi4uYXJnczogYW55W10pe1xuXG4gIGlmKFdJTltcInRyYWNlYXBpXCJdKXtcbiAgICAgIGlmKCB0eXBlb2YgY1tmbl0gPT09ICdmdW5jdGlvbicpe1xuICAgICAgICBjW2ZuXSgnW1RSQUNFQVBJXScsIC4uLmFyZ3MpXG4gICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJldHR5U2Vzc2lvbkZvcm1hdChzZXNzaW9uOiBNYWluU2Vzc2lvbil7XG4gIGxldCBzPVwiXCI7XG4gIGlmKFdJTlsnZGVidWcnXSl7XG4gICAgIHMgID0gYFske3Nlc3Npb24ubmFtZX1dYDtcbiAgICBpZihzZXNzaW9uLnVzZXIgIT0gbnVsbCl7XG4gICAgICBzKz0gYDwke3Nlc3Npb24udXNlcn0+YFxuICAgIH1cbiAgICBpZihzZXNzaW9uLmxvY2F0aW9uKXtcbiAgICAgIHMrPSBgKCR7c2Vzc2lvbi5sb2NhdGlvbn0pIGBcbiAgICB9XG4gICAgcys9cHJldHR5RHVyYXRpb25Gb3JtYXQoc2Vzc2lvbi5zdGFydCxzZXNzaW9uLmVuZCEpO1xuICAgIHNlc3Npb24ucmVzdFJlcXVlc3RzLmZvckVhY2gociA9PiB7XG4gICAgICBzKz0gcHJldHR5UmVzdFJlcXVlc3RGb3JtYXQocik7XG4gICAgfSlcbiAgfVxuICByZXR1cm4gcztcbn1cblxuZnVuY3Rpb24gcHJldHR5UmVzdFJlcXVlc3RGb3JtYXQocmVzdDogUmVzdFJlcXVlc3Qpe1xuICBsZXQgcyA9IGAgIC0gIFske3Jlc3QubWV0aG9kfV1gXG4gIGlmKHJlc3QucHJvdG9jb2wpe1xuICAgIHMrPSBgJHtyZXN0LnByb3RvY29sfTovL2BcbiAgfVxuXG4gIGlmKHJlc3QuaG9zdCl7XG4gICAgcys9IHJlc3QuaG9zdFxuICB9XG5cbiAgaWYocmVzdC5wb3J0ID4gMCl7XG4gICAgcys9IGA6JHtyZXN0LnBvcnR9YFxuICB9XG5cbiAgaWYocmVzdC5wYXRoKXtcbiAgICBpZighcmVzdC5wYXRoLnN0YXJ0c1dpdGgoXCIvXCIpICYmICFzLmVuZHNXaXRoKFwiL1wiKSl7XG4gICAgICBzKz0gJy8nXG4gICAgfVxuICAgIHMrPSByZXN0LnBhdGg7XG4gIH1cblxuICBpZihyZXN0LnF1ZXJ5KXtcbiAgICBzKz0gcmVzdC5xdWVyeVxuICB9XG5cbiAgaWYocmVzdC5leGNlcHRpb24/LnR5cGUpe1xuICAgIHMrPSBgICR7cmVzdC5leGNlcHRpb24/LnR5cGV9OmA7XG4gIH1cblxuICBpZihyZXN0LmV4Y2VwdGlvbj8ubWVzc2FnZSl7XG4gICAgcys9IGAgJHtyZXN0LmV4Y2VwdGlvbi5tZXNzYWdlfWA7XG4gIH1cbiAgcys9IGAgPj4gJHtyZXN0LnN0YXR1c31gXG4gIHMrPSBwcmV0dHlEdXJhdGlvbkZvcm1hdChyZXN0LnN0YXJ0LHJlc3QuZW5kKTtcbiAgcmV0dXJuIHM7XG59XG5cbmZ1bmN0aW9uIHByZXR0eUR1cmF0aW9uRm9ybWF0KHN0YXJ0Om51bWJlcixlbmQ6bnVtYmVyKXtcbiAgICByZXR1cm4gIHN0YXJ0ICYmIGVuZCA/IGAoaW4gJHsgbmV3IERhdGUoZW5kKjEwMDApLmdldFRpbWUoKS0gbmV3IERhdGUoc3RhcnQqMTAwMCkuZ2V0VGltZSgpIH0gbXMpIFxcbmAgOiAnJztcbn1cblxuXG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZSh2OiBzdHJpbmcgfCB1bmRlZmluZWQsIHBhdHRlcm46IFJlZ0V4cCkge1xuICAgaWYodiAmJiBwYXR0ZXJuLmV4ZWModikpe1xuICAgICAgcmV0dXJuIHRydWU7XG4gICB9XG5cblxuICAgbG9nVHJhY2VhcGkoJ3dhcm4nLFwiYmFkIHZhbHVlPVwiICsgdiArIFwiLCBwYXR0ZXJuPVwiICsgcGF0dGVybik7XG4gICByZXR1cm4gZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXF1aXJlUG9zdGl0aXZlVmFsdWUodjogbnVtYmVyIHwgdW5kZWZpbmVkLCBuYW1lOiBzdHJpbmcpe1xuICBpZih2ID09IHVuZGVmaW5lZCB8fCAgKHYgJiYgdiA+IDApKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBsb2dUcmFjZWFwaSgnd2FybicsbmFtZSArJz0nKyB2ICsgXCIgPD0gMFwiKTtcbiAgcmV0dXJuIGZhbHNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0TnVtYmVyT3JDYWxsKG8/OiBudW1iZXIgfCAoKCkgPT4gbnVtYmVyKSk6IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiB0eXBlb2YgbyA9PT0gXCJmdW5jdGlvblwiID8gbygpIDogbztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFN0cmluZ09yQ2FsbChvPzogc3RyaW5nIHwgKCgpID0+IHN0cmluZykpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICByZXR1cm4gdHlwZW9mIG8gPT09IFwiZnVuY3Rpb25cIiA/IG8oKSA6IG87XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRSZWdBcnJPckNhbGwobz86IFJlZ0V4cFtdIHwgKCgpID0+IFJlZ0V4cFtdKSk6IFJlZ0V4cFtdIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIHR5cGVvZiBvID09PSBcImZ1bmN0aW9uXCIgPyBvKCkgOiBvO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGV0ZWN0QnJvd3NlcigpIHtcbiAgdHJ5IHtcbiAgICAgIGNvbnN0IGFnZW50ID0gd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKVxuICAgICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAgICAgY2FzZSBhZ2VudC5pbmRleE9mKCdlZGdlJykgPiAtMTpcbiAgICAgICAgICAgICAgcmV0dXJuICdlZGdlJztcbiAgICAgICAgICBjYXNlIGFnZW50LmluZGV4T2YoJ29wcicpID4gLTE6XG4gICAgICAgICAgICAgIHJldHVybiAnb3BlcmEnO1xuICAgICAgICAgIGNhc2UgYWdlbnQuaW5kZXhPZignY2hyb21lJykgPiAtMTpcbiAgICAgICAgICAgICAgcmV0dXJuICdjaHJvbWUnO1xuICAgICAgICAgIGNhc2UgYWdlbnQuaW5kZXhPZignZmlyZWZveCcpID4gLTE6XG4gICAgICAgICAgICAgIHJldHVybiAnZmlyZWZveCc7XG4gICAgICAgICAgY2FzZSBhZ2VudC5pbmRleE9mKCdzYWZhcmknKSA+IC0xOlxuICAgICAgICAgICAgICByZXR1cm4gJ3NhZmFyaSc7XG4gICAgICB9XG4gIH1cbiAgY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcblxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGV0ZWN0T3MoKSB7XG4gIHRyeSB7XG4gICAgICBsZXQgdmVyc2lvbk1hdGNoLCB2ZXJzaW9uO1xuICAgICAgY29uc3QgYWdlbnQgPSB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpXG4gICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgICBjYXNlICgvd2luZG93cy8udGVzdChhZ2VudCkpOlxuXG4gICAgICAgICAgICAgIHZlcnNpb25NYXRjaCA9IC93aW5kb3dzIG50IChcXGQrXFwuXFxkKykvLmV4ZWMoYWdlbnQpO1xuICAgICAgICAgICAgICB2ZXJzaW9uID0gdmVyc2lvbk1hdGNoID8gdmVyc2lvbk1hdGNoWzFdIDogJ1Vua25vd24nO1xuICAgICAgICAgICAgICByZXR1cm4gYFdpbmRvd3MgJHt2ZXJzaW9ufWA7XG4gICAgICAgICAgY2FzZSAoL2xpbnV4Ly50ZXN0KGFnZW50KSk6XG4gICAgICAgICAgICAgIHJldHVybiAnTGludXgnO1xuXG4gICAgICAgICAgY2FzZSAoL21hY2ludG9zaC8udGVzdChhZ2VudCkpOlxuICAgICAgICAgICAgICB2ZXJzaW9uTWF0Y2ggPSAvbWFjIG9zIHggKFxcZCtbLl9dXFxkK1suX11cXGQrKS8uZXhlYyhhZ2VudCk7XG4gICAgICAgICAgICAgIHZlcnNpb24gPSB2ZXJzaW9uTWF0Y2ggPyB2ZXJzaW9uTWF0Y2hbMV0gOiAnVW5rbm93bic7XG4gICAgICAgICAgICAgIHJldHVybiBgTWFjT3MgJHt2ZXJzaW9ufWBcbiAgICAgIH1cbiAgfVxuICBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuIl19
|
|
@@ -154,11 +154,11 @@ class SessionManager {
|
|
|
154
154
|
this.instanceEnvironment = {
|
|
155
155
|
name: getStringOrCall(config.name),
|
|
156
156
|
version: getStringOrCall(config.version),
|
|
157
|
-
address: undefined,
|
|
157
|
+
address: undefined,
|
|
158
158
|
env: getStringOrCall(config.env),
|
|
159
159
|
os: detectOs(),
|
|
160
160
|
re: detectBrowser(),
|
|
161
|
-
user: undefined,
|
|
161
|
+
user: undefined,
|
|
162
162
|
type: "CLIENT",
|
|
163
163
|
instant: dateNow(),
|
|
164
164
|
collector: "inspect-ng-collector-0.0.1"
|
|
@@ -270,13 +270,13 @@ class SessionManager {
|
|
|
270
270
|
this.scheduledSessionSender.unsubscribe();
|
|
271
271
|
}
|
|
272
272
|
}
|
|
273
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
274
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
273
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SessionManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
274
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SessionManager, providedIn: 'root' }); }
|
|
275
275
|
}
|
|
276
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
276
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SessionManager, decorators: [{
|
|
277
277
|
type: Injectable,
|
|
278
278
|
args: [{ providedIn: 'root' }]
|
|
279
|
-
}], ctorParameters: ()
|
|
279
|
+
}], ctorParameters: function () { return []; } });
|
|
280
280
|
|
|
281
281
|
const SLASH = '/';
|
|
282
282
|
class RouteTracerService {
|
|
@@ -328,19 +328,19 @@ class RouteTracerService {
|
|
|
328
328
|
getCurrentSession() {
|
|
329
329
|
return this.currentSession;
|
|
330
330
|
}
|
|
331
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
332
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
331
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RouteTracerService, deps: [{ token: i1.Router }, { token: 'config' }, { token: 'host' }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
332
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RouteTracerService, providedIn: 'root' }); }
|
|
333
333
|
}
|
|
334
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
334
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RouteTracerService, decorators: [{
|
|
335
335
|
type: Injectable,
|
|
336
336
|
args: [{ providedIn: 'root' }]
|
|
337
|
-
}], ctorParameters: ()
|
|
337
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: undefined, decorators: [{
|
|
338
338
|
type: Inject,
|
|
339
339
|
args: ['config']
|
|
340
340
|
}] }, { type: undefined, decorators: [{
|
|
341
341
|
type: Inject,
|
|
342
342
|
args: ['host']
|
|
343
|
-
}] }] });
|
|
343
|
+
}] }]; } });
|
|
344
344
|
|
|
345
345
|
class HttpInterceptorService {
|
|
346
346
|
constructor(routerTracerService) {
|
|
@@ -385,13 +385,13 @@ class HttpInterceptorService {
|
|
|
385
385
|
});
|
|
386
386
|
}));
|
|
387
387
|
}
|
|
388
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
389
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
388
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HttpInterceptorService, deps: [{ token: RouteTracerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
389
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HttpInterceptorService, providedIn: 'root' }); }
|
|
390
390
|
}
|
|
391
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
391
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HttpInterceptorService, decorators: [{
|
|
392
392
|
type: Injectable,
|
|
393
393
|
args: [{ providedIn: 'root' }]
|
|
394
|
-
}], ctorParameters: ()
|
|
394
|
+
}], ctorParameters: function () { return [{ type: RouteTracerService }]; } });
|
|
395
395
|
function toHref(url) {
|
|
396
396
|
const href = document.createElement('a');
|
|
397
397
|
href.setAttribute('href', url);
|
|
@@ -442,11 +442,11 @@ class NgCollectorModule {
|
|
|
442
442
|
ngModule: NgCollectorModule
|
|
443
443
|
};
|
|
444
444
|
}
|
|
445
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
446
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
447
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
445
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgCollectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
446
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: NgCollectorModule }); }
|
|
447
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgCollectorModule }); }
|
|
448
448
|
}
|
|
449
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
449
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NgCollectorModule, decorators: [{
|
|
450
450
|
type: NgModule,
|
|
451
451
|
args: [{}]
|
|
452
452
|
}] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oneteme-inspect-ng-collector.mjs","sources":["../../../../projects/oneteme/inspect-ng-collector/src/lib/util.ts","../../../../projects/oneteme/inspect-ng-collector/src/lib/session-manager.service.ts","../../../../projects/oneteme/inspect-ng-collector/src/lib/route-tracer.service.ts","../../../../projects/oneteme/inspect-ng-collector/src/lib/http-interceptor.service.ts","../../../../projects/oneteme/inspect-ng-collector/src/lib/ng-collector.module.ts","../../../../projects/oneteme/inspect-ng-collector/src/public-api.ts","../../../../projects/oneteme/inspect-ng-collector/src/oneteme-inspect-ng-collector.ts"],"sourcesContent":["import { MainSession, RestRequest } from \"./trace.model\";\n\nlet WIN:any = window;\nlet c:any = console;\n\nexport const HOST_PATERN = /https?:\\/\\/[\\w\\-\\.]+(:\\d{2,5})?\\/?/;\nexport const PATH_PATERN = /[\\w\\-\\{\\}]+(\\/[\\w\\-\\{\\}]+)*/;\n\nexport function dateNow() {\n return Date.now() / 1_000;\n}\n\nexport function logTraceapi(fn:string ,...args: any[]){\n\n if(WIN[\"traceapi\"]){\n if( typeof c[fn] === 'function'){\n c[fn]('[TRACEAPI]', ...args)\n }\n }\n}\n\nexport function prettySessionFormat(session: MainSession){\n let s=\"\";\n if(WIN['debug']){\n s = `[${session.name}]`;\n if(session.user != null){\n s+= `<${session.user}>`\n }\n if(session.location){\n s+= `(${session.location}) `\n }\n s+=prettyDurationFormat(session.start,session.end!);\n session.restRequests.forEach(r => {\n s+= prettyRestRequestFormat(r);\n })\n }\n return s;\n}\n\nfunction prettyRestRequestFormat(rest: RestRequest){\n let s = ` - [${rest.method}]`\n if(rest.protocol){\n s+= `${rest.protocol}://`\n }\n\n if(rest.host){\n s+= rest.host\n }\n\n if(rest.port > 0){\n s+= `:${rest.port}`\n }\n\n if(rest.path){\n if(!rest.path.startsWith(\"/\") && !s.endsWith(\"/\")){\n s+= '/'\n }\n s+= rest.path;\n }\n\n if(rest.query){\n s+= rest.query\n }\n\n if(rest.exception?.type){\n s+= ` ${rest.exception?.type}:`;\n }\n\n if(rest.exception?.message){\n s+= ` ${rest.exception.message}`;\n }\n s+= ` >> ${rest.status}`\n s+= prettyDurationFormat(rest.start,rest.end);\n return s;\n}\n\nfunction prettyDurationFormat(start:number,end:number){\n return start && end ? `(in ${ new Date(end*1000).getTime()- new Date(start*1000).getTime() } ms) \\n` : '';\n}\n\n\n\nexport function validate(v: string | undefined, pattern: RegExp) {\n if(v && pattern.exec(v)){\n return true;\n }\n\n\n logTraceapi('warn',\"bad value=\" + v + \", pattern=\" + pattern);\n return false;\n}\n\nexport function requirePostitiveValue(v: number | undefined, name: string){\n if(v == undefined || (v && v > 0)) {\n return true;\n }\n\n logTraceapi('warn',name +'='+ v + \" <= 0\");\n return false;\n}\n\nexport function getNumberOrCall(o?: number | (() => number)): number | undefined {\n return typeof o === \"function\" ? o() : o;\n}\n\nexport function getStringOrCall(o?: string | (() => string)): string | undefined {\n return typeof o === \"function\" ? o() : o;\n}\n\nexport function getRegArrOrCall(o?: RegExp[] | (() => RegExp[])): RegExp[] | undefined {\n return typeof o === \"function\" ? o() : o;\n}\n\nexport function detectBrowser() {\n try {\n const agent = window.navigator.userAgent.toLowerCase()\n switch (true) {\n case agent.indexOf('edge') > -1:\n return 'edge';\n case agent.indexOf('opr') > -1:\n return 'opera';\n case agent.indexOf('chrome') > -1:\n return 'chrome';\n case agent.indexOf('firefox') > -1:\n return 'firefox';\n case agent.indexOf('safari') > -1:\n return 'safari';\n }\n }\n catch (e) {\n console.error(e);\n }\n return undefined;\n\n}\n\nexport function detectOs() {\n try {\n let versionMatch, version;\n const agent = window.navigator.userAgent.toLowerCase()\n switch (true) {\n case (/windows/.test(agent)):\n\n versionMatch = /windows nt (\\d+\\.\\d+)/.exec(agent);\n version = versionMatch ? versionMatch[1] : 'Unknown';\n return `Windows ${version}`;\n case (/linux/.test(agent)):\n return 'Linux';\n\n case (/macintosh/.test(agent)):\n versionMatch = /mac os x (\\d+[._]\\d+[._]\\d+)/.exec(agent);\n version = versionMatch ? versionMatch[1] : 'Unknown';\n return `MacOs ${version}`\n }\n }\n catch (e) {\n console.error(e);\n }\n return undefined;\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { InstanceEnvironment, MainSession } from './trace.model';\nimport { BehaviorSubject, from, interval, Observable, of, Subscription, tap } from 'rxjs';\nimport { dateNow, detectBrowser, detectOs, getNumberOrCall, getStringOrCall, logTraceapi } from './util';\n\nconst SLASH = '/';\n\n@Injectable({ providedIn: 'root' })\nexport class SessionManager implements OnDestroy {\n\n logServerMain!: string;\n logInstanceEnv!: string;\n maxBufferSize!: number;\n delay!:number\n instanceEnvironment !: InstanceEnvironment;\n scheduledSessionSender!: Subscription;\n sessionQueue: MainSession[]= [];\n sessionSendAttempts: number = 0\n InstanceEnvSendAttempts: number = 0;\n instance!: BehaviorSubject<string>;\n sendSessionfinished:boolean= true;\n sendInstanceEnvFinished: boolean = true;\n constructor(){\n\n }\n\n\n initialize(config:any, host:string) {\n this.logServerMain = this.sessionApiURL(host,getStringOrCall(config.sessionApi)!);\n this.logInstanceEnv = this.instanceApiURL(host,getStringOrCall(config.instanceApi)!);\n this.maxBufferSize = getNumberOrCall(config.bufferMaxSize) ?? 1000;\n this.delay = getNumberOrCall(config.delay) ?? 60000;\n this.instanceEnvironment = {\n name: getStringOrCall(config.name),\n version: getStringOrCall(config.version),\n address: undefined, //server side\n env: getStringOrCall(config.env),\n os: detectOs(),\n re: detectBrowser(),\n user: undefined, // cannot get user\n type: \"CLIENT\",\n instant: dateNow(),\n collector: \"inspect-ng-collector-0.0.1\"\n }\n\n this.scheduledSessionSender = interval(this.delay)\n .pipe(tap(()=> {\n if(this.sendSessionfinished){\n this.sendSessions();\n }}))\n .subscribe();\n }\n\n addSessions(sessions:MainSession){\n this.sessionQueue.push(sessions);\n logTraceapi('log',\"added element to session queue, new size is: \"+ this.sessionQueue.length);\n }\n\n\n sendSessions() {\n if(this.sessionQueue.length> 0){\n this.getInsertedInstanceId().subscribe((id:string|null)=>{\n if(id) {\n this.sendSessionfinished = false;\n let sessions: MainSession[] = [...this.sessionQueue];\n this.sessionQueue.splice(0,sessions.length); // add rest of sessions\n logTraceapi('log',`sending sessions, attempts:${++this.sessionSendAttempts}, queue size : ${sessions.length}`)\n\n const requestOptions = {\n method: 'PUT',\n headers: {\n 'Content-Type': 'application/json',\n 'Access-Control-Allow-Origin': '*'\n },\n body: JSON.stringify(sessions)\n };\n\n fetch(this.logServerMain, requestOptions)\n .then(data=> {\n if(data.ok){\n logTraceapi('log','sessions sent successfully, queue size reset, new size is: '+this.sessionQueue.length)\n this.sessionSendAttempts= 0;\n }else{\n logTraceapi('warn',`Error while attempting to send sessions, attempts: ${this.sessionSendAttempts}`)//\n this.revertQueueSize(sessions);\n }\n })\n .catch(error => {\n logTraceapi('warn',`Error while attempting to send sessions, attempts: ${this.sessionSendAttempts}`)//\n logTraceapi('warn',error)\n this.revertQueueSize(sessions);\n }).finally( ()=> {\n this.sendSessionfinished = true;\n })\n\n }else {\n logTraceapi('warn',`Error while attempting to send Environement instance, attempts ${this.sessionSendAttempts}`);\n }\n })\n }\n }\n\n revertQueueSize(sessions: MainSession[]){\n this.sessionQueue.unshift(...sessions);\n if(this.sessionQueue.length > this.maxBufferSize ){\n let diff = this.sessionQueue.length - this.maxBufferSize;\n this.sessionQueue = this.sessionQueue.slice(0,this.maxBufferSize);\n logTraceapi('log','Buffer size exeeded the max size,last sessions have been removed from buffer, (number of sessions removed):'+diff)\n }\n }\n\n getInsertedInstanceId() : Observable<any> {\n if(this.instance){\n return this.instance;\n }\n if(this.sendInstanceEnvFinished){\n this.sendInstanceEnvFinished = false;\n const requestOptions = {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Access-Control-Allow-Origin': '*' // retest\n },\n body: JSON.stringify(this.instanceEnvironment)\n };\n this.sessionSendAttempts++;\n return from( fetch(this.logInstanceEnv,requestOptions)\n .then(res => res.ok ? res.text().then(id=> {\n this.instance = new BehaviorSubject<string>(id);\n this.logServerMain =this.logServerMain.replace(':id',id);\n this.sessionSendAttempts=0;\n logTraceapi('log','Environement instance sent successfully');\n return id; // return logserverMain\n }) : null)\n .catch(err => {\n logTraceapi('warn',err)\n return null;\n }).finally(()=> {\n this.sendInstanceEnvFinished = true;\n }))\n }\n return of(null);\n }\n\n instanceApiURL(host:string, path:string){\n return this.toURL(host,path);\n }\n\n sessionApiURL(host:string, path:string){\n return this.toURL(host,path);\n }\n\n toURL( host:string, path:string ){\n return host.endsWith(SLASH) || path.startsWith(SLASH) ? host + path : [host,path].join(SLASH);\n }\n\n ngOnDestroy(): void {\n if(this.scheduledSessionSender){\n this.scheduledSessionSender.unsubscribe();\n }\n }\n}\n","import { Inject, Injectable, OnDestroy} from \"@angular/core\";\nimport { NavigationEnd, NavigationStart, Router } from \"@angular/router\";\nimport { MainSession } from \"./trace.model\";\nimport { ApplicationConf} from \"./ng-collector.module\";\nimport { dateNow, getRegArrOrCall, getStringOrCall, logTraceapi, prettySessionFormat } from \"./util\";\nimport { SessionManager } from \"./session-manager.service\";\n\n\nconst SLASH = '/';\n@Injectable({ providedIn: 'root' }) \nexport class RouteTracerService implements OnDestroy{\n\n\n currentSession!: MainSession; \n user?: string;\n trySendInstanceEnv:any;\n excludeList: RegExp[] | undefined;\n sessionManager : SessionManager;\n constructor(private router: Router,\n @Inject('config') config: ApplicationConf,\n @Inject('host') host: string) {\n this.sessionManager = new SessionManager();\n this.excludeList = getRegArrOrCall(config.exclude);\n this.sessionManager.initialize(config,host);\n this.user = getStringOrCall(config.user);\n }\n\n private beforeUnloadHandler = (event: BeforeUnloadEvent): void => {\n this.currentSession.end = dateNow();\n if(this.excludeList!.every((e) => !e.test(this.currentSession.location))){\n this.sessionManager.addSessions(this.currentSession);//force \n this.sessionManager.sendSessions();\n }\n }\n\n ngOnDestroy(): void { \n window.removeEventListener('beforeunload',this.beforeUnloadHandler); \n }\n\n initialize() {\n logTraceapi('log','initialize');\n window.addEventListener('beforeunload', this.beforeUnloadHandler);\n this.router.events.subscribe(event => {\n if (event instanceof NavigationStart) {\n const now = dateNow();\n if (this.currentSession) {\n this.currentSession.end = dateNow();\n if(this.excludeList!.every((e) => !e.test(this.currentSession.location))){\n this.sessionManager.addSessions(this.currentSession);\n }\n logTraceapi('log',prettySessionFormat(this.currentSession));\n }\n this.currentSession = {\n '@type': \"main\",\n user: this.user,\n start: now,\n type: \"VIEW\",\n location: event.url,\n restRequests: []\n }\n }\n if (event instanceof NavigationEnd) {\n this.currentSession.name = document.title;\n this.currentSession.location = document.URL; \n\n }\n })\n\n }\n\n getCurrentSession() {\n return this.currentSession;\n }\n}\n\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { HttpInterceptor, HttpEvent, HttpHandler, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { tap, finalize } from 'rxjs/operators'\nimport { RouteTracerService } from './route-tracer.service';\nimport { ExceptionInfo } from './trace.model';\nimport { dateNow } from './util';\n\n@Injectable({ providedIn: 'root' })\nexport class HttpInterceptorService implements HttpInterceptor {\n\n constructor(private routerTracerService: RouteTracerService) { }\n\n intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n const start = dateNow();\n let status: number, responseBody: any = '', exception: ExceptionInfo;\n let id: string| undefined;\n return next.handle(req).pipe(tap(\n (event: any) => {\n if (event instanceof HttpResponse) {\n status = +event.status;\n responseBody = event.body\n id = getReqid(event.headers);\n }\n },\n error => {\n console.log(error)\n id = getReqid(error.headers);\n status = +error.status;\n exception = {\n type: error.error.error,\n message: error.error.message\n }\n },\n ), finalize(() => {\n\n const url = toHref(req.urlWithParams);\n this.routerTracerService.getCurrentSession().restRequests.push({\n id: id,\n method: req.method,\n protocol: url.protocol.slice(0, -1),\n host: exctractHost(url.host),\n port: +url.port,\n path: url.pathname,\n query: url.search.slice(1, url.search.length),\n contentType: req.responseType,\n authScheme: extractAuthScheme(req.headers),\n status: +status,\n inDataSize: sizeOf(responseBody),\n ouDataSize: sizeOf(req.body),\n start: start,\n end: dateNow(),\n exception: exception\n });\n }));\n }\n}\n\nfunction toHref(url: string): HTMLAnchorElement {\n const href = document.createElement('a');\n href.setAttribute('href', url);\n return href;\n}\n\nfunction exctractHost(path: string) {\n const portregex = /:\\d+/;\n return path.replace(portregex, '')\n}\n\nfunction extractAuthScheme(headers: any): string | undefined {\n return headers.has('authorization')\n ? headers.get('authorization').match(/^(\\w+) /)?.at(1)\n : undefined;\n}\n\nfunction getReqid(headers:any):string | undefined {\n return headers.has('x-tracert')\n ? headers.get('x-tracert')\n : undefined;\n}\n\nfunction sizeOf(body: any): number {\n return body ? JSON.stringify(body).length : 0;\n}\n","import { NgModule, APP_INITIALIZER, ModuleWithProviders } from '@angular/core';\nimport { HTTP_INTERCEPTORS, } from '@angular/common/http';\nimport { HttpInterceptorService } from './http-interceptor.service';\nimport { RouteTracerService } from './route-tracer.service';\nimport { getNumberOrCall, logTraceapi, requirePostitiveValue, validate, HOST_PATERN, PATH_PATERN, getStringOrCall } from './util';\nimport { SessionManager } from './session-manager.service';\n\n\n\n@NgModule({})\nexport class NgCollectorModule {\n\n static forRoot(host: string, configuration: ApplicationConf): ModuleWithProviders<NgCollectorModule> {\n if (configuration?.enabled\n && validate(host, HOST_PATERN)\n && validate(getStringOrCall(configuration?.sessionApi), PATH_PATERN)\n && validate(getStringOrCall(configuration?.instanceApi), PATH_PATERN)) {\n\n\n if(!requirePostitiveValue(getNumberOrCall(configuration?.delay),\"delay\") ||\n !requirePostitiveValue(getNumberOrCall(configuration?.bufferMaxSize),\"bufferMaxSize\") ){\n logTraceapi('warn','invalid Configuration, Ng-collector is disabled');\n return {ngModule: NgCollectorModule}\n }\n\n return {\n ngModule: NgCollectorModule,\n providers: [\n RouteTracerService,\n SessionManager,\n { provide: APP_INITIALIZER, useFactory: initializeRoutingEvents, deps: [RouteTracerService], multi: true },\n { provide: HTTP_INTERCEPTORS, useClass: HttpInterceptorService, multi: true },\n { provide: 'config', useValue: configuration },\n { provide: 'host', useValue: host }\n ]\n };\n }\n return {\n ngModule: NgCollectorModule\n }\n\n }\n}\n\nexport function initializeRoutingEvents(routeTracerService: RouteTracerService) {\n return () => routeTracerService.initialize();\n}\n\nexport interface ApplicationConf {\n name?: string | (() => string);\n version?: string | (() => string);\n env?: string | (() => string);\n user?: string | (() => string);\n bufferMaxSize?: number | (() => number);\n delay?: number| (() => number);\n instanceApi?: string | (() => string);\n sessionApi?: string | (() => string);\n exclude?: RegExp[] | (() => RegExp[]);\n enabled?: boolean;\n}\n","/*\n * Public API Surface of inspect-ng-collector\n */\n\n\nexport * from './lib/ng-collector.module';\n\n ","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["SLASH","tap","i1.RouteTracerService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oneteme-inspect-ng-collector.mjs","sources":["../../../../projects/oneteme/inspect-ng-collector/src/lib/util.ts","../../../../projects/oneteme/inspect-ng-collector/src/lib/session-manager.service.ts","../../../../projects/oneteme/inspect-ng-collector/src/lib/route-tracer.service.ts","../../../../projects/oneteme/inspect-ng-collector/src/lib/http-interceptor.service.ts","../../../../projects/oneteme/inspect-ng-collector/src/lib/ng-collector.module.ts","../../../../projects/oneteme/inspect-ng-collector/src/public-api.ts","../../../../projects/oneteme/inspect-ng-collector/src/oneteme-inspect-ng-collector.ts"],"sourcesContent":["import { MainSession, RestRequest } from \"./trace.model\";\n\nlet WIN:any = window;\nlet c:any = console;\n\nexport const HOST_PATERN = /https?:\\/\\/[\\w\\-\\.]+(:\\d{2,5})?\\/?/;\nexport const PATH_PATERN = /[\\w\\-\\{\\}]+(\\/[\\w\\-\\{\\}]+)*/;\n\nexport function dateNow() {\n return Date.now() / 1_000;\n}\n\nexport function logTraceapi(fn:string ,...args: any[]){\n\n if(WIN[\"traceapi\"]){\n if( typeof c[fn] === 'function'){\n c[fn]('[TRACEAPI]', ...args)\n }\n }\n}\n\nexport function prettySessionFormat(session: MainSession){\n let s=\"\";\n if(WIN['debug']){\n s = `[${session.name}]`;\n if(session.user != null){\n s+= `<${session.user}>`\n }\n if(session.location){\n s+= `(${session.location}) `\n }\n s+=prettyDurationFormat(session.start,session.end!);\n session.restRequests.forEach(r => {\n s+= prettyRestRequestFormat(r);\n })\n }\n return s;\n}\n\nfunction prettyRestRequestFormat(rest: RestRequest){\n let s = ` - [${rest.method}]`\n if(rest.protocol){\n s+= `${rest.protocol}://`\n }\n\n if(rest.host){\n s+= rest.host\n }\n\n if(rest.port > 0){\n s+= `:${rest.port}`\n }\n\n if(rest.path){\n if(!rest.path.startsWith(\"/\") && !s.endsWith(\"/\")){\n s+= '/'\n }\n s+= rest.path;\n }\n\n if(rest.query){\n s+= rest.query\n }\n\n if(rest.exception?.type){\n s+= ` ${rest.exception?.type}:`;\n }\n\n if(rest.exception?.message){\n s+= ` ${rest.exception.message}`;\n }\n s+= ` >> ${rest.status}`\n s+= prettyDurationFormat(rest.start,rest.end);\n return s;\n}\n\nfunction prettyDurationFormat(start:number,end:number){\n return start && end ? `(in ${ new Date(end*1000).getTime()- new Date(start*1000).getTime() } ms) \\n` : '';\n}\n\n\n\nexport function validate(v: string | undefined, pattern: RegExp) {\n if(v && pattern.exec(v)){\n return true;\n }\n\n\n logTraceapi('warn',\"bad value=\" + v + \", pattern=\" + pattern);\n return false;\n}\n\nexport function requirePostitiveValue(v: number | undefined, name: string){\n if(v == undefined || (v && v > 0)) {\n return true;\n }\n\n logTraceapi('warn',name +'='+ v + \" <= 0\");\n return false;\n}\n\nexport function getNumberOrCall(o?: number | (() => number)): number | undefined {\n return typeof o === \"function\" ? o() : o;\n}\n\nexport function getStringOrCall(o?: string | (() => string)): string | undefined {\n return typeof o === \"function\" ? o() : o;\n}\n\nexport function getRegArrOrCall(o?: RegExp[] | (() => RegExp[])): RegExp[] | undefined {\n return typeof o === \"function\" ? o() : o;\n}\n\nexport function detectBrowser() {\n try {\n const agent = window.navigator.userAgent.toLowerCase()\n switch (true) {\n case agent.indexOf('edge') > -1:\n return 'edge';\n case agent.indexOf('opr') > -1:\n return 'opera';\n case agent.indexOf('chrome') > -1:\n return 'chrome';\n case agent.indexOf('firefox') > -1:\n return 'firefox';\n case agent.indexOf('safari') > -1:\n return 'safari';\n }\n }\n catch (e) {\n console.error(e);\n }\n return undefined;\n\n}\n\nexport function detectOs() {\n try {\n let versionMatch, version;\n const agent = window.navigator.userAgent.toLowerCase()\n switch (true) {\n case (/windows/.test(agent)):\n\n versionMatch = /windows nt (\\d+\\.\\d+)/.exec(agent);\n version = versionMatch ? versionMatch[1] : 'Unknown';\n return `Windows ${version}`;\n case (/linux/.test(agent)):\n return 'Linux';\n\n case (/macintosh/.test(agent)):\n versionMatch = /mac os x (\\d+[._]\\d+[._]\\d+)/.exec(agent);\n version = versionMatch ? versionMatch[1] : 'Unknown';\n return `MacOs ${version}`\n }\n }\n catch (e) {\n console.error(e);\n }\n return undefined;\n}\n","import { Injectable, OnDestroy } from '@angular/core';\nimport { InstanceEnvironment, MainSession } from './trace.model';\nimport { BehaviorSubject, from, interval, Observable, of, Subscription, tap } from 'rxjs';\nimport { dateNow, detectBrowser, detectOs, getNumberOrCall, getStringOrCall, logTraceapi } from './util';\n\nconst SLASH = '/';\n\n@Injectable({ providedIn: 'root' })\nexport class SessionManager implements OnDestroy {\n\n logServerMain!: string;\n logInstanceEnv!: string;\n maxBufferSize!: number;\n delay!:number\n instanceEnvironment !: InstanceEnvironment;\n scheduledSessionSender!: Subscription;\n sessionQueue: MainSession[]= [];\n sessionSendAttempts: number = 0\n InstanceEnvSendAttempts: number = 0;\n instance!: BehaviorSubject<string>;\n sendSessionfinished:boolean= true;\n sendInstanceEnvFinished: boolean = true;\n constructor(){\n\n }\n\n\n initialize(config:any, host:string) {\n this.logServerMain = this.sessionApiURL(host,getStringOrCall(config.sessionApi)!);\n this.logInstanceEnv = this.instanceApiURL(host,getStringOrCall(config.instanceApi)!);\n this.maxBufferSize = getNumberOrCall(config.bufferMaxSize) ?? 1000;\n this.delay = getNumberOrCall(config.delay) ?? 60000;\n this.instanceEnvironment = {\n name: getStringOrCall(config.name),\n version: getStringOrCall(config.version),\n address: undefined, //server side\n env: getStringOrCall(config.env),\n os: detectOs(),\n re: detectBrowser(),\n user: undefined, // cannot get user\n type: \"CLIENT\",\n instant: dateNow(),\n collector: \"inspect-ng-collector-0.0.1\"\n }\n\n this.scheduledSessionSender = interval(this.delay)\n .pipe(tap(()=> {\n if(this.sendSessionfinished){\n this.sendSessions();\n }}))\n .subscribe();\n }\n\n addSessions(sessions:MainSession){\n this.sessionQueue.push(sessions);\n logTraceapi('log',\"added element to session queue, new size is: \"+ this.sessionQueue.length);\n }\n\n\n sendSessions() {\n if(this.sessionQueue.length> 0){\n this.getInsertedInstanceId().subscribe((id:string|null)=>{\n if(id) {\n this.sendSessionfinished = false;\n let sessions: MainSession[] = [...this.sessionQueue];\n this.sessionQueue.splice(0,sessions.length); // add rest of sessions\n logTraceapi('log',`sending sessions, attempts:${++this.sessionSendAttempts}, queue size : ${sessions.length}`)\n\n const requestOptions = {\n method: 'PUT',\n headers: {\n 'Content-Type': 'application/json',\n 'Access-Control-Allow-Origin': '*'\n },\n body: JSON.stringify(sessions)\n };\n\n fetch(this.logServerMain, requestOptions)\n .then(data=> {\n if(data.ok){\n logTraceapi('log','sessions sent successfully, queue size reset, new size is: '+this.sessionQueue.length)\n this.sessionSendAttempts= 0;\n }else{\n logTraceapi('warn',`Error while attempting to send sessions, attempts: ${this.sessionSendAttempts}`)//\n this.revertQueueSize(sessions);\n }\n })\n .catch(error => {\n logTraceapi('warn',`Error while attempting to send sessions, attempts: ${this.sessionSendAttempts}`)//\n logTraceapi('warn',error)\n this.revertQueueSize(sessions);\n }).finally( ()=> {\n this.sendSessionfinished = true;\n })\n\n }else {\n logTraceapi('warn',`Error while attempting to send Environement instance, attempts ${this.sessionSendAttempts}`);\n }\n })\n }\n }\n\n revertQueueSize(sessions: MainSession[]){\n this.sessionQueue.unshift(...sessions);\n if(this.sessionQueue.length > this.maxBufferSize ){\n let diff = this.sessionQueue.length - this.maxBufferSize;\n this.sessionQueue = this.sessionQueue.slice(0,this.maxBufferSize);\n logTraceapi('log','Buffer size exeeded the max size,last sessions have been removed from buffer, (number of sessions removed):'+diff)\n }\n }\n\n getInsertedInstanceId() : Observable<any> {\n if(this.instance){\n return this.instance;\n }\n if(this.sendInstanceEnvFinished){\n this.sendInstanceEnvFinished = false;\n const requestOptions = {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Access-Control-Allow-Origin': '*' // retest\n },\n body: JSON.stringify(this.instanceEnvironment)\n };\n this.sessionSendAttempts++;\n return from( fetch(this.logInstanceEnv,requestOptions)\n .then(res => res.ok ? res.text().then(id=> {\n this.instance = new BehaviorSubject<string>(id);\n this.logServerMain =this.logServerMain.replace(':id',id);\n this.sessionSendAttempts=0;\n logTraceapi('log','Environement instance sent successfully');\n return id; // return logserverMain\n }) : null)\n .catch(err => {\n logTraceapi('warn',err)\n return null;\n }).finally(()=> {\n this.sendInstanceEnvFinished = true;\n }))\n }\n return of(null);\n }\n\n instanceApiURL(host:string, path:string){\n return this.toURL(host,path);\n }\n\n sessionApiURL(host:string, path:string){\n return this.toURL(host,path);\n }\n\n toURL( host:string, path:string ){\n return host.endsWith(SLASH) || path.startsWith(SLASH) ? host + path : [host,path].join(SLASH);\n }\n\n ngOnDestroy(): void {\n if(this.scheduledSessionSender){\n this.scheduledSessionSender.unsubscribe();\n }\n }\n}\n","import { Inject, Injectable, OnDestroy} from \"@angular/core\";\nimport { NavigationEnd, NavigationStart, Router } from \"@angular/router\";\nimport { MainSession } from \"./trace.model\";\nimport { ApplicationConf} from \"./ng-collector.module\";\nimport { dateNow, getRegArrOrCall, getStringOrCall, logTraceapi, prettySessionFormat } from \"./util\";\nimport { SessionManager } from \"./session-manager.service\";\n\n\nconst SLASH = '/';\n@Injectable({ providedIn: 'root' }) \nexport class RouteTracerService implements OnDestroy{\n\n\n currentSession!: MainSession; \n user?: string;\n trySendInstanceEnv:any;\n excludeList: RegExp[] | undefined;\n sessionManager : SessionManager;\n constructor(private router: Router,\n @Inject('config') config: ApplicationConf,\n @Inject('host') host: string) {\n this.sessionManager = new SessionManager();\n this.excludeList = getRegArrOrCall(config.exclude);\n this.sessionManager.initialize(config,host);\n this.user = getStringOrCall(config.user);\n }\n\n private beforeUnloadHandler = (event: BeforeUnloadEvent): void => {\n this.currentSession.end = dateNow();\n if(this.excludeList!.every((e) => !e.test(this.currentSession.location))){\n this.sessionManager.addSessions(this.currentSession);//force \n this.sessionManager.sendSessions();\n }\n }\n\n ngOnDestroy(): void { \n window.removeEventListener('beforeunload',this.beforeUnloadHandler); \n }\n\n initialize() {\n logTraceapi('log','initialize');\n window.addEventListener('beforeunload', this.beforeUnloadHandler);\n this.router.events.subscribe(event => {\n if (event instanceof NavigationStart) {\n const now = dateNow();\n if (this.currentSession) {\n this.currentSession.end = dateNow();\n if(this.excludeList!.every((e) => !e.test(this.currentSession.location))){\n this.sessionManager.addSessions(this.currentSession);\n }\n logTraceapi('log',prettySessionFormat(this.currentSession));\n }\n this.currentSession = {\n '@type': \"main\",\n user: this.user,\n start: now,\n type: \"VIEW\",\n location: event.url,\n restRequests: []\n }\n }\n if (event instanceof NavigationEnd) {\n this.currentSession.name = document.title;\n this.currentSession.location = document.URL; \n\n }\n })\n\n }\n\n getCurrentSession() {\n return this.currentSession;\n }\n}\n\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { HttpInterceptor, HttpEvent, HttpHandler, HttpRequest, HttpResponse } from '@angular/common/http';\nimport { tap, finalize } from 'rxjs/operators'\nimport { RouteTracerService } from './route-tracer.service';\nimport { ExceptionInfo } from './trace.model';\nimport { dateNow } from './util';\n\n@Injectable({ providedIn: 'root' })\nexport class HttpInterceptorService implements HttpInterceptor {\n\n constructor(private routerTracerService: RouteTracerService) { }\n\n intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {\n const start = dateNow();\n let status: number, responseBody: any = '', exception: ExceptionInfo;\n let id: string| undefined;\n return next.handle(req).pipe(tap(\n (event: any) => {\n if (event instanceof HttpResponse) {\n status = +event.status;\n responseBody = event.body\n id = getReqid(event.headers);\n }\n },\n error => {\n console.log(error)\n id = getReqid(error.headers);\n status = +error.status;\n exception = {\n type: error.error.error,\n message: error.error.message\n }\n },\n ), finalize(() => {\n\n const url = toHref(req.urlWithParams);\n this.routerTracerService.getCurrentSession().restRequests.push({\n id: id,\n method: req.method,\n protocol: url.protocol.slice(0, -1),\n host: exctractHost(url.host),\n port: +url.port,\n path: url.pathname,\n query: url.search.slice(1, url.search.length),\n contentType: req.responseType,\n authScheme: extractAuthScheme(req.headers),\n status: +status,\n inDataSize: sizeOf(responseBody),\n ouDataSize: sizeOf(req.body),\n start: start,\n end: dateNow(),\n exception: exception\n });\n }));\n }\n}\n\nfunction toHref(url: string): HTMLAnchorElement {\n const href = document.createElement('a');\n href.setAttribute('href', url);\n return href;\n}\n\nfunction exctractHost(path: string) {\n const portregex = /:\\d+/;\n return path.replace(portregex, '')\n}\n\nfunction extractAuthScheme(headers: any): string | undefined {\n return headers.has('authorization')\n ? headers.get('authorization').match(/^(\\w+) /)?.at(1)\n : undefined;\n}\n\nfunction getReqid(headers:any):string | undefined {\n return headers.has('x-tracert')\n ? headers.get('x-tracert')\n : undefined;\n}\n\nfunction sizeOf(body: any): number {\n return body ? JSON.stringify(body).length : 0;\n}\n","import { NgModule, APP_INITIALIZER, ModuleWithProviders } from '@angular/core';\nimport { HTTP_INTERCEPTORS, } from '@angular/common/http';\nimport { HttpInterceptorService } from './http-interceptor.service';\nimport { RouteTracerService } from './route-tracer.service';\nimport { getNumberOrCall, logTraceapi, requirePostitiveValue, validate, HOST_PATERN, PATH_PATERN, getStringOrCall } from './util';\nimport { SessionManager } from './session-manager.service';\n\n\n\n@NgModule({})\nexport class NgCollectorModule {\n\n static forRoot(host: string, configuration: ApplicationConf): ModuleWithProviders<NgCollectorModule> {\n if (configuration?.enabled\n && validate(host, HOST_PATERN)\n && validate(getStringOrCall(configuration?.sessionApi), PATH_PATERN)\n && validate(getStringOrCall(configuration?.instanceApi), PATH_PATERN)) {\n\n\n if(!requirePostitiveValue(getNumberOrCall(configuration?.delay),\"delay\") ||\n !requirePostitiveValue(getNumberOrCall(configuration?.bufferMaxSize),\"bufferMaxSize\") ){\n logTraceapi('warn','invalid Configuration, Ng-collector is disabled');\n return {ngModule: NgCollectorModule}\n }\n\n return {\n ngModule: NgCollectorModule,\n providers: [\n RouteTracerService,\n SessionManager,\n { provide: APP_INITIALIZER, useFactory: initializeRoutingEvents, deps: [RouteTracerService], multi: true },\n { provide: HTTP_INTERCEPTORS, useClass: HttpInterceptorService, multi: true },\n { provide: 'config', useValue: configuration },\n { provide: 'host', useValue: host }\n ]\n };\n }\n return {\n ngModule: NgCollectorModule\n }\n\n }\n}\n\nexport function initializeRoutingEvents(routeTracerService: RouteTracerService) {\n return () => routeTracerService.initialize();\n}\n\nexport interface ApplicationConf {\n name?: string | (() => string);\n version?: string | (() => string);\n env?: string | (() => string);\n user?: string | (() => string);\n bufferMaxSize?: number | (() => number);\n delay?: number| (() => number);\n instanceApi?: string | (() => string);\n sessionApi?: string | (() => string);\n exclude?: RegExp[] | (() => RegExp[]);\n enabled?: boolean;\n}\n","/*\n * Public API Surface of inspect-ng-collector\n */\n\n\nexport * from './lib/ng-collector.module';\n\n ","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["SLASH","tap","i1.RouteTracerService"],"mappings":";;;;;;;;AAEA,IAAI,GAAG,GAAO,MAAM,CAAC;AACrB,IAAI,CAAC,GAAO,OAAO,CAAC;AAEb,MAAM,WAAW,GAAG,oCAAoC,CAAC;AACzD,MAAM,WAAW,GAAG,6BAA6B,CAAC;SAEzC,OAAO,GAAA;AACnB,IAAA,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,IAAK,CAAC;AAC9B,CAAC;SAEe,WAAW,CAAC,EAAS,EAAE,GAAG,IAAW,EAAA;AAEnD,IAAA,IAAG,GAAG,CAAC,UAAU,CAAC,EAAC;AACf,QAAA,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,UAAU,EAAC;YAC9B,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,CAAA;AAC7B,SAAA;AACF,KAAA;AACL,CAAC;AAEK,SAAU,mBAAmB,CAAC,OAAoB,EAAA;IACtD,IAAI,CAAC,GAAC,EAAE,CAAC;AACT,IAAA,IAAG,GAAG,CAAC,OAAO,CAAC,EAAC;AACb,QAAA,CAAC,GAAI,CAAI,CAAA,EAAA,OAAO,CAAC,IAAI,GAAG,CAAC;AAC1B,QAAA,IAAG,OAAO,CAAC,IAAI,IAAI,IAAI,EAAC;AACtB,YAAA,CAAC,IAAG,CAAI,CAAA,EAAA,OAAO,CAAC,IAAI,GAAG,CAAA;AACxB,SAAA;QACD,IAAG,OAAO,CAAC,QAAQ,EAAC;AAClB,YAAA,CAAC,IAAG,CAAI,CAAA,EAAA,OAAO,CAAC,QAAQ,IAAI,CAAA;AAC7B,SAAA;QACD,CAAC,IAAE,oBAAoB,CAAC,OAAO,CAAC,KAAK,EAAC,OAAO,CAAC,GAAI,CAAC,CAAC;AACpD,QAAA,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAG;AAC/B,YAAA,CAAC,IAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;AACjC,SAAC,CAAC,CAAA;AACH,KAAA;AACD,IAAA,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAiB,EAAA;AAChD,IAAA,IAAI,CAAC,GAAG,CAAA,MAAA,EAAS,IAAI,CAAC,MAAM,GAAG,CAAA;IAC/B,IAAG,IAAI,CAAC,QAAQ,EAAC;AACf,QAAA,CAAC,IAAG,CAAG,EAAA,IAAI,CAAC,QAAQ,KAAK,CAAA;AAC1B,KAAA;IAED,IAAG,IAAI,CAAC,IAAI,EAAC;AACX,QAAA,CAAC,IAAG,IAAI,CAAC,IAAI,CAAA;AACd,KAAA;AAED,IAAA,IAAG,IAAI,CAAC,IAAI,GAAG,CAAC,EAAC;AACf,QAAA,CAAC,IAAG,CAAI,CAAA,EAAA,IAAI,CAAC,IAAI,EAAE,CAAA;AACpB,KAAA;IAED,IAAG,IAAI,CAAC,IAAI,EAAC;AACX,QAAA,IAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAC;YAChD,CAAC,IAAG,GAAG,CAAA;AACR,SAAA;AACD,QAAA,CAAC,IAAG,IAAI,CAAC,IAAI,CAAC;AACf,KAAA;IAED,IAAG,IAAI,CAAC,KAAK,EAAC;AACZ,QAAA,CAAC,IAAG,IAAI,CAAC,KAAK,CAAA;AACf,KAAA;AAED,IAAA,IAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAC;QACtB,CAAC,IAAG,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,GAAG,CAAC;AACjC,KAAA;AAED,IAAA,IAAG,IAAI,CAAC,SAAS,EAAE,OAAO,EAAC;QACzB,CAAC,IAAG,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;AAClC,KAAA;AACD,IAAA,CAAC,IAAG,CAAO,IAAA,EAAA,IAAI,CAAC,MAAM,EAAE,CAAA;IACxB,CAAC,IAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9C,IAAA,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAY,EAAC,GAAU,EAAA;AACjD,IAAA,OAAQ,KAAK,IAAI,GAAG,GAAG,CAAA,IAAA,EAAQ,IAAI,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,CAAC,OAAO,EAAE,GAAE,IAAI,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,CAAC,OAAO,EAAG,CAAS,OAAA,CAAA,GAAG,EAAE,CAAC;AAC/G,CAAC;AAIe,SAAA,QAAQ,CAAC,CAAqB,EAAE,OAAe,EAAA;IAC5D,IAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAC;AACrB,QAAA,OAAO,IAAI,CAAC;AACd,KAAA;IAGD,WAAW,CAAC,MAAM,EAAC,YAAY,GAAG,CAAC,GAAG,YAAY,GAAG,OAAO,CAAC,CAAC;AAC9D,IAAA,OAAO,KAAK,CAAC;AAChB,CAAC;AAEe,SAAA,qBAAqB,CAAC,CAAqB,EAAE,IAAY,EAAA;IACvE,IAAG,CAAC,IAAI,SAAS,KAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;AAClC,QAAA,OAAO,IAAI,CAAC;AACb,KAAA;IAED,WAAW,CAAC,MAAM,EAAC,IAAI,GAAE,GAAG,GAAE,CAAC,GAAG,OAAO,CAAC,CAAC;AAC3C,IAAA,OAAO,KAAK,CAAC;AACf,CAAC;AAEK,SAAU,eAAe,CAAC,CAA2B,EAAA;AACzD,IAAA,OAAO,OAAO,CAAC,KAAK,UAAU,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC;AAEK,SAAU,eAAe,CAAC,CAA2B,EAAA;AACzD,IAAA,OAAO,OAAO,CAAC,KAAK,UAAU,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC;AAEK,SAAU,eAAe,CAAC,CAA+B,EAAA;AAC7D,IAAA,OAAO,OAAO,CAAC,KAAK,UAAU,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC;SAEe,aAAa,GAAA;IAC3B,IAAI;QACA,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAA;AACtD,QAAA,QAAQ,IAAI;YACR,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC3B,gBAAA,OAAO,MAAM,CAAC;YAClB,KAAK,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC1B,gBAAA,OAAO,OAAO,CAAC;YACnB,KAAK,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC7B,gBAAA,OAAO,QAAQ,CAAC;YACpB,KAAK,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;AAC9B,gBAAA,OAAO,SAAS,CAAC;YACrB,KAAK,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC7B,gBAAA,OAAO,QAAQ,CAAC;AACvB,SAAA;AACJ,KAAA;AACD,IAAA,OAAO,CAAC,EAAE;AACN,QAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACpB,KAAA;AACD,IAAA,OAAO,SAAS,CAAC;AAEnB,CAAC;SAEe,QAAQ,GAAA;IACtB,IAAI;QACA,IAAI,YAAY,EAAE,OAAO,CAAC;QAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAA;AACtD,QAAA,QAAQ,IAAI;AACR,YAAA,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;AAEvB,gBAAA,YAAY,GAAG,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACnD,gBAAA,OAAO,GAAG,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;gBACrD,OAAO,CAAA,QAAA,EAAW,OAAO,CAAA,CAAE,CAAC;AAChC,YAAA,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;AACrB,gBAAA,OAAO,OAAO,CAAC;AAEnB,YAAA,MAAM,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;AACzB,gBAAA,YAAY,GAAG,8BAA8B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1D,gBAAA,OAAO,GAAG,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;gBACrD,OAAO,CAAA,MAAA,EAAS,OAAO,CAAA,CAAE,CAAA;AAChC,SAAA;AACJ,KAAA;AACD,IAAA,OAAO,CAAC,EAAE;AACN,QAAA,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACpB,KAAA;AACD,IAAA,OAAO,SAAS,CAAC;AACnB;;AC1JA,MAAMA,OAAK,GAAG,GAAG,CAAC;MAGL,cAAc,CAAA;AAcvB,IAAA,WAAA,GAAA;QANA,IAAY,CAAA,YAAA,GAAiB,EAAE,CAAC;QAChC,IAAmB,CAAA,mBAAA,GAAW,CAAC,CAAA;QAC/B,IAAuB,CAAA,uBAAA,GAAW,CAAC,CAAC;QAEpC,IAAmB,CAAA,mBAAA,GAAU,IAAI,CAAC;QAClC,IAAuB,CAAA,uBAAA,GAAY,IAAI,CAAC;KAGvC;IAGD,UAAU,CAAC,MAAU,EAAE,IAAW,EAAA;AAC9B,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAC,eAAe,CAAC,MAAM,CAAC,UAAU,CAAE,CAAC,CAAC;AAClF,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAC,eAAe,CAAC,MAAM,CAAC,WAAW,CAAE,CAAC,CAAC;QACrF,IAAI,CAAC,aAAa,GAAI,eAAe,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC;QACpE,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;QACpD,IAAI,CAAC,mBAAmB,GAAG;AACvB,YAAA,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC;AAClC,YAAA,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC;AACxC,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,GAAG,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC;YAChC,EAAE,EAAE,QAAQ,EAAE;YACd,EAAE,EAAE,aAAa,EAAE;AACnB,YAAA,IAAI,EAAE,SAAS;AACf,YAAA,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,OAAO,EAAE;AAClB,YAAA,SAAS,EAAE,4BAA4B;SAC1C,CAAA;QAED,IAAI,CAAC,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AACjD,aAAA,IAAI,CAAC,GAAG,CAAC,MAAI;YACV,IAAG,IAAI,CAAC,mBAAmB,EAAC;gBACxB,IAAI,CAAC,YAAY,EAAE,CAAC;AACvB,aAAA;AAAA,SAAC,CAAC,CAAC;AACP,aAAA,SAAS,EAAE,CAAC;KAChB;AAED,IAAA,WAAW,CAAC,QAAoB,EAAA;AAC5B,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,WAAW,CAAC,KAAK,EAAC,+CAA+C,GAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;KAChG;IAGD,YAAY,GAAA;AACR,QAAA,IAAG,IAAI,CAAC,YAAY,CAAC,MAAM,GAAE,CAAC,EAAC;YAC3B,IAAI,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAAC,CAAC,EAAc,KAAG;AACrD,gBAAA,IAAG,EAAE,EAAE;AACH,oBAAA,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;oBACjC,IAAI,QAAQ,GAAkB,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;AACrD,oBAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC5C,oBAAA,WAAW,CAAC,KAAK,EAAC,CAAA,2BAAA,EAA8B,EAAE,IAAI,CAAC,mBAAmB,CAAA,eAAA,EAAkB,QAAQ,CAAC,MAAM,CAAA,CAAE,CAAC,CAAA;AAE9G,oBAAA,MAAM,cAAc,GAAG;AACnB,wBAAA,MAAM,EAAE,KAAK;AACb,wBAAA,OAAO,EAAE;AACL,4BAAA,cAAc,EAAE,kBAAkB;AAClC,4BAAA,6BAA6B,EAAE,GAAG;AACrC,yBAAA;AACD,wBAAA,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;qBACjC,CAAC;AAEF,oBAAA,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC;yBACxC,IAAI,CAAC,IAAI,IAAE;wBACR,IAAG,IAAI,CAAC,EAAE,EAAC;4BACP,WAAW,CAAC,KAAK,EAAC,6DAA6D,GAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;AACzG,4BAAA,IAAI,CAAC,mBAAmB,GAAE,CAAC,CAAC;AAC/B,yBAAA;AAAI,6BAAA;4BACD,WAAW,CAAC,MAAM,EAAC,CAAsD,mDAAA,EAAA,IAAI,CAAC,mBAAmB,CAAE,CAAA,CAAC,CAAA;AACpG,4BAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;AAClC,yBAAA;AACL,qBAAC,CAAC;yBACD,KAAK,CAAC,KAAK,IAAG;wBACX,WAAW,CAAC,MAAM,EAAC,CAAsD,mDAAA,EAAA,IAAI,CAAC,mBAAmB,CAAE,CAAA,CAAC,CAAA;AACpG,wBAAA,WAAW,CAAC,MAAM,EAAC,KAAK,CAAC,CAAA;AACzB,wBAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;AACnC,qBAAC,CAAC,CAAC,OAAO,CAAE,MAAI;AACZ,wBAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;AACpC,qBAAC,CAAC,CAAA;AAEL,iBAAA;AAAK,qBAAA;oBACF,WAAW,CAAC,MAAM,EAAC,CAAA,+DAAA,EAAkE,IAAI,CAAC,mBAAmB,CAAE,CAAA,CAAC,CAAC;AACpH,iBAAA;AACL,aAAC,CAAC,CAAA;AACL,SAAA;KACJ;AAED,IAAA,eAAe,CAAC,QAAuB,EAAA;QACnC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC;QACvC,IAAG,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE;YAC9C,IAAI,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;AACzD,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAClE,YAAA,WAAW,CAAC,KAAK,EAAC,6GAA6G,GAAC,IAAI,CAAC,CAAA;AACxI,SAAA;KACJ;IAED,qBAAqB,GAAA;QACjB,IAAG,IAAI,CAAC,QAAQ,EAAC;YACb,OAAO,IAAI,CAAC,QAAQ,CAAC;AACxB,SAAA;QACD,IAAG,IAAI,CAAC,uBAAuB,EAAC;AAC5B,YAAA,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;AACrC,YAAA,MAAM,cAAc,GAAG;AACnB,gBAAA,MAAM,EAAE,MAAM;AACd,gBAAA,OAAO,EAAE;AACL,oBAAA,cAAc,EAAE,kBAAkB;oBAClC,6BAA6B,EAAE,GAAG;AACrC,iBAAA;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC;aACjD,CAAC;YACF,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAE,KAAK,CAAC,IAAI,CAAC,cAAc,EAAC,cAAc,CAAC;iBACrD,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,IAAE;gBACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,eAAe,CAAS,EAAE,CAAC,CAAC;AAChD,gBAAA,IAAI,CAAC,aAAa,GAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAC,EAAE,CAAC,CAAC;AACzD,gBAAA,IAAI,CAAC,mBAAmB,GAAC,CAAC,CAAC;AAC3B,gBAAA,WAAW,CAAC,KAAK,EAAC,yCAAyC,CAAC,CAAC;gBAC7D,OAAO,EAAE,CAAC;AACd,aAAC,CAAC,GAAG,IAAI,CAAC;iBACT,KAAK,CAAC,GAAG,IAAG;AACT,gBAAA,WAAW,CAAC,MAAM,EAAC,GAAG,CAAC,CAAA;AACvB,gBAAA,OAAO,IAAI,CAAC;AAChB,aAAC,CAAC,CAAC,OAAO,CAAC,MAAI;AACX,gBAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;aACvC,CAAC,CAAC,CAAA;AACN,SAAA;AACD,QAAA,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;KACnB;IAED,cAAc,CAAC,IAAW,EAAE,IAAW,EAAA;QACnC,OAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAC,IAAI,CAAC,CAAC;KAChC;IAED,aAAa,CAAC,IAAW,EAAE,IAAW,EAAA;QACnC,OAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAC,IAAI,CAAC,CAAC;KAChC;IAED,KAAK,CAAE,IAAW,EAAG,IAAW,EAAA;AAC5B,QAAA,OAAO,IAAI,CAAC,QAAQ,CAACA,OAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAACA,OAAK,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,EAAC,IAAI,CAAC,CAAC,IAAI,CAACA,OAAK,CAAC,CAAC;KACjG;IAED,WAAW,GAAA;QACR,IAAG,IAAI,CAAC,sBAAsB,EAAC;AAC3B,YAAA,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC;AAC7C,SAAA;KACJ;+GAxJQ,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAd,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cADD,MAAM,EAAA,CAAA,CAAA,EAAA;;4FACnB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;;ACClC,MAAM,KAAK,GAAG,GAAG,CAAC;MAEL,kBAAkB,CAAA;AAQ3B,IAAA,WAAA,CAAoB,MAAc,EACZ,MAAuB,EACzB,IAAY,EAAA;QAFZ,IAAM,CAAA,MAAA,GAAN,MAAM,CAAQ;AAS1B,QAAA,IAAA,CAAA,mBAAmB,GAAG,CAAC,KAAwB,KAAU;AAC7D,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,GAAG,OAAO,EAAE,CAAC;YACpC,IAAG,IAAI,CAAC,WAAY,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,EAAC;gBACrE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACrD,gBAAA,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;AACtC,aAAA;AACL,SAAC,CAAA;AAZG,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,MAAM,EAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;KAC5C;IAUD,WAAW,GAAA;QACP,MAAM,CAAC,mBAAmB,CAAC,cAAc,EAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;KACvE;IAED,UAAU,GAAA;AACN,QAAA,WAAW,CAAC,KAAK,EAAC,YAAY,CAAC,CAAC;QAChC,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,IAAG;YACjC,IAAI,KAAK,YAAY,eAAe,EAAE;AAClC,gBAAA,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;gBACtB,IAAI,IAAI,CAAC,cAAc,EAAE;AACrB,oBAAA,IAAI,CAAC,cAAc,CAAC,GAAG,GAAG,OAAO,EAAE,CAAC;oBACpC,IAAG,IAAI,CAAC,WAAY,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,EAAC;wBACrE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AACxD,qBAAA;oBACD,WAAW,CAAC,KAAK,EAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;AAC/D,iBAAA;gBACD,IAAI,CAAC,cAAc,GAAG;AAClB,oBAAA,OAAO,EAAE,MAAM;oBACf,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,oBAAA,KAAK,EAAE,GAAG;AACV,oBAAA,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,KAAK,CAAC,GAAG;AACnB,oBAAA,YAAY,EAAE,EAAE;iBACnB,CAAA;AACJ,aAAA;YACD,IAAI,KAAK,YAAY,aAAa,EAAE;gBAChC,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAC1C,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;AAE/C,aAAA;AACL,SAAC,CAAC,CAAA;KAEL;IAED,iBAAiB,GAAA;QACb,OAAO,IAAI,CAAC,cAAc,CAAC;KAC9B;+GA9DQ,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EASf,QAAQ,EAAA,EAAA,EAAA,KAAA,EACR,MAAM,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAVT,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,cADL,MAAM,EAAA,CAAA,CAAA,EAAA;;4FACnB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;0BAUzB,MAAM;2BAAC,QAAQ,CAAA;;0BACf,MAAM;2BAAC,MAAM,CAAA;;;MCXT,sBAAsB,CAAA;AAE/B,IAAA,WAAA,CAAoB,mBAAuC,EAAA;QAAvC,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB,CAAoB;KAAK;IAEhE,SAAS,CAAC,GAAqB,EAAE,IAAiB,EAAA;AAC9C,QAAA,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC;AACxB,QAAA,IAAI,MAAc,EAAE,YAAY,GAAQ,EAAE,EAAE,SAAwB,CAAC;AACrE,QAAA,IAAI,EAAqB,CAAC;AAC1B,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAACC,KAAG,CAC5B,CAAC,KAAU,KAAI;YACX,IAAI,KAAK,YAAY,YAAY,EAAE;AAC/B,gBAAA,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;AACvB,gBAAA,YAAY,GAAG,KAAK,CAAC,IAAI,CAAA;AACzB,gBAAA,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAChC,aAAA;SACJ,EACD,KAAK,IAAG;AACJ,YAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;AAClB,YAAA,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC7B,YAAA,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;AACvB,YAAA,SAAS,GAAG;AACR,gBAAA,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK;AACvB,gBAAA,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;aAC/B,CAAA;AACL,SAAC,CACJ,EAAE,QAAQ,CAAC,MAAK;YAEb,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACtC,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;AAC3D,gBAAA,EAAE,EAAE,EAAE;gBACN,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACnC,gBAAA,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;AAC5B,gBAAA,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI;gBACf,IAAI,EAAE,GAAG,CAAC,QAAQ;AAClB,gBAAA,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC7C,WAAW,EAAE,GAAG,CAAC,YAAY;AAC7B,gBAAA,UAAU,EAAE,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC;gBAC1C,MAAM,EAAE,CAAC,MAAM;AACf,gBAAA,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC;AAChC,gBAAA,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;AAC5B,gBAAA,KAAK,EAAE,KAAK;gBACZ,GAAG,EAAE,OAAO,EAAE;AACd,gBAAA,SAAS,EAAE,SAAS;AACvB,aAAA,CAAC,CAAC;SACN,CAAC,CAAC,CAAC;KACP;+GA9CQ,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cADT,MAAM,EAAA,CAAA,CAAA,EAAA;;4FACnB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBADlC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;;AAkDlC,SAAS,MAAM,CAAC,GAAW,EAAA;IACvB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AACzC,IAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC/B,IAAA,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAA;IAC9B,MAAM,SAAS,GAAG,MAAM,CAAC;IACzB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;AACtC,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAY,EAAA;AACnC,IAAA,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;AAC/B,UAAE,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;UACpD,SAAS,CAAC;AACpB,CAAC;AAED,SAAS,QAAQ,CAAC,OAAW,EAAA;AACzB,IAAA,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;AAC3B,UAAE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;UACxB,SAAS,CAAC;AACpB,CAAC;AAED,SAAS,MAAM,CAAC,IAAS,EAAA;AACrB,IAAA,OAAO,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AAClD;;MCzEa,iBAAiB,CAAA;AAE5B,IAAA,OAAO,OAAO,CAAC,IAAY,EAAE,aAA8B,EAAA;QACzD,IAAI,aAAa,EAAE,OAAO;AACnB,eAAA,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;eAC3B,QAAQ,CAAC,eAAe,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,WAAW,CAAC;eACjE,QAAQ,CAAC,eAAe,CAAC,aAAa,EAAE,WAAW,CAAC,EAAE,WAAW,CAAC,EAAE;YAGxE,IAAG,CAAC,qBAAqB,CAAC,eAAe,CAAC,aAAa,EAAE,KAAK,CAAC,EAAC,OAAO,CAAC;gBACrE,CAAC,qBAAqB,CAAC,eAAe,CAAC,aAAa,EAAE,aAAa,CAAC,EAAC,eAAe,CAAC,EAAE;AACrF,gBAAA,WAAW,CAAC,MAAM,EAAC,iDAAiD,CAAC,CAAC;AACxE,gBAAA,OAAO,EAAC,QAAQ,EAAE,iBAAiB,EAAC,CAAA;AACtC,aAAA;YAEF,OAAO;AACL,gBAAA,QAAQ,EAAE,iBAAiB;AAC3B,gBAAA,SAAS,EAAE;oBACT,kBAAkB;oBAClB,cAAc;AACd,oBAAA,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;oBAC1G,EAAE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,sBAAsB,EAAE,KAAK,EAAE,IAAI,EAAE;AAC7E,oBAAA,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE;AAC9C,oBAAA,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;AACpC,iBAAA;aACF,CAAC;AACH,SAAA;QACD,OAAO;AACL,YAAA,QAAQ,EAAE,iBAAiB;SAC5B,CAAA;KAEF;+GA/BU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;gHAAjB,iBAAiB,EAAA,CAAA,CAAA,EAAA;gHAAjB,iBAAiB,EAAA,CAAA,CAAA,EAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,QAAQ;mBAAC,EAAE,CAAA;;AAmCN,SAAU,uBAAuB,CAAC,kBAAsC,EAAA;AAC5E,IAAA,OAAO,MAAM,kBAAkB,CAAC,UAAU,EAAE,CAAC;AAC/C;;AC9CA;;AAEG;;ACFH;;AAEG;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oneteme/inspect-ng-collector",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.2",
|
|
4
4
|
"description": "inspect ng collector",
|
|
5
5
|
"homepage": "https://github.com/oneteme/inspect-ng-collector",
|
|
6
6
|
"bugs": "https://github.com/oneteme/inspect-ng-collector/issues",
|
|
@@ -9,8 +9,9 @@
|
|
|
9
9
|
"url": "https://github.com/oneteme/inspect-ng-collector.git"
|
|
10
10
|
},
|
|
11
11
|
"peerDependencies": {
|
|
12
|
-
"@angular/common": "^
|
|
13
|
-
"@angular/core": "^
|
|
12
|
+
"@angular/common": "^16.2.8",
|
|
13
|
+
"@angular/core": "^16.2.8",
|
|
14
|
+
"@angular/router": "^16.2.8"
|
|
14
15
|
},
|
|
15
16
|
"dependencies": {
|
|
16
17
|
"tslib": "^2.3.0"
|