123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.getArrow = exports.getInstance = void 0;
- const util = require("util");
- let loggerInstance;
- const defaultProvider = {
-
- log: console.log,
- debug: console.log,
- info: console.info,
- warn: console.warn,
- error: console.error,
- };
- var LEVELS;
- (function (LEVELS) {
- LEVELS[LEVELS["debug"] = 10] = "debug";
- LEVELS[LEVELS["info"] = 20] = "info";
- LEVELS[LEVELS["warn"] = 30] = "warn";
- LEVELS[LEVELS["error"] = 50] = "error";
- LEVELS[LEVELS["silent"] = 80] = "silent";
- })(LEVELS || (LEVELS = {}));
- function getInstance() {
- if (!loggerInstance) {
- loggerInstance = new Logger();
- }
- return loggerInstance;
- }
- exports.getInstance = getInstance;
- class Logger {
- constructor() {
- this.setLevel('info');
- this.setProvider(() => defaultProvider);
- }
-
- log() {
- this.provider.log(this._interpolate.apply(null, arguments));
- }
- debug() {
- if (this._showLevel('debug')) {
- this.provider.debug(this._interpolate.apply(null, arguments));
- }
- }
- info() {
- if (this._showLevel('info')) {
- this.provider.info(this._interpolate.apply(null, arguments));
- }
- }
- warn() {
- if (this._showLevel('warn')) {
- this.provider.warn(this._interpolate.apply(null, arguments));
- }
- }
- error() {
- if (this._showLevel('error')) {
- this.provider.error(this._interpolate.apply(null, arguments));
- }
- }
- setLevel(v) {
- if (this.isValidLevel(v)) {
- this.logLevel = v;
- }
- }
- setProvider(fn) {
- if (fn && this.isValidProvider(fn)) {
- this.provider = fn(defaultProvider);
- }
- }
- isValidProvider(fnProvider) {
- const result = true;
- if (fnProvider && typeof fnProvider !== 'function') {
- throw new Error('[HPM] Log provider config error. Expecting a function.');
- }
- return result;
- }
- isValidLevel(levelName) {
- const validLevels = Object.keys(LEVELS);
- const isValid = validLevels.includes(levelName);
- if (!isValid) {
- throw new Error('[HPM] Log level error. Invalid logLevel.');
- }
- return isValid;
- }
-
- _showLevel(showLevel) {
- let result = false;
- const currentLogLevel = LEVELS[this.logLevel];
- if (currentLogLevel && currentLogLevel <= LEVELS[showLevel]) {
- result = true;
- }
- return result;
- }
-
-
- _interpolate(format, ...args) {
- const result = util.format(format, ...args);
- return result;
- }
- }
- function getArrow(originalPath, newPath, originalTarget, newTarget) {
- const arrow = ['>'];
- const isNewTarget = originalTarget !== newTarget;
- const isNewPath = originalPath !== newPath;
- if (isNewPath && !isNewTarget) {
- arrow.unshift('~');
- }
- else if (!isNewPath && isNewTarget) {
- arrow.unshift('=');
- }
- else if (isNewPath && isNewTarget) {
- arrow.unshift('≈');
- }
- else {
- arrow.unshift('-');
- }
- return arrow.join('');
- }
- exports.getArrow = getArrow;
|