@descope/sdk-mixins
Version:
Descope JavaScript SDK mixins
35 lines (31 loc) • 1.58 kB
JavaScript
;
var tslib = require('tslib');
var sdkHelpers = require('@descope/sdk-helpers');
var initLifecycleMixin = require('./initLifecycleMixin.js');
var observeAttributesMixin = require('./observeAttributesMixin/observeAttributesMixin.js');
const cspNonceMixin = sdkHelpers.createSingletonMixin((superclass) => {
var _CspNonceMixinClass_instances, _CspNonceMixinClass_setNonce, _a;
const BaseClass = sdkHelpers.compose(initLifecycleMixin.initLifecycleMixin, observeAttributesMixin.observeAttributesMixin)(superclass);
return _a = class CspNonceMixinClass extends BaseClass {
constructor() {
super(...arguments);
_CspNonceMixinClass_instances.add(this);
}
get nonce() {
return this.getAttribute('nonce') || '';
}
async init() {
var _b;
await ((_b = super.init) === null || _b === void 0 ? void 0 : _b.call(this));
this.observeAttribute('nonce', tslib.__classPrivateFieldGet(this, _CspNonceMixinClass_instances, "m", _CspNonceMixinClass_setNonce).bind(this));
tslib.__classPrivateFieldGet(this, _CspNonceMixinClass_instances, "m", _CspNonceMixinClass_setNonce).call(this);
}
},
_CspNonceMixinClass_instances = new WeakSet(),
_CspNonceMixinClass_setNonce = function _CspNonceMixinClass_setNonce() {
window.DESCOPE_NONCE = this.nonce;
},
_a;
});
exports.cspNonceMixin = cspNonceMixin;
//# sourceMappingURL=cspNonceMixin.js.map