@tangential/core
Version:
Core types and support code for Tangential
43 lines • 4.82 kB
JavaScript
import { Injectable, Optional } from '@angular/core';
import { MessageBus } from '../message-bus';
import { LoggerConfiguration } from './logger';
import { ConsoleLogger } from './console-logger';
import * as i0 from "@angular/core";
import * as i1 from "../message-bus";
import * as i2 from "./logger";
export class BusLoggerConfiguration extends LoggerConfiguration {
constructor() {
super(...arguments);
this.alsoLogToConsole = false;
}
}
BusLoggerConfiguration.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: BusLoggerConfiguration, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
BusLoggerConfiguration.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: BusLoggerConfiguration });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: BusLoggerConfiguration, decorators: [{
type: Injectable
}] });
/**
* Singleton. Attempting to run two Logger instances will fail. And rightly so!
*/
export class BusLogger extends ConsoleLogger {
constructor(bus, configuration) {
super(configuration);
this.bus = bus;
this.config = new BusLoggerConfiguration();
console.log('BusLogger', 'constructor', configuration);
}
log(message) {
this.bus.post(message);
if (this.config.alsoLogToConsole) {
super.log(message);
}
}
}
BusLogger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: BusLogger, deps: [{ token: i1.MessageBus }, { token: i2.LoggerConfiguration, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
BusLogger.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: BusLogger });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.10", ngImport: i0, type: BusLogger, decorators: [{
type: Injectable
}], ctorParameters: function () { return [{ type: i1.MessageBus }, { type: i2.LoggerConfiguration, decorators: [{
type: Optional
}] }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzLWxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdlbnRpYWwvY29yZS9zcmMvbGliL21lc3NhZ2UtYnVzL2xvZ2dpbmcvYnVzLWxvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNWLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUE7QUFFekMsT0FBTyxFQUNMLG1CQUFtQixFQUVwQixNQUFNLFVBQVUsQ0FBQTtBQUNqQixPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUE7Ozs7QUFHOUMsTUFBTSxPQUFPLHNCQUF1QixTQUFRLG1CQUFtQjtJQUQvRDs7UUFFRSxxQkFBZ0IsR0FBVyxLQUFLLENBQUE7S0FDakM7O29IQUZZLHNCQUFzQjt3SEFBdEIsc0JBQXNCOzRGQUF0QixzQkFBc0I7a0JBRGxDLFVBQVU7O0FBS1g7O0dBRUc7QUFFSCxNQUFNLE9BQU8sU0FBVSxTQUFRLGFBQWE7SUFJMUMsWUFBb0IsR0FBZSxFQUFjLGFBQW1DO1FBQ2xGLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQURGLFFBQUcsR0FBSCxHQUFHLENBQVk7UUFGMUIsV0FBTSxHQUEwQixJQUFJLHNCQUFzQixFQUFFLENBQUE7UUFJbkUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLGFBQWEsQ0FBQyxDQUFBO0lBQ3hELENBQUM7SUFFUSxHQUFHLENBQUMsT0FBbUI7UUFDOUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDdEIsSUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFDO1lBQzlCLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUE7U0FDbkI7SUFDSCxDQUFDOzt1R0FkVSxTQUFTOzJHQUFULFNBQVM7NEZBQVQsU0FBUztrQkFEckIsVUFBVTs7MEJBSzZCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3RhYmxlLFxuICBPcHRpb25hbFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHtNZXNzYWdlQnVzfSBmcm9tICcuLi9tZXNzYWdlLWJ1cydcbmltcG9ydCB7TG9nTWVzc2FnZX0gZnJvbSAnLi9sb2ctbWVzc2FnZSdcbmltcG9ydCB7XG4gIExvZ2dlckNvbmZpZ3VyYXRpb24sXG4gIExvZ0xldmVsc1xufSBmcm9tICcuL2xvZ2dlcidcbmltcG9ydCB7Q29uc29sZUxvZ2dlcn0gZnJvbSAnLi9jb25zb2xlLWxvZ2dlcidcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEJ1c0xvZ2dlckNvbmZpZ3VyYXRpb24gZXh0ZW5kcyBMb2dnZXJDb25maWd1cmF0aW9uIHtcbiAgYWxzb0xvZ1RvQ29uc29sZTpib29sZWFuID0gZmFsc2Vcbn1cblxuLyoqXG4gKiBTaW5nbGV0b24uIEF0dGVtcHRpbmcgdG8gcnVuIHR3byBMb2dnZXIgaW5zdGFuY2VzIHdpbGwgZmFpbC4gQW5kIHJpZ2h0bHkgc28hXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBCdXNMb2dnZXIgZXh0ZW5kcyBDb25zb2xlTG9nZ2VyIHtcblxuICBvdmVycmlkZSBjb25maWc6QnVzTG9nZ2VyQ29uZmlndXJhdGlvbiA9IG5ldyBCdXNMb2dnZXJDb25maWd1cmF0aW9uKClcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJ1czogTWVzc2FnZUJ1cywgQE9wdGlvbmFsKCkgY29uZmlndXJhdGlvbj86IExvZ2dlckNvbmZpZ3VyYXRpb24pIHtcbiAgICBzdXBlcihjb25maWd1cmF0aW9uKVxuICAgIGNvbnNvbGUubG9nKCdCdXNMb2dnZXInLCAnY29uc3RydWN0b3InLCBjb25maWd1cmF0aW9uKVxuICB9XG5cbiAgb3ZlcnJpZGUgbG9nKG1lc3NhZ2U6IExvZ01lc3NhZ2UpOiB2b2lkIHtcbiAgICB0aGlzLmJ1cy5wb3N0KG1lc3NhZ2UpXG4gICAgaWYodGhpcy5jb25maWcuYWxzb0xvZ1RvQ29uc29sZSl7XG4gICAgICBzdXBlci5sb2cobWVzc2FnZSlcbiAgICB9XG4gIH1cbn1cbiJdfQ==