@openzeppelin/defender-as-code
Version:
Configure your Defender environment via code
61 lines (60 loc) • 1.69 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
class Logger {
constructor(logging) {
if (logging) {
this.logger = logging;
}
}
static getInstance(logging) {
if (!Logger.instance) {
Logger.instance = new Logger(logging);
}
return Logger.instance;
}
progress(name, message) {
const progress = this.logger?.progress.get(name);
if (progress)
progress.update(message);
else
this.logger?.progress.create({ message, name });
}
removeProgress(name) {
this.logger?.progress.get(name).remove();
}
info(message, indentLevel = 0) {
const indents = ` `.repeat(2).repeat(indentLevel);
const args = indents ? [indents + message] : [message];
this.logger?.log.info(...args);
}
notice(message, indentLevel = 0) {
const indents = ` `.repeat(2).repeat(indentLevel);
const args = indents ? [indents + message] : [message];
this.logger?.log.notice(...args);
}
warn(message) {
this.logger?.log.warning(message);
}
success(message) {
this.logger?.log.success(message);
}
error(message) {
this.logger?.log.error(message);
}
stdOut(message) {
this.logger?.writeText(message);
}
tryLogDefenderError(e) {
try {
const error = e.response.data;
this.error(error.message ?? error.Message);
}
catch {
if (e.message)
this.error(e.message);
else
this.error(e);
}
}
}
exports.default = Logger;
;