@inkwell.ar/sdk
Version:
SDK for interacting with the Inkwell Blog CRUD AO process using aoconnect for deployment and interactions
59 lines • 1.87 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Logger = exports.LogGroup = exports.LogLevel = void 0;
var LogLevel;
(function (LogLevel) {
LogLevel[LogLevel["SILENT"] = 0] = "SILENT";
LogLevel[LogLevel["ERROR"] = 1] = "ERROR";
LogLevel[LogLevel["WARN"] = 2] = "WARN";
LogLevel[LogLevel["INFO"] = 3] = "INFO";
LogLevel[LogLevel["DEBUG"] = 4] = "DEBUG";
})(LogLevel || (exports.LogLevel = LogLevel = {}));
var LogGroup;
(function (LogGroup) {
LogGroup["SDK"] = "SDK";
LogGroup["API"] = "API";
LogGroup["AUTH"] = "AUTH";
LogGroup["DEPLOY"] = "DEPLOY";
LogGroup["VALIDATION"] = "VALIDATION";
LogGroup["REGISTRY"] = "REGISTRY";
})(LogGroup || (exports.LogGroup = LogGroup = {}));
class Logger {
constructor(config = { level: LogLevel.INFO }) {
this.config = config;
}
shouldLog(level) {
return this.config.level >= level;
}
formatMessage(group, message) {
return `[${group}] ${message}`;
}
error(group, message, ...args) {
if (this.shouldLog(LogLevel.ERROR)) {
console.error(this.formatMessage(group, message), ...args);
}
}
warn(group, message, ...args) {
if (this.shouldLog(LogLevel.WARN)) {
console.warn(this.formatMessage(group, message), ...args);
}
}
info(group, message, ...args) {
if (this.shouldLog(LogLevel.INFO)) {
console.log(this.formatMessage(group, message), ...args);
}
}
debug(group, message, ...args) {
if (this.shouldLog(LogLevel.DEBUG)) {
console.log(this.formatMessage(group, message), ...args);
}
}
setLevel(level) {
this.config.level = level;
}
getLevel() {
return this.config.level;
}
}
exports.Logger = Logger;
//# sourceMappingURL=logger.js.map