@descope/sdk-component-drivers
Version:
Descope JavaScript SDK mixins
3 lines (2 loc) • 15.4 kB
JavaScript
import{__classPrivateFieldSet as e,__classPrivateFieldGet as t}from"tslib";import{compareArrays as l}from"@descope/sdk-helpers";var i,r;class s{constructor(t,l){i.set(this,void 0),this.nodeName="",e(this,i,t,"f"),this.logger=l.logger}get asyncEle(){return(async(e,t)=>new Promise((l=>{const i=setInterval((()=>{const t="function"==typeof e?e():e;t&&(clearInterval(i),l(t))}),100);setTimeout((()=>{clearInterval(i),l(null)}),t)})))(t(this,i,"f"),1e3)}get ele(){var e,l;const r="function"==typeof t(this,i,"f")?t(this,i,"f").call(this):t(this,i,"f");return r?(null==r?void 0:r.localName)!==this.nodeName?(null===(l=this.logger)||void 0===l||l.debug(`node name do not match, expected "${this.nodeName}", received "${r.localName}" `,Error()),null):r:(null===(e=this.logger)||void 0===e||e.debug(`Driver element is not available for ${this.nodeName}`,new Error),null)}get isExists(){return!!this.ele}}i=new WeakMap;class n extends s{constructor(){super(...arguments),this.nodeName="descope-apps-list"}set data(e){this.ele&&(this.ele.data=e)}get data(){var e;return null===(e=this.ele)||void 0===e?void 0:e.data}get ele(){return super.ele}}class o extends s{constructor(){super(...arguments),this.nodeName="descope-avatar"}set displayName(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("display-name",e)}set image(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("img",e)}get flowId(){var e;return null===(e=this.ele)||void 0===e?void 0:e.getAttribute("flow-id")}onClick(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("click",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("click",e)}}}class d extends s{constructor(){super(...arguments),this.nodeName="descope-button"}onClick(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("click",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("click",e)}}disable(){var e;null===(e=this.ele)||void 0===e||e.setAttribute("disabled","true")}enable(){var e;null===(e=this.ele)||void 0===e||e.removeAttribute("disabled")}}class a extends s{constructor(){super(...arguments),this.nodeName="descope-wc"}set projectId(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("project-id",e)}set baseUrl(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("base-url",e)}set flowId(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("flow-id",e)}set theme(e){var t,l;e?null===(l=this.ele)||void 0===l||l.setAttribute("theme",e):null===(t=this.ele)||void 0===t||t.removeAttribute("theme")}onSuccess(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("success",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("success",e)}}onPageUpdated(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("page-updated",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("page-updated",e)}}}class u extends d{get flowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("flow-id"))||""}get enableMode(){var e;return null===(e=this.ele)||void 0===e?void 0:e.getAttribute("enable-mode")}}const v=/^descope-grid-([^-]+)-column$/,c={text:class extends s{constructor(){super(...arguments),this.nodeName="descope-grid-text-column"}onSortDirectionChange(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("direction-changed",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("selected-items-changed",e)}}},custom:class extends s{constructor(){super(...arguments),this.nodeName="descope-grid-custom-column"}onSortDirectionChange(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("direction-changed",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("selected-items-changed",e)}}}};class h extends s{constructor(){super(...arguments),this.nodeName="descope-grid",r.set(this,void 0)}onSelectedItemsChange(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("selected-items-changed",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("selected-items-changed",e)}}get ele(){return super.ele}get data(){var e;return null===(e=this.ele)||void 0===e?void 0:e.data}set data(e){this.ele&&(this.ele.data=e)}get columns(){return this.ele?Array.from(this.ele.children).reduce(((e,t)=>{var l;const i=null===(l=v.exec(t.localName))||void 0===l?void 0:l[1],r=c[i];return r?(e.push(new r(t,{logger:this.logger})),e):e}),[]):[]}filterColumns(e){var i,s;const n=null===(i=this.ele.columns)||void 0===i?void 0:i.filter(e);n&&this.ele.columns&&(l(n,this.ele.columns)||(this.ele.columns=n,null===(s=t(this,r,"f"))||void 0===s||s.call(this,n)))}onColumnsChange(t){e(this,r,t,"f")}set renderColumn(e){this.ele.renderColumn=e}}r=new WeakMap;class m extends s{constructor(){super(...arguments),this.nodeName="descope-link"}get ele(){return super.ele}get href(){var e;return null===(e=this.ele)||void 0===e?void 0:e.getAttribute("href")}set href(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("href",null!=e?e:"")}}var p,g,b,f;class k extends s{constructor(...e){super(...e),p.add(this),g.set(this,void 0),b.set(this,void 0),this.nodeName="descope-modal",t(this,p,"m",f).call(this)}get isOpen(){var e;return"true"===(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("opened"))}get isClosed(){return!this.isOpen}close(){var e;null===(e=this.ele)||void 0===e||e.removeAttribute("opened")}async open(){var e,l;await(null===(e=this.beforeOpen)||void 0===e?void 0:e.call(this)),t(this,p,"m",f).call(this),null===(l=this.ele)||void 0===l||l.setAttribute("opened","true")}reset(){var e;this.ele&&(this.ele.innerHTML=""),t(this,g,"f")&&(null===(e=this.ele)||void 0===e||e.append(t(this,g,"f").content.cloneNode(!0)))}setContent(t){e(this,g,t,"f"),this.reset()}remove(){var e,l;null===(e=t(this,b,"f"))||void 0===e||e.disconnect(),null===(l=this.ele)||void 0===l||l.remove()}}g=new WeakMap,b=new WeakMap,p=new WeakSet,f=function(){if(t(this,b,"f"))return;const l=this.ele;l&&(e(this,b,new MutationObserver((e=>{e.forEach(((t,i)=>{var r;const s="true"===t.oldValue,n=e[i+1]?e[i+1].oldValue:l.getAttribute("opened");s&&"true"!==n&&(null===(r=this.afterClose)||void 0===r||r.call(this))}))})),"f"),t(this,b,"f").observe(l,{attributes:!0,attributeFilter:["opened"],attributeOldValue:!0}))};class A extends s{constructor(){super(...arguments),this.nodeName="descope-multi-line-mappings"}setData(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("data",JSON.stringify(e))}get value(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.value)||[]}set value(e){this.ele&&(this.ele.value=e)}get mergedValue(){return Object.entries(this.value.filter((({tenantId:e})=>!!e)).reduce(((e,{tenantId:t,roleNames:l})=>(e[t]=[...new Set([...e[t]||[],...l])],e)),{})).map((([e,t])=>({tenantId:e,roleNames:t})))}}class E extends s{constructor(){super(...arguments),this.nodeName="descope-multi-select-combo-box"}async setData(e){var t;null===(t=await this.asyncEle)||void 0===t||t.setAttribute("data",JSON.stringify(e.sort()))}}class w extends s{constructor(){super(...arguments),this.nodeName="descope-notification"}close(){var e;null===(e=this.ele)||void 0===e||e.removeAttribute("opened")}show(){var e;null===(e=this.ele)||void 0===e||e.setAttribute("opened","true")}setContent(e){this.ele.innerHTML="",this.ele.appendChild(e.content.cloneNode(!0))}remove(){var e;null===(e=this.ele)||void 0===e||e.remove()}}class L extends s{constructor(){super(...arguments),this.nodeName="descope-outbound-apps"}set data(e){this.ele&&(this.ele.data=e)}get data(){var e;return null===(e=this.ele)||void 0===e?void 0:e.data}get ele(){return super.ele}get connectFlowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("connect-flow-id"))||""}get disconnectFlowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("disconnect-flow-id"))||""}onConnectClick(e){var t;const l=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("connect-clicked",l),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("connect-clicked",l)}}onDisconnectClick(e){var t;const l=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("disconnect-clicked",l),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("disconnect-clicked",l)}}}class x extends s{constructor(){super(...arguments),this.nodeName="descope-combo-box"}onInput(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("input",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("input",e)}}get value(){var e;return null===(e=this.ele)||void 0===e?void 0:e.value}set value(e){this.ele&&(this.ele.value=e)}async setData(e){var t;null===(t=await this.asyncEle)||void 0===t||t.setAttribute("data",JSON.stringify(e.sort()))}setAllowCustomValue(e){this.ele&&this.ele.toggleAttribute("allow-custom-value",e)}}class N extends s{constructor(){super(...arguments),this.nodeName="descope-text"}get ele(){return super.ele}get text(){var e;return null===(e=this.ele)||void 0===e?void 0:e.innerText}set text(e){this.ele&&(this.ele.innerText=e)}}class C extends s{constructor(){super(...arguments),this.nodeName="descope-text-field"}onInput(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("input",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("input",e)}}get value(){var e;return null===(e=this.ele)||void 0===e?void 0:e.value}set value(e){this.ele&&(this.ele.value=e)}disable(){var e;null===(e=this.ele)||void 0===e||e.setAttribute("disabled","true")}enable(){var e;null===(e=this.ele)||void 0===e||e.removeAttribute("disabled")}}class y extends s{constructor(){super(...arguments),this.nodeName="descope-user-attribute"}set value(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("value",e)}set badgeLabel(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("badge-label",e)}get label(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("label"))||""}get editFlowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("edit-flow-id"))||""}get deleteFlowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("delete-flow-id"))||""}onEditClick(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("edit-clicked",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("edit-clicked",e)}}onDeleteClick(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("delete-clicked",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("delete-clicked",e)}}}class I extends s{constructor(){super(...arguments),this.nodeName="descope-user-auth-method"}set fulfilled(e){var t,l;e?null===(t=this.ele)||void 0===t||t.setAttribute("fulfilled","true"):null===(l=this.ele)||void 0===l||l.removeAttribute("fulfilled")}onUnfulfilledButtonClick(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("button-clicked",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("button-clicked",e)}}onFulfilledButtonClick(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("fulfilled-button-clicked",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("fulfilled-button-clicked",e)}}get flowId(){var e;return null===(e=this.ele)||void 0===e?void 0:e.getAttribute("flow-id")}get fulfilledFlowId(){var e;return null===(e=this.ele)||void 0===e?void 0:e.getAttribute("fulfilled-flow-id")}}class F extends s{constructor(){super(...arguments),this.nodeName="descope-trusted-devices"}set displayName(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("display-name",e)}get ele(){return super.ele}get data(){var e;return null===(e=this.ele)||void 0===e?void 0:e.data}set data(e){this.ele&&(this.ele.data=e)}get flowId(){var e;return null===(e=this.ele)||void 0===e?void 0:e.getAttribute("flow-id")}onRemoveDeviceClick(e){var t;const l=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("remove-device-clicked",l),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("remove-device-clicked",l)}}}class D extends d{get flowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("flow-id"))||""}}class O extends s{constructor(){super(...arguments),this.nodeName="descope-attachment"}set position(e){var t;null===(t=this.ele)||void 0===t||t.setAttribute("position",e)}get position(){var e,t;return null!==(t=null===(e=this.ele)||void 0===e?void 0:e.getAttribute("position"))&&void 0!==t?t:""}}class S extends x{get action(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("data-action"))||""}get refreshTimeout(){var e;return Number(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("data-refresh-timeout"))||500}get shouldReload(){return"reload"===this.action}}class M extends s{constructor(){super(...arguments),this.nodeName="descope-user-passkeys"}get ele(){return super.ele}get data(){var e;return null===(e=this.ele)||void 0===e?void 0:e.data}set data(e){this.ele&&(this.ele.data=e)}get addPasskeyFlowId(){var e;return null===(e=this.ele)||void 0===e?void 0:e.getAttribute("add-passkey-flow-id")}get removePasskeyFlowId(){var e;return null===(e=this.ele)||void 0===e?void 0:e.getAttribute("remove-passkey-flow-id")}onAddPasskeyClick(e){var t;return null===(t=this.ele)||void 0===t||t.addEventListener("add-passkey-clicked",e),()=>{var t;return null===(t=this.ele)||void 0===t?void 0:t.removeEventListener("add-passkey-clicked",e)}}onRemovePasskeyClick(e){var t;const l=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("remove-passkey-clicked",l),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("remove-passkey-clicked",l)}}}class P extends s{constructor(){super(...arguments),this.nodeName="descope-multi-sso"}set data(e){this.ele&&(this.ele.data=e)}get data(){var e;return null===(e=this.ele)||void 0===e?void 0:e.data}get ele(){return super.ele}get createFlowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("data-create-flow-id"))||""}get deleteFlowId(){var e;return(null===(e=this.ele)||void 0===e?void 0:e.getAttribute("data-delete-flow-id"))||""}onCreateClicked(e){var t;const l=()=>e();return null===(t=this.ele)||void 0===t||t.addEventListener("create-clicked",l),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("create-clicked",l)}}onDeleteClicked(e){var t;const l=t=>e(t.detail);return null===(t=this.ele)||void 0===t||t.addEventListener("delete-clicked",l),()=>{var e;return null===(e=this.ele)||void 0===e?void 0:e.removeEventListener("delete-clicked",l)}}}export{n as AppsListDriver,o as AvatarDriver,d as ButtonDriver,F as DeviceListDriver,D as FlowButtonDriver,a as FlowDriver,u as GenericFlowButtonDriver,h as GridDriver,O as LastAuthBadgeDriver,m as LinkDriver,k as ModalDriver,A as MultiLineMappingsDriver,E as MultiSelectDriver,P as MultiSsoConfigurationsDriver,w as NotificationDriver,L as OutboundAppsListDriver,x as SingleSelectDriver,S as TenantSelectorDriver,N as TextDriver,C as TextFieldDriver,y as UserAttributeDriver,I as UserAuthMethodDriver,M as UserPasskeysDriver};
//# sourceMappingURL=index.esm.js.map