now accepts third party debug function

This commit is contained in:
Philipp Kunz 2017-09-18 17:53:23 +02:00
parent 8ab8a4f18b
commit 4dea1cfac2
3 changed files with 16 additions and 6 deletions

3
dist/index.d.ts vendored
View File

@ -1,9 +1,10 @@
export declare class SmartDebug { export declare class SmartDebug {
debugLogFunction: any;
private debugEnabled; private debugEnabled;
/** /**
* enables debugging output * enables debugging output
*/ */
enableDebugging(): void; enableDebugging(debugLogFunction?: any): void;
/** /**
* logs a message based on the contraints of the SmartDebug instance * logs a message based on the contraints of the SmartDebug instance
*/ */

11
dist/index.js vendored
View File

@ -2,22 +2,27 @@
Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "__esModule", { value: true });
class SmartDebug { class SmartDebug {
constructor() { constructor() {
this.debugLogFunction = null;
this.debugEnabled = false; this.debugEnabled = false;
} }
/** /**
* enables debugging output * enables debugging output
*/ */
enableDebugging() { enableDebugging(debugLogFunction = null) {
this.debugEnabled = true; this.debugEnabled = true;
this.debugLogFunction = debugLogFunction;
} }
/** /**
* logs a message based on the contraints of the SmartDebug instance * logs a message based on the contraints of the SmartDebug instance
*/ */
log(logObject) { log(logObject) {
if (this.debugEnabled) { if (this.debugEnabled && this.debugLogFunction) {
this.debugLogFunction(logObject);
}
else if (this.debugEnabled) {
console.log(logObject); console.log(logObject);
} }
} }
} }
exports.SmartDebug = SmartDebug; exports.SmartDebug = SmartDebug;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBO0lBQUE7UUFDVSxpQkFBWSxHQUFZLEtBQUssQ0FBQTtJQWtCdkMsQ0FBQztJQWhCQzs7T0FFRztJQUNILGVBQWU7UUFDYixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQTtJQUMxQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxHQUFHLENBQUUsU0FBYztRQUNqQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUN0QixPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ3hCLENBQUM7SUFDSCxDQUFDO0NBRUY7QUFuQkQsZ0NBbUJDIn0= //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBO0lBQUE7UUFDRSxxQkFBZ0IsR0FBUSxJQUFJLENBQUE7UUFDcEIsaUJBQVksR0FBWSxLQUFLLENBQUE7SUFxQnZDLENBQUM7SUFuQkM7O09BRUc7SUFDSCxlQUFlLENBQUUsZ0JBQWdCLEdBQUcsSUFBSTtRQUN0QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQTtRQUN4QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUE7SUFDMUMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsR0FBRyxDQUFFLFNBQWM7UUFDakIsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUNsQyxDQUFDO1FBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1lBQzdCLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUE7UUFDeEIsQ0FBQztJQUNILENBQUM7Q0FFRjtBQXZCRCxnQ0F1QkMifQ==

View File

@ -1,20 +1,24 @@
import * as plugins from './smartdebug.plugins' import * as plugins from './smartdebug.plugins'
export class SmartDebug { export class SmartDebug {
debugLogFunction: any = null
private debugEnabled: boolean = false private debugEnabled: boolean = false
/** /**
* enables debugging output * enables debugging output
*/ */
enableDebugging () { enableDebugging (debugLogFunction = null) {
this.debugEnabled = true this.debugEnabled = true
this.debugLogFunction = debugLogFunction
} }
/** /**
* logs a message based on the contraints of the SmartDebug instance * logs a message based on the contraints of the SmartDebug instance
*/ */
log (logObject: any) { log (logObject: any) {
if (this.debugEnabled) { if (this.debugEnabled && this.debugLogFunction) {
this.debugLogFunction(logObject)
} else if (this.debugEnabled) {
console.log(logObject) console.log(logObject)
} }
} }