UNPKG

@ngworker/lumberjack

Version:

Lumberjack is a versatile Angular logging library, specifically designed to be extended and customized

58 lines 6.82 kB
import { inject, Injectable } from '@angular/core'; import { LumberjackTimeService } from '../time/lumberjack-time.service'; import { LumberjackLogBuilder } from './lumberjack-log.builder'; import * as i0 from "@angular/core"; /** * Factory for a log builder with the specified log level and message. * * Use this to create a log before passing it to `LumberjackService`. * * Wraps `LumberjackLogBuilder`, supports dependency injection, and allows reuse * so that we don't have to new up log builders and pass `LumberjackTimeService` * to them. */ export class LumberjackLogFactory { #time = inject(LumberjackTimeService); /** * Create a log builder for a critical log with the specified message. */ createCriticalLog(message) { return new LumberjackLogBuilder(this.#time, 'critical', message); } /** * Create a log builder for a debug log with the specified message. */ createDebugLog(message) { return new LumberjackLogBuilder(this.#time, 'debug', message); } /** * Create a log builder for an error log with the specified message. */ createErrorLog(message) { return new LumberjackLogBuilder(this.#time, 'error', message); } /** * Create a log builder for an info log with the specified message. */ createInfoLog(message) { return new LumberjackLogBuilder(this.#time, 'info', message); } /** * Create a log builder for a trace log with the specified message. */ createTraceLog(message) { return new LumberjackLogBuilder(this.#time, 'trace', message); } /** * Create a log builder for a warning log with the specified message. */ createWarningLog(message) { return new LumberjackLogBuilder(this.#time, 'warn', message); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: LumberjackLogFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: LumberjackLogFactory }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImport: i0, type: LumberjackLogFactory, decorators: [{ type: Injectable }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHVtYmVyamFjay1sb2ctZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL25nd29ya2VyL2x1bWJlcmphY2svc3JjL2xpYi9sb2dnaW5nL2x1bWJlcmphY2stbG9nLWZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFeEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBRWhFOzs7Ozs7OztHQVFHO0FBRUgsTUFBTSxPQUFPLG9CQUFvQjtJQUN0QixLQUFLLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFL0M7O09BRUc7SUFDSCxpQkFBaUIsQ0FBQyxPQUFlO1FBQy9CLE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxjQUFjLENBQUMsT0FBZTtRQUM1QixPQUFPLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYyxDQUFDLE9BQWU7UUFDNUIsT0FBTyxJQUFJLG9CQUFvQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRDs7T0FFRztJQUNILGFBQWEsQ0FBQyxPQUFlO1FBQzNCLE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxjQUFjLENBQUMsT0FBZTtRQUM1QixPQUFPLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZ0JBQWdCLENBQUMsT0FBZTtRQUM5QixPQUFPLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDL0QsQ0FBQzt1R0EzQ1Usb0JBQW9COzJHQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRGhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTHVtYmVyamFja0xvZ1BheWxvYWQgfSBmcm9tICcuLi9sb2dzL2x1bWJlcmphY2stbG9nLXBheWxvYWQnO1xuaW1wb3J0IHsgTHVtYmVyamFja1RpbWVTZXJ2aWNlIH0gZnJvbSAnLi4vdGltZS9sdW1iZXJqYWNrLXRpbWUuc2VydmljZSc7XG5cbmltcG9ydCB7IEx1bWJlcmphY2tMb2dCdWlsZGVyIH0gZnJvbSAnLi9sdW1iZXJqYWNrLWxvZy5idWlsZGVyJztcblxuLyoqXG4gKiBGYWN0b3J5IGZvciBhIGxvZyBidWlsZGVyIHdpdGggdGhlIHNwZWNpZmllZCBsb2cgbGV2ZWwgYW5kIG1lc3NhZ2UuXG4gKlxuICogVXNlIHRoaXMgdG8gY3JlYXRlIGEgbG9nIGJlZm9yZSBwYXNzaW5nIGl0IHRvIGBMdW1iZXJqYWNrU2VydmljZWAuXG4gKlxuICogV3JhcHMgYEx1bWJlcmphY2tMb2dCdWlsZGVyYCwgc3VwcG9ydHMgZGVwZW5kZW5jeSBpbmplY3Rpb24sIGFuZCBhbGxvd3MgcmV1c2VcbiAqIHNvIHRoYXQgd2UgZG9uJ3QgaGF2ZSB0byBuZXcgdXAgbG9nIGJ1aWxkZXJzIGFuZCBwYXNzIGBMdW1iZXJqYWNrVGltZVNlcnZpY2VgXG4gKiB0byB0aGVtLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTHVtYmVyamFja0xvZ0ZhY3Rvcnk8VFBheWxvYWQgZXh0ZW5kcyBMdW1iZXJqYWNrTG9nUGF5bG9hZCB8IHZvaWQgPSB2b2lkPiB7XG4gIHJlYWRvbmx5ICN0aW1lID0gaW5qZWN0KEx1bWJlcmphY2tUaW1lU2VydmljZSk7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGxvZyBidWlsZGVyIGZvciBhIGNyaXRpY2FsIGxvZyB3aXRoIHRoZSBzcGVjaWZpZWQgbWVzc2FnZS5cbiAgICovXG4gIGNyZWF0ZUNyaXRpY2FsTG9nKG1lc3NhZ2U6IHN0cmluZyk6IEx1bWJlcmphY2tMb2dCdWlsZGVyPFRQYXlsb2FkPiB7XG4gICAgcmV0dXJuIG5ldyBMdW1iZXJqYWNrTG9nQnVpbGRlcih0aGlzLiN0aW1lLCAnY3JpdGljYWwnLCBtZXNzYWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBsb2cgYnVpbGRlciBmb3IgYSBkZWJ1ZyBsb2cgd2l0aCB0aGUgc3BlY2lmaWVkIG1lc3NhZ2UuXG4gICAqL1xuICBjcmVhdGVEZWJ1Z0xvZyhtZXNzYWdlOiBzdHJpbmcpOiBMdW1iZXJqYWNrTG9nQnVpbGRlcjxUUGF5bG9hZD4ge1xuICAgIHJldHVybiBuZXcgTHVtYmVyamFja0xvZ0J1aWxkZXIodGhpcy4jdGltZSwgJ2RlYnVnJywgbWVzc2FnZSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgbG9nIGJ1aWxkZXIgZm9yIGFuIGVycm9yIGxvZyB3aXRoIHRoZSBzcGVjaWZpZWQgbWVzc2FnZS5cbiAgICovXG4gIGNyZWF0ZUVycm9yTG9nKG1lc3NhZ2U6IHN0cmluZyk6IEx1bWJlcmphY2tMb2dCdWlsZGVyPFRQYXlsb2FkPiB7XG4gICAgcmV0dXJuIG5ldyBMdW1iZXJqYWNrTG9nQnVpbGRlcih0aGlzLiN0aW1lLCAnZXJyb3InLCBtZXNzYWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBsb2cgYnVpbGRlciBmb3IgYW4gaW5mbyBsb2cgd2l0aCB0aGUgc3BlY2lmaWVkIG1lc3NhZ2UuXG4gICAqL1xuICBjcmVhdGVJbmZvTG9nKG1lc3NhZ2U6IHN0cmluZyk6IEx1bWJlcmphY2tMb2dCdWlsZGVyPFRQYXlsb2FkPiB7XG4gICAgcmV0dXJuIG5ldyBMdW1iZXJqYWNrTG9nQnVpbGRlcih0aGlzLiN0aW1lLCAnaW5mbycsIG1lc3NhZ2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGxvZyBidWlsZGVyIGZvciBhIHRyYWNlIGxvZyB3aXRoIHRoZSBzcGVjaWZpZWQgbWVzc2FnZS5cbiAgICovXG4gIGNyZWF0ZVRyYWNlTG9nKG1lc3NhZ2U6IHN0cmluZyk6IEx1bWJlcmphY2tMb2dCdWlsZGVyPFRQYXlsb2FkPiB7XG4gICAgcmV0dXJuIG5ldyBMdW1iZXJqYWNrTG9nQnVpbGRlcih0aGlzLiN0aW1lLCAndHJhY2UnLCBtZXNzYWdlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBsb2cgYnVpbGRlciBmb3IgYSB3YXJuaW5nIGxvZyB3aXRoIHRoZSBzcGVjaWZpZWQgbWVzc2FnZS5cbiAgICovXG4gIGNyZWF0ZVdhcm5pbmdMb2cobWVzc2FnZTogc3RyaW5nKTogTHVtYmVyamFja0xvZ0J1aWxkZXI8VFBheWxvYWQ+IHtcbiAgICByZXR1cm4gbmV3IEx1bWJlcmphY2tMb2dCdWlsZGVyKHRoaXMuI3RpbWUsICd3YXJuJywgbWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==