@descope/sdk-mixins
Version:
Descope JavaScript SDK mixins
74 lines (70 loc) • 4.17 kB
JavaScript
;
var tslib = require('tslib');
var sdkHelpers = require('@descope/sdk-helpers');
var initLifecycleMixin = require('../initLifecycleMixin.js');
var loggerMixin = require('../loggerMixin/loggerMixin.js');
const debuggerMixin = sdkHelpers.createSingletonMixin((superclass) => { var _DebuggerMixinClass_instances, _DebuggerMixinClass_debuggerEle, _DebuggerMixinClass_disableDebugger, _DebuggerMixinClass_enableDebugger, _DebuggerMixinClass_handleDebugMode, _DebuggerMixinClass_updateDebuggerMessages, _a; return _a = class DebuggerMixinClass extends sdkHelpers.compose(initLifecycleMixin.initLifecycleMixin, loggerMixin.loggerMixin)(superclass) {
constructor() {
super(...arguments);
_DebuggerMixinClass_instances.add(this);
_DebuggerMixinClass_debuggerEle.set(this, void 0);
this.attributeChangedCallback = (attrName, oldValue, newValue) => {
var _b;
(_b = super.attributeChangedCallback) === null || _b === void 0 ? void 0 : _b.call(this, attrName, oldValue, newValue);
if (attrName === 'debug') {
tslib.__classPrivateFieldGet(this, _DebuggerMixinClass_instances, "m", _DebuggerMixinClass_handleDebugMode).call(this);
}
};
}
get debug() {
return this.getAttribute('debug') === 'true';
}
onLogEvent(logLevel, args) {
var _b;
(_b = super.onLogEvent) === null || _b === void 0 ? void 0 : _b.call(this, logLevel, args);
if (logLevel === 'error') {
tslib.__classPrivateFieldGet(this, _DebuggerMixinClass_instances, "m", _DebuggerMixinClass_updateDebuggerMessages).call(this, args[0] || 'Error', args[1]);
}
}
async init() {
var _b;
await ((_b = super.init) === null || _b === void 0 ? void 0 : _b.call(this));
tslib.__classPrivateFieldGet(this, _DebuggerMixinClass_instances, "m", _DebuggerMixinClass_handleDebugMode).call(this);
}
},
_DebuggerMixinClass_debuggerEle = new WeakMap(),
_DebuggerMixinClass_instances = new WeakSet(),
_DebuggerMixinClass_disableDebugger = function _DebuggerMixinClass_disableDebugger() {
var _b;
(_b = tslib.__classPrivateFieldGet(this, _DebuggerMixinClass_debuggerEle, "f")) === null || _b === void 0 ? void 0 : _b.remove();
tslib.__classPrivateFieldSet(this, _DebuggerMixinClass_debuggerEle, null, "f");
},
_DebuggerMixinClass_enableDebugger = async function _DebuggerMixinClass_enableDebugger() {
tslib.__classPrivateFieldSet(this, _DebuggerMixinClass_debuggerEle, document.createElement('descope-debugger'), "f");
Object.assign(tslib.__classPrivateFieldGet(this, _DebuggerMixinClass_debuggerEle, "f").style, {
position: 'fixed',
top: '0',
right: '0',
height: '100vh',
width: '100vw',
pointerEvents: 'none',
zIndex: 99999,
});
// we are importing the debugger dynamically so we won't load it when it's not needed
await Promise.resolve().then(function () { return require('./debugger-wc.js'); });
document.body.appendChild(tslib.__classPrivateFieldGet(this, _DebuggerMixinClass_debuggerEle, "f"));
},
_DebuggerMixinClass_handleDebugMode = function _DebuggerMixinClass_handleDebugMode() {
if (this.debug)
tslib.__classPrivateFieldGet(this, _DebuggerMixinClass_instances, "m", _DebuggerMixinClass_enableDebugger).call(this);
else
tslib.__classPrivateFieldGet(this, _DebuggerMixinClass_instances, "m", _DebuggerMixinClass_disableDebugger).call(this);
},
_DebuggerMixinClass_updateDebuggerMessages = function _DebuggerMixinClass_updateDebuggerMessages(title, description) {
var _b;
if (title)
(_b = tslib.__classPrivateFieldGet(this, _DebuggerMixinClass_debuggerEle, "f")) === null || _b === void 0 ? void 0 : _b.updateData({ title, description });
},
_a; });
exports.debuggerMixin = debuggerMixin;
//# sourceMappingURL=debuggerMixin.js.map