mexc-futures-sdk
Version:
Unofficial TypeScript SDK for MEXC Futures trading with maintenance bypass. Uses browser session tokens to work 24/7 even during API downtime.
55 lines • 1.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Logger = 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 = {}));
class Logger {
constructor(level = LogLevel.WARN) {
if (typeof level === "string") {
this.level =
LogLevel[level.toUpperCase()] ?? LogLevel.WARN;
}
else {
this.level = level;
}
}
/**
* Get current log level
*/
getLevel() {
return this.level;
}
/**
* Check if debug logging is enabled
*/
isDebugEnabled() {
return this.level >= LogLevel.DEBUG;
}
log(level, ...args) {
if (this.level >= level) {
const prefix = `[${LogLevel[level]}]`;
const time = new Date().toISOString();
console.log(time, prefix, ...args);
}
}
debug(...args) {
this.log(LogLevel.DEBUG, ...args);
}
info(...args) {
this.log(LogLevel.INFO, ...args);
}
warn(...args) {
this.log(LogLevel.WARN, ...args);
}
error(...args) {
this.log(LogLevel.ERROR, ...args);
}
}
exports.Logger = Logger;
//# sourceMappingURL=logger.js.map