@gibraltarsoftware/loupe-angular
Version:
Loupe Agent for Angular
27 lines • 4.83 kB
JavaScript
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "./loupe-angular.service";
// http interceptor to automatically add the Loupe Session and Agent IDs to HTTP requests, to aid in request correlation
export class LoupeHeaderHttpConfigInterceptor {
constructor(loupeService) {
this.loupeService = loupeService;
this.loupeAgentSessionIdHeader = loupeService.loupe.loupeAgentSessionIdHeader;
this.loupeSessionIdHeader = loupeService.loupe.loupeSessionIdHeader;
}
intercept(request, next) {
// add the loupe headers to the request
request = request.clone({
headers: request.headers.set(this.loupeAgentSessionIdHeader, this.loupeService.loupe.agentSessionId)
});
request = request.clone({
headers: request.headers.set(this.loupeSessionIdHeader, this.loupeService.loupe.sessionId)
});
return next.handle(request);
}
}
LoupeHeaderHttpConfigInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.9", ngImport: i0, type: LoupeHeaderHttpConfigInterceptor, deps: [{ token: i1.LoupeService }], target: i0.ɵɵFactoryTarget.Injectable });
LoupeHeaderHttpConfigInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.9", ngImport: i0, type: LoupeHeaderHttpConfigInterceptor });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.9", ngImport: i0, type: LoupeHeaderHttpConfigInterceptor, decorators: [{
type: Injectable
}], ctorParameters: function () { return [{ type: i1.LoupeService }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG91cGUtYW5ndWxhci5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xvdXBlLWFuZ3VsYXIvc3JjL2xpYi9sb3VwZS1hbmd1bGFyLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVkzQyx3SEFBd0g7QUFHeEgsTUFBTSxPQUFPLGdDQUFnQztJQUl6QyxZQUFxQixZQUEwQjtRQUExQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMzQyxJQUFJLENBQUMseUJBQXlCLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQztRQUM5RSxJQUFJLENBQUMsb0JBQW9CLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQztJQUN4RSxDQUFDO0lBRUQsU0FBUyxDQUFDLE9BQXlCLEVBQUUsSUFBaUI7UUFDbEQsdUNBQXVDO1FBQ3ZDLE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3BCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDO1NBQ3ZHLENBQUMsQ0FBQztRQUNILE9BQU8sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3BCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO1NBQzdGLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoQyxDQUFDOzs2SEFuQlEsZ0NBQWdDO2lJQUFoQyxnQ0FBZ0M7MkZBQWhDLGdDQUFnQztrQkFENUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICAgIEh0dHBJbnRlcmNlcHRvcixcclxuICAgIEh0dHBSZXF1ZXN0LFxyXG4gICAgSHR0cEhhbmRsZXIsXHJcbiAgICBIdHRwRXZlbnQsXHJcbiAgICBIdHRwUmVzcG9uc2VcclxufSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IExvdXBlU2VydmljZSB9IGZyb20gJy4vbG91cGUtYW5ndWxhci5zZXJ2aWNlJztcclxuXHJcbi8vIGh0dHAgaW50ZXJjZXB0b3IgdG8gYXV0b21hdGljYWxseSBhZGQgdGhlIExvdXBlIFNlc3Npb24gYW5kIEFnZW50IElEcyB0byBIVFRQIHJlcXVlc3RzLCB0byBhaWQgaW4gcmVxdWVzdCBjb3JyZWxhdGlvblxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgTG91cGVIZWFkZXJIdHRwQ29uZmlnSW50ZXJjZXB0b3IgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb3VwZUFnZW50U2Vzc2lvbklkSGVhZGVyOiBzdHJpbmc7XHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvdXBlU2Vzc2lvbklkSGVhZGVyOiBzdHJpbmc7XHJcblxyXG4gICAgY29uc3RydWN0b3IocmVhZG9ubHkgbG91cGVTZXJ2aWNlOiBMb3VwZVNlcnZpY2UpIHtcclxuICAgICAgICB0aGlzLmxvdXBlQWdlbnRTZXNzaW9uSWRIZWFkZXIgPSBsb3VwZVNlcnZpY2UubG91cGUubG91cGVBZ2VudFNlc3Npb25JZEhlYWRlcjtcclxuICAgICAgICB0aGlzLmxvdXBlU2Vzc2lvbklkSGVhZGVyID0gbG91cGVTZXJ2aWNlLmxvdXBlLmxvdXBlU2Vzc2lvbklkSGVhZGVyO1xyXG4gICAgfVxyXG5cclxuICAgIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuICAgICAgICAvLyBhZGQgdGhlIGxvdXBlIGhlYWRlcnMgdG8gdGhlIHJlcXVlc3RcclxuICAgICAgICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IHJlcXVlc3QuaGVhZGVycy5zZXQodGhpcy5sb3VwZUFnZW50U2Vzc2lvbklkSGVhZGVyLCB0aGlzLmxvdXBlU2VydmljZS5sb3VwZS5hZ2VudFNlc3Npb25JZClcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IHJlcXVlc3QuaGVhZGVycy5zZXQodGhpcy5sb3VwZVNlc3Npb25JZEhlYWRlciwgdGhpcy5sb3VwZVNlcnZpY2UubG91cGUuc2Vzc2lvbklkKVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCk7XHJcbiAgICB9XHJcbn0iXX0=