@descope/sdk-mixins
Version:
Descope JavaScript SDK mixins
38 lines (34 loc) • 1.76 kB
JavaScript
;
var tslib = require('tslib');
var sdkHelpers = require('@descope/sdk-helpers');
const logLevels = ['error', 'warn', 'info', 'debug'];
const loggerMixin = sdkHelpers.createSingletonMixin((superclass) => { var _LoggerMixinClass_instances, _LoggerMixinClass_logger, _LoggerMixinClass_wrapLogger, _a; return _a = class LoggerMixinClass extends superclass {
constructor() {
super(...arguments);
_LoggerMixinClass_instances.add(this);
_LoggerMixinClass_logger.set(this, tslib.__classPrivateFieldGet(this, _LoggerMixinClass_instances, "m", _LoggerMixinClass_wrapLogger).call(this, console));
}
set logger(logger) {
tslib.__classPrivateFieldSet(this, _LoggerMixinClass_logger, tslib.__classPrivateFieldGet(this, _LoggerMixinClass_instances, "m", _LoggerMixinClass_wrapLogger).call(this, logger || console), "f");
}
get logger() {
return tslib.__classPrivateFieldGet(this, _LoggerMixinClass_logger, "f");
}
// eslint-disable-next-line class-methods-use-this, @typescript-eslint/no-unused-vars
onLogEvent(logLevel, data) { }
},
_LoggerMixinClass_logger = new WeakMap(),
_LoggerMixinClass_instances = new WeakSet(),
_LoggerMixinClass_wrapLogger = function _LoggerMixinClass_wrapLogger(logger) {
return logLevels.reduce((acc, logLevel) => {
acc[logLevel] = (...args) => {
var _b;
this.onLogEvent(logLevel, args);
(_b = logger[logLevel]) === null || _b === void 0 ? void 0 : _b.call(logger, ...args);
};
return acc;
}, {});
},
_a; });
exports.loggerMixin = loggerMixin;
//# sourceMappingURL=loggerMixin.js.map