UNPKG

@exromany/lido-csm-sdk

Version:

[![GitHub license](https://img.shields.io/github/license/lidofinance/lido-csm-sdk?color=limegreen)](https://github.com/lidofinance/lido-csm-sdk/blob/main/LICENSE.txt) [![Version npm](https://img.shields.io/npm/v/@lidofinance/lido-csm-sdk?label=version)](h

57 lines 2.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Logger = void 0; const utils_js_1 = require("./utils.js"); const Logger = function (headMessage = 'LOG:') { return function LoggerDecorator(target, context) { const methodName = String(context.name); if (context.kind === 'getter') { const replacementGetter = function () { if (headMessage === 'Deprecation:') utils_js_1.callConsoleMessage.call(this, headMessage, `Getter '${methodName}' is being deprecated in the next major version`); utils_js_1.callConsoleMessage.call(this, headMessage, `Accessing getter '${methodName}'.`); const result = target.call(this); if (result instanceof Promise) { return result .then((resolvedResult) => { utils_js_1.callConsoleMessage.call(this, headMessage, `Getter '${methodName}' resolved.`); return resolvedResult; }) .catch((error) => { utils_js_1.callConsoleMessage.call(this, headMessage, `Getter '${methodName}' rejected with error.`, 'Error:'); throw error; }); } else { utils_js_1.callConsoleMessage.call(this, headMessage, `Getter '${methodName}' accessed.`); return result; } }; return replacementGetter; } const replacementMethod = function (...args) { if (headMessage === 'Deprecation:') utils_js_1.callConsoleMessage.call(this, headMessage, `Method '${methodName}' is being deprecated in the next major version`); utils_js_1.callConsoleMessage.call(this, headMessage, `Entering method '${methodName}'.`); const result = target.call(this, ...args); if (result instanceof Promise) { return result .then((resolvedResult) => { utils_js_1.callConsoleMessage.call(this, headMessage, `Exiting method '${methodName}'.`); return resolvedResult; }) .catch((error) => { utils_js_1.callConsoleMessage.call(this, headMessage, `Exiting method '${methodName}' with error.`, 'Error:'); throw error; }); } else { utils_js_1.callConsoleMessage.call(this, headMessage, `Exiting method '${methodName}'.`); return result; } }; return replacementMethod; }; }; exports.Logger = Logger; //# sourceMappingURL=logger.js.map