UNPKG

ngx-logger

Version:

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

28 lines 3.82 kB
export class NGXLoggerConfigEngine { constructor(config) { this.config = this._clone(config); } /** Get a readonly access to the level configured for the NGXLogger */ get level() { return this.config.level; } /** Get a readonly access to the serverLogLevel configured for the NGXLogger */ get serverLogLevel() { return this.config.serverLogLevel; } updateConfig(config) { this.config = this._clone(config); } getConfig() { return this._clone(this.config); } // TODO: This is a shallow clone, If the config ever becomes hierarchical we must make this a deep clone _clone(object) { const cloneConfig = { level: null }; Object.keys(object).forEach((key) => { cloneConfig[key] = object[key]; }); return cloneConfig; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLWVuZ2luZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29uZmlnL2NvbmZpZy1lbmdpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUNFLE1BQXdCO1FBRXhCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsc0VBQXNFO0lBQ3RFLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELCtFQUErRTtJQUMvRSxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQXdCO1FBQ25DLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELHdHQUF3RztJQUNoRyxNQUFNLENBQUMsTUFBVztRQUN4QixNQUFNLFdBQVcsR0FBcUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFFdEQsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNsQyxXQUFXLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmd4TG9nZ2VyTGV2ZWwgfSBmcm9tICcuLy4uL3R5cGVzL2xvZ2dlci1sZXZlbC5lbnVtJztcclxuaW1wb3J0IHsgSU5HWExvZ2dlckNvbmZpZ0VuZ2luZSB9IGZyb20gJy4vaWNvbmZpZy1lbmdpbmUnO1xyXG5pbXBvcnQgeyBJTkdYTG9nZ2VyQ29uZmlnIH0gZnJvbSAnLi9pY29uZmlnJztcclxuXHJcbmV4cG9ydCBjbGFzcyBOR1hMb2dnZXJDb25maWdFbmdpbmUgaW1wbGVtZW50cyBJTkdYTG9nZ2VyQ29uZmlnRW5naW5lIHtcclxuXHJcbiAgcHJpdmF0ZSBjb25maWc6IElOR1hMb2dnZXJDb25maWc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgY29uZmlnOiBJTkdYTG9nZ2VyQ29uZmlnLFxyXG4gICkge1xyXG4gICAgdGhpcy5jb25maWcgPSB0aGlzLl9jbG9uZShjb25maWcpO1xyXG4gIH1cclxuXHJcbiAgLyoqIEdldCBhIHJlYWRvbmx5IGFjY2VzcyB0byB0aGUgbGV2ZWwgY29uZmlndXJlZCBmb3IgdGhlIE5HWExvZ2dlciAqL1xyXG4gIGdldCBsZXZlbCgpOiBOZ3hMb2dnZXJMZXZlbCB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWcubGV2ZWw7XHJcbiAgfVxyXG5cclxuICAvKiogR2V0IGEgcmVhZG9ubHkgYWNjZXNzIHRvIHRoZSBzZXJ2ZXJMb2dMZXZlbCBjb25maWd1cmVkIGZvciB0aGUgTkdYTG9nZ2VyICovXHJcbiAgZ2V0IHNlcnZlckxvZ0xldmVsKCk6IE5neExvZ2dlckxldmVsIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZy5zZXJ2ZXJMb2dMZXZlbDtcclxuICB9XHJcblxyXG4gIHVwZGF0ZUNvbmZpZyhjb25maWc6IElOR1hMb2dnZXJDb25maWcpIHtcclxuICAgIHRoaXMuY29uZmlnID0gdGhpcy5fY2xvbmUoY29uZmlnKTtcclxuICB9XHJcblxyXG4gIGdldENvbmZpZygpOiBJTkdYTG9nZ2VyQ29uZmlnIHtcclxuICAgIHJldHVybiB0aGlzLl9jbG9uZSh0aGlzLmNvbmZpZyk7XHJcbiAgfVxyXG5cclxuICAvLyBUT0RPOiBUaGlzIGlzIGEgc2hhbGxvdyBjbG9uZSwgSWYgdGhlIGNvbmZpZyBldmVyIGJlY29tZXMgaGllcmFyY2hpY2FsIHdlIG11c3QgbWFrZSB0aGlzIGEgZGVlcCBjbG9uZVxyXG4gIHByaXZhdGUgX2Nsb25lKG9iamVjdDogYW55KSB7XHJcbiAgICBjb25zdCBjbG9uZUNvbmZpZzogSU5HWExvZ2dlckNvbmZpZyA9IHsgbGV2ZWw6IG51bGwgfTtcclxuXHJcbiAgICBPYmplY3Qua2V5cyhvYmplY3QpLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICBjbG9uZUNvbmZpZ1trZXldID0gb2JqZWN0W2tleV07XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gY2xvbmVDb25maWc7XHJcbiAgfVxyXG59XHJcbiJdfQ==