@ngx-toolkit/logger
Version:
Angular logger abstraction
40 lines • 4.46 kB
JavaScript
import { APP_INITIALIZER, NgModule } from '@angular/core';
import { ConsoleLoggerService } from './console-logger.service';
import { LOGGER_LEVEL } from './level.token';
import { LOGGER_DECORATOR_DATA } from './logger.decorator';
import { LoggerService } from './logger.service';
import * as i0 from "@angular/core";
export function setupLoggerDecorator(loggerService) {
LOGGER_DECORATOR_DATA.loggerService = loggerService;
return () => null;
}
export class LoggerModule {
static forRoot(level = null, provider = ConsoleLoggerService) {
return {
ngModule: LoggerModule,
providers: [
{
provide: LOGGER_LEVEL,
useValue: level
},
{
provide: LoggerService,
useClass: provider
},
{
provide: APP_INITIALIZER,
useFactory: setupLoggerDecorator,
deps: [LoggerService],
multi: true
}
]
};
}
}
LoggerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: LoggerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
LoggerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: LoggerModule });
LoggerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: LoggerModule });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: LoggerModule, decorators: [{
type: NgModule
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xvZ2dlci9zcmMvbGliL2xvZ2dlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGVBQWUsRUFBdUIsUUFBUSxFQUFPLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRTlELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDekQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtCQUFrQixDQUFDOztBQUUvQyxNQUFNLFVBQVUsb0JBQW9CLENBQUMsYUFBNEI7SUFDL0QscUJBQXFCLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztJQUNwRCxPQUFPLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztBQUNwQixDQUFDO0FBR0QsTUFBTSxPQUFPLFlBQVk7SUFDdkIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFlLElBQUksRUFBRSxXQUFnQyxvQkFBb0I7UUFDdEYsT0FBTztZQUNMLFFBQVEsRUFBRSxZQUFZO1lBQ3RCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsWUFBWTtvQkFDckIsUUFBUSxFQUFFLEtBQUs7aUJBQ2hCO2dCQUNEO29CQUNFLE9BQU8sRUFBRSxhQUFhO29CQUN0QixRQUFRLEVBQUUsUUFBUTtpQkFDbkI7Z0JBQ0Q7b0JBQ0UsT0FBTyxFQUFFLGVBQWU7b0JBQ3hCLFVBQVUsRUFBRSxvQkFBb0I7b0JBQ2hDLElBQUksRUFBRSxDQUFDLGFBQWEsQ0FBQztvQkFDckIsS0FBSyxFQUFFLElBQUk7aUJBQ1o7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOzt5R0FyQlUsWUFBWTswR0FBWixZQUFZOzBHQUFaLFlBQVk7MkZBQVosWUFBWTtrQkFEeEIsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QVBQX0lOSVRJQUxJWkVSLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgVHlwZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbnNvbGVMb2dnZXJTZXJ2aWNlfSBmcm9tICcuL2NvbnNvbGUtbG9nZ2VyLnNlcnZpY2UnO1xuaW1wb3J0IHtMZXZlbH0gZnJvbSAnLi9sZXZlbC5tb2RlbCc7XG5pbXBvcnQge0xPR0dFUl9MRVZFTH0gZnJvbSAnLi9sZXZlbC50b2tlbic7XG5pbXBvcnQge0xPR0dFUl9ERUNPUkFUT1JfREFUQX0gZnJvbSAnLi9sb2dnZXIuZGVjb3JhdG9yJztcbmltcG9ydCB7TG9nZ2VyU2VydmljZX0gZnJvbSAnLi9sb2dnZXIuc2VydmljZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXR1cExvZ2dlckRlY29yYXRvcihsb2dnZXJTZXJ2aWNlOiBMb2dnZXJTZXJ2aWNlKSB7XG4gIExPR0dFUl9ERUNPUkFUT1JfREFUQS5sb2dnZXJTZXJ2aWNlID0gbG9nZ2VyU2VydmljZTtcbiAgcmV0dXJuICgpID0+IG51bGw7XG59XG5cbkBOZ01vZHVsZSgpXG5leHBvcnQgY2xhc3MgTG9nZ2VyTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QobGV2ZWw6IExldmVsID0gbnVsbCwgcHJvdmlkZXI6IFR5cGU8TG9nZ2VyU2VydmljZT4gPSBDb25zb2xlTG9nZ2VyU2VydmljZSk6IE1vZHVsZVdpdGhQcm92aWRlcnM8TG9nZ2VyTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBMb2dnZXJNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IExPR0dFUl9MRVZFTCxcbiAgICAgICAgICB1c2VWYWx1ZTogbGV2ZWxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IExvZ2dlclNlcnZpY2UsXG4gICAgICAgICAgdXNlQ2xhc3M6IHByb3ZpZGVyXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgdXNlRmFjdG9yeTogc2V0dXBMb2dnZXJEZWNvcmF0b3IsXG4gICAgICAgICAgZGVwczogW0xvZ2dlclNlcnZpY2VdLFxuICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0=