UNPKG

ngx-logger

Version:

[![npm version](https://badge.fury.io/js/ngx-logger.svg)](https://www.npmjs.com/package/ngx-logger)

45 lines 6.11 kB
import { Injectable, Optional } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; export class NGXLoggerMetadataService { constructor(datePipe) { this.datePipe = datePipe; } computeTimestamp(config) { const defaultTimestamp = () => new Date().toISOString(); if (config.timestampFormat) { if (!this.datePipe) { console.error('NGXLogger : Can\'t use timeStampFormat because DatePipe is not provided. You need to provide DatePipe'); return defaultTimestamp(); } else { return this.datePipe.transform(new Date(), config.timestampFormat); } } return defaultTimestamp(); } getMetadata(level, config, message, additional) { const metadata = { level: level, additional: additional, }; // The user can send a function // This is useful in order to compute string concatenation only when the log will actually be written if (message && typeof message === 'function') { metadata.message = message(); } else { metadata.message = message; } metadata.timestamp = this.computeTimestamp(config); return metadata; } } /** @nocollapse */ /** @nocollapse */ NGXLoggerMetadataService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NGXLoggerMetadataService, deps: [{ token: i1.DatePipe, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); /** @nocollapse */ /** @nocollapse */ NGXLoggerMetadataService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NGXLoggerMetadataService }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NGXLoggerMetadataService, decorators: [{ type: Injectable }], ctorParameters: function () { return [{ type: i1.DatePipe, decorators: [{ type: Optional }] }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbWV0YWRhdGEvbWV0YWRhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3JELE1BQU0sT0FBTyx3QkFBd0I7SUFFbkMsWUFDaUMsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUMvQyxDQUFDO0lBRUssZ0JBQWdCLENBQUMsTUFBd0I7UUFDakQsTUFBTSxnQkFBZ0IsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRXhELElBQUksTUFBTSxDQUFDLGVBQWUsRUFBRTtZQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDbEIsT0FBTyxDQUFDLEtBQUssQ0FBQyx1R0FBdUcsQ0FBQyxDQUFDO2dCQUN2SCxPQUFPLGdCQUFnQixFQUFFLENBQUM7YUFDM0I7aUJBQU07Z0JBQ0wsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQzthQUNwRTtTQUNGO1FBRUQsT0FBTyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTSxXQUFXLENBQ2hCLEtBQXFCLEVBQ3JCLE1BQXdCLEVBQ3hCLE9BQTJCLEVBQzNCLFVBQWtCO1FBRWxCLE1BQU0sUUFBUSxHQUF1QjtZQUNuQyxLQUFLLEVBQUUsS0FBSztZQUNaLFVBQVUsRUFBRSxVQUFVO1NBQ3ZCLENBQUM7UUFFRiwrQkFBK0I7UUFDL0IscUdBQXFHO1FBQ3JHLElBQUksT0FBTyxJQUFJLE9BQU8sT0FBTyxLQUFLLFVBQVUsRUFBRTtZQUM1QyxRQUFRLENBQUMsT0FBTyxHQUFHLE9BQU8sRUFBRSxDQUFDO1NBQzlCO2FBQU07WUFDTCxRQUFRLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztTQUM1QjtRQUVELFFBQVEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRW5ELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7OzJKQTNDVSx3QkFBd0I7K0pBQXhCLHdCQUF3QjsyRkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVOzswQkFJTixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ3hMb2dnZXJMZXZlbCB9IGZyb20gJy4uL3R5cGVzL2xvZ2dlci1sZXZlbC5lbnVtJztcclxuaW1wb3J0IHsgSU5HWExvZ2dlckNvbmZpZyB9IGZyb20gJy4uL2NvbmZpZy9pY29uZmlnJztcclxuaW1wb3J0IHsgSU5HWExvZ2dlck1ldGFkYXRhIH0gZnJvbSAnLi9pbWV0YWRhdGEnO1xyXG5pbXBvcnQgeyBJTkdYTG9nZ2VyTWV0YWRhdGFTZXJ2aWNlIH0gZnJvbSAnLi9pbWV0YWRhdGEuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBOR1hMb2dnZXJNZXRhZGF0YVNlcnZpY2UgaW1wbGVtZW50cyBJTkdYTG9nZ2VyTWV0YWRhdGFTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgcmVhZG9ubHkgZGF0ZVBpcGU6IERhdGVQaXBlLFxyXG4gICkgeyB9XHJcblxyXG4gIHByb3RlY3RlZCBjb21wdXRlVGltZXN0YW1wKGNvbmZpZzogSU5HWExvZ2dlckNvbmZpZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBkZWZhdWx0VGltZXN0YW1wID0gKCkgPT4gbmV3IERhdGUoKS50b0lTT1N0cmluZygpO1xyXG5cclxuICAgIGlmIChjb25maWcudGltZXN0YW1wRm9ybWF0KSB7XHJcbiAgICAgIGlmICghdGhpcy5kYXRlUGlwZSkge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ05HWExvZ2dlciA6IENhblxcJ3QgdXNlIHRpbWVTdGFtcEZvcm1hdCBiZWNhdXNlIERhdGVQaXBlIGlzIG5vdCBwcm92aWRlZC4gWW91IG5lZWQgdG8gcHJvdmlkZSBEYXRlUGlwZScpO1xyXG4gICAgICAgIHJldHVybiBkZWZhdWx0VGltZXN0YW1wKCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKG5ldyBEYXRlKCksIGNvbmZpZy50aW1lc3RhbXBGb3JtYXQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGRlZmF1bHRUaW1lc3RhbXAoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRNZXRhZGF0YShcclxuICAgIGxldmVsOiBOZ3hMb2dnZXJMZXZlbCxcclxuICAgIGNvbmZpZzogSU5HWExvZ2dlckNvbmZpZyxcclxuICAgIG1lc3NhZ2U/OiBhbnkgfCAoKCkgPT4gYW55KSxcclxuICAgIGFkZGl0aW9uYWw/OiBhbnlbXSxcclxuICApOiBJTkdYTG9nZ2VyTWV0YWRhdGEge1xyXG4gICAgY29uc3QgbWV0YWRhdGE6IElOR1hMb2dnZXJNZXRhZGF0YSA9IHtcclxuICAgICAgbGV2ZWw6IGxldmVsLFxyXG4gICAgICBhZGRpdGlvbmFsOiBhZGRpdGlvbmFsLFxyXG4gICAgfTtcclxuXHJcbiAgICAvLyBUaGUgdXNlciBjYW4gc2VuZCBhIGZ1bmN0aW9uXHJcbiAgICAvLyBUaGlzIGlzIHVzZWZ1bCBpbiBvcmRlciB0byBjb21wdXRlIHN0cmluZyBjb25jYXRlbmF0aW9uIG9ubHkgd2hlbiB0aGUgbG9nIHdpbGwgYWN0dWFsbHkgYmUgd3JpdHRlblxyXG4gICAgaWYgKG1lc3NhZ2UgJiYgdHlwZW9mIG1lc3NhZ2UgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgbWV0YWRhdGEubWVzc2FnZSA9IG1lc3NhZ2UoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG1ldGFkYXRhLm1lc3NhZ2UgPSBtZXNzYWdlO1xyXG4gICAgfVxyXG5cclxuICAgIG1ldGFkYXRhLnRpbWVzdGFtcCA9IHRoaXMuY29tcHV0ZVRpbWVzdGFtcChjb25maWcpO1xyXG5cclxuICAgIHJldHVybiBtZXRhZGF0YTtcclxuICB9XHJcbn1cclxuIl19