react-native-kochava-measurement
Version:
A lightweight and easy to integrate SDK, providing first-class integration with Kochava’s installation attribution and analytics platform.
147 lines (146 loc) • 5.24 kB
JavaScript
/*
Authored by Brett Barinaga on 11/17/21.
Copyright (c) Kochava, Inc. All rights reserved.
*/
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
if (ar || !(i in from)) {
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
ar[i] = from[i];
}
}
return to.concat(ar || Array.prototype.slice.call(from));
};
import { getMsTime } from "./utils";
var Level;
(function (Level) {
Level["Off"] = "Off";
Level["Error"] = "Error";
Level["Warn"] = "Warn";
Level["Info"] = "Info";
Level["Debug"] = "Debug";
Level["Trace"] = "Trace";
})(Level || (Level = {}));
var Logger = /** @class */ (function () {
function Logger() {
if (Logger.instance)
return;
this.levelPrio = {
Off: 0,
Error: 1,
Warn: 2,
Info: 3,
Debug: 4,
Trace: 5,
};
this.currLevel = Level.Info;
this.logObjects = false;
this.logsFilteredOut = {
Off: false,
Error: false,
Warn: false,
Info: false,
Debug: false,
Trace: false,
Diag: false,
};
Logger.instance = this;
}
Logger.prototype.setLogLevel = function (input) {
var levelStr = input[0].toUpperCase() + input.substring(1).toLowerCase();
var key = levelStr;
var level = Level[key];
if (level !== undefined && level !== null) {
this.currLevel = level;
}
else {
console.log("Invalid logLevel ".concat(level, " passed in, defaulting to info."));
this.currLevel = Level.Info;
}
};
Logger.prototype.getLogLevel = function () {
return this.currLevel.toString();
};
Logger.prototype.setLogObjects = function (enable) {
this.logObjects = enable;
};
Logger.prototype.disableLogType = function (input) {
var levelStr = input[0].toUpperCase() + input.substring(1).toLowerCase();
var key = levelStr;
this.logsFilteredOut[key] = true;
};
Logger.prototype.error = function (msg) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
this.print.apply(this, __spreadArray([Level.Error, msg], args, false));
};
Logger.prototype.warn = function (msg) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
this.print.apply(this, __spreadArray([Level.Warn, msg], args, false));
};
Logger.prototype.info = function (msg) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
this.print.apply(this, __spreadArray([Level.Info, msg], args, false));
};
Logger.prototype.debug = function (msg) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
this.print.apply(this, __spreadArray([Level.Debug, msg], args, false));
};
Logger.prototype.trace = function (msg) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
this.print.apply(this, __spreadArray([Level.Trace, msg], args, false));
};
Logger.prototype.diagInfo = function (msg) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
if (!this.logsFilteredOut.Diag)
this.print.apply(this, __spreadArray([Level.Info, "Kochava Diagnostic - " + msg], args, false));
};
Logger.prototype.diagDebug = function (msg) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
if (!this.logsFilteredOut.Diag)
this.print.apply(this, __spreadArray([Level.Debug, "Kochava Diagnostic - " + msg], args, false));
};
Logger.prototype.print = function (lvl, msg) {
var args = [];
for (var _i = 2; _i < arguments.length; _i++) {
args[_i - 2] = arguments[_i];
}
if (this.levelPrio[this.currLevel.toString()] >= this.levelPrio[lvl.toString()] &&
!this.logsFilteredOut[lvl.toString()]) {
try {
var obj = JSON.parse(args[0]);
if (this.logObjects && obj) {
console.log("KVA :: ".concat(getMsTime(), " ").concat(lvl.toString(), ":"), msg, obj);
}
else {
console.log.apply(console, __spreadArray(["KVA :: ".concat(getMsTime(), " ").concat(lvl.toString(), ":"), msg], args, false));
}
}
catch (_a) {
console.log.apply(console, __spreadArray(["KVA :: ".concat(getMsTime(), " ").concat(lvl.toString(), ":"), msg], args, false));
}
}
};
return Logger;
}());
export var Log = new Logger();