UNPKG

@descope/sdk-mixins

Version:
48 lines (44 loc) 2.16 kB
'use strict'; var tslib = require('tslib'); var sdkHelpers = require('@descope/sdk-helpers'); var initLifecycleMixin = require('../initLifecycleMixin.js'); var initElementMixin = require('../initElementMixin.js'); var descopeUiMixin = require('../descopeUiMixin/descopeUiMixin.js'); var helpers = require('./helpers.js'); var constants = require('./constants.js'); var sdkComponentDrivers = require('@descope/sdk-component-drivers'); const modalMixin = sdkHelpers.createSingletonMixin((superclass) => { var _ModalMixinClass_ModalDriverWrapper, _a; const BaseClass = sdkHelpers.compose(initLifecycleMixin.initLifecycleMixin, initElementMixin.initElementMixin, descopeUiMixin.descopeUiMixin)(superclass); return _a = class ModalMixinClass extends BaseClass { constructor() { super(...arguments); _ModalMixinClass_ModalDriverWrapper.set(this, (() => { const loadDescopeUiComponents = this.loadDescopeUiComponents.bind(this); return class ModalDriverWrapper extends sdkComponentDrivers.ModalDriver { setContent(template) { loadDescopeUiComponents(template); super.setContent(template); } }; })()); } createModal(config) { const baseConfig = {}; const modal = helpers.createModalEle(Object.assign(Object.assign({}, baseConfig), config)); this.rootElement.append(modal); return new (tslib.__classPrivateFieldGet(this, _ModalMixinClass_ModalDriverWrapper, "f"))(modal, { logger: this.logger, }); } async init() { var _b; this.loadDescopeUiComponents([constants.MODAL_ELE_TAG]); await ((_b = super.init) === null || _b === void 0 ? void 0 : _b.call(this)); } }, _ModalMixinClass_ModalDriverWrapper = new WeakMap(), _a; }); exports.modalMixin = modalMixin; //# sourceMappingURL=modalMixin.js.map