@simbachain/hardhat
Version:
Simba Chain plugin for hardhat
65 lines • 2.7 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.setLogLevel = void 0;
const web3_suites_1 = require("@simbachain/web3-suites");
const prompts_1 = __importDefault(require("prompts"));
const chalk_1 = __importDefault(require("chalk"));
/**
* set minimum log level for logger
* can be one of: 'error', 'debug', 'info', 'warn', 'fatal', 'silly', 'trace'
* @param level
* @returns
*/
const setLogLevel = async (level) => {
web3_suites_1.SimbaConfig.log.debug(`:: ENTER : ${level}`);
if (level) {
const lowLevel = level.toLowerCase();
if (!Object.values(web3_suites_1.LogLevel).includes(lowLevel)) {
web3_suites_1.SimbaConfig.log.error(`${chalk_1.default.redBright(`simba: log level can only be one of: 'error', 'debug', 'info', 'warn', 'fatal', 'silly', 'trace'`)}`);
return;
}
web3_suites_1.SimbaConfig.logLevel = lowLevel;
web3_suites_1.SimbaConfig.log.info(`${chalk_1.default.cyanBright(`simba: log level set to ${lowLevel}`)}`);
web3_suites_1.SimbaConfig.log.debug(`:: EXIT :`);
return;
}
else {
const paramInputChoices = [
web3_suites_1.LogLevel.DEBUG,
web3_suites_1.LogLevel.ERROR,
web3_suites_1.LogLevel.FATAL,
web3_suites_1.LogLevel.INFO,
web3_suites_1.LogLevel.SILLY,
web3_suites_1.LogLevel.TRACE,
web3_suites_1.LogLevel.WARN,
];
const paramChoices = [];
for (let i = 0; i < paramInputChoices.length; i++) {
const entry = paramInputChoices[i];
paramChoices.push({
title: entry,
value: entry,
});
}
const logLevelPrompt = await (0, prompts_1.default)({
type: 'select',
name: 'log_level',
message: 'Please choose the minimum level to set your logger to',
choices: paramChoices,
});
if (!logLevelPrompt.log_level) {
web3_suites_1.SimbaConfig.log.error(`:: EXIT : ERROR : no log level selected!`);
web3_suites_1.SimbaConfig.log.debug(`:: EXIT :`);
return;
}
web3_suites_1.SimbaConfig.logLevel = logLevelPrompt.log_level;
web3_suites_1.SimbaConfig.log.info(`${chalk_1.default.cyanBright(`simba: log level set to ${logLevelPrompt.log_level}`)}`);
web3_suites_1.SimbaConfig.log.debug(`:: EXIT :`);
return;
}
};
exports.setLogLevel = setLogLevel;
//# sourceMappingURL=loglevel.js.map